diff options
| author | HrOokami <4591995+faserg1@users.noreply.github.com> | 2020-12-28 23:32:51 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-28 12:32:51 -0800 |
| commit | c34633609277a38a0dbea8994cd95692afa8cff7 (patch) | |
| tree | b239bef8f320c93c07444fcf04a9ea0bfaaab408 | |
| parent | 0a87565968624826e8c941cf77ea7788c36f05c3 (diff) | |
| download | vcpkg-c34633609277a38a0dbea8994cd95692afa8cff7.tar.gz vcpkg-c34633609277a38a0dbea8994cd95692afa8cff7.zip | |
[GLIBMM] Installing .pc file (#14988)
| -rw-r--r-- | ports/atkmm/CONTROL | 4 | ||||
| -rw-r--r-- | ports/atkmm/portfile.cmake | 76 | ||||
| -rw-r--r-- | ports/glib/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | ports/glib/CONTROL | 2 | ||||
| -rw-r--r-- | ports/glibmm/CMakeLists.txt | 30 | ||||
| -rw-r--r-- | ports/glibmm/CONTROL | 2 | ||||
| -rw-r--r-- | ports/glibmm/portfile.cmake | 2 | ||||
| -rw-r--r-- | ports/libsigcpp/CMakeLists.txt | 9 | ||||
| -rw-r--r-- | ports/libsigcpp/CONTROL | 1 | ||||
| -rw-r--r-- | ports/libsigcpp/portfile.cmake | 1 | ||||
| -rw-r--r-- | ports/libxmlpp/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | ports/libxmlpp/CONTROL | 2 |
12 files changed, 92 insertions, 41 deletions
diff --git a/ports/atkmm/CONTROL b/ports/atkmm/CONTROL index 8192383d8..be3787e17 100644 --- a/ports/atkmm/CONTROL +++ b/ports/atkmm/CONTROL @@ -1,7 +1,7 @@ Source: atkmm
Version: 2.24.2
-Port-Version: 3
+Port-Version: 4
Homepage: https://www.gtkmm.org
Description: atkmm is the official C++ interface for the ATK accessibility toolkit library. It may be used, for instance, by user interfaces implemented with gtkmm.
Build-Depends: glib, gettext, atk, glibmm
-Supports: !(linux | osx)
+Supports: !(osx)
diff --git a/ports/atkmm/portfile.cmake b/ports/atkmm/portfile.cmake index 9795881ec..91e82a2df 100644 --- a/ports/atkmm/portfile.cmake +++ b/ports/atkmm/portfile.cmake @@ -1,6 +1,6 @@ -vcpkg_fail_port_install(ON_TARGET "OSX" "Linux") - -vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) +if (VCPKG_TARGET_IS_WINDOWS) + vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) +endif() vcpkg_download_distfile(ARCHIVE URLS "http://ftp.gnome.org/pub/GNOME/sources/atkmm/2.24/atkmm-2.24.2.tar.xz" @@ -16,36 +16,44 @@ vcpkg_extract_source_archive_ex( fix_charset.patch ) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/msvc_recommended_pragmas.h DESTINATION ${SOURCE_PATH}/MSVC_Net2013) - -set(VS_PLATFORM ${VCPKG_TARGET_ARCHITECTURE}) -if(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) - set(VS_PLATFORM "Win32") -endif(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) -vcpkg_build_msbuild( - PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/atkmm.sln - TARGET atkmm - PLATFORM ${VS_PLATFORM} - USE_VCPKG_INTEGRATION -) - -# Handle headers -file(COPY ${SOURCE_PATH}/MSVC_Net2013/atkmm/atkmmconfig.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(COPY ${SOURCE_PATH}/atk/atkmm.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(COPY ${SOURCE_PATH}/atk/atkmm - DESTINATION ${CURRENT_PACKAGES_DIR}/include - FILES_MATCHING PATTERN *.h) - -# Handle libraries -file(COPY ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/atkmm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/bin) -file(COPY ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/atkmm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(COPY ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/atkmm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) -file(COPY ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/atkmm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) - -vcpkg_copy_pdbs() +if (VCPKG_TARGET_IS_WINDOWS) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/msvc_recommended_pragmas.h DESTINATION ${SOURCE_PATH}/MSVC_Net2013) + + set(VS_PLATFORM ${VCPKG_TARGET_ARCHITECTURE}) + if(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) + set(VS_PLATFORM "Win32") + endif(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) + vcpkg_build_msbuild( + PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/atkmm.sln + TARGET atkmm + PLATFORM ${VS_PLATFORM} + USE_VCPKG_INTEGRATION + ) + + # Handle headers + file(COPY ${SOURCE_PATH}/MSVC_Net2013/atkmm/atkmmconfig.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) + file(COPY ${SOURCE_PATH}/atk/atkmm.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) + file(COPY ${SOURCE_PATH}/atk/atkmm + DESTINATION ${CURRENT_PACKAGES_DIR}/include + FILES_MATCHING PATTERN *.h) + + # Handle libraries + file(COPY ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/atkmm.dll + DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(COPY ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/atkmm.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(COPY ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/atkmm.dll + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + file(COPY ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/atkmm.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + + vcpkg_copy_pdbs() +else() + set(ENV{CONFIG_SHELL} bash) + vcpkg_configure_make(SOURCE_PATH ${SOURCE_PATH} OPTIONS ${ATKMM_OPTIONS}) + + vcpkg_install_make() +endif() file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") diff --git a/ports/glib/CMakeLists.txt b/ports/glib/CMakeLists.txt index cc24a2f63..144f11776 100644 --- a/ports/glib/CMakeLists.txt +++ b/ports/glib/CMakeLists.txt @@ -361,6 +361,8 @@ set(prefix ${CMAKE_INSTALL_PREFIX}) set(exec_prefix ${CMAKE_INSTALL_PREFIX}) set(libdir ${CMAKE_INSTALL_PREFIX}/lib) set(includedir ${CMAKE_INSTALL_PREFIX}/include) +set(PCRE_REQUIRES libpcre) +set(LIBFFI_LIBS "-lffi") configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glib-2.0.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/glib-2.0.pc" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/gobject-2.0.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/gobject-2.0.pc" @ONLY) diff --git a/ports/glib/CONTROL b/ports/glib/CONTROL index 8d74d5613..a842f65e8 100644 --- a/ports/glib/CONTROL +++ b/ports/glib/CONTROL @@ -1,6 +1,6 @@ Source: glib Version: 2.52.3 -Port-Version: 23 +Port-Version: 24 Homepage: https://developer.gnome.org/glib/ Description: Portable, general-purpose utility library. Build-Depends: zlib, pcre, libffi, gettext, libiconv diff --git a/ports/glibmm/CMakeLists.txt b/ports/glibmm/CMakeLists.txt index 15f7bff12..3e34075d9 100644 --- a/ports/glibmm/CMakeLists.txt +++ b/ports/glibmm/CMakeLists.txt @@ -3,6 +3,10 @@ project(glibmm) set(CMAKE_CXX_STANDARD 17)
+set(GLIBMM_DLL_SUFFIX 2)
+set(GLIBMM_LIB_SUFFIX 2.0)
+set(GLIBMM_EXTRA_LIB_SUFFIX 2.4)
+
find_path(GLIB_INCLUDE_DIR NAMES glib.h)
find_library(GLIB_LIBRARY NAMES glib-2.0)
find_library(GIO_LIBRARY NAMES gio-2.0)
@@ -82,6 +86,25 @@ file(GLOB GLIBMM_SOURCES glib/glibmm/*.cc) add_library(glibmm ${GLIBMM_SOURCES})
target_compile_definitions(glibmm PRIVATE -DGLIBMM_BUILD)
target_include_directories(glibmm PUBLIC glib ${CMAKE_BINARY_DIR}/config/glib)
+set_target_properties(glibmm PROPERTIES OUTPUT_NAME glibmm-${GLIBMM_DLL_SUFFIX} ARCHIVE_OUTPUT_NAME glibmm-${GLIBMM_LIB_SUFFIX})
+
+set(GLIBMM_EXTRA_SOURCES tools/extra_defs_gen/generate_extra_defs.cc)
+add_library(glibmm_generate_extra_defs ${GLIBMM_EXTRA_SOURCES})
+target_include_directories(glibmm_generate_extra_defs PUBLIC glib ${CMAKE_BINARY_DIR}/config/glib)
+set_target_properties(glibmm_generate_extra_defs PROPERTIES
+ OUTPUT_NAME glibmm_generate_extra_defs-${GLIBMM_EXTRA_LIB_SUFFIX}
+ ARCHIVE_OUTPUT_NAME glibmm_generate_extra_defs-${GLIBMM_EXTRA_LIB_SUFFIX})
+
+set(prefix ${CMAKE_INSTALL_PREFIX})
+set(exec_prefix ${CMAKE_INSTALL_PREFIX})
+set(libdir ${CMAKE_INSTALL_PREFIX}/lib)
+set(includedir ${CMAKE_INSTALL_PREFIX}/include)
+set(GLIBMM_API_VERSION 2.0)
+set(GLIBMM_MODULE_NAME glibmm)
+set(PACKAGE_VERSION 2.52.1)
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glib/glibmm.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/glibmm.pc" @ONLY)
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glibmm.pc" DESTINATION lib/pkgconfig)
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glibmm.pc" DESTINATION lib/pkgconfig RENAME glibmm-2.4.pc)
file(GLOB GIOMM_SOURCES gio/giomm/*.cc)
if(WIN32)
@@ -93,7 +116,7 @@ target_link_libraries(giomm PUBLIC glibmm) target_include_directories(giomm PUBLIC gio ${CMAKE_BINARY_DIR}/config/gio)
install(
- TARGETS glibmm giomm
+ TARGETS glibmm giomm glibmm_generate_extra_defs
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
@@ -113,6 +136,11 @@ if(NOT DISABLE_INSTALL_HEADERS) DESTINATION include
FILES_MATCHING PATTERN *.h
)
+ install(
+ DIRECTORY tools/extra_defs_gen/
+ DESTINATION include/glibmm_generate_extra_defs/
+ FILES_MATCHING PATTERN *.h
+ )
endif()
if(NOT DISABLE_EXAMPLES)
diff --git a/ports/glibmm/CONTROL b/ports/glibmm/CONTROL index 59836db6f..3b2338943 100644 --- a/ports/glibmm/CONTROL +++ b/ports/glibmm/CONTROL @@ -1,6 +1,6 @@ Source: glibmm Version: 2.52.1 -Port-Version: 12 +Port-Version: 13 Description: This is glibmm, a C++ API for parts of glib that are useful for C++. Homepage: https://www.gtkmm.org. Build-Depends: zlib, pcre, libffi, gettext, libiconv, glib, libsigcpp diff --git a/ports/glibmm/portfile.cmake b/ports/glibmm/portfile.cmake index 87551d23a..f2ec0a935 100644 --- a/ports/glibmm/portfile.cmake +++ b/ports/glibmm/portfile.cmake @@ -31,6 +31,8 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_pkgconfig() + # Handle copyright and readme file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME readme.txt)
\ No newline at end of file diff --git a/ports/libsigcpp/CMakeLists.txt b/ports/libsigcpp/CMakeLists.txt index 9c43b1a1b..e5a1dbee0 100644 --- a/ports/libsigcpp/CMakeLists.txt +++ b/ports/libsigcpp/CMakeLists.txt @@ -57,3 +57,12 @@ if(NOT SIGCPP_SKIP_HEADERS) install(FILES sigc++/functors/slot.h DESTINATION include/sigc++/functors) install(FILES sigc++/functors/slot_base.h DESTINATION include/sigc++/functors) endif() + +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(exec_prefix ${CMAKE_INSTALL_PREFIX}) +set(libdir ${CMAKE_INSTALL_PREFIX}/lib) +set(includedir ${CMAKE_INSTALL_PREFIX}/include) +set(SIGCXX_API_VERSION "2.0") +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sigc++.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/sigc++.pc" @ONLY) +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sigc++.pc" DESTINATION lib/pkgconfig) +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sigc++.pc" DESTINATION lib/pkgconfig RENAME sigc++-2.0.pc) diff --git a/ports/libsigcpp/CONTROL b/ports/libsigcpp/CONTROL index 617328c7b..8febf8011 100644 --- a/ports/libsigcpp/CONTROL +++ b/ports/libsigcpp/CONTROL @@ -1,3 +1,4 @@ Source: libsigcpp
Version: 2.10-3
+Port-Version: 1
Description: Typesafe callback framework for C++
diff --git a/ports/libsigcpp/portfile.cmake b/ports/libsigcpp/portfile.cmake index e7214e0ba..74f26c32e 100644 --- a/ports/libsigcpp/portfile.cmake +++ b/ports/libsigcpp/portfile.cmake @@ -19,6 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake()
vcpkg_copy_pdbs()
+vcpkg_fixup_pkgconfig()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(READ ${CURRENT_PACKAGES_DIR}/include/sigc++config.h SIGCPPCONFIG_H)
diff --git a/ports/libxmlpp/CMakeLists.txt b/ports/libxmlpp/CMakeLists.txt index 0ff2f23fe..2a36ed7ba 100644 --- a/ports/libxmlpp/CMakeLists.txt +++ b/ports/libxmlpp/CMakeLists.txt @@ -4,7 +4,7 @@ project(libxmlpp) set(CMAKE_CXX_STANDARD 17)
find_path(GLIBMM_INCLUDE_DIR NAMES glibmm.h)
-find_library(GLIBMM_LIBRARY NAMES glibmm)
+find_library(GLIBMM_LIBRARY NAMES glibmm glibmm-2.0)
find_library(GIOMM_LIBRARY NAMES giomm)
find_library(GLIB_LIBRARY NAMES glib glib-2.0)
find_library(GIO_LIBRARY NAMES gio gio-2.0)
diff --git a/ports/libxmlpp/CONTROL b/ports/libxmlpp/CONTROL index b737bde3c..0c76b120c 100644 --- a/ports/libxmlpp/CONTROL +++ b/ports/libxmlpp/CONTROL @@ -1,5 +1,5 @@ Source: libxmlpp
Version: 2.40.1
-Port-Version: 6
+Port-Version: 7
Description: a C++ wrapper for the libxml XML parser library.
Build-Depends: libxml2, glibmm
|
