9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
12 #
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 #
19 # CDDL HEADER END
20 #
21
22 #
23 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26 # Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
27 #
28
29 pics/%.o: ../common/%.c
30 $(COMPILE.c) -o $@ $<
31 $(POST_PROCESS_O)
32
33 pics/%.o: %.s
34 $(COMPILE.s) -o $@ $<
35 $(POST_PROCESS_O)
36
37 pics/%32.o: ../common/%.c
38 $(COMPILE.c) -o $@ $<
39 $(POST_PROCESS_O)
40
41 pics/%64.o: ../common/%.c
42 $(COMPILE.c) -D_ELF64 -o $@ $<
43 $(POST_PROCESS_O)
44
45 pics/elfcap.o: $(ELFCAP)/elfcap.c
46 $(COMPILE.c) -o $@ $(ELFCAP)/elfcap.c
47 $(POST_PROCESS_O)
48
49 # This rule generates the report_bufsize.h include file used by libconv
50 # code to ensure that their private buffer size calculations agree with
51 # the public values exposed in sgs/include/conv.h. The limit value
52 # supplied must be larger than the largest buffer used in libconv. There
53 # is little penalty for making it very large, because the header file is
54 # only included in error situations where the compilation will fail.
55 #
56 # We make this depend on Makefile.targ, because a change to Makefile.targ
57 # can change the limit, in which case we want to force everything to rebuild.
58 report_bufsize.h: ../Makefile.targ
59 perl ../../tools/libconv_mk_report_bufsize.pl 8000
60
61 ../common/%.c ../common/%_machelf.c: %_msg.h
62
63 %_msg.h %_msg.c: $(SGSMSG) ../common/%.msg report_bufsize.h
64 $(SGSMSG) $(SGSMSGFLAGS) -h $*_msg.h -d $*_msg.c \
65 -n sgs_msg_libconv_$* $<
66
67 $(SGSMSG): FRC
68 @ cd $(SGSTOOLS)/$(MACH); pwd; $(MAKE) catalog
69 @ pwd
70
71 vernote.s: bld_vernote $(README_REVISION) $(ONLDREADME)
72 ./bld_vernote \
73 -R `perl $(README_REVISION) $(ONLDREADME)` \
74 -r "$(RELEASE)" -o $@
75
76 bld_vernote: ../common/bld_vernote.ksh
77 $(RM) -f $@
78 cp ../common/bld_vernote.ksh $@
79 chmod a+x $@
80
81 $(LIBRARY): pics $$(PICS)
82 @ $(RM) $(LIBRARY)
83 $(AR) $(ARFLAGS) $@ $(PICS)
84 $(POST_PROCESS_A)
85
86 chkmsg: $(MSGSRCS)
87 sh $(CHKMSG) $(CHKMSGFLAGS) $(MSGSRCS)
88
89 catalog:
90
91 pics:
92 -@mkdir -p $@
93
94 clobber: clean
95 -$(RM) $(LIBRARY) $(CLOBBERFILES)
96
97 clean:
98 -$(RM) $(PICS) $(CLEANFILES)
99
100 delete:
101
102 include $(SRC)/cmd/sgs/Makefile.targ
|
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
12 #
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 #
19 # CDDL HEADER END
20 #
21
22 #
23 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26 # Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
27 #
28
29 pics/%.o: $(SRCDIR)/common/%.c
30 $(COMPILE.c) -o $@ $<
31 $(POST_PROCESS_O)
32
33 pics/%.o: %.s
34 $(COMPILE.s) -o $@ $<
35 $(POST_PROCESS_O)
36
37 pics/%32.o: $(SRCDIR)/common/%.c
38 $(COMPILE.c) -o $@ $<
39 $(POST_PROCESS_O)
40
41 pics/%64.o: $(SRCDIR)/common/%.c
42 $(COMPILE.c) -D_ELF64 -o $@ $<
43 $(POST_PROCESS_O)
44
45 pics/elfcap.o: $(ELFCAP)/elfcap.c
46 $(COMPILE.c) -o $@ $(ELFCAP)/elfcap.c
47 $(POST_PROCESS_O)
48
49 # This rule generates the report_bufsize.h include file used by libconv
50 # code to ensure that their private buffer size calculations agree with
51 # the public values exposed in sgs/include/conv.h. The limit value
52 # supplied must be larger than the largest buffer used in libconv. There
53 # is little penalty for making it very large, because the header file is
54 # only included in error situations where the compilation will fail.
55 #
56 # We make this depend on Makefile.targ, because a change to Makefile.targ
57 # can change the limit, in which case we want to force everything to rebuild.
58 report_bufsize.h: $(SRCDIR)/Makefile.targ
59 perl $(SRC)/cmd/sgs/tools/libconv_mk_report_bufsize.pl 8000
60
61 $(SRCDIR)/common/%.c $(SRCDIR)/common/%_machelf.c: %_msg.h
62
63 %_msg.h + %_msg.c: $(SGSMSG) $(SRCDIR)/common/%.msg report_bufsize.h
64 $(SGSMSG) $(SGSMSGFLAGS) -h $*_msg.h -d $*_msg.c \
65 -n sgs_msg_libconv_$* $<
66
67 vernote.s: bld_vernote $(README_REVISION) $(ONLDREADME)
68 ./bld_vernote \
69 -R `perl $(README_REVISION) $(ONLDREADME)` \
70 -r "$(RELEASE)" -o $@
71
72 bld_vernote: $(SRCDIR)/common/bld_vernote.ksh
73 $(RM) -f $@
74 cp $(SRCDIR)/common/bld_vernote.ksh $@
75 chmod a+x $@
76
77 $(LIBRARY): pics $$(PICS)
78 @ $(RM) $(LIBRARY)
79 $(AR) $(ARFLAGS) $@ $(PICS)
80 $(POST_PROCESS_A)
81
82 chkmsg: $(MSGSRCS)
83 sh $(CHKMSG) $(CHKMSGFLAGS) $(MSGSRCS)
84
85 catalog:
86
87 pics:
88 $(MKDIR) -p $@
89
90 clobber: clean
91 -$(RM) $(LIBRARY) $(CLOBBERFILES)
92
93 clean:
94 -$(RM) $(PICS) $(CLEANFILES)
95
96 delete:
97
98 include $(SRC)/cmd/sgs/Makefile.targ
|