xref: /titanic_52/usr/src/cmd/ast/tools/Makefile (revision 906afcb89d0412cc073b95c2d701a804a8cdb62c)
1*906afcb8SAndy Fiddaman#
2*906afcb8SAndy Fiddaman# This file and its contents are supplied under the terms of the
3*906afcb8SAndy Fiddaman# Common Development and Distribution License ("CDDL"), version 1.0.
4*906afcb8SAndy Fiddaman# You may only use this file in accordance with the terms of version
5*906afcb8SAndy Fiddaman# 1.0 of the CDDL.
6*906afcb8SAndy Fiddaman#
7*906afcb8SAndy Fiddaman# A full copy of the text of the CDDL should have accompanied this
8*906afcb8SAndy Fiddaman# source.  A copy of the CDDL is also available via the Internet at
9*906afcb8SAndy Fiddaman# http://www.illumos.org/license/CDDL.
10*906afcb8SAndy Fiddaman#
11*906afcb8SAndy Fiddaman
12*906afcb8SAndy Fiddaman#
13*906afcb8SAndy Fiddaman# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
14*906afcb8SAndy Fiddaman#
15*906afcb8SAndy Fiddaman
16*906afcb8SAndy FiddamanCTOOLS= mamake ratz release proto lcgen
17*906afcb8SAndy FiddamanSHTOOLS= iffe mamprobe mprobe package gentab
18*906afcb8SAndy Fiddaman
19*906afcb8SAndy FiddamanTOOLS= $(CTOOLS) $(SHTOOLS) probe
20*906afcb8SAndy FiddamanOBJS= $(CTOOLS:%=%.o)
21*906afcb8SAndy Fiddaman
22*906afcb8SAndy Fiddamaninclude $(SRC)/cmd/Makefile.cmd
23*906afcb8SAndy Fiddamaninclude ../Makefile.ast
24*906afcb8SAndy Fiddaman
25*906afcb8SAndy FiddamanCC= $(NATIVECC)
26*906afcb8SAndy FiddamanLD= $(NATIVELD)
27*906afcb8SAndy FiddamanCFLAGS= $(NATIVE_CFLAGS)
28*906afcb8SAndy Fiddaman
29*906afcb8SAndy Fiddamanall install install_h: $(TOOLS)
30*906afcb8SAndy Fiddaman_msg _feature:
31*906afcb8SAndy Fiddaman
32*906afcb8SAndy Fiddamanclean clobber:
33*906afcb8SAndy Fiddaman	$(RM) $(OBJS) $(TOOLS)
34*906afcb8SAndy Fiddaman
35*906afcb8SAndy Fiddamanpackage: FRC
36*906afcb8SAndy Fiddaman	$(RM) $@
37*906afcb8SAndy Fiddaman	# The string returned by 'package' must match the value used by
38*906afcb8SAndy Fiddaman	# AT&T upstream, which is "i386" or "sun4", regardless of whether
39*906afcb8SAndy Fiddaman	# building 32- or 64-bit objects.
40*906afcb8SAndy Fiddaman	{ \
41*906afcb8SAndy Fiddaman		print "#!/bin/sh"; \
42*906afcb8SAndy Fiddaman		[[ $(MACH) == i386 ]] && arch=i386 || arch=sun4; \
43*906afcb8SAndy Fiddaman		print "echo sol11.$$arch"; \
44*906afcb8SAndy Fiddaman	} >; $@
45*906afcb8SAndy Fiddaman	$(CHMOD) +x $@
46*906afcb8SAndy Fiddaman
47*906afcb8SAndy Fiddaman%.o: $(C_ASTINIT)/%.c
48*906afcb8SAndy Fiddaman	$(COMPILE.c) -o $@ $<
49*906afcb8SAndy Fiddaman	$(POST_PROCESS_O)
50*906afcb8SAndy Fiddaman
51*906afcb8SAndy Fiddaman%.o: $(C_AST)/src/lib/libast/port/%.c
52*906afcb8SAndy Fiddaman	$(COMPILE.c) -o $@ $<
53*906afcb8SAndy Fiddaman	$(POST_PROCESS_O)
54*906afcb8SAndy Fiddaman
55*906afcb8SAndy Fiddaman%: $(C_ASTINIT)/%.sh
56*906afcb8SAndy Fiddaman	$(RM) $@
57*906afcb8SAndy Fiddaman	{ \
58*906afcb8SAndy Fiddaman		echo 'USAGE_LICENSE="[-author?ATT]"'; \
59*906afcb8SAndy Fiddaman		cat $<; \
60*906afcb8SAndy Fiddaman	} >; $@
61*906afcb8SAndy Fiddaman	$(CHMOD) +x $@
62*906afcb8SAndy Fiddaman
63*906afcb8SAndy Fiddaman%: $(C_AST)/src/lib/libpp/%.sh
64*906afcb8SAndy Fiddaman	$(RM) $@
65*906afcb8SAndy Fiddaman	{ \
66*906afcb8SAndy Fiddaman		echo 'USAGE_LICENSE="[-author?ATT]"'; \
67*906afcb8SAndy Fiddaman		cat $<; \
68*906afcb8SAndy Fiddaman	} >; $@
69*906afcb8SAndy Fiddaman	$(CHMOD) +x $@
70*906afcb8SAndy Fiddaman
71*906afcb8SAndy Fiddaman$(CTOOLS): $(OBJS)
72*906afcb8SAndy Fiddaman	$(LINK.c) $@.o -o $@ $(LDLIBS)
73*906afcb8SAndy Fiddaman	$(POST_PROCESS)
74*906afcb8SAndy Fiddaman
75*906afcb8SAndy Fiddamanprobe: $(C_ASTINIT)/C+probe $(C_ASTINIT)/make.probe
76*906afcb8SAndy Fiddaman	$(CAT) $(C_ASTINIT)/C+probe $(C_ASTINIT)/make.probe > $@
77*906afcb8SAndy Fiddaman	$(CHMOD) +x $@
78*906afcb8SAndy Fiddaman
79*906afcb8SAndy FiddamanSTACKPROTECT= none
80*906afcb8SAndy Fiddaman
81*906afcb8SAndy FiddamanCERRWARN += -_gcc=-Wno-parentheses
82*906afcb8SAndy FiddamanCERRWARN += -_gcc=-Wno-unused-value
83*906afcb8SAndy FiddamanCERRWARN += $(CNOWARN_UNINIT)
84*906afcb8SAndy FiddamanSMATCH= off
85*906afcb8SAndy Fiddaman
86*906afcb8SAndy Fiddaman.PARALLEL: $(TOOLS)
87*906afcb8SAndy Fiddaman
88*906afcb8SAndy FiddamanFRC:
89