commit 3a56741
xplshn
·
2026-06-17 04:50:06 +0000 UTC
parent 562c895
oops: use system bearssl Signed-off-by: xplshn <anto@xplshn.com.ar>
3 files changed,
+45,
-11
+23,
-4
1@@ -46,12 +46,31 @@ EOF
2 unset _line _key _val _trimmed
3 CPPFLAGS="-Ishared -DPREFIX=\"$PREFIX\" -D_DEFAULT_SOURCE -D_GNU_SOURCE -D_NETBSD_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -D_FILE_OFFSET_BITS=64$_feature_flags"
4 if [ "$FEATURE_USE_BEARSSL" = "1" ]; then
5- CPPFLAGS="$CPPFLAGS -IexternalRepos/BearSSL/inc"
6- LDFLAGS="$LDFLAGS -LexternalRepos/BearSSL/build"
7- LDLIBS="$LDLIBS externalRepos/BearSSL/build/libbearssl.a"
8+ if pkg-config --exists libbearssl 2>/dev/null; then
9+ CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libbearssl)"
10+ LDLIBS="$LDLIBS $(pkg-config --libs libbearssl)"
11+ elif pkg-config --exists bearssl 2>/dev/null; then
12+ CPPFLAGS="$CPPFLAGS $(pkg-config --cflags bearssl)"
13+ LDLIBS="$LDLIBS $(pkg-config --libs bearssl)"
14+ else
15+ LDLIBS="$LDLIBS -lbearssl"
16+ fi
17 fi
18 if [ "$FEATURE_USE_LIBRESSL" = "1" ]; then
19- LDLIBS="$LDLIBS -ltls"
20+ if pkg-config --exists libtls 2>/dev/null; then
21+ CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libtls)"
22+ LDLIBS="$LDLIBS $(pkg-config --libs libtls)"
23+ else
24+ LDLIBS="$LDLIBS -ltls"
25+ fi
26+fi
27+if [ "$FEATURE_USE_OPENSSL" = "1" ]; then
28+ if pkg-config --exists openssl 2>/dev/null; then
29+ CPPFLAGS="$CPPFLAGS $(pkg-config --cflags openssl)"
30+ LDLIBS="$LDLIBS $(pkg-config --libs openssl)"
31+ else
32+ LDLIBS="$LDLIBS -lssl -lcrypto"
33+ fi
34 fi
35 unset _feature_flags
36
+15,
-3
1@@ -2,7 +2,7 @@
2 PRESET_FEATURES=all
3
4 # subset of: posix linux net xsi pseudo dev
5-PRESET_UTILS="posix linux net xsi pseudo"
6+PRESET_UTILS="posix linux net xsi pseudo dev"
7
8 # installation paths
9 VERSION=2026-06-08T05-53-UTC-03
10@@ -137,6 +137,18 @@ unset _p
11 # BUILD_POSIX_SH=0 # disable a tool when its group is active
12 # BUILD_DEV_AS=1 # enable a tool whose group isnt in PRESET_UTILS
13 FEATURE_SH_HISTEDIT=1
14+# tls backend: set all three to 0 to disable tls, or set exactly one to 1 to
15+# override auto-detection; auto-detection tries bearssl first, then libtls,
16+# then openssl
17+FEATURE_USE_BEARSSL=0
18 FEATURE_USE_LIBRESSL=0
19-FEATURE_USE_BEARSSL=1
20-# FEATURE_MY_NEW_THING=1 # new FEATURE_* are picked up by Makefile.sh automatically
21+FEATURE_USE_OPENSSL=0
22+if [ "$FEATURE_USE_BEARSSL" = 0 ] && [ "$FEATURE_USE_LIBRESSL" = 0 ] && [ "$FEATURE_USE_OPENSSL" = 0 ]; then
23+ if pkg-config --exists libbearssl 2>/dev/null || pkg-config --exists bearssl 2>/dev/null; then
24+ FEATURE_USE_BEARSSL=1
25+ elif pkg-config --exists libtls 2>/dev/null; then
26+ FEATURE_USE_LIBRESSL=1
27+ elif pkg-config --exists openssl 2>/dev/null; then
28+ FEATURE_USE_OPENSSL=1
29+ fi
30+fi
+7,
-4
1@@ -232,6 +232,7 @@ FEATURE_DEPMOD_ALIAS = 1
2 FEATURE_DEPMOD_SYMBOLS = 1
3 FEATURE_USE_LIBRESSL = 0
4 FEATURE_USE_BEARSSL = 1
5+FEATURE_USE_OPENSSL = 0
6 FEATURE_TAR_TTY_SAFE = 1
7 FEATURE_TAR_NOFOLLOW = 1
8 FEATURE_READLINK_REALPATH = 1
9@@ -296,6 +297,7 @@ CPPFLAGS =\
10 -DFEATURE_DEPMOD_SYMBOLS=$(FEATURE_DEPMOD_SYMBOLS)\
11 -DFEATURE_USE_LIBRESSL=$(FEATURE_USE_LIBRESSL)\
12 -DFEATURE_USE_BEARSSL=$(FEATURE_USE_BEARSSL)\
13+ -DFEATURE_USE_OPENSSL=$(FEATURE_USE_OPENSSL)\
14 -DFEATURE_TAR_TTY_SAFE=$(FEATURE_TAR_TTY_SAFE)\
15 -DFEATURE_TAR_NOFOLLOW=$(FEATURE_TAR_NOFOLLOW)\
16 -DFEATURE_READLINK_REALPATH=$(FEATURE_READLINK_REALPATH)\
17@@ -315,10 +317,11 @@ LDFLAGS = $(LDFLAGS_TLS)
18 LDLIBS_HISTEDIT_0 =
19 LDLIBS_HISTEDIT_1 =
20 LDLIBS_TLS_LIBRESSL_1 = -ltls
21-LDLIBS_TLS_BEARSSL_1 = externalRepos/BearSSL/build/libbearssl.a
22-LDLIBS_TLS = $(LDLIBS_TLS_LIBRESSL_$(FEATURE_USE_LIBRESSL)) $(LDLIBS_TLS_BEARSSL_$(FEATURE_USE_BEARSSL))
23-CPPFLAGS_TLS_BEARSSL_1 = -IexternalRepos/BearSSL/inc
24-LDFLAGS_TLS_BEARSSL_1 = -LexternalRepos/BearSSL/build
25+LDLIBS_TLS_BEARSSL_1 = -lbearssl
26+LDLIBS_TLS_OPENSSL_1 = -lssl -lcrypto
27+LDLIBS_TLS = $(LDLIBS_TLS_LIBRESSL_$(FEATURE_USE_LIBRESSL)) $(LDLIBS_TLS_BEARSSL_$(FEATURE_USE_BEARSSL)) $(LDLIBS_TLS_OPENSSL_$(FEATURE_USE_OPENSSL))
28+CPPFLAGS_TLS_BEARSSL_1 =
29+LDFLAGS_TLS_BEARSSL_1 =
30 CPPFLAGS_TLS = $(CPPFLAGS_TLS_BEARSSL_$(FEATURE_USE_BEARSSL))
31 LDFLAGS_TLS = $(LDFLAGS_TLS_BEARSSL_$(FEATURE_USE_BEARSSL))
32 LDLIBS = -lcrypt -lresolv $(LDLIBS_HISTEDIT_$(FEATURE_SH_HISTEDIT)) $(LDLIBS_TLS)