|
root / base / usr / src / cmd / krb5 / kadmin / cli / Makefile
Makefile Makefile 96 lines 2.4 KB
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#
# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
#
# Copyright (c) 2018, Joyent, Inc.

PROG= kadmin kadmin.local
SHFILES= k5srvutil
CLOBBERFILES= $(SHFILES)

KRB5SBINSHFILES= $(SHFILES:%=$(KRB5SBIN)/%)

COMMON_OBJS   = kadmin.o kadmin_ct.o ss_wrapper.o getdate.o keytab.o
RMT_OBJS= $(COMMON_OBJS) kadmin_rmt.o
# Hammerhead: keytab_loc.o compiled with -D_KADMIN_LOCAL_ to exclude
# kadm5_randkey_principal_old (only in libkadm5clnt, not libkadm5srv)
LOC_OBJS= kadmin.o kadmin_ct.o ss_wrapper.o getdate.o keytab_loc.o kadmin_loc.o
OBJS	= $(COMMON_OBJS) $(RMT_OBJS) $(LOC_OBJS)

include ../../../Makefile.cmd
include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5

POFILE = generic.po
POFILES = kadmin.po k5srvutil.po

DEFS = -DHAVE_LIBSOCKET=1 -DHAVE_LIBNSL=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_TIMEB_H=1 \
	-DHAVE_ALLOCA_H=1 -DHAVE_FTIME=1 -DHAVE_TIMEZONE

CPPFLAGS += -I$(SRC)/uts/common/gssapi/include/ \
		-I$(SRC)/uts/common/gssapi/mechs/krb5/include \
		-I$(SRC)/uts/common/gssapi/include \
		-I$(SRC)/cmd/krb5/iprop \
		-I$(SRC)/lib/krb5 \
		-I$(SRC)/lib/gss_mechs/mech_krb5/include $(DEFS)

CERRWARN += -Wno-implicit-function-declaration
CERRWARN += -Wno-unused-function
CERRWARN += -Wno-parentheses
CERRWARN += -Wno-unused-variable

# because of labels from yacc
getdate.o : CERRWARN += -Wno-unused-label

SMATCH=off

SHAREDLIBS = -lmech_krb5 -lss
# Hammerhead: GNU ld needs rpath-link for transitive deps (libdyn, libkdb) via libkadm5srv
LDFLAGS += -Wl,-rpath-link,$(ROOT)/usr/lib/krb5

CLLIBS = $(LDLIBS) $(KRUNPATH) $(KERBRUNPATH) \
	-L$(ROOT_KLIBDIR) -L$(KRB5LIB) $(SHAREDLIBS) -lkadm5clnt

SRVLIBS = $(LDLIBS) $(KRUNPATH) $(KERBRUNPATH) \
	-L$(ROOT_KLIBDIR) -L$(KRB5LIB) $(SHAREDLIBS) -lkadm5srv

kadmin.local:	DEFS += -D_KADMIN_LOCAL_

.KEEP_STATE:

all: $(PROG) $(SHFILES)

kadmin:	$(RMT_OBJS)
	$(LINK.c) $(RMT_OBJS) -o $@ $(CLLIBS)
	$(POST_PROCESS)

keytab_loc.o: keytab.c
	$(COMPILE.c) -D_KADMIN_LOCAL_ -o $@ $<
	$(POST_PROCESS_O)

kadmin.local:	$(LOC_OBJS)
	$(LINK.c) $(LOC_OBJS) -o $@ $(SRVLIBS)
	$(POST_PROCESS)

$(SHFILES): $(SHFILES).sh
	$(RM) $(SHFILES)
	$(CP) $(SHFILES).sh $(SHFILES)

install: $(KRB5SBINPROG) $(KRB5SBINSHFILES)

clean:
	$(RM) $(OBJS)

include ../../../Makefile.targ

$(POFILE): $(DERIVED_FILES) .WAIT $(POFILES)
	$(RM) $@
	$(CAT) $(POFILES) > $@

kadmin.po: FRC
	$(RM) messages.po
	$(XGETTEXT) $(XGETFLAGS) `$(GREP) -l gettext *.[ch]`
	$(SED) "/^domain/d" messages.po > $@
	$(RM) messages.po

FRC: