aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/libqrencode
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/libqrencode')
-rw-r--r--vcpkg/ports/libqrencode/portfile.cmake59
-rw-r--r--vcpkg/ports/libqrencode/usage10
-rw-r--r--vcpkg/ports/libqrencode/vcpkg.json25
3 files changed, 94 insertions, 0 deletions
diff --git a/vcpkg/ports/libqrencode/portfile.cmake b/vcpkg/ports/libqrencode/portfile.cmake
new file mode 100644
index 0000000..fd5b5ae
--- /dev/null
+++ b/vcpkg/ports/libqrencode/portfile.cmake
@@ -0,0 +1,59 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO fukuchi/libqrencode
+ REF 715e29fd4cd71b6e452ae0f4e36d917b43122ce8 # v4.1.1
+ SHA512 78a5464c6fd37d2b4ed6d81c5faf8d95f6f1c95bfdb55dfe89fc227cd487c1685e8080694b1c93128364337959562ea133b3bb332ae1c5a4094614b493611e9f
+ HEAD_REF master
+)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ tool WITH_TOOLS
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DWITH_TEST=NO
+ -DSKIP_INSTALL_PROGRAMS=ON
+ -DSKIP_INSTALL_EXECUTABLES=ON
+ -DSKIP_INSTALL_FILES=ON
+ OPTIONS_DEBUG
+ -DSKIP_INSTALL_HEADERS=ON
+ -DWITH_TOOLS=NO
+)
+
+vcpkg_cmake_install()
+
+if(VCPKG_TARGET_IS_WINDOWS) # Windows
+ set(EXECUTABLE_SUFFIX ".exe")
+else()
+ set(EXECUTABLE_SUFFIX "")
+endif()
+
+if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/qrencode.dll")
+ file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin")
+ file(RENAME "${CURRENT_PACKAGES_DIR}/lib/qrencode.dll" "${CURRENT_PACKAGES_DIR}/bin/qrencode.dll")
+endif()
+if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/lib/qrencoded.dll")
+ file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/bin")
+ file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/qrencoded.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/qrencoded.dll")
+endif()
+if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/qrencode${EXECUTABLE_SUFFIX}")
+ file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/qrencode")
+ file(RENAME "${CURRENT_PACKAGES_DIR}/bin/qrencode${EXECUTABLE_SUFFIX}" "${CURRENT_PACKAGES_DIR}/tools/qrencode/qrencode${EXECUTABLE_SUFFIX}")
+ vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/qrencode")
+ if (NOT VCPKG_TARGET_IS_WINDOWS OR VCPKG_LIBRARY_LINKAGE STREQUAL static)
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
+ endif()
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_copy_pdbs()
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
+
+vcpkg_fixup_pkgconfig()
diff --git a/vcpkg/ports/libqrencode/usage b/vcpkg/ports/libqrencode/usage
new file mode 100644
index 0000000..f6003f4
--- /dev/null
+++ b/vcpkg/ports/libqrencode/usage
@@ -0,0 +1,10 @@
+To use libqrencode library in CMakeLists.txt:
+
+ find_path(QRENCODE_INCLUDE_DIR NAMES qrencode.h)
+ find_library(QRENCODE_LIBRARY_RELEASE qrencode)
+ find_library(QRENCODE_LIBRARY_DEBUG qrencoded)
+ set(QRENCODE_LIBRARIES optimized ${QRENCODE_LIBRARY_RELEASE} debug ${QRENCODE_LIBRARY_DEBUG})
+
+ add_executable(main main.cpp)
+ target_include_directories(main PRIVATE ${QRENCODE_INCLUDE_DIR})
+ target_link_libraries(main PRIVATE ${QRENCODE_LIBRARIES})
diff --git a/vcpkg/ports/libqrencode/vcpkg.json b/vcpkg/ports/libqrencode/vcpkg.json
new file mode 100644
index 0000000..11a243f
--- /dev/null
+++ b/vcpkg/ports/libqrencode/vcpkg.json
@@ -0,0 +1,25 @@
+{
+ "name": "libqrencode",
+ "version-semver": "4.1.1",
+ "port-version": 3,
+ "description": "libqrencode - a fast and compact QR Code encoding library",
+ "homepage": "https://github.com/fukuchi/libqrencode",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ }
+ ],
+ "features": {
+ "tool": {
+ "description": "Build qrencode tool",
+ "dependencies": [
+ {
+ "name": "getopt",
+ "platform": "windows"
+ },
+ "libpng"
+ ]
+ }
+ }
+}