mirror of
https://github.com/openappsec/attachment.git
synced 2025-11-16 17:31:54 +03:00
Add docket support
This commit is contained in:
48
attachments/nginx/ngx_module/CMakeLists.txt
Normal file
48
attachments/nginx/ngx_module/CMakeLists.txt
Normal file
@@ -0,0 +1,48 @@
|
||||
MACRO(CREATE_INCLUDE_LIST result)
|
||||
file(READ ${CMAKE_INSTALL_PREFIX}/nginx-src/include_paths.mk relative_includes)
|
||||
STRING(REGEX REPLACE "\n" ";" relative_includes "${relative_includes}")
|
||||
set(inclist "")
|
||||
FOREACH(include ${relative_includes})
|
||||
if(NOT include MATCHES "^/")
|
||||
set(inclist ${inclist} "${CMAKE_INSTALL_PREFIX}/nginx-src/${include}")
|
||||
else()
|
||||
set(inclist ${inclist} "${include}")
|
||||
endif()
|
||||
ENDFOREACH()
|
||||
set(${result} ${inclist})
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(READ_COMPILE_FLAGS result)
|
||||
file(READ ${CMAKE_INSTALL_PREFIX}/nginx-src/cc_flags.mk CC_FLAGS)
|
||||
string(REGEX REPLACE "\n" "" CC_FLAGS "${CC_FLAGS}")
|
||||
set(flag_list "")
|
||||
FOREACH(flag ${CC_FLAGS})
|
||||
if (flag MATCHES "-fstack-clash-protection" OR flag MATCHES "-fcf-protection" OR flag MATCHES "-Wno-cast-function-type")
|
||||
continue()
|
||||
endif()
|
||||
|
||||
set(flag_list ${flag_list} "${flag}")
|
||||
ENDFOREACH()
|
||||
separate_arguments(flag_list)
|
||||
set(${result} ${flag_list})
|
||||
ENDMACRO()
|
||||
|
||||
add_library(
|
||||
ngx_module
|
||||
SHARED
|
||||
ngx_http_cp_attachment_module.c ngx_cp_thread.c ngx_cp_hook_threads.c ngx_cp_hooks.c ngx_cp_utils.c
|
||||
ngx_cp_initializer.c ngx_cp_io.c ngx_cp_static_content.c ngx_cp_custom_response.c ngx_modules.c
|
||||
ngx_cp_compression.c ngx_cp_http_parser.c ngx_cp_failing_state.c ngx_cp_metric.c
|
||||
)
|
||||
|
||||
add_dependencies(ngx_module osrc_shmem_ipc osrc_nginx_attachment_util osrc_compression_utils)
|
||||
|
||||
target_link_libraries(ngx_module osrc_shmem_ipc osrc_nginx_attachment_util osrc_compression_utils)
|
||||
|
||||
CREATE_INCLUDE_LIST(NGX_INCLUDES)
|
||||
READ_COMPILE_FLAGS(CC_FLAG_LIST)
|
||||
|
||||
target_include_directories(ngx_module PRIVATE ${NGX_INCLUDES})
|
||||
target_compile_options(ngx_module PRIVATE ${CC_FLAG_LIST})
|
||||
|
||||
install(TARGETS ngx_module DESTINATION lib)
|
||||
Reference in New Issue
Block a user