aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreisberger Christophe <greisby@gmail.com>2021-07-26 19:54:38 +0200
committerGitHub <noreply@github.com>2021-07-26 10:54:38 -0700
commit8af28e0dabfeae8c13ed404ed94d2d910d785572 (patch)
tree8498b7be555f1c61a6ea76d452df401d16296dd3
parent56a33d86b3abf9792f24df3b550ce7d32ce420e7 (diff)
downloadvcpkg-8af28e0dabfeae8c13ed404ed94d2d910d785572.tar.gz
vcpkg-8af28e0dabfeae8c13ed404ed94d2d910d785572.zip
[drogon] Added database support features (#18711)
* [drogon] Added database access features * Replaced CONTROL with vcpkg.json manifest file * Patched finding brotli libraries for static triplets (brotlicommon-static.lib and co.) * Added features for database access, disabled by default. * [drogon] Fixed vcpkg.json version * update vcpkg.json format * update version * Added new feature redis * update vcpkg.json format * update version * delete redis dependence * update version * fix request feature * update version Co-authored-by: Jonliu1993 <13720414433@163.com>
-rw-r--r--ports/drogon/CONTROL9
-rw-r--r--ports/drogon/portfile.cmake9
-rw-r--r--ports/drogon/static-brotli.patch17
-rw-r--r--ports/drogon/vcpkg.json84
-rw-r--r--versions/baseline.json2
-rw-r--r--versions/d-/drogon.json5
6 files changed, 115 insertions, 11 deletions
diff --git a/ports/drogon/CONTROL b/ports/drogon/CONTROL
deleted file mode 100644
index fc00ee3ad..000000000
--- a/ports/drogon/CONTROL
+++ /dev/null
@@ -1,9 +0,0 @@
-Source: drogon
-Version: 1.7.1
-Homepage: https://github.com/an-tao/drogon
-Description:Drogon: A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows
-Build-Depends: trantor, zlib, jsoncpp, libmariadb (!osx), libmariadb[iconv] (osx), libpq, sqlite3, brotli, libuuid (!windows)
-Default-Features: ctl
-
-Feature: ctl
-Description: Build drogon_ctl tool. \ No newline at end of file
diff --git a/ports/drogon/portfile.cmake b/ports/drogon/portfile.cmake
index 0171af1d5..101f143e9 100644
--- a/ports/drogon/portfile.cmake
+++ b/ports/drogon/portfile.cmake
@@ -8,12 +8,19 @@ vcpkg_from_github(
vcpkg.patch
resolv.patch
drogon_config.patch
+ static-brotli.patch
)
vcpkg_check_features(
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
- ctl BUILD_CTL
+ ctl BUILD_CTL
+ mysql BUILD_MYSQL
+ orm BUILD_ORM
+ postgres BUILD_POSTGRESQL
+ postgres LIBPQ_BATCH_MODE
+ redis BUILD_REDIS
+ sqlite3 BUILD_SQLITE
)
vcpkg_configure_cmake(
diff --git a/ports/drogon/static-brotli.patch b/ports/drogon/static-brotli.patch
new file mode 100644
index 000000000..a44a40cc5
--- /dev/null
+++ b/ports/drogon/static-brotli.patch
@@ -0,0 +1,17 @@
+diff --git a/cmake_modules/FindBrotli.cmake b/cmake_modules/FindBrotli.cmake
+index da5b6d2..6b631ab 100755
+--- a/cmake_modules/FindBrotli.cmake
++++ b/cmake_modules/FindBrotli.cmake
+@@ -23,9 +23,9 @@ include(FindPackageHandleStandardArgs)
+
+ find_path(BROTLI_INCLUDE_DIR "brotli/decode.h")
+
+-find_library(BROTLICOMMON_LIBRARY NAMES brotlicommon)
+-find_library(BROTLIDEC_LIBRARY NAMES brotlidec)
+-find_library(BROTLIENC_LIBRARY NAMES brotlienc)
++find_library(BROTLICOMMON_LIBRARY NAMES brotlicommon brotlicommon-static)
++find_library(BROTLIDEC_LIBRARY NAMES brotlidec brotlidec-static)
++find_library(BROTLIENC_LIBRARY NAMES brotlienc brotlienc-static)
+
+ find_package_handle_standard_args(Brotli
+ REQUIRED_VARS
diff --git a/ports/drogon/vcpkg.json b/ports/drogon/vcpkg.json
new file mode 100644
index 000000000..3aa7f4da7
--- /dev/null
+++ b/ports/drogon/vcpkg.json
@@ -0,0 +1,84 @@
+{
+ "name": "drogon",
+ "version-semver": "1.7.1",
+ "port-version": 1,
+ "description": "A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows",
+ "homepage": "https://github.com/an-tao/drogon",
+ "documentation": "https://drogon.docsforge.com/master/overview/",
+ "license": "MIT",
+ "dependencies": [
+ "brotli",
+ "jsoncpp",
+ {
+ "name": "libuuid",
+ "platform": "!windows"
+ },
+ "trantor",
+ "zlib"
+ ],
+ "features": {
+ "ctl": {
+ "description": "Build drogon_ctl tool."
+ },
+ "mysql": {
+ "description": "Support reading and writing from/to MySQL databases.",
+ "dependencies": [
+ {
+ "name": "drogon",
+ "features": [
+ "orm"
+ ]
+ },
+ {
+ "name": "libmariadb",
+ "features": [
+ "iconv"
+ ],
+ "platform": "osx"
+ },
+ {
+ "name": "libmariadb",
+ "platform": "!osx"
+ }
+ ]
+ },
+ "orm": {
+ "description": "Build with Object-relational mapping support."
+ },
+ "postgres": {
+ "description": "Support reading and writing from/to Postgres databases.",
+ "dependencies": [
+ {
+ "name": "drogon",
+ "features": [
+ "orm"
+ ]
+ },
+ "libpq"
+ ]
+ },
+ "redis": {
+ "description": "Support reading and writing from/to Redis databases.",
+ "dependencies": [
+ {
+ "name": "drogon",
+ "features": [
+ "orm"
+ ]
+ }
+ ]
+ },
+ "sqlite3": {
+ "description": "Support reading and writing from/to Sqlite databases.",
+ "dependencies": [
+ {
+ "name": "drogon",
+ "features": [
+ "orm"
+ ]
+ },
+ "sqlite3"
+ ]
+ }
+ }
+}
diff --git a/versions/baseline.json b/versions/baseline.json
index 67f1ae99e..331d75d4c 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -1766,7 +1766,7 @@
},
"drogon": {
"baseline": "1.7.1",
- "port-version": 0
+ "port-version": 1
},
"dtl": {
"baseline": "1.19",
diff --git a/versions/d-/drogon.json b/versions/d-/drogon.json
index 309d7689d..9073dfa7e 100644
--- a/versions/d-/drogon.json
+++ b/versions/d-/drogon.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "6293f8fcc884c9ed56a4a3138722401451ff445d",
+ "version-semver": "1.7.1",
+ "port-version": 1
+ },
+ {
"git-tree": "a325c34025250341e3f721353d5d3dfa66017e2b",
"version-string": "1.7.1",
"port-version": 0