Makefile revision c242ec1b4cd260e90178d81575297bb3b3648766
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User# CDDL HEADER START
75c0816e8295e180f4bc7f10db3d0d880383bc1cMark Andrews#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The contents of this file are subject to the terms of the
4a14ce5ba00ab7bc55c99ffdcf59c7a4ab902721Automatic Updater# Common Development and Distribution License (the "License").
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You may not use this file except in compliance with the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# or http://www.opensolaris.org/os/licensing.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# See the License for the specific language governing permissions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and limitations under the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# When distributing Covered Code, include this CDDL HEADER in each
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# If applicable, add the following below this CDDL HEADER, with the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# fields enclosed by brackets "[]" replaced with your own identifying
ea94d370123a5892f6c47a97f21d1b28d44bb168Tinderbox User# information: Portions Copyright [yyyy] [name of copyright owner]
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# CDDL HEADER END
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
e21a2904f02a03fa06b6db04d348f65fe9c67b2bMark Andrews# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Use is subject to license terms.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIBBASENAME= libc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIBRARY= $(LIBBASENAME:%=%.a)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVERS= .1
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Note that we build libc_pic.a for the benefit of building
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# ld.so.1, but we do not install it. Only ld.so.1 needs it
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and it must be built in the same workspace as libc.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIB_PIC= libc_pic.a
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTLIB= $(ROOT)/usr/lib
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LIB= $(ROOT)/lib
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTLIB64= $(ROOTLIB)/$(MACH64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LIB64= $(ROOTFS_LIB)/$(MACH64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTVARIANTDIR= $(ROOTLIB)/libc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTVARIANTDIR64= $(ROOTLIB64)/libc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LINTDIR= $(ROOTFS_LIB)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LINTDIR64= $(ROOTFS_LIB64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LINTLIB= $(ROOTFS_LINTDIR)/$(LINTLIB)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTFS_LINTLIB64= $(ROOTFS_LINTDIR64)/$(LINTLIB)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# include common library definitions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../Makefile.lib
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User#
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User# on some architectures, we build multiple libc variants
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVAR1 = hwcap1
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVAR2 = hwcap2
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVAR3 = hwcap3
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVARBLD_1= $(MACH:sparc=sparc)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVARBLD= $(VARBLD_1:i386=)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVARBLD64_1= $(MACH:sparc=sparcv9)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVARBLD64= $(VARBLD64_1:i386=)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVAR1_DYNLIB = $(LIBRARY:%.a=%_$(VAR1).so$(VERS))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVAR1_BLDDIR = $(MACH)_$(VAR1)/$(VARBLD)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVAR2_DYNLIB = $(LIBRARY:%.a=%_$(VAR2).so$(VERS))
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVAR2_BLDDIR = $(MACH)_$(VAR2)/$(VARBLD)
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox UserVAR3_DYNLIB = $(LIBRARY:%.a=%_$(VAR3).so$(VERS))
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic UpdaterVAR3_BLDDIR = $(MACH)_$(VAR3)/$(VARBLD)
6f64d4ab8e68f9b2333bcbfc755396d29a4a9d7cAutomatic Updater
6f64d4ab8e68f9b2333bcbfc755396d29a4a9d7cAutomatic UpdaterVAR1_DYNLIB64 = $(LIBRARY:%.a=%_$(VAR1).so$(VERS))
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVAR1_BLDDIR64 = $(MACH)_$(VAR1)/$(VARBLD64)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox Useri386_VARIANTS= $(VAR1) $(VAR2) $(VAR3)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox Usersparc_VARIANTS= $(VAR1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox Usersparcv9_VARIANTS= $(VAR1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox Useri386_ETC= $(MACH)/etc
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox Usersparc_ETC=
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVARIANTS= $($(MACH)_VARIANTS)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVARIANT_SUBDIRS = $(VARIANTS:%=$(MACH)_%/$(VARBLD))
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVARIANTS64= $($(MACH64)_VARIANTS)
6f64d4ab8e68f9b2333bcbfc755396d29a4a9d7cAutomatic UpdaterVARIANT_SUBDIRS64 = $(VARIANTS64:%=$(MACH)_%/$(VARBLD64))
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic UpdaterSUBDIRS= $(MACH) $(MACH_ETC) $(VARIANT_SUBDIRS)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User$(BUILD64)SUBDIRS += $(MACH64) $(VARIANT_SUBDIRS64)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserLIBS = $(DYNLIB) $(LINTLIB)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserROOTLIBS64= $(ROOTLIBDIR64)/$(DYNLIB) $(ROOTLIBDIR64)/$(LINTLIB)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserMACHLIBS64= $(MACH64)/$(DYNLIB) $(MACH64)/$(LINTLIB)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVARIANTLIBS= $(VARIANTS:%=$(MACH)_%/$(VARBLD)/$(LIBBASENAME)_%.so.1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserVARIANTLIBS64= $(VARIANTS64:%=$(MACH)_%/$(VARBLD64)/$(LIBBASENAME)_%.so.1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserROOTVARIANTLIBS= $(VARIANTS:%=$(ROOTVARIANTDIR)/$(LIBBASENAME)_%.so.1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox UserROOTVARIANTLIBS64= $(VARIANTS64:%=$(ROOTVARIANTDIR64)/$(LIBBASENAME)_%.so.1)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User# definitions for install_h target
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic UpdaterBASEHDRS= getxby_door.h
bcf15a19ae0efa72a22cdfb50666a3c6ce39eb9fTinderbox UserCHECKHDRS= $(BASEHDRS:%.h=port/gen/%.check)
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic UpdaterHDRS= $(BASEHDRS)
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User# install rules for install_h target
bcf15a19ae0efa72a22cdfb50666a3c6ce39eb9fTinderbox User$(ROOTHDRDIR)/%: port/gen/%
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User $(INS.file)
bcf15a19ae0efa72a22cdfb50666a3c6ce39eb9fTinderbox User
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User$(ROOTLIBDIR)/$(DYNLIB) := FILEMODE = 755
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User$(ROOTLIBDIR64)/$(DYNLIB) := FILEMODE = 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIBDIR)/$(DYNLIB) := FILEMODE = 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIBDIR64)/$(DYNLIB) := FILEMODE = 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR) := FILEMODE= 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR)/$(VAR1_DYNLIB) := FILEMODE= 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR)/$(VAR2_DYNLIB) := FILEMODE= 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR)/$(VAR3_DYNLIB) := FILEMODE= 755
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR64) := FILEMODE= 755
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews$(ROOTVARIANTDIR64)/$(VAR1_DYNLIB64) := FILEMODE= 755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein.KEEP_STATE:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinall: check_i18n .WAIT lib32 $(BUILD64) .WAIT lib64 .WAIT etc
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincheck_i18n:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @if [ ! -f $(ROOTFS_LIBDIR)/libc_i18n.a -o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein ! -f $(ROOTFS_LIBDIR64)/libc_i18n.a ]; then \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein if [ "$$CLOSED_IS_PRESENT" = no ]; then \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ECHO) "Warning: closed binaries not" \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein "properly unpacked." >&2;\
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(ECHO) "Missing libc_i18n.a" >&2; \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews exit 1; \
58d9e9169e7ab4355a0b0bfc13bc616bc5247dfeAutomatic Updater else \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(ECHO) "Warning: libc_i18n.a must be built" \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews "before libc can be built." >&2; \
58d9e9169e7ab4355a0b0bfc13bc616bc5247dfeAutomatic Updater exit 1; \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews fi \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews fi
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinetc: $($(MACH)_ETC)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlib32: $(MACHLIBS) $(MACH)/$(LIB_PIC) $(VARIANTLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein mkdir -p $(MACH)/i18n_pics
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein cd $(MACH)/i18n_pics ; $(AR) -x $(ROOTFS_LIBDIR)/libc_i18n.a
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @if $(ELFDUMP) -r $(MACH)/$(DYNLIB) | $(GREP) -w environ ; then \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ECHO) "Error: Invalid reference to environ" ; \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ECHO) "Error: See comments in port/gen/env_data.c" ; \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein exit 1; \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein fi
acb72d5e2c83b597332e3eb0c7d59e1142f1adfdMark Andrews
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updaterlib64: $(MACHLIBS64) $(MACH64)/$(LIB_PIC) $(VARIANTLIBS64)
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updater mkdir -p $(MACH64)/i18n_pics
852ccdd42a71550c974111b49415204ffeca6573Automatic Updater cd $(MACH64)/i18n_pics ; $(AR) -x $(ROOTFS_LIBDIR64)/libc_i18n.a
852ccdd42a71550c974111b49415204ffeca6573Automatic Updater @if $(ELFDUMP) -r $(MACH64)/$(DYNLIB) | $(GREP) -w environ ; then \
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updater $(ECHO) "Error: Invalid reference to environ" ; \
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updater $(ECHO) "Error: See comments in port/gen/env_data.c" ; \
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updater exit 1; \
ca67ebfe9eef0b8f04179f7e511a19e0337a5422Automatic Updater fi
3cddb2c552ee6582e8db0849c28747f6b6ca57feAutomatic Updater
852ccdd42a71550c974111b49415204ffeca6573Automatic Updater$(VARIANTLIBS): FRC
852ccdd42a71550c974111b49415204ffeca6573Automatic Updater @cd $(@D); pwd; VERSION='$(VERSION)' $(MAKE) $(@F)
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater$(VARIANTLIBS64): FRC
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater @cd $(@D); pwd; VERSION='$(VERSION)' $(MAKE) $(@F)
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater$($(MACH)_ETC): FRC
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater @cd $(@); pwd; $(MAKE) $(TARGET)
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updater
66f25f2ceeb589e67efe7af2413baaa3426b0042Automatic Updaterinstall: all \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein etc \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein inslib32 \
38417cbfb1a328c20b5b723b8584a02c57f88897Automatic Updater $(BUILD64) inslib64
38417cbfb1a328c20b5b723b8584a02c57f88897Automatic Updater
38417cbfb1a328c20b5b723b8584a02c57f88897Automatic Updaterinslib32: $(ROOTFS_LIBS) $(ROOTFS_LINKS) $(ROOTFS_LINT) \
38417cbfb1a328c20b5b723b8584a02c57f88897Automatic Updater $(ROOTFS_LINTLIB) \
38417cbfb1a328c20b5b723b8584a02c57f88897Automatic Updater $(ROOTVARIANTLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininslib64: $(ROOTFS_LIBS64) $(ROOTFS_LINKS64) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ROOTFS_LINTLIB64) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ROOTVARIANTLIBS64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininstall_h: $(ROOTHDRS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincheck: $(CHECKHDRS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIB)/%: $(MACH)/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIBDIR)/$(LIBLINKS): $(ROOTFS_LIBDIR)/$(LIBLINKS)$(VERS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.liblink)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIB64)/%: $(MACH64)/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LIBDIR64)/$(LIBLINKS): $(ROOTFS_LIBDIR64)/$(LIBLINKS)$(VERS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.liblink)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR): $(ROOTLIB)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.dir)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR)/%: $(ROOTVARIANTDIR) $(VAR1_BLDDIR)/%
3a5fe5abf08f16b8d31ab8ee9a788063110ef000Automatic Updater $(INS.file)
3a5fe5abf08f16b8d31ab8ee9a788063110ef000Automatic Updater$(ROOTVARIANTDIR)/%: $(ROOTVARIANTDIR) $(VAR2_BLDDIR)/%
3a5fe5abf08f16b8d31ab8ee9a788063110ef000Automatic Updater $(INS.file)
3a5fe5abf08f16b8d31ab8ee9a788063110ef000Automatic Updater$(ROOTVARIANTDIR)/%: $(ROOTVARIANTDIR) $(VAR3_BLDDIR)/%
3a5fe5abf08f16b8d31ab8ee9a788063110ef000Automatic Updater $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR64): $(ROOTLIB64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.dir)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTVARIANTDIR64)/%: $(ROOTVARIANTDIR64) $(VAR1_BLDDIR64)/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# install rule for lint library target
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LINTDIR)/%: port/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LINTDIR64)/%: port/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LINTDIR)/%: $(MACH)/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTFS_LINTDIR64)/%: $(MACH64)/%
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
b05bdb520d83f7ecaad708fe305268c3420be01dMark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(LINTLIB):
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @cd $(MACH); pwd; VERSION='$(VERSION)' $(MAKE) $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(LINTLIB64):
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @cd $(MACH64); pwd; VERSION='$(VERSION)' $(MAKE) $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(MACH)/$(LIB_PIC): FRC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @cd $(MACH); pwd; VERSION='$(VERSION)' $(MAKE) $(LIB_PIC)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(MACH64)/$(LIB_PIC): FRC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @cd $(MACH64); pwd; VERSION='$(VERSION)' $(MAKE) $(LIB_PIC)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsall := TARGET= all
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininstall := TARGET= install
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinclean := TARGET= clean
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinclobber := TARGET= clobber
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlint := TARGET= lint
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein.PARALLEL: $(SUBDIRS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(SUBDIRS): FRC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @cd $@; pwd; VERSION='$(VERSION)' $(MAKE) $(TARGET)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinclean clobber: $(SUBDIRS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(RM) -r $(MACH)/i18n_pics
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(BUILD64)$(RM) -r $(MACH64)/i18n_pics
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrewslint: $(SUBDIRS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein_msg: $(MSGDOMAIN) catalog
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincatalog:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sh ./makelibccatalog.sh $(MSGDOMAIN)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(MSGDOMAIN):
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.dir)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincscope.out tags: FRC
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews $(XREF) -x $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinFRC:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# include MACH-specific library targets
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../Makefile.mach
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein