mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-27 10:21:07 +08:00
[GLIBMM] Installing .pc file (#14988)
This commit is contained in:
parent
0a87565968
commit
c346336092
@ -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)
|
||||
|
@ -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")
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
@ -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)
|
@ -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)
|
||||
|
@ -1,3 +1,4 @@
|
||||
Source: libsigcpp
|
||||
Version: 2.10-3
|
||||
Port-Version: 1
|
||||
Description: Typesafe callback framework for C++
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user