]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
tools/build: Add a feature test for libopenssl
authorNamhyung Kim <namhyung@kernel.org>
Wed, 3 Dec 2025 23:29:23 +0000 (15:29 -0800)
committerNamhyung Kim <namhyung@kernel.org>
Wed, 17 Dec 2025 13:44:24 +0000 (05:44 -0800)
It's used by bpftool and the kernel build.  Let's add a feature test so
that perf can decide what to do based on the availability.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/build/Makefile.feature
tools/build/feature/Makefile
tools/build/feature/test-all.c
tools/build/feature/test-libopenssl.c [new file with mode: 0644]

index a7f030fc5e8352c184165f5523bbdfc77f19c313..362cf8f4a0a027048414e0ffd5d0280805fdf35c 100644 (file)
@@ -99,7 +99,8 @@ FEATURE_TESTS_BASIC :=                  \
         libzstd                                \
         disassembler-four-args         \
         disassembler-init-styled       \
-        file-handle
+        file-handle                    \
+        libopenssl
 
 # FEATURE_TESTS_BASIC + FEATURE_TESTS_EXTRA is the complete list
 # of all feature tests
@@ -147,7 +148,8 @@ FEATURE_DISPLAY ?=              \
          lzma                   \
          bpf                   \
          libaio                        \
-         libzstd
+         libzstd               \
+         libopenssl
 
 #
 # Declare group members of a feature to display the logical OR of the detection
index 87a5a908d6faeccbf7f43b20fc1556a56491e377..c699d4f4c6d935d0e4e4a7446115c98ee56fbdff 100644 (file)
@@ -67,12 +67,13 @@ FILES=                                          \
          test-libopencsd.bin                   \
          test-clang.bin                                \
          test-llvm.bin                         \
-         test-llvm-perf.bin   \
+         test-llvm-perf.bin                    \
          test-libaio.bin                       \
          test-libzstd.bin                      \
          test-clang-bpf-co-re.bin              \
          test-file-handle.bin                  \
-         test-libpfm4.bin
+         test-libpfm4.bin                      \
+         test-libopenssl.bin
 
 FILES := $(addprefix $(OUTPUT),$(FILES))
 
@@ -381,6 +382,9 @@ $(OUTPUT)test-file-handle.bin:
 $(OUTPUT)test-libpfm4.bin:
        $(BUILD) -lpfm
 
+$(OUTPUT)test-libopenssl.bin:
+       $(BUILD) -lssl
+
 $(OUTPUT)test-bpftool-skeletons.bin:
        $(SYSTEM_BPFTOOL) version | grep '^features:.*skeletons' \
                > $(@:.bin=.make.output) 2>&1
index eb346160d0ba0e2f3b3928a505b4be95ab4b95f4..1488bf6e607836e5605e7f991ad056ac7cbe48fd 100644 (file)
 # include "test-libtraceevent.c"
 #undef main
 
+#define main main_test_libopenssl
+# include "test-libopenssl.c"
+#undef main
+
 int main(int argc, char *argv[])
 {
        main_test_libpython();
@@ -173,6 +177,7 @@ int main(int argc, char *argv[])
        main_test_reallocarray();
        main_test_libzstd();
        main_test_libtraceevent();
+       main_test_libopenssl();
 
        return 0;
 }
diff --git a/tools/build/feature/test-libopenssl.c b/tools/build/feature/test-libopenssl.c
new file mode 100644 (file)
index 0000000..168c458
--- /dev/null
@@ -0,0 +1,7 @@
+#include <openssl/ssl.h>
+#include <openssl/opensslv.h>
+
+int main(void)
+{
+       return SSL_library_init();
+}