aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominic Clark <mrdomclark@gmail.com>2020-09-05 06:16:08 +0100
committerGitHub <noreply@github.com>2020-09-04 22:16:08 -0700
commit1a9ecfc894e84d2e2104ad13b170b15e3289d8cb (patch)
treedc50dacceda917f4c147c179e740ff030206c07a
parent3a7899deb743d0d2198349d032f4f10b8702bce6 (diff)
downloadvcpkg-1a9ecfc894e84d2e2104ad13b170b15e3289d8cb.tar.gz
vcpkg-1a9ecfc894e84d2e2104ad13b170b15e3289d8cb.zip
[serd] Add new port (#13260)
-rw-r--r--ports/serd/CMakeLists.txt46
-rw-r--r--ports/serd/portfile.cmake26
-rw-r--r--ports/serd/vcpkg.json7
3 files changed, 79 insertions, 0 deletions
diff --git a/ports/serd/CMakeLists.txt b/ports/serd/CMakeLists.txt
new file mode 100644
index 000000000..2f0711987
--- /dev/null
+++ b/ports/serd/CMakeLists.txt
@@ -0,0 +1,46 @@
+cmake_minimum_required(VERSION 3.17)
+project(serd C)
+
+add_library(serd
+ src/byte_source.c
+ src/env.c
+ src/n3.c
+ src/node.c
+ src/reader.c
+ src/string.c
+ src/uri.c
+ src/writer.c
+)
+
+file(WRITE "${CMAKE_BINARY_DIR}/serd_config.h" "")
+
+target_include_directories(serd
+ PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_BINARY_DIR}"
+)
+
+set_target_properties(serd PROPERTIES
+ C_STANDARD 99
+ C_STANDARD_REQUIRED ON
+)
+
+target_compile_definitions(serd PRIVATE SERD_INTERNAL _CRT_SECURE_NO_WARNINGS)
+
+if(BUILD_SHARED_LIBS)
+ target_compile_definitions(serd PUBLIC SERD_SHARED)
+endif()
+
+install(
+ TARGETS serd
+ EXPORT serd-config
+ INCLUDES DESTINATION include
+)
+
+if(NOT DISABLE_INSTALL_HEADERS)
+ install(DIRECTORY serd DESTINATION include)
+endif()
+
+install(
+ EXPORT serd-config
+ NAMESPACE serd::
+ DESTINATION "${CMAKE_INSTALL_PREFIX}/share/serd"
+)
diff --git a/ports/serd/portfile.cmake b/ports/serd/portfile.cmake
new file mode 100644
index 000000000..6e6173cc0
--- /dev/null
+++ b/ports/serd/portfile.cmake
@@ -0,0 +1,26 @@
+vcpkg_from_gitlab(
+ GITLAB_URL https://gitlab.com
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO drobilla/serd
+ REF v0.30.4
+ SHA512 59b4f67dfa8a2c01119b1c69609030d851339ba6d85c5c559b7c2454492ef40498ce710e5cf5f7a698a292db81e6bffacb86f9dafa5d7f3fe0c60d53d6e2281f
+ HEAD_REF master
+)
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_configure_cmake(
+ SOURCE_PATH "${SOURCE_PATH}"
+ PREFER_NINJA
+ OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=1
+)
+
+vcpkg_install_cmake()
+
+vcpkg_copy_pdbs()
+vcpkg_fixup_cmake_targets()
+file(
+ INSTALL "${SOURCE_PATH}/COPYING"
+ DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}"
+ RENAME copyright
+)
diff --git a/ports/serd/vcpkg.json b/ports/serd/vcpkg.json
new file mode 100644
index 000000000..db40b57c2
--- /dev/null
+++ b/ports/serd/vcpkg.json
@@ -0,0 +1,7 @@
+{
+ "name": "serd",
+ "version-string": "0.30.4",
+ "description": "Serd is a lightweight C library for RDF syntax which supports reading and writing Turtle, TRiG, NTriples, and NQuads.",
+ "homepage": "https://drobilla.net/software/serd",
+ "license": "ISC"
+}