*/
/** The libsigrokdecode package 'major' version number. */
-#define LIBSIGROKDECODE_MAJOR_VERSION @LIBSIGROKDECODE_MAJOR_VERSION@
+#define SRD_PACKAGE_VERSION_MAJOR @SRD_PACKAGE_VERSION_MAJOR@
/** The libsigrokdecode package 'minor' version number. */
-#define LIBSIGROKDECODE_MINOR_VERSION @LIBSIGROKDECODE_MINOR_VERSION@
+#define SRD_PACKAGE_VERSION_MINOR @SRD_PACKAGE_VERSION_MINOR@
/** The libsigrokdecode package 'micro' version number. */
-#define LIBSIGROKDECODE_MICRO_VERSION @LIBSIGROKDECODE_MICRO_VERSION@
+#define SRD_PACKAGE_VERSION_MICRO @SRD_PACKAGE_VERSION_MICRO@
/** The libsigrokdecode package version ("major.minor.micro") as string. */
-#define LIBSIGROKDECODE_VERSION_STRING "@LIBSIGROKDECODE_VERSION@"
+#define SRD_PACKAGE_VERSION_STRING "@SRD_PACKAGE_VERSION@"
/*
* Library/libtool version macros (can be used for conditional compilation).
*/
/** The libsigrokdecode libtool 'current' version number. */
-#define LIBSIGROKDECODE_LT_CURRENT @LIBSIGROKDECODE_LT_CURRENT@
+#define SRD_LIB_VERSION_CURRENT @SRD_LIB_VERSION_CURRENT@
/** The libsigrokdecode libtool 'revision' version number. */
-#define LIBSIGROKDECODE_LT_REVISION @LIBSIGROKDECODE_LT_REVISION@
+#define SRD_LIB_VERSION_REVISION @SRD_LIB_VERSION_REVISION@
/** The libsigrokdecode libtool 'age' version number. */
-#define LIBSIGROKDECODE_LT_AGE @LIBSIGROKDECODE_LT_AGE@
+#define SRD_LIB_VERSION_AGE @SRD_LIB_VERSION_AGE@
/** The libsigrokdecode libtool version ("current:revision:age") as string. */
-#define LIBSIGROKDECODE_LT_VERSION_STRING "@LIBSIGROKDECODE_LT_VERSION@"
+#define SRD_LIB_VERSION_STRING "@SRD_LIB_VERSION@"
/*
* Status/error codes returned by libsigrokdecode functions.
*
* This uses the 'visibility' feature of gcc (requires gcc >= 4.0).
*
+ * This feature is not available on MinGW/Windows, as it is a feature of
+ * ELF files and MinGW/Windows uses PE files.
+ *
* Details: http://gcc.gnu.org/wiki/Visibility
*/
/* Marks public libsigrokdecode API symbols. */
+#ifndef _WIN32
#define SRD_API __attribute__((visibility("default")))
+#else
+#define SRD_API
+#endif
/* Marks private, non-public libsigrokdecode symbols (not part of the API). */
+#ifndef _WIN32
#define SRD_PRIV __attribute__((visibility("hidden")))
+#else
+#define SRD_PRIV
+#endif
/*
* When adding an output type, don't forget to...
SRD_API int srd_log_logdomain_set(const char *logdomain);
SRD_API char *srd_log_logdomain_get(void);
+/*--- version.c -------------------------------------------------------------*/
+
+SRD_API int srd_package_version_major_get(void);
+SRD_API int srd_package_version_minor_get(void);
+SRD_API int srd_package_version_micro_get(void);
+SRD_API const char *srd_package_version_string_get(void);
+
+SRD_API int srd_lib_version_current_get(void);
+SRD_API int srd_lib_version_revision_get(void);
+SRD_API int srd_lib_version_age_get(void);
+SRD_API const char *srd_lib_version_string_get(void);
+
#ifdef __cplusplus
}
#endif