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/libuuid | |
Diffstat (limited to 'vcpkg/ports/libuuid')
| -rw-r--r-- | vcpkg/ports/libuuid/CMakeLists.txt | 64 | ||||
| -rw-r--r-- | vcpkg/ports/libuuid/config.linux.h | 13 | ||||
| -rw-r--r-- | vcpkg/ports/libuuid/portfile.cmake | 40 | ||||
| -rw-r--r-- | vcpkg/ports/libuuid/unofficial-libuuid-config.cmake.in | 3 | ||||
| -rw-r--r-- | vcpkg/ports/libuuid/vcpkg.json | 19 |
5 files changed, 139 insertions, 0 deletions
diff --git a/vcpkg/ports/libuuid/CMakeLists.txt b/vcpkg/ports/libuuid/CMakeLists.txt new file mode 100644 index 0000000..b20504e --- /dev/null +++ b/vcpkg/ports/libuuid/CMakeLists.txt @@ -0,0 +1,64 @@ +cmake_minimum_required(VERSION 3.21)
+project(libuuid C)
+
+configure_file(config.linux.h config.h COPYONLY)
+
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+add_library(uuid STATIC
+ clear.c
+ compare.c
+ copy.c
+ gen_uuid.c
+ isnull.c
+ pack.c
+ parse.c
+ randutils.c
+ unpack.c
+ unparse.c
+ uuid_time.c
+)
+target_compile_options(uuid PRIVATE -include "${CMAKE_CURRENT_BINARY_DIR}/config.h")
+target_include_directories(uuid PUBLIC "$<INSTALL_INTERFACE:include>")
+
+add_executable(test_uuid test_uuid.c)
+target_link_libraries(test_uuid uuid)
+
+if(CMAKE_BUILD_TYPE STREQUAL "Release")
+ install(FILES uuid.h DESTINATION include/uuid)
+endif()
+
+install(
+ TARGETS uuid
+ EXPORT uuid_targets
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+include(CMakePackageConfigHelpers)
+set(PACKAGE_CONFIG_FILE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-libuuid-config.cmake")
+set(INSTALL_CONFIG_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/unofficial-libuuid")
+
+configure_package_config_file(unofficial-libuuid-config.cmake.in
+ "${PACKAGE_CONFIG_FILE}"
+ INSTALL_DESTINATION "${INSTALL_CONFIG_DIR}"
+)
+
+export(EXPORT uuid_targets
+ NAMESPACE unofficial::UUID::
+ FILE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-libuuid-targets.cmake"
+)
+
+install(EXPORT uuid_targets
+ NAMESPACE unofficial::UUID::
+ FILE unofficial-libuuid-targets.cmake
+ DESTINATION "${INSTALL_CONFIG_DIR}"
+)
+
+install(
+ FILES
+ "${PACKAGE_CONFIG_FILE}"
+ DESTINATION
+ "${INSTALL_CONFIG_DIR}"
+)
diff --git a/vcpkg/ports/libuuid/config.linux.h b/vcpkg/ports/libuuid/config.linux.h new file mode 100644 index 0000000..38b53ca --- /dev/null +++ b/vcpkg/ports/libuuid/config.linux.h @@ -0,0 +1,13 @@ +#define HAVE_DECL__SC_HOST_NAME_MAX 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_SRANDOM 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_SYS_FILE_H 1 +#define HAVE_SYS_IOCTL_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_USLEEP 1 +#define PACKAGE_STRING "libuuid 1.0.3" diff --git a/vcpkg/ports/libuuid/portfile.cmake b/vcpkg/ports/libuuid/portfile.cmake new file mode 100644 index 0000000..74bf515 --- /dev/null +++ b/vcpkg/ports/libuuid/portfile.cmake @@ -0,0 +1,40 @@ +set(LIBUUID_VERSION 1.0.3) + +vcpkg_from_sourceforge( + OUT_SOURCE_PATH SOURCE_PATH + REPO libuuid + FILENAME "libuuid-${LIBUUID_VERSION}.tar.gz" + SHA512 77488caccc66503f6f2ded7bdfc4d3bc2c20b24a8dc95b2051633c695e99ec27876ffbafe38269b939826e1fdb06eea328f07b796c9e0aaca12331a787175507 +) + +file(COPY + "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" + "${CMAKE_CURRENT_LIST_DIR}/config.linux.h" + "${CMAKE_CURRENT_LIST_DIR}/unofficial-libuuid-config.cmake.in" + DESTINATION "${SOURCE_PATH}" +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" +) + +vcpkg_cmake_install() + +set(prefix "${CURRENT_INSTALLED_DIR}") +set(exec_prefix \$\{prefix\}) +set(libdir \$\{exec_prefix\}/lib) +set(includedir \$\{prefix\}/include) +configure_file("${SOURCE_PATH}/uuid.pc.in" "${SOURCE_PATH}/uuid.pc" @ONLY) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(INSTALL "${SOURCE_PATH}/uuid.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/lib/pkgconfig") +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(INSTALL "${SOURCE_PATH}/uuid.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig") +endif() + +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/unofficial-libuuid PACKAGE_NAME unofficial-libuuid) +vcpkg_fixup_pkgconfig() + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING") + +vcpkg_copy_pdbs() diff --git a/vcpkg/ports/libuuid/unofficial-libuuid-config.cmake.in b/vcpkg/ports/libuuid/unofficial-libuuid-config.cmake.in new file mode 100644 index 0000000..ed4900c --- /dev/null +++ b/vcpkg/ports/libuuid/unofficial-libuuid-config.cmake.in @@ -0,0 +1,3 @@ +@PACKAGE_INIT@
+
+include("${CMAKE_CURRENT_LIST_DIR}/unofficial-libuuid-targets.cmake")
diff --git a/vcpkg/ports/libuuid/vcpkg.json b/vcpkg/ports/libuuid/vcpkg.json new file mode 100644 index 0000000..4ae350e --- /dev/null +++ b/vcpkg/ports/libuuid/vcpkg.json @@ -0,0 +1,19 @@ +{ + "name": "libuuid", + "version": "1.0.3", + "port-version": 15, + "description": "Universally unique id library", + "homepage": "https://sourceforge.net/projects/libuuid", + "license": "BSD-3-Clause", + "supports": "!osx & !windows", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |