diff --git a/dist-build/android-build.sh b/dist-build/android-build.sh index ece1d01d..22b41b2a 100755 --- a/dist-build/android-build.sh +++ b/dist-build/android-build.sh @@ -48,8 +48,8 @@ fi echo env - PATH="$PATH" \ - "$MAKE_TOOLCHAIN" --force --api="$NDK_API_VERSION_COMPAT" \ - --arch="$ARCH" --install-dir="$TOOLCHAIN_DIR" || exit 1 + "$MAKE_TOOLCHAIN" --force --api="$NDK_API_VERSION_COMPAT" \ + --arch="$ARCH" --install-dir="$TOOLCHAIN_DIR" || exit 1 if [ -z "$LIBSODIUM_FULL_BUILD" ]; then export LIBSODIUM_ENABLE_MINIMAL_FLAG="--enable-minimal" @@ -58,29 +58,29 @@ else fi ./configure \ + --disable-soname-versions \ + ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ + --host="${HOST_COMPILER}" \ + --prefix="${PREFIX}" \ + --with-sysroot="${TOOLCHAIN_DIR}/sysroot" || exit 1 + +if [ "$NDK_PLATFORM" != "$NDK_PLATFORM_COMPAT" ]; then + egrep '^#define ' config.log | sort -u >config-def-compat.log + echo + echo "Configuring again for platform [${NDK_PLATFORM}]" + echo + env - PATH="$PATH" \ + "$MAKE_TOOLCHAIN" --force --api="$NDK_API_VERSION" \ + --arch="$ARCH" --install-dir="$TOOLCHAIN_DIR" || exit 1 + + ./configure \ --disable-soname-versions \ ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ --host="${HOST_COMPILER}" \ --prefix="${PREFIX}" \ --with-sysroot="${TOOLCHAIN_DIR}/sysroot" || exit 1 -if [ "$NDK_PLATFORM" != "$NDK_PLATFORM_COMPAT" ]; then - egrep '^#define ' config.log | sort -u > config-def-compat.log - echo - echo "Configuring again for platform [${NDK_PLATFORM}]" - echo - env - PATH="$PATH" \ - "$MAKE_TOOLCHAIN" --force --api="$NDK_API_VERSION" \ - --arch="$ARCH" --install-dir="$TOOLCHAIN_DIR" || exit 1 - - ./configure \ - --disable-soname-versions \ - ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ - --host="${HOST_COMPILER}" \ - --prefix="${PREFIX}" \ - --with-sysroot="${TOOLCHAIN_DIR}/sysroot" || exit 1 - - egrep '^#define ' config.log | sort -u > config-def.log + egrep '^#define ' config.log | sort -u >config-def.log if ! cmp config-def.log config-def-compat.log; then echo "Platform [${NDK_PLATFORM}] is not backwards-compatible with [${NDK_PLATFORM_COMPAT}]" >&2 diff -u config-def.log config-def-compat.log >&2 @@ -89,10 +89,9 @@ if [ "$NDK_PLATFORM" != "$NDK_PLATFORM_COMPAT" ]; then rm -f config-def.log config-def-compat.log fi - NPROCESSORS=$(getconf NPROCESSORS_ONLN 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) PROCESSORS=${NPROCESSORS:-3} -make clean && \ -make -j${PROCESSORS} install && \ -echo "libsodium has been installed into ${PREFIX}" +make clean && + make -j${PROCESSORS} install && + echo "libsodium has been installed into ${PREFIX}" diff --git a/dist-build/emscripten.sh b/dist-build/emscripten.sh index e05dbc6a..89e9b82a 100755 --- a/dist-build/emscripten.sh +++ b/dist-build/emscripten.sh @@ -64,14 +64,14 @@ rm -f "$DONE_FILE" echo emconfigure ./configure $CONFIG_EXTRA --disable-shared --prefix="$PREFIX" \ - --without-pthreads \ - --disable-ssp --disable-asm --disable-pie \ - CFLAGS="$CFLAGS" && \ -emmake make clean + --without-pthreads \ + --disable-ssp --disable-asm --disable-pie \ + CFLAGS="$CFLAGS" && + emmake make clean [ $? = 0 ] || exit 1 if [ "$DIST" = yes ]; then - emccLibsodium () { + emccLibsodium() { outFile="${1}" shift emcc "$CFLAGS" --llvm-lto 1 $CPPFLAGS $LDFLAGS $JS_EXPORTS_FLAGS ${@} \ @@ -81,7 +81,7 @@ if [ "$DIST" = yes ]; then emccLibsodium "${PREFIX}/lib/libsodium.asm.tmp.js" -Oz -s WASM=0 -s RUNNING_JS_OPTS=1 emccLibsodium "${PREFIX}/lib/libsodium.wasm.tmp.js" -O3 -s WASM=1 - cat > "${PREFIX}/lib/libsodium.js" <<- EOM + cat >"${PREFIX}/lib/libsodium.js" <<-EOM var Module; if (typeof Module === 'undefined') { Module = {}; @@ -151,51 +151,52 @@ fi if test "x$NODE" = x; then for candidate in /usr/local/bin/node /usr/local/bin/nodejs /usr/bin/node /usr/bin/nodejs node nodejs; do case $($candidate --version 2>&1) in #( - v*) - NODE=$candidate - break ;; + v*) + NODE=$candidate + break + ;; esac done fi if [ "x$BROWSER_TESTS" != "x" ]; then - echo 'Compiling the test suite for web browsers...' && \ - emmake make $MAKE_FLAGS CPPFLAGS="$CPPFLAGS -DBROWSER_TESTS=1" check > /dev/null 2>&1 + echo 'Compiling the test suite for web browsers...' && + emmake make $MAKE_FLAGS CPPFLAGS="$CPPFLAGS -DBROWSER_TESTS=1" check >/dev/null 2>&1 else if test "x$NODE" = x; then echo 'node.js not found - test suite skipped' >&2 exit 1 fi echo "Using [${NODE}] as a Javascript runtime" - echo 'Compiling the test suite...' && \ - emmake make $MAKE_FLAGS check > /dev/null 2>&1 + echo 'Compiling the test suite...' && + emmake make $MAKE_FLAGS check >/dev/null 2>&1 fi if [ "x$BROWSER_TESTS" != "x" ]; then echo 'Creating the test suite for web browsers' ( - cd test/default && \ - mkdir -p browser && \ - rm -f browser/tests.txt && \ - for file in *.js; do - fgrep -v "#! /usr/bin/env ${NODE}" "$file" > "browser/${file}" - tname=$(echo "$file" | sed 's/.js$//') - cp -f "${tname}.exp" "browser/${tname}.exp" - sed "s/{{tname}}/${tname}/" index.html.tpl > "browser/${tname}.html" - echo "${tname}.html" >> "browser/tests.txt" - done + cd test/default && + mkdir -p browser && + rm -f browser/tests.txt && + for file in *.js; do + fgrep -v "#! /usr/bin/env ${NODE}" "$file" >"browser/${file}" + tname=$(echo "$file" | sed 's/.js$//') + cp -f "${tname}.exp" "browser/${tname}.exp" + sed "s/{{tname}}/${tname}/" index.html.tpl >"browser/${tname}.html" + echo "${tname}.html" >>"browser/tests.txt" + done touch "$DONE_FILE" ) else echo 'Running the test suite' ( - cd test/default && \ - for file in *.js; do - echo "#! /usr/bin/env ${NODE}" > "${file}.tmp" - fgrep -v "#! /usr/bin/env ${NODE}" "$file" >> "${file}.tmp" - chmod +x "${file}.tmp" - mv -f "${file}.tmp" "$file" - done + cd test/default && + for file in *.js; do + echo "#! /usr/bin/env ${NODE}" >"${file}.tmp" + fgrep -v "#! /usr/bin/env ${NODE}" "$file" >>"${file}.tmp" + chmod +x "${file}.tmp" + mv -f "${file}.tmp" "$file" + done ) make $MAKE_FLAGS check || exit 1 touch "$DONE_FILE" diff --git a/dist-build/generate-emscripten-symbols.sh b/dist-build/generate-emscripten-symbols.sh index a0641faa..20e1d790 100755 --- a/dist-build/generate-emscripten-symbols.sh +++ b/dist-build/generate-emscripten-symbols.sh @@ -15,11 +15,11 @@ symbols() { else eval "defined_${symbol}=no" fi - done < emscripten-symbols.def + done emscripten.sh.tmp && \ +sed s/EXPORTED_FUNCTIONS_STANDARD=\'.*\'/EXPORTED_FUNCTIONS_STANDARD=\'${out}\'/ emscripten.sh.tmp && mv -f emscripten.sh.tmp emscripten.sh out=$(symbols sumo) -sed s/EXPORTED_FUNCTIONS_SUMO=\'.*\'/EXPORTED_FUNCTIONS_SUMO=\'${out}\'/ < emscripten.sh > emscripten.sh.tmp && \ +sed s/EXPORTED_FUNCTIONS_SUMO=\'.*\'/EXPORTED_FUNCTIONS_SUMO=\'${out}\'/ emscripten.sh.tmp && mv -f emscripten.sh.tmp emscripten.sh chmod +x emscripten.sh diff --git a/dist-build/msys2-win32.sh b/dist-build/msys2-win32.sh index dcc9ee06..6e801404 100755 --- a/dist-build/msys2-win32.sh +++ b/dist-build/msys2-win32.sh @@ -3,7 +3,7 @@ export CFLAGS="-Ofast -fomit-frame-pointer -m32 -march=pentium3 -mtune=westmere" export PREFIX="$(pwd)/libsodium-win32" -if (i686-w64-mingw32-gcc --version > /dev/null 2>&1) then +if (i686-w64-mingw32-gcc --version >/dev/null 2>&1); then echo MinGW found else echo Please install mingw-w64-i686-gcc >&2 @@ -11,8 +11,8 @@ else fi ./configure --prefix="$PREFIX" --exec-prefix="$PREFIX" \ - --host=i686-w64-mingw32 && \ -make clean && \ -make && \ -make check && \ -make install + --host=i686-w64-mingw32 && + make clean && + make && + make check && + make install diff --git a/dist-build/msys2-win64.sh b/dist-build/msys2-win64.sh index 0b38d6dd..ef69047d 100755 --- a/dist-build/msys2-win64.sh +++ b/dist-build/msys2-win64.sh @@ -3,7 +3,7 @@ export CFLAGS="-Ofast -fomit-frame-pointer -m64 -mtune=westmere" export PREFIX="$(pwd)/libsodium-win64" -if (x86_64-w64-mingw32-gcc --version > /dev/null 2>&1) then +if (x86_64-w64-mingw32-gcc --version >/dev/null 2>&1); then echo MinGW found else echo Please install mingw-w64-x86_64-gcc >&2 @@ -11,8 +11,8 @@ else fi ./configure --prefix="$PREFIX" --exec-prefix="$PREFIX" \ - --host=x86_64-w64-mingw32 && \ -make clean && \ -make && \ -make check && \ -make install + --host=x86_64-w64-mingw32 && + make clean && + make && + make check && + make install diff --git a/dist-build/osx.sh b/dist-build/osx.sh index 1c623743..cd044224 100755 --- a/dist-build/osx.sh +++ b/dist-build/osx.sh @@ -2,14 +2,6 @@ export PREFIX="$(pwd)/libsodium-osx" export OSX_VERSION_MIN=${OSX_VERSION_MIN-"10.10"} -export OSX_CPU_ARCH=${OSX_CPU_ARCH-"core2"} - -mkdir -p $PREFIX || exit 1 - -export CFLAGS="-arch x86_64 -mmacosx-version-min=${OSX_VERSION_MIN} -march=${OSX_CPU_ARCH} -O2 -g" -export LDFLAGS="-arch x86_64 -mmacosx-version-min=${OSX_VERSION_MIN} -march=${OSX_CPU_ARCH}" - -make distclean > /dev/null if [ -z "$LIBSODIUM_FULL_BUILD" ]; then export LIBSODIUM_ENABLE_MINIMAL_FLAG="--enable-minimal" @@ -17,14 +9,18 @@ else export LIBSODIUM_ENABLE_MINIMAL_FLAG="" fi -./configure ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ - --prefix="$PREFIX" || exit 1 - - NPROCESSORS=$(getconf NPROCESSORS_ONLN 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) PROCESSORS=${NPROCESSORS:-3} +mkdir -p $PREFIX || exit 1 + +export CFLAGS="-mmacosx-version-min=${OSX_VERSION_MIN} -march=${OSX_CPU_ARCH} -O2 -g" +export LDFLAGS="-mmacosx-version-min=${OSX_VERSION_MIN} -march=${OSX_CPU_ARCH}" + +make distclean >/dev/null +./configure ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ + --prefix="$PREFIX" || exit 1 make -j${PROCESSORS} check && make -j${PROCESSORS} install || exit 1 # Cleanup -make distclean > /dev/null +make distclean >/dev/null diff --git a/dist-build/wasm32-wasi.sh b/dist-build/wasm32-wasi.sh index c6ae3ac7..cf6990fb 100755 --- a/dist-build/wasm32-wasi.sh +++ b/dist-build/wasm32-wasi.sh @@ -27,9 +27,9 @@ export AR="llvm-ar" export RANLIB="llvm-ranlib" export STRIP="llvm-strip" -make distclean > /dev/null +make distclean >/dev/null -grep -q -F -- 'wasi' build-aux/config.sub || \ +grep -q -F -- 'wasi' build-aux/config.sub || sed -i -e 's/-nacl\*)/-nacl*|-wasi)/' build-aux/config.sub if [ "x$1" = "x--bench" ]; then @@ -44,15 +44,15 @@ else fi ./configure ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ - --prefix="$PREFIX" --with-sysroot="$WASI_LIBC" \ - --host=wasm32-wasi \ - --disable-ssp --disable-shared || exit 1 + --prefix="$PREFIX" --with-sysroot="$WASI_LIBC" \ + --host=wasm32-wasi \ + --disable-ssp --disable-shared || exit 1 NPROCESSORS=$(getconf NPROCESSORS_ONLN 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) PROCESSORS=${NPROCESSORS:-3} if [ -z "$BENCHMARKS" ]; then - make -j${PROCESSORS} check && make install && make distclean > /dev/null + make -j${PROCESSORS} check && make install && make distclean >/dev/null else make -j${PROCESSORS} && make check fi