xref: /illumos-gate/usr/src/cmd/sgs/elfedit/modules/Makefile.com (revision 69b1fd3f24d0ee2e682883606201c61f52085805)
1d29b2c44Sab196087#
2d29b2c44Sab196087# CDDL HEADER START
3d29b2c44Sab196087#
4d29b2c44Sab196087# The contents of this file are subject to the terms of the
5d29b2c44Sab196087# Common Development and Distribution License (the "License").
6d29b2c44Sab196087# You may not use this file except in compliance with the License.
7d29b2c44Sab196087#
8d29b2c44Sab196087# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9d29b2c44Sab196087# or http://www.opensolaris.org/os/licensing.
10d29b2c44Sab196087# See the License for the specific language governing permissions
11d29b2c44Sab196087# and limitations under the License.
12d29b2c44Sab196087#
13d29b2c44Sab196087# When distributing Covered Code, include this CDDL HEADER in each
14d29b2c44Sab196087# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15d29b2c44Sab196087# If applicable, add the following below this CDDL HEADER, with the
16d29b2c44Sab196087# fields enclosed by brackets "[]" replaced with your own identifying
17d29b2c44Sab196087# information: Portions Copyright [yyyy] [name of copyright owner]
18d29b2c44Sab196087#
19d29b2c44Sab196087# CDDL HEADER END
20d29b2c44Sab196087#
2108278a5eSRod Evans
22d29b2c44Sab196087#
2308278a5eSRod Evans# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
24d29b2c44Sab196087# Use is subject to license terms.
25d29b2c44Sab196087#
26cf9a187cSAndy Fiddaman# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
27cf9a187cSAndy Fiddaman#
28d29b2c44Sab196087
29d29b2c44Sab196087include		../../../../../lib/Makefile.lib
30d29b2c44Sab196087include		../../../Makefile.com
31d29b2c44Sab196087
32d29b2c44Sab196087CAP_LIB=	cap.so
33d29b2c44Sab196087CAP_OBJ=	cap_msg.o cap32.o cap64.o
34d29b2c44Sab196087
35d29b2c44Sab196087DYN_LIB=	dyn.so
36d29b2c44Sab196087DYN_OBJ=	dyn_msg.o dyn32.o dyn64.o
37d29b2c44Sab196087
38d29b2c44Sab196087EHDR_LIB=	ehdr.so
39d29b2c44Sab196087EHDR_OBJ=	ehdr_msg.o ehdr32.o ehdr64.o
40d29b2c44Sab196087
41d29b2c44Sab196087PHDR_LIB=	phdr.so
42d29b2c44Sab196087PHDR_OBJ=	phdr_msg.o phdr32.o phdr64.o
43d29b2c44Sab196087
44d29b2c44Sab196087SHDR_LIB=	shdr.so
45d29b2c44Sab196087SHDR_OBJ=	shdr_msg.o shdr32.o shdr64.o
46d29b2c44Sab196087
47ad212f6fSab196087STR_LIB=	str.so
48ad212f6fSab196087STR_OBJ=	str_msg.o str32.o str64.o
49ad212f6fSab196087
50d29b2c44Sab196087SYM_LIB=	sym.so
51d29b2c44Sab196087SYM_OBJ=	sym_msg.o sym32.o sym64.o
52d29b2c44Sab196087
53d29b2c44Sab196087SYMINFO_LIB=	syminfo.so
54d29b2c44Sab196087SYMINFO_OBJ=	syminfo_msg.o syminfo32.o syminfo64.o
55d29b2c44Sab196087
56d29b2c44Sab196087ELFEDITLIBS=	$(CAP_LIB) $(DYN_LIB) $(EHDR_LIB) $(PHDR_LIB) \
57ad212f6fSab196087		$(SHDR_LIB) $(STR_LIB) $(SYM_LIB) $(SYMINFO_LIB)
58d29b2c44Sab196087
59d29b2c44Sab196087PICDIR=		pics
60d29b2c44Sab196087
61d29b2c44Sab196087CAP_PICS=	$(CAP_OBJ:%.o=$(PICDIR)/%.o)
62d29b2c44Sab196087DYN_PICS=	$(DYN_OBJ:%.o=$(PICDIR)/%.o)
63d29b2c44Sab196087EHDR_PICS=	$(EHDR_OBJ:%.o=$(PICDIR)/%.o)
64d29b2c44Sab196087PHDR_PICS=	$(PHDR_OBJ:%.o=$(PICDIR)/%.o)
65d29b2c44Sab196087SHDR_PICS=	$(SHDR_OBJ:%.o=$(PICDIR)/%.o)
66ad212f6fSab196087STR_PICS=	$(STR_OBJ:%.o=$(PICDIR)/%.o)
67d29b2c44Sab196087SYM_PICS=	$(SYM_OBJ:%.o=$(PICDIR)/%.o)
68d29b2c44Sab196087SYMINFO_PICS=	$(SYMINFO_OBJ:%.o=$(PICDIR)/%.o)
69d29b2c44Sab196087
70*69b1fd3fSRichard LoweLDLIBS +=	$(ELFLIBDIR) -lelf $(LDDBGLIBDIR) -llddbg \
71*69b1fd3fSRichard Lowe		$(CONVLIBDIR) -lconv -lc
72d29b2c44Sab196087
73d29b2c44Sab196087$(CAP_LIB):=		PICS = $(CAP_PICS)
74d29b2c44Sab196087$(DYN_LIB):=		PICS = $(DYN_PICS)
75d29b2c44Sab196087$(EHDR_LIB):=		PICS = $(EHDR_PICS)
76d29b2c44Sab196087$(PHDR_LIB):=		PICS = $(PHDR_PICS)
77d29b2c44Sab196087$(SHDR_LIB):=		PICS = $(SHDR_PICS)
78ad212f6fSab196087$(STR_LIB):=		PICS = $(STR_PICS)
79d29b2c44Sab196087$(SYM_LIB):=		PICS = $(SYM_PICS)
80d29b2c44Sab196087$(SYMINFO_LIB):=	PICS = $(SYMINFO_PICS)
81d29b2c44Sab196087
82d29b2c44Sab196087$(CAP_LIB):=		SONAME = $(CAP_LIB)
83d29b2c44Sab196087$(DYN_LIB):=		SONAME = $(DYN_LIB)
84d29b2c44Sab196087$(EHDR_LIB):=		SONAME = $(EHDR_LIB)
85d29b2c44Sab196087$(PHDR_LIB):=		SONAME = $(PHDR_LIB)
86d29b2c44Sab196087$(SHDR_LIB):=		SONAME = $(SHDR_LIB)
87ad212f6fSab196087$(STR_LIB):=		SONAME = $(STR_LIB)
88d29b2c44Sab196087$(SYM_LIB):=		SONAME = $(SYM_LIB)
89d29b2c44Sab196087$(SYMINFO_LIB):=	SONAME = $(SYMINFO_LIB)
90d29b2c44Sab196087
91d29b2c44Sab196087# All the modules use a shared mapfile
92d29b2c44Sab196087MAPFILES = ../common/mapfile-vers
93d29b2c44Sab196087
94d29b2c44Sab196087CPPFLAGS +=	-I../../../include -I../../../include/$(MACH) \
95*69b1fd3fSRichard Lowe		-I$(SRC)/lib/libc/inc  -D_REENTRANT
96d29b2c44Sab196087LLDFLAGS =	'-R$$ORIGIN/../../../lib'
97d29b2c44Sab196087LLDFLAGS64 =	'-R$$ORIGIN/../../../../lib/$(MACH64)'
98*69b1fd3fSRichard LoweLDFLAGS +=	$(LLDFLAGS)
99d29b2c44Sab196087DYNFLAGS +=	$(VERSREF)
100d29b2c44Sab196087
1017014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-switch
102d3b5f563SJohn LevonCERRWARN +=	$(CNOWARN_UNINIT)
1037014882cSRichard Lowe
104d29b2c44Sab196087BLTDEFS =	$(ELFEDITLIBS:%.so=%_msg.h)
105d29b2c44Sab196087BLTDATA =	$(ELFEDITLIBS:%.so=%_msg.c)
106d29b2c44Sab196087BLTFILES =	$(BLTDEFS) $(BLTDATA)
107d29b2c44Sab196087
108cf9a187cSAndy FiddamanCLEANFILES +=	$(BLTFILES) $(PICDIR)/*
109d29b2c44Sab196087CLOBBERFILES +=	$(ELFEDITLIBS)
110d29b2c44Sab196087
111d29b2c44Sab196087ROOTELFEDITDIR=		$(ROOT)/usr/lib/elfedit
112d29b2c44Sab196087ROOTELFEDITDIR64=	$(ROOT)/usr/lib/elfedit/$(MACH64)
113d29b2c44Sab196087ROOTELFEDITLIBS=	$(ROOTELFEDITDIR)/$(MTARG)$(CAP_LIB) \
114d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(DYN_LIB) \
115d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(EHDR_LIB) \
116d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(PHDR_LIB) \
117d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(SHDR_LIB) \
118ad212f6fSab196087			$(ROOTELFEDITDIR)/$(MTARG)$(STR_LIB) \
119d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(SYM_LIB) \
120d29b2c44Sab196087			$(ROOTELFEDITDIR)/$(MTARG)$(SYMINFO_LIB)
121d29b2c44Sab196087
122d29b2c44Sab196087
123d29b2c44Sab196087FILEMODE=	0755
124d29b2c44Sab196087
125d29b2c44Sab196087.PARALLEL:	$(ELFEDITLIBS)
126