# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ident "%Z%%M% %I% %E% SMI" # $(VAR_POUND_2)LIBS += $(LIBRARY) objs/%.o \ pics/%.o: %.c $(COMPILE.c) -o $@ $< $(POST_PROCESS_O) objs/%64.o \ pics/%64.o: ../common/%.c $(COMPILE.c) -D_ELF64 -o $@ $< $(POST_PROCESS_O) objs/%.o \ pics/%.o: ../misc/%.c $(COMPILE.c) -DELF -o $@ $< $(POST_PROCESS_O) objs/%.o \ pics/%.o: ../common/%.c $(COMPILE.c) -o $@ $< $(POST_PROCESS_O) all: $(BLTSRCS) .WAIT $(LIBS) $(LIBLINKS) install: all .WAIT $(ROOTFS_LIBS) $(ROOTFS_LINKS) $(ROOTDEMODIR) \ $(ROOTFS_LINTLIB) \ .WAIT $(ROOTDEMOFILES) $(ROOTFS_LIBDIR)/$(LINTLIBSRC) $(VAR_POUND_1)$(ROOTFS_LIBDIR)/$(LINTLIBSRC): ../common/$(LINTLIBSRC) $(VAR_POUND_1) $(INS.file) ../common/$(LINTLIBSRC) lint: $(LINTLIB) $(LINTOUT32) $(LINTOUT64) $(SGSLINTOUT) $(VAR_POUND_2)lint := LIBTHREADFLAG=-lthread .PARALLEL: $(LINTOUT32) $(LINTOUT64) delete: $(RM) $(DYNLIB) $(LIBLINKS): $(RM) $(LIBLINKS) $(SYMLINK) $(DYNLIB) $(LIBLINKS) # include common library targets # include $(SRC)/lib/Makefile.targ include $(SRC)/cmd/sgs/Makefile.targ $(ROOTDEMODIR): $(INS.dir) $(ROOTDEMODIR)/%: ../demo/% $(INS.file) xlate.c: ../common/xlate.m4 $(M4) < ../common/xlate.m4 > xlate.c xlate64.c: ../common/xlate64.m4 $(M4) < ../common/xlate64.m4 > xlate64.c objs/msg.o \ pics/msg.o: msg.c objs/error.o \ pics/error.o: msg.h objs/ar.o \ pics/ar.o: msg.h objs/xlate.o \ pics/xlate.o: xlate.c # # Targets needed to support running of Warlock, warlock can be # located at: # suntools.eng:/export/tools/internal/warlock # # to use add the following to your path: # export PATH=/net/suntools.eng/export/tools/internal/warlock/bin:$PATH # .PARALLEL: $(WARLOCKFILES) warlock: wlocks .WAIT warlock_files warlock -c ../common/libelf.wlcmd $(WARLOCKFILES) warlock_files: $(BLTSRCS) .WAIT $(WARLOCKFILES) wlocks: -@mkdir -p $@ wlocks/%.ll: %.c wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< wlocks/%.ll: ../misc/%.c wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< wlocks/%.ll: ../common/%.c wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $< # Special target for native builds (ie. when we need to build a version of ld # to build a version of ld :-). native: $(SGSPROTO)/$(DYNLIB) native := CPPFLAGS += -DNATIVE_BUILD $(SGSPROTO)/$(DYNLIB): \ pics .WAIT $$(PICS) $(BUILD.SO) $(POST_PROCESS_SO) -@$(RM) $(SGSPROTO)/$(LIBLINKS) $(SYMLINK) $(DYNLIB) $(SGSPROTO)/$(LIBLINKS) # Derived source and header files (messaging). Make sure that the sgsmsg # command is constructed - libelf might not be built with the whole sgs. catalog: $(BLTMESG) chkmsg: $(LIBSRCS) sh $(CHKMSG) $(CHKMSGFLAGS) $(LIBSRCS) $(BLTDEFS) + \ $(BLTDATA): $(SGSMSG) $(SGSMSGTARG) $(SGSMSG) $(SGSMSGFLAGS2) $(SGSMSGTARG) $(BLTMESG): $(SGSMSG) $(SGSMSGALL) xlate.c xlate64.c $(SGSMSG) $(SGSMSGFLAGS1) $(SGSMSGALL) $(SGSMSG): FRC @ cd $(SGSTOOLS)/$(MACH); pwd; $(MAKE) catalog @ pwd FRC: