diff options
| author | yangwei <[email protected]> | 2019-05-24 18:08:22 +0800 |
|---|---|---|
| committer | yangwei <[email protected]> | 2019-05-24 18:08:22 +0800 |
| commit | 6987955ba3566f3856af043132444bfeb04846ca (patch) | |
| tree | 92200b6c19fa7eff4b4fd96885f80da1642a5dc6 | |
| parent | 7aa858405319bbe5ff14d04a52678a278ca9fe55 (diff) | |
1、更新version.cmake文件,命名规范化,配套更新sapp_main.c中使用的版本宏定义至GIT_VERSION
2、新增package.cmake用于打包RPM
3、注释掉CMakeLists中无关的捕包模式,目前仅保留pcap,pag和marsio,其中pcap对应的packet_io一定会编译
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | .splint.rc | 48 | ||||
| -rw-r--r-- | CMakeLists.txt | 99 | ||||
| -rw-r--r-- | cmake/Package.cmake | 36 | ||||
| -rw-r--r-- | cmake/Version.cmake | 43 | ||||
| -rw-r--r-- | entry/sapp_main.c | 2 | ||||
| -rw-r--r-- | packet_io/CMakeLists.txt | 26 | ||||
| -rw-r--r-- | run/conf/main.conf | 9 |
8 files changed, 135 insertions, 129 deletions
@@ -10,3 +10,4 @@ build/ .idea/ run/log/ run/sapp +version.txt
\ No newline at end of file diff --git a/.splint.rc b/.splint.rc deleted file mode 100644 index 3e4f7b3..0000000 --- a/.splint.rc +++ /dev/null @@ -1,48 +0,0 @@ -+sysdirs /usr/include/:/usr/include/netinet/:/usr/local/include
-+single-include
-+unixlib
--bounds
--retvalother
--retvalint
--redef
--boolops
--predboolint
--fixedformalarray
--type
--nestcomment
-
--I./include
--I./include/stream_inc
--I./include/support
--I./project
--I./packet_io
--I./dealpkt
--I./include/net
--I/usr/include/linux/
--Dasm=__asm__
--D__signed__=signed
--D__linux__=1
--Dlinux=1
--D__LITTLE_ENDIAN=1234
--D__BYTE_ORDER=__LITTLE_ENDIAN
--D__USE_BSD=1
--D__unix__=1
--D__unix=1
--D__size_t
--D__daddr_t_defined
--D__SIZE_T
--D_ARPA_INET_H=1
--D__gnu_linux__=1
--D__USE_ISOC95=1
--D__USE_ISOC99=1
--D__USE_POSIX199506=1
--D__USE_POSIX199309=1
--D__amd64=1
--D__USE_POSIX=1
--D__USE_POSIX2=1
--D__ELF__=1
--D__USE_MISC=1
--D__USE_POSIX=1
--D__off_t_defined
--D__size_t__
--D_STDLIB_H=1
diff --git a/CMakeLists.txt b/CMakeLists.txt index bc71270..903c6bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,11 @@ cmake_minimum_required(VERSION 2.8) +set(project_name sapp) + +project(${project_name}) + + set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) include(Version) @@ -14,7 +19,7 @@ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG -DHIGH_PERF=0") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG -DHIGH_PERF=0") #set(CMAKE_INSTALL_PREFIX /home/ceiec/sapp/) -set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/run/) +set(CMAKE_INSTALL_PREFIX /home/mesasoft/sapp_run/) option(PLATFORM_MODE_SERIAL "Using serial mode" FALSE) @@ -49,35 +54,35 @@ set(MESA_SDK_PREFIX "/opt/MESA/" CACHE STRING "MESA Framework Prefix") # Capture Mode option(OPT_IOMODE_PCAP "Capture network traffic with libpcap" ON) option(OPT_IOMODE_PAG "Capture network traffic with libpag" OFF) -option(OPT_IOMODE_PPF "Capture network traffic with libppf" OFF) -option(OPT_IOMODE_PFRING "Capture network traffic with PF-RING" OFF) -option(OPT_IOMODE_DPDK "Capture network traffic with DPDK" OFF) -option(OPT_IOMODE_PAG_N95 "Capture network traffic with N95" OFF) +#option(OPT_IOMODE_PPF "Capture network traffic with libppf" OFF) +#option(OPT_IOMODE_PFRING "Capture network traffic with PF-RING" OFF) +#option(OPT_IOMODE_DPDK "Capture network traffic with DPDK" OFF) +#option(OPT_IOMODE_PAG_N95 "Capture network traffic with N95" OFF) option(OPT_IOMODE_MARSIO "Capture network traffic with MARSIO" OFF) if(OPT_IOMODE_PCAP) - set(CAPTURE_MODE "PCAP") + set(CAPTURE_MODE "PCAP") endif() if(OPT_IOMODE_PAG) set(CAPTURE_MODE "PAG") endif() -if(OPT_IOMODE_PPF) - set(CAPTURE_MODE "PPF") -endif() - -if(OPT_IOMODE_PFRING) - set(CAPTURE_MODE "PFRING") -endif() - -if(OPT_IOMODE_DPDK) - set(CAPTURE_MODE "DPDK") -endif() - -if(OPT_IOMODE_PAG_N95) - set(CAPTURE_MODE "PAG_N95") -endif() +#if(OPT_IOMODE_PPF) +# set(CAPTURE_MODE "PPF") +#endif() +# +#if(OPT_IOMODE_PFRING) +# set(CAPTURE_MODE "PFRING") +#endif() +# +#if(OPT_IOMODE_DPDK) +# set(CAPTURE_MODE "DPDK") +#endif() +# +#if(OPT_IOMODE_PAG_N95) +# set(CAPTURE_MODE "PAG_N95") +#endif() if(OPT_IOMODE_MARSIO) set(CAPTURE_MODE "MARSIO") @@ -91,20 +96,20 @@ if(CAPTURE_MODE MATCHES "PAG") set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_PAG) endif() -if(CAPTURE_MODE MATCHES "PPF") - set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_PPF) -endif() - -if(CAPTURE_MODE MATCHES "PFRING") - set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_PFRING) -endif() - -if(CAPTURE_MODE MATCHES "DPDK") - set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_DPDK) -endif() +#if(CAPTURE_MODE MATCHES "PPF") +# set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_PPF) +#endif() +# +#if(CAPTURE_MODE MATCHES "PFRING") +# set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_PFRING) +#endif() +# +#if(CAPTURE_MODE MATCHES "DPDK") +# set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_DPDK) +#endif() if(CAPTURE_MODE MATCHES "MARSIO") - set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_MARSIO -DIOMODE_MARSIO) + set(CAPTURE_DEFINITIONS -DCAPTURE_MODE_MARSIO -DIOMODE_MARSIO) endif() # Memory Allocator @@ -171,7 +176,7 @@ install(PROGRAMS ${CMAKE_BINARY_DIR}/entry/sapp DESTINATION .) install(PROGRAMS run/r2 DESTINATION .) install(PROGRAMS run/r3 DESTINATION .) -install(PROGRAMS run/vv.py DESTINATION .) +#install(PROGRAMS run/vv.py DESTINATION .) install(PROGRAMS run/pag.conf DESTINATION .) install(PROGRAMS run/memchk.sh DESTINATION .) install(FILES run/conf/gdev_block.conf DESTINATION conf) @@ -190,21 +195,26 @@ if(CAPTURE_MODE MATCHES "MARSIO") install(FILES ${CMAKE_BINARY_DIR}/packet_io/packet_io_marsio.so DESTINATION platform_lib) endif() -if(CAPTURE_MODE MATCHES "PCAP") - install(FILES ${CMAKE_BINARY_DIR}/packet_io/packet_io_pcap.so DESTINATION platform_lib) +if(CAPTURE_MODE MATCHES "PAG") + install(FILES ${CMAKE_BINARY_DIR}/packet_io/packet_io_pag.so DESTINATION platform_lib) endif() -install(FILES run/plug/protocol/conflist_protocol.inf DESTINATION plug/protocol) +#if(CAPTURE_MODE MATCHES "PCAP") + install(FILES ${CMAKE_BINARY_DIR}/packet_io/packet_io_pcap.so DESTINATION platform_lib) +#endif() -install(FILES run/plug/protocol/isakmp_protocol_plug/isakmp_protocol_plug.inf DESTINATION plug/protocol/isakmp_protocol_plug) -install(FILES ${CMAKE_BINARY_DIR}/inner_plug/isakmp_protocol_plug.so DESTINATION plug/protocol/isakmp_protocol_plug) +install(FILES run/plug/protocol/conflist_protocol.inf DESTINATION plug/protocol) -install(FILES run/plug/protocol/l2tp_protocol_plug/l2tp_protocol_plug.inf DESTINATION plug/protocol/l2tp_protocol_plug) -install(FILES ${CMAKE_BINARY_DIR}/inner_plug/l2tp_protocol_plug.so DESTINATION plug/protocol/l2tp_protocol_plug) +if(NOT PLATFORM_MODE_SERIAL) + install(FILES run/plug/protocol/isakmp_protocol_plug/isakmp_protocol_plug.inf DESTINATION plug/protocol/isakmp_protocol_plug) + install(FILES ${CMAKE_BINARY_DIR}/inner_plug/isakmp_protocol_plug.so DESTINATION plug/protocol/isakmp_protocol_plug) -install(FILES run/plug/protocol/pptp_protocol_plug/pptp_protocol_plug.inf DESTINATION plug/protocol/pptp_protocol_plug) -install(FILES ${CMAKE_BINARY_DIR}/inner_plug/pptp_protocol_plug.so DESTINATION plug/protocol/pptp_protocol_plug) + install(FILES run/plug/protocol/l2tp_protocol_plug/l2tp_protocol_plug.inf DESTINATION plug/protocol/l2tp_protocol_plug) + install(FILES ${CMAKE_BINARY_DIR}/inner_plug/l2tp_protocol_plug.so DESTINATION plug/protocol/l2tp_protocol_plug) + install(FILES run/plug/protocol/pptp_protocol_plug/pptp_protocol_plug.inf DESTINATION plug/protocol/pptp_protocol_plug) + install(FILES ${CMAKE_BINARY_DIR}/inner_plug/pptp_protocol_plug.so DESTINATION plug/protocol/pptp_protocol_plug) +endif() install(FILES run/plug/platform/conflist_platform.inf DESTINATION plug/platform) @@ -219,3 +229,6 @@ install(FILES run/plug/business/conflist_business.inf DESTINATION plug/business) install(FILES run/plug/business/test_app/test_app.inf DESTINATION plug/business/test_app) install(FILES ${CMAKE_BINARY_DIR}/test_so/test_app_sapp.so DESTINATION plug/business/test_app) install(FILES ${CMAKE_BINARY_DIR}/test_so/trace_delay.so DESTINATION plug/business/test_app) + + +include(Package)
\ No newline at end of file diff --git a/cmake/Package.cmake b/cmake/Package.cmake new file mode 100644 index 0000000..a797e6c --- /dev/null +++ b/cmake/Package.cmake @@ -0,0 +1,36 @@ +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + set(CPACK_PACKAGE_NAME "${project_name}-debug") +else() + set(CPACK_PACKAGE_NAME ${project_name}) +endif() + +message(STATUS "Package: ${CPACK_PACKAGE_NAME}") + +set(CPACK_PACKAGE_VECDOR "MESA") +set(CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}") +set(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}") +set(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}.${VERSION_BUILD}") +set(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) + +#set(CPACK_RPM_PACKAGE_DEBUG 1) + +# RPM Build +set(CPACK_GENERATOR "RPM") +set(CPACK_RPM_AUTO_GENERATED_FILE_NAME ON) +set(CPACK_RPM_FILE_NAME "RPM-DEFAULT") +set(CPACK_RPM_PACKAGE_VENDOR "MESA") +set(CPACK_RPM_PACKAGE_AUTOREQPROV "no") +set(CPACK_RPM_PACKAGE_RELEASE_DIST on) +set(CPACK_RPM_DEBUGINFO_PACKAGE off) + +set(CPACK_BUILD_SOURCE_DIRS "${CMAKE_SOURCE_DIR}") + +# Must uninstall the debug package before install release package +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + set(CPACK_RPM_PACKAGE_CONFLICTS "${project_name}-debug") +else() + set(CPACK_RPM_PACKAGE_CONFLICTS ${project_name}) + # set(CPACK_STRIP_FILES TRUE) +endif() + +include(CPack) diff --git a/cmake/Version.cmake b/cmake/Version.cmake index ff92e75..5bbb1dc 100644 --- a/cmake/Version.cmake +++ b/cmake/Version.cmake @@ -1,4 +1,3 @@ - # Using autorevision.sh to generate version information set(__SOURCE_AUTORESIVISION ${CMAKE_SOURCE_DIR}/autorevision.sh) @@ -7,37 +6,41 @@ set(__VERSION_CACHE ${CMAKE_SOURCE_DIR}/version.txt) set(__VERSION_CONFIG ${CMAKE_BINARY_DIR}/version.cmake) file(COPY ${__SOURCE_AUTORESIVISION} DESTINATION ${CMAKE_BINARY_DIR} - FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE - WORLD_READ WORLD_EXECUTE) + FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE + WORLD_READ WORLD_EXECUTE) # execute autorevision.sh to generate version information -execute_process(COMMAND ${__AUTORESIVISION} -t cmake -o ${__VERSION_CACHE} - OUTPUT_FILE ${__VERSION_CONFIG} ERROR_QUIET) +execute_process(COMMAND ${__AUTORESIVISION} -t cmake -o ${__VERSION_CACHE} + OUTPUT_FILE ${__VERSION_CONFIG} ERROR_QUIET) include(${__VERSION_CONFIG}) # extract major, minor, patch version from git tag -string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" SAPP_VERSION_MAJOR "${VCS_TAG}") -string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" SAPP_VERSION_MINOR "${VCS_TAG}") -string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" SAPP_VERSION_PATCH "${VCS_TAG}") +string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${VCS_TAG}") +string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${VCS_TAG}") +string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${VCS_TAG}") -if(NOT SAPP_VERSION_MAJOR) - set(SAPP_VERSION_MAJOR 3) +if(NOT VERSION_MAJOR) + set(VERSION_MAJOR 3) endif() -if(NOT SAPP_VERSION_MINOR) - set(SAPP_VERSION_MINOR 0) +if(NOT VERSION_MINOR) + set(VERSION_MINOR 0) endif() -if(NOT SAPP_VERSION_PATCH) - set(SAPP_VERSION_PATCH 0) +if(NOT VERSION_PATCH) + set(VERSION_PATCH 0) endif() -set(SAPP_VERSION "${SAPP_VERSION_MAJOR}.${SAPP_VERSION_MINOR}.${SAPP_VERSION_PATCH}") -set(SAPP_VERSION_BUILD "${VCS_SHORT_HASH}") +set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") +set(VERSION_BUILD "${VCS_SHORT_HASH}") + +set(GIT_VERSION + "${VERSION}-${CMAKE_BUILD_TYPE}-${VERSION_BUILD}-${VCS_BRANCH}-${VCS_TAG}-${VCS_DATE}") + +string(REGEX REPLACE "[-:+/\\.]" "_" GIT_VERSION ${GIT_VERSION}) + +add_definitions(-DGIT_VERSION=\"${GIT_VERSION}\") -set(SAPP_GIT_VERSION - "${SAPP_VERSION}-${CMAKE_BUILD_TYPE}-${SAPP_VERSION_BUILD}-${VCS_BRANCH}-${VCS_TAG}-${VCS_DATE}") -add_definitions(-DGITVER=\"${SAPP_GIT_VERSION}\") # print information -message(STATUS "Sapp Version: ${SAPP_GIT_VERSION}") +message(STATUS "Sapp Version: ${GIT_VERSION}") diff --git a/entry/sapp_main.c b/entry/sapp_main.c index 27461f0..e504a07 100644 --- a/entry/sapp_main.c +++ b/entry/sapp_main.c @@ -80,7 +80,7 @@ static void signal_take_over(void) int main(int argc, char *argv[]) { if((argc == 2) && (strncasecmp(argv[1], "-v", 2) == 0)){ - const char *sapp_version = GITVER; + const char *sapp_version = GIT_VERSION; printf("Platform version: %s\n", sapp_version); exit(0); } diff --git a/packet_io/CMakeLists.txt b/packet_io/CMakeLists.txt index 96d797c..c720ad7 100644 --- a/packet_io/CMakeLists.txt +++ b/packet_io/CMakeLists.txt @@ -12,26 +12,26 @@ include_directories(${CMAKE_SOURCE_DIR}/packet_io) add_definitions(-fPIC) -if(CAPTURE_MODE MATCHES "PCAP") - set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_pcap.c) - add_library(packet_io_pcap SHARED ${PACKET_IO_SOURCE}) +#if(CAPTURE_MODE MATCHES "PCAP") + #set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_pcap.c) + add_library(packet_io_pcap SHARED packet_io_pcap.c) set_target_properties(packet_io_pcap PROPERTIES PREFIX "") -endif() +#endif() if(CAPTURE_MODE MATCHES "PAG") set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_pag_marsio.c) add_library(packet_io_pag_marsio SHARED ${PACKET_IO_SOURCE}) endif() -if(CAPTURE_MODE MATCHES "PPF") - set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_ppf.c) - add_library(packet_io_ppf SHARED ${PACKET_IO_SOURCE}) -endif() - -if(CAPTURE_MODE MATCHES "DPDK") - set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_dpdk.c) - add_library(packet_io_dpdk SHARED ${PACKET_IO_SOURCE}) -endif() +#if(CAPTURE_MODE MATCHES "PPF") +# set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_ppf.c) +# add_library(packet_io_ppf SHARED ${PACKET_IO_SOURCE}) +#endif() +# +#if(CAPTURE_MODE MATCHES "DPDK") +# set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_dpdk.c) +# add_library(packet_io_dpdk SHARED ${PACKET_IO_SOURCE}) +#endif() if(CAPTURE_MODE MATCHES "MARSIO") set(PACKET_IO_SOURCE ${PACKET_IO_SOURCE} packet_io_marsio.c) diff --git a/run/conf/main.conf b/run/conf/main.conf index ab31134..53558c1 100644 --- a/run/conf/main.conf +++ b/run/conf/main.conf @@ -1,6 +1,6 @@ [Module] -threadnum=1 +threadnum=8 #cpu_bind_core_mask=1,2,3,4,5 cpu_bind_core_mask=0xFF0 app_instance_name=sapp @@ -61,7 +61,7 @@ treat_vlan_as_mac_in_mac=0 #(0:pag,1:pcap,2:dumpfile,3:pfring,4:DPDK,5:ppf,6:NPacket,7:qnf,8:N95,9:pcap-dumpfile-list,10:topsec, #(11:ipfile, 12:marsio4, 13:agent_smith, 14:dpdk_vxlan, 15:marsio_vxlan, 16:pag_marsio -capdatamodlel=2 +capdatamodlel=1 forwardpkt=0 pcapdevice=lo pcapdevice2=em2 @@ -87,9 +87,10 @@ net_connection_mode=1 [ShowStatInfo] showinterval=3 -iknow_switch=1 +iknow_switch=0 iknow_listen_port=65432 -platform_log_level=10 +platform_log_level=30 + FS_switch=1 FS_cycle=3 FS_print_switch=1 |
