mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-13 22:27:13 +02:00
Remove more remnants of VCPKG.
This commit is contained in:
parent
01b3e42b2e
commit
139783d87b
133 changed files with 2 additions and 5261 deletions
|
@ -28,7 +28,6 @@ endif()
|
|||
|
||||
# set our OS X deployment target
|
||||
# (needs to be set before first project() call and before prebuild.py)
|
||||
# Will affect VCPKG dependencies
|
||||
if (APPLE)
|
||||
set(ENV{MACOSX_DEPLOYMENT_TARGET} 10.11)
|
||||
endif()
|
||||
|
@ -42,7 +41,6 @@ endif()
|
|||
|
||||
# OVERTE_OPTIMIZE
|
||||
# Variable determining Overte optimization. If not set, it defaults to true.
|
||||
# It's used to determine build flags for main codebase and for VCPKG dependencies.
|
||||
# Should be set to false to get completely unoptimized build for easier line-by-line debugging
|
||||
|
||||
if( NOT WIN32 )
|
||||
|
@ -72,7 +70,7 @@ if( NOT WIN32 )
|
|||
|
||||
# OVERTE_CPU_ARCHITECTURE
|
||||
# Variable determining CPU architecture for which Overte will be built.
|
||||
# If defined, it's appended to CXXFLAGS and CFLAGS for both Overte and VCPKG dependencies
|
||||
# If defined, it's appended to CXXFLAGS and CFLAGS for Overte
|
||||
|
||||
#Assume -march=native for compilers that allow it if architecture is not specified
|
||||
if(NOT DEFINED OVERTE_CPU_ARCHITECTURE)
|
||||
|
|
81
VCPKG.md
81
VCPKG.md
|
@ -1,81 +0,0 @@
|
|||
<!--
|
||||
Copyright 2013-2019 High Fidelity, Inc.
|
||||
Copyright 2022 Overte e.V.
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
[VCPKG](https://github.com/Microsoft/vcpkg) is an open source package management system created by Microsoft, intially just for Windows based system, but eventually extended to cover Linux and OSX as well, and in theory extensible enough to cover additional operating systems.
|
||||
|
||||
VCPKG is now our primary mechanism for managing the external libraries and tools on which we rely to build our applications.
|
||||
|
||||
Conventional usage of VCPKG involves cloning the repository, running the bootstrapping script to build the vcpkg binary, and then calling the binary to install a set of libraries. The libraries themselves are specified by a set of port files inside the [repository](https://github.com/Microsoft/vcpkg/tree/master/ports)
|
||||
|
||||
Because the main VCPKG repository does not contain all the ports we want, and because we want to be able to manage the precise versions of our dependencies, rather than allow it to be outside of our control, instead of using the main vcpkg repository, we use a combination of a [fork](https://github.com/highfidelity/vcpkg) of the repository (which allows us to customize the vcpkg binary, currently necessary to deal with some out of date tools on our build hosts) and a set of [custom port files](./cmake/ports) stored in our own repository.
|
||||
|
||||
## Adding new packages to vcpkg
|
||||
|
||||
Note... Android vcpkg usage is still experimental. Contact Austin for more detailed information if you need to add a new package for use by Android.
|
||||
|
||||
### Setup development environment
|
||||
|
||||
In order to add new packages, you will need to set up an environment for testing. This assumes you already have the tools for normal Hifi development (git, cmake, a working C++ compiler, etc)
|
||||
|
||||
* Clone our vcpkg [fork](https://github.com/highfidelity/vcpkg)
|
||||
* Remove the ports directory from the checkout and symlink to our own [custom port files](./cmake/ports)
|
||||
* Bootstrap the vcpkg binary with the `bootstrap-vcpkg.sh` or `bootstrap-vcpkg.bat` script
|
||||
|
||||
### Add a new port skeleton
|
||||
|
||||
Your new package will require, at minimum, a `CONTROL` file and a `portfile.cmake` file, located in a subdirectory of the ports folder. Assuming you're creating a new dependency named `foo` it should be located in `ports/foo` under the vcpkg directory. The `CONTROL` file will contain a small number of fields, such as the name, version, description and any other vcpkg ports on which you depend. The `portfile.cmake` is a CMake script that will instruct vcpkg how to build the packages. We'll cover that in more depth in a moment. For now, just create one and leave it blank.
|
||||
|
||||
### Add a reference to your package to one or more of the hifi meta-packages
|
||||
|
||||
We have three meta-packages used to do our building. When you modify one of these packages, make sure to bump the version number in the `CONTROL` file for the package
|
||||
|
||||
#### hifi-deps
|
||||
|
||||
This metapackage contains anything required for building the server or shared components. For instance, the `glm`, `tbb` and `zlib` packages are declared here because they're used everywhere, not just in our client application code.
|
||||
|
||||
#### hifi-client-deps
|
||||
|
||||
This metapackage contains anything required for building the client. For example, `sdl2` is listed here because it's required for our joystick input, but not for the server or shared components. Note that `hifi-client-deps` depends on `hifi-deps`, so you don't have to declare something twice if it's used in both he server and client. Just declare it in `hifi-deps` and it will still be includeded transitively.
|
||||
|
||||
#### hifi-host-tools
|
||||
|
||||
This metapackage contains anything we use to create executables that will then be used in the build process. The `hifi-deps` and `hifi-client-deps` packages are built for the target architecture, which may be different than the host architecture (for instance, when building for Android). The `hifi-host-tools` packages are always build for the host architecture, because they're tools that are intended to be run as part of the build process. Scribe for example is used at build time to generate shaders. Building an arm64 version of Scribe is useless because we need to run it on the host machine.
|
||||
|
||||
Note that packages can appear in both the `hifi-host-tools` and one of the other metapackages, indicating that the package both contains a library which we will use at runtime, and a tool which we will use at build time. The `spirv-tools` package is an example.
|
||||
|
||||
### Implement the portfile.cmake
|
||||
|
||||
How the portfile is written depends on what kind of package you're working with. It's basically still a CMake script, but there are a number of [functions](https://vcpkg.readthedocs.io/en/latest/maintainers/portfile-functions/) available to make fetching and building packages easier.
|
||||
|
||||
Typically there are three areas you need to deal with
|
||||
|
||||
* Getting the source
|
||||
* Building the source
|
||||
* Installing the artifacts
|
||||
|
||||
#### Getting sources
|
||||
|
||||
Getting sources from github, gitlab or bitbucket is easy. There are special functions specifcially for those. See the [etc2comp portfile](./cmake/ports/etc2comp/portfile.cmake) for an example of fetching source via github.
|
||||
|
||||
If the project isn't available that way, you can still use the [vcpkg_download_distfile](https://vcpkg.readthedocs.io/en/latest/maintainers/vcpkg_download_distfile/) function to explicitly download an archive and then use [vcpkg_extract_source_archive](https://vcpkg.readthedocs.io/en/latest/maintainers/vcpkg_extract_source_archive/) to unpack it. See the [zlib portfile](./cmake/ports/zlib/portfile.cmake) for an example there.
|
||||
|
||||
#### Building
|
||||
|
||||
If your package uses CMake, you'll be able to use the [vcpkg_configure_cmake](https://vcpkg.readthedocs.io/en/latest/maintainers/vcpkg_configure_cmake/) and [vcpkg_build_cmake](https://vcpkg.readthedocs.io/en/latest/maintainers/vcpkg_build_cmake/) commands to configure and build the package. If you're going to be relying on the CMake installation functionality, you can just call [vcpkg_install_cmake](https://vcpkg.readthedocs.io/en/latest/maintainers/vcpkg_install_cmake/), since it will implicitly run the build before the install.
|
||||
|
||||
If your package is not binary, but doesn't use CMake, you're just going to have to figure it out.
|
||||
|
||||
If your package is binary, then you can just skip this step
|
||||
|
||||
#### Installing
|
||||
|
||||
Once you've built the package, you need to install the artifacts in the target directory. Ideally, your package's CMake INSTALL commands will do the right thing. However, there are usually some things you have to do manually. Since VCPKG will build both the release and debug versions for all packages, you need to make sure if your package installed headers that you remove the _debug_ versions of these headers. This is typically done with the `file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)`. Additionally, if your package creates any standalone executables, you need to make sure they're installed in the destination `tools` directory, not the `bin` or `lib` directories, which are specifically for shared library binaries (like .so or .dll files) and link library files (like .a or .lib files) respectively.
|
||||
|
||||
If you're dealing with a binary package, then you'll need to explicitly perform all the required copies from the location where you extracted the archive to the installation directory. An example of this is available in the [openssl-android portfile](./cmake/ports/openssl-android/portfile.cmake)
|
||||
|
||||
### Commit and test
|
||||
|
||||
Once you've tested building your new package locally, you'll need to commit and push the changes and additions to the portfiles you've made and then monitor the build hosts to verify that the new package successfully built on all the target environments.
|
|
@ -11,7 +11,6 @@ macro(TARGET_OPENSSL)
|
|||
set(OPENSSL_INCLUDE_DIR "${OPENSSL_INSTALL_DIR}/include" CACHE STRING INTERNAL)
|
||||
set(OPENSSL_LIBRARIES "${OPENSSL_INSTALL_DIR}/lib/libcrypto.a;${OPENSSL_INSTALL_DIR}/lib/libssl.a" CACHE STRING INTERNAL)
|
||||
else()
|
||||
# using VCPKG for OpenSSL
|
||||
find_package(OpenSSL 1.1.0 REQUIRED)
|
||||
endif()
|
||||
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
||||
#
|
||||
macro(TARGET_SDL2)
|
||||
# using VCPKG for SDL2
|
||||
find_package(SDL2 CONFIG REQUIRED)
|
||||
if (WIN32)
|
||||
target_link_libraries(${TARGET_NAME} SDL2::SDL2)
|
||||
|
|
|
@ -10,7 +10,6 @@ macro(TARGET_ZLIB)
|
|||
# zlib is part of the NDK
|
||||
target_link_libraries(${TARGET_NAME} z)
|
||||
else()
|
||||
# using VCPKG for zlib
|
||||
find_package(ZLIB REQUIRED)
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${ZLIB_INCLUDE_DIRS})
|
||||
target_link_libraries(${TARGET_NAME} ${ZLIB_LIBRARIES})
|
||||
|
|
1
cmake/ports/.gitattributes
vendored
1
cmake/ports/.gitattributes
vendored
|
@ -1 +0,0 @@
|
|||
* eol=lf
|
|
@ -1,38 +0,0 @@
|
|||
diff --git a/artery-font/serialization.hpp b/artery-font/serialization.hpp
|
||||
index 69263a8..6075eda 100644
|
||||
--- a/artery-font/serialization.hpp
|
||||
+++ b/artery-font/serialization.hpp
|
||||
@@ -109,15 +109,16 @@ template <ReadFunction READ, typename REAL, template <typename> class LIST, clas
|
||||
bool decode(ArteryFont<REAL, LIST, BYTE_ARRAY, STRING> &font, void *userData) {
|
||||
uint32 totalLength = 0;
|
||||
uint32 prevLength = 0;
|
||||
- uint32 checksum = crc32Init();
|
||||
+ //uint32 checksum = crc32Init();
|
||||
byte dump[4];
|
||||
#define ARTERY_FONT_DECODE_READ(target, len) { \
|
||||
if (READ((target), (len), userData) != int(len)) \
|
||||
return false; \
|
||||
totalLength += (len); \
|
||||
- for (int _i = 0; _i < int(len); ++_i) \
|
||||
- checksum = crc32Update(checksum, reinterpret_cast<const byte *>(target)[_i]); \
|
||||
}
|
||||
+ // for (int _i = 0; _i < int(len); ++_i) \
|
||||
+ // checksum = crc32update(checksum, reinterpret_cast<const byte *>(target)[_i]); \
|
||||
+ //}
|
||||
#define ARTERY_FONT_DECODE_REALIGN() { \
|
||||
if (totalLength&0x03u) { \
|
||||
uint32 len = 0x04u-(totalLength&0x03u); \
|
||||
@@ -228,10 +229,10 @@ bool decode(ArteryFont<REAL, LIST, BYTE_ARRAY, STRING> &font, void *userData) {
|
||||
ARTERY_FONT_DECODE_READ(&footer, sizeof(footer)-sizeof(footer.checksum));
|
||||
if (footer.magicNo != ARTERY_FONT_FOOTER_MAGIC_NO)
|
||||
return false;
|
||||
- uint32 finalChecksum = checksum;
|
||||
+ //uint32 finalChecksum = checksum;
|
||||
ARTERY_FONT_DECODE_READ(&footer.checksum, sizeof(footer.checksum));
|
||||
- if (footer.checksum != finalChecksum)
|
||||
- return false;
|
||||
+ //if (footer.checksum != finalChecksum)
|
||||
+ // return false;
|
||||
if (totalLength != footer.totalLength)
|
||||
return false;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
# header-only library
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO Chlumsky/artery-font-format
|
||||
REF 34134bde3cea35a93c2ae5703fa8d3d463793400
|
||||
SHA512 6b2fc0de9ca7b367c9b98f829ce6cee858f1252b12a49b6f1e89a5a2fdb109e20ef812f0b30495195ca0b177adae32d5e238fdc305724857ced098be2d29a6af
|
||||
HEAD_REF master
|
||||
PATCHES "disable-checksum.patch"
|
||||
)
|
||||
|
||||
file(COPY "${SOURCE_PATH}/artery-font" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
||||
|
||||
# Handle copyright
|
||||
configure_file("${SOURCE_PATH}/LICENSE.txt" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY)
|
|
@ -1,7 +0,0 @@
|
|||
{
|
||||
"name": "artery-font-format",
|
||||
"version": "1.0.1",
|
||||
"description": "Header-only C++ library that facilitates encoding and decoding of the Artery Atlas Font format",
|
||||
"homepage": "https://github.com/Chlumsky/artery-font-format",
|
||||
"license": "MIT"
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
Source: bullet3
|
||||
Version: ab8f16961e19a86ee20c6a1d61f662392524cc77
|
||||
Description: Bullet Physics is a professional collision detection, rigid body, and soft body dynamics library
|
|
@ -1,36 +0,0 @@
|
|||
From 7638b7c5a659dceb4e580ae87d4d60b00847ef94 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Emil=20Nord=C3=A9n?= <emilnorden@yahoo.se>
|
||||
Date: Sat, 4 May 2019 08:38:53 +0200
|
||||
Subject: [PATCH] fixed build on latest version of clang
|
||||
|
||||
---
|
||||
src/Bullet3Common/b3Vector3.h | 2 +-
|
||||
src/LinearMath/btVector3.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/Bullet3Common/b3Vector3.h b/src/Bullet3Common/b3Vector3.h
|
||||
index 56e6c13311..a70d68d6e1 100644
|
||||
--- a/src/Bullet3Common/b3Vector3.h
|
||||
+++ b/src/Bullet3Common/b3Vector3.h
|
||||
@@ -36,7 +36,7 @@ subject to the following restrictions:
|
||||
#pragma warning(disable : 4556) // value of intrinsic immediate argument '4294967239' is out of range '0 - 255'
|
||||
#endif
|
||||
|
||||
-#define B3_SHUFFLE(x, y, z, w) ((w) << 6 | (z) << 4 | (y) << 2 | (x))
|
||||
+#define B3_SHUFFLE(x, y, z, w) (((w) << 6 | (z) << 4 | (y) << 2 | (x)) & 0xff)
|
||||
//#define b3_pshufd_ps( _a, _mask ) (__m128) _mm_shuffle_epi32((__m128i)(_a), (_mask) )
|
||||
#define b3_pshufd_ps(_a, _mask) _mm_shuffle_ps((_a), (_a), (_mask))
|
||||
#define b3_splat3_ps(_a, _i) b3_pshufd_ps((_a), B3_SHUFFLE(_i, _i, _i, 3))
|
||||
diff --git a/src/LinearMath/btVector3.h b/src/LinearMath/btVector3.h
|
||||
index 61fd8d1e46..d65ed9808d 100644
|
||||
--- a/src/LinearMath/btVector3.h
|
||||
+++ b/src/LinearMath/btVector3.h
|
||||
@@ -36,7 +36,7 @@ subject to the following restrictions:
|
||||
#pragma warning(disable : 4556) // value of intrinsic immediate argument '4294967239' is out of range '0 - 255'
|
||||
#endif
|
||||
|
||||
-#define BT_SHUFFLE(x, y, z, w) ((w) << 6 | (z) << 4 | (y) << 2 | (x))
|
||||
+#define BT_SHUFFLE(x, y, z, w) (((w) << 6 | (z) << 4 | (y) << 2 | (x)) & 0xff)
|
||||
//#define bt_pshufd_ps( _a, _mask ) (__m128) _mm_shuffle_epi32((__m128i)(_a), (_mask) )
|
||||
#define bt_pshufd_ps(_a, _mask) _mm_shuffle_ps((_a), (_a), (_mask))
|
||||
#define bt_splat3_ps(_a, _i) bt_pshufd_ps((_a), BT_SHUFFLE(_i, _i, _i, 3))
|
|
@ -1,62 +0,0 @@
|
|||
# Updated June 6th, 2019, to force new vckpg hash
|
||||
#
|
||||
# Common Ambient Variables:
|
||||
#
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
|
||||
# PORT = current port name (zlib, etc)
|
||||
# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
|
||||
# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
|
||||
# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic)
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm)
|
||||
#
|
||||
|
||||
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
message(WARNING "Dynamic not supported, building static")
|
||||
set(VCPKG_LIBRARY_LINKAGE static)
|
||||
set(VCPKG_CRT_LINKAGE dynamic)
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO bulletphysics/bullet3
|
||||
REF ab8f16961e19a86ee20c6a1d61f662392524cc77
|
||||
SHA512 927742db29867517283d45e475f0c534a9a57e165cae221f26e08e88057253a1682ac9919b2dc547b9cf388ba0b931b175623461d44f28c9184796ba90b1ed55
|
||||
HEAD_REF master
|
||||
PATCHES "bullet-git-fix-build-clang-8.patch"
|
||||
)
|
||||
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
-DUSE_MSVC_RUNTIME_LIBRARY_DLL=ON
|
||||
-DUSE_GLUT=0
|
||||
-DBUILD_OPENGL3_DEMOS=OFF
|
||||
-DBUILD_BULLET3=OFF
|
||||
-DBUILD_BULLET2_DEMOS=OFF
|
||||
-DBUILD_CPU_DEMOS=OFF
|
||||
-DBUILD_EXTRAS=OFF
|
||||
-DBUILD_UNIT_TESTS=OFF
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DINSTALL_LIBS=ON
|
||||
MAYBE_UNUSED_VARIABLES
|
||||
-DBUILD_DEMOS=OFF
|
||||
-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON
|
||||
-DUSE_DX11=0
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/bullet/BulletInverseDynamics/details)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/bullet3 RENAME copyright)
|
|
@ -1,15 +0,0 @@
|
|||
# header-only library
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO jkuhlmann/cgltf
|
||||
REF de399881c65c438a635627c749440eeea7e05599
|
||||
SHA512 753923116b92642848ff2bda70695ddd0e7be6db43ed3cfc37aff4cba90a29a92e3dbda139a5f2c80cad1d2cdaf81e1383e4ea7a12195f61fe8cfeb105e53ea2
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
file(COPY "${SOURCE_PATH}/cgltf.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
||||
file(COPY "${SOURCE_PATH}/cgltf_write.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
||||
|
||||
# Handle copyright
|
||||
configure_file("${SOURCE_PATH}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY)
|
|
@ -1,7 +0,0 @@
|
|||
{
|
||||
"name": "cgltf",
|
||||
"version": "1.13",
|
||||
"description": "Single-file glTF 2.0 loader and writer written in C99",
|
||||
"homepage": "https://github.com/jkuhlmann/cgltf",
|
||||
"license": "MIT"
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 5dad9e9..961f02d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -12,6 +12,7 @@ file(GLOB_RECURSE ALL_SOURCE_FILES
|
||||
src/*.cpp src/*.h src/*.c
|
||||
)
|
||||
|
||||
+if(0)
|
||||
# Set CLANG_FORMAT_SUFFIX if you are using custom clang-format, e.g. clang-format-5.0
|
||||
find_program(CLANG_FORMAT_CMD clang-format${CLANG_FORMAT_SUFFIX})
|
||||
|
||||
@@ -43,7 +44,7 @@ if (NOT RAPIDJSONTEST)
|
||||
)
|
||||
file(REMOVE ${RJ_TAR_FILE})
|
||||
endif(NOT RAPIDJSONTEST)
|
||||
-
|
||||
+endif()
|
||||
find_file(RAPIDJSON NAMES rapidjson rapidjson-1.1.0 PATHS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty CMAKE_FIND_ROOT_PATH_BOTH)
|
||||
|
||||
add_library(rapidjson STATIC IMPORTED ${RAPIDJSON})
|
|
@ -1,33 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO discordapp/discord-rpc
|
||||
REF v3.4.0
|
||||
SHA512 ca981b833aff5f21fd629a704deadd8e3fb5423d959ddb75e381313f6462d984c567671b10c8f031905c08d85792ddbe2dddc402ba2613c42de9e80fc68d0d51
|
||||
HEAD_REF master
|
||||
PATCHES disable-downloading.patch
|
||||
)
|
||||
|
||||
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" STATIC_CRT)
|
||||
file(REMOVE_RECURSE "${SOURCE_PATH}/thirdparty")
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
-DUSE_STATIC_CRT=${STATIC_CRT}
|
||||
-DBUILD_EXAMPLES=OFF
|
||||
-DRAPIDJSONTEST=TRUE
|
||||
"-DRAPIDJSON=${CURRENT_INSTALLED_DIR}"
|
||||
)
|
||||
|
||||
if(EXISTS ${SOURCE_PATH}/thirdparty)
|
||||
message(FATAL_ERROR "The source directory should not be modified during the build.")
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
# Copy copright information
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/discord-rpc" RENAME "copyright")
|
||||
|
||||
vcpkg_copy_pdbs()
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"name": "discord-rpc",
|
||||
"version": "3.4.0",
|
||||
"port-version": 3,
|
||||
"description": "Rich Presence allows you to leverage the totally overhauled \"Now Playing\" section in a Discord user's profile to help people play your game together.",
|
||||
"homepage": "https://github.com/discordapp/discord-rpc",
|
||||
"dependencies": [
|
||||
"rapidjson",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
Source: draco
|
||||
Version: 1.3.5-fixed
|
||||
Description: A library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics.
|
||||
Build-Depends:
|
|
@ -1,54 +0,0 @@
|
|||
# Common Ambient Variables:
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
# CURRENT_PORT DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
|
||||
# PORT = current port name (zlib, etc)
|
||||
# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
|
||||
# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
|
||||
# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic)
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm)
|
||||
#
|
||||
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
message(STATUS "Warning: Dynamic building not supported yet. Building static.")
|
||||
set(VCPKG_LIBRARY_LINKAGE static)
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO overte-org/draco
|
||||
REF 1.3.5-fixed
|
||||
SHA512 68bb15de013093077946d431ab1f4080b84a66d45d20873f2c0dc44aa28034fb4ec1f6e24f9300fde563da53943b73d47163b9c6acf2667312128c50c6d075bd
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/draco/cmake)
|
||||
|
||||
# Install tools and plugins
|
||||
file(GLOB TOOLS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*.exe")
|
||||
if(TOOLS)
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/draco)
|
||||
file(COPY ${TOOLS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/draco)
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/draco)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/draco)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/draco)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/draco/LICENSE ${CURRENT_PACKAGES_DIR}/share/draco/copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: etc2comp
|
||||
Version: 7f1843bf07825c21cab711360c1ddbad04641036
|
||||
Description: ETC2 image compression library
|
|
@ -1,37 +0,0 @@
|
|||
# Common Ambient Variables:
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
|
||||
# PORT = current port name (zlib, etc)
|
||||
# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
|
||||
# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
|
||||
# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic)
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm)
|
||||
#
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
message(STATUS "Warning: Dynamic building not supported yet. Building static.")
|
||||
set(VCPKG_LIBRARY_LINKAGE static)
|
||||
set(VCPKG_CRT_LINKAGE dynamic)
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO overte-org/etc2comp
|
||||
REF 7f1843bf07825c21cab711360c1ddbad04641036
|
||||
SHA512 d747076acda8537d39585858c793a35c3dcc9ef283d723619a47f8c81ec1454c95b3340ad35f0655a939eae5b8271c801c48a9a7568311a01903a344c44af25b
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/etc2comp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/etc2comp/LICENSE ${CURRENT_PACKAGES_DIR}/share/etc2comp/copyright)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
Source: glad
|
||||
Version: 20191029
|
||||
Description: OpenGL function loader
|
|
@ -1,20 +0,0 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2013-2018 David Herberth
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -1,45 +0,0 @@
|
|||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/USE_GLES.txt" USE_GLES)
|
||||
|
||||
# GitHub Actions Android builds fail with `FILENAME` set while desktop builds with GLES fail without a set `FILENAME`.
|
||||
if (ANDROID)
|
||||
vcpkg_download_distfile(
|
||||
SOURCE_ARCHIVE
|
||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad32es.zip
|
||||
SHA512 2e02ac633eed8f2ba2adbf96ea85d08998f48dd2e9ec9a88ec3c25f48eaf1405371d258066327c783772fcb3793bdb82bd7375fdabb2ba5e2ce0835468b17f65
|
||||
)
|
||||
elseif (USE_GLES)
|
||||
vcpkg_download_distfile(
|
||||
SOURCE_ARCHIVE
|
||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad32es.zip
|
||||
SHA512 2e02ac633eed8f2ba2adbf96ea85d08998f48dd2e9ec9a88ec3c25f48eaf1405371d258066327c783772fcb3793bdb82bd7375fdabb2ba5e2ce0835468b17f65
|
||||
FILENAME glad32es.zip
|
||||
)
|
||||
else()
|
||||
# else Linux desktop
|
||||
vcpkg_download_distfile(
|
||||
SOURCE_ARCHIVE
|
||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad45.zip
|
||||
SHA512 653a7b873f9fbc52e0ab95006cc3143bc7b6f62c6e032bc994e87669273468f37978525c9af5efe36f924cb4acd221eb664ad9af0ce4bf711b4f1be724c0065e
|
||||
FILENAME glad45.zip
|
||||
)
|
||||
endif()
|
||||
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${SOURCE_ARCHIVE}
|
||||
NO_REMOVE_ONE_LEVEL
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/glad)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
|
@ -1,4 +0,0 @@
|
|||
Source: gli
|
||||
Version: 0.8.2-1
|
||||
Build-Depends: glm
|
||||
Description: OpenGL Image (GLI) https://gli.g-truc.net
|
|
@ -1,18 +0,0 @@
|
|||
#header-only library
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO g-truc/gli
|
||||
REF 0.8.2.0
|
||||
SHA512 c254a4e1497d0add985e4a882c552db99c512cc0e9cc72145d51a6e7deada817d624d9818099a47136a8a3ef1223a26a34e355e3c713166f0bb062e506059834
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
# Put the license file where vcpkg expects it
|
||||
# manual.md contains the "licenses" section for the project
|
||||
file(COPY ${SOURCE_PATH}/manual.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/gli/)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/gli/manual.md ${CURRENT_PACKAGES_DIR}/share/gli/copyright)
|
||||
|
||||
# Copy the glm header files
|
||||
file(GLOB HEADER_FILES "${SOURCE_PATH}/gli/*.hpp" "${SOURCE_PATH}/gli/core")
|
||||
file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/gli)
|
|
@ -1,3 +0,0 @@
|
|||
Source: glm
|
||||
Version: 0.9.9.3
|
||||
Description: OpenGL Mathematics (GLM) https://glm.g-truc.net
|
|
@ -1,22 +0,0 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 756673a..9b3aa07 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -194,7 +194,7 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
message("GLM: Clang - ${CMAKE_CXX_COMPILER_ID} compiler")
|
||||
endif()
|
||||
|
||||
- add_compile_options(-Werror -Weverything)
|
||||
+ add_compile_options(-Weverything)
|
||||
add_compile_options(-Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-c++11-long-long -Wno-padded -Wno-gnu-anonymous-struct -Wno-nested-anon-types)
|
||||
add_compile_options(-Wno-undefined-reinterpret-cast -Wno-sign-conversion -Wno-unused-variable -Wno-missing-prototypes -Wno-unreachable-code -Wno-missing-variable-declarations -Wno-sign-compare -Wno-global-constructors -Wno-unused-macros -Wno-format-nonliteral)
|
||||
|
||||
@@ -216,7 +216,7 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
||||
message("GLM: Visual C++ - ${CMAKE_CXX_COMPILER_ID} compiler")
|
||||
endif()
|
||||
|
||||
- add_compile_options(/W4 /WX)
|
||||
+ add_compile_options(/W4)
|
||||
add_compile_options(/wd4309 /wd4324 /wd4389 /wd4127 /wd4267 /wd4146 /wd4201 /wd4464 /wd4514 /wd4701 /wd4820 /wd4365)
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||
endif()
|
|
@ -1,26 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO g-truc/glm
|
||||
REF 0.9.9.3
|
||||
SHA512 44152ea6438763feda3b78813287fd59d3574a9630a41647a157825bf5ce4a18fbbecae5a5ccd94acc118ed3d42cbce53d3a67f25632d0c00ab77e7de2bb4650
|
||||
HEAD_REF master
|
||||
PATCHES "disable_warnings_as_error.patch"
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DGLM_TEST_ENABLE=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/glm")
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
# Put the license file where vcpkg expects it
|
||||
file(COPY ${SOURCE_PATH}/manual.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/glm/)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/glm/manual.md ${CURRENT_PACKAGES_DIR}/share/glm/copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: glslang
|
||||
Version: 11.13.0
|
||||
Description: Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator
|
|
@ -1,35 +0,0 @@
|
|||
//
|
||||
//Copyright (C) 2002-2005 3Dlabs Inc. Ltd.
|
||||
//Copyright (C) 2012-2013 LunarG, Inc.
|
||||
//
|
||||
//All rights reserved.
|
||||
//
|
||||
//Redistribution and use in source and binary forms, with or without
|
||||
//modification, are permitted provided that the following conditions
|
||||
//are met:
|
||||
//
|
||||
// Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
//
|
||||
// Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following
|
||||
// disclaimer in the documentation and/or other materials provided
|
||||
// with the distribution.
|
||||
//
|
||||
// Neither the name of 3Dlabs Inc. Ltd. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived
|
||||
// from this software without specific prior written permission.
|
||||
//
|
||||
//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
//"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
//FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
//COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
//INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
//BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
//LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
//CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
//LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
//ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
//POSSIBILITY OF SUCH DAMAGE.
|
||||
//
|
|
@ -1,24 +0,0 @@
|
|||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO KhronosGroup/glslang
|
||||
REF 11.13.0
|
||||
SHA512 20c2a6543b002648f459f26bd36b5c445afd6d8eae175e400dbe45632f11ca8de1f9e6f6e98fd6f910aa75d90063e174c095e7df26d9d4982192b84d08b0dc8b
|
||||
HEAD_REF master
|
||||
PATCHES 0001-Include-cstdint-header-in-Common.h.patch 0001-SPIRV-SpvBuilder.h-add-missing-cstdint-include.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/tools")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin")
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/glslang)
|
|
@ -1,4 +0,0 @@
|
|||
Source: hifi-client-deps
|
||||
Version: 0.1
|
||||
Description: Collected dependencies for High Fidelity applications
|
||||
Build-Depends: hifi-deps, aristo (windows), glslang, liblo (windows), nlohmann-json, openvr ((linux&!arm)|windows), openxr-loader, quazip (!android), sdl2 (!android), spirv-cross (!android), spirv-tools (!android), sranipal (windows), vulkanmemoryallocator, discord-rpc (!android)
|
|
@ -1 +0,0 @@
|
|||
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
|
@ -1,8 +0,0 @@
|
|||
# Copyright 2018-2019 High Fidelity, Inc.
|
||||
# Copyright 2020 Vircadia contributors
|
||||
# Copyright 2021-2023 Overte e.V.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
Source: hifi-deps
|
||||
Version: 0.1.5-github-actions
|
||||
Description: Collected dependencies for High Fidelity applications
|
||||
Build-Depends: artery-font-format, bullet3, cgltf, draco, etc2comp, glad, glm, node, nvtt, openexr (!android), openssl (windows), opus, polyvox, tbb (!android), vhacd, webrtc (!android|!(linux&arm)), zlib
|
|
@ -1 +0,0 @@
|
|||
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
|
@ -1,4 +0,0 @@
|
|||
Source: hifi-host-tools
|
||||
Version: 0
|
||||
Description: Host build system compatible tools for building High Fidelity applications
|
||||
Build-Depends: hifi-scribe, glslang, spirv-cross, spirv-tools
|
|
@ -1 +0,0 @@
|
|||
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
|
@ -1,3 +0,0 @@
|
|||
Source: hifi-scribe
|
||||
Version: 1bd638a36ca771e5a68d01985b6389b71835cbd2
|
||||
Description: Scribe is a language for generating glsl files from templates
|
|
@ -1,18 +0,0 @@
|
|||
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO overte-org/scribe
|
||||
REF 1bd638a36ca771e5a68d01985b6389b71835cbd2
|
||||
SHA512 dbe241d86df3912e544f6b9839873f9875df54efc93822b145e7b13243eaf2e3d690bc8a28b1e52d05bdcd7e68fca6b0b2f5c43ffd0f56a9b7a50d54dcf9e31e
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH})
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# cleanup
|
||||
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/hifi-scribe/copyright COPYONLY)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/tools)
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO AcademySoftwareFoundation/Imath
|
||||
REF v3.1.9
|
||||
SHA512 ad96b2ac306fc13c01e8ea3256f885499c3f545be327feaba0f5e093b70b544bcca6f8b353fa7e35107aae515c19caced44331a95d0414f367ead4691ec73564
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
-DIMATH_INSTALL_SYM_LINK=OFF
|
||||
-DBUILD_TESTING=OFF
|
||||
-DIMATH_INSTALL_PKG_CONFIG=ON
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Imath)
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"name": "imath",
|
||||
"version": "3.1.9",
|
||||
"port-version": 1,
|
||||
"description": "Imath is a C++ and Python library of 2D and 3D vector, matrix, and math operations for computer graphics.",
|
||||
"homepage": "https://github.com/AcademySoftwareFoundation/Imath",
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
Source: liblo
|
||||
Version: 0.30
|
||||
Description: liblo is an implementation of the Open Sound Control protocol for POSIX systems
|
|
@ -1,34 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO radarsat1/liblo
|
||||
REF 0.30
|
||||
SHA512 d36c141c513f869e6d1963bd0d584030038019b8be0b27bb9a684722b6e7a38e942ad2ee7c2e67ac13b965560937aad97259435ed86034aa2dc8cb92d23845d8
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}/cmake
|
||||
PREFER_NINJA # Disable this option if project cannot be built with Ninja
|
||||
OPTIONS -DTHREADING=1
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
# Install needed files into package directory
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/liblo)
|
||||
|
||||
file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/oscsend.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/liblo)
|
||||
file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/oscdump.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/liblo)
|
||||
vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/liblo)
|
||||
|
||||
# Remove unnecessary files
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/oscsend.exe ${CURRENT_PACKAGES_DIR}/bin/oscdump.exe)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/oscsend.exe ${CURRENT_PACKAGES_DIR}/debug/bin/oscdump.exe)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
endif()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblo RENAME copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: nlohmann-json
|
||||
Version: 3.3.0
|
||||
Description: JSON for Modern C++
|
|
@ -1,16 +0,0 @@
|
|||
set(SOURCE_VERSION 3.3.0)
|
||||
|
||||
vcpkg_download_distfile(HEADER
|
||||
URLS "https://github.com/nlohmann/json/releases/download/v${SOURCE_VERSION}/json.hpp"
|
||||
FILENAME "nlohmann-json-${SOURCE_VERSION}.hpp"
|
||||
SHA512 c4e4bb84d1488f87a02c4e12409491225e345cc508e6dbbee1a3542fbd4953052c256d0fe78c4d3ce02d44c3a2155fe66f0c8a93a3851ddf94fec4f9f3fd6918
|
||||
)
|
||||
|
||||
vcpkg_download_distfile(LICENSE
|
||||
URLS "https://github.com/nlohmann/json/raw/v${SOURCE_VERSION}/LICENSE.MIT"
|
||||
FILENAME "nlohmann-json-LICENSE-${SOURCE_VERSION}.txt"
|
||||
SHA512 0fdb404547467f4523579acde53066badf458504d33edbb6e39df0ae145ed27d48a720189a60c225c0aab05f2aa4ce4050dcb241b56dc693f7ee9f54c8728a75
|
||||
)
|
||||
|
||||
file(INSTALL ${HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include/nlohmann RENAME json.hpp)
|
||||
file(INSTALL ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/nlohmann-json RENAME copyright)
|
|
@ -1,6 +0,0 @@
|
|||
# Copyright 2023-2025 Overte e.V.
|
||||
# SPDX-License-Identifier: MIT
|
||||
Source: node
|
||||
Version: 18.20.7
|
||||
Homepage: https://nodejs.org/
|
||||
Description: Node.js JavaScript runtime.
|
|
@ -1,107 +0,0 @@
|
|||
# Copyright 2023-2025 Overte e.V.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
set(NODE_VERSION 18.14.2)
|
||||
set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src)
|
||||
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||
|
||||
if (ANDROID)
|
||||
# TODO
|
||||
elseif (WIN32)
|
||||
vcpkg_download_distfile(
|
||||
NODE_SOURCE_ARCHIVE
|
||||
URLS "${EXTERNAL_BUILD_ASSETS}/dependencies/node/node-install-18.15.1-win-x64-release.tar.xz"
|
||||
SHA512 892608a43ae32b0a82a0e3c7994934d0ce85639ea372c8e7feb7de44220211fa91878bd0744e1488054777807dd5b0c0677b59b44ab5e9fd35ecf222b38d8046
|
||||
FILENAME node-install-18.15.1-win-x64-release.tar.xz
|
||||
)
|
||||
elseif (APPLE)
|
||||
# TODO
|
||||
vcpkg_download_distfile(
|
||||
NODE_SOURCE_ARCHIVE
|
||||
URLS "${EXTERNAL_BUILD_ASSETS}/dependencies/node/node-install-18.14.2-macOSXSDK10.14-macos-amd64-release.tar.xz"
|
||||
SHA512 TODO
|
||||
FILENAME node-install-18.14.2-macOSXSDK10.14-macos-amd64-release.tar.xz
|
||||
)
|
||||
else ()
|
||||
# else Linux desktop
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO nodejs/node
|
||||
REF v18.20.7
|
||||
SHA512 0d7000937b9b5089affc23daa7222938213bd5d77b8ed872d8cb424570fbc3e1567362c18ee8ef99413be098f7ff9fb82d49b9fc92fc93589628b07d1464b3ff
|
||||
HEAD_REF v18.20.7
|
||||
)
|
||||
# node cannot configure out of source, which VCPKG expects. So we copy the source to the configure directory.
|
||||
file(COPY ${SOURCE_PATH}/ DESTINATION "${CURRENT_BUILDTREES_DIR}")
|
||||
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
||||
# --gdb fails on aarch64
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND ./configure --shared --v8-enable-object-print --shared-openssl --prefix=${CURRENT_BUILDTREES_DIR}/node-install/
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "configure-node"
|
||||
)
|
||||
else () # amd64
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND ./configure --gdb --shared --v8-enable-object-print --shared-openssl --prefix=${CURRENT_BUILDTREES_DIR}/node-install/
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "configure-node"
|
||||
)
|
||||
endif ()
|
||||
if(VCPKG_MAX_CONCURRENCY GREATER 0)
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j${VCPKG_MAX_CONCURRENCY}
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "make-node"
|
||||
)
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j${VCPKG_MAX_CONCURRENCY} install
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "install-node"
|
||||
)
|
||||
elseif (VCPKG_CONCURRENCY GREATER 0)
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j${VCPKG_CONCURRENCY}
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "make-node"
|
||||
)
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j${VCPKG_CONCURRENCY} install
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "install-node"
|
||||
)
|
||||
else ()
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j$(nproc)
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "make-node"
|
||||
)
|
||||
vcpkg_execute_build_process(
|
||||
COMMAND make -j$(nproc) install
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME "install-node"
|
||||
)
|
||||
endif ()
|
||||
set(NODE_INSTALL_PATH ${CURRENT_BUILDTREES_DIR})
|
||||
endif ()
|
||||
|
||||
if (NODE_INSTALL_PATH)
|
||||
|
||||
else()
|
||||
vcpkg_extract_source_archive(MASTER_COPY_SOURCE_PATH ARCHIVE ${NODE_SOURCE_ARCHIVE} NO_REMOVE_ONE_LEVEL)
|
||||
set(NODE_INSTALL_PATH ${MASTER_COPY_SOURCE_PATH})
|
||||
endif()
|
||||
|
||||
# move WIN dll to /bin and WIN .lib to /lib
|
||||
|
||||
if (WIN32)
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/include DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/libnode.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/v8_libplatform.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/libnode.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
|
||||
else ()
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/include DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/lib DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/share DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(COPY ${NODE_INSTALL_PATH}/node-install/bin DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
endif ()
|
|
@ -1,3 +0,0 @@
|
|||
Source: nvtt
|
||||
Version: 2.1.4
|
||||
Description: Texture processing tools with support for Direct3D 10 and 11 formats.
|
|
@ -1,39 +0,0 @@
|
|||
# Common Ambient Variables:
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# TARGET_TRIPLET is the current triplet (x86-windows, etc)
|
||||
# PORT is the current port name (zlib, etc)
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
#
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO JulianGro/nvidia-texture-tools
|
||||
REF 2a56c2321e5923b00c59a19f1b1528a72b2e0f6e
|
||||
SHA512 b41cc44dfe0c389b184271ad8d385dcb96c78591e9017bdb6a2325b1cbc3100bb23294e9478d12dbd8490ca44dac6363810a87650a2cdc63445dad339658cbd2
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
-DBUILD_TESTS=OFF
|
||||
-DBUILD_TOOLS=OFF
|
||||
-DUSE_CUDA=FALSE # Do not use CUDA even if available
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
endif()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
# Handle copyright
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/share/doc/nvtt/LICENSE)
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nvtt)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvtt/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvtt/copyright)
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/src/lib/OpenEXRCore/internal_dwa_simd.h b/src/lib/OpenEXRCore/internal_dwa_simd.h
|
||||
index 7b53501ac..ca69c9848 100644
|
||||
--- a/src/lib/OpenEXRCore/internal_dwa_simd.h
|
||||
+++ b/src/lib/OpenEXRCore/internal_dwa_simd.h
|
||||
@@ -18,7 +18,7 @@
|
||||
// aligned. Unaligned pointers may risk seg-faulting.
|
||||
//
|
||||
|
||||
-#if defined __SSE2__ || (_MSC_VER >= 1300 && !_M_CEE_PURE)
|
||||
+#if defined __SSE2__ || (_MSC_VER >= 1300 && (_M_IX86 || _M_X64) && !_M_CEE_PURE)
|
||||
# define IMF_HAVE_SSE2 1
|
||||
# include <emmintrin.h>
|
||||
# include <mmintrin.h>
|
|
@ -1,46 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO AcademySoftwareFoundation/openexr
|
||||
REF "v${VERSION}"
|
||||
SHA512 ec60e79341695452e05f50bbcc0d55e0ce00fbb64cdec01a83911189c8643eb28a8046b14ee4230e5f438f018f2f1d0714f691983474d7979befd199f3f34758
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-arm64-windows-build.patch # https://github.com/AcademySoftwareFoundation/openexr/pull/1447
|
||||
)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS OPTIONS
|
||||
FEATURES
|
||||
tools OPENEXR_BUILD_TOOLS
|
||||
tools OPENEXR_INSTALL_TOOLS
|
||||
)
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
${OPTIONS}
|
||||
-DBUILD_TESTING=OFF
|
||||
-DOPENEXR_INSTALL_EXAMPLES=OFF
|
||||
-DBUILD_DOCS=OFF
|
||||
OPTIONS_DEBUG
|
||||
-DOPENEXR_BUILD_TOOLS=OFF
|
||||
-DOPENEXR_INSTALL_TOOLS=OFF
|
||||
)
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/OpenEXR)
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
if(OPENEXR_INSTALL_TOOLS)
|
||||
vcpkg_copy_tools(
|
||||
TOOL_NAMES exrenvmap exrheader exrinfo exrmakepreview exrmaketiled exrmultipart exrmultiview exrstdattr exr2aces
|
||||
AUTO_CLEAN
|
||||
)
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE
|
||||
"${CURRENT_PACKAGES_DIR}/debug/include"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/share"
|
||||
)
|
||||
|
||||
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,4 +0,0 @@
|
|||
openexr provides CMake targets:
|
||||
|
||||
find_package(OpenEXR CONFIG REQUIRED)
|
||||
target_link_libraries(main PRIVATE OpenEXR::OpenEXR)
|
|
@ -1,25 +0,0 @@
|
|||
{
|
||||
"name": "openexr",
|
||||
"version": "3.1.8",
|
||||
"description": "OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications",
|
||||
"homepage": "https://www.openexr.com/",
|
||||
"license": "BSD-3-Clause",
|
||||
"supports": "!uwp",
|
||||
"dependencies": [
|
||||
"imath",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
},
|
||||
"zlib"
|
||||
],
|
||||
"features": {
|
||||
"tools": {
|
||||
"description": "Build tools"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
Source: openssl-android
|
||||
Version: 1.0.2p
|
||||
Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.
|
|
@ -1,125 +0,0 @@
|
|||
|
||||
LICENSE ISSUES
|
||||
==============
|
||||
|
||||
The OpenSSL toolkit stays under a double license, i.e. both the conditions of
|
||||
the OpenSSL License and the original SSLeay license apply to the toolkit.
|
||||
See below for the actual license texts.
|
||||
|
||||
OpenSSL License
|
||||
---------------
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* 3. All advertising materials mentioning features or use of this
|
||||
* software must display the following acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
|
||||
*
|
||||
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
|
||||
* endorse or promote products derived from this software without
|
||||
* prior written permission. For written permission, please contact
|
||||
* openssl-core@openssl.org.
|
||||
*
|
||||
* 5. Products derived from this software may not be called "OpenSSL"
|
||||
* nor may "OpenSSL" appear in their names without prior written
|
||||
* permission of the OpenSSL Project.
|
||||
*
|
||||
* 6. Redistributions of any form whatsoever must retain the following
|
||||
* acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit (http://www.openssl.org/)"
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
||||
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
||||
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
* ====================================================================
|
||||
*
|
||||
* This product includes cryptographic software written by Eric Young
|
||||
* (eay@cryptsoft.com). This product includes software written by Tim
|
||||
* Hudson (tjh@cryptsoft.com).
|
||||
*
|
||||
*/
|
||||
|
||||
Original SSLeay License
|
||||
-----------------------
|
||||
|
||||
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
|
||||
* All rights reserved.
|
||||
*
|
||||
* This package is an SSL implementation written
|
||||
* by Eric Young (eay@cryptsoft.com).
|
||||
* The implementation was written so as to conform with Netscapes SSL.
|
||||
*
|
||||
* This library is free for commercial and non-commercial use as long as
|
||||
* the following conditions are aheared to. The following conditions
|
||||
* apply to all code found in this distribution, be it the RC4, RSA,
|
||||
* lhash, DES, etc., code; not just the SSL code. The SSL documentation
|
||||
* included with this distribution is covered by the same copyright terms
|
||||
* except that the holder is Tim Hudson (tjh@cryptsoft.com).
|
||||
*
|
||||
* Copyright remains Eric Young's, and as such any Copyright notices in
|
||||
* the code are not to be removed.
|
||||
* If this package is used in a product, Eric Young should be given attribution
|
||||
* as the author of the parts of the library used.
|
||||
* This can be in the form of a textual message at program startup or
|
||||
* in documentation (online or textual) provided with the package.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* "This product includes cryptographic software written by
|
||||
* Eric Young (eay@cryptsoft.com)"
|
||||
* The word 'cryptographic' can be left out if the rouines from the library
|
||||
* being used are not cryptographic related :-).
|
||||
* 4. If you include any Windows specific code (or a derivative thereof) from
|
||||
* the apps directory (application code) you must include an acknowledgement:
|
||||
* "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* The licence and distribution terms for any publically available version or
|
||||
* derivative of this code cannot be changed. i.e. this code cannot simply be
|
||||
* copied and put under another distribution licence
|
||||
* [including the GNU Public Licence.]
|
||||
*/
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
set(OPENSSL_VERSION 1.1.0g)
|
||||
set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src)
|
||||
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||
|
||||
message("MASTER_COPY_SOURCE_PATH ${MASTER_COPY_SOURCE_PATH}")
|
||||
vcpkg_download_distfile(
|
||||
OPENSSL_SOURCE_ARCHIVE
|
||||
URLS "${EXTERNAL_BUILD_ASSETS}/dependencies/android/openssl-1.1.0g_armv8.tgz%3FversionId=AiiPjmgUZTgNj7YV1EEx2lL47aDvvvAW"
|
||||
SHA512 5d7bb6e5d3db2340449e2789bcd72da821f0e57483bac46cf06f735dffb5d73c1ca7cc53dd48f3b3979d0fe22b3ae61997c516fc0c4611af4b4b7f480e42b992
|
||||
FILENAME openssl-1.1.0g_armv8.tgz
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive(${OPENSSL_SOURCE_ARCHIVE})
|
||||
|
||||
file(COPY ${MASTER_COPY_SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(GLOB LIBS ${MASTER_COPY_SOURCE_PATH}/lib/*.a)
|
||||
file(COPY ${LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/libs)
|
||||
file(COPY ${LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/libs)
|
||||
file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/openssl-android RENAME copyright)
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
function(install_pc_file name pc_data)
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/openssl.pc.in" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/${name}.pc" @ONLY)
|
||||
endif()
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/openssl.pc.in" "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/${name}.pc" @ONLY)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
install_pc_file(openssl [[
|
||||
Name: OpenSSL
|
||||
Description: Secure Sockets Layer and cryptography libraries and tools
|
||||
Requires: libssl libcrypto
|
||||
]])
|
||||
|
||||
install_pc_file(libssl [[
|
||||
Name: OpenSSL-libssl
|
||||
Description: Secure Sockets Layer and cryptography libraries
|
||||
Libs: -L"${libdir}" -llibssl
|
||||
Requires: libcrypto
|
||||
Cflags: -I"${includedir}"
|
||||
]])
|
||||
|
||||
install_pc_file(libcrypto [[
|
||||
Name: OpenSSL-libcrypto
|
||||
Description: OpenSSL cryptography library
|
||||
Libs: -L"${libdir}" -llibcrypto
|
||||
Libs.private: -lcrypt32 -lws2_32
|
||||
Cflags: -I"${includedir}"
|
||||
]])
|
||||
|
||||
vcpkg_fixup_pkgconfig()
|
|
@ -1,6 +0,0 @@
|
|||
prefix=${pcfiledir}/../..
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
Version: @OPENSSL_VERSION@
|
||||
@pc_data@
|
|
@ -1,43 +0,0 @@
|
|||
if(EXISTS "${CURRENT_INSTALLED_DIR}/share/libressl/copyright"
|
||||
OR EXISTS "${CURRENT_INSTALLED_DIR}/share/boringssl/copyright")
|
||||
message(FATAL_ERROR "Can't build openssl if libressl/boringssl is installed. Please remove libressl/boringssl, and try install openssl again if you need it.")
|
||||
endif()
|
||||
|
||||
if (VCPKG_TARGET_IS_LINUX)
|
||||
message(WARNING
|
||||
[[openssl currently requires the following library from the system package manager:
|
||||
linux-headers
|
||||
It can be installed on alpine systems via apk add linux-headers.]]
|
||||
)
|
||||
endif()
|
||||
|
||||
set(OPENSSL_VERSION 3.0.5)
|
||||
|
||||
if (VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_UWP)
|
||||
set(OPENSSL_PATCHES "${CMAKE_CURRENT_LIST_DIR}/windows/flags.patch")
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO openssl/openssl
|
||||
REF openssl-${OPENSSL_VERSION}
|
||||
SHA512 e426f2d48dcd87ad938b246cea69988710198c3ed2f5bb9065aa9e74492161b056336f5b1f29be64e70dfd86a77808fe727ebb46eae10331c76f1ff08e341133
|
||||
PATCHES ${OPENSSL_PATCHES}
|
||||
)
|
||||
|
||||
vcpkg_find_acquire_program(PERL)
|
||||
get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
|
||||
vcpkg_add_to_path("${PERL_EXE_PATH}")
|
||||
|
||||
if(VCPKG_TARGET_IS_UWP)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/uwp/portfile.cmake")
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/install-pc-files.cmake")
|
||||
elseif(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/windows/portfile.cmake")
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/install-pc-files.cmake")
|
||||
else()
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/unix/portfile.cmake")
|
||||
endif()
|
||||
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
|
||||
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
|
@ -1,285 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.9)
|
||||
project(openssl C)
|
||||
|
||||
if(NOT SOURCE_PATH)
|
||||
message(FATAL_ERROR "Requires SOURCE_PATH")
|
||||
endif()
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
||||
set(PLATFORM linux-x86_64)
|
||||
else()
|
||||
set(PLATFORM linux-generic32)
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "iOS")
|
||||
if(VCPKG_TARGET_ARCHITECTURE MATCHES "arm64")
|
||||
set(PLATFORM ios64-xcrun)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE MATCHES "arm")
|
||||
set(PLATFORM ios-xcrun)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE MATCHES "x86" OR
|
||||
VCPKG_TARGET_ARCHITECTURE MATCHES "x64")
|
||||
set(PLATFORM iossimulator-xcrun)
|
||||
else()
|
||||
message(FATAL_ERROR "Unknown iOS target architecture: ${VCPKG_TARGET_ARCHITECTURE}")
|
||||
endif()
|
||||
# disable that makes linkage error (e.g. require stderr usage)
|
||||
list(APPEND DISABLES no-stdio no-ui no-asm)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
if(VCPKG_TARGET_ARCHITECTURE MATCHES "arm64")
|
||||
set(PLATFORM darwin64-arm64-cc)
|
||||
else()
|
||||
set(PLATFORM darwin64-x86_64-cc)
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
||||
set(PLATFORM BSD-generic64)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
|
||||
set(PLATFORM BSD-generic64)
|
||||
elseif(MINGW)
|
||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
||||
set(PLATFORM mingw64)
|
||||
else()
|
||||
set(PLATFORM mingw)
|
||||
endif()
|
||||
elseif(EMSCRIPTEN)
|
||||
set(MAKE $ENV{EMSDK}/upstream/emscripten/emmake)
|
||||
set(ENV{MAKE} $ENV{EMSDK}/upstream/emscripten/emmake)
|
||||
else()
|
||||
message(FATAL_ERROR "Unknown platform")
|
||||
endif()
|
||||
|
||||
get_filename_component(COMPILER_ROOT "${CMAKE_C_COMPILER}" DIRECTORY)
|
||||
|
||||
message("CMAKE_C_COMPILER=${CMAKE_C_COMPILER}")
|
||||
message("COMPILER_ROOT=${COMPILER_ROOT}")
|
||||
message("CMAKE_SYSROOT=${CMAKE_SYSROOT}")
|
||||
message("CMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}")
|
||||
message("CMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||
message("CMAKE_C_FLAGS=${CMAKE_C_FLAGS}")
|
||||
message("CMAKE_C_FLAGS_RELEASE=${CMAKE_C_FLAGS_RELEASE}")
|
||||
message("CMAKE_C_FLAGS_DEBUG=${CMAKE_C_FLAGS_DEBUG}")
|
||||
message("CMAKE_INCLUDE_SYSTEM_FLAG_C=${CMAKE_INCLUDE_SYSTEM_FLAG_C}")
|
||||
message("CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG=${CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG}")
|
||||
|
||||
string(TOUPPER "${CMAKE_BUILD_TYPE}" BUILD_TYPE)
|
||||
set(CFLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${BUILD_TYPE}}")
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "Clang")
|
||||
set(CFLAGS "${CFLAGS} -Wno-error=unused-command-line-argument")
|
||||
endif()
|
||||
if(CMAKE_C_COMPILER_TARGET AND CMAKE_C_COMPILE_OPTIONS_TARGET)
|
||||
set(CFLAGS "${CFLAGS} ${CMAKE_C_COMPILE_OPTIONS_TARGET}${CMAKE_C_COMPILER_TARGET}")
|
||||
endif()
|
||||
if(CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN AND CMAKE_C_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN)
|
||||
set(CFLAGS "${CFLAGS} ${CMAKE_C_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN}${CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN}")
|
||||
endif()
|
||||
if(CMAKE_SYSROOT AND CMAKE_C_COMPILE_OPTIONS_SYSROOT)
|
||||
set(CFLAGS "${CFLAGS} ${CMAKE_C_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}")
|
||||
elseif(CMAKE_OSX_SYSROOT AND CMAKE_C_COMPILE_OPTIONS_SYSROOT)
|
||||
set(CFLAGS "${CFLAGS} ${CMAKE_C_COMPILE_OPTIONS_SYSROOT}${CMAKE_OSX_SYSROOT}")
|
||||
endif()
|
||||
if (CMAKE_OSX_DEPLOYMENT_TARGET AND CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG)
|
||||
set(CFLAGS "${CFLAGS} ${CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG}${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||
elseif((CMAKE_SYSTEM_NAME STREQUAL "Darwin") AND (VCPKG_TARGET_ARCHITECTURE MATCHES "arm64"))
|
||||
set(CFLAGS "${CFLAGS} -mmacosx-version-min=11.0")
|
||||
endif()
|
||||
|
||||
string(REGEX REPLACE "^ " "" CFLAGS "${CFLAGS}")
|
||||
|
||||
if(CMAKE_HOST_WIN32)
|
||||
file(TO_NATIVE_PATH ENV_PATH "${COMPILER_ROOT};$ENV{PATH}")
|
||||
else()
|
||||
file(TO_NATIVE_PATH ENV_PATH "${COMPILER_ROOT}:$ENV{PATH}")
|
||||
endif()
|
||||
set(ENV{ANDROID_DEV} "${CMAKE_SYSROOT}/usr")
|
||||
|
||||
if(NOT IOS)
|
||||
set(ENV{CC} "${CMAKE_C_COMPILER}")
|
||||
endif()
|
||||
|
||||
message("ENV{ANDROID_DEV}=$ENV{ANDROID_DEV}")
|
||||
|
||||
get_filename_component(SOURCE_PATH_NAME "${SOURCE_PATH}" NAME)
|
||||
set(BUILDDIR "${CMAKE_CURRENT_BINARY_DIR}/${SOURCE_PATH_NAME}")
|
||||
|
||||
if(NOT EXISTS "${BUILDDIR}")
|
||||
file(COPY ${SOURCE_PATH} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
|
||||
endif()
|
||||
|
||||
get_filename_component(MSYS_BIN_DIR "${MAKE}" DIRECTORY)
|
||||
|
||||
if(BUILD_SHARED_LIBS)
|
||||
set(SHARED shared)
|
||||
file(STRINGS "${BUILDDIR}/VERSION.dat" SHLIB_VERSION
|
||||
REGEX "^SHLIB_VERSION=.*")
|
||||
string(REGEX REPLACE "^(SHLIB_VERSION=)(.*)$" "\\2"
|
||||
SHLIB_VERSION "${SHLIB_VERSION}")
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS")
|
||||
set(LIB_EXT dylib)
|
||||
set(LIB_EXTS ${SHLIB_VERSION}.${LIB_EXT})
|
||||
elseif(MINGW)
|
||||
string(REPLACE "." "_" SHLIB_VERSION "${SHLIB_VERSION}")
|
||||
set(BIN_EXT dll)
|
||||
set(LIB_EXT dll.a)
|
||||
else()
|
||||
set(LIB_EXT so)
|
||||
set(LIB_EXTS ${LIB_EXT}.${SHLIB_VERSION})
|
||||
endif()
|
||||
list(APPEND BIN_EXTS ${BIN_EXT})
|
||||
list(APPEND LIB_EXTS ${LIB_EXT})
|
||||
else()
|
||||
set(SHARED no-shared no-module)
|
||||
set(LIB_EXTS a)
|
||||
endif()
|
||||
set(INSTALL_PKG_CONFIGS "${BUILDDIR}/openssl.pc")
|
||||
foreach(lib ssl crypto)
|
||||
foreach(ext ${LIB_EXTS})
|
||||
list(APPEND INSTALL_LIBS "${BUILDDIR}/lib${lib}.${ext}")
|
||||
list(APPEND INSTALL_PKG_CONFIGS "${BUILDDIR}/lib${lib}.pc")
|
||||
endforeach()
|
||||
foreach(ext ${BIN_EXTS})
|
||||
# This might be wrong for targets which don't follow this naming scheme, but I'm not aware of any
|
||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
||||
list(APPEND INSTALL_BINS "${BUILDDIR}/lib${lib}-${SHLIB_VERSION}-x64.${ext}")
|
||||
else()
|
||||
list(APPEND INSTALL_BINS "${BUILDDIR}/lib${lib}-${SHLIB_VERSION}.${ext}")
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
if(CMAKE_HOST_WIN32)
|
||||
set(ENV_COMMAND set)
|
||||
set(PATH_VAR ";%PATH%")
|
||||
else()
|
||||
set(ENV_COMMAND export)
|
||||
set(PATH_VAR ":$ENV{PATH}")
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${BUILDDIR}/Makefile"
|
||||
COMMAND ${ENV_COMMAND} "PATH=${MSYS_BIN_DIR}${PATH_VAR}"
|
||||
VERBATIM
|
||||
WORKING_DIRECTORY "${BUILDDIR}"
|
||||
)
|
||||
|
||||
if(NOT IOS)
|
||||
add_custom_command(
|
||||
OUTPUT "${BUILDDIR}/Makefile"
|
||||
COMMAND ${ENV_COMMAND} CC=${CMAKE_C_COMPILER}
|
||||
COMMAND ${ENV_COMMAND} AR=${CMAKE_AR}
|
||||
COMMAND ${ENV_COMMAND} LD=${CMAKE_LINKER}
|
||||
COMMAND ${ENV_COMMAND} RANLIB=${CMAKE_RANLIB}
|
||||
COMMAND ${ENV_COMMAND} MAKE=${MAKE}
|
||||
COMMAND ${ENV_COMMAND} MAKEDEPPROG=${CMAKE_C_COMPILER}
|
||||
COMMAND ${ENV_COMMAND} WINDRES=${CMAKE_RC_COMPILER}
|
||||
VERBATIM
|
||||
APPEND
|
||||
)
|
||||
if(EMSCRIPTEN)
|
||||
list(APPEND DISABLES
|
||||
threads
|
||||
no-engine
|
||||
no-dso
|
||||
no-asm
|
||||
no-shared
|
||||
no-sse2
|
||||
no-srtp
|
||||
)
|
||||
else()
|
||||
list(APPEND DISABLES
|
||||
enable-static-engine
|
||||
no-zlib
|
||||
no-ssl2
|
||||
no-idea
|
||||
no-cast
|
||||
no-seed
|
||||
no-md2
|
||||
no-tests)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(EMSCRIPTEN)
|
||||
add_custom_command(
|
||||
OUTPUT "${BUILDDIR}/Makefile"
|
||||
COMMAND "$ENV{EMSDK}/upstream/emscripten/emconfigure" ./config
|
||||
${SHARED}
|
||||
${DISABLES}
|
||||
"--prefix=${CMAKE_INSTALL_PREFIX}"
|
||||
"--openssldir=/etc/ssl"
|
||||
"--cross-compile-prefix=\"/\""
|
||||
VERBATIM
|
||||
APPEND
|
||||
)
|
||||
|
||||
add_custom_target(build_libs ALL
|
||||
COMMAND ${ENV_COMMAND} "PATH=${MSYS_BIN_DIR}${PATH_VAR}"
|
||||
COMMAND "${CMAKE_COMMAND}" -E touch "${BUILDDIR}/krb5.h"
|
||||
COMMAND "${MAKE}" make build_libs
|
||||
VERBATIM
|
||||
WORKING_DIRECTORY "${BUILDDIR}"
|
||||
DEPENDS "${BUILDDIR}/Makefile"
|
||||
BYPRODUCTS ${INSTALL_LIBS}
|
||||
)
|
||||
else()
|
||||
add_custom_command(
|
||||
OUTPUT "${BUILDDIR}/Makefile"
|
||||
COMMAND "${PERL}" Configure
|
||||
${SHARED}
|
||||
${DISABLES}
|
||||
${PLATFORM}
|
||||
"--prefix=${CMAKE_INSTALL_PREFIX}"
|
||||
"--openssldir=/etc/ssl"
|
||||
${CFLAGS}
|
||||
VERBATIM
|
||||
APPEND
|
||||
)
|
||||
|
||||
add_custom_target(build_libs ALL
|
||||
COMMAND ${ENV_COMMAND} "PATH=${MSYS_BIN_DIR}${PATH_VAR}"
|
||||
COMMAND "${CMAKE_COMMAND}" -E touch "${BUILDDIR}/krb5.h"
|
||||
COMMAND "${MAKE}" -j ${VCPKG_CONCURRENCY} build_libs
|
||||
VERBATIM
|
||||
WORKING_DIRECTORY "${BUILDDIR}"
|
||||
DEPENDS "${BUILDDIR}/Makefile"
|
||||
BYPRODUCTS ${INSTALL_LIBS}
|
||||
)
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${BUILDDIR}/Makefile"
|
||||
COMMAND "${CMAKE_COMMAND}" "-DDIR=${BUILDDIR}" -P "${CMAKE_CURRENT_LIST_DIR}/remove-deps.cmake"
|
||||
VERBATIM
|
||||
APPEND
|
||||
)
|
||||
|
||||
if((CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS") AND BUILD_SHARED_LIBS)
|
||||
if(DEFINED CMAKE_INSTALL_NAME_DIR)
|
||||
set(ID_PREFIX "${CMAKE_INSTALL_NAME_DIR}")
|
||||
else()
|
||||
set(ID_PREFIX "@rpath")
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
TARGET build_libs
|
||||
COMMAND /usr/bin/install_name_tool -id "${ID_PREFIX}/libssl.${SHLIB_VERSION}.dylib"
|
||||
"${BUILDDIR}/libssl.${SHLIB_VERSION}.dylib"
|
||||
COMMAND /usr/bin/install_name_tool -id "${ID_PREFIX}/libcrypto.${SHLIB_VERSION}.dylib"
|
||||
"${BUILDDIR}/libcrypto.${SHLIB_VERSION}.dylib"
|
||||
COMMAND /usr/bin/install_name_tool -change "${CMAKE_INSTALL_PREFIX}/lib/libcrypto.${SHLIB_VERSION}.dylib"
|
||||
"${ID_PREFIX}/libcrypto.${SHLIB_VERSION}.dylib"
|
||||
"${BUILDDIR}/libssl.${SHLIB_VERSION}.dylib"
|
||||
VERBATIM
|
||||
)
|
||||
endif()
|
||||
|
||||
install(
|
||||
FILES ${INSTALL_LIBS}
|
||||
DESTINATION lib
|
||||
)
|
||||
install(
|
||||
FILES ${INSTALL_BINS}
|
||||
DESTINATION bin
|
||||
)
|
||||
install(
|
||||
FILES ${INSTALL_PKG_CONFIGS}
|
||||
DESTINATION lib/pkgconfig
|
||||
)
|
|
@ -1,32 +0,0 @@
|
|||
if(CMAKE_HOST_WIN32)
|
||||
vcpkg_acquire_msys(MSYS_ROOT PACKAGES make perl)
|
||||
set(MAKE "${MSYS_ROOT}/usr/bin/make.exe")
|
||||
set(PERL "${MSYS_ROOT}/usr/bin/perl.exe")
|
||||
else()
|
||||
find_program(MAKE make)
|
||||
if(NOT MAKE)
|
||||
message(FATAL_ERROR "Could not find make. Please install it through your package manager.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${CMAKE_CURRENT_LIST_DIR}"
|
||||
OPTIONS
|
||||
-DSOURCE_PATH=${SOURCE_PATH}
|
||||
-DPERL=${PERL}
|
||||
-DMAKE=${MAKE}
|
||||
-DVCPKG_CONCURRENCY=${VCPKG_CONCURRENCY}
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
file(GLOB HEADERS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/include/openssl/*.h")
|
||||
set(RESOLVED_HEADERS)
|
||||
foreach(HEADER ${HEADERS})
|
||||
get_filename_component(X "${HEADER}" REALPATH)
|
||||
list(APPEND RESOLVED_HEADERS "${X}")
|
||||
endforeach()
|
||||
|
||||
file(INSTALL ${RESOLVED_HEADERS} DESTINATION "${CURRENT_PACKAGES_DIR}/include/openssl")
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,7 +0,0 @@
|
|||
file(GLOB_RECURSE MAKEFILES ${DIR}/*/Makefile)
|
||||
foreach(MAKEFILE ${MAKEFILES})
|
||||
message("removing deps from ${MAKEFILE}")
|
||||
file(READ "${MAKEFILE}" _contents)
|
||||
string(REGEX REPLACE "\n# DO NOT DELETE THIS LINE.*" "" _contents "${_contents}")
|
||||
file(WRITE "${MAKEFILE}" "${_contents}")
|
||||
endforeach()
|
|
@ -1,4 +0,0 @@
|
|||
The package openssl is compatible with built-in CMake targets:
|
||||
|
||||
find_package(OpenSSL REQUIRED)
|
||||
target_link_libraries(main PRIVATE OpenSSL::SSL OpenSSL::Crypto)
|
|
@ -1,16 +0,0 @@
|
|||
set build=%1
|
||||
|
||||
perl Configure no-asm no-hw no-dso VC-WINUNIVERSAL -FS -FIWindows.h
|
||||
|
||||
for /D %%f in ("%WindowsSdkDir%References\%WindowsSDKLibVersion%Windows.Foundation.FoundationContract\*") do set LibPath=%LibPath%;%%f\
|
||||
for /D %%f in ("%WindowsSdkDir%References\%WindowsSDKLibVersion%Windows.Foundation.UniversalApiContract\*") do set LibPath=%LibPath%;%%f\
|
||||
for /D %%f in ("%WindowsSdkDir%References\Windows.Foundation.FoundationContract\*") do set LibPath=%LibPath%;%%f\
|
||||
for /D %%f in ("%WindowsSdkDir%References\Windows.Foundation.UniversalApiContract\*") do set LibPath=%LibPath%;%%f\
|
||||
|
||||
call ms\do_winuniversal.bat
|
||||
|
||||
mkdir inc32\openssl
|
||||
|
||||
jom -j %NUMBER_OF_PROCESSORS% -k -f ms\ntdll.mak
|
||||
REM due to a race condition in the build, we need to have a second single-threaded pass.
|
||||
nmake -f ms\ntdll.mak
|
|
@ -1,155 +0,0 @@
|
|||
vcpkg_find_acquire_program(JOM)
|
||||
get_filename_component(JOM_EXE_PATH ${JOM} DIRECTORY)
|
||||
vcpkg_add_to_path("${PERL_EXE_PATH}")
|
||||
|
||||
set(OPENSSL_SHARED no-shared)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
set(OPENSSL_SHARED shared)
|
||||
endif()
|
||||
|
||||
vcpkg_find_acquire_program(NASM)
|
||||
get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY)
|
||||
vcpkg_add_to_path(PREPEND "${NASM_EXE_PATH}")
|
||||
|
||||
set(CONFIGURE_COMMAND ${PERL} Configure
|
||||
enable-static-engine
|
||||
enable-capieng
|
||||
no-unit-test
|
||||
no-ssl2
|
||||
no-asm
|
||||
no-uplink
|
||||
no-tests
|
||||
-utf-8
|
||||
${OPENSSL_SHARED}
|
||||
)
|
||||
|
||||
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
set(OPENSSL_ARCH VC-WIN32-UWP)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
set(OPENSSL_ARCH VC-WIN64A-UWP)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
||||
set(OPENSSL_ARCH VC-WIN32-ARM-UWP)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
||||
set(OPENSSL_ARCH VC-WIN64-ARM-UWP)
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported target architecture: ${VCPKG_TARGET_ARCHITECTURE}")
|
||||
endif()
|
||||
|
||||
set(OPENSSL_MAKEFILE "makefile")
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
|
||||
# Copy openssl sources.
|
||||
message(STATUS "Copying openssl release source files...")
|
||||
file(GLOB OPENSSL_SOURCE_FILES "${SOURCE_PATH}/*")
|
||||
foreach(SOURCE_FILE ${OPENSSL_SOURCE_FILES})
|
||||
file(COPY ${SOURCE_FILE} DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel")
|
||||
endforeach()
|
||||
message(STATUS "Copying openssl release source files... done")
|
||||
set(SOURCE_PATH_RELEASE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel")
|
||||
|
||||
set(OPENSSLDIR_RELEASE "${CURRENT_PACKAGES_DIR}")
|
||||
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-rel")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${CONFIGURE_COMMAND} ${OPENSSL_ARCH} "--prefix=${OPENSSLDIR_RELEASE}" "--openssldir=${OPENSSLDIR_RELEASE}" -FS
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_RELEASE}"
|
||||
LOGNAME configure-perl-${TARGET_TRIPLET}-${VCPKG_BUILD_TYPE}-rel
|
||||
)
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-rel done")
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-rel")
|
||||
# Openssl's buildsystem has a race condition which will cause JOM to fail at some point.
|
||||
# This is ok; we just do as much work as we can in parallel first, then follow up with a single-threaded build.
|
||||
make_directory("${SOURCE_PATH_RELEASE}/inc32/openssl")
|
||||
execute_process(
|
||||
COMMAND "${JOM}" -k -j ${VCPKG_CONCURRENCY} -f "${OPENSSL_MAKEFILE}" build_libs
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_RELEASE}"
|
||||
OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-out.log"
|
||||
ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-err.log"
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND nmake -f "${OPENSSL_MAKEFILE}" install_dev
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_RELEASE}"
|
||||
LOGNAME build-${TARGET_TRIPLET}-rel-1)
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-rel done")
|
||||
endif()
|
||||
|
||||
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
# Copy openssl sources.
|
||||
message(STATUS "Copying openssl debug source files...")
|
||||
file(GLOB OPENSSL_SOURCE_FILES ${SOURCE_PATH}/*)
|
||||
foreach(SOURCE_FILE ${OPENSSL_SOURCE_FILES})
|
||||
file(COPY "${SOURCE_FILE}" DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
endforeach()
|
||||
message(STATUS "Copying openssl debug source files... done")
|
||||
set(SOURCE_PATH_DEBUG "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
|
||||
set(OPENSSLDIR_DEBUG "${CURRENT_PACKAGES_DIR}/debug")
|
||||
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-dbg")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${CONFIGURE_COMMAND} debug-${OPENSSL_ARCH} "--prefix=${OPENSSLDIR_DEBUG}" "--openssldir=${OPENSSLDIR_DEBUG}" -FS
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_DEBUG}"
|
||||
LOGNAME configure-perl-${TARGET_TRIPLET}-${VCPKG_BUILD_TYPE}-dbg
|
||||
)
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-dbg done")
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-dbg")
|
||||
make_directory("${SOURCE_PATH_DEBUG}/inc32/openssl")
|
||||
execute_process(
|
||||
COMMAND "${JOM}" -k -j ${VCPKG_CONCURRENCY} -f "${OPENSSL_MAKEFILE}" build_libs
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_DEBUG}"
|
||||
OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-out.log"
|
||||
ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-err.log"
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND nmake -f "${OPENSSL_MAKEFILE}" install_dev
|
||||
WORKING_DIRECTORY "${SOURCE_PATH_DEBUG}"
|
||||
LOGNAME build-${TARGET_TRIPLET}-dbg-1)
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-dbg done")
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/certs")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/private")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/engines-1_1")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/certs")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/engines-1_1")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/private")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
file(REMOVE
|
||||
"${CURRENT_PACKAGES_DIR}/bin/openssl.exe"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/bin/openssl.exe"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/openssl.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/openssl.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/ct_log_list.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/ct_log_list.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/openssl.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/ct_log_list.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/ct_log_list.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/openssl.cnf.dist"
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
# They should be empty, only the exes deleted above were in these directories
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin/")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/")
|
||||
endif()
|
||||
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" _contents)
|
||||
string(REPLACE "<winsock.h>" "<winsock2.h>" _contents "${_contents}")
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" "${_contents}")
|
||||
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" _contents)
|
||||
string(REPLACE "# include <windows.h>" "#ifndef _WINSOCKAPI_\n#define _WINSOCKAPI_\n#endif\n# include <windows.h>" _contents "${_contents}")
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" "${_contents}")
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,82 +0,0 @@
|
|||
cmake_policy(PUSH)
|
||||
cmake_policy(SET CMP0012 NEW)
|
||||
cmake_policy(SET CMP0054 NEW)
|
||||
cmake_policy(SET CMP0057 NEW)
|
||||
|
||||
set(OPENSSL_VERSION_MAJOR 3)
|
||||
set(OPENSSL_VERSION_MINOR 0)
|
||||
set(OPENSSL_VERSION_FIX 5)
|
||||
|
||||
if(OPENSSL_USE_STATIC_LIBS)
|
||||
if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "dynamic")
|
||||
message(WARNING "OPENSSL_USE_STATIC_LIBS is set, but vcpkg port openssl was built with dynamic linkage")
|
||||
endif()
|
||||
set(OPENSSL_USE_STATIC_LIBS_BAK "${OPENSSL_USE_STATIC_LIBS}")
|
||||
set(OPENSSL_USE_STATIC_LIBS FALSE)
|
||||
endif()
|
||||
|
||||
if(DEFINED OPENSSL_ROOT_DIR)
|
||||
set(OPENSSL_ROOT_DIR_BAK "${OPENSSL_ROOT_DIR}")
|
||||
endif()
|
||||
get_filename_component(OPENSSL_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}" DIRECTORY)
|
||||
get_filename_component(OPENSSL_ROOT_DIR "${OPENSSL_ROOT_DIR}" DIRECTORY)
|
||||
find_path(OPENSSL_INCLUDE_DIR NAMES openssl/ssl.h PATH "${OPENSSL_ROOT_DIR}/include" NO_DEFAULT_PATH)
|
||||
if(MSVC)
|
||||
find_library(LIB_EAY_DEBUG NAMES libcrypto PATHS "${OPENSSL_ROOT_DIR}/debug/lib" NO_DEFAULT_PATH)
|
||||
find_library(LIB_EAY_RELEASE NAMES libcrypto PATHS "${OPENSSL_ROOT_DIR}/lib" NO_DEFAULT_PATH)
|
||||
find_library(SSL_EAY_DEBUG NAMES libssl PATHS "${OPENSSL_ROOT_DIR}/debug/lib" NO_DEFAULT_PATH)
|
||||
find_library(SSL_EAY_RELEASE NAMES libssl PATHS "${OPENSSL_ROOT_DIR}/lib" NO_DEFAULT_PATH)
|
||||
elseif(WIN32)
|
||||
find_library(LIB_EAY NAMES libcrypto crypto NAMES_PER_DIR)
|
||||
find_library(SSL_EAY NAMES libssl ssl NAMES_PER_DIR)
|
||||
else()
|
||||
find_library(OPENSSL_CRYPTO_LIBRARY NAMES crypto)
|
||||
find_library(OPENSSL_SSL_LIBRARY NAMES ssl)
|
||||
endif()
|
||||
|
||||
_find_package(${ARGS})
|
||||
|
||||
unset(OPENSSL_ROOT_DIR)
|
||||
if(DEFINED OPENSSL_ROOT_DIR_BAK)
|
||||
set(OPENSSL_ROOT_DIR "${OPENSSL_ROOT_DIR_BAK}")
|
||||
unset(OPENSSL_ROOT_DIR_BAK)
|
||||
endif()
|
||||
|
||||
if(DEFINED OPENSSL_USE_STATIC_LIBS_BAK)
|
||||
set(OPENSSL_USE_STATIC_LIBS "${OPENSSL_USE_STATIC_LIBS_BAK}")
|
||||
unset(OPENSSL_USE_STATIC_LIBS_BAK)
|
||||
endif()
|
||||
|
||||
if(OPENSSL_FOUND AND "@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
|
||||
if(WIN32)
|
||||
list(APPEND OPENSSL_LIBRARIES crypt32 ws2_32)
|
||||
if(TARGET OpenSSL::Crypto)
|
||||
set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "crypt32;ws2_32")
|
||||
endif()
|
||||
if(TARGET OpenSSL::SSL)
|
||||
set_property(TARGET OpenSSL::SSL APPEND PROPERTY INTERFACE_LINK_LIBRARIES "crypt32;ws2_32")
|
||||
endif()
|
||||
else()
|
||||
find_library(OPENSSL_DL_LIBRARY NAMES dl)
|
||||
if(OPENSSL_DL_LIBRARY)
|
||||
list(APPEND OPENSSL_LIBRARIES "dl")
|
||||
if(TARGET OpenSSL::Crypto)
|
||||
set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "dl")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("REQUIRED" IN_LIST ARGS)
|
||||
find_package(Threads REQUIRED)
|
||||
else()
|
||||
find_package(Threads)
|
||||
endif()
|
||||
list(APPEND OPENSSL_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
||||
if(TARGET OpenSSL::Crypto)
|
||||
set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "Threads::Threads")
|
||||
endif()
|
||||
if(TARGET OpenSSL::SSL)
|
||||
set_property(TARGET OpenSSL::SSL APPEND PROPERTY INTERFACE_LINK_LIBRARIES "Threads::Threads")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
cmake_policy(POP)
|
|
@ -1,22 +0,0 @@
|
|||
{
|
||||
"name": "openssl",
|
||||
"version": "3.0.5",
|
||||
"description": "OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.",
|
||||
"homepage": "https://www.openssl.org",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-get-vars",
|
||||
"host": true,
|
||||
"platform": "windows & !mingw & !uwp"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
|
||||
index 66bc81d..2364633 100644
|
||||
--- a/Configurations/10-main.conf
|
||||
+++ b/Configurations/10-main.conf
|
||||
@@ -1302,7 +1302,7 @@ my %targets = (
|
||||
inherit_from => [ "BASE_Windows" ],
|
||||
template => 1,
|
||||
CC => "cl",
|
||||
- CPP => '"$(CC)" /EP /C',
|
||||
+ CPP => '$(CC) /EP /C',
|
||||
CFLAGS => "/W3 /wd4090 /nologo",
|
||||
coutflag => "/Fo",
|
||||
LD => "link",
|
||||
diff --git a/Configure b/Configure
|
||||
index 8b234f6..e031768 100644
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -680,7 +680,7 @@ my $list_separator_re =
|
||||
# (we supported those before the change to "make variable" support.
|
||||
my %user = (
|
||||
AR => env('AR'),
|
||||
- ARFLAGS => [],
|
||||
+ ARFLAGS => [ env('ARFLAGS') || () ],
|
||||
AS => undef,
|
||||
ASFLAGS => [],
|
||||
CC => env('CC'),
|
||||
@@ -693,7 +693,7 @@ my %user = (
|
||||
CPPINCLUDES => [], # Alternative for -I
|
||||
CROSS_COMPILE => env('CROSS_COMPILE'),
|
||||
HASHBANGPERL=> env('HASHBANGPERL') || env('PERL'),
|
||||
- LD => undef,
|
||||
+ LD => env('LD'),
|
||||
LDFLAGS => [ env('LDFLAGS') || () ], # -L, -Wl,
|
||||
LDLIBS => [ env('LDLIBS') || () ], # -l
|
||||
MT => undef,
|
|
@ -1,207 +0,0 @@
|
|||
vcpkg_find_acquire_program(NASM)
|
||||
get_filename_component(NASM_EXE_PATH "${NASM}" DIRECTORY)
|
||||
vcpkg_add_to_path(PREPEND "${NASM_EXE_PATH}")
|
||||
|
||||
vcpkg_find_acquire_program(JOM)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
set(OPENSSL_SHARED shared)
|
||||
else()
|
||||
set(OPENSSL_SHARED no-shared no-module)
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_get_vars(cmake_vars_file)
|
||||
include("${cmake_vars_file}")
|
||||
|
||||
set(ENV{CC} "${VCPKG_DETECTED_CMAKE_C_COMPILER}")
|
||||
set(ENV{CXX} "${VCPKG_DETECTED_CMAKE_CXX_COMPILER}")
|
||||
set(ENV{AR} "${VCPKG_DETECTED_CMAKE_AR}")
|
||||
set(ENV{LD} "${VCPKG_DETECTED_CMAKE_LINKER}")
|
||||
|
||||
# OpenSSL's buildsystem hardcodes certain PDB manipulations, so we cannot use Z7
|
||||
string(REGEX REPLACE "(^| )-Z7($| )" " " VCPKG_COMBINED_C_FLAGS_RELEASE "${VCPKG_COMBINED_C_FLAGS_RELEASE}")
|
||||
string(REGEX REPLACE "(^| )-Z7($| )" " " VCPKG_COMBINED_C_FLAGS_DEBUG "${VCPKG_COMBINED_C_FLAGS_DEBUG}")
|
||||
string(REGEX REPLACE "(^| )-Z7($| )" " " VCPKG_COMBINED_CXX_FLAGS_RELEASE "${VCPKG_COMBINED_CXX_FLAGS_RELEASE}")
|
||||
string(REGEX REPLACE "(^| )-Z7($| )" " " VCPKG_COMBINED_CXX_FLAGS_DEBUG "${VCPKG_COMBINED_CXX_FLAGS_DEBUG}")
|
||||
|
||||
set(CONFIGURE_OPTIONS
|
||||
enable-static-engine
|
||||
enable-capieng
|
||||
no-ssl2
|
||||
no-tests
|
||||
${OPENSSL_SHARED}
|
||||
)
|
||||
|
||||
if(DEFINED OPENSSL_USE_NOPINSHARED)
|
||||
set(CONFIGURE_OPTIONS ${CONFIGURE_OPTIONS} no-pinshared)
|
||||
endif()
|
||||
|
||||
if(OPENSSL_NO_AUTOLOAD_CONFIG)
|
||||
set(CONFIGURE_OPTIONS ${CONFIGURE_OPTIONS} no-autoload-config)
|
||||
endif()
|
||||
|
||||
set(CONFIGURE_COMMAND "${PERL}" Configure ${CONFIGURE_OPTIONS})
|
||||
|
||||
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
set(OPENSSL_ARCH VC-WIN32)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
set(OPENSSL_ARCH VC-WIN64A)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
||||
set(OPENSSL_ARCH VC-WIN32-ARM)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
||||
set(OPENSSL_ARCH VC-WIN64-ARM)
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported target architecture: ${VCPKG_TARGET_ARCHITECTURE}")
|
||||
endif()
|
||||
|
||||
set(OPENSSL_MAKEFILE "makefile")
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel"
|
||||
"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
# Copy openssl sources.
|
||||
message(STATUS "Copying openssl release source files...")
|
||||
file(GLOB OPENSSL_SOURCE_FILES ${SOURCE_PATH}/*)
|
||||
foreach(SOURCE_FILE ${OPENSSL_SOURCE_FILES})
|
||||
file(COPY ${SOURCE_FILE} DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel")
|
||||
endforeach()
|
||||
message(STATUS "Copying openssl release source files... done")
|
||||
set(SOURCE_PATH_RELEASE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel")
|
||||
|
||||
set(OPENSSLDIR_RELEASE ${CURRENT_PACKAGES_DIR})
|
||||
|
||||
set(ENV{CFLAGS} "${VCPKG_COMBINED_C_FLAGS_RELEASE}")
|
||||
set(ENV{CXXFLAGS} "${VCPKG_COMBINED_CXX_FLAGS_RELEASE}")
|
||||
set(ENV{LDFLAGS} "${VCPKG_COMBINED_SHARED_LINKER_FLAGS_RELEASE}")
|
||||
set(ENV{ARFLAGS} "${VCPKG_COMBINED_STATIC_LINKER_FLAGS_RELEASE}")
|
||||
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-rel")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${CONFIGURE_COMMAND} ${OPENSSL_ARCH} "--prefix=${OPENSSLDIR_RELEASE}" "--openssldir=${OPENSSLDIR_RELEASE}" -FS
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_RELEASE}
|
||||
LOGNAME configure-perl-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-rel done")
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-rel")
|
||||
# Openssl's buildsystem has a race condition which will cause JOM to fail at some point.
|
||||
# This is ok; we just do as much work as we can in parallel first, then follow up with a single-threaded build.
|
||||
make_directory(${SOURCE_PATH_RELEASE}/inc32/openssl)
|
||||
execute_process(
|
||||
COMMAND "${JOM}" -k -j "${VCPKG_CONCURRENCY}" -f "${OPENSSL_MAKEFILE}"
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_RELEASE}
|
||||
OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-out.log"
|
||||
ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-err.log"
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "${JOM}" -j 1 -f "${OPENSSL_MAKEFILE}" install_sw install_ssldirs
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_RELEASE}
|
||||
LOGNAME build-${TARGET_TRIPLET}-rel-1)
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-rel done")
|
||||
endif()
|
||||
|
||||
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
# Copy openssl sources.
|
||||
message(STATUS "Copying openssl debug source files...")
|
||||
file(GLOB OPENSSL_SOURCE_FILES ${SOURCE_PATH}/*)
|
||||
foreach(SOURCE_FILE ${OPENSSL_SOURCE_FILES})
|
||||
file(COPY ${SOURCE_FILE} DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
endforeach()
|
||||
message(STATUS "Copying openssl debug source files... done")
|
||||
set(SOURCE_PATH_DEBUG "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg")
|
||||
|
||||
set(OPENSSLDIR_DEBUG ${CURRENT_PACKAGES_DIR}/debug)
|
||||
|
||||
set(ENV{CFLAGS} "${VCPKG_COMBINED_C_FLAGS_DEBUG}")
|
||||
set(ENV{CXXFLAGS} "${VCPKG_COMBINED_CXX_FLAGS_DEBUG}")
|
||||
set(ENV{LDFLAGS} "${VCPKG_COMBINED_SHARED_LINKER_FLAGS_DEBUG}")
|
||||
set(ENV{ARFLAGS} "${VCPKG_COMBINED_STATIC_LINKER_FLAGS_DEBUG}")
|
||||
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-dbg")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${CONFIGURE_COMMAND} debug-${OPENSSL_ARCH} "--prefix=${OPENSSLDIR_DEBUG}" "--openssldir=${OPENSSLDIR_DEBUG}" -FS
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_DEBUG}
|
||||
LOGNAME configure-perl-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
message(STATUS "Configure ${TARGET_TRIPLET}-dbg done")
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-dbg")
|
||||
make_directory("${SOURCE_PATH_DEBUG}/inc32/openssl")
|
||||
execute_process(
|
||||
COMMAND "${JOM}" -k -j "${VCPKG_CONCURRENCY}" -f "${OPENSSL_MAKEFILE}"
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_DEBUG}
|
||||
OUTPUT_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-out.log"
|
||||
ERROR_FILE "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-err.log"
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "${JOM}" -j 1 -f "${OPENSSL_MAKEFILE}" install_sw install_ssldirs
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_DEBUG}
|
||||
LOGNAME build-${TARGET_TRIPLET}-dbg-1)
|
||||
|
||||
message(STATUS "Build ${TARGET_TRIPLET}-dbg done")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules/legacy.pdb" "${CURRENT_PACKAGES_DIR}/debug/bin/legacy.pdb")
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ossl-modules/legacy.pdb" "${CURRENT_PACKAGES_DIR}/bin/legacy.pdb")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/certs")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/private")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/engines-1_1")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/engines-3")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/certs")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/engines-1_1")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/engines-3")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/private")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
if(NOT VCPKG_BUILD_TYPE)
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules/legacy.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/legacy.dll")
|
||||
endif()
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ossl-modules/legacy.dll" "${CURRENT_PACKAGES_DIR}/bin/legacy.dll")
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/ossl-modules")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/ossl-modules")
|
||||
|
||||
file(REMOVE
|
||||
"${CURRENT_PACKAGES_DIR}/ct_log_list.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/ct_log_list.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/openssl.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/bin/openssl.exe"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/ct_log_list.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/ct_log_list.cnf.dist"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/openssl.cnf"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/openssl.cnf.dist"
|
||||
)
|
||||
|
||||
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/openssl/")
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/bin/openssl.exe" "${CURRENT_PACKAGES_DIR}/tools/openssl/openssl.exe")
|
||||
file(RENAME "${CURRENT_PACKAGES_DIR}/openssl.cnf" "${CURRENT_PACKAGES_DIR}/tools/openssl/openssl.cnf")
|
||||
|
||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/openssl")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
# They should be empty, only the exes deleted above were in these directories
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin/")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/")
|
||||
endif()
|
||||
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h"
|
||||
"<winsock.h>"
|
||||
"<winsock2.h>"
|
||||
)
|
||||
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/openssl/rand.h"
|
||||
"# include <windows.h>"
|
||||
"#ifndef _WINSOCKAPI_\n#define _WINSOCKAPI_\n#endif\n# include <windows.h>"
|
||||
)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: openvr
|
||||
Version: 1.16.8
|
||||
Description: an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting.
|
|
@ -1,70 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO ValveSoftware/openvr
|
||||
REF v1.16.8
|
||||
SHA512 bc65fd2fc2aab870c7fee98f5211b7d88cd30511ce5b23fa2ac05454969b6ee56b42e422e44a16a833b317bb1328e0ed986c926e3d78abddf5fd5788ff74de91
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||
|
||||
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
if(WIN32)
|
||||
set(ARCH_PATH "win64")
|
||||
else()
|
||||
set(ARCH_PATH "linux64")
|
||||
endif()
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
if(WIN32)
|
||||
set(ARCH_PATH "win32")
|
||||
else()
|
||||
set(ARCH_PATH "linux32")
|
||||
endif()
|
||||
else()
|
||||
message(FATAL_ERROR "Package only supports x64 and x86 Windows and Linux.")
|
||||
endif()
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME AND NOT (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux"))
|
||||
message(FATAL_ERROR "Package only supports Windows or Linux desktop.")
|
||||
endif()
|
||||
|
||||
file(MAKE_DIRECTORY
|
||||
${CURRENT_PACKAGES_DIR}/lib
|
||||
${CURRENT_PACKAGES_DIR}/bin
|
||||
${CURRENT_PACKAGES_DIR}/debug/lib
|
||||
${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
|
||||
if(WIN32)
|
||||
file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/openvr_api.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
||||
file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/openvr_api.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
|
||||
file(COPY
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.dll
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/bin
|
||||
)
|
||||
file(COPY
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.dll
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
else()
|
||||
file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/libopenvr_api.so DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
||||
file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/libopenvr_api.so DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
|
||||
file(COPY
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/libopenvr_api.so
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/libopenvr_api.so.dbg
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/bin
|
||||
)
|
||||
file(COPY
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/libopenvr_api.so
|
||||
${SOURCE_PATH}/bin/${ARCH_PATH}/libopenvr_api.so.dbg
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
endif()
|
||||
|
||||
file(COPY ${SOURCE_PATH}/headers DESTINATION ${CURRENT_PACKAGES_DIR})
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/headers ${CURRENT_PACKAGES_DIR}/include)
|
||||
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openvr)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/openvr/LICENSE ${CURRENT_PACKAGES_DIR}/share/openvr/copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: opus
|
||||
Version: 1.3.1
|
||||
Description: Totally open, royalty-free, highly versatile audio codec
|
|
@ -1,32 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH
|
||||
SOURCE_PATH
|
||||
REPO
|
||||
xiph/opus
|
||||
REF
|
||||
72a3a6c13329869000b34a12ba27d8bfdfbc22b3
|
||||
SHA512
|
||||
590b852e966a497e33d129b58bc07d1205fe8fea9b158334cd8a3c7f539332ef9702bba4a37bd0be83eb5f04a218cef87645251899f099695d01c1eb8ea6e2fd
|
||||
HEAD_REF
|
||||
master
|
||||
)
|
||||
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Opus)
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/COPYING
|
||||
DESTINATION
|
||||
${CURRENT_PACKAGES_DIR}/share/opus
|
||||
RENAME copyright)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake
|
||||
${CURRENT_PACKAGES_DIR}/lib/cmake
|
||||
${CURRENT_PACKAGES_DIR}/debug/include)
|
|
@ -1,3 +0,0 @@
|
|||
Source: polyvox
|
||||
Version: 20150715
|
||||
Description: Polyvox
|
|
@ -1,102 +0,0 @@
|
|||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||
|
||||
# else Linux desktop
|
||||
vcpkg_download_distfile(
|
||||
SOURCE_ARCHIVE
|
||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/polyvox-master-2015-7-15.zip
|
||||
SHA512 cc04cd43ae74b9c7bb065953540c0048053fcba6b52dc4218b3d9431fba178d65ad4f6c53cc1122ba61d0ab4061e99a7ebbb15db80011d607c5070ebebf8eddc
|
||||
FILENAME polyvox.zip
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${SOURCE_ARCHIVE}
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DENABLE_EXAMPLES=OFF -DENABLE_BINDINGS=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/polyvox RENAME copyright)
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include)
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib)
|
||||
endif()
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib)
|
||||
endif()
|
||||
if(WIN32)
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/PolyVoxCore/lib/Release/PolyVoxCore.lib ${CURRENT_PACKAGES_DIR}/lib/PolyVoxCore.lib)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/PolyVoxUtil/lib/PolyVoxUtil.lib ${CURRENT_PACKAGES_DIR}/lib/PolyVoxUtil.lib)
|
||||
endif()
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/PolyVoxCore/lib/Debug/PolyVoxCore.lib ${CURRENT_PACKAGES_DIR}/debug/lib/PolyVoxCore.lib)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/PolyVoxUtil/lib/PolyVoxUtil.lib ${CURRENT_PACKAGES_DIR}/debug/lib/PolyVoxUtil.lib)
|
||||
endif()
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/PolyVoxCore/include/PolyVoxCore ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/PolyVoxUtil/include/PolyVoxUtil ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/cmake/PolyVoxConfig.cmake ${CURRENT_PACKAGES_DIR}/share/polyvox/polyvoxConfig.cmake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/cmake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/PolyVoxCore)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/PolyVoxUtil)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/PolyVoxCore)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/PolyVoxUtil)
|
||||
else()
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(GLOB LIBS ${CURRENT_PACKAGES_DIR}/lib/Release/*)
|
||||
foreach(_lib ${LIBS})
|
||||
file(RELATIVE_PATH _libName ${CURRENT_PACKAGES_DIR}/lib/Release ${_lib})
|
||||
file(RENAME ${_lib} ${CURRENT_PACKAGES_DIR}/lib/${_libName})
|
||||
endforeach()
|
||||
endif()
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(GLOB LIBS ${CURRENT_PACKAGES_DIR}/debug/lib/Debug/*)
|
||||
foreach(_lib ${LIBS})
|
||||
file(RELATIVE_PATH _libName ${CURRENT_PACKAGES_DIR}/debug/lib/Debug ${_lib})
|
||||
file(RENAME ${_lib} ${CURRENT_PACKAGES_DIR}/debug/lib/${_libName})
|
||||
endforeach()
|
||||
endif()
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore.temp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore.temp/PolyVoxCore ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/PolyVoxCore.temp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil.temp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil.temp/PolyVoxUtil ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/PolyVoxUtil.temp)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/doc)
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/Release)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/RelWithDebInfo)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/Debug)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/Release)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/RelWithDebInfo)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/Debug)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
# if (APPLE)
|
||||
# set(INSTALL_NAME_LIBRARY_DIR ${INSTALL_DIR}/lib)
|
||||
# ExternalProject_Add_Step(
|
||||
# ${EXTERNAL_NAME}
|
||||
# change-install-name-debug
|
||||
# COMMENT "Calling install_name_tool on libraries to fix install name for dylib linking"
|
||||
# COMMAND ${CMAKE_COMMAND} -DINSTALL_NAME_LIBRARY_DIR=${INSTALL_NAME_LIBRARY_DIR}/Debug -P ${EXTERNAL_PROJECT_DIR}/OSXInstallNameChange.cmake
|
||||
# DEPENDEES install
|
||||
# WORKING_DIRECTORY <SOURCE_DIR>
|
||||
# LOG 1
|
||||
# )
|
||||
# ExternalProject_Add_Step(
|
||||
# ${EXTERNAL_NAME}
|
||||
# change-install-name-release
|
||||
# COMMENT "Calling install_name_tool on libraries to fix install name for dylib linking"
|
||||
# COMMAND ${CMAKE_COMMAND} -DINSTALL_NAME_LIBRARY_DIR=${INSTALL_NAME_LIBRARY_DIR}/Release -P ${EXTERNAL_PROJECT_DIR}/OSXInstallNameChange.cmake
|
||||
# DEPENDEES install
|
||||
# WORKING_DIRECTORY <SOURCE_DIR>
|
||||
# LOG 1
|
||||
# )
|
||||
# endif ()
|
|
@ -1,4 +0,0 @@
|
|||
Source: quazip
|
||||
Version: 0.7.3
|
||||
Description: Zip file manipulation for Qt
|
||||
Build-Depends: zlib
|
|
@ -1,103 +0,0 @@
|
|||
if(EXISTS "${VCPKG_ROOT_DIR}/_env/QT_CMAKE_PREFIX_PATH.txt")
|
||||
# This environment var file only exists if we're overridding the default Qt location,
|
||||
# which happens when using Qt from vcpkg, or using Qt from custom location
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/QT_CMAKE_PREFIX_PATH.txt" QT_CMAKE_PREFIX_PATH)
|
||||
set(QUAZIP_EXTRA_OPTS "-DCMAKE_PREFIX_PATH=${QT_CMAKE_PREFIX_PATH}")
|
||||
else()
|
||||
# In the case of using system Qt, don't pass anything.
|
||||
set(QUAZIP_EXTRA_OPTS "")
|
||||
endif()
|
||||
|
||||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||
|
||||
vcpkg_download_distfile(
|
||||
SOURCE_ARCHIVE
|
||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/quazip-0.7.3.zip
|
||||
SHA512 b2d812b6346317fd6d8f4f1344ad48b721d697c429acc8b7e7cb776ce5cba15a59efd64b2c5ae1f31b5a3c928014f084aa1379fd55d8a452a6cf4fd510b3afcc
|
||||
FILENAME quazip.zip
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${SOURCE_ARCHIVE}
|
||||
NO_REMOVE_ONE_LEVEL
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DCMAKE_POSITION_INDEPENDENT_CODE=ON ${QUAZIP_EXTRA_OPTS} -DBUILD_WITH_QT4=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
if (WIN32)
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/quazip5.dll ${CURRENT_PACKAGES_DIR}/bin/quazip5.dll)
|
||||
endif()
|
||||
if (NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/quazip5d.dll ${CURRENT_PACKAGES_DIR}/debug/bin/quazip5.dll)
|
||||
endif()
|
||||
elseif(DEFINED VCPKG_TARGET_IS_LINUX)
|
||||
# We only want static libs.
|
||||
file(GLOB QUAZIP5_DYNAMIC_LIBS ${CURRENT_PACKAGES_DIR}/lib/libquazip5.so* ${CURRENT_PACKAGES_DIR}/debug/lib/libquazip5d.so*)
|
||||
file(REMOVE ${QUAZIP5_DYNAMIC_LIBS})
|
||||
endif()
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/quazip RENAME copyright)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# set(QUAZIP_CMAKE_ARGS
|
||||
# -DCMAKE_PREFIX_PATH=${QT_CMAKE_PREFIX_PATH}
|
||||
# -DCMAKE_INSTALL_NAME_DIR:PATH=<INSTALL_DIR>/lib
|
||||
# -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
|
||||
# -DZLIB_ROOT=${VCPKG_INSTALL_ROOT}
|
||||
# -DCMAKE_POSITION_INDEPENDENT_CODE=ON)
|
||||
|
||||
# if (NOT APPLE)
|
||||
# set(QUAZIP_CMAKE_ARGS ${QUAZIP_CMAKE_ARGS} -DCMAKE_CXX_STANDARD=11)
|
||||
# endif ()
|
||||
|
||||
# ExternalProject_Add(
|
||||
# ${EXTERNAL_NAME}
|
||||
# URL
|
||||
# URL_MD5 ed03754d39b9da1775771819b8001d45
|
||||
# BINARY_DIR ${EXTERNAL_PROJECT_PREFIX}/build
|
||||
# CMAKE_ARGS ${QUAZIP_CMAKE_ARGS}
|
||||
# LOG_DOWNLOAD 1
|
||||
# LOG_CONFIGURE 1
|
||||
# LOG_BUILD 1
|
||||
# )
|
||||
|
||||
# # Hide this external target (for ide users)
|
||||
# set_target_properties(${EXTERNAL_NAME} PROPERTIES
|
||||
# FOLDER "hidden/externals"
|
||||
# INSTALL_NAME_DIR ${INSTALL_DIR}/lib
|
||||
# BUILD_WITH_INSTALL_RPATH True)
|
||||
|
||||
# ExternalProject_Get_Property(${EXTERNAL_NAME} INSTALL_DIR)
|
||||
# set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIR ${INSTALL_DIR}/include CACHE PATH "List of QuaZip include directories")
|
||||
# set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIRS ${${EXTERNAL_NAME_UPPER}_INCLUDE_DIR} CACHE PATH "List of QuaZip include directories")
|
||||
# set(${EXTERNAL_NAME_UPPER}_DLL_PATH ${INSTALL_DIR}/lib CACHE FILEPATH "Location of QuaZip DLL")
|
||||
|
||||
# if (APPLE)
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip5.1.0.0.dylib CACHE FILEPATH "Location of QuaZip release library")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${INSTALL_DIR}/lib/libquazip5d.1.0.0.dylib CACHE FILEPATH "Location of QuaZip release library")
|
||||
# elseif (WIN32)
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/quazip5.lib CACHE FILEPATH "Location of QuaZip release library")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${INSTALL_DIR}/lib/quazip5d.lib CACHE FILEPATH "Location of QuaZip release library")
|
||||
# elseif (CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip5.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${INSTALL_DIR}/lib/libquazip5d.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
# else ()
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip5.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${INSTALL_DIR}/lib/libquazip5.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
# endif ()
|
||||
|
||||
# include(SelectLibraryConfigurations)
|
||||
# select_library_configurations(${EXTERNAL_NAME_UPPER})
|
||||
|
||||
# # Force selected libraries into the cache
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARY ${${EXTERNAL_NAME_UPPER}_LIBRARY} CACHE FILEPATH "Location of QuaZip libraries")
|
||||
# set(${EXTERNAL_NAME_UPPER}_LIBRARIES ${${EXTERNAL_NAME_UPPER}_LIBRARIES} CACHE FILEPATH "Location of QuaZip libraries")
|
|
@ -1,43 +0,0 @@
|
|||
#header-only library
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO Tencent/rapidjson
|
||||
REF a95e013b97ca6523f32da23f5095fcc9dd6067e5 # accessed on 2023-07-17
|
||||
SHA512 19bf9a579df70cbeaf60c7ccf25c92c327bffe95b0df14f27f2132134d5bb214e98a45e021eb287c4790e301f84bb095e0bdb3c97f65a37fbeb254970d97c005
|
||||
FILE_DISAMBIGUATOR 2
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
# Use RapidJSON's own build process, skipping examples and tests
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
-DRAPIDJSON_BUILD_DOC=OFF
|
||||
-DRAPIDJSON_BUILD_EXAMPLES=OFF
|
||||
-DRAPIDJSON_BUILD_TESTS=OFF
|
||||
)
|
||||
vcpkg_cmake_install()
|
||||
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH cmake)
|
||||
else()
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/RapidJSON)
|
||||
endif()
|
||||
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
|
||||
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib")
|
||||
endif()
|
||||
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/share/${PORT}/RapidJSONConfig.cmake" _contents)
|
||||
string(REPLACE "\${RapidJSON_SOURCE_DIR}" "\${RapidJSON_CMAKE_DIR}/../.." _contents "${_contents}")
|
||||
string(REPLACE "set( RapidJSON_SOURCE_DIR \"${SOURCE_PATH}\")" "" _contents "${_contents}")
|
||||
string(REPLACE "set( RapidJSON_DIR \"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel\")" "" _contents "${_contents}")
|
||||
string(REPLACE "\${RapidJSON_CMAKE_DIR}/../../../include" "\${RapidJSON_CMAKE_DIR}/../../include" _contents "${_contents}")
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/RapidJSONConfig.cmake" "${_contents}\nset(RAPIDJSON_INCLUDE_DIRS \"\${RapidJSON_INCLUDE_DIRS}\")\n")
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/license.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
|
@ -1,17 +0,0 @@
|
|||
{
|
||||
"name": "rapidjson",
|
||||
"version-date": "2023-07-17",
|
||||
"description": "A fast JSON parser/generator for C++ with both SAX/DOM style API <http://rapidjson.org/>",
|
||||
"homepage": "http://rapidjson.org/",
|
||||
"license": "MIT",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
Source: sdl2
|
||||
Version: 2.0.10-2
|
||||
Description: Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D.
|
||||
|
||||
Feature: vulkan
|
||||
Description: Vulkan functionality for SDL
|
||||
Build-Depends: vulkan
|
|
@ -1,75 +0,0 @@
|
|||
# HG changeset patch
|
||||
# User Sam Lantinga <slouken@libsdl.org>
|
||||
# Date 1542691020 28800
|
||||
# Node ID 9091b20040cf04cdc348d290ca22373b36364c39
|
||||
# Parent 144400e4630d885d2eb0761b7174433b4c0d90bb
|
||||
Fixed bug 4391 - hid_enumerate() sometimes causes game to freeze for a few seconds
|
||||
|
||||
Daniel Gibson
|
||||
|
||||
Even though my game (dhewm3) doesn't use SDL_INIT_JOYSTICK, SDL_PumpEvent() calls SDL_JoystickUpdate() which ends up calling hid_enumerate() every three seconds, and sometimes on my Win7 box hid_enumerate() takes about 5 seconds, which causes the whole game to freeze for that time.
|
||||
|
||||
diff -r 144400e4630d -r 9091b20040cf include/SDL_bits.h
|
||||
--- a/include/SDL_bits.h Sun Nov 18 19:28:20 2018 +0300
|
||||
+++ b/include/SDL_bits.h Mon Nov 19 21:17:00 2018 -0800
|
||||
@@ -101,6 +101,15 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
+SDL_FORCE_INLINE SDL_bool
|
||||
+SDL_HasExactlyOneBitSet32(Uint32 x)
|
||||
+{
|
||||
+ if (x && !(x & (x - 1))) {
|
||||
+ return SDL_TRUE;
|
||||
+ }
|
||||
+ return SDL_FALSE;
|
||||
+}
|
||||
+
|
||||
/* Ends C function definitions when using C++ */
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
diff -r 144400e4630d -r 9091b20040cf src/SDL.c
|
||||
--- a/src/SDL.c Sun Nov 18 19:28:20 2018 +0300
|
||||
+++ b/src/SDL.c Mon Nov 19 21:17:00 2018 -0800
|
||||
@@ -348,6 +348,12 @@
|
||||
int num_subsystems = SDL_arraysize(SDL_SubsystemRefCount);
|
||||
Uint32 initialized = 0;
|
||||
|
||||
+ /* Fast path for checking one flag */
|
||||
+ if (SDL_HasExactlyOneBitSet32(flags)) {
|
||||
+ int subsystem_index = SDL_MostSignificantBitIndex32(flags);
|
||||
+ return SDL_SubsystemRefCount[subsystem_index] ? flags : 0;
|
||||
+ }
|
||||
+
|
||||
if (!flags) {
|
||||
flags = SDL_INIT_EVERYTHING;
|
||||
}
|
||||
diff -r 144400e4630d -r 9091b20040cf src/joystick/SDL_joystick.c
|
||||
--- a/src/joystick/SDL_joystick.c Sun Nov 18 19:28:20 2018 +0300
|
||||
+++ b/src/joystick/SDL_joystick.c Mon Nov 19 21:17:00 2018 -0800
|
||||
@@ -1016,6 +1016,10 @@
|
||||
int i;
|
||||
SDL_Joystick *joystick;
|
||||
|
||||
+ if (!SDL_WasInit(SDL_INIT_JOYSTICK)) {
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
SDL_LockJoysticks();
|
||||
|
||||
if (SDL_updating_joystick) {
|
||||
diff -r 144400e4630d -r 9091b20040cf src/sensor/SDL_sensor.c
|
||||
--- a/src/sensor/SDL_sensor.c Sun Nov 18 19:28:20 2018 +0300
|
||||
+++ b/src/sensor/SDL_sensor.c Mon Nov 19 21:17:00 2018 -0800
|
||||
@@ -505,6 +505,10 @@
|
||||
int i;
|
||||
SDL_Sensor *sensor;
|
||||
|
||||
+ if (!SDL_WasInit(SDL_INIT_SENSOR)) {
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
SDL_LockSensors();
|
||||
|
||||
if (SDL_updating_sensor) {
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -172,7 +172,7 @@
|
||||
# requires root permissions to open devices, so that's not generally
|
||||
# useful, and we'll disable this by default on Unix. Windows and macOS
|
||||
# can use it without root access, though, so enable by default there.
|
||||
-if(WINDOWS OR APPLE OR ANDROID)
|
||||
+if((WINDOWS AND NOT WINDOWS_STORE) OR APPLE OR ANDROID)
|
||||
set(HIDAPI_SKIP_LIBUSB TRUE)
|
||||
else()
|
||||
set(HIDAPI_SKIP_LIBUSB FALSE)
|
|
@ -1,175 +0,0 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 0128c7a..bd534e4 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -5,6 +5,18 @@ endif()
|
||||
cmake_minimum_required(VERSION 2.8.11)
|
||||
project(SDL2 C CXX)
|
||||
|
||||
+if(WINDOWS_STORE)
|
||||
+ enable_language(CXX)
|
||||
+ cmake_minimum_required(VERSION 3.11)
|
||||
+ add_definitions(-DSDL_BUILDING_WINRT=1 -ZW)
|
||||
+ link_libraries(
|
||||
+ -nodefaultlib:vccorlib$<$<CONFIG:Debug>:d>
|
||||
+ -nodefaultlib:msvcrt$<$<CONFIG:Debug>:d>
|
||||
+ vccorlib$<$<CONFIG:Debug>:d>.lib
|
||||
+ msvcrt$<$<CONFIG:Debug>:d>.lib
|
||||
+ )
|
||||
+endif()
|
||||
+
|
||||
# !!! FIXME: this should probably do "MACOSX_RPATH ON" as a target property
|
||||
# !!! FIXME: for the SDL2 shared library (so you get an
|
||||
# !!! FIXME: install_name ("soname") of "@rpath/libSDL-whatever.dylib"
|
||||
@@ -1209,6 +1221,11 @@ elseif(WINDOWS)
|
||||
file(GLOB CORE_SOURCES ${SDL2_SOURCE_DIR}/src/core/windows/*.c)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${CORE_SOURCES})
|
||||
|
||||
+ if(WINDOWS_STORE)
|
||||
+ file(GLOB WINRT_SOURCE_FILES ${SDL2_SOURCE_DIR}/src/core/winrt/*.c ${SDL2_SOURCE_DIR}/src/core/winrt/*.cpp)
|
||||
+ list(APPEND SOURCE_FILES ${WINRT_SOURCE_FILES})
|
||||
+ endif()
|
||||
+
|
||||
if(MSVC)
|
||||
# Prevent codegen that would use the VC runtime libraries.
|
||||
set_property(DIRECTORY . APPEND PROPERTY COMPILE_OPTIONS "/GS-")
|
||||
@@ -1254,6 +1271,9 @@ elseif(WINDOWS)
|
||||
check_include_file(ddraw.h HAVE_DDRAW_H)
|
||||
check_include_file(dsound.h HAVE_DSOUND_H)
|
||||
check_include_file(dinput.h HAVE_DINPUT_H)
|
||||
+ if(WINDOWS_STORE OR VCPKG_TARGET_TRIPLET MATCHES "arm-windows")
|
||||
+ set(HAVE_DINPUT_H 0)
|
||||
+ endif()
|
||||
check_include_file(dxgi.h HAVE_DXGI_H)
|
||||
if(HAVE_D3D_H OR HAVE_D3D11_H OR HAVE_DDRAW_H OR HAVE_DSOUND_H OR HAVE_DINPUT_H)
|
||||
set(HAVE_DIRECTX TRUE)
|
||||
@@ -1272,18 +1292,20 @@ elseif(WINDOWS)
|
||||
check_include_file(endpointvolume.h HAVE_ENDPOINTVOLUME_H)
|
||||
|
||||
if(SDL_AUDIO)
|
||||
+ if(NOT WINDOWS_STORE)
|
||||
set(SDL_AUDIO_DRIVER_WINMM 1)
|
||||
file(GLOB WINMM_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/winmm/*.c)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${WINMM_AUDIO_SOURCES})
|
||||
+ endif()
|
||||
set(HAVE_SDL_AUDIO TRUE)
|
||||
|
||||
- if(HAVE_DSOUND_H)
|
||||
+ if(HAVE_DSOUND_H AND NOT WINDOWS_STORE)
|
||||
set(SDL_AUDIO_DRIVER_DSOUND 1)
|
||||
file(GLOB DSOUND_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/directsound/*.c)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${DSOUND_AUDIO_SOURCES})
|
||||
endif()
|
||||
|
||||
- if(WASAPI AND HAVE_AUDIOCLIENT_H AND HAVE_MMDEVICEAPI_H)
|
||||
+ if(WASAPI AND HAVE_AUDIOCLIENT_H AND HAVE_MMDEVICEAPI_H AND NOT WINDOWS_STORE)
|
||||
set(SDL_AUDIO_DRIVER_WASAPI 1)
|
||||
file(GLOB WASAPI_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/wasapi/*.c)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${WASAPI_AUDIO_SOURCES})
|
||||
@@ -1295,11 +1317,20 @@ elseif(WINDOWS)
|
||||
if(NOT SDL_LOADSO)
|
||||
message_error("SDL_VIDEO requires SDL_LOADSO, which is not enabled")
|
||||
endif()
|
||||
+ if(WINDOWS_STORE)
|
||||
+ set(SDL_VIDEO_DRIVER_WINRT 1)
|
||||
+ file(GLOB WIN_VIDEO_SOURCES
|
||||
+ ${SDL2_SOURCE_DIR}/src/video/winrt/*.c
|
||||
+ ${SDL2_SOURCE_DIR}/src/video/winrt/*.cpp
|
||||
+ ${SDL2_SOURCE_DIR}/src/render/direct3d11/*.cpp
|
||||
+ )
|
||||
+ else()
|
||||
set(SDL_VIDEO_DRIVER_WINDOWS 1)
|
||||
file(GLOB WIN_VIDEO_SOURCES ${SDL2_SOURCE_DIR}/src/video/windows/*.c)
|
||||
+ endif()
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${WIN_VIDEO_SOURCES})
|
||||
|
||||
- if(RENDER_D3D AND HAVE_D3D_H)
|
||||
+ if(RENDER_D3D AND HAVE_D3D_H AND NOT WINDOWS_STORE)
|
||||
set(SDL_VIDEO_RENDER_D3D 1)
|
||||
set(HAVE_RENDER_D3D TRUE)
|
||||
endif()
|
||||
@@ -1322,20 +1353,31 @@ elseif(WINDOWS)
|
||||
endif()
|
||||
|
||||
if(SDL_POWER)
|
||||
+ if(WINDOWS_STORE)
|
||||
+ set(SDL_POWER_WINRT 1)
|
||||
+ set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/power/winrt/SDL_syspower.cpp)
|
||||
+ else()
|
||||
set(SDL_POWER_WINDOWS 1)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/power/windows/SDL_syspower.c)
|
||||
+ endif()
|
||||
set(HAVE_SDL_POWER TRUE)
|
||||
endif()
|
||||
|
||||
if(SDL_FILESYSTEM)
|
||||
set(SDL_FILESYSTEM_WINDOWS 1)
|
||||
+ if(WINDOWS_STORE)
|
||||
+ file(GLOB FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/winrt/*.cpp)
|
||||
+ else()
|
||||
file(GLOB FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/windows/*.c)
|
||||
+ endif()
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${FILESYSTEM_SOURCES})
|
||||
set(HAVE_SDL_FILESYSTEM TRUE)
|
||||
endif()
|
||||
|
||||
# Libraries for Win32 native and MinGW
|
||||
+ if(NOT WINDOWS_STORE)
|
||||
list(APPEND EXTRA_LIBS user32 gdi32 winmm imm32 ole32 oleaut32 version uuid advapi32 setupapi shell32)
|
||||
+ endif()
|
||||
|
||||
# TODO: in configure.ac the check for timers is set on
|
||||
# cygwin | mingw32* - does this include mingw32CE?
|
||||
@@ -1357,7 +1399,7 @@ elseif(WINDOWS)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${CORE_SOURCES})
|
||||
|
||||
if(SDL_VIDEO)
|
||||
- if(VIDEO_OPENGL)
|
||||
+ if(VIDEO_OPENGL AND NOT WINDOWS_STORE)
|
||||
set(SDL_VIDEO_OPENGL 1)
|
||||
set(SDL_VIDEO_OPENGL_WGL 1)
|
||||
set(SDL_VIDEO_RENDER_OGL 1)
|
||||
@@ -1788,12 +1830,14 @@ endif()
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
|
||||
|
||||
# Always build SDLmain
|
||||
+if(NOT WINDOWS_STORE)
|
||||
add_library(SDL2main STATIC ${SDLMAIN_SOURCES})
|
||||
target_include_directories(SDL2main PUBLIC "$<BUILD_INTERFACE:${SDL2_SOURCE_DIR}/include>" $<INSTALL_INTERFACE:include/SDL2>)
|
||||
set(_INSTALL_LIBS "SDL2main")
|
||||
if (NOT ANDROID)
|
||||
set_target_properties(SDL2main PROPERTIES DEBUG_POSTFIX ${SDL_CMAKE_DEBUG_POSTFIX})
|
||||
endif()
|
||||
+endif()
|
||||
|
||||
if(SDL_SHARED)
|
||||
add_library(SDL2 SHARED ${SOURCE_FILES} ${VERSION_SOURCES})
|
||||
diff --git a/include/SDL_config.h.cmake b/include/SDL_config.h.cmake
|
||||
index 48dd2d4..0c4fa28 100644
|
||||
--- a/include/SDL_config.h.cmake
|
||||
+++ b/include/SDL_config.h.cmake
|
||||
@@ -326,6 +326,7 @@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC @SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@
|
||||
+#cmakedefine SDL_VIDEO_DRIVER_WINRT @SDL_VIDEO_DRIVER_WINRT@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_WAYLAND @SDL_VIDEO_DRIVER_WAYLAND@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@
|
||||
#cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@
|
||||
@@ -391,6 +392,7 @@
|
||||
#cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@
|
||||
#cmakedefine SDL_POWER_LINUX @SDL_POWER_LINUX@
|
||||
#cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@
|
||||
+#cmakedefine SDL_POWER_WINRT @SDL_POWER_WINRT@
|
||||
#cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@
|
||||
#cmakedefine SDL_POWER_HAIKU @SDL_POWER_HAIKU@
|
||||
#cmakedefine SDL_POWER_EMSCRIPTEN @SDL_POWER_EMSCRIPTEN@
|
||||
@@ -413,7 +415,7 @@
|
||||
#cmakedefine SDL_LIBSAMPLERATE_DYNAMIC @SDL_LIBSAMPLERATE_DYNAMIC@
|
||||
|
||||
/* Platform specific definitions */
|
||||
-#if !defined(__WIN32__)
|
||||
+#if !defined(__WIN32__) && !defined(__WINRT__)
|
||||
# if !defined(_STDINT_H_) && !defined(_STDINT_H) && !defined(HAVE_STDINT_H) && !defined(_HAVE_STDINT_H)
|
||||
typedef unsigned int size_t;
|
||||
typedef signed char int8_t;
|
|
@ -1,24 +0,0 @@
|
|||
# HG changeset patch
|
||||
# User Mikhail Paulyshka <me@mixaill.tk>
|
||||
# Date 1506252750 -10800
|
||||
# Sun Sep 24 14:32:30 2017 +0300
|
||||
# Branch SDL2-WIN-SYMBOLS_LEACKAGE
|
||||
# Node ID 46ec9baae30cd4e0c584de125cae4a3cce2864ad
|
||||
# Parent 8df7a59b55283aa09889522369a2b32674c048de
|
||||
win32: fix symbols leakage for static libraries
|
||||
|
||||
diff -r 8df7a59b5528 -r 46ec9baae30c include/begin_code.h
|
||||
--- a/include/begin_code.h Fri Sep 22 11:25:52 2017 -0700
|
||||
+++ b/include/begin_code.h Sun Sep 24 14:32:30 2017 +0300
|
||||
@@ -58,8 +58,10 @@
|
||||
# else
|
||||
# define DECLSPEC __declspec(dllimport)
|
||||
# endif
|
||||
+# elif defined(_DLL)
|
||||
+# define DECLSPEC __declspec(dllexport)
|
||||
# else
|
||||
-# define DECLSPEC __declspec(dllexport)
|
||||
+# define DECLSPEC
|
||||
# endif
|
||||
# elif defined(__OS2__)
|
||||
# ifdef BUILD_SDL
|
|
@ -1,14 +0,0 @@
|
|||
--- a/include/SDL_cpuinfo.h Tue Jul 23 21:41:00 2019 -0400
|
||||
+++ b/include/SDL_cpuinfo.h Tue Aug 13 20:26:27 2019 -0700
|
||||
@@ -73,8 +73,8 @@
|
||||
# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */
|
||||
# endif
|
||||
# if defined (_M_ARM64)
|
||||
-# include <armintr.h>
|
||||
-# include <arm_neon.h>
|
||||
+# include <arm64intr.h>
|
||||
+# include <arm64_neon.h>
|
||||
# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */
|
||||
# endif
|
||||
# endif
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
diff -ur a/src/video/wayland/SDL_waylanddyn.h b/src/video/wayland/SDL_waylanddyn.h
|
||||
--- a/src/video/wayland/SDL_waylanddyn.h
|
||||
+++ b/src/video/wayland/SDL_waylanddyn.h
|
||||
@@ -77,6 +77,9 @@
|
||||
#define wl_proxy_add_listener (*WAYLAND_wl_proxy_add_listener)
|
||||
#define wl_proxy_marshal_constructor (*WAYLAND_wl_proxy_marshal_constructor)
|
||||
#define wl_proxy_marshal_constructor_versioned (*WAYLAND_wl_proxy_marshal_constructor_versioned)
|
||||
+#define wl_proxy_marshal_flags (*WAYLAND_wl_proxy_marshal_flags)
|
||||
+#define wl_proxy_marshal_array_flags (*WAYLAND_wl_proxy_marshal_array_flags)
|
||||
+#define wl_proxy_get_version (*WAYLAND_wl_proxy_get_version)
|
||||
|
||||
#define wl_seat_interface (*WAYLAND_wl_seat_interface)
|
||||
#define wl_surface_interface (*WAYLAND_wl_surface_interface)
|
||||
diff -ur a/src/video/wayland/SDL_waylandsym.h b/src/video/wayland/SDL_waylandsym.h
|
||||
--- a/src/video/wayland/SDL_waylandsym.h
|
||||
+++ b/src/video/wayland/SDL_waylandsym.h
|
||||
@@ -70,6 +70,11 @@
|
||||
SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_10)
|
||||
SDL_WAYLAND_SYM(struct wl_proxy *, wl_proxy_marshal_constructor_versioned, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interface, uint32_t version, ...))
|
||||
|
||||
+SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_20)
|
||||
+SDL_WAYLAND_SYM(struct wl_proxy*, wl_proxy_marshal_flags, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interfac, uint32_t version, uint32_t flags, ...))
|
||||
+SDL_WAYLAND_SYM(struct wl_proxy*, wl_proxy_marshal_array_flags, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interface, uint32_t version, uint32_t flags, union wl_argument *args))
|
||||
+SDL_WAYLAND_SYM(uint32_t, wl_proxy_get_version, (struct wl_proxy *))
|
||||
+
|
||||
SDL_WAYLAND_INTERFACE(wl_seat_interface)
|
||||
SDL_WAYLAND_INTERFACE(wl_surface_interface)
|
||||
SDL_WAYLAND_INTERFACE(wl_shm_pool_interface)
|
|
@ -1,24 +0,0 @@
|
|||
diff -ur a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt 2019-07-23 21:41:00.000000000 +0200
|
||||
+++ b/CMakeLists.txt 2019-10-27 20:26:38.000000000 +0100
|
||||
@@ -257,7 +257,7 @@
|
||||
# General includes
|
||||
include_directories(${SDL2_BINARY_DIR}/include ${SDL2_SOURCE_DIR}/include)
|
||||
if(USE_GCC OR USE_CLANG)
|
||||
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter ${SDL2_SOURCE_DIR}/src/video/khronos")
|
||||
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter \"${SDL2_SOURCE_DIR}/src/video/khronos\"")
|
||||
else()
|
||||
include_directories(${SDL2_SOURCE_DIR}/src/video/khronos)
|
||||
endif()
|
||||
diff -ur a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake
|
||||
--- a/cmake/sdlchecks.cmake 2019-07-23 21:41:00.000000000 +0200
|
||||
+++ b/cmake/sdlchecks.cmake 2019-10-27 20:27:10.000000000 +0100
|
||||
@@ -1086,7 +1086,7 @@
|
||||
set(HAVE_SDL_JOYSTICK TRUE)
|
||||
file(GLOB HIDAPI_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/hidapi/*.c)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${HIDAPI_SOURCES})
|
||||
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} -I${SDL2_SOURCE_DIR}/src/hidapi/hidapi")
|
||||
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} \"-I${SDL2_SOURCE_DIR}/src/hidapi/hidapi\"")
|
||||
if(NOT HIDAPI_SKIP_LIBUSB)
|
||||
set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/hidapi/libusb/hid.c)
|
||||
list(APPEND EXTRA_LIBS ${LIBUSB_LIBS})
|
|
@ -1,15 +0,0 @@
|
|||
diff --git a/src/events/SDL_mouse.c b/src/events/SDL_mouse.c
|
||||
index ff23c5e..fc90bba 100644
|
||||
--- a/src/events/SDL_mouse.c
|
||||
+++ b/src/events/SDL_mouse.c
|
||||
@@ -20,6 +20,10 @@
|
||||
*/
|
||||
#include "../SDL_internal.h"
|
||||
|
||||
+#ifdef __WIN32__
|
||||
+#include "../core/windows/SDL_windows.h"
|
||||
+#endif
|
||||
+
|
||||
/* General mouse handling code for SDL */
|
||||
|
||||
#include "SDL_assert.h"
|
|
@ -1,84 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO SDL-Mirror/SDL
|
||||
REF release-2.0.10
|
||||
SHA512 c5fe59eed7ba9c6a82cceaf513623480793727fceec84b01d819e7cbefc8229a84be93067d7539f12d5811c49d3d54fd407272786aef3e419f439d0105c34b21
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
export-symbols-only-in-shared-build.patch
|
||||
enable-winrt-cmake.patch
|
||||
fix-arm64-headers.patch
|
||||
disable-hidapi-for-uwp.patch
|
||||
fix-space-in-path.patch
|
||||
fix-build-against-wayland-1_20.patch
|
||||
)
|
||||
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" SDL_STATIC)
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SDL_SHARED)
|
||||
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" FORCE_STATIC_VCRT)
|
||||
|
||||
set(VULKAN_VIDEO OFF)
|
||||
if("vulkan" IN_LIST FEATURES)
|
||||
set(VULKAN_VIDEO ON)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DSDL_STATIC=${SDL_STATIC}
|
||||
-DSDL_SHARED=${SDL_SHARED}
|
||||
-DVIDEO_VULKAN=${VULKAN_VIDEO}
|
||||
-DLIBC=ON
|
||||
MAYBE_UNUSED_VARIABLES
|
||||
-DFORCE_STATIC_VCRT=${FORCE_STATIC_VCRT} # Only available on MSVC
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake")
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH cmake)
|
||||
elseif(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/SDL2")
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/SDL2)
|
||||
elseif(EXISTS "${CURRENT_PACKAGES_DIR}/SDL2.framework/Resources")
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH SDL2.framework/Resources)
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE
|
||||
${CURRENT_PACKAGES_DIR}/debug/include
|
||||
${CURRENT_PACKAGES_DIR}/debug/share
|
||||
${CURRENT_PACKAGES_DIR}/bin/sdl2-config
|
||||
${CURRENT_PACKAGES_DIR}/debug/bin/sdl2-config
|
||||
${CURRENT_PACKAGES_DIR}/SDL2.framework
|
||||
${CURRENT_PACKAGES_DIR}/debug/SDL2.framework
|
||||
)
|
||||
|
||||
file(GLOB BINS ${CURRENT_PACKAGES_DIR}/debug/bin/* ${CURRENT_PACKAGES_DIR}/bin/*)
|
||||
if(NOT BINS)
|
||||
file(REMOVE_RECURSE
|
||||
${CURRENT_PACKAGES_DIR}/bin
|
||||
${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
endif()
|
||||
|
||||
if(NOT VCPKG_CMAKE_SYSTEM_NAME)
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/SDL2main.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/SDL2main.lib)
|
||||
endif()
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/SDL2maind.lib ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/SDL2maind.lib)
|
||||
endif()
|
||||
|
||||
file(GLOB SHARE_FILES ${CURRENT_PACKAGES_DIR}/share/sdl2/*.cmake)
|
||||
foreach(SHARE_FILE ${SHARE_FILES})
|
||||
file(READ "${SHARE_FILE}" _contents)
|
||||
string(REPLACE "lib/SDL2main" "lib/manual-link/SDL2main" _contents "${_contents}")
|
||||
file(WRITE "${SHARE_FILE}" "${_contents}")
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
||||
configure_file(${SOURCE_PATH}/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
|
||||
vcpkg_copy_pdbs()
|
|
@ -1,8 +0,0 @@
|
|||
_find_package(${ARGS})
|
||||
if(TARGET SDL2::SDL2 AND NOT TARGET SDL2::SDL2-static)
|
||||
add_library( SDL2::SDL2-static INTERFACE IMPORTED)
|
||||
set_target_properties(SDL2::SDL2-static PROPERTIES INTERFACE_LINK_LIBRARIES "SDL2::SDL2")
|
||||
elseif(TARGET SDL2::SDL2-static AND NOT TARGET SDL2::SDL2)
|
||||
add_library( SDL2::SDL2 INTERFACE IMPORTED)
|
||||
set_target_properties(SDL2::SDL2 PROPERTIES INTERFACE_LINK_LIBRARIES "SDL2::SDL2-static")
|
||||
endif()
|
|
@ -1,30 +0,0 @@
|
|||
From e8e12e856cbc41f9bdcc83bc87eb5013df199ee1 Mon Sep 17 00:00:00 2001
|
||||
From: vlj <vljn.ovi@gmail.com>
|
||||
Date: Fri, 2 Dec 2016 16:36:25 +0100
|
||||
Subject: [PATCH] Do not generate build-version.inc
|
||||
|
||||
---
|
||||
CMakeLists.txt | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a4c2fac..5544a2d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -53,8 +53,8 @@ add_subdirectory(libshaderc)
|
||||
add_subdirectory(glslc)
|
||||
add_subdirectory(examples)
|
||||
|
||||
-add_custom_target(build-version
|
||||
- ${PYTHON_EXE}
|
||||
- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py
|
||||
- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR}
|
||||
- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).")
|
||||
+#add_custom_target(build-version
|
||||
+# ${PYTHON_EXE}
|
||||
+# ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py
|
||||
+# ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR}
|
||||
+# COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).")
|
||||
--
|
||||
2.10.2.windows.1
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
option(SUFFIX_D "Add d Suffix to lib" ${SUFFIX_D})
|
||||
if(NOT SUFFIX_D)
|
||||
find_library(GLSLANG glslang)
|
||||
find_library(OSDEPENDENT OSDependent)
|
||||
find_library(OGLCOMPILER OGLCompiler)
|
||||
find_library(HLSLLIB HLSL)
|
||||
find_library(SPIRVLIB SPIRV)
|
||||
ELSE()
|
||||
find_library(GLSLANG glslangd)
|
||||
find_library(OSDEPENDENT OSDependentd)
|
||||
find_library(OGLCOMPILER OGLCompilerd)
|
||||
find_library(HLSLLIB HLSLd)
|
||||
find_library(SPIRVLIB SPIRVd)
|
||||
ENDIF()
|
||||
|
||||
add_library(glslang STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET glslang PROPERTY IMPORTED_LOCATION "${GLSLANG}")
|
||||
find_path(glslang_SOURCE_DIR glslang/Include/Common)
|
||||
set_property(TARGET glslang APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${glslang_SOURCE_DIR}")
|
||||
|
||||
add_library(OSDependent STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET OSDependent PROPERTY IMPORTED_LOCATION "${OSDEPENDENT}")
|
||||
|
||||
add_library(OGLCompiler STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET OGLCompiler PROPERTY IMPORTED_LOCATION "${OGLCOMPILER}")
|
||||
|
||||
add_library(HLSL STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET HLSL PROPERTY IMPORTED_LOCATION "${HLSLLIB}")
|
||||
|
||||
add_library(SPIRV STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET SPIRV PROPERTY IMPORTED_LOCATION "${SPIRVLIB}")
|
|
@ -1,8 +0,0 @@
|
|||
find_library(SPIRVTOOLSOPT SPIRV-Tools-opt)
|
||||
find_library(SPIRVTOOLS SPIRV-Tools)
|
||||
|
||||
add_library(SPIRV-Tools-opt STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET SPIRV-Tools-opt PROPERTY IMPORTED_LOCATION "${SPIRVTOOLSOPT}")
|
||||
|
||||
add_library(SPIRV-Tools STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET SPIRV-Tools PROPERTY IMPORTED_LOCATION "${SPIRVTOOLS}")
|
|
@ -1,4 +0,0 @@
|
|||
Source: shaderc
|
||||
Version: 2018.0-1
|
||||
Description: A collection of tools, libraries and tests for shader compilation.
|
||||
Build-Depends: glslang, spirv-tools
|
|
@ -1,3 +0,0 @@
|
|||
"shaderc v2016.2-dev unknown hash, 2016-12-02\n"
|
||||
"spirv-tools v2016.6-dev unknown hash, 2016-12-02\n"
|
||||
"glslang unknown hash, 2016-12-02\n"
|
|
@ -1,47 +0,0 @@
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO google/shaderc
|
||||
REF v2018.0
|
||||
SHA512 7a420fde73c9f2aae3f13558d538a1f4ae43bba19e2b4d2da8fbbd017e9e4f328ece5f330f1bbcb9fe84c91b7eb84b9158dc2e3d144c82939090a0fa6f5b4ef0
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0001-Do-not-generate-build-version.inc.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/third_party/glslang)
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists_spirv.txt DESTINATION ${SOURCE_PATH}/third_party/spirv-tools)
|
||||
file(RENAME ${SOURCE_PATH}/third_party/spirv-tools/CMakeLists_spirv.txt ${SOURCE_PATH}/third_party/spirv-tools/CMakeLists.txt)
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/build-version.inc DESTINATION ${SOURCE_PATH}/glslc/src)
|
||||
|
||||
#Note: glslang and spir tools doesn't export symbol and need to be build as static lib for cmake to work
|
||||
set(VCPKG_LIBRARY_LINKAGE "static")
|
||||
set(OPTIONS)
|
||||
if(VCPKG_CRT_LINKAGE STREQUAL "dynamic")
|
||||
list(APPEND OPTIONS -DSHADERC_ENABLE_SHARED_CRT=ON)
|
||||
endif()
|
||||
|
||||
# shaderc uses python to manipulate copyright information
|
||||
vcpkg_find_acquire_program(PYTHON3)
|
||||
get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY)
|
||||
vcpkg_add_to_path(PREPEND "${PYTHON3_EXE_PATH}")
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DSHADERC_SKIP_TESTS=true ${OPTIONS} -Dglslang_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include
|
||||
OPTIONS_DEBUG -DSUFFIX_D=true
|
||||
OPTIONS_RELEASE -DSUFFIX_D=false
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*.exe")
|
||||
file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
|
||||
|
||||
#Safe to remove as libs are static
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/shaderc)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/shaderc/LICENSE ${CURRENT_PACKAGES_DIR}/share/shaderc/copyright)
|
|
@ -1,3 +0,0 @@
|
|||
Source: spirv-cross
|
||||
Version: 2018-08-07-1
|
||||
Description: SPIRV-Cross is a practical tool and library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.
|
|
@ -1,31 +0,0 @@
|
|||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO KhronosGroup/SPIRV-Cross
|
||||
REF sdk-1.3.231.1
|
||||
SHA512 105d6d36f90855841866961c5e4a190891784fdf640b087ffe91055a918035231b864ea6b00c3de1d287598cb4b6f3b8b543201ff7535e783555e4d57d061258
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DSPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
foreach(COMPONENT core cpp glsl hlsl msl reflect util)
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH share/spirv_cross_${COMPONENT}/cmake TARGET_PATH share/spirv_cross_${COMPONENT})
|
||||
endforeach()
|
||||
|
||||
file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*")
|
||||
file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
|
||||
|
||||
# cleanup
|
||||
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/spirv-cross/copyright COPYONLY)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
|
@ -1,3 +0,0 @@
|
|||
Source: spirv-tools
|
||||
Version: 2018.5-1
|
||||
Description: API and commands for processing SPIR-V modules
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue