cmake: fix static build on Linux
When building Python, many extra libraries must be included, such as expat and zlib. Signed-off-by: Sean Cross <sean@xobs.io>
This commit is contained in:
parent
f98960b936
commit
0d0056a043
@ -23,7 +23,13 @@ if (STATIC_BUILD)
|
||||
add_definitions(-DBOOST_PYTHON_STATIC_LIB)
|
||||
endif()
|
||||
else()
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".so")
|
||||
set(link_param "-static")
|
||||
if (BUILD_PYTHON)
|
||||
find_package(ZLIB)
|
||||
find_package(EXPAT)
|
||||
find_package(Threads)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -267,6 +273,14 @@ foreach (family ${ARCH})
|
||||
endif()
|
||||
if (BUILD_PYTHON)
|
||||
target_link_libraries(${target} LINK_PUBLIC ${PYTHON_LIBRARIES})
|
||||
if (STATIC_BUILD)
|
||||
target_link_libraries(${target} LINK_PUBLIC ${CMAKE_THREAD_LIBS_INIT} ${CMAKE_DL_LIBS} ${ZLIB_LIBRARIES} ${EXPAT_LIBRARIES} -lutil)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows" AND MSVC)
|
||||
else()
|
||||
target_link_libraries(${target} LINK_PUBLIC -lutil)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endforeach (target)
|
||||
endforeach (family)
|
||||
|
Loading…
Reference in New Issue
Block a user