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 5*5aefb655Srie# Common Development and Distribution License (the "License"). 6*5aefb655Srie# 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# 21*5aefb655Srie 227c478bd9Sstevel@tonic-gate# 23*5aefb655Srie# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 247c478bd9Sstevel@tonic-gate# Use is subject to license terms. 257c478bd9Sstevel@tonic-gate# 267c478bd9Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 277c478bd9Sstevel@tonic-gate# 287c478bd9Sstevel@tonic-gate 297c478bd9Sstevel@tonic-gate$(VAR_POUND_2)LIBS += $(LIBRARY) 307c478bd9Sstevel@tonic-gate 317c478bd9Sstevel@tonic-gateobjs/%.o \ 327c478bd9Sstevel@tonic-gatepics/%.o: %.c 337c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 347c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 357c478bd9Sstevel@tonic-gate 367c478bd9Sstevel@tonic-gateobjs/%64.o \ 377c478bd9Sstevel@tonic-gatepics/%64.o: ../common/%.c 387c478bd9Sstevel@tonic-gate $(COMPILE.c) -D_ELF64 -o $@ $< 397c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 407c478bd9Sstevel@tonic-gate 417c478bd9Sstevel@tonic-gateobjs/%.o \ 427c478bd9Sstevel@tonic-gatepics/%.o: ../misc/%.c 437c478bd9Sstevel@tonic-gate $(COMPILE.c) -DELF -o $@ $< 447c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 457c478bd9Sstevel@tonic-gate 467c478bd9Sstevel@tonic-gateobjs/%.o \ 477c478bd9Sstevel@tonic-gatepics/%.o: ../common/%.c 487c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 497c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 507c478bd9Sstevel@tonic-gate 517c478bd9Sstevel@tonic-gateall: $(BLTSRCS) .WAIT $(LIBS) $(LIBLINKS) 527c478bd9Sstevel@tonic-gate 537c478bd9Sstevel@tonic-gateinstall: all .WAIT $(ROOTFS_LIBS) $(ROOTFS_LINKS) $(ROOTDEMODIR) \ 547c478bd9Sstevel@tonic-gate $(ROOTFS_LINTLIB) \ 557c478bd9Sstevel@tonic-gate .WAIT $(ROOTDEMOFILES) $(ROOTFS_LIBDIR)/$(LINTLIBSRC) 567c478bd9Sstevel@tonic-gate 577c478bd9Sstevel@tonic-gate$(VAR_POUND_1)$(ROOTFS_LIBDIR)/$(LINTLIBSRC): ../common/$(LINTLIBSRC) 587c478bd9Sstevel@tonic-gate$(VAR_POUND_1) $(INS.file) ../common/$(LINTLIBSRC) 597c478bd9Sstevel@tonic-gate 607c478bd9Sstevel@tonic-gatelint: $(LINTLIB) $(LINTOUT32) $(LINTOUT64) $(SGSLINTOUT) 617c478bd9Sstevel@tonic-gate 627c478bd9Sstevel@tonic-gate$(VAR_POUND_2)lint := LIBTHREADFLAG=-lthread 637c478bd9Sstevel@tonic-gate 647c478bd9Sstevel@tonic-gate.PARALLEL: $(LINTOUT32) $(LINTOUT64) 657c478bd9Sstevel@tonic-gate 667c478bd9Sstevel@tonic-gatedelete: 677c478bd9Sstevel@tonic-gate $(RM) $(DYNLIB) 687c478bd9Sstevel@tonic-gate 69*5aefb655Srie$(DYNLIB): $$(MAPFILES) 707c478bd9Sstevel@tonic-gate 717c478bd9Sstevel@tonic-gate$(LIBLINKS): 727c478bd9Sstevel@tonic-gate $(RM) $(LIBLINKS) 737c478bd9Sstevel@tonic-gate $(SYMLINK) $(DYNLIB) $(LIBLINKS) 747c478bd9Sstevel@tonic-gate 757c478bd9Sstevel@tonic-gate# include common library targets 767c478bd9Sstevel@tonic-gate# 777c478bd9Sstevel@tonic-gateinclude $(SRC)/lib/Makefile.targ 787c478bd9Sstevel@tonic-gateinclude $(SRC)/cmd/sgs/Makefile.targ 797c478bd9Sstevel@tonic-gate 807c478bd9Sstevel@tonic-gate 817c478bd9Sstevel@tonic-gate$(ROOTDEMODIR): 827c478bd9Sstevel@tonic-gate $(INS.dir) 837c478bd9Sstevel@tonic-gate 847c478bd9Sstevel@tonic-gate$(ROOTDEMODIR)/%: ../demo/% 857c478bd9Sstevel@tonic-gate $(INS.file) 867c478bd9Sstevel@tonic-gate 877c478bd9Sstevel@tonic-gatexlate.c: ../common/xlate.m4 887c478bd9Sstevel@tonic-gate $(M4) < ../common/xlate.m4 > xlate.c 897c478bd9Sstevel@tonic-gate 907c478bd9Sstevel@tonic-gatexlate64.c: ../common/xlate64.m4 917c478bd9Sstevel@tonic-gate $(M4) < ../common/xlate64.m4 > xlate64.c 927c478bd9Sstevel@tonic-gate 937c478bd9Sstevel@tonic-gate 947c478bd9Sstevel@tonic-gateobjs/msg.o \ 957c478bd9Sstevel@tonic-gatepics/msg.o: msg.c 967c478bd9Sstevel@tonic-gate 977c478bd9Sstevel@tonic-gateobjs/error.o \ 987c478bd9Sstevel@tonic-gatepics/error.o: msg.h 997c478bd9Sstevel@tonic-gate 1007c478bd9Sstevel@tonic-gateobjs/ar.o \ 1017c478bd9Sstevel@tonic-gatepics/ar.o: msg.h 1027c478bd9Sstevel@tonic-gate 1037c478bd9Sstevel@tonic-gateobjs/xlate.o \ 1047c478bd9Sstevel@tonic-gatepics/xlate.o: xlate.c 1057c478bd9Sstevel@tonic-gate 1067c478bd9Sstevel@tonic-gate# 1077c478bd9Sstevel@tonic-gate# Targets needed to support running of Warlock, warlock can be 1087c478bd9Sstevel@tonic-gate# located at: 1097c478bd9Sstevel@tonic-gate# suntools.eng:/export/tools/internal/warlock 1107c478bd9Sstevel@tonic-gate# 1117c478bd9Sstevel@tonic-gate# to use add the following to your path: 1127c478bd9Sstevel@tonic-gate# export PATH=/net/suntools.eng/export/tools/internal/warlock/bin:$PATH 1137c478bd9Sstevel@tonic-gate# 1147c478bd9Sstevel@tonic-gate.PARALLEL: $(WARLOCKFILES) 1157c478bd9Sstevel@tonic-gatewarlock: wlocks .WAIT warlock_files 1167c478bd9Sstevel@tonic-gate warlock -c ../common/libelf.wlcmd $(WARLOCKFILES) 1177c478bd9Sstevel@tonic-gate 1187c478bd9Sstevel@tonic-gatewarlock_files: $(BLTSRCS) .WAIT $(WARLOCKFILES) 1197c478bd9Sstevel@tonic-gate 1207c478bd9Sstevel@tonic-gatewlocks: 1217c478bd9Sstevel@tonic-gate -@mkdir -p $@ 1227c478bd9Sstevel@tonic-gate 1237c478bd9Sstevel@tonic-gatewlocks/%.ll: %.c 1247c478bd9Sstevel@tonic-gate wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< 1257c478bd9Sstevel@tonic-gate 1267c478bd9Sstevel@tonic-gatewlocks/%.ll: ../misc/%.c 1277c478bd9Sstevel@tonic-gate wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< 1287c478bd9Sstevel@tonic-gate 1297c478bd9Sstevel@tonic-gatewlocks/%.ll: ../common/%.c 1307c478bd9Sstevel@tonic-gate wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< 1317c478bd9Sstevel@tonic-gate 1327c478bd9Sstevel@tonic-gate 1337c478bd9Sstevel@tonic-gate# Special target for native builds (ie. when we need to build a version of ld 1347c478bd9Sstevel@tonic-gate# to build a version of ld :-). 1357c478bd9Sstevel@tonic-gate 1367c478bd9Sstevel@tonic-gatenative: $(SGSPROTO)/$(DYNLIB) 1377c478bd9Sstevel@tonic-gate 1387c478bd9Sstevel@tonic-gate$(SGSPROTO)/$(DYNLIB): \ 1397c478bd9Sstevel@tonic-gate pics .WAIT $$(PICS) $(MAPFILES) 1407c478bd9Sstevel@tonic-gate $(BUILD.SO) 1417c478bd9Sstevel@tonic-gate $(POST_PROCESS_SO) 1427c478bd9Sstevel@tonic-gate -@$(RM) $(SGSPROTO)/$(LIBLINKS) 1437c478bd9Sstevel@tonic-gate $(SYMLINK) $(DYNLIB) $(SGSPROTO)/$(LIBLINKS) 1447c478bd9Sstevel@tonic-gate 1457c478bd9Sstevel@tonic-gate 1467c478bd9Sstevel@tonic-gate# Derived source and header files (messaging). Make sure that the sgsmsg 1477c478bd9Sstevel@tonic-gate# command is constructed - libelf might not be built with the whole sgs. 1487c478bd9Sstevel@tonic-gate 1497c478bd9Sstevel@tonic-gatecatalog: $(BLTMESG) 1507c478bd9Sstevel@tonic-gate 1517c478bd9Sstevel@tonic-gatechkmsg: $(LIBSRCS) 1527c478bd9Sstevel@tonic-gate sh $(CHKMSG) $(CHKMSGFLAGS) $(LIBSRCS) 1537c478bd9Sstevel@tonic-gate 1547c478bd9Sstevel@tonic-gate$(BLTDEFS) + \ 1557c478bd9Sstevel@tonic-gate$(BLTDATA): $(SGSMSG) $(SGSMSGTARG) 1567c478bd9Sstevel@tonic-gate $(SGSMSG) $(SGSMSGFLAGS2) $(SGSMSGTARG) 1577c478bd9Sstevel@tonic-gate 1587c478bd9Sstevel@tonic-gate$(BLTMESG): $(SGSMSG) $(SGSMSGALL) xlate.c xlate64.c 1597c478bd9Sstevel@tonic-gate $(SGSMSG) $(SGSMSGFLAGS1) $(SGSMSGALL) 1607c478bd9Sstevel@tonic-gate 1617c478bd9Sstevel@tonic-gate$(SGSMSG): FRC 1627c478bd9Sstevel@tonic-gate @ cd $(SGSTOOLS)/$(MACH); pwd; $(MAKE) catalog 1637c478bd9Sstevel@tonic-gate @ pwd 1647c478bd9Sstevel@tonic-gate 1657c478bd9Sstevel@tonic-gateFRC: 166