blob: b5c25c56a572fb9cab060eba5816461bde32b1a9 [file] [log] [blame]
Brad Bishop96ff1982019-08-19 13:50:42 -04001From ec282980e6eee96f5b74aba464141f86049263e6 Mon Sep 17 00:00:00 2001
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05002From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 7 Jan 2016 18:19:03 +0000
Brad Bishop96ff1982019-08-19 13:50:42 -04004Subject: [PATCH] build: Add option to select libc implementation
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05005
6There are more than glibc for C library implementation available on
7linux now a days, uclibc cloaked like glibc but musl e.g. is very
8different and does not implement all GNU extentions
9
10Disable tests specifically not building _yet_ on musl based systems
11
Brad Bishopd7bf8c12018-02-25 22:55:05 -050012Upstream-Status: Pending
Brad Bishop96ff1982019-08-19 13:50:42 -040013
14Signed-off-by: Khem Raj <raj.khem@gmail.com>
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050015---
16 Makefile | 5 +++++
17 testcases/kernel/Makefile | 5 ++++-
18 testcases/kernel/sched/Makefile | 4 +++-
19 testcases/kernel/syscalls/Makefile | 5 +++++
20 testcases/network/nfsv4/acl/Makefile | 4 ++++
21 testcases/network/rpc/basic_tests/Makefile | 5 +++++
22 testcases/realtime/func/pi-tests/Makefile | 4 ++++
23 testcases/realtime/stress/pi-tests/Makefile | 5 +++++
24 8 files changed, 35 insertions(+), 2 deletions(-)
25
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080026diff --git a/Makefile b/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040027index 768ca46..e9d679a 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080028--- a/Makefile
29+++ b/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040030@@ -41,6 +41,11 @@ vpath %.mk $(top_srcdir)/mk:$(top_srcdir)/mk/include
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050031 UCLINUX ?= 0
32 export UCLINUX
33
34+# System C library implementation (glibc,uclibc,musl etc.)
35+# default to glibc if not set
36+LIBC ?= glibc
37+export LIBC
38+
39 # CLEAN_TARGETS: Targets which exist solely in clean.
40 # COMMON_TARGETS: Targets which exist in all, clean, and install.
41 # INSTALL_TARGETS: Targets which exist in clean and install (contains
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080042diff --git a/testcases/kernel/Makefile b/testcases/kernel/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040043index 39d79c7..24a57d9 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080044--- a/testcases/kernel/Makefile
45+++ b/testcases/kernel/Makefile
Brad Bishop19323692019-04-05 15:28:33 -040046@@ -49,12 +49,15 @@ SUBDIRS += connectors \
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050047 logging \
48 mem \
49 numa \
50- pty \
51 sched \
52 security \
53 timers \
54 tracing \
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050055
56+ifneq ($(LIBC),musl)
57+SUBDIRS += pty
58+endif
59+
60 ifeq ($(WITH_POWER_MANAGEMENT_TESTSUITE),yes)
61 SUBDIRS += power_management
62 endif
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080063diff --git a/testcases/kernel/sched/Makefile b/testcases/kernel/sched/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040064index 6a57d79..74bb933 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080065--- a/testcases/kernel/sched/Makefile
66+++ b/testcases/kernel/sched/Makefile
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050067@@ -23,5 +23,7 @@
68 top_srcdir ?= ../../..
69
70 include $(top_srcdir)/include/mk/env_pre.mk
71-
72+ifeq ($(LIBC),musl)
73+ FILTER_OUT_DIRS += process_stress
74+endif
75 include $(top_srcdir)/include/mk/generic_trunk_target.mk
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080076diff --git a/testcases/kernel/syscalls/Makefile b/testcases/kernel/syscalls/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040077index 45a00cf..d1becd0 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080078--- a/testcases/kernel/syscalls/Makefile
79+++ b/testcases/kernel/syscalls/Makefile
Brad Bishop316dfdd2018-06-25 12:45:53 -040080@@ -28,6 +28,11 @@ ifeq ($(UCLINUX),1)
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050081 FILTER_OUT_DIRS += capget capset chmod chown clone fork getcontext llseek \
82 mincore mprotect nftw profil remap_file_pages sbrk
83 endif
84+ifeq ($(LIBC),musl)
85+FILTER_OUT_DIRS += confstr fmtmsg getcontext ioctl mallopt profil \
86+ rt_sigsuspend setdomainname sethostname sigsuspend \
87+ ustat
88+endif
89
Brad Bishop316dfdd2018-06-25 12:45:53 -040090 ifeq ($(UCLIBC),1)
91 FILTER_OUT_DIRS += profil
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080092diff --git a/testcases/network/nfsv4/acl/Makefile b/testcases/network/nfsv4/acl/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -040093index 8c55a6b..f7cda62 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080094--- a/testcases/network/nfsv4/acl/Makefile
95+++ b/testcases/network/nfsv4/acl/Makefile
96@@ -26,4 +26,8 @@ include $(top_srcdir)/include/mk/env_pre.mk
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050097
98 LDLIBS += $(ACL_LIBS)
99
100+ifeq ($(LIBC),musl)
101+FILTER_OUT_MAKE_TARGETS := acl1
102+endif
103+
104 include $(top_srcdir)/include/mk/generic_leaf_target.mk
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800105diff --git a/testcases/network/rpc/basic_tests/Makefile b/testcases/network/rpc/basic_tests/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -0400106index 66e9d56..ea8eb8a 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800107--- a/testcases/network/rpc/basic_tests/Makefile
108+++ b/testcases/network/rpc/basic_tests/Makefile
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500109@@ -23,4 +23,9 @@
110 top_srcdir ?= ../../../..
111
112 include $(top_srcdir)/include/mk/env_pre.mk
113+
114+ifeq ($(LIBC),musl)
115+FILTER_OUT_DIRS += rpc01
116+endif
117+
118 include $(top_srcdir)/include/mk/generic_trunk_target.mk
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800119diff --git a/testcases/realtime/func/pi-tests/Makefile b/testcases/realtime/func/pi-tests/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -0400120index 68616a7..748754b 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800121--- a/testcases/realtime/func/pi-tests/Makefile
122+++ b/testcases/realtime/func/pi-tests/Makefile
123@@ -27,5 +27,9 @@ include $(top_srcdir)/include/mk/env_pre.mk
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500124 include $(abs_srcdir)/../../config.mk
125
126 MAKE_TARGETS := testpi-0 testpi-1 testpi-2 testpi-4 testpi-5 testpi-6 testpi-7 sbrk_mutex
127+ifeq ($(LIBC),musl)
128+FILTER_OUT_MAKE_TARGETS := testpi-5 testpi-6 sbrk_mutex
129+endif
130+
131
132 include $(top_srcdir)/include/mk/generic_leaf_target.mk
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800133diff --git a/testcases/realtime/stress/pi-tests/Makefile b/testcases/realtime/stress/pi-tests/Makefile
Brad Bishop96ff1982019-08-19 13:50:42 -0400134index 1881f75..266e0b8 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800135--- a/testcases/realtime/stress/pi-tests/Makefile
136+++ b/testcases/realtime/stress/pi-tests/Makefile
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500137@@ -24,4 +24,9 @@ top_srcdir ?= ../../../..
138
139 include $(top_srcdir)/include/mk/env_pre.mk
140 include $(abs_srcdir)/../../config.mk
141+
142+ifeq ($(LIBC),musl)
143+FILTER_OUT_MAKE_TARGETS := testpi-3
144+endif
145+
146 include $(top_srcdir)/include/mk/generic_leaf_target.mk
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800147--
Brad Bishop96ff1982019-08-19 13:50:42 -04001482.7.4
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800149