Fix part of #1128 by adding a way to retrieve PD search paths
authorSoeren Apel <soeren@apelpie.net>
Sat, 17 Mar 2018 20:40:36 +0000 (21:40 +0100)
committerSoeren Apel <soeren@apelpie.net>
Sat, 17 Mar 2018 20:40:36 +0000 (21:40 +0100)
As this uses g_slist_copy_deep(), we now require glib 2.34.

README
configure.ac
libsigrokdecode.h
srd.c

diff --git a/README b/README
index 686efeff3783ae473dbc8c7167daad32dbb79342..784be277fc6f28e488873473cc09a563f87b6153 100644 (file)
--- a/README
+++ b/README
@@ -34,7 +34,7 @@ Requirements
  - automake >= 1.11 (only needed when building from git)
  - libtool (only needed when building from git)
  - pkg-config >= 0.22
- - libglib >= 2.28.0
+ - libglib >= 2.34
  - Python >= 3.2
  - check >= 0.9.4 (optional, only needed to run unit tests)
  - doxygen (optional, only needed for the C API docs)
index d03f9831b25eb48b4ad89edea00b81ea9fedb924..5593bc4db070f0be02a63b6c2483624401709cbf 100644 (file)
@@ -137,7 +137,7 @@ AC_SUBST([SRD_PKGLIBS])
 
 # Retrieve the compile and link flags for all modules combined.
 # Also, bail out at this point if any module dependency is not met.
-PKG_CHECK_MODULES([LIBSIGROKDECODE], [glib-2.0 >= 2.28.0 $SRD_PKGLIBS])
+PKG_CHECK_MODULES([LIBSIGROKDECODE], [glib-2.0 >= 2.34 $SRD_PKGLIBS])
 PKG_CHECK_MODULES([TESTS], [$SRD_PKGLIBS_TESTS glib-2.0 $SRD_PKGLIBS])
 
 srd_glib_version=`$PKG_CONFIG --modversion glib-2.0 2>&AS_MESSAGE_LOG_FD`
@@ -168,7 +168,7 @@ Compile configuration:
  - Linker flags.................... $LDFLAGS
 
 Detected libraries (required):
- - glib-2.0 >= 2.28.0.............. $srd_glib_version
+ - glib-2.0 >= 2.34................ $srd_glib_version
 $srd_pkglibs_summary
 Detected libraries (optional):
 $srd_pkglibs_opt_summary
index d37c432a537c9c5a8cbacbc6b4e27674eec69149..982ae19759f94356baf09bd53b23ec8a012bc265 100644 (file)
@@ -320,6 +320,7 @@ struct srd_pd_callback {
 /* srd.c */
 SRD_API int srd_init(const char *path);
 SRD_API int srd_exit(void);
+SRD_API GSList *srd_searchpaths_get(void);
 
 /* session.c */
 SRD_API int srd_session_new(struct srd_session **sess);
diff --git a/srd.c b/srd.c
index 2c1bdda70dc8dbdab1b99b961d25dab3648cb6eb..68a6a2358dcc0cb13e5e280af987f142ad9fcd68 100644 (file)
--- a/srd.c
+++ b/srd.c
@@ -179,6 +179,11 @@ err:
        return SRD_ERR_PYTHON;
 }
 
+SRD_API GSList *srd_searchpaths_get(void)
+{
+       return g_slist_copy_deep(searchpaths, (GCopyFunc)g_strdup, NULL);
+}
+
 /**
  * Initialize libsigrokdecode.
  *