Simplify update.sh slightly

Produce a list of files from the various crypto/Makefile.am* files,
rather than sourcing some from crypto/Makefile.am and manually
copying the remainder. This will make it easier to add platform
specific sources in the future, since they only need to be added
to the appropriate Makefile.am* file.

Remove symbols exclusion for OPENSSL_ia32cap_P - this disappeared
from upstream in 2024.
This commit is contained in:
Joel Sing
2026-01-18 00:57:55 +11:00
parent 452c48023d
commit d4164d5a56

View File

@@ -170,41 +170,21 @@ echo "LibreSSL version `cat VERSION`"
echo copying libcrypto source
rm -f crypto/*.c crypto/*.h
touch crypto/empty.c
for i in `awk '/SOURCES|HEADERS/ { print $3 }' crypto/Makefile.am` ; do
crypto_files=`awk '/^ASM|SOURCES|HEADERS/ { print $3 }' crypto/Makefile.am* | grep -v '^\$(' | sort | uniq`
for i in $crypto_files; do
dir=`dirname $i`
mkdir -p crypto/$dir
if [ $dir != "compat" ]; then
if [ -e $libcrypto_src/$i ]; then
if [ -f $libcrypto_src/$i ]; then
$CP $libcrypto_src/$i crypto/$i
fi
fi
done
for arch in amd64 i386; do
$CP $libcrypto_src/aes/aes_${arch}.c crypto/aes/
$CP $libcrypto_src/modes/gcm128_${arch}.c crypto/modes/
done
for i in $libcrypto_src/arch/*; do
arch=`basename $i`
mkdir -p crypto/arch/$arch
$CP $libcrypto_src/arch/$arch/crypto_arch.h crypto/arch/$arch/
crypto_cpu_caps=$libcrypto_src/arch/$arch/crypto_cpu_caps.c
if [ -f "$crypto_cpu_caps" ]; then
$CP "$crypto_cpu_caps" crypto/arch/$arch/
fi
done
for i in $libcrypto_src/bn/arch/*; do
arch=`basename $i`
mkdir -p crypto/bn/arch/$arch
$CP $libcrypto_src/bn/arch/$arch/* crypto/bn/arch/$arch/
done
$CP crypto/compat/b_win.c crypto/bio
$CP crypto/compat/ui_openssl_win.c crypto/ui
# add the libcrypto symbol export list
$GREP -v OPENSSL_ia32cap_P $libcrypto_src/Symbols.list | $GREP '^[A-Za-z0-9_]' > crypto/crypto.sym
$GREP '^[A-Za-z0-9_]' $libcrypto_src/Symbols.list > crypto/crypto.sym
fixup_masm() {
cpp -I./crypto -I./include/compat -D_MSC_VER -U__CET__ $1 \