1# 2# CDDL HEADER START 3# 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. 7# 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. 12# 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] 18# 19# CDDL HEADER END 20# 21 22# 23# Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. 24# Copyright 2018 Joyent, Inc. 25# 26 27LIBRARY = libconv.a 28 29COMOBJS32 = cap_machelf32.o dynamic_machelf32.o \ 30 globals_machelf32.o sections_machelf32.o \ 31 symbols_machelf32.o symbols_sparc_machelf32.o 32 33COMOBJS64 = cap_machelf64.o dynamic_machelf64.o \ 34 globals_machelf64.o sections_machelf64.o \ 35 symbols_machelf64.o symbols_sparc_machelf64.o 36 37COMOBJS= arch.o audit.o \ 38 c_literal.o \ 39 cap.o config.o \ 40 corenote.o data.o \ 41 deftag.o demangle.o \ 42 dl.o dwarf.o \ 43 dwarf_ehe.o dynamic.o \ 44 elf.o entry.o \ 45 globals.o group.o \ 46 lddstub.o map.o \ 47 phdr.o relocate.o \ 48 relocate_i386.o relocate_amd64.o \ 49 relocate_sparc.o sections.o \ 50 segments.o strproc.o \ 51 symbols.o syminfo.o \ 52 tokens.o time.o \ 53 version.o 54 55ELFCAP_OBJS= elfcap.o 56 57ASOBJS= vernote.o 58 59BLTOBJS= arch_msg.o audit_msg.o \ 60 c_literal_msg.o \ 61 cap_msg.o config_msg.o \ 62 corenote_msg.o data_msg.o \ 63 deftag_msg.o demangle_msg.o \ 64 dl_msg.o dwarf_msg.o \ 65 dwarf_ehe_msg.o dynamic_msg.o \ 66 elf_msg.o entry_msg.o \ 67 globals_msg.o group_msg.o \ 68 map_msg.o lddstub_msg.o \ 69 phdr_msg.o relocate_amd64_msg.o \ 70 relocate_i386_msg.o relocate_sparc_msg.o \ 71 sections_msg.o segments_msg.o \ 72 symbols_msg.o symbols_sparc_msg.o \ 73 syminfo_msg.o time_msg.o \ 74 version_msg.o 75 76 77OBJECTS = $(COMOBJS) $(COMOBJS32) $(COMOBJS64) $(ELFCAP_OBJS) \ 78 $(ASOBJS) $(BLTOBJS) 79 80# 81# This library is unusual since it's a static archive of PIC objects. 82# Since static archives should never contain CTF data (regardless of 83# whether the object code is position-independent), we disable CTF. 84# 85NOCTFOBJS = $(OBJECTS) 86CTFMERGE_LIB = : 87 88include $(SRC)/lib/Makefile.lib 89include $(SRC)/cmd/sgs/Makefile.com 90 91CERRWARN += -_gcc=-Wno-type-limits 92CERRWARN += -_gcc=-Wno-switch 93 94CTFCONVERT_O= 95 96README_REVISION=../../packages/common/readme_revision 97ONLDREADME= ../../packages/common/SUNWonld-README 98 99PICS= $(OBJECTS:%=pics/%) 100 101CPPFLAGS += -I$(SRCBASE)/lib/libc/inc -I$(ELFCAP) \ 102 -I$(SRC)/common/sgsrtcid 103 104ARFLAGS= cr 105 106AS_CPPFLAGS= -P -D_ASM $(CPPFLAGS) 107 108BLTDATA= $(BLTOBJS:%.o=%.c) $(BLTOBJS:%.o=%.h) report_bufsize.h 109 110SRCS= ../common/llib-lconv 111LINTSRCS= $(COMOBJS:%.o=../common/%.c) \ 112 $(COMOBJS_NOMSG:%.o=../common/%.c) \ 113 $(ELFCOM_OBJS:%.o=$(ELFCAP)/%.c) ../common/lintsup.c 114LINTSRCS32 = $(COMOBJS32:%32.o=../common/%.c) 115LINTSRCS64 = $(COMOBJS64:%64.o=../common/%.c) 116 117# Since libconv uses dlopen(3C) to load libdemangle-sys.so (much like it did 118# for the old Sun Studio libdemangle.so) in order to avoid messy bootstrapping 119# problems, but it also needs the definitions from demangle-sys.h for 120# SYSDEM_LANG_AUTO, lint will complain about sysdemangle() being defined but not 121# used unless it is explicitly included during the lint pass 122$(LINTOUT32) := LDLIBS += -ldemangle-sys 123$(LINTOUT64) := LDLIBS += -ldemangle-sys 124 125SGSMSGTARG= $(BLTOBJS:%_msg.o=../common/%.msg) 126 127LINTFLAGS += -u -erroff=E_NAME_DECL_NOT_USED_DEF2 128LINTFLAGS64 += -u -erroff=E_NAME_DECL_NOT_USED_DEF2 129 130CLEANFILES += $(BLTDATA) $(LINTOUTS) bld_vernote vernote.s 131CLOBBERFILES += $(LINTLIBS) 132