xref: /illumos-gate/usr/src/test/os-tests/tests/Makefile (revision 53aa45cdd84363d9e717eb6cb3532bcabae6911b)
1d583b39bSJohn Wren Kennedy#
2d583b39bSJohn Wren Kennedy# This file and its contents are supplied under the terms of the
3d583b39bSJohn Wren Kennedy# Common Development and Distribution License ("CDDL"), version 1.0.
4d583b39bSJohn Wren Kennedy# You may only use this file in accordance with the terms of version
5d583b39bSJohn Wren Kennedy# 1.0 of the CDDL.
6d583b39bSJohn Wren Kennedy#
7d583b39bSJohn Wren Kennedy# A full copy of the text of the CDDL should have accompanied this
8d583b39bSJohn Wren Kennedy# source.  A copy of the CDDL is also available via the Internet at
9d583b39bSJohn Wren Kennedy# http://www.illumos.org/license/CDDL.
10d583b39bSJohn Wren Kennedy#
11d583b39bSJohn Wren Kennedy
12d583b39bSJohn Wren Kennedy#
13fe4627efSSebastien Roy# Copyright (c) 2012, 2016 by Delphix. All rights reserved.
1481c3d085SJerry Jelinek# Copyright 2020 Joyent, Inc.
15915894efSMatt Barden# Copyright 2021 Tintri by DDN, Inc. All rights reserved.
16d7159b37SAndy Fiddaman# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
1772168095SRobert Mustacchi# Copyright 2025 Oxide Computer Company
18d583b39bSJohn Wren Kennedy#
19d583b39bSJohn Wren Kennedy
20b41e2fb6SRichard LoweSUBDIRS_i386 =		\
21b41e2fb6SRichard Lowe	i386		\
22b41e2fb6SRichard Lowe	imc		\
23b41e2fb6SRichard Lowe	saveargs	\
24b41e2fb6SRichard Lowe	xsave		\
25b41e2fb6SRichard Lowe	zen_umc
26a0955b86SJohn Levon
27508a0e8cSRob JohnstonSUBDIRS =       \
28*53aa45cdSPatrick Mooney		comm_page \
298e458de0SRobert Mustacchi		cores \
30508a0e8cSRob Johnston		ddi_ufm \
31a28480feSAndy Fiddaman		definit \
32a89c0811SRobert Mustacchi		execvpe \
33508a0e8cSRob Johnston		file-locking \
3443379a28SAndy Fiddaman		hexdump \
3524987e92SBill Sommerfeld		idmap \
36b210e777SJoshua M. Clulow		ilstr \
373ce53722SRobert Mustacchi		ksensor \
38f37b3cbbSMatt Barden		ksid \
396e4a39ccSPatrick Mooney		ktest \
40c5591576SRob Johnston		libtopo \
413d6ee46bSPatrick Mooney		mac \
42e8249070SRobert Mustacchi		minttl \
430250c53aSRobert Mustacchi		oclo \
44508a0e8cSRob Johnston		pf_key \
45508a0e8cSRob Johnston		poll \
46abb88ab1SRobert Mustacchi		portfs \
4737e2cd25SPatrick Mooney		regression \
48508a0e8cSRob Johnston		sdevfs \
49508a0e8cSRob Johnston		secflags \
5072168095SRobert Mustacchi		secure_getenv \
51374858d2SPatrick Mooney		signalfd \
52508a0e8cSRob Johnston		sigqueue \
53508a0e8cSRob Johnston		sockfs \
54508a0e8cSRob Johnston		spoof-ras \
55915894efSMatt Barden		stackalign \
56508a0e8cSRob Johnston		stress \
57edd58064SJerry Jelinek		syscall \
581edba515SAndy Fiddaman		tcpsig \
59440a8a36SPatrick Mooney		timer \
60a61ed2ceSHans Rosenfeld		uccid \
61e746021fSRobert Mustacchi		vfs \
62508a0e8cSRob Johnston		$(SUBDIRS_$(MACH))
63d583b39bSJohn Wren Kennedy
6469c811abSRobert MustacchiPROGS = \
65dea9f5e6SRobert Mustacchi	clock_gettime \
66d7159b37SAndy Fiddaman	eventfd \
678bfb438dSRobert Mustacchi	fifo-tvnsec \
6881c3d085SJerry Jelinek	odirectory \
693f3c90a9SAndy Fiddaman	ucontext \
70ed093b41SRobert Mustacchi	getcontext_extd \
7181c3d085SJerry Jelinek	writev
7269c811abSRobert Mustacchi
7369c811abSRobert MustacchiCPPFLAGS += -D_REENTRANT
7469c811abSRobert MustacchiPROGS32 = $(PROGS:%=%.32)
7569c811abSRobert MustacchiPROGS64 = $(PROGS:%=%.64)
7669c811abSRobert Mustacchi
7769c811abSRobert MustacchiROOTOPTDIR = $(ROOT)/opt/os-tests/tests
7869c811abSRobert MustacchiROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTDIR)/%) \
7969c811abSRobert Mustacchi	$(PROGS64:%=$(ROOTOPTDIR)/%) \
8069c811abSRobert Mustacchi	$(SCRIPTS:%=$(ROOTOPTDIR)/%)
8169c811abSRobert Mustacchi
8269c811abSRobert Mustacchiodirectory.32 :=	LDLIBS += -lsocket
8369c811abSRobert Mustacchiodirectory.64 :=	LDLIBS64 += -lsocket
8469c811abSRobert Mustacchi
85dea9f5e6SRobert Mustacchiclock_gettime.32 :=	LDLIBS += -lproc
86dea9f5e6SRobert Mustacchiclock_gettime.32 :=	CSTD = $(CSTD_GNU99)
87dea9f5e6SRobert Mustacchiclock_gettime.64 :=	LDLIBS64 += -lproc
88dea9f5e6SRobert Mustacchiclock_gettime.64 :=	CSTD = $(CSTD_GNU99)
89dea9f5e6SRobert Mustacchi
908bfb438dSRobert Mustacchififo-tvnsec.32 :=	CSTD = $(CSTD_GNU99)
918bfb438dSRobert Mustacchififo-tvnsec.64 :=	CSTD = $(CSTD_GNU99)
928bfb438dSRobert Mustacchi
933f3c90a9SAndy Fiddamanucontext.32 :=		SMOFF += unreachable
943f3c90a9SAndy Fiddamanucontext.64 :=		SMOFF += unreachable
953f3c90a9SAndy Fiddaman
9681c3d085SJerry Jelinekwritev.32 :=		CPPFLAGS += -D_FILE_OFFSET_BITS=64
9781c3d085SJerry Jelinekwritev.32 :=		CSTD = $(CSTD_GNU99)
9881c3d085SJerry Jelinekwritev.64 :=		CSTD = $(CSTD_GNU99)
9981c3d085SJerry Jelinek
10069c811abSRobert Mustacchiinclude $(SRC)/cmd/Makefile.cmd
10169c811abSRobert Mustacchi
10269c811abSRobert Mustacchiall     :=      TARGET = all
10369c811abSRobert Mustacchiinstall :=      TARGET = install
10469c811abSRobert Mustacchiclean   :=      TARGET = clean
10569c811abSRobert Mustacchiclobber :=      TARGET = clobber
10669c811abSRobert Mustacchi
10769c811abSRobert Mustacchi.KEEP_STATE:
10869c811abSRobert Mustacchi
10969c811abSRobert Mustacchiinstall: $(SUBDIRS) $(ROOTOPTPROGS)
11069c811abSRobert Mustacchi
11169c811abSRobert Mustacchiall: $(SUBDIRS) $(PROGS32) $(PROGS64)
11269c811abSRobert Mustacchi
11369c811abSRobert Mustacchiclean: $(SUBDIRS)
11469c811abSRobert Mustacchi
11569c811abSRobert Mustacchi$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTDIR)
11669c811abSRobert Mustacchi
11769c811abSRobert Mustacchi$(ROOTOPTDIR):
11869c811abSRobert Mustacchi	$(INS.dir)
11969c811abSRobert Mustacchi
12069c811abSRobert Mustacchi$(ROOTOPTDIR)/%: %
12169c811abSRobert Mustacchi	$(INS.file)
12269c811abSRobert Mustacchi
12369c811abSRobert Mustacchi$(ROOTOPTDIR)/%: %.ksh
12469c811abSRobert Mustacchi	$(INS.rename)
12569c811abSRobert Mustacchi
12669c811abSRobert Mustacchi%.64: %.c
12769c811abSRobert Mustacchi	$(LINK64.c) -o $@ $< $(LDLIBS64)
12869c811abSRobert Mustacchi	$(POST_PROCESS)
12969c811abSRobert Mustacchi
13069c811abSRobert Mustacchi%.32: %.c
13169c811abSRobert Mustacchi	$(LINK.c) -o $@ $< $(LDLIBS)
13269c811abSRobert Mustacchi	$(POST_PROCESS)
13369c811abSRobert Mustacchi
13469c811abSRobert Mustacchiclobber: $(SUBDIRS)
13569c811abSRobert Mustacchi	$(RM) $(PROGS32) $(PROGS64)
13669c811abSRobert Mustacchi
13769c811abSRobert Mustacchi$(SUBDIRS): FRC
13869c811abSRobert Mustacchi	@cd $@; pwd; $(MAKE) $(TARGET)
13969c811abSRobert Mustacchi
14069c811abSRobert MustacchiFRC:
141