vcpkg/ports/libcaer/libcaer-static-build.patch

56 lines
2.0 KiB
Diff
Raw Normal View History

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3b1937a..a75db2b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,6 +20,8 @@ OPTION(ENABLE_SERIALDEV "Enable support for serial port devices using libserialp
OPTION(ENABLE_OPENCV "Enable support for frame enhancements using OpenCV" OFF)
OPTION(UDEV_INSTALL "Install udev rules on Linux" ON)
OPTION(EXAMPLES_INSTALL "Build and install examples" OFF)
+OPTION(ENABLE_BINDIR_INSTALLATION "Split archive and binary installation targets [required for vcpkg installation]" OFF)
+OPTION(BUILD_SHARED_LIBS "Build libcaer as a shared library" ON)
# Cross-compile support
IF(NOT USER_LOCAL_PREFIX)
@@ -98,7 +100,7 @@ INCLUDE(CMakePackageConfigHelpers)
WRITE_BASIC_CONFIG_VERSION_FILE(${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake VERSION ${PROJECT_VERSION}
COMPATIBILITY SameMajorVersion)
SET(include_dirs ${CMAKE_INSTALL_INCLUDEDIR})
-IF(CC_MSVC)
+IF(ENABLE_BINDIR_INSTALLATION)
SET(export_destination ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME})
ELSE()
SET(export_destination ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 377a556..d9c29d7 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -19,6 +19,10 @@ IF(NOT CC_MSVC)
SET(LIBCAER_COMPILE_OPTIONS "-Wno-unused-function")
ENDIF()
+IF(OS_MACOS)
+ LIST(APPEND LIBCAER_COMPILE_OPTIONS "-Wno-implicit-function-declaration")
+ENDIF()
+
SET(LIBCAER_LINK_LIBRARIES_PRIVATE ${BASE_LIBS})
IF(OS_LINUX)
@@ -63,7 +67,7 @@ ENDIF()
# Set full RPATH
SET(CMAKE_INSTALL_RPATH ${USER_LOCAL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
-ADD_LIBRARY(caer SHARED ${LIBCAER_SOURCES})
+ADD_LIBRARY(caer ${LIBCAER_SOURCES})
IF(CC_MSVC)
# This flag needs to be propagated down to depending targets to avoid compilation errors
TARGET_COMPILE_OPTIONS(caer INTERFACE -DWIN32_LEAN_AND_MEAN=ON)
@@ -94,7 +98,7 @@ IF(ENABLE_STATIC)
SET_TARGET_PROPERTIES(caerStatic PROPERTIES OUTPUT_NAME caer)
- IF(OS_WINDOWS)
+ IF(ENABLE_BINDIR_INSTALLATION)
INSTALL(
TARGETS caerStatic
EXPORT libcaer-exports