xref: /illumos-gate/usr/src/cmd/mdb/Makefile.libstand (revision 5d9d9091)
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
57c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
67c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
77c478bd9Sstevel@tonic-gate# with the License.
87c478bd9Sstevel@tonic-gate#
97c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
107c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
117c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
127c478bd9Sstevel@tonic-gate# and limitations under the License.
137c478bd9Sstevel@tonic-gate#
147c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
157c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
167c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
177c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
187c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
197c478bd9Sstevel@tonic-gate#
207c478bd9Sstevel@tonic-gate# CDDL HEADER END
217c478bd9Sstevel@tonic-gate#
227c478bd9Sstevel@tonic-gate#
237c478bd9Sstevel@tonic-gate# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
247c478bd9Sstevel@tonic-gate# Use is subject to license terms.
257c478bd9Sstevel@tonic-gate#
26fe441c75SGarrett D'Amore# Copyright 2022 Garrett D'Amore
27fe441c75SGarrett D'Amore#
287c478bd9Sstevel@tonic-gate
297c478bd9Sstevel@tonic-gate.KEEP_STATE:
307c478bd9Sstevel@tonic-gate.SUFFIXES:
317c478bd9Sstevel@tonic-gate
327c478bd9Sstevel@tonic-gateinclude ../../Makefile.libstand
337c478bd9Sstevel@tonic-gate
34fe441c75SGarrett D'AmoreSRCS += \
357c478bd9Sstevel@tonic-gate	bcmp.c \
367c478bd9Sstevel@tonic-gate	bcopy.c \
377c478bd9Sstevel@tonic-gate	bsearch.c \
387c478bd9Sstevel@tonic-gate	bzero.c \
397c478bd9Sstevel@tonic-gate	ctime.c \
407c478bd9Sstevel@tonic-gate	ctype.c \
417c478bd9Sstevel@tonic-gate	errno.c \
427c478bd9Sstevel@tonic-gate	getopt.c \
437c478bd9Sstevel@tonic-gate	memchr.c \
447c478bd9Sstevel@tonic-gate	memcmp.c \
457c478bd9Sstevel@tonic-gate	memcpy.c \
467c478bd9Sstevel@tonic-gate	memccpy.c \
477c478bd9Sstevel@tonic-gate	memmove.c \
487c478bd9Sstevel@tonic-gate	memset.c \
497c478bd9Sstevel@tonic-gate	qsort.c \
507c478bd9Sstevel@tonic-gate	string.c \
517c478bd9Sstevel@tonic-gate	strtol.c \
527c478bd9Sstevel@tonic-gate	strtoul.c
537c478bd9Sstevel@tonic-gate
54fdb2a7e9SToomas Soome
557c478bd9Sstevel@tonic-gate# We don't want thread-specific errno's in kmdb, as we're single-threaded.
567c478bd9Sstevel@tonic-gateDTS_ERRNO=
577c478bd9Sstevel@tonic-gate
587c478bd9Sstevel@tonic-gateINCDIRS = \
597c478bd9Sstevel@tonic-gate	../../../common/libstand \
607c478bd9Sstevel@tonic-gate	../../libstand \
617c478bd9Sstevel@tonic-gate	$(ROOT)/usr/include
627c478bd9Sstevel@tonic-gate
637c478bd9Sstevel@tonic-gate$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
647c478bd9Sstevel@tonic-gateCPPFLAGS = $(INCDIRS:%=-I%) -D_KMDB
657c478bd9Sstevel@tonic-gate
665a0af816SRobert Mustacchi#
675a0af816SRobert Mustacchi# We cannot currently use the stack protector in kmdb's standalone
685a0af816SRobert Mustacchi# environment.
695a0af816SRobert Mustacchi#
705a0af816SRobert MustacchiSTACKPROTECT = none
715a0af816SRobert Mustacchi
727c478bd9Sstevel@tonic-gate#
737c478bd9Sstevel@tonic-gate# kmdb is a kernel module, so we'll use the kernel's build flags.
747c478bd9Sstevel@tonic-gateCFLAGS64 += $(STAND_FLAGS_64)
757c478bd9Sstevel@tonic-gate
76*5d9d9091SRichard LoweASFLAGS += -D_ASM
77*5d9d9091SRichard LoweASFLAGS64 += -D_ASM
787c478bd9Sstevel@tonic-gate
797c478bd9Sstevel@tonic-gateLINTFLAGS += -n -errtags=yes
807c478bd9Sstevel@tonic-gateCLINTFILES = $(SRCS:%.c=%.ln)
817c478bd9Sstevel@tonic-gate
827014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses
837014882cSRichard Lowe
847c478bd9Sstevel@tonic-gateLIB = libstand.a
857c478bd9Sstevel@tonic-gateCOBJS = $(SRCS:%.c=%.o)
86*5d9d9091SRichard LoweOBJS = $(COBJS:%.S=%.o)
877c478bd9Sstevel@tonic-gate
887c478bd9Sstevel@tonic-gate.NO_PARALLEL:
897c478bd9Sstevel@tonic-gate.PARALLEL: $(OBJS) $(LINTFILES)
907c478bd9Sstevel@tonic-gate
917c478bd9Sstevel@tonic-gateinstall all: $(LIB)
927c478bd9Sstevel@tonic-gate
937c478bd9Sstevel@tonic-gate$(LIB): $(OBJS)
947c478bd9Sstevel@tonic-gate	$(AR) r $(LIB) $(OBJS)
957c478bd9Sstevel@tonic-gate
967c478bd9Sstevel@tonic-gateclobber clean:
977c478bd9Sstevel@tonic-gate	$(RM) $(LIB) $(OBJS) $(LINTFILES)
987c478bd9Sstevel@tonic-gate
997c478bd9Sstevel@tonic-gatelint: $(LINTFILES)
1007c478bd9Sstevel@tonic-gate	$(LINT) $(LINTFLAGS) $(LINTFILES)
1017c478bd9Sstevel@tonic-gate
1027c478bd9Sstevel@tonic-gate#
1037c478bd9Sstevel@tonic-gate# Dynamic rules for object construction
1047c478bd9Sstevel@tonic-gate#
1057c478bd9Sstevel@tonic-gate
1067c478bd9Sstevel@tonic-gate%.o: ../../../common/libstand/%.c
1077c478bd9Sstevel@tonic-gate	$(COMPILE.c) $<
1087c478bd9Sstevel@tonic-gate	$(CTFCONVERT_O)
1097c478bd9Sstevel@tonic-gate
1107c478bd9Sstevel@tonic-gate%.o: $(SRC)/common/util/%.c
1117c478bd9Sstevel@tonic-gate	$(COMPILE.c) $<
1127c478bd9Sstevel@tonic-gate	$(CTFCONVERT_O)
1137c478bd9Sstevel@tonic-gate
114*5d9d9091SRichard Lowe%.o: $(SRC)/common/util/i386/%.S
11589518a1cSdmick	$(COMPILE.s) $<
11689518a1cSdmick
1177c478bd9Sstevel@tonic-gate%.o: ../../libstand/%.c
1187c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $<
1197c478bd9Sstevel@tonic-gate	$(CTFCONVERT_O)
1207c478bd9Sstevel@tonic-gate
121*5d9d9091SRichard Lowe%.o: ../../libstand/%.S
1227c478bd9Sstevel@tonic-gate	$(COMPILE.s) -o $@ $<
123