diff --git a/devel/libddwaf/Makefile b/devel/libddwaf/Makefile index 929b3908a9f9..d5f1f85b4f0d 100644 --- a/devel/libddwaf/Makefile +++ b/devel/libddwaf/Makefile @@ -1,39 +1,39 @@ PORTNAME= libddwaf -PORTVERSION= 1.14.0 -PORTREVISION= 2 +PORTVERSION= 1.15.0 CATEGORIES= devel MAINTAINER= sunpoet@FreeBSD.org COMMENT= Datadog WAF engine WWW= https://github.com/DataDog/libddwaf LICENSE= APACHE20 BSD3CLAUSE LICENSE_COMB= dual LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE.Apache LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/LICENSE.BSD3 BUILD_DEPENDS= rapidjson>=1.1.0.524:devel/rapidjson LIB_DEPENDS= libac.so:devel/libac \ libbenchmark.so:devel/benchmark \ + libfmt.so:devel/libfmt \ libgtest.so:devel/googletest \ libinjection.so:devel/libinjection \ libre2.so:devel/re2 \ libutf8proc.so:textproc/utf8proc \ libyaml-cpp.so:devel/yaml-cpp USES= cmake compiler:c++20-lang localbase:ldflags CMAKE_OFF= LIBDDWAF_KEEP_SYMBOL_FILE LIBDDWAF_TESTING CMAKE_ON= LIBDDWAF_BUILD_SHARED LIBDDWAF_BUILD_STATIC USE_GITHUB= yes GH_ACCOUNT= DataDog -GH_TUPLE= DataDog:appsec-event-rules:1.7.2:DataDog_appsec_event_rules/third_party/proj_event_rules \ - Tencent:rapidjson:476ffa2:Tencent_rapidjson/third_party/rapidjson +GH_TUPLE= DataDog:appsec-event-rules:1.8.0:DataDog_appsec_event_rules/third_party/proj_event_rules \ + Tencent:rapidjson:f9d5341:Tencent_rapidjson/third_party/rapidjson post-patch: # Clean up bundled libraries @${RM} -r ${WRKSRC}/third_party/libinjection/ @${RM} -r ${WRKSRC}/third_party/lua-aho-corasick/ .include diff --git a/devel/libddwaf/distinfo b/devel/libddwaf/distinfo index 55e79c425138..9e8ed66aa7ef 100644 --- a/devel/libddwaf/distinfo +++ b/devel/libddwaf/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1694348240 -SHA256 (DataDog-libddwaf-1.14.0_GH0.tar.gz) = b6064baa887da67b0e48116d9a2e413bd6bd687e67e859d36a1fe26870410d19 -SIZE (DataDog-libddwaf-1.14.0_GH0.tar.gz) = 775136 -SHA256 (DataDog-appsec-event-rules-1.7.2_GH0.tar.gz) = 4d4a699949e7bb9ad0fa513094f6e47a40e9b1f2e5023590b8476172da0055d7 -SIZE (DataDog-appsec-event-rules-1.7.2_GH0.tar.gz) = 136232 -SHA256 (Tencent-rapidjson-476ffa2_GH0.tar.gz) = 6a1628b73d007ffe5d2bc84f206d05b2194e25eeb0585a41bfd29db150591f84 -SIZE (Tencent-rapidjson-476ffa2_GH0.tar.gz) = 1115582 +TIMESTAMP = 1699774452 +SHA256 (DataDog-libddwaf-1.15.0_GH0.tar.gz) = ea106abd88acc419341e9be4f172efc392bfa34016acc78774d1cd30bd6e33b0 +SIZE (DataDog-libddwaf-1.15.0_GH0.tar.gz) = 926926 +SHA256 (DataDog-appsec-event-rules-1.8.0_GH0.tar.gz) = 89ffe8639f73403c5641a7e27c0294a0217342c054f1d119212ee2e860662d24 +SIZE (DataDog-appsec-event-rules-1.8.0_GH0.tar.gz) = 152303 +SHA256 (Tencent-rapidjson-f9d5341_GH0.tar.gz) = 50dfb066d9de1fc5738ce4d35bd8dc04a2a7c9196331cd2143e0069da5ea1265 +SIZE (Tencent-rapidjson-f9d5341_GH0.tar.gz) = 1115737 diff --git a/devel/libddwaf/files/patch-CMakeLists.txt b/devel/libddwaf/files/patch-CMakeLists.txt index 5d7df8ac29b0..eee96f28ae1f 100644 --- a/devel/libddwaf/files/patch-CMakeLists.txt +++ b/devel/libddwaf/files/patch-CMakeLists.txt @@ -1,219 +1,205 @@ ---- CMakeLists.txt.orig 2023-08-17 10:28:49 UTC +--- CMakeLists.txt.orig 2023-10-31 14:13:07 UTC +++ CMakeLists.txt @@ -7,24 +7,24 @@ set(CMAKE_PROJECT_VERSION ${version}) configure_file(src/version.hpp.in ${CMAKE_CURRENT_SOURCE_DIR}/src/version.hpp) -set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum OS X deployment version") -if(CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" OR - CMAKE_OSX_ARCHITECTURES MATCHES "arm64") - set(CPU_TYPE ${CMAKE_OSX_ARCHITECTURES}) -endif() +#set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum OS X deployment version") +#if(CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" OR +# CMAKE_OSX_ARCHITECTURES MATCHES "arm64") +# set(CPU_TYPE ${CMAKE_OSX_ARCHITECTURES}) +#endif() set(CMAKE_C_STANDARD 99) set(CMAKE_CXX_STANDARD 20) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(LIBDDWAF_SHARED_LINKER_FLAGS "-static-libstdc++" CACHE STRING "Shared library extra linker flags") +#set(LIBDDWAF_SHARED_LINKER_FLAGS "-static-libstdc++" CACHE STRING "Shared library extra linker flags") set(LIBDDWAF_EXE_LINKER_FLAGS "" CACHE STRING "Executable extra linker flags") set(LIBDDWAF_PACKAGE_SUFFIX "" CACHE STRING "Suffix for packaging purposes") -if(CMAKE_OSX_ARCHITECTURES MATCHES "arm64") - set(LIBDDWAF_PACKAGE_PROCESSOR ${CMAKE_OSX_ARCHITECTURES} CACHE STRING "Alternative processor for packaging purposes") -else() - set(LIBDDWAF_PACKAGE_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR} CACHE STRING "Alternative processor for packaging purposes") -endif() +#if(CMAKE_OSX_ARCHITECTURES MATCHES "arm64") +# set(LIBDDWAF_PACKAGE_PROCESSOR ${CMAKE_OSX_ARCHITECTURES} CACHE STRING "Alternative processor for packaging purposes") +#else() +# set(LIBDDWAF_PACKAGE_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR} CACHE STRING "Alternative processor for packaging purposes") +#endif() option(LIBDDWAF_BUILD_SHARED "Build shared library" ON) option(LIBDDWAF_BUILD_STATIC "Build shared library" ON) -@@ -58,7 +58,7 @@ endif() +@@ -59,7 +59,7 @@ endif() include(GNUInstallDirs) -add_subdirectory(third_party) +#add_subdirectory(third_party) add_library(glibc_compat OBJECT ${libddwaf_SOURCE_DIR}/src/glibc-compat/time64.c) set_target_properties(glibc_compat PROPERTIES POSITION_INDEPENDENT_CODE 1) -@@ -143,7 +143,8 @@ install(FILES ${libddwaf_SOURCE_DIR}/include/ddwaf.h D +@@ -159,7 +159,7 @@ install(FILES ${libddwaf_SOURCE_DIR}/include/ddwaf.h D # System dependencies set(LIBDDWAF_INTERFACE_LIBRARIES "") --set(LIBDDWAF_PRIVATE_LIBRARIES lib_re2 lib_ac lib_injection lib_radix lib_utf8proc) -+#set(LIBDDWAF_PRIVATE_LIBRARIES lib_re2 lib_ac lib_injection lib_radix lib_utf8proc) -+set(LIBDDWAF_PRIVATE_LIBRARIES lib_radix) +-set(LIBDDWAF_PRIVATE_LIBRARIES lib_re2 lib_utf8proc) ++#set(LIBDDWAF_PRIVATE_LIBRARIES lib_re2 lib_utf8proc) if(NOT MSVC AND LIBDDWAF_TEST_COVERAGE) target_compile_options(libddwaf_objects PRIVATE -ggdb --coverage) -@@ -176,6 +177,27 @@ if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +@@ -192,6 +192,28 @@ if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") elseif(WIN32) list(APPEND LIBDDWAF_INTERFACE_LIBRARIES ws2_32) endif() +find_library(LIBAC ac) +if (LIBAC) + list(APPEND LIBDDWAF_INTERFACE_LIBRARIES ac) +endif() ++find_library(LIBFMT fmt) ++if (LIBFMT) ++ list(APPEND LIBDDWAF_INTERFACE_LIBRARIES fmt) ++endif() +find_library(LIBINJECTION injection) +if (LIBINJECTION) + list(APPEND LIBDDWAF_INTERFACE_LIBRARIES injection) +endif() -+add_library(lib_radix STATIC ${PROJECT_SOURCE_DIR}/third_party/radixlib/radixlib.c) -+target_include_directories(lib_radix INTERFACE ${PROJECT_SOURCE_DIR}/third_party/radixlib) -+set_target_properties(lib_radix PROPERTIES POSITION_INDEPENDENT_CODE 1) +add_library(lib_rapidjson INTERFACE IMPORTED GLOBAL) +target_include_directories(lib_rapidjson INTERFACE ${PROJECT_SOURCE_DIR}/third_party/rapidjson/include) +find_library(LIBRE2 re2) +if (LIBRE2) + list(APPEND LIBDDWAF_INTERFACE_LIBRARIES re2) +endif() +find_library(LIBUTF8PROC utf8proc) +if (LIBUTF8PROC) + list(APPEND LIBDDWAF_INTERFACE_LIBRARIES utf8proc) +endif() target_link_libraries(libddwaf_objects PRIVATE ${LIBDDWAF_PRIVATE_LIBRARIES} -@@ -200,71 +222,72 @@ if (LIBDDWAF_BUILD_STATIC) +@@ -216,64 +238,65 @@ if (LIBDDWAF_BUILD_STATIC) INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) # Post-processing on the static library - if(MSVC) - add_custom_command(TARGET libddwaf_static POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory lib_comb - COMMAND ${CMAKE_COMMAND} -E chdir lib_comb lib.exe - /OUT:combined${CMAKE_STATIC_LIBRARY_SUFFIX} -- $ $ $ -- $ $ $ +- $ $ $ - COMMAND ${CMAKE_COMMAND} -E copy lib_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) - else() - if(CMAKE_OSX_ARCHITECTURES MATCHES "arm64") - add_custom_command(TARGET libddwaf_static POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory ar_comb - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND libtool -static -o ar_comb/combined.a -arch_only ${CMAKE_OSX_ARCHITECTURES} ar_comb/*.o* - - COMMAND ${CMAKE_COMMAND} -E copy ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ - COMMAND rm -rf ar_comb - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) - else() - add_custom_command(TARGET libddwaf_static POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory ar_comb - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -- COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ - COMMAND ${CMAKE_COMMAND} -E copy $ ar_comb - COMMAND ${CMAKE_AR} -qcs ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} ar_comb/*.o* - - COMMAND ${CMAKE_COMMAND} -E copy ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ - COMMAND rm -rf ar_comb - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) - endif() - if(NOT (CMAKE_BUILD_TYPE MATCHES Debug)) - if (CMAKE_SYSTEM_NAME STREQUAL Darwin OR CMAKE_SYSTEM_NAME STREQUAL Linux) - if (NOT CMAKE_STRIP) - find_program(STRIP strip) - if (STRIP STREQUAL "STRIP-NOTFOUND") - message(FATAL_ERROR "strip not found") - endif() - else() - set(STRIP ${CMAKE_STRIP}) - endif() - add_custom_command(TARGET libddwaf_static POST_BUILD - COMMAND ${STRIP} -x -S $ -o $.stripped) - install(FILES $.stripped DESTINATION ${CMAKE_INSTALL_LIBDIR}) - endif() - endif() - endif() +# if(MSVC) +# add_custom_command(TARGET libddwaf_static POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E make_directory lib_comb +# COMMAND ${CMAKE_COMMAND} -E chdir lib_comb lib.exe +# /OUT:combined${CMAKE_STATIC_LIBRARY_SUFFIX} -+# $ $ $ -+# $ $ $ ++# $ $ $ +# COMMAND ${CMAKE_COMMAND} -E copy lib_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ +# WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) +# else() +# if(CMAKE_OSX_ARCHITECTURES MATCHES "arm64") +# add_custom_command(TARGET libddwaf_static POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E make_directory ar_comb +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND libtool -static -o ar_comb/combined.a -arch_only ${CMAKE_OSX_ARCHITECTURES} ar_comb/*.o* +# +# COMMAND ${CMAKE_COMMAND} -E copy ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ +# COMMAND rm -rf ar_comb +# WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) +# else() +# add_custom_command(TARGET libddwaf_static POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E make_directory ar_comb +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ -+# COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $ +# COMMAND ${CMAKE_COMMAND} -E copy $ ar_comb +# COMMAND ${CMAKE_AR} -qcs ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} ar_comb/*.o* +# +# COMMAND ${CMAKE_COMMAND} -E copy ar_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $ +# COMMAND rm -rf ar_comb +# WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) +# endif() +# if(NOT (CMAKE_BUILD_TYPE MATCHES Debug)) +# if (CMAKE_SYSTEM_NAME STREQUAL Darwin OR CMAKE_SYSTEM_NAME STREQUAL Linux) +# if (NOT CMAKE_STRIP) +# find_program(STRIP strip) +# if (STRIP STREQUAL "STRIP-NOTFOUND") +# message(FATAL_ERROR "strip not found") +# endif() +# else() +# set(STRIP ${CMAKE_STRIP}) +# endif() +# add_custom_command(TARGET libddwaf_static POST_BUILD +# COMMAND ${STRIP} -x -S $ -o $.stripped) +# install(FILES $.stripped DESTINATION ${CMAKE_INSTALL_LIBDIR}) +# endif() +# endif() +# endif() endif() # Shared library if (LIBDDWAF_BUILD_SHARED) - execute_process(COMMAND git rev-parse HEAD - WORKING_DIRECTORY ${libddwaf_SOURCE_DIR} - OUTPUT_VARIABLE BUILD_ID - OUTPUT_STRIP_TRAILING_WHITESPACE - ) +# execute_process(COMMAND git rev-parse HEAD +# WORKING_DIRECTORY ${libddwaf_SOURCE_DIR} +# OUTPUT_VARIABLE BUILD_ID +# OUTPUT_STRIP_TRAILING_WHITESPACE +# ) -+ set(BUILD_ID "25b0021f1d2ce1eea39a37ad41b6de9eec12ee84") ++ set(BUILD_ID "e7d3c209402b8d81d119584cb147f88efe976965") message(STATUS "Build id is ${BUILD_ID}") string(SUBSTRING "${BUILD_ID}" 0 2 BUILD_ID_PREFIX) string(SUBSTRING "${BUILD_ID}" 2 39 BUILD_ID_SUFFIX) diff --git a/devel/libddwaf/files/patch-third_party-CMakeLists.txt b/devel/libddwaf/files/patch-third_party-CMakeLists.txt index 41564fb5cdf0..49cd330eac5f 100644 --- a/devel/libddwaf/files/patch-third_party-CMakeLists.txt +++ b/devel/libddwaf/files/patch-third_party-CMakeLists.txt @@ -1,335 +1,312 @@ ---- third_party/CMakeLists.txt.orig 2023-08-17 10:28:49 UTC +--- third_party/CMakeLists.txt.orig 2023-10-31 14:13:07 UTC +++ third_party/CMakeLists.txt @@ -15,24 +15,24 @@ if(NOT MSVC) set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wno-unused-parameter") endif() -set(RAPIDJSON_COMMIT 22a62fcc2c2fa2418f5d358cdf65c1df73b418ae) -ExternalProject_Add(proj_rapidjson - URL https://github.com/Tencent/rapidjson/archive/${RAPIDJSON_COMMIT}.tar.gz - INSTALL_DIR ${INSTALL_DIR} - CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} - -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} - -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} - -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} - BUILD_COMMAND "" - INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory "/include/" "/include/" -) +#set(RAPIDJSON_COMMIT 22a62fcc2c2fa2418f5d358cdf65c1df73b418ae) +#ExternalProject_Add(proj_rapidjson +# URL https://github.com/Tencent/rapidjson/archive/${RAPIDJSON_COMMIT}.tar.gz +# INSTALL_DIR ${INSTALL_DIR} +# CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} +# -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +# -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} +# -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} +# -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} +# -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} +# -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} +# BUILD_COMMAND "" +# INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory "/include/" "/include/" +#) add_library(lib_rapidjson INTERFACE IMPORTED GLOBAL) -target_include_directories(lib_rapidjson INTERFACE ${INSTALL_DIR}/include) -add_dependencies(lib_rapidjson proj_rapidjson) +target_include_directories(lib_rapidjson INTERFACE ${INSTALL_DIR}/rapidjson/include) +#add_dependencies(lib_rapidjson proj_rapidjson) target_compile_definitions(lib_rapidjson INTERFACE RAPIDJSON_HAS_STDSTRING=1) set_target_properties(proj_rapidjson PROPERTIES EXCLUDE_FROM_ALL TRUE) @@ -45,32 +45,32 @@ endif() # To avoid building everything for re2, including test binvaries: # BUILD_COMMAND cmake --build --target re2 # But this is not enough, because the install target run afterwards insists on building everything -set(RE2_COMMIT 885eb38accf49e2ccdd2fa6786f3590cf40a3e23) -ExternalProject_Add(proj_re2 - URL https://github.com/google/re2/archive/${RE2_COMMIT}.tar.gz - INSTALL_DIR ${INSTALL_DIR} - CMAKE_ARGS -DCMAKE_VERBOSE_MAKEFILE=1 -DCMAKE_INSTALL_PREFIX:PATH= - -DCMAKE_INSTALL_LIBDIR=lib - -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} - -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} - -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} - -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} - -DRE2_BUILD_TESTING=0 - BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}re2${CMAKE_STATIC_LIBRARY_SUFFIX} -) +#set(RE2_COMMIT 885eb38accf49e2ccdd2fa6786f3590cf40a3e23) +#ExternalProject_Add(proj_re2 +# URL https://github.com/google/re2/archive/${RE2_COMMIT}.tar.gz +# INSTALL_DIR ${INSTALL_DIR} +# CMAKE_ARGS -DCMAKE_VERBOSE_MAKEFILE=1 -DCMAKE_INSTALL_PREFIX:PATH= +# -DCMAKE_INSTALL_LIBDIR=lib +# -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} +# -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +# -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} +# -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} +# -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} +# -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} +# -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} +# -DRE2_BUILD_TESTING=0 +# BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}re2${CMAKE_STATIC_LIBRARY_SUFFIX} +#) # alas, we can't use find_package because by the package is not downloaded by config time # so manually creating the library -add_library(lib_re2 STATIC IMPORTED GLOBAL) -set_property(TARGET lib_re2 PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}re2${CMAKE_STATIC_LIBRARY_SUFFIX}) -target_include_directories(lib_re2 INTERFACE ${INSTALL_DIR}/include) -if(NOT MSVC) - target_link_libraries(lib_re2 INTERFACE -lpthread) -endif() -add_dependencies(lib_re2 proj_re2) +#add_library(lib_re2 STATIC IMPORTED GLOBAL) +#set_property(TARGET lib_re2 PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}re2${CMAKE_STATIC_LIBRARY_SUFFIX}) +#target_include_directories(lib_re2 INTERFACE ${INSTALL_DIR}/include) +#if(NOT MSVC) +# target_link_libraries(lib_re2 INTERFACE -lpthread) +#endif() +#add_dependencies(lib_re2 proj_re2) if(CMAKE_BUILD_TYPE MATCHES Debug) set(LIBGTEST_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}gtestd${CMAKE_STATIC_LIBRARY_SUFFIX}) -@@ -81,54 +81,54 @@ else() +@@ -81,114 +81,114 @@ else() endif() -set(GOOGLETEST_COMMIT 955c7f837efad184ec63e771c42542d37545eaef) -ExternalProject_Add(proj_gtest - URL https://github.com/google/googletest/archive/${GOOGLETEST_COMMIT}.tar.gz - INSTALL_DIR ${INSTALL_DIR} - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH= - -DCMAKE_INSTALL_LIBDIR=lib - -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} - -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} - -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} - -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} - -DBUILD_SHARED_LIBS=0 - -DBUILD_GMOCK=ON - BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBGTEST_FILENAME} ${INSTALL_DIR}/lib/${LIBGMOCK_FILENAME} -) +#set(GOOGLETEST_COMMIT 955c7f837efad184ec63e771c42542d37545eaef) +#ExternalProject_Add(proj_gtest +# URL https://github.com/google/googletest/archive/${GOOGLETEST_COMMIT}.tar.gz +# INSTALL_DIR ${INSTALL_DIR} +# CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH= +# -DCMAKE_INSTALL_LIBDIR=lib +# -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} +# -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +# -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} +# -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} +# -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} +# -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} +# -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} +# -DBUILD_SHARED_LIBS=0 +# -DBUILD_GMOCK=ON +# BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBGTEST_FILENAME} ${INSTALL_DIR}/lib/${LIBGMOCK_FILENAME} +#) -add_library(lib_gtest STATIC IMPORTED GLOBAL) -add_library(lib_gmock STATIC IMPORTED GLOBAL) -set_property(TARGET lib_gtest PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBGTEST_FILENAME}) -set_property(TARGET lib_gmock PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBGMOCK_FILENAME}) -target_include_directories(lib_gtest INTERFACE ${INSTALL_DIR}/include) -target_include_directories(lib_gmock INTERFACE ${INSTALL_DIR}/include) -if(NOT MSVC) - target_link_libraries(lib_gtest INTERFACE -lpthread) - target_link_libraries(lib_gmock INTERFACE -lpthread) -endif() +#add_library(lib_gtest STATIC IMPORTED GLOBAL) +#add_library(lib_gmock STATIC IMPORTED GLOBAL) +#set_property(TARGET lib_gtest PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBGTEST_FILENAME}) +#set_property(TARGET lib_gmock PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBGMOCK_FILENAME}) +#target_include_directories(lib_gtest INTERFACE ${INSTALL_DIR}/include) +#target_include_directories(lib_gmock INTERFACE ${INSTALL_DIR}/include) +#if(NOT MSVC) +# target_link_libraries(lib_gtest INTERFACE -lpthread) +# target_link_libraries(lib_gmock INTERFACE -lpthread) +#endif() add_dependencies(lib_gtest proj_gtest) add_dependencies(lib_gmock proj_gtest) set_target_properties(lib_gtest lib_gmock proj_gtest PROPERTIES EXCLUDE_FROM_ALL TRUE) --add_library(lib_injection STATIC -- libinjection/src/xss.c -- libinjection/src/libinjection_html5.c -- libinjection/src/libinjection_xss.c -- libinjection/src/libinjection_sqli.c) --target_include_directories(lib_injection INTERFACE ${PROJECT_SOURCE_DIR}/libinjection/src) --set_target_properties(lib_injection PROPERTIES POSITION_INDEPENDENT_CODE 1) -+#add_library(lib_injection STATIC -+# libinjection/src/xss.c -+# libinjection/src/libinjection_html5.c -+# libinjection/src/libinjection_xss.c -+# libinjection/src/libinjection_sqli.c) -+#target_include_directories(lib_injection INTERFACE ${PROJECT_SOURCE_DIR}/libinjection/src) -+#set_target_properties(lib_injection PROPERTIES POSITION_INDEPENDENT_CODE 1) - --add_library(lib_ac STATIC -- lua-aho-corasick/ac_fast.cxx -- lua-aho-corasick/ac_slow.cxx -- lua-aho-corasick/ac.cxx) --target_include_directories(lib_ac INTERFACE ${PROJECT_SOURCE_DIR}/lua-aho-corasick) --set_target_properties(lib_ac PROPERTIES POSITION_INDEPENDENT_CODE 1) -+#add_library(lib_ac STATIC -+# lua-aho-corasick/ac_fast.cxx -+# lua-aho-corasick/ac_slow.cxx -+# lua-aho-corasick/ac.cxx) -+#target_include_directories(lib_ac INTERFACE ${PROJECT_SOURCE_DIR}/lua-aho-corasick) -+#set_target_properties(lib_ac PROPERTIES POSITION_INDEPENDENT_CODE 1) - - add_library(lib_radix STATIC - radixlib/radixlib.c) -@@ -141,74 +141,74 @@ else () - set(LIBUTF8PROC_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc${CMAKE_STATIC_LIBRARY_SUFFIX}) - endif() +-if (MSVC) +- set(LIBUTF8PROC_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc_static${CMAKE_STATIC_LIBRARY_SUFFIX}) +-else () +- set(LIBUTF8PROC_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc${CMAKE_STATIC_LIBRARY_SUFFIX}) +-endif() ++#if (MSVC) ++# set(LIBUTF8PROC_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc_static${CMAKE_STATIC_LIBRARY_SUFFIX}) ++#else () ++# set(LIBUTF8PROC_FILENAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc${CMAKE_STATIC_LIBRARY_SUFFIX}) ++#endif() -set(UTF8PROC_VERSION v2.7.0) -ExternalProject_Add(proj_utf8proc - URL https://github.com/JuliaStrings/utf8proc/archive/refs/tags/${UTF8PROC_VERSION}.tar.gz - INSTALL_DIR ${INSTALL_DIR} - CMAKE_ARGS -DCMAKE_VERBOSE_MAKEFILE=1 -DCMAKE_INSTALL_PREFIX:PATH= - -DCMAKE_INSTALL_LIBDIR=lib - -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} - -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} - -DCMAKE_C_FLAGS_RELEASE=${CMAKE_C_FLAGS_RELEASE} - -DCMAKE_C_FLAGS_RELWITHDEBINFO=${CMAKE_C_FLAGS_RELWITHDEBINFO} - -DCMAKE_C_FLAGS_DEBUG=${CMAKE_C_FLAGS_DEBUG} - -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} - BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBUTF8PROC_FILENAME} -) +#set(UTF8PROC_VERSION v2.7.0) +#ExternalProject_Add(proj_utf8proc +# URL https://github.com/JuliaStrings/utf8proc/archive/refs/tags/${UTF8PROC_VERSION}.tar.gz +# INSTALL_DIR ${INSTALL_DIR} +# CMAKE_ARGS -DCMAKE_VERBOSE_MAKEFILE=1 -DCMAKE_INSTALL_PREFIX:PATH= +# -DCMAKE_INSTALL_LIBDIR=lib +# -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} +# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +# -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +# -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} +# -DCMAKE_C_FLAGS_RELEASE=${CMAKE_C_FLAGS_RELEASE} +# -DCMAKE_C_FLAGS_RELWITHDEBINFO=${CMAKE_C_FLAGS_RELWITHDEBINFO} +# -DCMAKE_C_FLAGS_DEBUG=${CMAKE_C_FLAGS_DEBUG} +# -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} +# BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBUTF8PROC_FILENAME} +#) -add_library(lib_utf8proc STATIC IMPORTED GLOBAL) -set_property(TARGET lib_utf8proc PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBUTF8PROC_FILENAME}) -target_include_directories(lib_utf8proc INTERFACE ${INSTALL_DIR}/include) -add_dependencies(lib_utf8proc proj_utf8proc) +#add_library(lib_utf8proc STATIC IMPORTED GLOBAL) +#set_property(TARGET lib_utf8proc PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBUTF8PROC_FILENAME}) +#target_include_directories(lib_utf8proc INTERFACE ${INSTALL_DIR}/include) +#add_dependencies(lib_utf8proc proj_utf8proc) # yaml-cpp -if (NOT MSVC) - if(CMAKE_BUILD_TYPE MATCHES Debug) - set(LIBYAML_FILENAME libyaml-cppd${CMAKE_STATIC_LIBRARY_SUFFIX}) - else() - set(LIBYAML_FILENAME libyaml-cpp${CMAKE_STATIC_LIBRARY_SUFFIX}) - endif() -else() - set(LIBYAML_FILENAME yaml-cpp${CMAKE_STATIC_LIBRARY_SUFFIX}) -endif() +#if (NOT MSVC) +# if(CMAKE_BUILD_TYPE MATCHES Debug) +# set(LIBYAML_FILENAME libyaml-cppd${CMAKE_STATIC_LIBRARY_SUFFIX}) +# else() +# set(LIBYAML_FILENAME libyaml-cpp${CMAKE_STATIC_LIBRARY_SUFFIX}) +# endif() +#else() +# set(LIBYAML_FILENAME yaml-cpp${CMAKE_STATIC_LIBRARY_SUFFIX}) +#endif() -ExternalProject_Add(proj_yamlcpp - URL https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.7.0.zip - INSTALL_DIR ${INSTALL_DIR} - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH= - -DCMAKE_INSTALL_LIBDIR=lib - -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} - -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} - -DYAML_CPP_BUILD_TESTS=OFF - -DYAML_CPP_BUILD_CONTRIB=OFF - -DYAML_CPP_BUILD_TOOLS=OFF - -DYAML_CPP_INSTALL=ON - -DYAML_BUILD_SHARED_LIBS=OFF - -DYAML_MSVC_SHARED_RT=OFF - -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} - -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} - BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBYAML_FILENAME} -) -add_library(lib_yamlcpp STATIC IMPORTED GLOBAL) -set_target_properties(lib_yamlcpp PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBYAML_FILENAME}) -target_include_directories(lib_yamlcpp INTERFACE ${INSTALL_DIR}/include) -add_dependencies(lib_yamlcpp proj_yamlcpp) -set_target_properties(lib_yamlcpp proj_yamlcpp PROPERTIES EXCLUDE_FROM_ALL TRUE) +#ExternalProject_Add(proj_yamlcpp +# URL https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.7.0.zip +# INSTALL_DIR ${INSTALL_DIR} +# CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH= +# -DCMAKE_INSTALL_LIBDIR=lib +# -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +# -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} +# -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} +# -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} +# -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} +# -DYAML_CPP_BUILD_TESTS=OFF +# -DYAML_CPP_BUILD_CONTRIB=OFF +# -DYAML_CPP_BUILD_TOOLS=OFF +# -DYAML_CPP_INSTALL=ON +# -DYAML_BUILD_SHARED_LIBS=OFF +# -DYAML_MSVC_SHARED_RT=OFF +# -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} +# -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES} +# BUILD_BYPRODUCTS ${INSTALL_DIR}/lib/${LIBYAML_FILENAME} +#) +#add_library(lib_yamlcpp STATIC IMPORTED GLOBAL) +#set_target_properties(lib_yamlcpp PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR}/lib/${LIBYAML_FILENAME}) +#target_include_directories(lib_yamlcpp INTERFACE ${INSTALL_DIR}/include) +#add_dependencies(lib_yamlcpp proj_yamlcpp) +#set_target_properties(lib_yamlcpp proj_yamlcpp PROPERTIES EXCLUDE_FROM_ALL TRUE) # Appsec event rules -ExternalProject_Add(proj_event_rules - GIT_REPOSITORY https://github.com/DataDog/appsec-event-rules.git - GIT_TAG 1.7.1 - GIT_SHALLOW ON - CONFIGURE_COMMAND "" - BUILD_COMMAND "" - INSTALL_COMMAND "") +#ExternalProject_Add(proj_event_rules +# GIT_REPOSITORY https://github.com/DataDog/appsec-event-rules.git +# GIT_TAG 1.7.1 +# GIT_SHALLOW ON +# CONFIGURE_COMMAND "" +# BUILD_COMMAND "" +# INSTALL_COMMAND "") -set_target_properties(proj_event_rules PROPERTIES EXCLUDE_FROM_ALL TRUE) +#set_target_properties(proj_event_rules PROPERTIES EXCLUDE_FROM_ALL TRUE) # vim: et