xref: /illumos-gate/usr/src/test/os-tests/tests/hexdump/Makefile (revision bb9475a199514dcace79d04d02c1eff05d65b94f)
143379a28SAndy Fiddaman#
243379a28SAndy Fiddaman# This file and its contents are supplied under the terms of the
343379a28SAndy Fiddaman# Common Development and Distribution License ("CDDL"), version 1.0.
443379a28SAndy Fiddaman# You may only use this file in accordance with the terms of version
543379a28SAndy Fiddaman# 1.0 of the CDDL.
643379a28SAndy Fiddaman#
743379a28SAndy Fiddaman# A full copy of the text of the CDDL should have accompanied this
843379a28SAndy Fiddaman# source.  A copy of the CDDL is also available via the Internet at
943379a28SAndy Fiddaman# http://www.illumos.org/license/CDDL.
1043379a28SAndy Fiddaman#
1143379a28SAndy Fiddaman
1243379a28SAndy Fiddaman#
13*bb9475a1SRobert Mustacchi# Copyright 2025 Oxide Computer Company
1443379a28SAndy Fiddaman#
1543379a28SAndy Fiddaman
1643379a28SAndy FiddamanPROGS = \
1743379a28SAndy Fiddaman	hexdump_basic
1843379a28SAndy Fiddaman
1943379a28SAndy FiddamanDATAFILES = \
2043379a28SAndy Fiddaman	_input		\
2143379a28SAndy Fiddaman	addr1		\
2243379a28SAndy Fiddaman	addr2		\
2343379a28SAndy Fiddaman	address		\
2443379a28SAndy Fiddaman	address+header	\
2543379a28SAndy Fiddaman	align1		\
2643379a28SAndy Fiddaman	ascii		\
2743379a28SAndy Fiddaman	basic		\
2843379a28SAndy Fiddaman	dedup		\
2943379a28SAndy Fiddaman	default		\
3043379a28SAndy Fiddaman	doublespace	\
3143379a28SAndy Fiddaman	group2		\
3243379a28SAndy Fiddaman	group4		\
3343379a28SAndy Fiddaman	group8		\
3443379a28SAndy Fiddaman	header		\
3543379a28SAndy Fiddaman	indent		\
3643379a28SAndy Fiddaman	marker1		\
3743379a28SAndy Fiddaman	narrow1		\
3843379a28SAndy Fiddaman	narrow2		\
3943379a28SAndy Fiddaman	wide1		\
4043379a28SAndy Fiddaman	width12
4143379a28SAndy Fiddaman
4243379a28SAndy FiddamanPROGS32 = $(PROGS:%=%.32)
4343379a28SAndy FiddamanPROGS64 = $(PROGS:%=%.64)
4443379a28SAndy Fiddaman
4543379a28SAndy FiddamanCOMOBJS = hexdump.o ilstr.o
4643379a28SAndy FiddamanCOMOBJS32 = $(COMOBJS:.o=.32.o)
4743379a28SAndy FiddamanCOMOBJS64 = $(COMOBJS:.o=.64.o)
4843379a28SAndy Fiddaman
4943379a28SAndy FiddamanROOTOPTDIR = $(ROOT)/opt/os-tests/tests
5043379a28SAndy FiddamanROOTOPTHEXDUMP = $(ROOTOPTDIR)/hexdump
5143379a28SAndy FiddamanROOTOPTDATADIR = $(ROOTOPTHEXDUMP)/data
5243379a28SAndy FiddamanROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTHEXDUMP)/%) $(PROGS64:%=$(ROOTOPTHEXDUMP)/%)
5343379a28SAndy FiddamanROOTOPTDATA = $(DATAFILES:%=$(ROOTOPTDATADIR)/%)
5443379a28SAndy Fiddaman
5543379a28SAndy Fiddaman$(ROOTOPTDATA) := FILEMODE = 0444
5643379a28SAndy Fiddaman
5743379a28SAndy Fiddamaninclude $(SRC)/cmd/Makefile.cmd
5843379a28SAndy Fiddamaninclude $(SRC)/cmd/Makefile.ctf
5943379a28SAndy Fiddaman
6043379a28SAndy FiddamanLDLIBS += -lumem
6143379a28SAndy FiddamanLDLIBS64 += -lumem
6243379a28SAndy Fiddaman
6343379a28SAndy FiddamanCTF_MODE = link
6443379a28SAndy Fiddaman
65*bb9475a1SRobert MustacchiCSTD = $(CSTD_GNU17)
6643379a28SAndy Fiddaman
6743379a28SAndy Fiddaman.KEEP_STATE:
6843379a28SAndy Fiddaman
6943379a28SAndy Fiddamanall: $(PROGS32) $(PROGS64)
7043379a28SAndy Fiddaman
7143379a28SAndy Fiddamaninstall: $(ROOTOPTPROGS) $(ROOTOPTDATA)
7243379a28SAndy Fiddaman
7343379a28SAndy Fiddamanclean:
7443379a28SAndy Fiddaman	$(RM) $(COMOBJS32) $(COMOBJS64)
7543379a28SAndy Fiddaman
7643379a28SAndy Fiddaman$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTHEXDUMP)
7743379a28SAndy Fiddaman
7843379a28SAndy Fiddaman$(ROOTOPTDATA): $(ROOTOPTDATADIR)
7943379a28SAndy Fiddaman
8043379a28SAndy Fiddaman$(ROOTOPTDIR):
8143379a28SAndy Fiddaman	$(INS.dir)
8243379a28SAndy Fiddaman
8343379a28SAndy Fiddaman$(ROOTOPTHEXDUMP): $(ROOTOPTDIR)
8443379a28SAndy Fiddaman	$(INS.dir)
8543379a28SAndy Fiddaman
8643379a28SAndy Fiddaman$(ROOTOPTDATADIR): $(ROOTOPTHEXDUMP)
8743379a28SAndy Fiddaman	$(INS.dir)
8843379a28SAndy Fiddaman
8943379a28SAndy Fiddaman$(ROOTOPTHEXDUMP)/%: %
9043379a28SAndy Fiddaman	$(INS.file)
9143379a28SAndy Fiddaman
9243379a28SAndy Fiddaman%.32: %.c $(COMOBJS32)
9343379a28SAndy Fiddaman	$(LINK.c) -o $@ $^ $(LDLIBS)
9443379a28SAndy Fiddaman	$(POST_PROCESS)
9543379a28SAndy Fiddaman
9643379a28SAndy Fiddaman%.64: %.c $(COMOBJS64)
9743379a28SAndy Fiddaman	$(LINK64.c) -o $@ $^ $(LDLIBS64)
9843379a28SAndy Fiddaman	$(POST_PROCESS)
9943379a28SAndy Fiddaman
10043379a28SAndy Fiddaman%.32.o: $(SRC)/common/hexdump/%.c
10143379a28SAndy Fiddaman	$(COMPILE.c) $< -o $@
10243379a28SAndy Fiddaman	$(POST_PROCESS_O)
10343379a28SAndy Fiddaman
10443379a28SAndy Fiddaman%.64.o: $(SRC)/common/hexdump/%.c
10543379a28SAndy Fiddaman	$(COMPILE64.c) $< -o $@
10643379a28SAndy Fiddaman	$(POST_PROCESS_O)
10743379a28SAndy Fiddaman
10843379a28SAndy Fiddaman%.32.o: $(SRC)/common/ilstr/%.c
10943379a28SAndy Fiddaman	$(COMPILE.c) $< -o $@
11043379a28SAndy Fiddaman	$(POST_PROCESS_O)
11143379a28SAndy Fiddaman
11243379a28SAndy Fiddaman%.64.o: $(SRC)/common/ilstr/%.c
11343379a28SAndy Fiddaman	$(COMPILE64.c) $< -o $@
11443379a28SAndy Fiddaman	$(POST_PROCESS_O)
11543379a28SAndy Fiddaman
11643379a28SAndy Fiddamanclobber: clean
11743379a28SAndy Fiddaman	$(RM) $(PROGS32) $(PROGS64)
11843379a28SAndy Fiddaman
11943379a28SAndy FiddamanFRC:
120