xref: /illumos-gate/usr/src/test/os-tests/tests/memlist/Makefile (revision 19aa9b20a592f8df8c26048ebed43a7f861b7bbc)
1*19aa9b20SLuqman Aden#
2*19aa9b20SLuqman Aden# This file and its contents are supplied under the terms of the
3*19aa9b20SLuqman Aden# Common Development and Distribution License ("CDDL"), version 1.0.
4*19aa9b20SLuqman Aden# You may only use this file in accordance with the terms of version
5*19aa9b20SLuqman Aden# 1.0 of the CDDL.
6*19aa9b20SLuqman Aden#
7*19aa9b20SLuqman Aden# A full copy of the text of the CDDL should have accompanied this
8*19aa9b20SLuqman Aden# source.  A copy of the CDDL is also available via the Internet at
9*19aa9b20SLuqman Aden# http://www.illumos.org/license/CDDL.
10*19aa9b20SLuqman Aden#
11*19aa9b20SLuqman Aden
12*19aa9b20SLuqman Aden#
13*19aa9b20SLuqman Aden# Copyright 2026 Oxide Computer Company
14*19aa9b20SLuqman Aden#
15*19aa9b20SLuqman Aden
16*19aa9b20SLuqman AdenPROGS = \
17*19aa9b20SLuqman Aden	memlist_test
18*19aa9b20SLuqman Aden
19*19aa9b20SLuqman AdenPROGS32 = $(PROGS:%=%.32)
20*19aa9b20SLuqman AdenPROGS64 = $(PROGS:%=%.64)
21*19aa9b20SLuqman Aden
22*19aa9b20SLuqman AdenCOMOBJS = memlist_new.o
23*19aa9b20SLuqman AdenCOMOBJS32 = $(COMOBJS:.o=.32.o)
24*19aa9b20SLuqman AdenCOMOBJS64 = $(COMOBJS:.o=.64.o)
25*19aa9b20SLuqman Aden
26*19aa9b20SLuqman AdenROOTOPTDIR = $(ROOT)/opt/os-tests/tests
27*19aa9b20SLuqman AdenROOTOPTMEMLIST = $(ROOTOPTDIR)/memlist
28*19aa9b20SLuqman AdenROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTMEMLIST)/%) $(PROGS64:%=$(ROOTOPTMEMLIST)/%)
29*19aa9b20SLuqman Aden
30*19aa9b20SLuqman Adeninclude $(SRC)/cmd/Makefile.cmd
31*19aa9b20SLuqman Adeninclude $(SRC)/cmd/Makefile.ctf
32*19aa9b20SLuqman Aden
33*19aa9b20SLuqman AdenCSTD = $(CSTD_GNU17)
34*19aa9b20SLuqman Aden
35*19aa9b20SLuqman AdenCTF_MODE = link
36*19aa9b20SLuqman Aden
37*19aa9b20SLuqman AdenCPPFLAGS.first += -I$(SRC)/lib/libfakekernel/common -D_FAKE_KERNEL
38*19aa9b20SLuqman AdenCPPFLAGS += -I$(SRC)/uts/common
39*19aa9b20SLuqman AdenCPPFLAGS += -DDEBUG
40*19aa9b20SLuqman Aden
41*19aa9b20SLuqman AdenLDLIBS += -lfakekernel
42*19aa9b20SLuqman AdenLDLIBS64 += -lfakekernel
43*19aa9b20SLuqman Aden
44*19aa9b20SLuqman Aden.KEEP_STATE:
45*19aa9b20SLuqman Aden
46*19aa9b20SLuqman Adenall: $(PROGS32) $(PROGS64)
47*19aa9b20SLuqman Aden
48*19aa9b20SLuqman Adeninstall: $(ROOTOPTPROGS)
49*19aa9b20SLuqman Aden
50*19aa9b20SLuqman Adenclean:
51*19aa9b20SLuqman Aden	$(RM) $(COMOBJS32) $(COMOBJS64)
52*19aa9b20SLuqman Aden
53*19aa9b20SLuqman Aden$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTMEMLIST)
54*19aa9b20SLuqman Aden
55*19aa9b20SLuqman Aden$(ROOTOPTDIR):
56*19aa9b20SLuqman Aden	$(INS.dir)
57*19aa9b20SLuqman Aden
58*19aa9b20SLuqman Aden$(ROOTOPTMEMLIST): $(ROOTOPTDIR)
59*19aa9b20SLuqman Aden	$(INS.dir)
60*19aa9b20SLuqman Aden
61*19aa9b20SLuqman Aden$(ROOTOPTMEMLIST)/%: %
62*19aa9b20SLuqman Aden	$(INS.file)
63*19aa9b20SLuqman Aden
64*19aa9b20SLuqman Aden%.32: %.c $(COMOBJS32)
65*19aa9b20SLuqman Aden	$(LINK.c) -o $@ $^ $(LDLIBS)
66*19aa9b20SLuqman Aden	$(POST_PROCESS)
67*19aa9b20SLuqman Aden
68*19aa9b20SLuqman Aden%.64: %.c $(COMOBJS64)
69*19aa9b20SLuqman Aden	$(LINK64.c) -o $@ $^ $(LDLIBS64)
70*19aa9b20SLuqman Aden	$(POST_PROCESS)
71*19aa9b20SLuqman Aden
72*19aa9b20SLuqman Adenmemlist_new.32.o: $(SRC)/uts/common/os/memlist_new.c
73*19aa9b20SLuqman Aden	$(COMPILE.c) -o $@ $(SRC)/uts/common/os/memlist_new.c
74*19aa9b20SLuqman Aden	$(POST_PROCESS_O)
75*19aa9b20SLuqman Aden
76*19aa9b20SLuqman Adenmemlist_new.64.o: $(SRC)/uts/common/os/memlist_new.c
77*19aa9b20SLuqman Aden	$(COMPILE64.c) -o $@ $(SRC)/uts/common/os/memlist_new.c
78*19aa9b20SLuqman Aden	$(POST_PROCESS_O)
79*19aa9b20SLuqman Aden
80*19aa9b20SLuqman Adenclobber: clean
81*19aa9b20SLuqman Aden	$(RM) $(PROGS32) $(PROGS64)
82*19aa9b20SLuqman Aden
83*19aa9b20SLuqman AdenFRC:
84