12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- #!/bin/sh
- #
- # Create configure and makefile stuff...
- #
- # Check environment
- if [ -n "$WSL_DISTRO_NAME" ]; then
- # we found a non-blank WSL environment distro name
- current_path="$(pwd)"
- pattern="/mnt/?"
- if [ "$(echo "$current_path" | grep -E "^$pattern")" ]; then
- # if we are in WSL and shared Windows file system, 'ln' does not work.
- no_links=true
- else
- no_links=
- fi
- fi
- # Git hooks should come before autoreconf.
- if [ -d .git ]; then
- if [ ! -d .git/hooks ]; then
- mkdir .git/hooks || exit $?
- fi
- if [ -n "$no_links" ]; then
- echo "Linux ln does not work on shared Windows file system in WSL."
- if [ ! -e .git/hooks/pre-commit ]; then
- echo "The pre-commit.sh file will not be copied to .git/hooks/pre-commit"
- # shell scripts do not work on Windows; TODO create equivalent batch file
- # cp ./pre-commit.sh .git/hooks/pre-commit || exit $?
- fi
- if [ ! -e .git/hooks/pre-push ]; then
- echo "The pre-push.sh file will not be copied to .git/hooks/pre-commit"
- # shell scripts do not work on Windows; TODO create equivalent batch file
- # cp ./pre-push.sh .git/hooks/pre-push || exit $?
- fi
- else
- if [ ! -e .git/hooks/pre-commit ]; then
- ln -s ../../pre-commit.sh .git/hooks/pre-commit || exit $?
- fi
- if [ ! -e .git/hooks/pre-push ]; then
- ln -s ../../pre-push.sh .git/hooks/pre-push || exit $?
- fi
- fi
- fi
- # if and as needed, create empty dummy versions of various files, mostly
- # associated with fips/self-test and asynccrypt:
- for dir in \
- ./wolfssl/wolfcrypt/port/intel \
- ./wolfssl/wolfcrypt/port/cavium
- do
- if [ ! -e "$dir" ]; then
- mkdir "$dir" || exit $?
- fi
- done
- for file in \
- ./wolfssl/options.h \
- ./wolfcrypt/src/fips.c \
- ./wolfcrypt/src/fips_test.c \
- ./wolfcrypt/src/wolfcrypt_first.c \
- ./wolfcrypt/src/wolfcrypt_last.c \
- ./wolfssl/wolfcrypt/fips.h \
- ./wolfcrypt/src/selftest.c \
- ./wolfcrypt/src/async.c \
- ./wolfssl/wolfcrypt/async.h \
- ./wolfcrypt/src/port/intel/quickassist.c \
- ./wolfcrypt/src/port/intel/quickassist_mem.c \
- ./wolfcrypt/src/port/cavium/cavium_nitrox.c \
- ./wolfssl/wolfcrypt/port/intel/quickassist.h \
- ./wolfssl/wolfcrypt/port/intel/quickassist_mem.h \
- ./wolfssl/wolfcrypt/port/cavium/cavium_nitrox.h
- do
- if [ ! -e "$file" ]; then
- > "$file" || exit $?
- fi
- done
- # If this is a source checkout then call autoreconf with error as well
- if [ -e .git ]; then
- export WARNINGS="all,error"
- else
- export WARNINGS="all"
- fi
- autoreconf --install --force
|