diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2021-09-23 11:00:41 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-23 11:00:41 -0700 |
| commit | 674e616a21a490c47f895d077e721591ca6cf7fe (patch) | |
| tree | 47f95c71d2c887dee0e32b4826c9e5981d4e8b2c | |
| parent | 23cfcb4cd02d01bd0ba9a1630bb9bb3a02c95879 (diff) | |
| download | vcpkg-674e616a21a490c47f895d077e721591ca6cf7fe.tar.gz vcpkg-674e616a21a490c47f895d077e721591ca6cf7fe.zip | |
[lcms] Backfill compat for lcms::lcms (#20034)
* [lcms] Backfill compat for lcms::lcms
* Remove :@TARGET_TRIPLET@
* Add comment for duplicate vcpkg_cmake_config_fixup.
* [lcms] Update version db
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
| -rw-r--r-- | ports/lcms/CMakeLists.txt | 61 | ||||
| -rw-r--r-- | ports/lcms/portfile.cmake | 16 | ||||
| -rw-r--r-- | ports/lcms/usage | 4 | ||||
| -rw-r--r-- | ports/lcms/vcpkg.json | 16 | ||||
| -rw-r--r-- | versions/baseline.json | 2 | ||||
| -rw-r--r-- | versions/l-/lcms.json | 5 |
6 files changed, 47 insertions, 57 deletions
diff --git a/ports/lcms/CMakeLists.txt b/ports/lcms/CMakeLists.txt index d45ed2e8c..4852f8c4e 100644 --- a/ports/lcms/CMakeLists.txt +++ b/ports/lcms/CMakeLists.txt @@ -1,42 +1,10 @@ cmake_minimum_required(VERSION 3.5) -option(CMAKE_VERBOSE_MAKEFILE "Create verbose makefile" OFF) -option(BUILD_SHARED_LIBS "Create lcms2 as a shared library" ON) - project(little-cms) -set(CMAKE_DEBUG_POSTFIX d) +file(GLOB SRCS src/*.c) -add_library(lcms2 - "${CMAKE_CURRENT_LIST_DIR}/src/cmstypes.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsvirt.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmswtpnt.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsxform.c" - "${CMAKE_CURRENT_LIST_DIR}/src/lcms2.def" - "${CMAKE_CURRENT_LIST_DIR}/src/lcms2_internal.h" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsalpha.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmscam02.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmscgats.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmscnvrt.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmserr.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsgamma.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsgmt.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmshalf.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsintrp.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsio0.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsio1.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmslut.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsmd5.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsmtrx.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsnamed.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsopt.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmspack.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmspcs.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsplugin.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmsps2.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmssamp.c" - "${CMAKE_CURRENT_LIST_DIR}/src/cmssm.c" -) +add_library(lcms2 ${SRCS} src/lcms2.def) if(BUILD_SHARED_LIBS) target_compile_options(lcms2 PRIVATE -DCMS_DLL_BUILD) @@ -44,7 +12,7 @@ if(BUILD_SHARED_LIBS) endif() target_compile_options(lcms2 PRIVATE -DUNICODE -D_UNICODE) -target_include_directories(lcms2 PRIVATE "${CMAKE_CURRENT_LIST_DIR}/include") +target_include_directories(lcms2 PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>) set_target_properties(lcms2 PROPERTIES PUBLIC_HEADER "${CMAKE_CURRENT_LIST_DIR}/include/lcms2.h;${CMAKE_CURRENT_LIST_DIR}/include/lcms2_plugin.h") # Generate pkg-config file @@ -58,30 +26,29 @@ SET(exec_prefix "\${prefix}") SET(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}") SET(includedir "\${prefix}/include") CONFIGURE_FILE(lcms2.pc.in "${PROJECT_BINARY_DIR}/lcms2.pc" @ONLY) -IF(CMAKE_BUILD_TYPE MATCHES Debug) - # Add CMAKE_DEBUG_POSTFIX - file(READ "${PROJECT_BINARY_DIR}/lcms2.pc" LCMS2_PC) - string(REPLACE "-llcms2" "-llcms2${CMAKE_DEBUG_POSTFIX}" LCMS2_PC "${LCMS2_PC}") - file(WRITE "${PROJECT_BINARY_DIR}/lcms2.pc" "${LCMS2_PC}") -ENDIF() install(TARGETS lcms2 - EXPORT lcmsConfig + EXPORT lcms2Config RUNTIME DESTINATION "bin" LIBRARY DESTINATION "lib" ARCHIVE DESTINATION "lib" PUBLIC_HEADER DESTINATION "include" - COMPONENT dev ) INSTALL(FILES ${PROJECT_BINARY_DIR}/lcms2.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) -export(TARGETS lcms2 +install(EXPORT lcms2Config + DESTINATION "share/lcms2" NAMESPACE lcms2:: - FILE "share/lcms/lcmsConfig.cmake" ) -install(EXPORT lcmsConfig +# Backwards compatibility for previous vcpkg users +add_library(lcms INTERFACE) +target_link_libraries(lcms INTERFACE lcms2) + + +install(TARGETS lcms EXPORT lcms-targets) +install(EXPORT lcms-targets DESTINATION "share/lcms" - NAMESPACE lcms2:: + NAMESPACE lcms:: ) diff --git a/ports/lcms/portfile.cmake b/ports/lcms/portfile.cmake index 2a2d2deae..78b8409ce 100644 --- a/ports/lcms/portfile.cmake +++ b/ports/lcms/portfile.cmake @@ -15,15 +15,19 @@ vcpkg_from_github( file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA -) +vcpkg_cmake_configure(SOURCE_PATH "${SOURCE_PATH}") +vcpkg_cmake_install() -vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() +vcpkg_cmake_config_fixup(PACKAGE_NAME lcms2) +vcpkg_cmake_config_fixup() # provides old PACKAGE_NAME lcms vcpkg_fixup_pkgconfig() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(WRITE "${CURRENT_PACKAGES_DIR}/share/lcms/lcms-config.cmake" [[ +include(CMakeFindDependencyMacro) +find_dependency(lcms2 CONFIG) +include(${CMAKE_CURRENT_LIST_DIR}/lcms-targets.cmake) +]]) file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") diff --git a/ports/lcms/usage b/ports/lcms/usage new file mode 100644 index 000000000..1b37c7f74 --- /dev/null +++ b/ports/lcms/usage @@ -0,0 +1,4 @@ +The package lcms provides CMake targets: + + find_package(lcms2 CONFIG REQUIRED) + target_link_libraries(main PRIVATE lcms2::lcms2) diff --git a/ports/lcms/vcpkg.json b/ports/lcms/vcpkg.json index 0618ac847..6dca15372 100644 --- a/ports/lcms/vcpkg.json +++ b/ports/lcms/vcpkg.json @@ -1,7 +1,17 @@ { "name": "lcms", - "version-string": "2.12", - "port-version": 1, + "version": "2.12", + "port-version": 2, "description": "Little CMS.", - "homepage": "https://github.com/mm2/Little-CMS" + "homepage": "https://github.com/mm2/Little-CMS", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/versions/baseline.json b/versions/baseline.json index 542a1f28a..25432541e 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -3146,7 +3146,7 @@ }, "lcms": { "baseline": "2.12", - "port-version": 1 + "port-version": 2 }, "leaf": { "baseline": "0.2.2", diff --git a/versions/l-/lcms.json b/versions/l-/lcms.json index 0a537230d..02e5a2eda 100644 --- a/versions/l-/lcms.json +++ b/versions/l-/lcms.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "27ea0f07f8132e37a1e265ee54216eb0abc185dd", + "version": "2.12", + "port-version": 2 + }, + { "git-tree": "40c7773d4774034a567f4b9f5427e558afe66ebd", "version-string": "2.12", "port-version": 1 |
