c091b5c2d1
Mathieu Marache, he added the last missing piece to this puzzle. I think it is safe to commit these changes to trunk, as the traditional way via dylibs should work as before. Here's some more info how to get frameworks: With these modifications it is possible to compile frameworks on OS X, when you set the Cmake-option OSG_COMPILE_FRAMEWORKS to true. If you want to embed the frameworks in your app-bundle make sure to set OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR accordingly. You'll have to build the install-target of the generated xcode-projects as this sets the install_name_dirs of the frameworks and plugins."
54 lines
1.4 KiB
CMake
54 lines
1.4 KiB
CMake
# INSTALL and SOURCE_GROUP commands for OSG/OT/Producer Modules
|
|
|
|
# Required Vars:
|
|
# ${LIB_NAME}
|
|
# ${LIB_PUBLIC_HEADERS}
|
|
|
|
SET(INSTALL_INCDIR include)
|
|
SET(INSTALL_BINDIR bin)
|
|
IF(WIN32)
|
|
SET(INSTALL_LIBDIR bin)
|
|
SET(INSTALL_ARCHIVEDIR lib)
|
|
ELSE()
|
|
SET(INSTALL_LIBDIR lib${LIB_POSTFIX})
|
|
SET(INSTALL_ARCHIVEDIR lib${LIB_POSTFIX})
|
|
ENDIF()
|
|
|
|
SET(HEADERS_GROUP "Header Files")
|
|
|
|
SOURCE_GROUP(
|
|
${HEADERS_GROUP}
|
|
FILES ${LIB_PUBLIC_HEADERS}
|
|
)
|
|
|
|
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
|
HANDLE_MSVC_DLL()
|
|
ENDIF()
|
|
|
|
INSTALL(
|
|
TARGETS ${LIB_NAME}
|
|
RUNTIME DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph
|
|
LIBRARY DESTINATION ${INSTALL_LIBDIR} COMPONENT libopenscenegraph
|
|
ARCHIVE DESTINATION ${INSTALL_ARCHIVEDIR} COMPONENT libopenscenegraph-dev
|
|
FRAMEWORK DESTINATION /Library/Frameworks
|
|
)
|
|
|
|
IF(NOT OSG_COMPILE_FRAMEWORKS)
|
|
INSTALL (
|
|
FILES ${LIB_PUBLIC_HEADERS}
|
|
DESTINATION ${INSTALL_INCDIR}/${LIB_NAME}
|
|
COMPONENT libopenscenegraph-dev
|
|
)
|
|
ELSE()
|
|
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
|
SET(CMAKE_INSTALL_RPATH "${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}")
|
|
|
|
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES
|
|
FRAMEWORK TRUE
|
|
FRAMEWORK_VERSION ${OPENSCENEGRAPH_VERSION}
|
|
PUBLIC_HEADER "${LIB_PUBLIC_HEADERS}"
|
|
INSTALL_NAME_DIR "${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}"
|
|
)
|
|
# MESSAGE("${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}")
|
|
ENDIF()
|