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 LIBRARY= libkadm5clnt.a
  28 VERS= .1
  29 
  30 CLNT_OBJS = clnt_policy.o \
  31         client_rpc.o \
  32         client_principal.o \
  33         client_init.o \
  34         clnt_privs.o \
  35         clnt_chpass_util.o \
  36         logger.o \
  37         changepw.o \
  38         chpw.o
  39 
  40 SHARED_OBJS = \
  41         alt_prof.o \
  42         chpass_util.o \
  43         kadm_rpc_xdr.o \
  44         misc_free.o \
  45         kadm_host_srv_names.o \
  46         str_conv.o
  47 
  48 OBJECTS= $(CLNT_OBJS) $(SHARED_OBJS)
  49 
  50 ISRCHDR= ../iprop.h
  51 KRB5IPROPDIR=   $(SRC)/cmd/krb5/iprop
  52 
  53 # include library definitions
  54 include ../../../Makefile.lib
  55 
  56 SRCS=           $(CLNT_OBJS:%.o=../%.c) \
  57                 $(SHARED_OBJS:%.o=../../%.c)
  58 
  59 LIBS=           $(DYNLIB)
  60 
  61 include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
  62 
  63 POFILE = $(LIBRARY:%.a=%.po)
  64 POFILES = generic.po
  65 
  66 #override liblink
  67 INS.liblink=    -$(RM) $@; $(SYMLINK) $(LIBLINKS)$(VERS) $@
  68 
  69 CPPFLAGS += -I.. -I../.. -I../../.. -I$(SRC)/lib/gss_mechs/mech_krb5/include \
  70         -I$(SRC)/lib/krb5 \
  71         -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5 \
  72         -I$(SRC)/uts/common/gssapi/ \
  73         -I$(SRC)/uts/common/gssapi/include/ \
  74         -I$(SRC)/uts/common/gssapi/mechs/krb5/include \
  75         -I$(SRC)/lib/gss_mechs/mech_krb5/krb5/os \
  76         -I$(KRB5IPROPDIR) \
  77         -DHAVE_STDLIB_H -DUSE_SOLARIS_SHARED_LIBRARIES \
  78         -DHAVE_LIBSOCKET=1 -DHAVE_LIBNSL=1 -DSETRPCENT_TYPE=void \
  79         -DENDRPCENT_TYPE=void -DHAVE_SYS_ERRLIST=1 -DNEED_SYS_ERRLIST=1 \
  80         -DHAVE_SYSLOG_H=1 -DHAVE_OPENLOG=1 -DHAVE_SYSLOG=1 -DHAVE_CLOSELOG=1 \
  81         -DHAVE_STRFTIME=1 -DHAVE_VSPRINTF=1 -DUSE_KADM5_API_VERSION=2
  82 
  83 CFLAGS +=       $(CCVERBOSE) -I..
  84 
  85 CERRWARN +=     -_gcc=-Wno-unused-function
  86 CERRWARN +=     -_gcc=-Wno-unused-variable
  87 CERRWARN +=     -_gcc=-Wno-parentheses
  88 CERRWARN +=     $(CNOWARN_UNINIT)
  89 
  90 SMOFF += all_func_returns,indenting,no_if_block
  91 
  92 LDLIBS +=       -lc
  93 
  94 .KEEP_STATE:
  95 
  96 all:    $(LIBS)
  97 
  98 # Rpcgen-erate iprop.h from the iprop.x spec file
  99 $(ISRCHDR):     $(KRB5IPROPDIR)/iprop.x
 100         $(RM)   $@
 101         $(RPCGEN) -h $(KRB5IPROPDIR)/iprop.x > $@
 102 
 103 # Explicitly state the dependancy on iprop.h
 104 $(LIBS): $(ISRCHDR)
 105 
 106 CLEANFILES +=   $(ISRCHDR)
 107 
 108 lint:   lintcheck
 109 
 110 # include library targets
 111 include ../../../Makefile.targ
 112 
 113 pics/%.o: ../../%.c
 114         $(COMPILE.c) -o $@ $<
 115         $(POST_PROCESS_O)
 116 
 117 FRC:
 118 
 119 generic.po: FRC
 120         $(RM) messages.po
 121         $(XGETTEXT) $(XGETFLAGS) `$(GREP) -l gettext ../*.[ch] ../../*.[ch]`
 122         $(SED) "/^domain/d" messages.po > $@
 123         $(RM) messages.po