This is an automated email from the ASF dual-hosted git repository. szaszm pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
commit bf7939175a77ba6725a2372a6a08f6f68e2e7366 Author: Gabor Gyimesi <[email protected]> AuthorDate: Mon Jul 19 15:38:05 2021 +0200 MINIFICPP-1367 Add ENABLE_NANOFI cmake option, disable by default This closes #1124 Signed-off-by: Marton Szasz <[email protected]> --- .github/workflows/ci.yml | 8 ++--- CMakeLists.txt | 19 ++++++----- README.md | 3 +- bootstrap.sh | 4 +++ bstrp_functions.sh | 28 +++++++++++++-- cmake/BuildTests.cmake | 89 +++++++++++++++++++++++++----------------------- cmake/DockerConfig.cmake | 1 + docker/Dockerfile | 5 +-- win_build_vs.bat | 4 ++- 9 files changed, 100 insertions(+), 61 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d380294..f9ceac0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: run: | export PATH="/usr/local/opt/[email protected]/lib:/usr/local/opt/[email protected]/include:/usr/local/opt/[email protected]/bin:$PATH" export PKG_CONFIG_PATH="/usr/local/opt/[email protected]/lib/pkgconfig" - ./bootstrap.sh -e -t && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_LUA_SCRIPTING=1 -DENABLE_AWS=ON -DENABLE_AZURE=ON -DENABLE_SQL=ON -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON .. && cmake --build . --parallel 4 + ./bootstrap.sh -e -t && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_LUA_SCRIPTING=1 -DENABLE_AWS=ON -DENABLE_AZURE=ON -DENABLE_SQL=ON -DENABLE_NANOFI=ON -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON .. && cmake --build . --parallel 4 - name: test run: cd build && make test ARGS="--timeout 300 -j4 --output-on-failure" macos_xcode_12_0: @@ -111,7 +111,7 @@ jobs: run: | PATH %PATH%;C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64 PATH %PATH%;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Roslyn - win_build_vs.bat build /64 /CI /S /A /PDH /K /L /R /Z + win_build_vs.bat build /64 /CI /S /A /PDH /K /L /R /Z /N shell: cmd - name: test run: cd build && ctest --timeout 300 --parallel 8 -C Release --output-on-failure @@ -228,7 +228,7 @@ jobs: echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null - name: build - run: ./bootstrap.sh -e -t && cd build && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DENABLE_JNI=ON -DENABLE_SENSORS=ON -DENABLE_OPENWSMAN=ON -DENABLE_OPENCV=ON -DENABLE_MQTT=ON -DENABLE_GPS=ON -DENABLE_USB_CAMERA=ON -DENABLE_LIBRDKAFKA=ON -DENABLE_OPC=ON -DENABLE_SFTP=ON -DENABLE_COAP=ON -DENABLE_PYTHON=ON -DENABLE_SQL=ON -DENABLE_AWS=ON -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ .. && cmake --build . --parallel 4 + run: ./bootstrap.sh -e -t && cd build && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DENABLE_NANOFI=ON -DENABLE_JNI=ON -DENABLE_SENSORS=ON -DENABLE_OPENWSMAN=ON -DENABLE_OPENCV=ON -DENABLE_MQTT=ON -DENABLE_GPS=ON -DENABLE_USB_CAMERA=ON -DENABLE_LIBRDKAFKA=ON -DENABLE_OPC=ON -DENABLE_SFTP=ON -DENABLE_COAP=ON -DENABLE_PYTHON=ON -DENABLE_SQL=ON -DENABLE_AWS=ON -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ .. && cmake [...] - name: test run: cd build && make test ARGS="--timeout 300 -j8 --output-on-failure" ubuntu_16_04_all: @@ -255,7 +255,7 @@ jobs: echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null - name: build - run: sudo mount tmpfs -t tmpfs /tmp && ./bootstrap.sh -e -t && cd build && cmake -DUSE_SHARED_LIBS= -DENABLE_OPENWSMAN=ON -DENABLE_OPENCV=ON -DENABLE_GPS=ON -DENABLE_USB_CAMERA=ON -DENABLE_LIBRDKAFKA=ON -DENABLE_OPC=ON -DENABLE_SFTP=ON -DENABLE_MQTT=ON -DENABLE_COAP=ON -DENABLE_PYTHON=ON -DENABLE_SQL=ON -DENABLE_AWS=ON -DENABLE_AZURE=ON -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON .. && cmake --build . --parallel 4 + run: sudo mount tmpfs -t tmpfs /tmp && ./bootstrap.sh -e -t && cd build && cmake -DUSE_SHARED_LIBS= -DENABLE_NANOFI=ON -DENABLE_OPENWSMAN=ON -DENABLE_OPENCV=ON -DENABLE_GPS=ON -DENABLE_USB_CAMERA=ON -DENABLE_LIBRDKAFKA=ON -DENABLE_OPC=ON -DENABLE_SFTP=ON -DENABLE_MQTT=ON -DENABLE_COAP=ON -DENABLE_PYTHON=ON -DENABLE_SQL=ON -DENABLE_AWS=ON -DENABLE_AZURE=ON -DSTRICT_GSL_CHECKS=AUDIT -DFAIL_ON_WARNINGS=ON .. && cmake --build . --parallel 4 - name: test run: cd build && make test ARGS="--timeout 300 -j8 --output-on-failure" debian: diff --git a/CMakeLists.txt b/CMakeLists.txt index 370d80d..89e134a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,6 +50,7 @@ option(ENABLE_OPS "Enable Operations/zlib Tools" ON) option(ENABLE_JNI "Instructs the build system to enable the JNI extension" OFF) option(ENABLE_OPENCV "Instructs the build system to enable the OpenCV extension" OFF) option(ENABLE_OPC "Instructs the build system to enable the OPC extension" OFF) +option(ENABLE_NANOFI "Instructs the build system to enable nanofi library" OFF) option(BUILD_SHARED_LIBS "Build yaml cpp shared lib" OFF) option(BUILD_ROCKSDB "Instructs the build system to use RocksDB from the third party directory" ON) @@ -574,8 +575,10 @@ endif() ## NOW WE CAN ADD LIBRARIES AND EXTENSIONS TO MAIN add_subdirectory(main) -add_subdirectory(nanofi) -add_dependencies(nanofi minifiexe) +if (ENABLE_NANOFI) + add_subdirectory(nanofi) + add_dependencies(nanofi minifiexe) +endif() option(ENABLE_ENCRYPT_CONFIG "Enables build of encrypt-config binary." ON) if (ENABLE_ENCRYPT_CONFIG) @@ -589,12 +592,12 @@ if (NOT DISABLE_CURL AND NOT DISABLE_CONTROLLER) endif() -if (NOT DISABLE_CURL) - if (ENABLE_PYTHON) - if (NOT WIN32) - add_subdirectory(python/library) - endif() - endif(ENABLE_PYTHON) +if (NOT DISABLE_CURL AND ENABLE_PYTHON AND NOT WIN32) + if (ENABLE_NANOFI) + add_subdirectory(python/library) + else() + message(FATAL_ERROR "Nanofi, a dependency of the python extension is disabled, therefore Python extension cannot be enabled.") + endif() endif() get_property(selected_extensions GLOBAL PROPERTY EXTENSION-OPTIONS) diff --git a/README.md b/README.md index 39c5261..bf71160 100644 --- a/README.md +++ b/README.md @@ -367,6 +367,7 @@ $ # It is recommended that you install bison from source as HomeBrew now uses an W. Openwsman Support ...........Disabled X. Azure Support ...............Disabled Y. Systemd Support .............Enabled + Z. NanoFi Support ..............Enabled **************************************** Build Options. **************************************** @@ -383,7 +384,7 @@ $ # It is recommended that you install bison from source as HomeBrew now uses an version of cmake or other software, or incompatibility with other extensions - Enter choice [ A - Y or 1-7 ] + Enter choice [ A - Z or 1-7 ] ``` - Boostrap now saves state between runs. State will automatically be saved. Provide -c or --clear to clear this state. The -i option provides a guided menu install with the ability to change diff --git a/bootstrap.sh b/bootstrap.sh index d92d6f1..4b1a974 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -39,6 +39,7 @@ export CMAKE_MIN_VERSION=() export INCOMPATIBLE_WITH=() export DEPLOY_LIMITS=() export DEPENDENCIES=() +export DEPENDS_ON=() CORES=1 BUILD="false" @@ -326,6 +327,9 @@ add_disabled_option AZURE_ENABLED ${FALSE} "ENABLE_AZURE" add_disabled_option SYSTEMD_ENABLED ${TRUE} "ENABLE_SYSTEMD" +add_disabled_option NANOFI_ENABLED ${FALSE} "ENABLE_NANOFI" +set_dependency PYTHON_ENABLED NANOFI_ENABLED + USE_SHARED_LIBS=${TRUE} ASAN_ENABLED=${FALSE} FAIL_ON_WARNINGS=${FALSE} diff --git a/bstrp_functions.sh b/bstrp_functions.sh index 99e98dd..66d08bb 100755 --- a/bstrp_functions.sh +++ b/bstrp_functions.sh @@ -69,6 +69,10 @@ add_multi_option(){ done } +set_dependency(){ + DEPENDS_ON+=("$1:$2") +} + set_incompatible_with(){ INCOMPATIBLE_WITH+=("$1:$2") INCOMPATIBLE_WITH+=("$2:$1") @@ -187,6 +191,17 @@ check_compatibility(){ fi fi done + for option in "${DEPENDS_ON[@]}" ; do + OPT=${option%%:*} + if [ "$OPT" = "$1" ]; then + OTHER_FEATURE=${option#*:} + OTHER_FEATURE_VALUE=${!OTHER_FEATURE} + if [ "${OTHER_FEATURE_VALUE}" != "Enabled" ]; then + echo "false" + return + fi + fi + done echo "true" } @@ -214,6 +229,13 @@ ToggleFeature(){ ALL_FEATURES_ENABLED="Disabled" if [ "${VARIABLE_VALUE}" = "Enabled" ]; then eval "$1=${FALSE}" + for option in "${DEPENDS_ON[@]}" ; do + DEPENDENT_FEATURE=${option%%:*} + FEATURE=${option#*:} + if [ "$FEATURE" = "$1" ]; then + eval "$DEPENDENT_FEATURE=${FALSE}" + fi + done else for option in "${CMAKE_MIN_VERSION[@]}" ; do OPT=${option%%:*} @@ -368,6 +390,7 @@ show_supported_features() { echo "W. Openwsman Support ...........$(print_feature_status OPENWSMAN_ENABLED)" echo "X. Azure Support ...............$(print_feature_status AZURE_ENABLED)" echo "Y. Systemd Support .............$(print_feature_status SYSTEMD_ENABLED)" + echo "Z. NanoFi Support ..............$(print_feature_status NANOFI_ENABLED)" echo "****************************************" echo " Build Options." echo "****************************************" @@ -390,7 +413,7 @@ show_supported_features() { read_feature_options(){ local choice - echo -n "Enter choice [ A - Y or 1-7 ] " + echo -n "Enter choice [ A - Z or 1-7 ] " read -r choice choice=$(echo "${choice}" | tr '[:upper:]' '[:lower:]') case $choice in @@ -421,6 +444,7 @@ read_feature_options(){ w) ToggleFeature OPENWSMAN_ENABLED ;; x) ToggleFeature AZURE_ENABLED ;; y) ToggleFeature SYSTEMD_ENABLED ;; + z) ToggleFeature NANOFI_ENABLED ;; 1) ToggleFeature TESTS_ENABLED ;; 2) EnableAllFeatures ;; 3) ToggleFeature JNI_ENABLED;; @@ -439,7 +463,7 @@ read_feature_options(){ fi ;; q) exit 0;; - *) echo -e "${RED}Please enter an option A-X or 1-7...${NO_COLOR}" && sleep 2 + *) echo -e "${RED}Please enter an option A-Z or 1-7...${NO_COLOR}" && sleep 2 esac } diff --git a/cmake/BuildTests.cmake b/cmake/BuildTests.cmake index 337f26e..4bea79c 100644 --- a/cmake/BuildTests.cmake +++ b/cmake/BuildTests.cmake @@ -39,51 +39,54 @@ if(NOT EXCLUDE_BOOST) endif() function(appendIncludes testName) - target_include_directories(${testName} SYSTEM BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/thirdparty/catch") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/include") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/c2/protocols") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/c2") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/controller") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/repository") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/yaml") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/statemanagement") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/statemanagement/metrics") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/io") - if(WIN32) - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win/io") - else() - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix/io") - endif() - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/utils") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/processors") - target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/provenance") + target_include_directories(${testName} SYSTEM BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/thirdparty/catch") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/include") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/c2/protocols") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/c2") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/controller") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/repository") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/yaml") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/statemanagement") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/core/statemanagement/metrics") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/io") + if(WIN32) + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win/io") + else() + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix/io") + endif() + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/utils") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/processors") + target_include_directories(${testName} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/provenance") endfunction() function(createTests testName) - message ("-- Adding test: ${testName}") - appendIncludes("${testName}") + message(DEBUG "-- Adding test: ${testName}") + appendIncludes("${testName}") - if (ENABLE_BINARY_DIFF) - target_include_directories(${testName} SYSTEM BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/thirdparty/bsdiff/") + if (ENABLE_BINARY_DIFF) + target_include_directories(${testName} SYSTEM BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/thirdparty/bsdiff/") endif(ENABLE_BINARY_DIFF) if (Boost_FOUND) - target_include_directories(${testName} BEFORE PRIVATE "${Boost_INCLUDE_DIRS}") + target_include_directories(${testName} BEFORE PRIVATE "${Boost_INCLUDE_DIRS}") endif() target_link_libraries(${testName} ${CMAKE_DL_LIBS} ${TEST_BASE_LIB}) target_link_libraries(${testName} core-minifi yaml-cpp spdlog Threads::Threads) if (NOT excludeBase) target_wholearchive_library(${testName} minifi) - endif() - add_dependencies(${testName} minifiexe nanofi) - if (Boost_FOUND) - target_link_libraries(${testName} ${Boost_SYSTEM_LIBRARY}) - target_link_libraries(${testName} ${Boost_FILESYSTEM_LIBRARY}) - endif() + endif() + add_dependencies(${testName} minifiexe) + if (ENABLE_NANOFI) + add_dependencies(${testName} nanofi) + endif() + if (Boost_FOUND) + target_link_libraries(${testName} ${Boost_SYSTEM_LIBRARY}) + target_link_libraries(${testName} ${Boost_FILESYSTEM_LIBRARY}) + endif() endfunction() enable_testing(test) @@ -94,9 +97,9 @@ target_link_libraries(${TEST_BASE_LIB} core-minifi) target_include_directories(${TEST_BASE_LIB} SYSTEM BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/thirdparty/catch") target_include_directories(${TEST_BASE_LIB} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/include/") if(WIN32) - target_include_directories(${TEST_BASE_LIB} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win") + target_include_directories(${TEST_BASE_LIB} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/win") else() - target_include_directories(${TEST_BASE_LIB} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix") + target_include_directories(${TEST_BASE_LIB} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/libminifi/opsys/posix") endif() SET(CATCH_MAIN_LIB catch_main) @@ -120,9 +123,9 @@ FOREACH(testfile ${UNIT_TESTS}) ENDFOREACH() message("-- Finished building ${UNIT_TEST_COUNT} unit test file(s)...") -if(NOT WIN32) -SET(UNIT_TEST_COUNT 0) -FOREACH(testfile ${NANOFI_UNIT_TESTS}) +if(NOT WIN32 AND ENABLE_NANOFI) + SET(UNIT_TEST_COUNT 0) + FOREACH(testfile ${NANOFI_UNIT_TESTS}) get_filename_component(testfilename "${testfile}" NAME_WE) add_executable("${testfilename}" "${NANOFI_TEST_DIR}/${testfile}") target_include_directories(${testfilename} BEFORE PRIVATE "${CMAKE_SOURCE_DIR}/nanofi/include") @@ -140,9 +143,10 @@ FOREACH(testfile ${NANOFI_UNIT_TESTS}) target_link_libraries(${testfilename} ${Boost_SYSTEM_LIBRARY}) target_link_libraries(${testfilename} ${Boost_FILESYSTEM_LIBRARY}) endif() -ENDFOREACH() -message("-- Finished building ${UNIT_TEST_COUNT} NanoFi unit test file(s)...") -endif(NOT WIN32) + ENDFOREACH() + message("-- Finished building ${UNIT_TEST_COUNT} NanoFi unit test file(s)...") +endif() + SET(INT_TEST_COUNT 0) FOREACH(testfile ${INTEGRATION_TESTS}) get_filename_component(testfilename "${testfile}" NAME_WE) @@ -157,6 +161,5 @@ message("-- Finished building ${INT_TEST_COUNT} integration test file(s)...") get_property(extensions GLOBAL PROPERTY EXTENSION-TESTS) foreach(EXTENSION ${extensions}) - add_subdirectory(${EXTENSION}) + add_subdirectory(${EXTENSION}) endforeach() - diff --git a/cmake/DockerConfig.cmake b/cmake/DockerConfig.cmake index 1947f65..c6059eb 100644 --- a/cmake/DockerConfig.cmake +++ b/cmake/DockerConfig.cmake @@ -43,6 +43,7 @@ add_custom_target( -c ENABLE_OPENWSMAN=${ENABLE_OPENWSMAN} -c ENABLE_AZURE=${ENABLE_AZURE} -c ENABLE_ENCRYPT_CONFIG=${ENABLE_ENCRYPT_CONFIG} + -c ENABLE_NANOFI=${ENABLE_NANOFI} -c DISABLE_CURL=${DISABLE_CURL} -c DISABLE_JEMALLOC=${DISABLE_JEMALLOC} -c DISABLE_CIVET=${DISABLE_CIVET} diff --git a/docker/Dockerfile b/docker/Dockerfile index 9aef963..bbe9930 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -49,6 +49,7 @@ ARG ENABLE_SFTP=OFF ARG ENABLE_OPENWSMAN=OFF ARG ENABLE_AZURE=OFF ARG ENABLE_ENCRYPT_CONFIG=ON +ARG ENABLE_NANOFI=OFF ARG DISABLE_CURL=OFF ARG DISABLE_JEMALLOC=ON ARG DISABLE_CIVET=OFF @@ -108,8 +109,8 @@ RUN cmake -DSTATIC_BUILD= -DSKIP_TESTS=true -DENABLE_ALL="${ENABLE_ALL}" -DENABL -DENABLE_JNI="${ENABLE_JNI}" -DENABLE_OPENCV="${ENABLE_OPENCV}" -DENABLE_OPC="${ENABLE_OPC}" -DENABLE_GPS="${ENABLE_GPS}" \ -DENABLE_COAP="${ENABLE_COAP}" -DENABLE_SQL="${ENABLE_SQL}" -DENABLE_MQTT="${ENABLE_MQTT}" -DENABLE_PCAP="${ENABLE_PCAP}" \ -DENABLE_LIBRDKAFKA="${ENABLE_LIBRDKAFKA}" -DENABLE_SENSORS="${ENABLE_SENSORS}" -DENABLE_USB_CAMERA="${ENABLE_USB_CAMERA}" \ - -DENABLE_TENSORFLOW="${ENABLE_TENSORFLOW}" -DENABLE_AWS="${ENABLE_AWS}" -DENABLE_BUSTACHE="${ENABLE_BUSTACHE}" \ - -DENABLE_SFTP="${ENABLE_SFTP}" -DENABLE_OPENWSMAN="${ENABLE_OPENWSMAN}" -DENABLE_AZURE="${ENABLE_AZURE}" -DENABLE_SYSTEMD=OFF \ + -DENABLE_TENSORFLOW="${ENABLE_TENSORFLOW}" -DENABLE_AWS="${ENABLE_AWS}" -DENABLE_BUSTACHE="${ENABLE_BUSTACHE}" -DENABLE_SFTP="${ENABLE_SFTP}" \ + -DENABLE_OPENWSMAN="${ENABLE_OPENWSMAN}" -DENABLE_AZURE="${ENABLE_AZURE}" -DENABLE_NANOFI=${ENABLE_NANOFI} -DENABLE_SYSTEMD=OFF \ -DDISABLE_CURL="${DISABLE_CURL}" -DDISABLE_JEMALLOC="${DISABLE_JEMALLOC}" -DDISABLE_CIVET="${DISABLE_CIVET}" \ -DDISABLE_EXPRESSION_LANGUAGE="${DISABLE_EXPRESSION_LANGUAGE}" -DDISABLE_ROCKSDB="${DISABLE_ROCKSDB}" \ -DDISABLE_LIBARCHIVE="${DISABLE_LIBARCHIVE}" -DDISABLE_LZMA="${DISABLE_LZMA}" -DDISABLE_BZIP2="${DISABLE_BZIP2}" \ diff --git a/win_build_vs.bat b/win_build_vs.bat index 8f2693f..e2e33de 100755 --- a/win_build_vs.bat +++ b/win_build_vs.bat @@ -38,6 +38,7 @@ set installer_merge_modules=OFF set strict_gsl_checks= set redist= set build_linter=OFF +set build_nanofi=OFF set arg_counter=0 for %%x in (%*) do ( @@ -55,6 +56,7 @@ for %%x in (%*) do ( if [%%~x] EQU [/PDH] set build_PDH=ON if [%%~x] EQU [/M] set installer_merge_modules=ON if [%%~x] EQU [/Z] set build_azure=ON + if [%%~x] EQU [/N] set build_nanofi=ON if [%%~x] EQU [/64] set build_platform=x64 if [%%~x] EQU [/D] set cmake_build_type=RelWithDebInfo if [%%~x] EQU [/DD] set cmake_build_type=Debug @@ -66,7 +68,7 @@ for %%x in (%*) do ( mkdir %builddir% pushd %builddir%\ -cmake -G %generator% -A %build_platform% -DINSTALLER_MERGE_MODULES=%installer_merge_modules% -DTEST_CUSTOM_WEL_PROVIDER=%test_custom_wel_provider% -DENABLE_SQL=%build_SQL% -DCMAKE_BUILD_TYPE_INIT=%cmake_build_type% -DCMAKE_BUILD_TYPE=%cmake_build_type% -DWIN32=WIN32 -DENABLE_LIBRDKAFKA=%build_kafka% -DENABLE_JNI=%build_jni% -DOPENSSL_OFF=OFF -DENABLE_COAP=%build_coap% -DENABLE_AWS=%build_AWS% -DENABLE_PDH=%build_PDH% -DENABLE_AZURE=%build_azure% -DENABLE_SFTP=%build_SFTP% -DUSE_SHARED_L [...] +cmake -G %generator% -A %build_platform% -DINSTALLER_MERGE_MODULES=%installer_merge_modules% -DTEST_CUSTOM_WEL_PROVIDER=%test_custom_wel_provider% -DENABLE_SQL=%build_SQL% -DCMAKE_BUILD_TYPE_INIT=%cmake_build_type% -DCMAKE_BUILD_TYPE=%cmake_build_type% -DWIN32=WIN32 -DENABLE_LIBRDKAFKA=%build_kafka% -DENABLE_JNI=%build_jni% -DOPENSSL_OFF=OFF -DENABLE_COAP=%build_coap% -DENABLE_AWS=%build_AWS% -DENABLE_PDH=%build_PDH% -DENABLE_AZURE=%build_azure% -DENABLE_SFTP=%build_SFTP% -DENABLE_NANOFI [...] IF %ERRORLEVEL% NEQ 0 EXIT /b %ERRORLEVEL% if [%cpack%] EQU [ON] ( cpack -C %cmake_build_type%
