Add prometheus-cpp (and civetweb) (#4694)

* [prometheus-cpp] Initial port

Closes: jupp0r/prometheus-cpp#130

* [civetweb] Initial port

* [prometheus-cpp][civetweb] Cleanup. Update to 0.6.0.
This commit is contained in:
Gregor Jasny 2018-11-14 20:16:07 +01:00 committed by Robert Schumacher
parent 075d0d4ecd
commit 7436042045
4 changed files with 98 additions and 0 deletions

3
ports/civetweb/CONTROL Normal file
View File

@ -0,0 +1,3 @@
Source: civetweb
Version: 1.11-1
Description: Easy to use, powerful, C/C++ embeddable web server.

View File

@ -0,0 +1,36 @@
include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
message(FATAL_ERROR "${PORT} does not currently support UWP")
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO civetweb/civetweb
REF v1.11
SHA512 e1520fd2f4a54b6ab4838f4da2ce3f0956e9884059467d196078935a3fce61dad619f3bb1bc2b4c6a757e1a8abfed0e83cba38957c7c52fff235676e9dd1d428
HEAD_REF master
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DCIVETWEB_BUILD_TESTING=OFF
-DCIVETWEB_ENABLE_ASAN=OFF
-DCIVETWEB_ENABLE_CXX=ON
-DCIVETWEB_ENABLE_IPV6=ON
-DCIVETWEB_ENABLE_SERVER_EXECUTABLE=OFF
-DCIVETWEB_ENABLE_SSL=OFF
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
configure_file(${SOURCE_PATH}/LICENSE.md ${CURRENT_PACKAGES_DIR}/share/civetweb/copyright COPYONLY)

View File

@ -0,0 +1,16 @@
Source: prometheus-cpp
Version: 0.6.0
Description: Prometheus Client Library for Modern C++
Default-Features: compression, pull
Feature: compression
Build-Depends: zlib
Description: Enable zlib compression
Feature: pull
Build-Depends: civetweb
Description: Support for regular pull mode
Feature: push
Build-Depends: curl
Description: Support push gateway

View File

@ -0,0 +1,43 @@
include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO jupp0r/prometheus-cpp
REF v0.6.0
SHA512 a7e6f902f3007007ec68add5ac63e833c6f383ed0ce103e238b7248497f495e664446df7801000e36021adcb7cfb1d461bbb45e1b4fba9ffa4edfcaf5b5957dd
HEAD_REF master
)
macro(feature FEATURENAME OPTIONNAME)
if("${FEATURENAME}" IN_LIST FEATURES)
list(APPEND FEATURE_OPTIONS -D${OPTIONNAME}=TRUE)
else()
list(APPEND FEATURE_OPTIONS -D${OPTIONNAME}=FALSE)
endif()
endmacro()
feature(compression ENABLE_COMPRESSION)
feature(pull ENABLE_PULL)
feature(push ENABLE_PUSH)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DUSE_THIRDPARTY_LIBRARIES=OFF # use vcpkg packages
-DENABLE_TESTING=FALSE # need gtest 1.8.1
${FEATURE_OPTIONS}
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/prometheus-cpp)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/prometheus-cpp/copyright COPYONLY)