1 #
   2 # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
   3 # Use is subject to license terms.
   4 #
   5 
   6 PROG= krb5kdc
   7 MANIFEST=       krb5kdc.xml
   8 
   9 OBJS    = \
  10         dispatch.o\
  11         do_as_req.o\
  12         do_tgs_req.o\
  13         extern.o\
  14         kdc_preauth.o\
  15         kdc_util.o\
  16         main.o\
  17         network.o\
  18         policy.o\
  19         replay.o \
  20         sock2p.o
  21 
  22 SRCS    = $(OBJS:.o=.c)
  23 
  24 DEFS =  -DHAVE_LIBSOCKET=1 -DHAVE_LIBNSL=1 \
  25         -DHAVE_SYSLOG_H=1 -DHAVE_STDARG_H=1 \
  26         -DHAVE_SYS_SELECT_H=1 -DHAVE_OPENLOG=1 \
  27         -DHAVE_SYSLOG=1 -DHAVE_CLOSELOG=1 -DHAVE_STRFTIME=1\
  28         -DHAVE_VSPRINTF=1 -DHAVE_COMPILE=1 -DHAVE_STEP=1 \
  29         -DHAVE_NETINET_IN_H=1 -DHAVE_INET_NTOP=1 \
  30         -DHAVE_SYS_SOCKIO_H=1 -DHAVE_SYS_SELECT_H=1
  31 
  32 CLOBBERFILES += $(RSRC) 
  33 
  34 include ../../Makefile.cmd
  35 include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
  36 
  37 POFILE = $(PROG).po
  38 POFILES = generic.po
  39 
  40 ROOTMANIFESTDIR=        $(ROOTSVCNETWORKSECURITY)
  41 
  42 CFLAGS += $(CCOPTS) $(DEFS) $(LOCALINCLUDE)
  43 # The SET macros in network.c will be mis-optimized if GCC believes it
  44 # may rely on undefined signed overflow behaviour.
  45 CFLAGS += -_gcc=-fno-strict-overflow
  46 
  47 CPPFLAGS += \
  48         -I$(SRC)/lib/gss_mechs/mech_krb5/include \
  49         -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5\
  50         -I$(SRC)/uts/common/gssapi/mechs/krb5/include \
  51         -DHAVE_SYSLOG_H=1 
  52 
  53 CERRWARN += -_gcc=-Wno-unused-variable
  54 CERRWARN += -_gcc=-Wno-unused-function
  55 CERRWARN += -_gcc=-Wno-type-limits
  56 CERRWARN += -_gcc=-Wno-implicit-function-declaration
  57 CERRWARN += -_gcc=-Wno-parentheses
  58 
  59 LDFLAGS += $(KRUNPATH) $(KERBRUNPATH)
  60 LDLIBS += -L$(ROOT_KLIBDIR) -L$(KRB5LIB) \
  61           -lmech_krb5 -lkdb -lkadm5srv -lnsl -lsocket -lbsm -lc
  62 
  63 .KEEP_STATE:
  64 
  65 all: $(PROG) 
  66 
  67 $(PROG):       $(OBJS)  
  68         $(LINK.c) $(OBJS) -o $@ $(LDLIBS)
  69         $(POST_PROCESS)
  70 
  71 $(KRB5LIBPROG):=        FILEMODE = 500
  72 
  73 install: $(KRB5LIBPROG) $(ROOTSVCMETHOD) $(ROOTMANIFEST)
  74 
  75 check:  $(CHKMANIFEST)
  76 
  77 clean:
  78         $(RM) $(OBJS)
  79 
  80 lint: lint_SRCS
  81 
  82 include ../../Makefile.targ
  83 
  84 $(POFILE): $(DERIVED_FILES) .WAIT $(POFILES)
  85         $(RM) $@
  86         $(CAT) $(POFILES) > $@
  87 
  88 generic.po: FRC
  89         $(RM) messages.po
  90         $(XGETTEXT) $(XGETFLAGS) `$(GREP) -l gettext *.[ch]`
  91         $(SED) "/^domain/d" messages.po > $@
  92         $(RM) messages.po
  93 
  94 FRC: