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) 2010, Oracle and/or its affiliates. All rights reserved.
24#
25
26LIBRARY = libsmp.a
27VERS = .1
28
29OBJECTS = \
30	smp_engine.o \
31	smp_errno.o \
32	smp_plugin.o \
33	smp_subr.o
34
35include ../../../Makefile.lib
36include ../../Makefile.defs
37
38SRCS = $(OBJECTS:%.o=../common/%.c)
39C99MODE = $(C99_ENABLE)
40CPPFLAGS += -I../common -I. -D_REENTRANT
41$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
42CFLAGS += $(CCVERBOSE)
43LDLIBS += \
44	-lumem \
45	-lc
46LIBS =		$(DYNLIB) $(LINTLIB)
47ROOTLIBDIR =	$(ROOTSCSILIBDIR)
48ROOTLIBDIR64 =	$(ROOTSCSILIBDIR)/$(MACH64)
49
50CLEANFILES += \
51	../common/smp_errno.c
52
53#
54# On SPARC, gcc emits DWARF assembler directives for TLS data that are not
55# understood by the Sun assembler.  Until this problem is fixed, we turn down
56# the amount of generated debugging information, which seems to do the trick.
57#
58$(SPARC_BLD)CTF_FLAGS += -_gcc=-g1
59
60$(LINTLIB) :=	SRCS = $(SRCDIR)/$(LINTSRC)
61
62.KEEP_STATE:
63
64all : $(LIBS)
65
66lint : lintcheck
67
68../common/smp_errno.c: ../common/mkerrno.sh ../common/libsmp.h
69	sh ../common/mkerrno.sh < ../common/libsmp.h > $@
70
71pics/%.o: ../common/%.c
72	$(COMPILE.c) -o $@ $<
73	$(POST_PROCESS_O)
74
75include ../../../Makefile.targ
76include ../../Makefile.rootdirs
77