Change BUILD_{STATIC,SHARED}_LIBRARIES to ENABLE_

This commit is contained in:
Matt Williams 2012-07-15 20:22:46 +01:00
parent 6fd7079e7c
commit 00e2f37f31
3 changed files with 22 additions and 22 deletions

View File

@ -4,30 +4,30 @@ PROJECT(PolyVox)
#By default only build static libraries on Windows but both on Linux #By default only build static libraries on Windows but both on Linux
#If we ever require CMake 2.8 then use http://www.kitware.com/blog/home/post/82 #If we ever require CMake 2.8 then use http://www.kitware.com/blog/home/post/82
option(BUILD_STATIC_LIBRARIES "Build static libraries" ON) option(ENABLE_STATIC_LIBRARIES "Build static libraries" ON)
if(WIN32) if(WIN32)
option(BUILD_DYNAMIC_LIBRARIES "Build dynamic libraries" OFF) option(ENABLE_DYNAMIC_LIBRARIES "Build dynamic libraries" OFF)
else() else()
option(BUILD_DYNAMIC_LIBRARIES "Build dynamic libraries" ON) option(ENABLE_DYNAMIC_LIBRARIES "Build dynamic libraries" ON)
endif() endif()
if(WIN32) if(WIN32)
#If both are enabled then diable the dyanamic build #If both are enabled then diable the dyanamic build
if(BUILD_STATIC_LIBRARIES AND BUILD_DYNAMIC_LIBRARIES) if(ENABLE_STATIC_LIBRARIES AND ENABLE_DYNAMIC_LIBRARIES)
message(STATUS "Building both static and dynamic libraries is not supported on Windows. Disabling dynamic libraries.") message(STATUS "Building both static and dynamic libraries is not supported on Windows. Disabling dynamic libraries.")
set(BUILD_DYNAMIC_LIBRARIES OFF CACHE BOOL "Build dynamic libraries" FORCE) set(ENABLE_DYNAMIC_LIBRARIES OFF CACHE BOOL "Build dynamic libraries" FORCE)
endif() endif()
#If both are diabled then re-enable the static build #If both are diabled then re-enable the static build
if(NOT BUILD_STATIC_LIBRARIES AND NOT BUILD_DYNAMIC_LIBRARIES) if(NOT ENABLE_STATIC_LIBRARIES AND NOT ENABLE_DYNAMIC_LIBRARIES)
message(STATUS "Both dynamic and static libraries were disabled - re-enabling static build.") message(STATUS "Both dynamic and static libraries were disabled - re-enabling static build.")
set(BUILD_STATIC_LIBRARIES ON CACHE BOOL "Build static libraries" FORCE) set(ENABLE_STATIC_LIBRARIES ON CACHE BOOL "Build static libraries" FORCE)
endif() endif()
else() else()
#It's nonsense to disble both so on Linux, re-enable both. #It's nonsense to disble both so on Linux, re-enable both.
if(NOT BUILD_STATIC_LIBRARIES AND NOT BUILD_DYNAMIC_LIBRARIES) if(NOT ENABLE_STATIC_LIBRARIES AND NOT ENABLE_DYNAMIC_LIBRARIES)
message(STATUS "Both dynamic and static libraries were disabled - re-enabling both.") message(STATUS "Both dynamic and static libraries were disabled - re-enabling both.")
set(BUILD_STATIC_LIBRARIES ON CACHE BOOL "Build static libraries" FORCE) set(ENABLE_STATIC_LIBRARIES ON CACHE BOOL "Build static libraries" FORCE)
set(BUILD_DYNAMIC_LIBRARIES ON CACHE BOOL "Build dynamic libraries" FORCE) set(ENABLE_DYNAMIC_LIBRARIES ON CACHE BOOL "Build dynamic libraries" FORCE)
endif() endif()
endif() endif()

View File

