From 279cdb05511b248b34912f9cce1572068458f896 Mon Sep 17 00:00:00 2001 From: Christoph Willing Date: Sat, 10 Apr 2021 23:55:37 +1000 Subject: [PATCH] Add option to not install static lib Signed-off-by: Christoph Willing --- configure | 1 + piehid/CMakeLists.txt | 27 ++++++++++++++++++--------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/configure b/configure index 1f515f0..e290fee 100755 --- a/configure +++ b/configure @@ -5,6 +5,7 @@ if [ "$1" == "--help" ]; then echo "to CMake by this script. For example:" echo " ./configure -D CMAKE_INSTALL_PREFIX=/usr " echo " ./configure -D CMAKE_BUILD_TYPE=Release " + echo " ./configure -D BUILD_STATIC_LIBS=OFF " echo " ./configure -D LIB_SUFFIX=64 " echo "Passing no parameters will give the default build." exit 1 diff --git a/piehid/CMakeLists.txt b/piehid/CMakeLists.txt index bf64dd8..4761eb7 100644 --- a/piehid/CMakeLists.txt +++ b/piehid/CMakeLists.txt @@ -17,6 +17,8 @@ if(DEFINED LIBDIRSUFFIX) set(LIB_SUFFIX ${LIBDIRSUFFIX}) endif(DEFINED LIBDIRSUFFIX) +OPTION(BUILD_STATIC_LIBS "Build static library" ON) + # Link against libusb and pthreads. find_package(PkgConfig) PKG_CHECK_MODULES(LIBUSB REQUIRED libusb-1.0) @@ -38,12 +40,12 @@ LINK_DIRECTORIES( ADD_DEFINITIONS() -#ADD_EXECUTABLE(test ${SRCS}) ADD_LIBRARY(piehid SHARED ${SRCS}) -ADD_LIBRARY(piehid_static STATIC ${SRCS}) -SET_TARGET_PROPERTIES(piehid_static PROPERTIES OUTPUT_NAME piehid) +IF(BUILD_STATIC_LIBS) + ADD_LIBRARY(piehid_static STATIC ${SRCS}) + SET_TARGET_PROPERTIES(piehid_static PROPERTIES OUTPUT_NAME piehid) +ENDIF (BUILD_STATIC_LIBS) SET_TARGET_PROPERTIES(piehid PROPERTIES PUBLIC_HEADER PieHid32.h) -#SET_TARGET_PROPERTIES(piehid PROPERTIES VERSION 1) SET_TARGET_PROPERTIES(piehid PROPERTIES SOVERSION 1) TARGET_LINK_LIBRARIES( @@ -52,10 +54,17 @@ TARGET_LINK_LIBRARIES( ${CMAKE_THREAD_LIBS_INIT} ) -INSTALL(TARGETS piehid piehid_static - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib${LIB_SUFFIX} - ARCHIVE DESTINATION lib${LIB_SUFFIX} - PUBLIC_HEADER DESTINATION include ) +IF(BUILD_STATIC_LIBS) + INSTALL(TARGETS piehid piehid_static + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib${LIB_SUFFIX} + ARCHIVE DESTINATION lib${LIB_SUFFIX} + PUBLIC_HEADER DESTINATION include ) +ELSE() + INSTALL(TARGETS piehid + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib${LIB_SUFFIX} + PUBLIC_HEADER DESTINATION include ) +ENDIF (BUILD_STATIC_LIBS)