hunting/utils/WebServer
2024-02-15 19:39:13 -08:00
..
include Add goahead module. 2023-12-21 03:54:46 -08:00
src Improve build goahead. 2023-12-21 08:20:01 -08:00
CMakeLists.txt Fixed:Resolve CMakeLists warning. 2024-02-15 19:39:13 -08:00
README.md Improve build goahead. 2023-12-21 08:20:01 -08:00

1. Goahead开发文档

1.1. Goahead版本

5.2.0

1.2. 编译脚本

# build goahead before make libgo.a
add_custom_command(
    OUTPUT ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/Makefile
    COMMAND echo "tar zxvf goahead-5.2.0.tar.gz"
    COMMAND tar zxvf goahead-5.2.0.tar.gz                    // 解压源码包
    WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/
)
add_custom_command(
    OUTPUT ${EXTERNAL_LIBS_OUTPUT_PATH}/libgo.a
    DEPENDS ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/Makefile
    COMMAND make CC=${CMAKE_C_COMPILER} ARCH=${SET_ARCH} PROFILE=${LIB_TYPE} 
    COMMAND mv ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/libgo.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libgo.a // 拷贝静态库到output目录
    COMMAND mv ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/libmbedtls.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libmbedtls.a // 拷贝静态库到output目录
    COMMAND mv ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/libgoahead-mbedtls.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libgoahead-mbedtls.a // 拷贝静态库到output目录
    COMMAND cp ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/self.crt ${PLATFORM_PATH}/cmake-shell/ // 拷贝self.crt,self.key两个到运行目录
    COMMAND cp ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/self.key ${PLATFORM_PATH}/cmake-shell/ // 拷贝self.crt,self.key两个到运行目录
    COMMAND cp ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/test/route.txt ${GOAHEAD_CONFIG_FILE_PATH} // 配置文件两个route.txtauth.txt
    COMMAND cp ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/test/auth.txt ${GOAHEAD_CONFIG_FILE_PATH} // 配置文件两个route.txtauth.txt
    WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead
)
add_custom_target(
    libgo.a // 创建goahead目标
    DEPENDS ${EXTERNAL_LIBS_OUTPUT_PATH}/libgo.a
)

1.3. 环境配置

  1. 拷贝self.crt,self.key两个到运行目录
  2. 配置文件两个route.txtauth.txt