Adding static library option (#5397)
This commit is contained in:
parent
a931589c96
commit
7a99f8f27f
@ -23,6 +23,7 @@ set_default_configuration_release()
|
|||||||
#-- Options
|
#-- Options
|
||||||
option(BUILD_C_DOC "Build documentation for C APIs using Doxygen." OFF)
|
option(BUILD_C_DOC "Build documentation for C APIs using Doxygen." OFF)
|
||||||
option(USE_OPENMP "Build with OpenMP support." ON)
|
option(USE_OPENMP "Build with OpenMP support." ON)
|
||||||
|
option(BUILD_STATIC_LIB "Build static library" OFF)
|
||||||
## Bindings
|
## Bindings
|
||||||
option(JVM_BINDINGS "Build JVM bindings" OFF)
|
option(JVM_BINDINGS "Build JVM bindings" OFF)
|
||||||
option(R_LIB "Build shared library for R package" OFF)
|
option(R_LIB "Build shared library for R package" OFF)
|
||||||
@ -133,8 +134,12 @@ add_subdirectory(${xgboost_SOURCE_DIR}/plugin)
|
|||||||
add_subdirectory(${xgboost_SOURCE_DIR}/src)
|
add_subdirectory(${xgboost_SOURCE_DIR}/src)
|
||||||
set(XGBOOST_OBJ_SOURCES "${XGBOOST_OBJ_SOURCES};$<TARGET_OBJECTS:objxgboost>")
|
set(XGBOOST_OBJ_SOURCES "${XGBOOST_OBJ_SOURCES};$<TARGET_OBJECTS:objxgboost>")
|
||||||
|
|
||||||
#-- Shared library
|
#-- library
|
||||||
|
if (BUILD_STATIC_LIB)
|
||||||
|
add_library(xgboost STATIC ${XGBOOST_OBJ_SOURCES})
|
||||||
|
else()
|
||||||
add_library(xgboost SHARED ${XGBOOST_OBJ_SOURCES})
|
add_library(xgboost SHARED ${XGBOOST_OBJ_SOURCES})
|
||||||
|
endif(BUILD_STATIC_LIB)
|
||||||
target_include_directories(xgboost
|
target_include_directories(xgboost
|
||||||
INTERFACE
|
INTERFACE
|
||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>
|
||||||
|
|||||||
@ -65,6 +65,11 @@ function(set_output_directory target dir)
|
|||||||
LIBRARY_OUTPUT_DIRECTORY_RELEASE ${dir}
|
LIBRARY_OUTPUT_DIRECTORY_RELEASE ${dir}
|
||||||
LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO ${dir}
|
LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO ${dir}
|
||||||
LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL ${dir}
|
LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL ${dir}
|
||||||
|
ARCHIVE_OUTPUT_DIRECTORY ${dir}
|
||||||
|
ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${dir}
|
||||||
|
ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${dir}
|
||||||
|
ARCHIVE_OUTPUT_DIRECTORY_RELWITHDEBINFO ${dir}
|
||||||
|
ARCHIVE_OUTPUT_DIRECTORY_MINSIZEREL ${dir}
|
||||||
)
|
)
|
||||||
endfunction(set_output_directory)
|
endfunction(set_output_directory)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user