move 32-bit libs to lib/i386 subdirs & 64-bit libs to lib/
[unleashed.git] / usr / src / cmd / krb5 / slave / Makefile
blob181cbc9b81fbd16d13c6c13ebd32454b77adaf80
2 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
3 # Use is subject to license terms.
5 # Copyright (c) 2018, Joyent, Inc.
7 PROG1=kprop
8 PROG2=kpropd
9 PROG3=kprop_script
10 PROG=$(PROG1) $(PROG2) $(PROG3)
11 MANIFEST= krb5_prop.xml
13 OBJS = \
14 kprop.o\
15 utils.o\
16 kpropd.o \
17 kpropd_rpc.o \
18 iprop_xdr.o
20 COMMONOBJS= utils.o
21 COMMONSRCS= utils.c
22 CLIENTOBJS= kprop.o
23 CLIENTSRCS= kprop.c
24 SERVEROBJS= kpropd.o kpropd_rpc.o
25 SERVERSRCS= kpropd.c kpropd_rpc.c
26 DERIVED_OBJS= iprop_xdr.o
27 DERIVED_SRCS= iprop_xdr.c
28 SRCS = $(OBJS:.o=.c)
30 # Definitions needed to rpcgen iprop-related files
31 ISRC= iprop.h iprop_xdr.c
32 KRB5IPROPDIR= $(SRC)/cmd/krb5/iprop
33 CMD= grep -v "usr/src/cmd/krb5/iprop" > $@
35 DEFS = -DHAVE_LIBSOCKET=1 -DHAVE_LIBNSL=1 \
36 -DHAVE_COMPILE=1 \
37 -DHAVE_STEP=1
39 CLOBBERFILES += $(RSRC)
41 include ../../Makefile.cmd
42 include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
44 ROOTMANIFESTDIR= $(ROOTSVCNETWORKSECURITY)
46 TEXT_DOMAIN = SUNW_OST_OSCMD
47 POFILE = kprop.po
48 POFILES = generic.po
50 CFLAGS += $(CCOPTS) $(DEFS) $(LOCALINCLUDE)
51 CPPFLAGS += -I. \
52 -I$(KRB5IPROPDIR) \
53 -I$(SRC)/lib/gss_mechs/mech_krb5/include \
54 -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5\
55 -I$(SRC)/lib/krb5 \
56 -I$(SRC)/lib/krb5/kadm5 \
57 -I$(SRC)/uts/common/gssapi/mechs/krb5/include
59 CERRWARN += -Wno-unused-variable
60 CERRWARN += -Wno-unused-function
61 CERRWARN += -Wno-implicit-function-declaration
62 CERRWARN += -Wno-parentheses
63 CERRWARN += -Wno-uninitialized
64 CERRWARN += -Wno-unused-value
65 CERRWARN += -Wno-address
67 # not linted
68 SMATCH=off
70 LDFLAGS += $(KRUNPATH) $(KERBRUNPATH)
71 LDLIBS += -L$(ROOT_KLIBDIR) -lmech_krb5
72 $(PROG1) := LDLIBS += -L$(KRB5LIB) -lkadm5srv
73 $(PROG2) := LDLIBS += -L$(KRB5LIB) -lkdb -lkadm5clnt
75 .KEEP_STATE:
77 all: $(PROG)
79 $(PROG1): $(CLIENTOBJS) $(COMMONOBJS)
80 $(LINK.c) $(CLIENTOBJS) $(COMMONOBJS) -o $@ $(DEPLIBS) $(LDFLAGS) $(LDARGS) $(LDLIBS)
81 $(POST_PROCESS)
83 $(PROG2): $(SERVEROBJS) $(DERIVED_OBJS) $(COMMONOBJS) $(DEPLIBS)
84 $(LINK.c) $(SERVEROBJS) $(DERIVED_OBJS) $(COMMONOBJS) -o $@ $(DEPLIBS) $(LDFLAGS) $(LDARGS) $(LDLIBS)
85 $(POST_PROCESS)
87 # Rules to rpcgen-erate derived files from the iprop.x spec file
88 iprop.h: $(KRB5IPROPDIR)/iprop.x
89 $(RM) $@
90 $(RPCGEN) -h $(KRB5IPROPDIR)/iprop.x > $@
92 iprop_xdr.c: iprop.h $(KRB5IPROPDIR)/iprop.x
93 $(RM) $@
94 $(RPCGEN) -c $(KRB5IPROPDIR)/iprop.x | $(CMD)
96 # Make dependencies explicit so make sees it.
97 $(KRB5LIB)/$(PROG3): $(PROG3)
98 $(OBJS): iprop.h
100 install: $(KRB5LIBPROG) $(ROOTSVCMETHOD) $(ROOTMANIFEST)
102 check: $(CHKMANIFEST)
104 install_h:
105 clean:
106 $(RM) $(CLIENTOBJS) $(SERVEROBJS) $(DERIVED_OBJS) $(COMMONOBJS) $(PROG) $(ISRC)
108 include ../../Makefile.targ
110 $(POFILE): $(DERIVED_FILES) .WAIT $(POFILES)
111 $(RM) $@
112 $(CAT) $(POFILES) > $@
114 generic.po: FRC
115 $(RM) messages.po
116 $(XGETTEXT) $(XGETFLAGS) `$(GREP) -l gettext *.[ch]`
117 $(SED) "/^domain/d" messages.po > $@
118 $(RM) messages.po
120 FRC: