1# 2# This file and its contents are supplied under the terms of the 3# Common Development and Distribution License ("CDDL"), version 1.0. 4# You may only use this file in accordance with the terms of version 5# 1.0 of the CDDL. 6# 7# A full copy of the text of the CDDL should have accompanied this 8# source. A copy of the CDDL is also available via the Internet at 9# http://www.illumos.org/license/CDDL. 10# 11 12# 13# Copyright 2025 Oxide Computer Company 14# 15 16include $(SRC)/Makefile.master.64 17 18ROOTOPTPKG = $(ROOT)/opt/os-tests 19TESTDIR = $(ROOTOPTPKG)/tests/mac 20DATADIR = $(TESTDIR)/data 21 22PROGS = \ 23 mac_cksum \ 24 mac_lso \ 25 mac_parsing 26 27COMMON_OBJS = mac_ktest_common.o 28 29SCRIPTS = mac_ktest 30 31DATAFILES = \ 32 ipv4_bad_proto.snoop \ 33 ipv4_icmp.snoop \ 34 ipv4_sctp.snoop \ 35 ipv4_tcp.snoop \ 36 ipv4_tcp_lso_in.snoop \ 37 ipv4_tcp_lso_out.snoop \ 38 ipv4_udp.snoop \ 39 ipv6_icmp.snoop \ 40 ipv6_sctp.snoop \ 41 ipv6_tcp.snoop \ 42 ipv6_tcp_lso_in.snoop \ 43 ipv6_tcp_lso_out.snoop \ 44 ipv6_udp.snoop \ 45 ipv6_eh_udp.snoop 46 47include $(SRC)/cmd/Makefile.cmd 48include $(SRC)/cmd/Makefile.cmd.64 49include $(SRC)/cmd/Makefile.ctf 50include $(SRC)/test/Makefile.com 51 52CTF_MODE = link 53LDLIBS += -lktest -lnvpair 54CSTD= $(CSTD_GNU17) 55 56CMDS = $(PROGS:%=$(TESTDIR)/%) \ 57 $(SCRIPTS:%=$(TESTDIR)/%) 58TESTDATA = $(DATAFILES:%=$(DATADIR)/%) 59 60$(CMDS) := FILEMODE = 0555 61$(SCRIPTS) := FILEMODE = 0555 62$(TESTDATA) := FILEMODE = 0444 63 64all: $(PROGS) 65 66install: all $(CMDS) $(TESTDATA) 67 68lint: 69 70clobber: clean 71 -$(RM) $(PROGS) 72 73clean: 74 75mac_lso: mac_lso.o $(COMMON_OBJS) 76 $(LINK.c) $^ -o $@ $(LDLIBS) 77 $(POST_PROCESS) 78 79mac_cksum: mac_cksum.o $(COMMON_OBJS) 80 $(LINK.c) $^ -o $@ $(LDLIBS) 81 $(POST_PROCESS) 82 83$(CMDS): $(TESTDIR) $(PROGS) 84 85$(TESTDIR): 86 $(INS.dir) 87$(DATADIR): $(TESTDIR) 88 $(INS.dir) 89 90$(TESTDATA): $(DATADIR) 91 92$(TESTDIR)/%: % 93 $(INS.file) 94 95$(TESTDIR)/%: %.ksh 96 $(INS.rename) 97