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 2019 Joyent, Inc.
15 #
16
17 SUBDIRS_i386 = i386
18
19 SUBDIRS = \
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
32 PROGS = \
33 odirectory
34
35 CPPFLAGS += -D_REENTRANT
36 PROGS32 = $(PROGS:%=%.32)
37 PROGS64 = $(PROGS:%=%.64)
38
39 ROOTOPTDIR = $(ROOT)/opt/os-tests/tests
40 ROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTDIR)/%) \
41 $(PROGS64:%=$(ROOTOPTDIR)/%) \
42 $(SCRIPTS:%=$(ROOTOPTDIR)/%)
43
44 odirectory.32 := LDLIBS += -lsocket
45 odirectory.64 := LDLIBS64 += -lsocket
46
47 include $(SRC)/cmd/Makefile.cmd
48
49 all := TARGET = all
50 install := TARGET = install
51 clean := TARGET = clean
52 clobber := TARGET = clobber
53
54 .KEEP_STATE:
55
56 install: $(SUBDIRS) $(ROOTOPTPROGS)
57
58 all: $(SUBDIRS) $(PROGS32) $(PROGS64)
59
60 clean: $(SUBDIRS)
61
62 $(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTDIR)
63
64 $(ROOTOPTDIR):
65 $(INS.dir)
66
67 $(ROOTOPTDIR)/%: %
68 $(INS.file)
69
70 $(ROOTOPTDIR)/%: %.ksh
71 $(INS.rename)
72
73 %.64: %.c
74 $(LINK64.c) -o $@ $< $(LDLIBS64)
75 $(POST_PROCESS)
76
77 %.32: %.c
78 $(LINK.c) -o $@ $< $(LDLIBS)
79 $(POST_PROCESS)
80
81 clobber: $(SUBDIRS)
82 $(RM) $(PROGS32) $(PROGS64)
83
84 $(SUBDIRS): FRC
85 @cd $@; pwd; $(MAKE) $(TARGET)
86
87 FRC: