8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / cmd / sgs / libld / Makefile.targ
blobc8f514cd2ffcc6c35a6f2f39b8c47d6a16ac6758
2 # CDDL HEADER START
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
19 # CDDL HEADER END
22 # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
23 # Use is subject to license terms.
25 # Copyright 2016 RackTop Systems.
28 pics/%.o:       ../common/%.c
29                 $(COMPILE.c) -o $@ $<
30                 $(POST_PROCESS_O)
32 pics/%32.o:     ../common/%.c
33                 $(COMPILE.c) -o $@ $<
34                 $(POST_PROCESS_O)
36 pics/%64.o:     ../common/%.c
37                 $(COMPILE.c) -o $@ -D_ELF64 $<
38                 $(POST_PROCESS_O)
40 pics/%32.o:     %.c
41                 $(COMPILE.c) -o $@ $<
42                 $(POST_PROCESS_O)
44 pics/%64.o:     %.c
45                 $(COMPILE.c) -o $@ -D_ELF64 $<
46                 $(POST_PROCESS_O)
48 pics/%.o:       $(SGSTOOLS)/common/%.c
49                 $(COMPILE.c) -o $@ $<
50                 $(POST_PROCESS_O)
52 pics/%.o:       $(VAR_AVLDIR)/%.c
53                 $(COMPILE.c) -o $@ $<
54                 $(POST_PROCESS_O)
57 # We use the shared elfcap code under usr/src/common/elfcap
59 pics/elfcap.o:  $(ELFCAP)/elfcap.c
60                 $(COMPILE.c) -o  $@ $(ELFCAP)/elfcap.c
61                 $(POST_PROCESS_O)
63 # Rules for compiling the shared relocation engines (doreloc.c) maintained
64 # under usr/src/uts. To support cross linking, We compile and link
65 # all of these into every copy of libld. Each one requires a separate rule:
66 #       - The source files are in different subtrees under usr/src/uts
67 #       - The output file needs to include the platform name to
68 #               keep the object files from colliding
69 # The DO_RELOC_LIBLD definition is needed to generate the libld version
70 # of the doreloc code.
72 pics/%_x86_32.o: $(KRTLD_I386)/%.c
73                 $(COMPILE.c) -o $@ -DDO_RELOC_LIBLD $<
74                 $(POST_PROCESS_O)
76 pics/%_x86_64.o: $(KRTLD_AMD64)/%.c
77                 $(COMPILE.c) -o $@ -D_ELF64 -DDO_RELOC_LIBLD $<
78                 $(POST_PROCESS_O)
80 pics/%_sparc_32.o: $(KRTLD_SPARC)/%.c
81                 $(COMPILE.c) -o $@ -DDO_RELOC_LIBLD $<
82                 $(POST_PROCESS_O)
84 pics/%_sparc_64.o: \
85                 $(KRTLD_SPARC)/%.c
86                 $(COMPILE.c) -o $@ -D_ELF64 -DDO_RELOC_LIBLD $<
87                 $(POST_PROCESS_O)
90 $(LIBLINKS):
91                 $(RM) $@; $(SYMLINK) $(DYNLIB) $@
93 delete:
94                 $(RM) $(DYNLIB)
96 .PARALLEL:      $(LINTOUT32) $(LINTOUT64) $(LINTLIB32) $(LINTLIB64)
98 lint:           $(LINTLIB32) $(LINTOUT32) $(LINTLIB64) $(LINTOUT64) \
99                     .WAIT $(SGSLINTOUT)
101 # Special target for native builds (ie. when we need to build a version of ld
102 # to build a version of ld :-).
104 native:         $(SGSLIBDIR)/$(LIBLINKS)
106 $(PICS):        pics
108 $(SGSLIBDIR)/$(DYNLIB): $(PICS) $(SGSLIBDIR)
109                 $(BUILD.SO)
110                 $(POST_PROCESS_SO)
112 $(SGSLIBDIR)/$(LIBLINKS): $(SGSLIBDIR)/$(DYNLIB)
113                 @$(RM) $(SGSLIBDIR)/$(LIBLINKS)
114                 $(SYMLINK) $(DYNLIB) $(SGSLIBDIR)/$(LIBLINKS)
116 include         $(SRC)/lib/Makefile.targ
117 include         $(SRC)/cmd/sgs/Makefile.targ
119 # Derived source and header files (messaging).
121 catalog:        $(BLTMESG)
123 chkmsg:         $(LIBSRCS) $(CHKSRCS)
124                 sh $(CHKMSG) $(CHKMSGFLAGS) $(LIBSRCS) $(CHKSRCS)
126 $(BLTDEFS) + \
127 $(BLTDATA):     $(SGSMSGTARG)
128                 $(SGSMSG) $(SGSMSGFLAGS2) $(SGSMSGTARG)
130 $(BLTMESG):     $(SGSMSGALL)
131                 $(SGSMSG) $(SGSMSGFLAGS1) $(SGSMSGALL)