ADD_LIBRARY (libsolv STATIC ${libsolv_SRCS})
ELSE (DISABLE_SHARED)
ADD_LIBRARY (libsolv SHARED ${libsolv_SRCS})
+TARGET_COMPILE_DEFINITIONS(libsolv PRIVATE SOLV_EXPORTS)
ENDIF (DISABLE_SHARED)
SET_TARGET_PROPERTIES(libsolv PROPERTIES OUTPUT_NAME "solv")
--- /dev/null
+#ifdef _WIN32
+ #ifdef SOLV_STATIC_LIB
+ #define SOLV_API
+ #else
+ #ifdef SOLV_EXPORTS
+ #define SOLV_API __declspec(dllexport)
+ #else
+ #define SOLV_API __declspec(dllimport)
+ #endif
+ #endif
+#else
+ #define SOLV_API
+#endif
\ No newline at end of file
#include <stdlib.h>
#include <stdio.h>
-char *optarg;
-int optind=1, opterr=1, optopt, __optpos, __optreset=0;
+#include "config.h"
+
+SOLV_API char *optarg;
+SOLV_API int optind=1, opterr=1, optopt, __optpos, __optreset=0;
#define optpos __optpos
extern "C" {
#endif
+#include "config.h"
+
int getopt(int, char * const [], const char *);
-extern char *optarg;
-extern int optind, opterr, optopt, optreset;
+
+SOLV_API extern char *optarg;
+SOLV_API extern int optind, opterr, optopt, optreset;
struct option {
const char *name;