diff --git a/vcpkg-configuration.json b/vcpkg-configuration.json new file mode 100644 index 00000000..529442b3 --- /dev/null +++ b/vcpkg-configuration.json @@ -0,0 +1,14 @@ +{ + "default-registry": { + "kind": "git", + "baseline": "a76b33254af4092ff45f08ec5adcd9fd06468b43", + "repository": "https://github.com/microsoft/vcpkg" + }, + "registries": [ + { + "kind": "artifact", + "location": "https://github.com/microsoft/vcpkg-ce-catalog/archive/refs/heads/main.zip", + "name": "microsoft" + } + ] +} diff --git a/vcpkg-triplets/x64-linux-glibc-toolchain.cmake b/vcpkg-triplets/x64-linux-glibc-toolchain.cmake new file mode 100644 index 00000000..14a8ac68 --- /dev/null +++ b/vcpkg-triplets/x64-linux-glibc-toolchain.cmake @@ -0,0 +1,7 @@ +set(CMAKE_C_COMPILER /usr/bin/gcc) +set(CMAKE_CXX_COMPILER /usr/bin/g++) +set(CMAKE_AR /usr/bin/ar) +set(CMAKE_LINKER /usr/bin/ld.gold) +set(CMAKE_POSITION_INDEPENDENT_CODE ON) +set(ENV{CFLAGS} "-fPIC -fPIE") +set(ENV{CXXFLAGS} "-fPIC -fPIE") \ No newline at end of file diff --git a/vcpkg-triplets/x64-linux-glibc.cmake b/vcpkg-triplets/x64-linux-glibc.cmake new file mode 100644 index 00000000..c0dea03f --- /dev/null +++ b/vcpkg-triplets/x64-linux-glibc.cmake @@ -0,0 +1,17 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) +set(VCPKG_CMAKE_SYSTEM_NAME Linux) +set(VCPKG_BUILD_TYPE release) + +set(VCPKG_C_FLAGS "-fPIC -fPIE") +set(VCPKG_CXX_FLAGS "-fPIC -fPIE") + +set(VCPKG_CMAKE_CONFIGURE_OPTIONS + -DBUILD_SHARED_LIBS=OFF + -DWITH_EXAMPLES=OFF + -DWITH_GDK_PIXBUF=OFF + -DBUILD_TESTING=OFF +) + +set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${CMAKE_CURRENT_LIST_DIR}/x64-linux-glibc-toolchain.cmake") \ No newline at end of file diff --git a/vcpkg-triplets/x64-linux-musl-toolchain.cmake b/vcpkg-triplets/x64-linux-musl-toolchain.cmake new file mode 100644 index 00000000..de31bf7f --- /dev/null +++ b/vcpkg-triplets/x64-linux-musl-toolchain.cmake @@ -0,0 +1,5 @@ +set(CMAKE_C_COMPILER /usr/local/musl/bin/x86_64-linux-musl-gcc) +set(CMAKE_CXX_COMPILER /usr/local/musl/bin/x86_64-linux-musl-g++) +set(CMAKE_AR /usr/local/musl/bin/x86_64-linux-musl-ar) +set(CMAKE_LINKER /usr/local/musl/bin/x86_64-linux-musl-ld.gold) +set(CMAKE_CROSSCOMPILING TRUE) diff --git a/vcpkg-triplets/x64-linux-musl.cmake b/vcpkg-triplets/x64-linux-musl.cmake new file mode 100644 index 00000000..b87919a9 --- /dev/null +++ b/vcpkg-triplets/x64-linux-musl.cmake @@ -0,0 +1,10 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) +set(VCPKG_CMAKE_SYSTEM_NAME Linux) +set(VCPKG_BUILD_TYPE release) + +set(VCPKG_C_FLAGS "-fPIC -fPIE -static") +set(VCPKG_CXX_FLAGS "-fPIC -fPIE -static") + +set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${CMAKE_CURRENT_LIST_DIR}/x64-linux-musl-toolchain.cmake") diff --git a/vcpkg.json b/vcpkg.json new file mode 100644 index 00000000..90220335 --- /dev/null +++ b/vcpkg.json @@ -0,0 +1,66 @@ +{ + "dependencies": [ + "acl", + "aom", + "argon2", + "brotli", + "bzip2", + "c-ares", + "curl", + "freetype", + "gettext", + "gmp", + "grpc", + "icu", + "libavif", + "libde265", + "libevent", + "libffi", + { + "name": "libgd", + "features": [ + "fontconfig", + "freetype", + "jpeg", + "png", + "tiff", + "webp" + ] + }, + { + "name": "libheif", + "features": [ + "aom", + "jpeg", + "hevc" + ] + }, + "libiconv", + "libpng", + "librabbitmq", + "librdkafka", + "libsodium", + "libssh2", + "libuuid", + "libuv", + "libwebp", + "libxml2", + "libxslt", + "libyaml", + "libzip", + "lz4", + "mimalloc", + "ncurses", + "nghttp2", + "nghttp3", + "openldap", + "pkgconf", + "readline", + "snappy", + "sqlite3", + "tidy-html5", + "tiff", + "zlib", + "zstd" + ] +}