Skip to content

Commit e55d837

Browse files
committed
Fix Windows build with ENABLED_SHARED and ENABLE_STATIC
Define SOLV_STATIC_LIB for libsolv_static to avoid an error when building it for Windows: /work/libsolv/win32/getopt.c:11:14: error: variable ‘optind’ definition is marked dllimport /work/libsolv/win32/getopt.c:11:24: error: variable ‘opterr’ definition is marked dllimport /work/libsolv/win32/getopt.c:11:52: error: variable ‘__optreset’ definition is marked dllimport
1 parent f8cc714 commit e55d837

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

src/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ INSTALL (TARGETS libsolv LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DES
6969

7070
IF (ENABLE_STATIC AND NOT DISABLE_SHARED)
7171
ADD_LIBRARY (libsolv_static STATIC ${libsolv_SRCS})
72+
IF (WIN32)
73+
TARGET_COMPILE_DEFINITIONS(libsolv_static PUBLIC SOLV_STATIC_LIB)
74+
ENDIF (WIN32)
7275
SET_TARGET_PROPERTIES(libsolv_static PROPERTIES OUTPUT_NAME "solv")
7376
SET_TARGET_PROPERTIES(libsolv_static PROPERTIES SOVERSION ${LIBSOLV_SOVERSION})
7477
INSTALL (TARGETS libsolv_static LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})

0 commit comments

Comments
 (0)