aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Kirchoff <[email protected]>2021-05-19 13:53:00 -0700
committerJoe Kirchoff <[email protected]>2021-05-19 13:53:00 -0700
commit6ec3ca923809c9d7099b0b279fb0044b4e7e9a01 (patch)
tree67787f435d9224c0b35b8fe64b9f7efdad2541ff
parentPartial implementation of Jupiter chunk filtering, pending more information a... (diff)
downloadzen-6ec3ca923809c9d7099b0b279fb0044b4e7e9a01.tar.xz
zen-6ec3ca923809c9d7099b0b279fb0044b4e7e9a01.zip
Use vcpkg --overlay-ports to handle asio
-rw-r--r--scripts/installdeps.bat2
-rw-r--r--vcpkg_overlay-ports/asio/CMakeLists.txt28
-rw-r--r--vcpkg_overlay-ports/asio/asio-config.cmake6
-rw-r--r--vcpkg_overlay-ports/asio/portfile.cmake31
-rw-r--r--vcpkg_overlay-ports/asio/vcpkg.json27
-rw-r--r--zen/zen.vcxproj2
-rw-r--r--zencore-test/zencore-test.vcxproj2
-rw-r--r--zencore/zencore.vcxproj2
-rw-r--r--zenserver-test/zenserver-test.vcxproj2
-rw-r--r--zenserver/zenserver.vcxproj2
-rw-r--r--zenstore/zenstore.vcxproj2
-rw-r--r--zentest-appstub/zentest-appstub.vcxproj7
-rw-r--r--zentestutil/zentestutil.vcxproj2
13 files changed, 113 insertions, 2 deletions
diff --git a/scripts/installdeps.bat b/scripts/installdeps.bat
index dab9c2c67..f8ec42608 100644
--- a/scripts/installdeps.bat
+++ b/scripts/installdeps.bat
@@ -1 +1 @@
-vcpkg --x-manifest-root=%~dp0.. --triplet=x64-windows-static install
+vcpkg --x-manifest-root=%~dp0.. --overlay-ports=%~dp0..\vcpkg_overlay-ports --triplet=x64-windows-static install \ No newline at end of file
diff --git a/vcpkg_overlay-ports/asio/CMakeLists.txt b/vcpkg_overlay-ports/asio/CMakeLists.txt
new file mode 100644
index 000000000..6bdb490ba
--- /dev/null
+++ b/vcpkg_overlay-ports/asio/CMakeLists.txt
@@ -0,0 +1,28 @@
+cmake_minimum_required(VERSION 3.8)
+project(asio)
+
+add_library(asio INTERFACE)
+
+# Export target
+install(TARGETS asio
+ EXPORT asio
+ INCLUDES DESTINATION include/
+)
+
+install(EXPORT asio
+ DESTINATION "share/asio"
+ FILE asio-targets.cmake
+)
+
+install(DIRECTORY
+ asio/include/asio
+ DESTINATION include/
+ FILES_MATCHING
+ PATTERN "*.hpp"
+ PATTERN "*.ipp"
+)
+
+install(FILES
+ asio/include/asio.hpp
+ DESTINATION include/
+)
diff --git a/vcpkg_overlay-ports/asio/asio-config.cmake b/vcpkg_overlay-ports/asio/asio-config.cmake
new file mode 100644
index 000000000..6e5325003
--- /dev/null
+++ b/vcpkg_overlay-ports/asio/asio-config.cmake
@@ -0,0 +1,6 @@
+include ("${CMAKE_CURRENT_LIST_DIR}/asio-targets.cmake")
+add_library(asio::asio INTERFACE IMPORTED)
+target_link_libraries(asio::asio INTERFACE asio)
+
+get_target_property(_ASIO_INCLUDE_DIR asio INTERFACE_INCLUDE_DIRECTORIES)
+set(ASIO_INCLUDE_DIR "${_ASIO_INCLUDE_DIR}")
diff --git a/vcpkg_overlay-ports/asio/portfile.cmake b/vcpkg_overlay-ports/asio/portfile.cmake
new file mode 100644
index 000000000..08cf98e24
--- /dev/null
+++ b/vcpkg_overlay-ports/asio/portfile.cmake
@@ -0,0 +1,31 @@
+#header-only library
+
+vcpkg_from_git(
+ OUT_SOURCE_PATH SOURCE_PATH
+ URL https://github.com/chriskohlhoff/asio.git
+ REPO chriskohlhoff/asio
+ REF 57577c6db46a4e2de5351af2b185bf52696699a9
+ HEAD_REF master
+)
+
+# Always use "ASIO_STANDALONE" to avoid boost dependency
+vcpkg_replace_string("${SOURCE_PATH}/asio/include/asio/detail/config.hpp" "defined(ASIO_STANDALONE)" "!defined(VCPKG_DISABLE_ASIO_STANDALONE)")
+
+# CMake install
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+vcpkg_install_cmake()
+
+vcpkg_fixup_cmake_targets(CONFIG_PATH "share/asio")
+file(INSTALL
+ ${CMAKE_CURRENT_LIST_DIR}/asio-config.cmake
+ DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}
+)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug)
+
+# Handle copyright
+file(INSTALL ${SOURCE_PATH}/asio/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
+
diff --git a/vcpkg_overlay-ports/asio/vcpkg.json b/vcpkg_overlay-ports/asio/vcpkg.json
new file mode 100644
index 000000000..38140acc5
--- /dev/null
+++ b/vcpkg_overlay-ports/asio/vcpkg.json
@@ -0,0 +1,27 @@
+{
+ "name": "asio",
+ "version": "1.18.1",
+ "description": "Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach.",
+ "homepage": "https://github.com/chriskohlhoff/asio",
+ "documentation": "https://think-async.com/Asio/asio-1.18.0/doc/",
+ "features": {
+ "coroutine": {
+ "description": "Boost.Coroutine (optional) if you use spawn() to launch coroutines",
+ "dependencies": [
+ "boost-coroutine"
+ ]
+ },
+ "openssl": {
+ "description": "OpenSSL (optional) if you use Asio's SSL support.",
+ "dependencies": [
+ "openssl"
+ ]
+ },
+ "regex": {
+ "description": "Boost.Regex (optional) if you use any of the read_until() or async_read_until() overloads that take a boost::regex parameter.",
+ "dependencies": [
+ "boost-regex"
+ ]
+ }
+ }
+}
diff --git a/zen/zen.vcxproj b/zen/zen.vcxproj
index 2614405d7..06c08e49f 100644
--- a/zen/zen.vcxproj
+++ b/zen/zen.vcxproj
@@ -56,10 +56,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
diff --git a/zencore-test/zencore-test.vcxproj b/zencore-test/zencore-test.vcxproj
index 77a4397fe..42e373ab6 100644
--- a/zencore-test/zencore-test.vcxproj
+++ b/zencore-test/zencore-test.vcxproj
@@ -54,10 +54,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
diff --git a/zencore/zencore.vcxproj b/zencore/zencore.vcxproj
index c68e922c5..c9d51e0bb 100644
--- a/zencore/zencore.vcxproj
+++ b/zencore/zencore.vcxproj
@@ -58,10 +58,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
diff --git a/zenserver-test/zenserver-test.vcxproj b/zenserver-test/zenserver-test.vcxproj
index 8cf7df84d..3d5a37ac8 100644
--- a/zenserver-test/zenserver-test.vcxproj
+++ b/zenserver-test/zenserver-test.vcxproj
@@ -58,10 +58,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
diff --git a/zenserver/zenserver.vcxproj b/zenserver/zenserver.vcxproj
index b47ec2f04..2ba6bd551 100644
--- a/zenserver/zenserver.vcxproj
+++ b/zenserver/zenserver.vcxproj
@@ -58,10 +58,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
diff --git a/zenstore/zenstore.vcxproj b/zenstore/zenstore.vcxproj
index 4a39e826d..06cb9db32 100644
--- a/zenstore/zenstore.vcxproj
+++ b/zenstore/zenstore.vcxproj
@@ -77,10 +77,12 @@
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgEnableManifest>true</VcpkgEnableManifest>
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
diff --git a/zentest-appstub/zentest-appstub.vcxproj b/zentest-appstub/zentest-appstub.vcxproj
index cf8fd3c5e..efbe86b47 100644
--- a/zentest-appstub/zentest-appstub.vcxproj
+++ b/zentest-appstub/zentest-appstub.vcxproj
@@ -82,7 +82,12 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Label="Vcpkg" />
+ <PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
+ </PropertyGroup>
+ <PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
+ </PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
diff --git a/zentestutil/zentestutil.vcxproj b/zentestutil/zentestutil.vcxproj
index 8213763fc..cf8b02dc1 100644
--- a/zentestutil/zentestutil.vcxproj
+++ b/zentestutil/zentestutil.vcxproj
@@ -58,9 +58,11 @@
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<VcpkgUseStatic>true</VcpkgUseStatic>
+ <VcpkgAdditionalInstallOptions>--overlay-ports=$(SolutionDir)vcpkg_overlay-ports</VcpkgAdditionalInstallOptions>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>