@ -90,6 +90,8 @@ CROSS ?= OFF
SHARED_LIB ?= OFF
# enable generating coverage
COVERAGE ?= OFF
# allow downloading libsodium if >= 1.0.17 not installed
DOWNLOAD_SODIUM ?= OFF
COVERAGE_OUTDIR ?= " $( TMPDIR) /lokinet-coverage "
@ -113,20 +115,22 @@ SCAN_BUILD ?= scan-build
UNAME = $( shell which uname)
COMMON_CMAKE_OPTIONS = -DSTATIC_LINK_RUNTIME= $( STATIC_LINK) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DDOWNLOAD_SODIUM= $( DOWNLOAD_SODIUM) -DCMAKE_EXPORT_COMPILE_COMMANDS= ON
i f e q ( $( shell $ ( UNAME ) ) , S u n O S )
CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -DSTATIC_LINK_RUNTIME= $( STATIC_LINK) -DUSE_SHELLHOOKS= $( SHELL_HOOKS) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ' $( REPO) ' " )
CONFIG_CMD_WINDOWS = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING=ON -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -D USE_SHELLHOOKS=$( SHELL_HOOKS) -DUSE_NETNS=$( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D USE_SHELLHOOKS=$( SHELL_HOOKS) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
CONFIG_CMD_WINDOWS = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING=ON -D USE_SHELLHOOKS=$( SHELL_HOOKS) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
ANALYZE_CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " $( SCAN_BUILD) cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -DSTATIC_LINK_RUNTIME=$( STATIC_LINK) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
ANALYZE_CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " $( SCAN_BUILD) cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
COVERAGE_CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DWITH_COVERAGE=yes -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
COVERAGE_CONFIG_CMD = $( shell gecho -n " cd ' $( BUILD_ROOT) ' && " ; gecho -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D WITH_COVERAGE=yes $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
e l s e
CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -D USE_SHELLHOOKS=$( SHELL_HOOKS) -D USE_NETNS=$( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DTRACY_ROOT= $( TRACY_ROOT) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
CONFIG_CMD_WINDOWS = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING=ON -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -D USE_SHELLHOOKS=$( SHELL_HOOKS) -DUSE_NETNS=$( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D USE_SHELLHOOKS=$( SHELL_HOOKS) -D TRACY_ROOT=$( TRACY_ROOT) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
CONFIG_CMD_WINDOWS = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING=ON -D USE_SHELLHOOKS=$( SHELL_HOOKS) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
ANALYZE_CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " $( SCAN_BUILD) cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -DXSAN= $( XSAN) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
ANALYZE_CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " $( SCAN_BUILD) cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D XSAN=$( XSAN) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
COVERAGE_CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D STATIC_LINK_RUNTIME=$( STATIC_LINK) -DUSE_NETNS= $( NETNS) -DUSE_AVX2= $( AVX2) -DWITH_SHARED= $( SHARED_LIB) -D WITH_COVERAGE=yes -DXSAN=$( XSAN) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON '$( REPO) ' " )
COVERAGE_CONFIG_CMD = $( shell /bin/echo -n " cd ' $( BUILD_ROOT) ' && " ; /bin/echo -n " cmake -G' $( CMAKE_GEN) ' -DCMAKE_CROSSCOMPILING= $( CROSS) -D WITH_COVERAGE=yes -DXSAN=$( XSAN) $( COMMON_CMAKE_OPTIONS) '$( REPO) ' " )
e n d i f
TARGETS = $( REPO) /lokinet