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 27 LIBRARY = libconv.a 28 29 COMOBJS32 = cap_machelf32.o dynamic_machelf32.o \ 30 globals_machelf32.o sections_machelf32.o \ 31 symbols_machelf32.o symbols_sparc_machelf32.o 32 33 COMOBJS64 = cap_machelf64.o dynamic_machelf64.o \ 34 globals_machelf64.o sections_machelf64.o \ 35 symbols_machelf64.o symbols_sparc_machelf64.o 36 37 COMOBJS= 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 55 ELFCAP_OBJS= elfcap.o 56 57 ASOBJS= vernote.o 58 59 BLTOBJS= 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 77 OBJECTS = $(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 # 85 NOCTFOBJS = $(OBJECTS) 86 CTFMERGE_LIB = : 87 88 include $(SRC)/lib/Makefile.lib 89 include $(SRC)/cmd/sgs/Makefile.com 90 91 CERRWARN += -_gcc=-Wno-type-limits 92 CERRWARN += -_gcc=-Wno-switch 93 94 CTFCONVERT_O= 95 96 README_REVISION=../../packages/common/readme_revision 97 ONLDREADME= ../../packages/common/SUNWonld-README 98 99 PICS= $(OBJECTS:%=pics/%) 100 101 CPPFLAGS += -I$(SRCBASE)/lib/libc/inc -I$(ELFCAP) \ 102 -I$(SRC)/common/sgsrtcid 103 104 ARFLAGS= cr 105 106 AS_CPPFLAGS= -P -D_ASM $(CPPFLAGS) 107 108 BLTDATA= $(BLTOBJS:%.o=%.c) $(BLTOBJS:%.o=%.h) report_bufsize.h 109 110 SRCS= ../common/llib-lconv 111 LINTSRCS= $(COMOBJS:%.o=../common/%.c) \ 112 $(COMOBJS_NOMSG:%.o=../common/%.c) \ 113 $(ELFCOM_OBJS:%.o=$(ELFCAP)/%.c) ../common/lintsup.c 114 LINTSRCS32 = $(COMOBJS32:%32.o=../common/%.c) 115 LINTSRCS64 = $(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 125 SGSMSGTARG= $(BLTOBJS:%_msg.o=../common/%.msg) 126 127 LINTFLAGS += -u -erroff=E_NAME_DECL_NOT_USED_DEF2 128 LINTFLAGS64 += -u -erroff=E_NAME_DECL_NOT_USED_DEF2 129 130 CLEANFILES += $(BLTDATA) $(LINTOUTS) bld_vernote vernote.s 131 CLOBBERFILES += $(LINTLIBS)