aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/libsigcpp
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/libsigcpp
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/libsigcpp')
-rw-r--r--vcpkg/ports/libsigcpp/disable_tests_enable_static_build.patch34
-rw-r--r--vcpkg/ports/libsigcpp/fix-shared-windows-build.patch19
-rw-r--r--vcpkg/ports/libsigcpp/fix_include_path.patch45
-rw-r--r--vcpkg/ports/libsigcpp/fix_version.patch14
-rw-r--r--vcpkg/ports/libsigcpp/portfile.cmake27
-rw-r--r--vcpkg/ports/libsigcpp/vcpkg.json18
6 files changed, 157 insertions, 0 deletions
diff --git a/vcpkg/ports/libsigcpp/disable_tests_enable_static_build.patch b/vcpkg/ports/libsigcpp/disable_tests_enable_static_build.patch
new file mode 100644
index 0000000..c0e3acf
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/disable_tests_enable_static_build.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c4b291c..2475881 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -86,13 +86,13 @@ install (FILES
+ DESTINATION
+ "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
+
+-enable_testing()
++#enable_testing()
+
+
+
+ add_subdirectory (sigc++)
+-add_subdirectory (examples)
+-add_subdirectory (tests)
++#add_subdirectory (examples)
++#add_subdirectory (tests)
+
+
+ set (PROJECT_CMAKE_NAME "${PROJECT_NAME}-3")
+diff --git a/sigc++/CMakeLists.txt b/sigc++/CMakeLists.txt
+index dd2d339..8480a5e 100644
+--- a/sigc++/CMakeLists.txt
++++ b/sigc++/CMakeLists.txt
+@@ -24,7 +24,7 @@ set (SOURCE_FILES
+
+ set (SIGCPP_LIB_NAME sigc-${SIGCXX_API_VERSION})
+
+-add_library(${SIGCPP_LIB_NAME} SHARED ${SOURCE_FILES})
++add_library(${SIGCPP_LIB_NAME} ${SOURCE_FILES})
+
+ set_property (TARGET ${SIGCPP_LIB_NAME} PROPERTY VERSION ${PACKAGE_VERSION})
+ set_property(TARGET ${SIGCPP_LIB_NAME} PROPERTY SOVERSION ${LIBSIGCPP_SOVERSION})
diff --git a/vcpkg/ports/libsigcpp/fix-shared-windows-build.patch b/vcpkg/ports/libsigcpp/fix-shared-windows-build.patch
new file mode 100644
index 0000000..f18fc1c
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/fix-shared-windows-build.patch
@@ -0,0 +1,19 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2475881..3828a13 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -54,6 +54,14 @@ set (PROJECT_SOURCE_DIR "${sigc++_SOURCE_DIR}/sigc++")
+ include_directories (${sigc++_SOURCE_DIR})
+ include_directories (${sigc++_BINARY_DIR})
+
++if (BUILD_SHARED_LIBS)
++ if (MSVC)
++ add_compile_options (-D_WINDLL)
++ endif()
++else()
++ add_compile_options (-DLIBSIGCXX_STATIC)
++endif()
++
+ configure_file (sigc++config.h.cmake sigc++config.h)
+
+ set (prefix ${CMAKE_INSTALL_PREFIX})
diff --git a/vcpkg/ports/libsigcpp/fix_include_path.patch b/vcpkg/ports/libsigcpp/fix_include_path.patch
new file mode 100644
index 0000000..d0bdb85
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/fix_include_path.patch
@@ -0,0 +1,45 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3828a13..bc0a854 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -87,7 +87,7 @@ endif()
+ install (FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/sigc++config.h"
+ DESTINATION
+- "${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME}-${SIGCXX_API_VERSION}/include")
++ "${CMAKE_INSTALL_PREFIX}/include")
+
+ install (FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/sigc++-${SIGCXX_API_VERSION}.pc"
+@@ -105,7 +105,7 @@ add_subdirectory (sigc++)
+
+ set (PROJECT_CMAKE_NAME "${PROJECT_NAME}-3")
+ set (VERSION_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_CMAKE_NAME}ConfigVersion.cmake")
+-set (LIBSIGCXX_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME}-${SIGCXX_API_VERSION}/include")
++set (LIBSIGCXX_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/include")
+ set (PROJECT_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_CMAKE_NAME}Config.cmake")
+ set (CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_CMAKE_NAME}")
+ set (TARGETS_EXPORT_NAME "${PROJECT_CMAKE_NAME}Targets")
+diff --git a/sigc++.pc.in b/sigc++.pc.in
+index e162f2f..7e9b298 100644
+--- a/sigc++.pc.in
++++ b/sigc++.pc.in
+@@ -15,4 +15,4 @@ Description: Typesafe signal and callback system for C++
+ Version: @PACKAGE_VERSION@
+ URL: https://libsigcplusplus.github.io/libsigcplusplus/
+ Libs: -L${libdir} -lsigc-@SIGCXX_API_VERSION@
+-Cflags: -I${includedir}/sigc++-@SIGCXX_API_VERSION@ -I${libdir}/sigc++-@SIGCXX_API_VERSION@/include @MSVC_STATIC_CXXFLAG@
++Cflags: -I${includedir} @MSVC_STATIC_CXXFLAG@
+diff --git a/sigc++/CMakeLists.txt b/sigc++/CMakeLists.txt
+index 8480a5e..b51b023 100644
+--- a/sigc++/CMakeLists.txt
++++ b/sigc++/CMakeLists.txt
+@@ -30,7 +30,7 @@ set_property (TARGET ${SIGCPP_LIB_NAME} PROPERTY VERSION ${PACKAGE_VERSION})
+ set_property(TARGET ${SIGCPP_LIB_NAME} PROPERTY SOVERSION ${LIBSIGCPP_SOVERSION})
+ target_compile_definitions( ${SIGCPP_LIB_NAME} PRIVATE -DSIGC_BUILD )
+
+-set (INCLUDE_INSTALL_DIR "include/${PROJECT_NAME}-${SIGCXX_API_VERSION}")
++set (INCLUDE_INSTALL_DIR "include/")
+
+ install (
+ DIRECTORY "${PROJECT_SOURCE_DIR}"
diff --git a/vcpkg/ports/libsigcpp/fix_version.patch b/vcpkg/ports/libsigcpp/fix_version.patch
new file mode 100644
index 0000000..2fdb776
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/fix_version.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -16,9 +16,9 @@
+
+ cmake_minimum_required (VERSION 3.2)
+
+ set (SIGCXX_MAJOR_VERSION 3)
+-set (SIGCXX_MINOR_VERSION 4)
++set (SIGCXX_MINOR_VERSION 6)
+ set (SIGCXX_MICRO_VERSION 0)
+
+ set (SIGCXX_API_VERSION 3.0)
+ set (PACKAGE_VERSION ${SIGCXX_MAJOR_VERSION}.${SIGCXX_MINOR_VERSION}.${SIGCXX_MICRO_VERSION})
diff --git a/vcpkg/ports/libsigcpp/portfile.cmake b/vcpkg/ports/libsigcpp/portfile.cmake
new file mode 100644
index 0000000..1a04bbc
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/portfile.cmake
@@ -0,0 +1,27 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO libsigcplusplus/libsigcplusplus
+ REF "${VERSION}"
+ SHA512 0d22275995a1629ae73b0cc2b2f2598b18aa0ed6d35bd3f1735a50f54d356fb248dedc8d9b5f2794830866b04e0f58ce641048e2df7215ec2e6eac744de58a27
+ HEAD_REF master
+ PATCHES
+ disable_tests_enable_static_build.patch
+ fix-shared-windows-build.patch
+ fix_include_path.patch
+ fix_version.patch
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+)
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_fixup_pkgconfig()
+vcpkg_cmake_config_fixup(PACKAGE_NAME sigc++-3 CONFIG_PATH lib/cmake/sigc++-3)
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/sigc++config.h" "ifdef BUILD_SHARED" "if 1" IGNORE_UNCHANGED)
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/libsigcpp/vcpkg.json b/vcpkg/ports/libsigcpp/vcpkg.json
new file mode 100644
index 0000000..21dbc81
--- /dev/null
+++ b/vcpkg/ports/libsigcpp/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "libsigcpp",
+ "version": "3.6.0",
+ "port-version": 2,
+ "description": "Typesafe callback framework for C++",
+ "homepage": "https://libsigcplusplus.github.io/libsigcplusplus/",
+ "license": "LGPL-3.0-or-later",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}