# # 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 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ident "%Z%%M% %I% %E% SMI" # $(PICDIR)/%.o: %.c $(COMPILE.c) $< -o $@ $(POST_PROCESS_O) $(PICDIR)/%.o: ../common/%.c $(COMPILE.c) $< -o $@ $(POST_PROCESS_O) $(PICDIR)/%32.o: ../common/%.c $(COMPILE.c) $< -o $@ $(POST_PROCESS_O) $(PICDIR)/%64.o: ../common/%.c $(COMPILE.c) -D_ELF64 $< -o $@ $(POST_PROCESS_O) $(CAP_LIB): $(CAP_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(DYN_LIB): $(DYN_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(EHDR_LIB): $(EHDR_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(PHDR_LIB): $(PHDR_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(SHDR_LIB): $(SHDR_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(STR_LIB): $(STR_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(SYM_LIB): $(SYM_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(SYMINFO_LIB): $(SYMINFO_PICS) $(BUILD.SO) $(LLDFLAGS) $(POST_PROCESS_SO) $(ROOTELFEDITDIR): $(INS.dir) $(ROOTELFEDITDIR64): $(INS.dir) $(ROOTELFEDITDIR)/%: % $(INS.file) $(ROOTELFEDITDIR64)/%: % $(INS.file) ../common/%.c: %_msg.h %_msg.h %_msg.c: $(SGSMSG) ../common/%.msg $(SGSMSG) $(SGSMSGFLAGS) -l -h $@ -d $@ \ -m $(SGSMSGDIR)/elfedit_$* -n $*_msg $< # This rule causes the message catalog file to be created under # sgs/messages, but does not regenerate the C or header file for the module. $(SGSMSGDIR)/elfedit_%: $(SGSMSG) ../common/%.msg $(SGSMSG) $(SGSMSGFLAGS) -l -m $(SGSMSGDIR)/elfedit_$* $< $(SGSMSG): @ cd $(SGSTOOLS)/$(MACH); pwd; $(MAKE) catalog @ pwd catalog: $(SGSMSGDIR)/elfedit_cap \ $(SGSMSGDIR)/elfedit_dyn \ $(SGSMSGDIR)/elfedit_ehdr \ $(SGSMSGDIR)/elfedit_phdr \ $(SGSMSGDIR)/elfedit_shdr \ $(SGSMSGDIR)/elfedit_str \ $(SGSMSGDIR)/elfedit_sym \ $(SGSMSGDIR)/elfedit_syminfo chkmsg: $(SRCS) sh $(CHKMSG) -m ../common/cap.msg ../common/cap.c sh $(CHKMSG) -m ../common/dyn.msg ../common/dyn.c sh $(CHKMSG) -m ../common/ehdr.msg ../common/ehdr.c sh $(CHKMSG) -m ../common/phdr.msg ../common/phdr.c sh $(CHKMSG) -m ../common/shdr.msg ../common/shdr.c sh $(CHKMSG) -m ../common/str.msg ../common/str.c sh $(CHKMSG) -m ../common/sym.msg ../common/sym.c sh $(CHKMSG) -m ../common/syminfo.msg ../common/syminfo.c LINT_HDR= perl $(SGSTOOLS)/lint_hdr.pl lint: $(LINT_HDR) "elfedit modules" > $(LINTOUT) $(LINT_HDR) -s "cap.so" >> $(LINTOUT) $(LINT.c) ../common/cap.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "dyn.so" >> $(LINTOUT) $(LINT.c) ../common/dyn.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "ehdr.so" >> $(LINTOUT) $(LINT.c) ../common/ehdr.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "phdr.so" >> $(LINTOUT) $(LINT.c) ../common/phdr.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "shdr.so" >> $(LINTOUT) $(LINT.c) ../common/shdr.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "str.so" >> $(LINTOUT) $(LINT.c) ../common/str.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "sym.so" >> $(LINTOUT) $(LINT.c) ../common/sym.c 2>&1 | tee -a $(LINTOUT) $(LINT_HDR) -s "syminfo.so" >> $(LINTOUT) $(LINT.c) ../common/syminfo.c 2>&1 | tee -a $(LINTOUT) include $(SRC)/lib/Makefile.targ