xref: /illumos-gate/usr/src/test/util-tests/tests/smbios/Makefile (revision d53cdfab6d4896af92b7a3df87a26060caf179ae)
11566bc34SRobert Mustacchi#
21566bc34SRobert Mustacchi# This file and its contents are supplied under the terms of the
31566bc34SRobert Mustacchi# Common Development and Distribution License ("CDDL"), version 1.0.
41566bc34SRobert Mustacchi# You may only use this file in accordance with the terms of version
51566bc34SRobert Mustacchi# 1.0 of the CDDL.
61566bc34SRobert Mustacchi#
71566bc34SRobert Mustacchi# A full copy of the text of the CDDL should have accompanied this
81566bc34SRobert Mustacchi# source.  A copy of the CDDL is also available via the Internet at
91566bc34SRobert Mustacchi# http://www.illumos.org/license/CDDL.
101566bc34SRobert Mustacchi#
111566bc34SRobert Mustacchi
121566bc34SRobert Mustacchi#
131566bc34SRobert Mustacchi# Copyright (c) 2018, Joyent, Inc.
14*d53cdfabSRobert Mustacchi# Copyright 2021 Oxide Computer Company
151566bc34SRobert Mustacchi#
161566bc34SRobert Mustacchi
171566bc34SRobert Mustacchiinclude $(SRC)/Makefile.master
181566bc34SRobert Mustacchi
191566bc34SRobert MustacchiROOTOPTPKG = $(ROOT)/opt/util-tests
201566bc34SRobert MustacchiTESTDIR = $(ROOTOPTPKG)/tests/
211566bc34SRobert Mustacchi
22176a9270SRobert MustacchiOBJS =	smbios.o \
23*d53cdfabSRobert Mustacchi	smbios_test_chassis.o \
24176a9270SRobert Mustacchi	smbios_test_errors.o \
25*d53cdfabSRobert Mustacchi	smbios_test_fwinfo.o \
26176a9270SRobert Mustacchi	smbios_test_memdevice.o \
27176a9270SRobert Mustacchi	smbios_test_pinfo.o \
28*d53cdfabSRobert Mustacchi	smbios_test_slot.o \
29*d53cdfabSRobert Mustacchi	smbios_test_strings.o \
30*d53cdfabSRobert Mustacchi	smbios_test_strprop.o
311566bc34SRobert MustacchiPROGS = smbios
321566bc34SRobert Mustacchi
331566bc34SRobert Mustacchiinclude $(SRC)/cmd/Makefile.cmd
341566bc34SRobert Mustacchiinclude $(SRC)/test/Makefile.com
351566bc34SRobert Mustacchi
361566bc34SRobert MustacchiCMDS = $(PROGS:%=$(TESTDIR)/%)
371566bc34SRobert Mustacchi$(CMDS) := FILEMODE = 0555
38*d53cdfabSRobert MustacchiCSTD = $(GNU_C99)
39*d53cdfabSRobert Mustacchi
40*d53cdfabSRobert Mustacchi#
41*d53cdfabSRobert Mustacchi# Since this program uses quite a number of variables declared on the
42*d53cdfabSRobert Mustacchi# stack that are then written to by libsmbios, we opt to pay the cost
43*d53cdfabSRobert Mustacchi# of always have the stack protector on every function as an additional
44*d53cdfabSRobert Mustacchi# means of checking ourselves.
45*d53cdfabSRobert Mustacchi#
46*d53cdfabSRobert MustacchiSTACKPROTECT = all
471566bc34SRobert Mustacchi
481566bc34SRobert MustacchiLDLIBS += -lsmbios -lumem
491566bc34SRobert MustacchiCFLAGS += -_gcc=-Wall -_gcc=-Wextra -_gcc=-Wno-unknown-pragmas
501566bc34SRobert Mustacchi
511566bc34SRobert Mustacchiall: $(PROGS)
521566bc34SRobert Mustacchi
53176a9270SRobert Mustacchiinstall: all $(CMDS)
541566bc34SRobert Mustacchi
551566bc34SRobert Mustacchiclobber: clean
56176a9270SRobert Mustacchi	-$(RM) $(PROGS)
571566bc34SRobert Mustacchi
581566bc34SRobert Mustacchiclean:
59176a9270SRobert Mustacchi	-$(RM) $(OBJS)
601566bc34SRobert Mustacchi
61176a9270SRobert Mustacchi$(CMDS): $(TESTDIR) $(PROGS)
621566bc34SRobert Mustacchi
631566bc34SRobert Mustacchi$(TESTDIR):
641566bc34SRobert Mustacchi	$(INS.dir)
651566bc34SRobert Mustacchi
661566bc34SRobert Mustacchi$(TESTDIR)/%: %
671566bc34SRobert Mustacchi	$(INS.file)
681566bc34SRobert Mustacchi
69176a9270SRobert Mustacchi$(PROGS): $(OBJS)
70176a9270SRobert Mustacchi	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
711566bc34SRobert Mustacchi	$(POST_PROCESS)
72