xref: /src/krb5/lib/kadm5clnt/Makefile (revision 632ddb864ee89c275ff5f8f9079522dec33c0d3c)
1#
2# SPDX-License-Identifier: BSD-2-Clause
3#
4# Copyright (c) 2025 FreeBSD Foundation
5#
6# This sofware was developed by Cy Schubert <cy@FreeBSD.org>
7# under sponsorship from the FreeBSD Foundation.
8#
9
10.include <src.opts.mk>
11
12.include "../Makefile.inc"
13.include "${KRB5_SRCTOP}/Makefile.pc"
14
15LIB=		kadm5clnt_mit
16LDFLAGS+=	-Wl,--no-undefined
17LIBADD=		krb5profile gssrpc gssapi_krb5 krb5 k5crypto krb5support com_err
18VERSION_MAP=	${.CURDIR}/version.map
19PCFILES=	kadm-client.pc
20CLEANFILES+=	${PCFILES}
21
22SRCS=	alt_prof.c \
23	chpass_util.c \
24	logger.c \
25	kadm_rpc_xdr.c \
26	misc_free.c \
27	str_conv.c \
28	${GEN} \
29	${GENI}
30
31.include "${KRB5_SRCTOP}/lib/kadm5clnt/clnt/Makefile.inc"
32
33CFLAGS+=-I${KRB5_DIR}/lib \
34	-I${KRB5_DIR}/lib/kadm5 \
35	-I${KRB5_DIR}/include \
36	-I${KRB5_OBJTOP}/include/krb5_private \
37	-I${KRB5_SRCTOP}/include \
38	-I${KRB5_OBJTOP}/lib \
39	-I${KRB5_OBJTOP}/util/profile
40
41INCSDIR=${INCLUDEDIR}/kadm5
42INCS=	admin.h \
43	${GENI}
44
45KADM_ERR=	kadm_err.et
46KADM_ERR_C=	${KADM_ERR:S/.et$/.c/}
47KADM_ERR_H=	${KADM_ERR:S/.et$/.h/}
48CLEANFILES+=	${KADM_ERR_C} ${KADM_ERR_H}
49GEN+=		${KADM_ERR_C}
50GENI+=		${KADM_ERR_H}
51
52${KADM_ERR:[2..-1]}: .NOMETA
53${KADM_ERR_H}: ${KADM_ERR}
54	rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.c et-h-${.PREFIX}.h
55	cp ${.ALLSRC} et-h-${.PREFIX}.et
56	${COMPILE_ET} et-h-${.PREFIX}.et
57	mv et-h-${.PREFIX}.h ${.PREFIX}.h
58	rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.h
59
60${KADM_ERR_C}: ${KADM_ERR}
61	rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c et-c-${.PREFIX}.h
62	cp ${.ALLSRC} et-c-${.PREFIX}.et
63	${COMPILE_ET} et-c-${.PREFIX}.et
64	mv et-c-${.PREFIX}.c ${.PREFIX}.c
65	rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c
66
67CHPASS_UTIL_STRINGS_ERR=	chpass_util_strings.et
68CHPASS_UTIL_STRINGS_ERR_C=	${CHPASS_UTIL_STRINGS_ERR:S/.et$/.c/}
69CHPASS_UTIL_STRINGS_ERR_H=	${CHPASS_UTIL_STRINGS_ERR:S/.et$/.h/}
70CLEANFILES+=	${CHPASS_UTIL_STRINGS_ERR_C} ${CHPASS_UTIL_STRINGS_ERR_H}
71GEN+=		${CHPASS_UTIL_STRINGS_ERR_C}
72GENI+=		${CHPASS_UTIL_STRINGS_ERR_H}
73
74${CHPASS_UTIL_STRINGS_ERR:[2..-1]}: .NOMETA
75${CHPASS_UTIL_STRINGS_ERR_H}: ${CHPASS_UTIL_STRINGS_ERR}
76	rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.c et-h-${.PREFIX}.h
77	cp ${.ALLSRC} et-h-${.PREFIX}.et
78	${COMPILE_ET} et-h-${.PREFIX}.et
79	mv et-h-${.PREFIX}.h ${.PREFIX}.h
80	rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.h
81
82${CHPASS_UTIL_STRINGS_ERR_C}: ${CHPASS_UTIL_STRINGS_ERR}
83	rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c et-c-${.PREFIX}.h
84	cp ${.ALLSRC} et-c-${.PREFIX}.et
85	${COMPILE_ET} et-c-${.PREFIX}.et
86	mv et-c-${.PREFIX}.c ${.PREFIX}.c
87	rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c
88
89afterinstall:
90	${INSTALL_LIBSYMLINK} ${DEV_TAG_ARGS} ${SHLIB_LINK} \
91	    ${DESTDIR}${LIBDIR}/libkadm5clnt.so
92
93.include <bsd.lib.mk>
94
95all: ${PCFILES}
96
97.SUFFIXES: .h .c
98
99.PATH:	${KRB5_DIR}/build-tools \
100	${KRB5_DIR}/lib/kadm5
101