Makefile revision b9bd317cda1afb3a01f4812de73e8cec888cbbd7
726f7ff1d25bc37dcc08003f42014282f977b058slive#
726f7ff1d25bc37dcc08003f42014282f977b058slive# CDDL HEADER START
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd#
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd# The contents of this file are subject to the terms of the
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd# Common Development and Distribution License (the "License").
726f7ff1d25bc37dcc08003f42014282f977b058slive# You may not use this file except in compliance with the License.
726f7ff1d25bc37dcc08003f42014282f977b058slive#
726f7ff1d25bc37dcc08003f42014282f977b058slive# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5a58787efeb02a1c3f06569d019ad81fd2efa06end# or http://www.opensolaris.org/os/licensing.
96ad5d81ee4a2cc66a4ae19893efc8aa6d06fae7jailletc# See the License for the specific language governing permissions
5a58787efeb02a1c3f06569d019ad81fd2efa06end# and limitations under the License.
5a58787efeb02a1c3f06569d019ad81fd2efa06end#
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen# When distributing Covered Code, include this CDDL HEADER in each
2e545ce2450a9953665f701bb05350f0d3f26275nd# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen# If applicable, add the following below this CDDL HEADER, with the
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen# fields enclosed by brackets "[]" replaced with your own identifying
5a58787efeb02a1c3f06569d019ad81fd2efa06end# information: Portions Copyright [yyyy] [name of copyright owner]
5a58787efeb02a1c3f06569d019ad81fd2efa06end#
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen# CDDL HEADER END
3f08db06526d6901aa08c110b5bc7dde6bc39905nd#
5a58787efeb02a1c3f06569d019ad81fd2efa06end#
5a58787efeb02a1c3f06569d019ad81fd2efa06end# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
5a58787efeb02a1c3f06569d019ad81fd2efa06end# Use is subject to license terms.
3f08db06526d6901aa08c110b5bc7dde6bc39905nd#
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd# ident "%Z%%M% %I% %E% SMI"
a78048ccbdb6256da15e6b0e7e95355e480c2301nd#
e609c337f729875bc20e01096c7e610f45356f54nilgun
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjunginclude $(SRC)/cmd/Makefile.cmd
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd# Note: Why SUBDIRS-common isn't sorted alphabetically
726f7ff1d25bc37dcc08003f42014282f977b058slive#
726f7ff1d25bc37dcc08003f42014282f977b058slive# The items under SGS are not independent of each other.
726f7ff1d25bc37dcc08003f42014282f977b058slive# They must be built in an order that ensures that
9bcfc3697a91b5215893a7d0206865b13fc72148nd# all dependencies of an item have been built before the
726f7ff1d25bc37dcc08003f42014282f977b058slive# item itself.
726f7ff1d25bc37dcc08003f42014282f977b058slive#
9bcfc3697a91b5215893a7d0206865b13fc72148ndSUBDIRS-common= libconv \
726f7ff1d25bc37dcc08003f42014282f977b058slive .WAIT \
9bcfc3697a91b5215893a7d0206865b13fc72148nd libdl \
726f7ff1d25bc37dcc08003f42014282f977b058slive libelf \
726f7ff1d25bc37dcc08003f42014282f977b058slive liblddbg \
726f7ff1d25bc37dcc08003f42014282f977b058slive .WAIT \
9bcfc3697a91b5215893a7d0206865b13fc72148nd libld \
726f7ff1d25bc37dcc08003f42014282f977b058slive libldmake \
726f7ff1d25bc37dcc08003f42014282f977b058slive libldstab \
726f7ff1d25bc37dcc08003f42014282f977b058slive librtld \
9bcfc3697a91b5215893a7d0206865b13fc72148nd libcrle \
9bcfc3697a91b5215893a7d0206865b13fc72148nd .WAIT \
726f7ff1d25bc37dcc08003f42014282f977b058slive 0@0 \
726f7ff1d25bc37dcc08003f42014282f977b058slive ld \
cf20a36c9fcf8eb5fec631a4ab8688dde0625878slive ldd \
726f7ff1d25bc37dcc08003f42014282f977b058slive lddstub \
cf20a36c9fcf8eb5fec631a4ab8688dde0625878slive rtld \
5a58787efeb02a1c3f06569d019ad81fd2efa06end link_audit \
5a58787efeb02a1c3f06569d019ad81fd2efa06end .WAIT \
5a58787efeb02a1c3f06569d019ad81fd2efa06end librtld_db \
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh ldprof \
5a58787efeb02a1c3f06569d019ad81fd2efa06end pvs \
5a58787efeb02a1c3f06569d019ad81fd2efa06end crle \
5a58787efeb02a1c3f06569d019ad81fd2efa06end ar \
726f7ff1d25bc37dcc08003f42014282f977b058slive dump \
726f7ff1d25bc37dcc08003f42014282f977b058slive elfdump \
9bcfc3697a91b5215893a7d0206865b13fc72148nd elfedit \
726f7ff1d25bc37dcc08003f42014282f977b058slive elfwrap \
726f7ff1d25bc37dcc08003f42014282f977b058slive error \
726f7ff1d25bc37dcc08003f42014282f977b058slive gprof \
726f7ff1d25bc37dcc08003f42014282f977b058slive lari \
726f7ff1d25bc37dcc08003f42014282f977b058slive lex \
726f7ff1d25bc37dcc08003f42014282f977b058slive lorder \
726f7ff1d25bc37dcc08003f42014282f977b058slive m4 \
18b044262d499eb4255fb75026564a3e33b961eand mcs \
726f7ff1d25bc37dcc08003f42014282f977b058slive moe \
5a58787efeb02a1c3f06569d019ad81fd2efa06end nm \
5a58787efeb02a1c3f06569d019ad81fd2efa06end prof \
5a58787efeb02a1c3f06569d019ad81fd2efa06end ranlib \
726f7ff1d25bc37dcc08003f42014282f977b058slive size \
726f7ff1d25bc37dcc08003f42014282f977b058slive symorder \
9bcfc3697a91b5215893a7d0206865b13fc72148nd tsort \
726f7ff1d25bc37dcc08003f42014282f977b058slive unifdef \
726f7ff1d25bc37dcc08003f42014282f977b058slive yacc
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058sliveSUBDIRS-i386=
726f7ff1d25bc37dcc08003f42014282f977b058sliveSUBDIRS-sparc= rtld.4.x
9bcfc3697a91b5215893a7d0206865b13fc72148nd
726f7ff1d25bc37dcc08003f42014282f977b058sliveSUBDIRS= $(SUBDIRS-common) $(SUBDIRS-$(MACH))
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive# Messaging support
726f7ff1d25bc37dcc08003f42014282f977b058slive#
726f7ff1d25bc37dcc08003f42014282f977b058slivePOSUBDIRS= ar m4 nm \
9bcfc3697a91b5215893a7d0206865b13fc72148nd tsort yacc
726f7ff1d25bc37dcc08003f42014282f977b058slivePOFILE= sgs.po
726f7ff1d25bc37dcc08003f42014282f977b058slivePOFILES= $(POSUBDIRS:%=%/%.po)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058sliveMSGSUBDIRS= ld ldd libld liblddbg \
9bcfc3697a91b5215893a7d0206865b13fc72148nd libldstab librtld rtld libelf \
726f7ff1d25bc37dcc08003f42014282f977b058slive ldprof libcrle pvs elfdump \
726f7ff1d25bc37dcc08003f42014282f977b058slive elfedit crle moe lari \
726f7ff1d25bc37dcc08003f42014282f977b058slive librtld_db elfwrap
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058sliveMSGDIR= messages
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058sliveall := TARGET= all
726f7ff1d25bc37dcc08003f42014282f977b058sliveinstall := TARGET= install
726f7ff1d25bc37dcc08003f42014282f977b058sliveclean := TARGET= clean
726f7ff1d25bc37dcc08003f42014282f977b058sliveclobber := TARGET= clobber
726f7ff1d25bc37dcc08003f42014282f977b058slivedelete := TARGET= delete
726f7ff1d25bc37dcc08003f42014282f977b058slivelint := TARGET= lint
726f7ff1d25bc37dcc08003f42014282f977b058slive_msg := TARGET= catalog
726f7ff1d25bc37dcc08003f42014282f977b058slive_msg_gettext := TARGET= catalog
726f7ff1d25bc37dcc08003f42014282f977b058slive_msg_sgsmsg := TARGET= catalog
726f7ff1d25bc37dcc08003f42014282f977b058slivechkmsg := TARGET= chkmsg
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive.KEEP_STATE:
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive.PARALLEL: $(SUBDIRS)
9bcfc3697a91b5215893a7d0206865b13fc72148nd
726f7ff1d25bc37dcc08003f42014282f977b058sliveall install: native-add .WAIT $(SUBDIRS)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058sliveinclude $(SRC)/cmd/Makefile.targ
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive# Messaging support
498130244f3c328a8a7bd5a4814f645a589eedf0erikabele#
498130244f3c328a8a7bd5a4814f645a589eedf0erikabele_msg: _msg_gettext _msg_sgsmsg
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive_msg_gettext: $(MSGDOMAIN)/$(POFILE)
726f7ff1d25bc37dcc08003f42014282f977b058slive
144c96f1a9d2f0c8bfccafea655dae120f7470d2colm_msg_sgsmsg: $(MSGDIR)
144c96f1a9d2f0c8bfccafea655dae120f7470d2colm
9a58dc6a2b26ec128b1270cf48810e705f1a90dbsf$(MSGDOMAIN)/$(POFILE): \
9a58dc6a2b26ec128b1270cf48810e705f1a90dbsf $(MSGDOMAIN) $(POFILE)
9a58dc6a2b26ec128b1270cf48810e705f1a90dbsf
144c96f1a9d2f0c8bfccafea655dae120f7470d2colm$(POFILE): $(POSUBDIRS)
144c96f1a9d2f0c8bfccafea655dae120f7470d2colm $(RM) $(POFILE)
726f7ff1d25bc37dcc08003f42014282f977b058slive cat $(POFILES) > $(POFILE)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive$(MSGDIR): $(MSGSUBDIRS) FRC
726f7ff1d25bc37dcc08003f42014282f977b058slive @ cd $@; pwd; $(MAKE) $(TARGET)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slivechkmsg: libconv $(MSGSUBDIRS) FRC
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive# built from lib/Makefile
726f7ff1d25bc37dcc08003f42014282f977b058sliveinstall_lib: FRC
59cd19c3d75e35ae820e23f6b0161910784fce4eslive @ cd lex; pwd; $(MAKE) $@
726f7ff1d25bc37dcc08003f42014282f977b058slive @ cd yacc; pwd; $(MAKE) $@
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slivelint: $(SUBDIRS)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slivedelete \
59cd19c3d75e35ae820e23f6b0161910784fce4esliveclean clobber: native-clobber .WAIT $(SUBDIRS) $(MSGDIR)
59cd19c3d75e35ae820e23f6b0161910784fce4eslive
59cd19c3d75e35ae820e23f6b0161910784fce4eslive$(SUBDIRS): FRC
726f7ff1d25bc37dcc08003f42014282f977b058slive @ cd $@; pwd; $(MAKE) $(TARGET)
726f7ff1d25bc37dcc08003f42014282f977b058slive
726f7ff1d25bc37dcc08003f42014282f977b058slive
5a58787efeb02a1c3f06569d019ad81fd2efa06end# Integration of ld and ld.so.1 in some developement cycles requires that both
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd# of these modules be built using the new ld. This `native' target allows us
a78048ccbdb6256da15e6b0e7e95355e480c2301nd# to build a local ld which will then be used to build the delivered version of
e609c337f729875bc20e01096c7e610f45356f54nilgun# itself and ld.so.1. Once this new functionality appears in the standard ld
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung# this target can be disabled.
727872d18412fc021f03969b8641810d8896820bhumbedooh
0d0ba3a410038e179b695446bb149cce6264e0abndnative-add: native-proto FRC
727872d18412fc021f03969b8641810d8896820bhumbedooh @ cd tools/$(MACH); pwd; $(MAKE) native
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh @ cd libconv/$(MACH); pwd; $(MAKE)
0d0ba3a410038e179b695446bb149cce6264e0abnd @ cd libelf/$(MACH); pwd; $(MAKE) native
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh @ cd liblddbg/$(MACH); pwd; $(MAKE) native
727872d18412fc021f03969b8641810d8896820bhumbedooh @ cd libldstab/$(MACH); pwd; $(MAKE) native
0d0ba3a410038e179b695446bb149cce6264e0abnd @ cd libld/$(MACH); pwd; $(MAKE) native
0d0ba3a410038e179b695446bb149cce6264e0abnd @ cd ld/$(MACH); pwd; $(MAKE) native
0d0ba3a410038e179b695446bb149cce6264e0abnd
ac082aefa89416cbdc9a1836eaf3bed9698201c8humbedoohnative-clobber:
0d0ba3a410038e179b695446bb149cce6264e0abnd @ cd tools; pwd; $(MAKE) $(TARGET)
0d0ba3a410038e179b695446bb149cce6264e0abnd $(RM) -r proto/$(MACH)
0d0ba3a410038e179b695446bb149cce6264e0abnd
727872d18412fc021f03969b8641810d8896820bhumbedoohnative-proto:
0d0ba3a410038e179b695446bb149cce6264e0abnd -@mkdir -p proto/$(MACH)
0d0ba3a410038e179b695446bb149cce6264e0abnd
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedoohFRC:
205f749042ed530040a4f0080dbcb47ceae8a374rjung
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen#
0d0ba3a410038e179b695446bb149cce6264e0abnd# Cross-reference customization: ignore the directories named by XRPRUNE,
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd# and tweak the file globs slightly.
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd#
7fec19672a491661b2fe4b29f685bc7f4efa64d4ndXRPRUNE= rtld.4.x packages abi
5a58787efeb02a1c3f06569d019ad81fd2efa06endXRADD= *.msg mapfile* llib-[a-z]*
XRDEL= Makefile* kobj_*
#
# Establish a set of directories for xref to search. As there are duplicates
# of things like headers, and only one file will be added to the xref database,
# we want xref to list the source file.
#
XRDIRS= . \
../../head \
../../uts/common/krtld \
../../uts/common/sys \
../../uts/sparc/sys \
../../uts/sparc/krtld \
../../uts/intel/ia32/krtld \
../../uts/intel/amd64/krtld
xref: FRC
@ $(RM) cscope.*
xref -p -x cscope