--- CMakeLists.txt.orig	2023-08-17 10:28:49 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()
 
 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
 
 # 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)
 
 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")
 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(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)
         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}
-                $<TARGET_FILE:libddwaf_static> $<TARGET_FILE:lib_re2> $<TARGET_FILE:lib_ac>
-                $<TARGET_FILE:lib_injection> $<TARGET_FILE:lib_utf8proc> $<TARGET_FILE:lib_radix>
-            COMMAND ${CMAKE_COMMAND} -E copy lib_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $<TARGET_FILE:libddwaf_static>
-            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 $<TARGET_FILE:libddwaf_static>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_re2>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_ac>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_injection>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_utf8proc>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_radix>
-              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} $<TARGET_FILE:libddwaf_static>
-              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 $<TARGET_FILE:libddwaf_static>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_re2>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_ac>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_injection>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_utf8proc>
-              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_radix>
-              COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_OBJECTS:glibc_compat> 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} $<TARGET_FILE:libddwaf_static>
-              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 $<TARGET_FILE:libddwaf_static> -o $<TARGET_FILE:libddwaf_static>.stripped)
-              install(FILES $<TARGET_FILE:libddwaf_static>.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}
+#                $<TARGET_FILE:libddwaf_static> $<TARGET_FILE:lib_re2> $<TARGET_FILE:lib_ac>
+#                $<TARGET_FILE:lib_injection> $<TARGET_FILE:lib_utf8proc> $<TARGET_FILE:lib_radix>
+#            COMMAND ${CMAKE_COMMAND} -E copy lib_comb/combined${CMAKE_STATIC_LIBRARY_SUFFIX} $<TARGET_FILE:libddwaf_static>
+#            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 $<TARGET_FILE:libddwaf_static>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_re2>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_ac>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_injection>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_utf8proc>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_radix>
+#              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} $<TARGET_FILE:libddwaf_static>
+#              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 $<TARGET_FILE:libddwaf_static>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_re2>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_ac>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_injection>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_utf8proc>
+#              COMMAND ${CMAKE_COMMAND} -E chdir ar_comb ${CMAKE_AR} -x $<TARGET_FILE:lib_radix>
+#              COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_OBJECTS:glibc_compat> 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} $<TARGET_FILE:libddwaf_static>
+#              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 $<TARGET_FILE:libddwaf_static> -o $<TARGET_FILE:libddwaf_static>.stripped)
+#              install(FILES $<TARGET_FILE:libddwaf_static>.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")
     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)
