xref: /freebsd/krb5/lib/kadm5srv/Makefile (revision 4757b351ea9d59d71d4a38b82506d2d16fcd560d)
1#
2# SPDX-License-Idendifier: 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
14LIB=		kadm5srv_mit
15# SHLIB_MAJOR=	12
16LDFLAGS=-Wl,--no-undefined
17LIBADD=	krb5profile gssrpc gssapi_krb5 kdb5 krb5 k5crypto krb5support com_err
18VERSION_MAP=	${.CURDIR}/version.map
19
20SRCS=	alt_prof.c \
21	chpass_util.c \
22	logger.c \
23	kadm_rpc_xdr.c \
24	misc_free.c \
25	str_conv.c \
26	${SRCS_SRV} \
27	${GEN}
28
29.include "${KRB5_SRCTOP}/lib/kadm5srv/srv/Makefile.inc"
30
31GEN=	kadm_err.c kadm_err.h chpass_util_strings.c chpass_util_strings.h
32CLEANFILES=	${GEN} ${GENI}
33
34CFLAGS+=-I${KRB5_DIR}/lib \
35	-I${KRB5_DIR}/lib/kadm5 \
36	-I${KRB5_DIR}/include \
37	-I${KRB5_OBJTOP}/include/krb5_private \
38	-I${KRB5_SRCTOP}/include \
39	-I${KRB5_OBJTOP}/lib \
40	-I${KRB5_OBJTOP}/lib/gssapi \
41	-I${KRB5_DIR}/lib/gssapi/krb5 \
42	-I${KRB5_DIR}/lib/gssapi/generic
43CWARNFLAGS.gcc+=-Wno-alloc-size-larger-than
44
45GEN_KADM_ERR=	kadm_err.et
46GEN_KADM_ERR_C=	${GEN_KADM_ERR:S/.et$/.c/}
47GEN_KADM_ERR_H=	${GEN_KADM_ERR:S/.et$/.h/}
48CLEANFILES=	${GEN_KADM_ERR_C} ${GEN_KADM_ERR_H}
49GEN_ET=		${GEN_KADM_ERR_C}
50GENI_ET=	${GEN_KADM_ERR_H}
51
52${GEN_KADM_ERR:[2..-1]}: .NOMETA
53${GEN_KADM_ERR_H}: ${GEN_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${GEN_KADM_ERR_C}: ${GEN_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
67GEN_CHPASS_UTIL_STRINGS=	chpass_util_strings.et
68GEN_CHPASS_UTIL_STRINGS_C=	${GEN_CHPASS_UTIL_STRINGS:S/.et$/.c/}
69GEN_CHPASS_UTIL_STRINGS_H=	${GEN_CHPASS_UTIL_STRINGS:S/.et$/.h/}
70CLEANFILES+=	${GEN_CHPASS_UTIL_STRINGS_C} ${GEN_CHPASS_UTIL_STRINGS_H}
71GEN_ET+=	${GEN_CHPASS_UTIL_STRINGS_C}
72GENI_ET+=	${GEN_CHPASS_UTIL_STRINGS_H}
73
74${GEN_CHPASS_UTIL_STRINGS:[2..-1]}: .NOMETA
75${GEN_CHPASS_UTIL_STRINGS_H}: ${GEN_CHPASS_UTIL_STRINGS}
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${GEN_CHPASS_UTIL_STRINGS_C}: ${GEN_CHPASS_UTIL_STRINGS}
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
89.include <bsd.lib.mk>
90
91.SUFFIXES: .h .c .et
92
93.PATH:	${KRB5_DIR}/lib/kadm5
94