From b38f5a8904b83d433e967f683821ca992354551b Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Sun, 18 Dec 2022 21:39:58 -0600 Subject: fix dangling whitespace when building object list breaks latest macOS linker to have a directory in the object list --- tls/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tls/Makefile.am b/tls/Makefile.am index 9b62b22..d5725c3 100644 --- a/tls/Makefile.am +++ b/tls/Makefile.am @@ -16,7 +16,7 @@ EXTRA_libtls_la_DEPENDENCIES = libtls_la_objects.mk libtls_la_objects.mk: Makefile @echo "libtls_la_objects= $(libtls_la_OBJECTS)" \ - | sed 's/ */ $$\(abs_top_builddir\)\/tls\//g' \ + | sed -e 's/ *$$//' -e 's/ */ $$\(abs_top_builddir\)\/tls\//g' \ > libtls_la_objects.mk libtls_la_LDFLAGS = -version-info @LIBTLS_VERSION@ -no-undefined -export-symbols $(top_srcdir)/tls/tls.sym -- cgit v1.2.3-55-g6feb From cfbdf67f5960198363f56b06f6a4f88aa8654d10 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Sun, 18 Dec 2022 22:10:11 -0600 Subject: link internal apps statically --- apps/nc/Makefile.am | 11 +++++++---- apps/ocspcheck/Makefile.am | 12 +++++++++--- apps/openssl/Makefile.am | 9 +++++++-- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/apps/nc/Makefile.am b/apps/nc/Makefile.am index e9db6e5..aba306e 100644 --- a/apps/nc/Makefile.am +++ b/apps/nc/Makefile.am @@ -1,6 +1,8 @@ include $(top_srcdir)/Makefile.am.common -include $(abs_top_builddir)/crypto/libcrypto_la_objects.mk +-include $(abs_top_builddir)/ssl/libssl_la_objects.mk +-include $(abs_top_builddir)/tls/libtls_la_objects.mk if BUILD_NC @@ -14,12 +16,13 @@ endif EXTRA_DIST = nc.1 EXTRA_DIST += CMakeLists.txt -nc_LDADD = $(abs_top_builddir)/tls/libtls.la -nc_LDADD += $(PLATFORM_LDADD) $(PROG_LDADD) - -nc_LDADD += $(libcrypto_la_objects) +nc_LDADD = $(libcrypto_la_objects) nc_LDADD += $(libcompat_la_objects) nc_LDADD += $(libcompatnoopt_la_objects) +nc_LDADD += $(libssl_la_objects) +nc_LDADD += $(libtls_la_objects) + +nc_LDADD += $(PLATFORM_LDADD) $(PROG_LDADD) AM_CPPFLAGS += -I$(top_srcdir)/apps/nc/compat diff --git a/apps/ocspcheck/Makefile.am b/apps/ocspcheck/Makefile.am index 7c7b454..e6f3c54 100644 --- a/apps/ocspcheck/Makefile.am +++ b/apps/ocspcheck/Makefile.am @@ -1,5 +1,9 @@ include $(top_srcdir)/Makefile.am.common +-include $(abs_top_builddir)/crypto/libcrypto_la_objects.mk +-include $(abs_top_builddir)/ssl/libssl_la_objects.mk +-include $(abs_top_builddir)/tls/libtls_la_objects.mk + if !ENABLE_LIBTLS_ONLY bin_PROGRAMS = ocspcheck dist_man_MANS = ocspcheck.8 @@ -10,9 +14,11 @@ endif EXTRA_DIST = ocspcheck.8 EXTRA_DIST += CMakeLists.txt -ocspcheck_LDADD = $(abs_top_builddir)/crypto/libcrypto.la -ocspcheck_LDADD += $(abs_top_builddir)/ssl/libssl.la -ocspcheck_LDADD += $(abs_top_builddir)/tls/libtls.la +ocspcheck_LDADD = $(libcrypto_la_objects) +ocspcheck_LDADD += $(libcompat_la_objects) +ocspcheck_LDADD += $(libcompatnoopt_la_objects) +ocspcheck_LDADD += $(libssl_la_objects) +ocspcheck_LDADD += $(libtls_la_objects) ocspcheck_LDADD += $(PLATFORM_LDADD) $(PROG_LDADD) ocspcheck_SOURCES = http.c diff --git a/apps/openssl/Makefile.am b/apps/openssl/Makefile.am index 7cbac48..9574e06 100644 --- a/apps/openssl/Makefile.am +++ b/apps/openssl/Makefile.am @@ -1,5 +1,8 @@ include $(top_srcdir)/Makefile.am.common +-include $(abs_top_builddir)/crypto/libcrypto_la_objects.mk +-include $(abs_top_builddir)/ssl/libssl_la_objects.mk + if !ENABLE_LIBTLS_ONLY bin_PROGRAMS = openssl dist_man_MANS = openssl.1 @@ -7,8 +10,10 @@ else noinst_PROGRAMS = openssl endif -openssl_LDADD = $(abs_top_builddir)/ssl/libssl.la -openssl_LDADD += $(abs_top_builddir)/crypto/libcrypto.la +openssl_LDADD = $(libcrypto_la_objects) +openssl_LDADD += $(libcompat_la_objects) +openssl_LDADD += $(libcompatnoopt_la_objects) +openssl_LDADD += $(libssl_la_objects) openssl_LDADD += $(PLATFORM_LDADD) $(PROG_LDADD) openssl_SOURCES = apps.c -- cgit v1.2.3-55-g6feb From 47aeda0fb235043acf0b010315d175e67fa4ed00 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Tue, 28 Feb 2023 08:34:08 -0600 Subject: make it simpler to test on a non-Linux system --- scripts/test | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/test b/scripts/test index 0eb2c06..c7200dc 100755 --- a/scripts/test +++ b/scripts/test @@ -1,10 +1,10 @@ #!/bin/sh set -e +set -x unset CC -if type apt-get >/dev/null -then +if type apt-get >/dev/null 2>&1; then sudo apt-get update sudo apt-get install -y cmake ninja-build fi @@ -52,7 +52,9 @@ elif [ "x$ARCH" = "xmingw32" -o "x$ARCH" = "xmingw64" ]; then CPU=x86_64 fi - sudo apt-get install -y mingw-w64 + if ! type i686-w64-mingw32-gcc > /dev/null; then + sudo apt-get install -y mingw-w64 + fi ./configure --host=$CPU-w64-mingw32 make -j 4 -- cgit v1.2.3-55-g6feb From f261e8c46e5ce6a15638275b95d9d5c145d35d9c Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Tue, 28 Feb 2023 08:34:39 -0600 Subject: unexport internal compat symbols from libcrypto --- crypto/Makefile.am | 66 ------------------------------------------------------ ssl/Makefile.am | 4 ++++ 2 files changed, 4 insertions(+), 66 deletions(-) diff --git a/crypto/Makefile.am b/crypto/Makefile.am index c09d266..0b5ba3f 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am @@ -44,73 +44,7 @@ crypto_portable.sym: crypto.sym Makefile -echo "generating crypto_portable.sym ..." -cp $(top_srcdir)/crypto/crypto.sym crypto_portable.sym -chmod u+w crypto_portable.sym -if !HAVE_ARC4RANDOM_BUF - -echo arc4random >> crypto_portable.sym - -echo arc4random_buf >> crypto_portable.sym - -echo arc4random_uniform >> crypto_portable.sym -if !HAVE_GETENTROPY - -echo getentropy >> crypto_portable.sym -endif -endif -if !HAVE_ASPRINTF - -echo asprintf >> crypto_portable.sym - -echo vasprintf >> crypto_portable.sym -endif -if !HAVE_EXPLICIT_BZERO - -echo explicit_bzero >> crypto_portable.sym -endif -if !HAVE_FREEZERO - -echo freezero >> crypto_portable.sym -endif -if !HAVE_REALLOCARRAY - -echo reallocarray >> crypto_portable.sym -endif -if !HAVE_RECALLOCARRAY - -echo recallocarray >> crypto_portable.sym -endif -if !HAVE_STRLCAT - -echo strlcat >> crypto_portable.sym -endif -if !HAVE_STRLCPY - -echo strlcpy >> crypto_portable.sym -endif -if !HAVE_STRNDUP - -echo strndup >> crypto_portable.sym -endif -if !HAVE_STRNLEN - -echo strnlen >> crypto_portable.sym -endif -if !HAVE_STRSEP - -echo strsep >> crypto_portable.sym -endif -if !HAVE_STRTONUM - -echo strtonum >> crypto_portable.sym -endif -if !HAVE_TIMEGM - -echo timegm >> crypto_portable.sym -endif -if !HAVE_TIMINGSAFE_BCMP - -echo timingsafe_bcmp >> crypto_portable.sym -endif -if !HAVE_TIMINGSAFE_MEMCMP - -echo timingsafe_memcmp >> crypto_portable.sym -endif -if HOST_CPU_IS_INTEL - -echo OPENSSL_ia32cap_P >> crypto_portable.sym -endif if HOST_WIN - -echo posix_perror >> crypto_portable.sym - -echo posix_fopen >> crypto_portable.sym - -echo posix_fgets >> crypto_portable.sym - -echo posix_open >> crypto_portable.sym - -echo posix_rename >> crypto_portable.sym - -echo posix_connect >> crypto_portable.sym - -echo posix_close >> crypto_portable.sym - -echo posix_read >> crypto_portable.sym - -echo posix_write >> crypto_portable.sym - -echo posix_getsockopt >> crypto_portable.sym - -echo posix_setsockopt >> crypto_portable.sym - -echo getuid >> crypto_portable.sym -grep -v BIO_s_log crypto_portable.sym > crypto_portable.sym.tmp -mv crypto_portable.sym.tmp crypto_portable.sym endif diff --git a/ssl/Makefile.am b/ssl/Makefile.am index d27e2af..002a266 100644 --- a/ssl/Makefile.am +++ b/ssl/Makefile.am @@ -1,5 +1,7 @@ include $(top_srcdir)/Makefile.am.common +-include $(abs_top_builddir)/crypto/libcrypto_la_objects.mk + AM_CPPFLAGS += -I$(top_srcdir)/crypto/bio noinst_LTLIBRARIES = libbs.la @@ -34,6 +36,8 @@ remove_bs_objects: libssl.la libssl_la_CPPFLAGS = -I$(top_srcdir)/ssl/hidden ${AM_CPPFLAGS} libssl_la_LDFLAGS = -version-info @LIBSSL_VERSION@ -no-undefined -export-symbols $(top_srcdir)/ssl/ssl.sym libssl_la_LIBADD = $(abs_top_builddir)/crypto/libcrypto.la $(PLATFORM_LDADD) +libssl_la_LIBADD += $(libcompat_la_objects) +libssl_la_LIBADD += $(libcompatnoopt_la_objects) libssl_la_LIBADD += libbs.la libbs_la_SOURCES = bs_ber.c -- cgit v1.2.3-55-g6feb