8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / cmd / idmap / idmapd / Makefile
bloba4ab35da95a845b77aa75c6238b40dae4090251e
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
22 # Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
23 # Copyright 2014 Nexenta Systems, Inc. All rights reserved.
26 PROG = idmapd
27 MANIFEST = idmap.xml
28 SERVEROBJS = \
29 adspriv_impl.o \
30 directory_provider_builtin.o \
31 directory_provider_nsswitch.o \
32 directory_provider_ad.o \
33 directory_server.o \
34 adutils.o \
35 dbutils.o \
36 idmap_config.o \
37 idmapd.o \
38 init.o \
39 idmap_lsa.o \
40 krb5_lookup.o \
41 nldaputils.o \
42 server.o \
43 wksids.o
45 GENOBJS = \
46 adspriv_srv.o \
47 rpc_svc.o
49 SERVERSRCS = $(SERVEROBJS:%.o=%.c)
50 GENSRCS = $(GENOBJS:%.o=%.c)
51 OBJS = $(SERVEROBJS) $(GENOBJS)
52 SRCS = $(SERVERSRCS)
53 POFILES = $(OBJS:%.o=%.po)
55 all := TARGET = all
56 install := TARGET = install
57 clean := TARGET = clean
58 clobber := TARGET = clobber
60 include ../../Makefile.cmd
62 CERRWARN += -_gcc=-Wno-type-limits
63 CERRWARN += -_gcc=-Wno-switch
64 CERRWARN += -_gcc=-Wno-uninitialized
66 TEXT_DOMAIN = SUNW_OST_OSLIB
67 XGETTEXT = $(GNUXGETTEXT)
68 XGETFLAGS = --foreign-user --strict -n -E --width=72 \
69 --omit-header --keyword=directoryError:2 \
70 --language=C --force-po
72 C99MODE = $(C99_ENABLE)
73 POFILE = $(PROG)_all.po
75 RPC_MSGOUT_OPT = -DRPC_MSGOUT=idmap_rpc_msgout
77 ROOTMANIFESTDIR = $(ROOTSVCSYSTEM)
78 $(ROOTMANIFEST) := FILEMODE= 444
79 RPCSVC= ../../../uts/common/rpcsvc
80 ADS_CMN=../../../lib/libads/common
82 INCS += -I. -I../../../lib/libidmap/common \
83 -I../../../lib/libsldap/common \
84 -I../../../lib/libadutils/common \
85 -I $(ADS_CMN) \
86 -I../../../lib/smbsrv/libsmb/common
88 # Should not have to do this, but the Kerberos includes are a mess.
89 INCS += -I $(ROOT)/usr/include/kerberosv5
91 $(OBJS) := CPPFLAGS += $(INCS) -D_REENTRANT
92 $(POFILE) := CPPFLAGS += $(INCS)
94 LINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2
95 LINTFLAGS += -xerroff=E_NAME_USED_NOT_DEF2
97 CFLAGS += $(CCVERBOSE)
98 LDLIBS += \
99 -lsqlite-sys \
100 -lsecdb \
101 -lsocket \
102 -lnsl \
103 -lidmap \
104 -lscf \
105 -lsldap \
106 -lldap \
107 -luuid \
108 -ladutils \
109 -lads \
110 -lumem \
111 -lnvpair \
112 -luutil \
113 -L $(ROOT)/usr/lib/smbsrv \
114 -lsmb
116 rpc_svc.o := CFLAGS += $(RPC_MSGOUT_OPT)
118 $(PROG) := MAPFILES = $(MAPFILE.INT) $(MAPFILE.NGB)
119 $(PROG) := LDFLAGS += $(MAPFILES:%=-M%) \
120 -R /usr/lib/smbsrv
122 DIRMODE = 0755
123 FILEMODE = 0555
125 lint_SRCS := CPPFLAGS += $(INCS) -D_REENTRANT $(RPC_MSGOUT_OPT)
127 .KEEP_STATE:
129 .PARALLEL: $(OBJS)
131 all: $(PROG)
133 $(PROG): $(OBJS) $$(MAPFILES)
134 $(LINK.c) -o $@ $(OBJS) $(LDLIBS)
135 $(POST_PROCESS)
137 $(POFILE): $(POFILES)
138 $(RM) $(POFILE)
139 cat $(POFILES) > $(POFILE)
141 install: all $(ROOTLIBPROG) $(ROOTMANIFEST)
143 check: $(CHKMANIFEST)
145 clean:
146 $(RM) $(OBJS) $(GENSRCS)
148 lint: lint_SRCS
150 lint_SRCS:
152 RPCGENFLAGS = -CMN
154 adspriv_srv.o : adspriv_srv.c
156 adspriv_srv.c:
157 $(RPCGEN) $(RPCGENFLAGS) -m $(ADS_CMN)/ads_priv.x > $@
159 rpc_svc.o : rpc_svc.c
161 rpc_svc.c : $(RPCSVC)/idmap_prot.x
162 $(RPCGEN) $(RPCGENFLAGS) -m $(RPCSVC)/idmap_prot.x > $@
164 include ../../Makefile.targ