diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/murmurhash | |
Diffstat (limited to 'vcpkg/ports/murmurhash')
| -rw-r--r-- | vcpkg/ports/murmurhash/CMakeLists.txt | 53 | ||||
| -rw-r--r-- | vcpkg/ports/murmurhash/Config.cmake.in | 4 | ||||
| -rw-r--r-- | vcpkg/ports/murmurhash/portfile.cmake | 23 | ||||
| -rw-r--r-- | vcpkg/ports/murmurhash/vcpkg.json | 18 |
4 files changed, 98 insertions, 0 deletions
diff --git a/vcpkg/ports/murmurhash/CMakeLists.txt b/vcpkg/ports/murmurhash/CMakeLists.txt new file mode 100644 index 0000000..83ffe81 --- /dev/null +++ b/vcpkg/ports/murmurhash/CMakeLists.txt @@ -0,0 +1,53 @@ +cmake_minimum_required(VERSION 3.14) + +set(VERSION "1.0.0") +project(murmurhash LANGUAGES CXX VERSION ${VERSION}) + +set(CMAKE_CXX_STANDARD 17) + +add_library(murmurhash + src/MurmurHash2.cpp + src/MurmurHash3.cpp + ) + +set(MURMUR_HEADERS + src/MurmurHash2.h + src/MurmurHash3.h + ) +set_target_properties(murmurhash PROPERTIES + PUBLIC_HEADER "${MURMUR_HEADERS}" + ) + +#Configuration +set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated") +set(config_install_dir "lib/cmake/${PROJECT_NAME}") +set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake") +set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake") +set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") +set(namespace "${PROJECT_NAME}::") + +include(CMakePackageConfigHelpers) + +write_basic_package_version_file( + "${version_config}" COMPATIBILITY SameMajorVersion +) + +configure_package_config_file( + "${CMAKE_SOURCE_DIR}/Config.cmake.in" + "${project_config}" + INSTALL_DESTINATION "${config_install_dir}" +) +#Installation +install(TARGETS murmurhash + EXPORT "${TARGETS_EXPORT_NAME}" + LIBRARY DESTINATION "lib" + ARCHIVE DESTINATION "lib" + PUBLIC_HEADER DESTINATION "include") + +install(FILES "${project_config}" "${version_config}" + DESTINATION "${config_install_dir}" + ) +install(EXPORT "${TARGETS_EXPORT_NAME}" + NAMESPACE "${namespace}" + DESTINATION "${config_install_dir}" + )
\ No newline at end of file diff --git a/vcpkg/ports/murmurhash/Config.cmake.in b/vcpkg/ports/murmurhash/Config.cmake.in new file mode 100644 index 0000000..38bbde7 --- /dev/null +++ b/vcpkg/ports/murmurhash/Config.cmake.in @@ -0,0 +1,4 @@ +@PACKAGE_INIT@ + +include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake") +check_required_components("@PROJECT_NAME@") diff --git a/vcpkg/ports/murmurhash/portfile.cmake b/vcpkg/ports/murmurhash/portfile.cmake new file mode 100644 index 0000000..bcc3bfb --- /dev/null +++ b/vcpkg/ports/murmurhash/portfile.cmake @@ -0,0 +1,23 @@ +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO aappleby/smhasher + REF 61a0530f28277f2e850bfc39600ce61d02b518de + SHA512 36877b53386153c20421ccd32d544c28ee72f6f13ea37c14ab1a1db378f6463db28339b2149671c12611384497bf595b798e99c34ea0ebceb6f9ef2f8908a2b6 + HEAD_REF master +) + +configure_file("${CURRENT_PORT_DIR}/CMakeLists.txt" "${SOURCE_PATH}/CMakeLists.txt" COPYONLY) +configure_file("${CURRENT_PORT_DIR}/Config.cmake.in" "${SOURCE_PATH}/Config.cmake.in" COPYONLY) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" +) + +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/${PORT}) +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" "MurmurHash3 was written by Austin Appleby, and is placed in the public domain. The author hereby disclaims copyright to this source code.") diff --git a/vcpkg/ports/murmurhash/vcpkg.json b/vcpkg/ports/murmurhash/vcpkg.json new file mode 100644 index 0000000..f79ceee --- /dev/null +++ b/vcpkg/ports/murmurhash/vcpkg.json @@ -0,0 +1,18 @@ +{ + "name": "murmurhash", + "version-date": "2016-01-09", + "port-version": 7, + "description": "MurmurHash a family of hash functions.", + "homepage": "https://github.com/aappleby/smhasher", + "supports": "!uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |