X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=configure;h=19b5ecd9d0d4fd07c3a9a01a1dd6d40dea1c7e4a;hb=83b12bf895ca235e479f8dccc2c4bb198cccbc3b;hp=29f7dbd32581b660347095551d2c25f0d7948970;hpb=45e05396399b7ead25d87e79a806f0c03b78965b;p=vpp.git diff --git a/configure b/configure index 29f7dbd3258..19b5ecd9d0d 100755 --- a/configure +++ b/configure @@ -5,6 +5,7 @@ set -o pipefail -o errtrace -o nounset -o errexit # submitting any changes # defaults +platform=default build_dir=. install_dir=/usr/local build_type=release @@ -30,6 +31,9 @@ OPTIONS: --build-type, -t Build type (release, debug, ...) --native-only, -n Only compile for Native CPU (no multiarch) --wipe, -w Wipe whole repo (except startup.* files) + --sanitize, -s Enable sanitizer (mem) + --platform, -p Specify target platform + --option, -o Enable specific VPP options (fib8, fib16) __EOF__ } @@ -75,6 +79,15 @@ while (( "$#" )); do exit 1 fi ;; + -p|--platform) + if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then + platform=$2 + shift 2 + else + echo "Error: Argument for $1 is missing" >&2 + exit 1 + fi + ;; -n|--native-only) native_only=yes shift 1 @@ -83,6 +96,28 @@ while (( "$#" )); do wipe=yes shift 1 ;; + -s|--sanitize) + shift 1 + case "$1" in + mem) + shift 1 + args+=("-DVPP_ENABLE_SANITIZE_ADDR=ON") + ;; + esac + ;; + -o|--option) + shift 1 + case "$1" in + fib8) + shift 1 + args+=("-DVPP_IP_FIB_MTRIE_16=OFF") + ;; + fib16) + shift 1 + args+=("-DVPP_IP_FIB_MTRIE_16=ON") + ;; + esac + ;; -*|--*=) # unsupported flags echo "Error: Unsupported flag $1" >&2 exit 1 @@ -111,6 +146,7 @@ args+=("-DCMAKE_PREFIX_PATH=/opt/vpp/external/${arch}") args+=("-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON") args+=("-DCMAKE_INSTALL_PREFIX=${install_dir}") args+=("-DCMAKE_BUILD_TYPE:STRING=${build_type}") +args+=("-DVPP_PLATFORM=${platform}") [ "${native_only}" == "yes" ] && args+=("-DVPP_BUILD_NATIVE_ONLY:BOOL=ON") [ "${wipe}" == "yes" ] && git clean -fdx --exclude=startup.\*