diff --git a/CMakeLists.txt b/CMakeLists.txt index 982e261..f3fa48c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,6 +16,7 @@ message(STATUS "Configuring WiiUse version ${CPACK_PACKAGE_VERSION}") option(BUILD_EXAMPLE "Should we build the example app?" YES) option(BUILD_EXAMPLE_SDL "Should we build the SDL-based example app?" YES) +option(BUILD_WIIUSE_SHARED_LIB "Should we build as a shared library (dll/so)?" YES) option(INSTALL_EXAMPLES "Should we install the example apps?" YES) option(CPACK_MONOLITHIC_INSTALL "Only produce a single component installer, rather than multi-component." NO) @@ -31,6 +32,13 @@ include(DoxygenTargets) add_definitions(-DWIIUSE_COMPILE_LIB) +if(BUILD_WIIUSE_SHARED_LIB) + set(WIIUSE_LIB_TYPE SHARED) +else() + set(WIIUSE_LIB_TYPE STATIC) + add_definitions(-DWIIUSE_STATIC) +endif() + if(NOT WIN32 AND NOT APPLE) set(LINUX YES) find_package(Bluez REQUIRED) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 07bcde4..690c869 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -34,7 +34,7 @@ if(MSVC) list(APPEND API wiiuse_msvcstdint.h) endif() -add_library(wiiuse SHARED ${SOURCES} ${API}) +add_library(wiiuse ${WIIUSE_LIB_TYPE} ${SOURCES} ${API}) if(WIN32) target_link_libraries(wiiuse ws2_32 setupapi ${WINHID_LIBRARIES})