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 (c) 2012, 2016 by Delphix. All rights reserved. 14# Copyright 2020 Joyent, Inc. 15# 16 17SUBDIRS_i386 = i386 18 19SUBDIRS = \ 20 ddi_ufm \ 21 file-locking \ 22 pf_key \ 23 poll \ 24 sdevfs \ 25 secflags \ 26 sigqueue \ 27 sockfs \ 28 spoof-ras \ 29 stress \ 30 $(SUBDIRS_$(MACH)) 31 32PROGS = \ 33 odirectory \ 34 writev 35 36CPPFLAGS += -D_REENTRANT 37PROGS32 = $(PROGS:%=%.32) 38PROGS64 = $(PROGS:%=%.64) 39 40ROOTOPTDIR = $(ROOT)/opt/os-tests/tests 41ROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTDIR)/%) \ 42 $(PROGS64:%=$(ROOTOPTDIR)/%) \ 43 $(SCRIPTS:%=$(ROOTOPTDIR)/%) 44 45odirectory.32 := LDLIBS += -lsocket 46odirectory.64 := LDLIBS64 += -lsocket 47 48writev.32 := CPPFLAGS += -D_FILE_OFFSET_BITS=64 49writev.32 := CSTD = $(CSTD_GNU99) 50writev.64 := CSTD = $(CSTD_GNU99) 51 52include $(SRC)/cmd/Makefile.cmd 53 54all := TARGET = all 55install := TARGET = install 56clean := TARGET = clean 57clobber := TARGET = clobber 58 59.KEEP_STATE: 60 61install: $(SUBDIRS) $(ROOTOPTPROGS) 62 63all: $(SUBDIRS) $(PROGS32) $(PROGS64) 64 65clean: $(SUBDIRS) 66 67$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTDIR) 68 69$(ROOTOPTDIR): 70 $(INS.dir) 71 72$(ROOTOPTDIR)/%: % 73 $(INS.file) 74 75$(ROOTOPTDIR)/%: %.ksh 76 $(INS.rename) 77 78%.64: %.c 79 $(LINK64.c) -o $@ $< $(LDLIBS64) 80 $(POST_PROCESS) 81 82%.32: %.c 83 $(LINK.c) -o $@ $< $(LDLIBS) 84 $(POST_PROCESS) 85 86clobber: $(SUBDIRS) 87 $(RM) $(PROGS32) $(PROGS64) 88 89$(SUBDIRS): FRC 90 @cd $@; pwd; $(MAKE) $(TARGET) 91 92FRC: 93