17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 560c80770Scraigm# Common Development and Distribution License (the "License"). 660c80770Scraigm# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 217c478bd9Sstevel@tonic-gate# 2260c80770Scraigm# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 2544bf619dSJohn Levon# Copyright 2019 Joyent, Inc. 2644bf619dSJohn Levon# 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gateCRTI = crti.o 297c478bd9Sstevel@tonic-gateCRTN = crtn.o 307c478bd9Sstevel@tonic-gateCRT1 = crt1.o 317c478bd9Sstevel@tonic-gateVALUES = values-Xa.o values-Xc.o values-Xs.o values-Xt.o \ 327c478bd9Sstevel@tonic-gate values-xpg4.o values-xpg6.o 333e76f9d6SRichard LoweCOMMON_CRT = common-crt.o 343e76f9d6SRichard LoweMACH_CRT = mach-crt1.o 357c478bd9Sstevel@tonic-gate 367c478bd9Sstevel@tonic-gate# include library definitions 377c478bd9Sstevel@tonic-gateinclude ../../Makefile.lib 387c478bd9Sstevel@tonic-gate 393e76f9d6SRichard LoweSRCS = $(VALUES:%.o=../common/%.c) $(COMMON_CRT:%.o=../common/%.c) 403e76f9d6SRichard Lowe 417c478bd9Sstevel@tonic-gatePOST_PROCESS_O = $(PROCESS_COMMENT) $@ ; $(STRIP) -x $@ 427c478bd9Sstevel@tonic-gate 433e76f9d6SRichard LoweOBJECTS = $(VALUES) $(CRT1) $(CRTI) $(CRTN) 447c478bd9Sstevel@tonic-gate 457c478bd9Sstevel@tonic-gateROOTLIB= $(ROOT)/usr/lib 467c478bd9Sstevel@tonic-gateROOTLIB64= $(ROOTLIB)/$(MACH64) 477c478bd9Sstevel@tonic-gateROOTOBJECTS= $(OBJECTS:%=$(ROOTLIB)/%) 487c478bd9Sstevel@tonic-gateROOTOBJECTS64= $(OBJECTS:%=$(ROOTLIB64)/%) 497c478bd9Sstevel@tonic-gate 503e76f9d6SRichard Lowe$(INTEL_BLD)ROOTOBJECTS += $(ROOTLIB)/gcrt1.o 513e76f9d6SRichard Lowe$(INTEL_BLD)ROOTOBJECTS64 += $(ROOTLIB64)/gcrt1.o 523e76f9d6SRichard Lowe 53*5d9d9091SRichard LoweASFLAGS += -D_ASM -DPIC $(AS_PICFLAGS) 54*5d9d9091SRichard LoweASFLAGS64 += -D_ASM -DPIC $(AS_PICFLAGS) 557c478bd9Sstevel@tonic-gate 567c478bd9Sstevel@tonic-gatevalues-xpg6.o := CPPFLAGS += -I$(SRC)/lib/libc/inc 573e76f9d6SRichard Lowe$(COMMON_CRT) $(VALUES) := CFLAGS += $(C_PICFLAGS) 583e76f9d6SRichard Lowe$(COMMON_CRT) $(VALUES) := CFLAGS64 += $(C_PICFLAGS64) 597c478bd9Sstevel@tonic-gate 6044bf619dSJohn Levon# intentional double exit 6144bf619dSJohn LevonSMOFF += unreachable 6244bf619dSJohn Levon 63cd61ae21SRichard LoweCOMPATLINKS= usr/ccs/lib/values-Xa.o \ 64cd61ae21SRichard Lowe usr/ccs/lib/values-Xc.o \ 65cd61ae21SRichard Lowe usr/ccs/lib/values-Xs.o \ 66cd61ae21SRichard Lowe usr/ccs/lib/values-Xt.o \ 67cd61ae21SRichard Lowe usr/ccs/lib/values-xpg4.o \ 68cd61ae21SRichard Lowe usr/ccs/lib/values-xpg6.o 69cd61ae21SRichard Lowe 70cd61ae21SRichard LoweCOMPATLINKS64= usr/ccs/lib/$(MACH64)/values-Xa.o \ 71cd61ae21SRichard Lowe usr/ccs/lib/$(MACH64)/values-Xc.o \ 72cd61ae21SRichard Lowe usr/ccs/lib/$(MACH64)/values-Xs.o \ 73cd61ae21SRichard Lowe usr/ccs/lib/$(MACH64)/values-Xt.o \ 74cd61ae21SRichard Lowe usr/ccs/lib/$(MACH64)/values-xpg4.o \ 75cd61ae21SRichard Lowe usr/ccs/lib/$(MACH64)/values-xpg6.o 76cd61ae21SRichard Lowe 77cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-Xa.o:= COMPATLINKTARGET=../../lib/values-Xa.o 78cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-Xc.o:= COMPATLINKTARGET=../../lib/values-Xc.o 79cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-Xs.o:= COMPATLINKTARGET=../../lib/values-Xs.o 80cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-Xt.o:= COMPATLINKTARGET=../../lib/values-Xt.o 81cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-xpg4.o:= COMPATLINKTARGET=../../lib/values-xpg4.o 82cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/values-xpg6.o:= COMPATLINKTARGET=../../lib/values-xpg6.o 83cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-Xa.o:= \ 84cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-Xa.o 85cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-Xc.o:= \ 86cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-Xc.o 87cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-Xs.o:= \ 88cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-Xs.o 89cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-Xt.o:= \ 90cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-Xt.o 91cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-xpg4.o:= \ 92cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-xpg4.o 93cd61ae21SRichard Lowe$(ROOT)/usr/ccs/lib/$(MACH64)/values-xpg6.o:= \ 94cd61ae21SRichard Lowe COMPATLINKTARGET=../../../lib/$(MACH64)/values-xpg6.o 95cd61ae21SRichard Lowe 967c478bd9Sstevel@tonic-gate.KEEP_STATE: 977c478bd9Sstevel@tonic-gate 987c478bd9Sstevel@tonic-gateall: $(OBJECTS) 997c478bd9Sstevel@tonic-gate 1007c478bd9Sstevel@tonic-gateclean clobber: 1017c478bd9Sstevel@tonic-gate $(RM) $(OBJECTS) 1027c478bd9Sstevel@tonic-gate 1033e76f9d6SRichard Lowe 1043e76f9d6SRichard Lowe$(CRT1): $(COMMON_CRT) $(MACH_CRT) 1053e76f9d6SRichard Lowe $(LD) -r $(MACH_CRT) $(COMMON_CRT) -o $(CRT1) 1067c478bd9Sstevel@tonic-gate 1077c478bd9Sstevel@tonic-gate%.o: ../common/%.c 1087c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1097c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 1107c478bd9Sstevel@tonic-gate 1117c478bd9Sstevel@tonic-gate%.o: %.s 1127c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 1137c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 1147c478bd9Sstevel@tonic-gate 1153e76f9d6SRichard Lowe%.o: ../$(MACH)/%.s 1163e76f9d6SRichard Lowe $(COMPILE.s) -o $@ $< 1173e76f9d6SRichard Lowe $(POST_PROCESS_O) 1187c478bd9Sstevel@tonic-gate 1193e76f9d6SRichard Lowe# install rule for ROOTOBJECTS and ROOTOBJECTS64 1207c478bd9Sstevel@tonic-gate$(ROOTLIB)/%.o: %.o 1217c478bd9Sstevel@tonic-gate $(INS.file) 1227c478bd9Sstevel@tonic-gate 1233e76f9d6SRichard Lowe$(ROOTLIB)/gcrt1.o: 1243e76f9d6SRichard Lowe $(RM) $(ROOTLIB)/gcrt1.o; $(SYMLINK) crt1.o $(ROOTLIB)/gcrt1.o 1253e76f9d6SRichard Lowe 1267c478bd9Sstevel@tonic-gate$(ROOTLIB64)/%.o: %.o 1277c478bd9Sstevel@tonic-gate $(INS.file) 1283e76f9d6SRichard Lowe 1293e76f9d6SRichard Lowe$(ROOTLIB64)/gcrt1.o: 1303e76f9d6SRichard Lowe $(RM) $(ROOTLIB64)/gcrt1.o; $(SYMLINK) crt1.o $(ROOTLIB64)/gcrt1.o 1313e76f9d6SRichard Lowe 132cd61ae21SRichard Lowe$(ROOTCOMPATLINKS) $(ROOTCOMPATLINKS64): 133cd61ae21SRichard Lowe $(RM) $@; $(SYMLINK) $(COMPATLINKTARGET) $@ 134