aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/osg-qt
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/osg-qt')
-rw-r--r--vcpkg/ports/osg-qt/CMakeLists.patch16
-rw-r--r--vcpkg/ports/osg-qt/OsgMacroUtils.patch11
-rw-r--r--vcpkg/ports/osg-qt/fix-static-install.patch57
-rw-r--r--vcpkg/ports/osg-qt/portfile.cmake37
-rw-r--r--vcpkg/ports/osg-qt/use-lib.patch13
-rw-r--r--vcpkg/ports/osg-qt/vcpkg.json17
6 files changed, 151 insertions, 0 deletions
diff --git a/vcpkg/ports/osg-qt/CMakeLists.patch b/vcpkg/ports/osg-qt/CMakeLists.patch
new file mode 100644
index 0000000..0a60fb4
--- /dev/null
+++ b/vcpkg/ports/osg-qt/CMakeLists.patch
@@ -0,0 +1,16 @@
+diff --git a/src/osgQOpenGL/CMakeLists.txt b/src/osgQOpenGL/CMakeLists.txt
+--- a/src/osgQOpenGL/CMakeLists.txt
++++ b/src/osgQOpenGL/CMakeLists.txt
+@@ -14,7 +14,11 @@
+ ${HEADER_PATH}/OSGRenderer
+ )
+
+- qt5_wrap_cpp(SOURCES_H_MOC ${SOURCE_H} #[[OPTIONS ${MOC_OPTIONS}]])
++ FOREACH(HEADER_FILE ${SOURCE_H})
++ get_filename_component(HEADER_FILE_NAME "${CMAKE_CURRENT_LIST_DIR}/${HEADER_FILE}" NAME)
++ qt5_wrap_cpp(HEADER_FILE_MOC ${HEADER_FILE} OPTIONS "-f<osgQOpenGL/${HEADER_FILE_NAME}>")
++ LIST(APPEND SOURCES_H_MOC ${HEADER_FILE_MOC})
++ ENDFOREACH()
+
+ SET(TARGET_H
+ ${SOURCE_H}
diff --git a/vcpkg/ports/osg-qt/OsgMacroUtils.patch b/vcpkg/ports/osg-qt/OsgMacroUtils.patch
new file mode 100644
index 0000000..d46f1f9
--- /dev/null
+++ b/vcpkg/ports/osg-qt/OsgMacroUtils.patch
@@ -0,0 +1,11 @@
+--- a/CMakeModules/OsgMacroUtils.cmake
++++ b/CMakeModules/OsgMacroUtils.cmake
+@@ -92,7 +92,7 @@ MACRO(LINK_CORELIB_DEFAULT CORELIB_NAME)
+ ENDIF()
+
+ LINK_EXTERNAL(${CORELIB_NAME} ${ALL_GL_LIBRARIES})
+- LINK_WITH_VARIABLES(${CORELIB_NAME} OPENTHREADS_LIBRARY)
++ #LINK_WITH_VARIABLES(${CORELIB_NAME} OPENTHREADS_LIBRARY)
+ IF(OPENSCENEGRAPH_SONAMES)
+ SET_TARGET_PROPERTIES(${CORELIB_NAME} PROPERTIES VERSION ${OPENSCENEGRAPH_VERSION} SOVERSION ${OPENSCENEGRAPH_SOVERSION})
+ ENDIF(OPENSCENEGRAPH_SONAMES)
diff --git a/vcpkg/ports/osg-qt/fix-static-install.patch b/vcpkg/ports/osg-qt/fix-static-install.patch
new file mode 100644
index 0000000..4b2597c
--- /dev/null
+++ b/vcpkg/ports/osg-qt/fix-static-install.patch
@@ -0,0 +1,57 @@
+diff --git a/CMakeModules/ModuleInstall.cmake b/CMakeModules/ModuleInstall.cmake
+index eb26ba2..14b8bca 100644
+--- a/CMakeModules/ModuleInstall.cmake
++++ b/CMakeModules/ModuleInstall.cmake
+@@ -40,10 +40,10 @@
+ ARCHIVE DESTINATION ${INSTALL_ARCHIVEDIR} COMPONENT libopenscenegraph-dev
+ )
+
+-IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ GET_TARGET_PROPERTY(PREFIX ${LIB_NAME} PREFIX)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PREFIX}${LIB_NAME}${CMAKE_BUILD_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph)
+-ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+
+ IF(NOT OSG_COMPILE_FRAMEWORKS)
+ INSTALL (
+diff --git a/CMakeModules/OsgMacroUtils.cmake b/CMakeModules/OsgMacroUtils.cmake
+index 5688f8f..329f862 100644
+--- a/CMakeModules/OsgMacroUtils.cmake
++++ b/CMakeModules/OsgMacroUtils.cmake
+@@ -333,9 +333,9 @@ MACRO(SETUP_PLUGIN PLUGIN_NAME)
+ RUNTIME DESTINATION bin COMPONENT ${PACKAGE_COMPONENT}
+ ARCHIVE DESTINATION lib/${OSG_PLUGINS} COMPONENT libopenscenegraph-dev
+ LIBRARY DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT})
+- IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_TARGETNAME}${CMAKE_BUILD_POSTFIX}.pdb DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT})
+- ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ ELSE(WIN32)
+ INSTALL(TARGETS ${TARGET_TARGETNAME}
+ RUNTIME DESTINATION bin COMPONENT ${PACKAGE_COMPONENT}
+@@ -436,9 +436,9 @@ MACRO(SETUP_APPLICATION APPLICATION_NAME)
+ INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
+ ELSE(APPLE)
+ INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin COMPONENT openscenegraph )
+- IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ INSTALL(FILES ${CMAKE_BINARY_DIR}/bin/${TARGET_NAME}${CMAKE_BUILD_POSTFIX}.pdb DESTINATION bin COMPONENT openscenegraph)
+- ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ ENDIF(APPLE)
+
+ ENDMACRO(SETUP_APPLICATION)
+@@ -468,9 +468,9 @@ MACRO(SETUP_EXAMPLE EXAMPLE_NAME)
+ INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin BUNDLE DESTINATION share/OpenSceneGraph/bin )
+ ELSE(APPLE)
+ INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples )
+- IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ IF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_TARGETNAME}${CMAKE_BUILD_POSTFIX}.pdb DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples)
+- ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
++ ENDIF(MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Release" AND DYNAMIC_OPENSCENEGRAPH)
+ ENDIF(APPLE)
+
+ ENDMACRO(SETUP_EXAMPLE)
diff --git a/vcpkg/ports/osg-qt/portfile.cmake b/vcpkg/ports/osg-qt/portfile.cmake
new file mode 100644
index 0000000..c760ed7
--- /dev/null
+++ b/vcpkg/ports/osg-qt/portfile.cmake
@@ -0,0 +1,37 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO openscenegraph/osgQt
+ REF 2cb70673a4e83a618290e7ee66d52402a94ec3f6
+ SHA512 29aeb5b31e70d5b12e69de7970b36ab7d1541c984873384a46c6468394e8562688c46ef39179820990817c94f283c7836c2c6ff207eefe385086d850ba3f8306
+ HEAD_REF master
+ PATCHES
+ OsgMacroUtils.patch
+ fix-static-install.patch
+ CMakeLists.patch
+ use-lib.patch
+)
+
+if(VCPKG_TARGET_IS_OSX)
+ string(APPEND VCPKG_CXX_FLAGS " -stdlib=libc++")
+ string(APPEND VCPKG_C_FLAGS "") # both must be set
+endif()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ set(OPTIONS -DDYNAMIC_OPENSCENEGRAPH=ON)
+else()
+ set(OPTIONS -DDYNAMIC_OPENSCENEGRAPH=OFF)
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${OPTIONS}
+ -DBUILD_OSG_EXAMPLES=OFF
+ -DOSG_BUILD_APPLICATION_BUNDLES=OFF
+)
+
+vcpkg_cmake_install()
+vcpkg_fixup_pkgconfig()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/osg-qt/use-lib.patch b/vcpkg/ports/osg-qt/use-lib.patch
new file mode 100644
index 0000000..a194c1d
--- /dev/null
+++ b/vcpkg/ports/osg-qt/use-lib.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 66e989a..3569cec 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -467,7 +467,7 @@ ENDIF()
+
+ IF(UNIX AND NOT WIN32 AND NOT APPLE)
+ IF(CMAKE_SIZEOF_VOID_P MATCHES "8")
+- SET(LIB_POSTFIX "64" CACHE STRING "suffix for 32/64 dir placement")
++ SET(LIB_POSTFIX "" CACHE STRING "suffix for 32/64 dir placement")
+ MARK_AS_ADVANCED(LIB_POSTFIX)
+ ENDIF()
+ ENDIF()
diff --git a/vcpkg/ports/osg-qt/vcpkg.json b/vcpkg/ports/osg-qt/vcpkg.json
new file mode 100644
index 0000000..29d55fa
--- /dev/null
+++ b/vcpkg/ports/osg-qt/vcpkg.json
@@ -0,0 +1,17 @@
+{
+ "name": "osg-qt",
+ "version-string": "Qt5",
+ "port-version": 3,
+ "description": "osgQt - Qt project for making use of OpenSceneGraph(OSG)",
+ "dependencies": [
+ "osg",
+ {
+ "name": "qt5-base",
+ "default-features": false
+ },
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ }
+ ]
+}