From 24de4efef3b5d890cc1fa15650612a283271a621 Mon Sep 17 00:00:00 2001 From: Bruce Wen <bruce87en@gmail.com> Date: Tue, 6 Aug 2024 13:52:46 +0800 Subject: [PATCH] Fix compile issue when used as submodule --- CMakeLists.txt | 4 ++-- src/CMakeLists.txt | 16 ++++++++++------ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fbf1daa..6de4914 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,8 +28,8 @@ if (NOT CMAKE_BUILD_TYPE) "Options are Debug Release RelWithDebInfo MinSizeRel" FORCE) endif () -option (BUILD_SHARED_LIBS "Build as shared library" TRUE) -if (NOT BUILD_SHARED_LIBS) +option (BUILD_LIBUSBP_SHARED_LIBS "Build as shared library" ON) +if (NOT BUILD_LIBUSBP_SHARED_LIBS) add_definitions (-DLIBUSBP_STATIC) set (PC_MORE_CFLAGS "-DLIBUSBP_STATIC") endif () diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 34154e4..44148bf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -53,17 +53,21 @@ elseif (APPLE) mac/iokit_mac.c) endif () -add_library (usbp ${sources}) +if (BUILD_LIBUSBP_SHARED_LIBS) +add_library (usbp SHARED ${sources}) +else () +add_library (usbp STATIC ${sources}) +endif () -include_directories ( - "${CMAKE_SOURCE_DIR}/include" +target_include_directories (usbp PUBLIC + "${CMAKE_CURRENT_SOURCE_DIR}/../include" "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" ) if (WIN32) target_link_libraries (usbp setupapi winusb uuid ole32) - if (NOT BUILD_SHARED_LIBS) + if (NOT BUILD_LIBUSBP_SHARED_LIBS) set (PC_MORE_LIBS "-lsetupapi -lwinusb -luuid -lole32") endif () elseif (LINUX) @@ -71,12 +75,12 @@ elseif (LINUX) string (REPLACE ";" " " LIBUDEV_CFLAGS "${LIBUDEV_CFLAGS}") set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUDEV_CFLAGS}") target_link_libraries (usbp udev) - if (NOT BUILD_SHARED_LIBS) + if (NOT BUILD_LIBUSBP_SHARED_LIBS) set (PC_REQUIRES "libudev") endif () elseif (APPLE) set (link_flags "-framework IOKit -framework CoreFoundation ${link_flags}") - if (NOT BUILD_SHARED_LIBS) + if (NOT BUILD_LIBUSBP_SHARED_LIBS) set (PC_MORE_LIBS "${link_flags}") endif () endif ()