summaryrefslogtreecommitdiff
path: root/dev-cpp/cppgir/files
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/cppgir/files')
-rw-r--r--dev-cpp/cppgir/files/cppgir-0_p20230606-fix-install-paths.patch13
-rw-r--r--dev-cpp/cppgir/files/cppgir-0_p20230606-prevent-automagic.patch42
-rw-r--r--dev-cpp/cppgir/files/cppgir-0_p20230606-system-expected-lite.patch37
3 files changed, 92 insertions, 0 deletions
diff --git a/dev-cpp/cppgir/files/cppgir-0_p20230606-fix-install-paths.patch b/dev-cpp/cppgir/files/cppgir-0_p20230606-fix-install-paths.patch
new file mode 100644
index 000000000000..c27d1e9f29b0
--- /dev/null
+++ b/dev-cpp/cppgir/files/cppgir-0_p20230606-fix-install-paths.patch
@@ -0,0 +1,13 @@
+Install cmake targets in correct directory
+
+--- cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e.orig/CMakeLists.txt
++++ cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e/CMakeLists.txt
+@@ -259,7 +259,7 @@
+ DESTINATION ${GI_IGNORE_FILE_INSTALL_DIR})
+
+ # cmake EXPORTS
+-set(CONFIG_PACKAGE_LOCATION lib/cmake/${PROJECT_NAME})
++set(CONFIG_PACKAGE_LOCATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
+ set(CONFIG_VERSION_NAME ${PROJECT_NAME}-config-version.cmake)
+ set(CONFIG_TARGETS_NAME ${PROJECT_NAME}-targets.cmake)
+ set(CONFIG_NAME ${PROJECT_NAME}-config.cmake)
diff --git a/dev-cpp/cppgir/files/cppgir-0_p20230606-prevent-automagic.patch b/dev-cpp/cppgir/files/cppgir-0_p20230606-prevent-automagic.patch
new file mode 100644
index 000000000000..8bb3ab5c4496
--- /dev/null
+++ b/dev-cpp/cppgir/files/cppgir-0_p20230606-prevent-automagic.patch
@@ -0,0 +1,42 @@
+Remove checks for libraries that are completely unnecessary
+
+--- cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e.orig/CMakeLists.txt
++++ cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e/CMakeLists.txt
+@@ -79,15 +79,14 @@
+ find_package(expected-lite REQUIRED)
+ target_link_libraries(gi PUBLIC expected-lite)
+
+-include(FindPkgConfig)
+-pkg_check_modules(GOBJECT gobject-2.0)
+-pkg_check_modules(GIO gio-2.0 gio-unix-2.0)
+-pkg_check_modules(GST gstreamer-1.0)
+-pkg_check_modules(GTK gtk+-3.0)
++if (BUILD_TESTING)
++ include(FindPkgConfig REQUIRED)
++ pkg_check_modules(GOBJECT gobject-2.0 REQUIRED)
++endif()
+
+ ## TEST ##
+
+-if (BUILD_TESTING AND GOBJECT_FOUND)
++if (BUILD_TESTING)
+ add_executable(gi-test test/main.cpp
+ test/test_object.c test/test_object.h test/test_boxed.c test/test_boxed.h)
+ target_include_directories(gi-test PRIVATE "gi" "override")
+@@ -113,7 +112,7 @@
+ set(EXAMPLE_TARGETS "")
+ set(EXAMPLE_NS "")
+
+-if (GOBJECT_FOUND)
++if (FALSE)
+ add_executable(example-gobject EXCLUDE_FROM_ALL examples/gobject.cpp)
+ target_compile_options(example-gobject PRIVATE ${GOBJECT_CFLAGS})
+ target_link_libraries(example-gobject PRIVATE ${GOBJECT_LDFLAGS})
+@@ -179,7 +178,6 @@
+ endif ()
+
+ # optional Qt example
+-find_package(Qt5Core 5.9)
+ if (Qt5Core_FOUND AND GIO_FOUND)
+ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+ add_executable(example-gio-qt-async EXCLUDE_FROM_ALL examples/gio-qt-async.cpp)
diff --git a/dev-cpp/cppgir/files/cppgir-0_p20230606-system-expected-lite.patch b/dev-cpp/cppgir/files/cppgir-0_p20230606-system-expected-lite.patch
new file mode 100644
index 000000000000..096ed39dc03b
--- /dev/null
+++ b/dev-cpp/cppgir/files/cppgir-0_p20230606-system-expected-lite.patch
@@ -0,0 +1,37 @@
+Use system-wide copy of expected-lite
+
+--- cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e.orig/CMakeLists.txt
++++ cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e/CMakeLists.txt
+@@ -76,14 +76,8 @@
+ "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/override>"
+ )
+
+-set(EXPECTED_LITE_INCLUDE "expected-lite/include")
+-if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/${EXPECTED_LITE_INCLUDE}/nonstd/expected.hpp)
+- target_include_directories(gi INTERFACE
+- "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/${EXPECTED_LITE_INCLUDE}>"
+- )
+-else ()
+- message (FATAL_ERROR "missing submodule expected-lite")
+-endif ()
++find_package(expected-lite REQUIRED)
++target_link_libraries(gi INTERFACE nonstd::expected-lite)
+
+ include(FindPkgConfig)
+ pkg_check_modules(GOBJECT gobject-2.0)
+@@ -241,8 +235,6 @@
+ # headers
+ install(DIRECTORY gi override
+ DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/${PROJECT_NAME})
+-install(DIRECTORY ${EXPECTED_LITE_INCLUDE}/nonstd
+- DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/${PROJECT_NAME}/gi)
+
+ # doc
+ install(FILES README.md docs/cppgir.md
+--- cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e.orig/cmake/cppgir-config.cmake
++++ cppgir-960fe054ffaab7cf55722fea6094c56a8ee8f18e/cmake/cppgir-config.cmake
+@@ -1 +1,4 @@
++include(CMakeFindDependencyMacro)
++find_dependency(expected-lite)
++
+ include("${CMAKE_CURRENT_LIST_DIR}/cppgir-targets.cmake")