1ac2f5fbeSJohn Levon# 2ac2f5fbeSJohn Levon# This file and its contents are supplied under the terms of the 3ac2f5fbeSJohn Levon# Common Development and Distribution License ("CDDL"), version 1.0. 4ac2f5fbeSJohn Levon# You may only use this file in accordance with the terms of version 5ac2f5fbeSJohn Levon# 1.0 of the CDDL. 6ac2f5fbeSJohn Levon# 7ac2f5fbeSJohn Levon# A full copy of the text of the CDDL should have accompanied this 8ac2f5fbeSJohn Levon# source. A copy of the CDDL is also available via the Internet at 9ac2f5fbeSJohn Levon# http://www.illumos.org/license/CDDL. 10ac2f5fbeSJohn Levon# 11ac2f5fbeSJohn Levon 12ac2f5fbeSJohn Levon# 13ac2f5fbeSJohn Levon# Copyright 2020 Joyent, Inc. 14f32691c9SRobert Mustacchi# Copyright 2021 Oxide Computer Company 15ac2f5fbeSJohn Levon# 16ac2f5fbeSJohn Levon 17ac2f5fbeSJohn Levoninclude $(SRC)/cmd/Makefile.cmd 18ac2f5fbeSJohn Levoninclude $(SRC)/test/Makefile.com 19ac2f5fbeSJohn Levon 20ac2f5fbeSJohn LevonROOTOPTPKG = $(ROOT)/opt/util-tests 21ac2f5fbeSJohn LevonTESTDIR = $(ROOTOPTPKG)/tests/mdb 22ac2f5fbeSJohn Levon 23f32691c9SRobert MustacchiSUBDIRS = progs 24ac2f5fbeSJohn LevonPROG = mdbtest 25ac2f5fbeSJohn Levon 26ac2f5fbeSJohn LevonROOTPROG = $(PROG:%=$(TESTDIR)/%) 27ac2f5fbeSJohn Levon 28ac2f5fbeSJohn LevonMAKEDIRS = \ 29ac2f5fbeSJohn Levon exit-e \ 30ac2f5fbeSJohn Levon format \ 31ac2f5fbeSJohn Levon options \ 32f32691c9SRobert Mustacchi numbers \ 33ac2f5fbeSJohn Levon typedef 34ac2f5fbeSJohn Levon 35ac2f5fbeSJohn LevonFILES = \ 36ac2f5fbeSJohn Levon exit-e/err.cmdbadopt.ksh \ 37ac2f5fbeSJohn Levon exit-e/err.enocmd.ksh \ 38ac2f5fbeSJohn Levon exit-e/err.nowrite.ksh \ 39ac2f5fbeSJohn Levon exit-e/err.unmapped.ksh \ 40ac2f5fbeSJohn Levon exit-e/tst.output.ksh \ 41ac2f5fbeSJohn Levon exit-e/tst.output.ksh.out \ 42ac2f5fbeSJohn Levon exit-e/tst.simple.ksh \ 43ac2f5fbeSJohn Levon format/tst.format-cap-E.mdb \ 44ac2f5fbeSJohn Levon format/tst.format-cap-E.mdb.out \ 45ac2f5fbeSJohn Levon format/tst.format-cap-G.mdb \ 46ac2f5fbeSJohn Levon format/tst.format-cap-G.mdb.out \ 47ac2f5fbeSJohn Levon format/tst.format-cap-J.mdb \ 48ac2f5fbeSJohn Levon format/tst.format-cap-J.mdb.out \ 49ac2f5fbeSJohn Levon format/tst.format-cap-P.mdb \ 50ac2f5fbeSJohn Levon format/tst.format-cap-P.mdb.out \ 51ac2f5fbeSJohn Levon format/tst.format-cap-R.mdb \ 52ac2f5fbeSJohn Levon format/tst.format-cap-R.mdb.out \ 53ac2f5fbeSJohn Levon format/tst.format-e.mdb \ 54ac2f5fbeSJohn Levon format/tst.format-e.mdb.out \ 55ac2f5fbeSJohn Levon format/tst.format-g.mdb \ 56ac2f5fbeSJohn Levon format/tst.format-g.mdb.out \ 57ac2f5fbeSJohn Levon format/tst.format-j.mdb \ 58ac2f5fbeSJohn Levon format/tst.format-j.mdb.out \ 59ac2f5fbeSJohn Levon format/tst.format-p.mdb \ 60ac2f5fbeSJohn Levon format/tst.format-p.mdb.out \ 61f32691c9SRobert Mustacchi numbers/tst.badnums.ksh \ 62f32691c9SRobert Mustacchi numbers/tst.base10.mdb \ 63f32691c9SRobert Mustacchi numbers/tst.base10.mdb.out \ 647a58f538SRobert Mustacchi numbers/tst.bitfields.ksh \ 657a58f538SRobert Mustacchi numbers/tst.bitfields.ksh.out \ 66f32691c9SRobert Mustacchi numbers/tst.binary.mdb \ 67f32691c9SRobert Mustacchi numbers/tst.binary.mdb.out \ 68f32691c9SRobert Mustacchi numbers/tst.hex.mdb \ 69f32691c9SRobert Mustacchi numbers/tst.hex.mdb.out \ 70f32691c9SRobert Mustacchi numbers/tst.octal.mdb \ 71f32691c9SRobert Mustacchi numbers/tst.octal.mdb.out \ 72f32691c9SRobert Mustacchi numbers/tst.prefsym.ksh \ 73ac2f5fbeSJohn Levon options/tst.autowrap.mdb \ 74ac2f5fbeSJohn Levon options/tst.autowrap.mdb.out \ 75ac2f5fbeSJohn Levon typedef/err.badid-leadnum.ksh \ 76ac2f5fbeSJohn Levon typedef/err.badid-leadschar.ksh \ 77ac2f5fbeSJohn Levon typedef/err.badmodel.ksh \ 78ac2f5fbeSJohn Levon typedef/err.badstruct-extrabraces.ksh \ 79ac2f5fbeSJohn Levon typedef/err.badstruct-neglenarr.ksh \ 80ac2f5fbeSJohn Levon typedef/err.badstruct-noarrayclose.ksh \ 81ac2f5fbeSJohn Levon typedef/err.badstruct-noarraylen.ksh \ 82ac2f5fbeSJohn Levon typedef/err.badstruct-noarrayopen.ksh \ 83ac2f5fbeSJohn Levon typedef/err.badstruct-nobraces.ksh \ 84ac2f5fbeSJohn Levon typedef/err.badstruct-noclosebrace.ksh \ 85ac2f5fbeSJohn Levon typedef/err.badstruct-nomembers.ksh \ 86ac2f5fbeSJohn Levon typedef/err.badstruct-nomemname.ksh \ 87ac2f5fbeSJohn Levon typedef/err.badstruct-nomemsemi.ksh \ 88ac2f5fbeSJohn Levon typedef/err.badstruct-noopenbrace.ksh \ 89ac2f5fbeSJohn Levon typedef/err.badstruct-noquotes.ksh \ 90ac2f5fbeSJohn Levon typedef/err.badstruct-repmemname.ksh \ 91ac2f5fbeSJohn Levon typedef/err.badstruct-vlaonly.ksh \ 92ac2f5fbeSJohn Levon typedef/err.badstruct-zerolenarr.ksh \ 93ac2f5fbeSJohn Levon typedef/err.badunion-hasvla.ksh \ 94ac2f5fbeSJohn Levon typedef/err.extraargs.ksh \ 95ac2f5fbeSJohn Levon typedef/err.noargs.ksh \ 96ac2f5fbeSJohn Levon typedef/err.nokeyword.ksh \ 97ac2f5fbeSJohn Levon typedef/err.nomodel.ksh \ 98ac2f5fbeSJohn Levon typedef/err.noname.ksh \ 99ac2f5fbeSJohn Levon typedef/err.typeexists.ksh \ 100ac2f5fbeSJohn Levon typedef/tst.anonstruct.mdb \ 101ac2f5fbeSJohn Levon typedef/tst.anonstruct.mdb.out \ 102ac2f5fbeSJohn Levon typedef/tst.anonunion.mdb \ 103ac2f5fbeSJohn Levon typedef/tst.anonunion.mdb.out \ 104ac2f5fbeSJohn Levon typedef/tst.cleanupstruct.ksh \ 105ac2f5fbeSJohn Levon typedef/tst.deftypes32.mdb \ 106ac2f5fbeSJohn Levon typedef/tst.deftypes32.mdb.out \ 107ac2f5fbeSJohn Levon typedef/tst.deftypes64.mdb \ 108ac2f5fbeSJohn Levon typedef/tst.deftypes64.mdb.out \ 109ac2f5fbeSJohn Levon typedef/tst.dellist.mdb \ 110ac2f5fbeSJohn Levon typedef/tst.emptylist.mdb \ 111ac2f5fbeSJohn Levon typedef/tst.libctype.ksh \ 112ac2f5fbeSJohn Levon typedef/tst.libctype.ksh.out \ 113ac2f5fbeSJohn Levon typedef/tst.models.ksh \ 114*46f52c84SRobert Mustacchi typedef/tst.radix.mdb \ 115*46f52c84SRobert Mustacchi typedef/tst.radix.mdb.out \ 116ac2f5fbeSJohn Levon typedef/tst.struct.mdb \ 117ac2f5fbeSJohn Levon typedef/tst.struct.mdb.out \ 118ac2f5fbeSJohn Levon typedef/tst.structselfref.mdb \ 119ac2f5fbeSJohn Levon typedef/tst.structselfref.mdb.out \ 120ac2f5fbeSJohn Levon typedef/tst.structvla.mdb \ 121ac2f5fbeSJohn Levon typedef/tst.structvla.mdb.out \ 122ac2f5fbeSJohn Levon typedef/tst.union.mdb \ 123ac2f5fbeSJohn Levon typedef/tst.union.mdb.out \ 124ac2f5fbeSJohn Levon 125ac2f5fbeSJohn LevonROOTFILES = $(FILES:%=$(TESTDIR)/%) 126ac2f5fbeSJohn LevonROOTMAKEDIRS = $(MAKEDIRS:%=$(TESTDIR)/%) 127ac2f5fbeSJohn Levon 128ac2f5fbeSJohn LevonFILEMODE = 0444 129ac2f5fbeSJohn Levon 130ac2f5fbeSJohn Levon$(TESTDIR)/mdbtest := FILEMODE = 0555 131ac2f5fbeSJohn Levon 132ac2f5fbeSJohn Levon 133f32691c9SRobert Mustacchiall := TARGET = all 134f32691c9SRobert Mustacchiinstall := TARGET = install 135f32691c9SRobert Mustacchiclean := TARGET = clean 136f32691c9SRobert Mustacchiclobber := TARGET = clobber 137ac2f5fbeSJohn Levon 138f32691c9SRobert Mustacchiall: $(SUBDIRS) 139f32691c9SRobert Mustacchi 140f32691c9SRobert Mustacchiinstall: all $(ROOTFILES) $(ROOTPROG) $(SUBDIRS) 141f32691c9SRobert Mustacchi 142f32691c9SRobert Mustacchiclean clobber: $(SUBDIRS) 143ac2f5fbeSJohn Levon 144ac2f5fbeSJohn Levon$(ROOTFILES): $(TESTDIR) $(ROOTMAKEDIRS) $(FILES) 145ac2f5fbeSJohn Levon 146ac2f5fbeSJohn Levon$(TESTDIR) $(ROOTMAKEDIRS): 147ac2f5fbeSJohn Levon $(INS.dir) 148ac2f5fbeSJohn Levon 149ac2f5fbeSJohn Levon$(TESTDIR)/%: % 150ac2f5fbeSJohn Levon $(INS.file) 151f32691c9SRobert Mustacchi 152f32691c9SRobert Mustacchi$(SUBDIRS): FRC 153f32691c9SRobert Mustacchi cd $@; pwd; $(MAKE) $(TARGET) 154