mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-29 00:06:44 -04:00
CMake: Remove p3dtoolconfig from build
It's just p3prc now, so instead we install some symlinks
This commit is contained in:
parent
f7ac439eb1
commit
cf59d3d983
@ -10,6 +10,5 @@ add_subdirectory(src/interrogate)
|
||||
add_subdirectory(src/interrogatedb)
|
||||
add_subdirectory(src/prc)
|
||||
|
||||
# Include dtool metalibs
|
||||
# Include dtool metalib
|
||||
add_subdirectory(metalibs/dtool)
|
||||
add_subdirectory(metalibs/dtoolconfig)
|
||||
|
@ -1,11 +0,0 @@
|
||||
set(DTOOLCONFIG_LINK_TARGETS p3prc)
|
||||
set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "CoreDevel")
|
||||
add_metalib(p3dtoolconfig INIT init_libdtoolconfig dtoolconfig.h COMPONENTS ${DTOOLCONFIG_LINK_TARGETS})
|
||||
unset(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME)
|
||||
|
||||
install(TARGETS p3dtoolconfig
|
||||
EXPORT Core COMPONENT Core
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/panda3d
|
||||
ARCHIVE COMPONENT CoreDevel)
|
@ -37,7 +37,7 @@ composite_sources(p3interrogatedb P3INTERROGATEDB_SOURCES)
|
||||
add_library(p3interrogatedb
|
||||
${P3INTERROGATEDB_HEADERS} ${P3INTERROGATEDB_SOURCES})
|
||||
set_target_properties(p3interrogatedb PROPERTIES DEFINE_SYMBOL BUILDING_INTERROGATEDB)
|
||||
target_link_libraries(p3interrogatedb p3dconfig p3dtoolconfig)
|
||||
target_link_libraries(p3interrogatedb p3dconfig p3prc)
|
||||
|
||||
install(TARGETS p3interrogatedb
|
||||
EXPORT Core COMPONENT Core
|
||||
|
@ -81,8 +81,9 @@ set(P3PRC_IGATEEXT
|
||||
)
|
||||
|
||||
composite_sources(p3prc P3PRC_SOURCES)
|
||||
add_component_library(p3prc NOINIT SYMBOL BUILDING_DTOOL_PRC
|
||||
add_library(p3prc
|
||||
${P3PRC_HEADERS} ${P3PRC_SOURCES})
|
||||
set_target_properties(p3prc PROPERTIES DEFINE_SYMBOL BUILDING_DTOOL_PRC)
|
||||
target_include_directories(p3prc PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>)
|
||||
target_link_libraries(p3prc p3dtool PKG::OPENSSL)
|
||||
target_interrogate(p3prc ALL EXTENSIONS ${P3PRC_IGATEEXT})
|
||||
@ -91,12 +92,66 @@ if(ANDROID)
|
||||
target_link_libraries(p3prc log)
|
||||
endif()
|
||||
|
||||
if(NOT BUILD_METALIBS)
|
||||
install(TARGETS p3prc
|
||||
EXPORT Core COMPONENT Core
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/panda3d
|
||||
ARCHIVE COMPONENT CoreDevel)
|
||||
endif()
|
||||
install(TARGETS p3prc
|
||||
EXPORT Core COMPONENT Core
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/panda3d
|
||||
ARCHIVE COMPONENT CoreDevel)
|
||||
|
||||
install(FILES ${P3PRC_HEADERS} COMPONENT CoreDevel DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/panda3d)
|
||||
|
||||
# Also install under the old name "p3dtoolconfig"
|
||||
# TODO: Remove this once "p3dtoolconfig" is deprecated
|
||||
if(WIN32)
|
||||
# Symlinks aren't pretty under WIN32
|
||||
set(_symlink "copy")
|
||||
else()
|
||||
set(_symlink "create_symlink")
|
||||
endif()
|
||||
|
||||
get_target_property(_type p3prc TYPE)
|
||||
if(_type STREQUAL "SHARED_LIBRARY")
|
||||
|
||||
set(_suffix "${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
if(UNIX)
|
||||
get_target_property(_soversion p3prc SOVERSION)
|
||||
if(APPLE)
|
||||
set(_suffix ".${_soversion}${_suffix}")
|
||||
else()
|
||||
set(_suffix "${_suffix}.${_soversion}")
|
||||
endif()
|
||||
|
||||
set(_file_genex "TARGET_SONAME_FILE")
|
||||
set(_install_dir "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
else()
|
||||
# Win32?
|
||||
set(_file_genex "TARGET_FILE")
|
||||
set(_install_dir "${CMAKE_INSTALL_BINDIR}")
|
||||
|
||||
endif()
|
||||
|
||||
set(_soname "${CMAKE_SHARED_LIBRARY_PREFIX}p3dtoolconfig${_suffix}")
|
||||
|
||||
add_custom_command(TARGET p3prc POST_BUILD
|
||||
COMMAND "${CMAKE_COMMAND}" -E chdir "$<${_file_genex}_DIR:p3prc>"
|
||||
"${CMAKE_COMMAND}" -E "${_symlink}"
|
||||
"$<${_file_genex}_NAME:p3prc>" "${_soname}"
|
||||
)
|
||||
install(FILES "$<${_file_genex}_DIR:p3prc>/${_soname}"
|
||||
DESTINATION "${_install_dir}")
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
set(_libname "${CMAKE_IMPORT_LIBRARY_PREFIX}p3dtoolconfig${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||
else()
|
||||
set(_libname "${CMAKE_${_type}_PREFIX}p3dtoolconfig${CMAKE_${_type}_SUFFIX}")
|
||||
endif()
|
||||
add_custom_command(TARGET p3prc POST_BUILD
|
||||
COMMAND "${CMAKE_COMMAND}" -E chdir "$<TARGET_LINKER_FILE_DIR:p3prc>"
|
||||
"${CMAKE_COMMAND}" -E "${_symlink}"
|
||||
"$<TARGET_LINKER_FILE_NAME:p3prc>" "${_libname}"
|
||||
)
|
||||
install(FILES "$<TARGET_LINKER_FILE_DIR:p3prc>/${_libname}"
|
||||
DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
@ -142,7 +142,7 @@ set(P3EXPRESS_IGATEEXT
|
||||
composite_sources(p3express P3EXPRESS_SOURCES)
|
||||
add_component_library(p3express SYMBOL BUILDING_PANDA_EXPRESS
|
||||
${P3EXPRESS_SOURCES} ${P3EXPRESS_HEADERS})
|
||||
target_link_libraries(p3express p3pandabase p3interrogatedb p3dtoolconfig p3dtool
|
||||
target_link_libraries(p3express p3pandabase p3interrogatedb p3prc p3dtool
|
||||
PKG::ZLIB PKG::OPENSSL)
|
||||
target_interrogate(p3express ALL EXTENSIONS ${P3EXPRESS_IGATEEXT})
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user