xref: /titanic_52/usr/src/cmd/mdb/Makefile.libstandctf (revision 7fd791373689a6af05e27efec3b1ab556e02aa23)
17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
524da5b34Srie# Common Development and Distribution License (the "License").
624da5b34Srie# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
217c478bd9Sstevel@tonic-gate#
2224da5b34Srie# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate# Use is subject to license terms.
247c478bd9Sstevel@tonic-gate#
25*7fd79137SRobert Mustacchi# Copyright 2018 Joyent, Inc.
26*7fd79137SRobert Mustacchi#
277c478bd9Sstevel@tonic-gate
287c478bd9Sstevel@tonic-gate.KEEP_STATE:
297c478bd9Sstevel@tonic-gate
307c478bd9Sstevel@tonic-gateCTF_COMMON_SRCS = \
317c478bd9Sstevel@tonic-gate	ctf_create.c \
327c478bd9Sstevel@tonic-gate	ctf_decl.c \
337c478bd9Sstevel@tonic-gate	ctf_error.c \
347c478bd9Sstevel@tonic-gate	ctf_hash.c \
357c478bd9Sstevel@tonic-gate	ctf_labels.c \
367c478bd9Sstevel@tonic-gate	ctf_lookup.c \
377c478bd9Sstevel@tonic-gate	ctf_open.c \
387c478bd9Sstevel@tonic-gate	ctf_types.c \
397c478bd9Sstevel@tonic-gate	ctf_util.c
407c478bd9Sstevel@tonic-gate
417c478bd9Sstevel@tonic-gateCTF_STUB_SRCS = \
427c478bd9Sstevel@tonic-gate	ctf_subr.c
437c478bd9Sstevel@tonic-gate
447c478bd9Sstevel@tonic-gateMAPFILE = ../../../common/libstandctf/mapfile
457c478bd9Sstevel@tonic-gate
467c478bd9Sstevel@tonic-gate$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
477c478bd9Sstevel@tonic-gateCPPFLAGS += -I$(SRC)/common/ctf -I../../../common -DCTF_OLD_VERSIONS -D_MDB \
480a47c91cSRobert Mustacchi    -Dvsnprintf=ctf_vsnprintf -Dassfail=kmdb_prom_assfail
497c478bd9Sstevel@tonic-gate
50*7fd79137SRobert MustacchiCSTD = $(CSTD_GNU99)
51*7fd79137SRobert MustacchiC99LMODE = -Xc99=%all
52*7fd79137SRobert Mustacchi
537c478bd9Sstevel@tonic-gate#
547c478bd9Sstevel@tonic-gate# kmdb is a kernel module, so we'll use the kernel's build flags.
557c478bd9Sstevel@tonic-gateCFLAGS64 += $(STAND_FLAGS_64)
567c478bd9Sstevel@tonic-gate
5724da5b34SrieLDFLAGS = $(ZNOVERSION) $(BREDUCE) -M $(MAPFILE) -dy -r
587c478bd9Sstevel@tonic-gate
597c478bd9Sstevel@tonic-gateLIB = libstandctf.so
607c478bd9Sstevel@tonic-gateOBJS = $(CTF_COMMON_SRCS:%.c=%.o) $(CTF_STUB_SRCS:%.c=%.o)
617c478bd9Sstevel@tonic-gateLINTFILES = $(OBJS:%.o=%.ln)
627c478bd9Sstevel@tonic-gate
637c478bd9Sstevel@tonic-gateLINTFLAGS += -n -errtags=yes
647c478bd9Sstevel@tonic-gate
657014882cSRichard LoweCERRWARN += -_gcc=-Wno-uninitialized
667014882cSRichard Lowe
677c478bd9Sstevel@tonic-gate.NO_PARALLEL:
687c478bd9Sstevel@tonic-gate.PARALLEL: $(OBJS)
697c478bd9Sstevel@tonic-gate
707c478bd9Sstevel@tonic-gateinstall all: $(LIB)
717c478bd9Sstevel@tonic-gate
727c478bd9Sstevel@tonic-gate$(LIB): $(OBJS) $(MAPFILE)
737c478bd9Sstevel@tonic-gate	$(LD) $(LDFLAGS) -o $@ $(OBJS)
747c478bd9Sstevel@tonic-gate
757c478bd9Sstevel@tonic-gateclobber clean:
767c478bd9Sstevel@tonic-gate	$(RM) $(LIB) $(OBJS) $(LINTFILES)
777c478bd9Sstevel@tonic-gate
787c478bd9Sstevel@tonic-gatelint: $(LINTFILES)
797c478bd9Sstevel@tonic-gate	$(LINT) $(LINTFLAGS) $(LINTFILES)
807c478bd9Sstevel@tonic-gate
817c478bd9Sstevel@tonic-gate#
827c478bd9Sstevel@tonic-gate# Dynamic rules for object construction
837c478bd9Sstevel@tonic-gate#
847c478bd9Sstevel@tonic-gate
857c478bd9Sstevel@tonic-gate%.o: ../../../common/libstandctf/%.c
867c478bd9Sstevel@tonic-gate	$(COMPILE.c) $<
877c478bd9Sstevel@tonic-gate	$(CTFCONVERT_O)
887c478bd9Sstevel@tonic-gate
897c478bd9Sstevel@tonic-gate%.o: $(SRC)/common/ctf/%.c
907c478bd9Sstevel@tonic-gate	$(COMPILE.c) $<
917c478bd9Sstevel@tonic-gate	$(CTFCONVERT_O)
927c478bd9Sstevel@tonic-gate
937c478bd9Sstevel@tonic-gate#
947c478bd9Sstevel@tonic-gate# Lint
957c478bd9Sstevel@tonic-gate#
967c478bd9Sstevel@tonic-gate
977c478bd9Sstevel@tonic-gate%.ln: ../../../common/libstandctf/%.c
987c478bd9Sstevel@tonic-gate	$(LINT.c) -c $<
997c478bd9Sstevel@tonic-gate
1007c478bd9Sstevel@tonic-gate%.ln: $(SRC)/common/ctf/%.c
1017c478bd9Sstevel@tonic-gate	$(LINT.c) -c $<
102