This commit is contained in:
Frank Denis
2020-07-04 15:32:13 +02:00
parent 27f4134785
commit 9340fbebe7
7 changed files with 89 additions and 93 deletions
+22 -23
View File
@@ -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}"
+31 -30
View File
@@ -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"
+9 -9
View File
@@ -15,11 +15,11 @@ symbols() {
else
eval "defined_${symbol}=no"
fi
done < emscripten-symbols.def
done <emscripten-symbols.def
/usr/bin/nm /usr/local/lib/libsodium.27.dylib | \
fgrep ' T _' | \
cut -d' ' -f3 | {
/usr/bin/nm /usr/local/lib/libsodium.27.dylib |
fgrep ' T _' |
cut -d' ' -f3 | {
while read symbol; do
eval "found=\$defined_${symbol}"
if [ "$found" = "yes" ]; then
@@ -32,11 +32,11 @@ symbols() {
fi
done
}
} | \
sort | \
} |
sort |
{
out='"_malloc","_free"'
while read symbol ; do
while read symbol; do
if [ ! -z "$out" ]; then
out="${out},"
fi
@@ -47,11 +47,11 @@ symbols() {
}
out=$(symbols standard)
sed s/EXPORTED_FUNCTIONS_STANDARD=\'.*\'/EXPORTED_FUNCTIONS_STANDARD=\'${out}\'/ < emscripten.sh > emscripten.sh.tmp && \
sed s/EXPORTED_FUNCTIONS_STANDARD=\'.*\'/EXPORTED_FUNCTIONS_STANDARD=\'${out}\'/ <emscripten.sh >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 >emscripten.sh.tmp &&
mv -f emscripten.sh.tmp emscripten.sh
chmod +x emscripten.sh
+6 -6
View File
@@ -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
+6 -6
View File
@@ -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
+9 -13
View File
@@ -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
+6 -6
View File
@@ -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