@ -113,7 +113,7 @@ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
#Core #Core
#Build #Build
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
ADD_LIBRARY(PolyVoxCoreStatic STATIC ${CORE_SRC_FILES} ${CORE_INC_FILES} ${IMPL_SRC_FILES} ${IMPL_INC_FILES}) ADD_LIBRARY(PolyVoxCoreStatic STATIC ${CORE_SRC_FILES} ${CORE_INC_FILES} ${IMPL_SRC_FILES} ${IMPL_INC_FILES})
SET_TARGET_PROPERTIES(PolyVoxCoreStatic PROPERTIES OUTPUT_NAME "PolyVoxCore") SET_TARGET_PROPERTIES(PolyVoxCoreStatic PROPERTIES OUTPUT_NAME "PolyVoxCore")
SET_TARGET_PROPERTIES(PolyVoxCoreStatic PROPERTIES VERSION ${POLYVOX_VERSION} SOVERSION ${POLYVOX_VERSION_MAJOR}) SET_TARGET_PROPERTIES(PolyVoxCoreStatic PROPERTIES VERSION ${POLYVOX_VERSION} SOVERSION ${POLYVOX_VERSION_MAJOR})
@ -122,7 +122,7 @@ IF(BUILD_STATIC_LIBRARIES)
ENDIF(MSVC) ENDIF(MSVC)
SET(PolyVoxCore_LIBRARY "PolyVoxCoreStatic") SET(PolyVoxCore_LIBRARY "PolyVoxCoreStatic")
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
ADD_LIBRARY(PolyVoxCoreDynamic SHARED ${CORE_SRC_FILES} ${CORE_INC_FILES} ${IMPL_SRC_FILES} ${IMPL_INC_FILES}) ADD_LIBRARY(PolyVoxCoreDynamic SHARED ${CORE_SRC_FILES} ${CORE_INC_FILES} ${IMPL_SRC_FILES} ${IMPL_INC_FILES})
SET_TARGET_PROPERTIES(PolyVoxCoreDynamic PROPERTIES OUTPUT_NAME "PolyVoxCore") SET_TARGET_PROPERTIES(PolyVoxCoreDynamic PROPERTIES OUTPUT_NAME "PolyVoxCore")
SET_TARGET_PROPERTIES(PolyVoxCoreDynamic PROPERTIES COMPILE_FLAGS "-DPOLYVOX_SHARED_EXPORTS") SET_TARGET_PROPERTIES(PolyVoxCoreDynamic PROPERTIES COMPILE_FLAGS "-DPOLYVOX_SHARED_EXPORTS")
@ -135,14 +135,14 @@ ENDIF()
#Install #Install
IF(WIN32) IF(WIN32)
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
INSTALL(TARGETS PolyVoxCoreStatic INSTALL(TARGETS PolyVoxCoreStatic
RUNTIME DESTINATION PolyVoxCore/bin COMPONENT library RUNTIME DESTINATION PolyVoxCore/bin COMPONENT library
LIBRARY DESTINATION PolyVoxCore/lib COMPONENT library LIBRARY DESTINATION PolyVoxCore/lib COMPONENT library
ARCHIVE DESTINATION PolyVoxCore/lib COMPONENT library ARCHIVE DESTINATION PolyVoxCore/lib COMPONENT library
) )
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
INSTALL(TARGETS PolyVoxCoreDynamic INSTALL(TARGETS PolyVoxCoreDynamic
RUNTIME DESTINATION PolyVoxCore/bin COMPONENT library RUNTIME DESTINATION PolyVoxCore/bin COMPONENT library
LIBRARY DESTINATION PolyVoxCore/lib COMPONENT library LIBRARY DESTINATION PolyVoxCore/lib COMPONENT library
@ -159,14 +159,14 @@ IF(WIN32)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/PolyVoxCore.pdb DESTINATION PolyVoxCore/lib CONFIGURATIONS Debug) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/PolyVoxCore.pdb DESTINATION PolyVoxCore/lib CONFIGURATIONS Debug)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/PolyVoxCore.pdb DESTINATION PolyVoxCore/lib CONFIGURATIONS RelWithDebInfo) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/PolyVoxCore.pdb DESTINATION PolyVoxCore/lib CONFIGURATIONS RelWithDebInfo)
ELSE(WIN32) ELSE(WIN32)
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
INSTALL(TARGETS PolyVoxCoreStatic INSTALL(TARGETS PolyVoxCoreStatic
RUNTIME DESTINATION bin COMPONENT library RUNTIME DESTINATION bin COMPONENT library
LIBRARY DESTINATION lib COMPONENT library LIBRARY DESTINATION lib COMPONENT library
ARCHIVE DESTINATION lib COMPONENT library ARCHIVE DESTINATION lib COMPONENT library
) )
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
INSTALL(TARGETS PolyVoxCoreDynamic INSTALL(TARGETS PolyVoxCoreDynamic
RUNTIME DESTINATION bin COMPONENT library RUNTIME DESTINATION bin COMPONENT library
LIBRARY DESTINATION lib COMPONENT library LIBRARY DESTINATION lib COMPONENT library

View File

@ -29,7 +29,7 @@ LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR}/debug ${PolyVoxCore_BINARY_DIR}/relea
#Util #Util
#Build #Build
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
ADD_LIBRARY(PolyVoxUtilStatic STATIC ${UTIL_SRC_FILES} ${UTIL_INC_FILES}) ADD_LIBRARY(PolyVoxUtilStatic STATIC ${UTIL_SRC_FILES} ${UTIL_INC_FILES})
TARGET_LINK_LIBRARIES(PolyVoxUtilStatic PolyVoxCore) TARGET_LINK_LIBRARIES(PolyVoxUtilStatic PolyVoxCore)
SET_TARGET_PROPERTIES(PolyVoxUtilStatic PROPERTIES OUTPUT_NAME "PolyVoxUtil") SET_TARGET_PROPERTIES(PolyVoxUtilStatic PROPERTIES OUTPUT_NAME "PolyVoxUtil")
@ -39,7 +39,7 @@ IF(BUILD_STATIC_LIBRARIES)
ENDIF(MSVC) ENDIF(MSVC)
ADD_DEPENDENCIES(PolyVoxUtilStatic PolyVoxCoreStatic) ADD_DEPENDENCIES(PolyVoxUtilStatic PolyVoxCoreStatic)
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
ADD_LIBRARY(PolyVoxUtilDynamic SHARED ${UTIL_SRC_FILES} ${UTIL_INC_FILES}) ADD_LIBRARY(PolyVoxUtilDynamic SHARED ${UTIL_SRC_FILES} ${UTIL_INC_FILES})
TARGET_LINK_LIBRARIES(PolyVoxUtilDynamic PolyVoxCore) TARGET_LINK_LIBRARIES(PolyVoxUtilDynamic PolyVoxCore)
SET_TARGET_PROPERTIES(PolyVoxUtilDynamic PROPERTIES OUTPUT_NAME "PolyVoxUtil") SET_TARGET_PROPERTIES(PolyVoxUtilDynamic PROPERTIES OUTPUT_NAME "PolyVoxUtil")
@ -53,14 +53,14 @@ ENDIF()
#Install #Install
IF(WIN32) IF(WIN32)
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
INSTALL(TARGETS PolyVoxUtilStatic INSTALL(TARGETS PolyVoxUtilStatic
RUNTIME DESTINATION PolyVoxUtil/bin COMPONENT library RUNTIME DESTINATION PolyVoxUtil/bin COMPONENT library
LIBRARY DESTINATION PolyVoxUtil/lib COMPONENT library LIBRARY DESTINATION PolyVoxUtil/lib COMPONENT library
ARCHIVE DESTINATION PolyVoxUtil/lib COMPONENT library ARCHIVE DESTINATION PolyVoxUtil/lib COMPONENT library
) )
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
INSTALL(TARGETS PolyVoxUtilDynamic INSTALL(TARGETS PolyVoxUtilDynamic
RUNTIME DESTINATION PolyVoxUtil/bin COMPONENT library RUNTIME DESTINATION PolyVoxUtil/bin COMPONENT library
LIBRARY DESTINATION PolyVoxUtil/lib COMPONENT library LIBRARY DESTINATION PolyVoxUtil/lib COMPONENT library
@ -77,14 +77,14 @@ IF(WIN32)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/PolyVoxUtil.pdb DESTINATION PolyVoxUtil/lib CONFIGURATIONS Debug) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/PolyVoxUtil.pdb DESTINATION PolyVoxUtil/lib CONFIGURATIONS Debug)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/PolyVoxUtil.pdb DESTINATION PolyVoxUtil/lib CONFIGURATIONS RelWithDebInfo) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/PolyVoxUtil.pdb DESTINATION PolyVoxUtil/lib CONFIGURATIONS RelWithDebInfo)
ELSE(WIN32) ELSE(WIN32)
IF(BUILD_STATIC_LIBRARIES) IF(ENABLE_STATIC_LIBRARIES)
INSTALL(TARGETS PolyVoxUtilStatic INSTALL(TARGETS PolyVoxUtilStatic
RUNTIME DESTINATION bin COMPONENT library RUNTIME DESTINATION bin COMPONENT library
LIBRARY DESTINATION lib COMPONENT library LIBRARY DESTINATION lib COMPONENT library
ARCHIVE DESTINATION lib COMPONENT library ARCHIVE DESTINATION lib COMPONENT library
) )
ENDIF() ENDIF()
IF(BUILD_DYNAMIC_LIBRARIES) IF(ENABLE_DYNAMIC_LIBRARIES)
INSTALL(TARGETS PolyVoxUtilDynamic INSTALL(TARGETS PolyVoxUtilDynamic
RUNTIME DESTINATION bin COMPONENT library RUNTIME DESTINATION bin COMPONENT library
LIBRARY DESTINATION lib COMPONENT library LIBRARY DESTINATION lib COMPONENT library