Makefile revision 5aefb6555731130ca4fd295960123d71f2d21fe8
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# CDDL HEADER START
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# The contents of this file are subject to the terms of the
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Common Development and Distribution License (the "License").
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# You may not use this file except in compliance with the License.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# or http://www.opensolaris.org/os/licensing.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# See the License for the specific language governing permissions
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# and limitations under the License.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# When distributing Covered Code, include this CDDL HEADER in each
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# If applicable, add the following below this CDDL HEADER, with the
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# fields enclosed by brackets "[]" replaced with your own identifying
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# information: Portions Copyright [yyyy] [name of copyright owner]
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# CDDL HEADER END
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Use is subject to license terms.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# ident "%Z%%M% %I% %E% SMI"
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkE_TOOLOBJS = leb128.o
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkL_MACHOBJS32 = machrel.intel32.o machsym.intel32.o
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkL_MACHOBJS64 = machrel.amd64.o machsym.intel64.o unwind.amd64.o
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkinclude ../Makefile.com
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk.KEEP_STATE:
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkROOTFS_LIBDIR64 = \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(VAR_LIBLD_64_ROOTFS_LIBDIR)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkROOTFS_DYNLIB64 = \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(DYNLIB:%=$(ROOTFS_LIBDIR64)/%)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkSGSMSGCHK = ../common/libld.chk.msg
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkSGSMSGTARG += $(SGSMSGINTEL)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# For cross-compilation, it is necessary to trigger the correct include files
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# (see sys/elf.h).
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk#
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkELFTARGET64 = -DELF_TARGET_AMD64
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkELFTARGET32 = -DELF_TARGET_386
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkELFLIBDIR = $(ELFLIBDIR64)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkLDDBGLIBDIR = $(LDDBGLIBDIR64)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkCONVLIBDIR = $(CONVLIBDIR64)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk$(ROOTFS_DYNLIB64) := FILEMODE= 755
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkall: $(DYNLIB) $(LIBLINKS)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkinstall \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkpackage: all $(ROOTFS_DYNLIB64)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkinclude ../Makefile.targ
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkinclude ../../Makefile.sub.64
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Associate ELF32 and ELF64 objects to the appropriate headers.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkpics/%32.o := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkpics/%64.o := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Associate the various lint targets with the appropriate headers/files.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk$(LINTOUT32) := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(ELFTARGET32)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk$(LINTOUT64) := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(ELFTARGET64) -D_ELF64
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk$(LINTLIB32) := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(ELFTARGET32)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk$(LINTLIB64) := CPPFLAGS += -I$(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(ELFTARGET64) -D_ELF64
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkLINTSRCS32 += $(G_MACHOBJS32:%32.o=$(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld/%.c)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkLINTSRCS64 += $(G_MACHOBJS64:%64.o=$(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld/%.c)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk# Compensate chkmsg with the doreloc family.
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkCHKSRCS += $(G_MACHOBJS32:%32.o=$(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld/%.c)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkCHKSRCS += $(G_MACHOBJS64:%64.o=$(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld/%.c)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkpics/%32.o: \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(SRCBASE)/uts/$(VAR_PLAT_i386)/krtld/%.c
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(COMPILE.c) -o $@ $(ELFTARGET32) $<
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(POST_PROCESS_O)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenkpics/%64.o: \
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(SRCBASE)/uts/$(VAR_PLAT_amd64)/krtld/%.c
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(COMPILE.c) -o $@ $(ELFTARGET64) -D_ELF64 $<
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk $(POST_PROCESS_O)
c1350cf5bc50458ba79cc93ff9e0e5fe3f1aeeb0jeff.schenk