svn commit: r1920390 - /apr/apr-util/branches/1.7.x/CMakeLists.txt
[email protected] Mon, 02 Sep 2024 11:36:23 -0000
Newsgroups
gmane.comp.apache.apr.cvs
Message-ID
<[email protected] >
Author: ivan
Date: Mon Sep 2 11:36:23 2024
New Revision: 1920390
URL: http://svn.apache.org/viewvc?rev=1920390&view=rev
Log:
CMake: Add APU_BUILD_SHARED and APU_BUILD_STATIC to enable/disable shared/static
builds.
Modified:
apr/apr-util/branches/1.7.x/CMakeLists.txt
Modified: apr/apr-util/branches/1.7.x/CMakeLists.txt
URL: http://svn.apache.org/viewvc/apr/apr-util/branches/1.7.x/CMakeLists.txt?rev=1920390&r1=1920389&r2=1920390&view=diff
==============================================================================
--- apr/apr-util/branches/1.7.x/CMakeLists.txt (original)
+++ apr/apr-util/branches/1.7.x/CMakeLists.txt Mon Sep 2 11:36:23 2024
@@ -37,6 +37,8 @@ ELSE()
OPTION(APU_USE_LIBXML2 "Use LibXml2" ON)
ENDIF()
+OPTION(APU_BUILD_SHARED "Build shared libraries" ON)
+OPTION(APU_BUILD_STATIC "Build static libraries" ON)
OPTION(APU_HAVE_CRYPTO "Crypto support" OFF)
OPTION(APU_HAVE_ODBC "Build ODBC DBD driver" ON)
OPTION(APR_HAS_LDAP "LDAP support" ON)
@@ -59,6 +61,14 @@ FOREACH(onelib ${APR_LIBRARIES})
ENDIF()
ENDFOREACH()
+IF(NOT APU_BUILD_SHARED AND NOT APU_BUILD_STATIC)
+ MESSAGE(FATAL_ERROR "Both APU_BUILD_SHARED and APU_BUILD_STATIC have been disabled")
+ENDIF()
+
+IF(NOT APU_BUILD_STATIC AND TEST_STATIC_LIBS)
+ MESSAGE(FATAL_ERROR "APU_BUILD_STATIC have been disabled, but TEST_STATIC_LIBS is enabled")
+ENDIF()
+
IF(NOT APU_USE_EXPAT AND NOT APU_USE_LIBXML2)
MESSAGE(FATAL_ERROR "Either Expat or LibXml2 must be selected")
ENDIF()
@@ -267,16 +277,20 @@ IF (MSVC)
ENDIF()
# libaprutil-1 is shared, aprutil-1 is static
-ADD_LIBRARY(libaprutil-1 SHARED ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED} libaprutil.rc)
-SET(install_targets ${install_targets} libaprutil-1)
-SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libaprutil-1.pdb)
-TARGET_LINK_LIBRARIES(libaprutil-1 ${XMLLIB_LIBRARIES} ${APR_LIBRARIES})
-SET_TARGET_PROPERTIES(libaprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_EXPORT;APR_DECLARE_IMPORT;XML_STATIC;WINNT")
-
-ADD_LIBRARY(aprutil-1 STATIC ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED})
-SET(install_targets ${install_targets} aprutil-1)
-TARGET_LINK_LIBRARIES(aprutil-1 ${APR_LIBRARIES} ${XMLLIB_LIBRARIES})
-SET_TARGET_PROPERTIES(aprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_STATIC;APR_DECLARE_STATIC;APU_DSO_MODULE_BUILD;XML_STATIC")
+IF(APU_BUILD_SHARED)
+ ADD_LIBRARY(libaprutil-1 SHARED ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED} libaprutil.rc)
+ SET(install_targets ${install_targets} libaprutil-1)
+ SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libaprutil-1.pdb)
+ TARGET_LINK_LIBRARIES(libaprutil-1 ${XMLLIB_LIBRARIES} ${APR_LIBRARIES})
+ SET_TARGET_PROPERTIES(libaprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_EXPORT;APR_DECLARE_IMPORT;XML_STATIC;WINNT")
+ENDIF()
+
+IF(APU_BUILD_STATIC)
+ ADD_LIBRARY(aprutil-1 STATIC ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED})
+ SET(install_targets ${install_targets} aprutil-1)
+ TARGET_LINK_LIBRARIES(aprutil-1 ${APR_LIBRARIES} ${XMLLIB_LIBRARIES})
+ SET_TARGET_PROPERTIES(aprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_STATIC;APR_DECLARE_STATIC;APU_DSO_MODULE_BUILD;XML_STATIC")
+ENDIF()
IF(APU_HAVE_CRYPTO)
IF(NOT OPENSSL_FOUND)
@@ -402,6 +416,8 @@ MESSAGE(STATUS "")
MESSAGE(STATUS "APR-Util configuration summary:")
MESSAGE(STATUS "")
MESSAGE(STATUS " Build type ...................... : ${CMAKE_BUILD_TYPE}")
+MESSAGE(STATUS " Build shared libs ............... : ${APU_BUILD_SHARED}")
+MESSAGE(STATUS " Build static libs ............... : ${APU_BUILD_STATIC}")
MESSAGE(STATUS " Install .pdb (if available)...... : ${INSTALL_PDB}")
MESSAGE(STATUS " Install prefix .................. : ${CMAKE_INSTALL_PREFIX}")
MESSAGE(STATUS " C compiler ...................... : ${CMAKE_C_COMPILER}")