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 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
24 #
25 # Copyright (c) 2018, Joyent, Inc.
26
27 PROG= ldap_cachemgr
28
29 MANIFEST= client.xml
30 SVCMETHOD= ldap-client
31
32 include ../Makefile.cmd
33
34 #
35 # To compile in the $mgr SLP support
36 # 1. add -DSLP in to CPPFLAGS line
37 # 2. add cachemgr_discovery.o to the OBJS line
38 # 3. add -lslp in the LDLIBS line
39 #
40
41 ROOTLDAPLIB= $(ROOT)/usr/lib/ldap
42 ROOTLDAPPROG= $(PROG:%=$(ROOTLDAPLIB)/%)
43
44 ROOTMANIFESTDIR= $(ROOTSVCNETWORKLDAP)
45
46 OBJS= cachemgr.o cachemgr_getldap.o cachemgr_parse.o cachemgr_change.o
47
48 SRCS= ${OBJS:%.o=%.c}
49
50 CPPFLAGS += -D_REENTRANT -DSUN_THREADS \
51 -I$(SRC)/lib/libsldap/common \
52 -I$(SRC)/lib/libldap5/include/ldap \
53 -I$(SRC)/lib/libc/port/gen
54
55 CERRWARN += -_gcc=-Wno-parentheses
56 CERRWARN += -_gcc=-Wno-switch
57 CERRWARN += $(CNOWARN_UNINIT)
58
59 # not linted
60 SMATCH=off
61
62 # Message files
63 POFILE= ldap_cachemgr.po
64 POFILES= ${OBJS:%.o=%.po}
65
66 LINTOUT= lint.out
67
68 # TCOV_FLAG= -ql
69
70 LDLIBS += -lumem -lsldap
71
72 # install macros and rule
73 #
74
75 .KEEP_STATE:
76
77 clean := TARGET= clean
78 clobber := TARGET= clobber
79
80 $(ROOTSVCMETHOD) := FILEMODE = 0555
81
82 all: $(PROG)
83
84 ${PROG}: ${OBJS}
85 ${LINK.c} ${OPT} -o $@ ${OBJS} ${LDLIBS}
86 ${POST_PROCESS}
87
88 $(ROOTLDAPLIB):
89 $(INS.dir)
90
91 $(ROOTLDAPLIB)/%: %
92 $(INS.file)
93
94 lint := LINTFLAGS=-x -b -u -h
95
96 lint:
97 $(LINT.c) ${SRCS} > $(LINTOUT) 2>&1
98
99 cstyle:
100 ${CSTYLE} ${SRCS}
101
102 install: all $(ROOTLDAPLIB) $(ROOTLDAPPROG) $(ROOTMANIFEST) $(ROOTSVCMETHOD)
103
104 check: $(CHKMANIFEST)
105
106 clean:
107 $(RM) $(OBJS) $(LINTOUT)
108
109 $(POFILE): $(POFILES)
110 $(RM) $@
111 cat $(POFILES) > $@
112
113 include $(SRC)/cmd/Makefile.targ