4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
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]
22 # Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved.
23 # Copyright 2016 RackTop Systems.
26 include $(SRC
)/cmd
/Makefile.cmd
28 # Note: Why SUBDIRS-common isn't sorted alphabetically
30 # The items under SGS are not independent of each other.
31 # They must be built in an order that ensures that
32 # all dependencies of an item have been built before the
35 SUBDIRS-common
= libconv \
81 SUBDIRS-sparc
= rtld
.4.x
83 SUBDIRS
= $(SUBDIRS-common
) $(SUBDIRS-
$(MACH
))
87 POSUBDIRS
= m4 nm tsort
yacc
89 POFILES
= $(POSUBDIRS
:%=%/%.po
)
91 MSGSUBDIRS
= ld ldd libld liblddbg \
92 libldstab librtld rtld libelf \
93 ldprof libcrle pvs elfdump \
94 elfedit crle moe lari \
101 install := TARGET
= install
102 clean := TARGET
= clean
103 clobber := TARGET
= clobber
104 delete
:= TARGET
= delete
106 _msg
:= TARGET
= catalog
107 _msg_gettext
:= TARGET
= catalog
108 _msg_sgsmsg
:= TARGET
= catalog
109 chkmsg
:= TARGET
= chkmsg
114 .PARALLEL
: $(SUBDIRS
)
116 all install: native-add .WAIT
$(SUBDIRS
)
118 include $(SRC
)/cmd
/Makefile.targ
122 _msg
: _msg_gettext _msg_sgsmsg
124 _msg_gettext
: $(MSGDOMAIN
)/$(POFILE
)
126 _msg_sgsmsg
: $(MSGDIR
)
128 $(MSGDOMAIN
)/$(POFILE
): \
129 $(MSGDOMAIN
) $(POFILE
)
131 $(POFILE
): $(POSUBDIRS
)
133 cat
$(POFILES
) > $(POFILE
)
135 $(MSGDIR
): $(MSGSUBDIRS
) FRC
136 @ cd
$@
; pwd
; $(MAKE
) $(TARGET
)
138 chkmsg
: libconv
$(MSGSUBDIRS
) FRC
142 # built from lib/Makefile
144 @ cd
lex; pwd
; $(MAKE
) $@
145 @ cd
yacc; pwd
; $(MAKE
) $@
150 clean clobber: native-clobber .WAIT
$(SUBDIRS
) $(MSGDIR
)
153 @ cd
$@
; pwd
; $(MAKE
) $(TARGET
)
156 # Integration of ld and ld.so.1 in some developement cycles requires that both
157 # of these modules be built using the new ld. This `native' target allows us
158 # to build a local ld which will then be used to build the delivered version of
159 # itself and ld.so.1. Once this new functionality appears in the standard ld
160 # this target can be disabled.
163 @ cd tools
/$(MACH
); pwd
; $(MAKE
) native
164 @ cd libconv
/$(MACH
); pwd
; $(MAKE
)
165 @ cd libelf
/$(MACH
); pwd
; $(MAKE
) native
166 @ cd liblddbg
/$(MACH
); pwd
; $(MAKE
) native
167 @ cd libldstab
/$(MACH
); pwd
; $(MAKE
) native
168 @ cd libld
/$(MACH
); pwd
; $(MAKE
) native
169 @ cd
ld/$(MACH
); pwd
; $(MAKE
) native
172 @ cd tools
; pwd
; $(MAKE
) $(TARGET
)
173 $(RM
) -r proto
/$(MACH
)
178 # Cross-reference customization: ignore the directories named by XRPRUNE,
179 # and tweak the file globs slightly.
181 XRPRUNE
= rtld
.4.x packages abi
182 XRADD
= *.msg mapfile
* llib-
[a-z
]*
183 XRDEL
= Makefile
* kobj_
*
186 # Establish a set of directories for xref to search. As there are duplicates
187 # of things like headers, and only one file will be added to the xref database,
188 # we want xref to list the source file.
191 ..
/..
/common
/elfcap \
193 ..
/..
/uts
/common
/krtld \
194 ..
/..
/uts
/common
/sys \
195 ..
/..
/uts
/sparc
/sys \
196 ..
/..
/uts
/sparc
/krtld \
197 ..
/..
/uts
/intel
/ia32
/krtld \
198 ..
/..
/uts
/intel
/amd64
/krtld