aboutsummaryrefslogtreecommitdiffstats
path: root/security/krb5-appl/Makefile
blob: f79ac94277f7e27133b7dbc6edc21e5ab85d0f67 (plain) (blame)
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# Created by: cy@FreeBSD.org
# $FreeBSD$

PORTNAME=       krb5-appl
PORTVERSION=        1.0.3
PORTREVISION=       1
CATEGORIES=     security
MASTER_SITES=       http://web.mit.edu/kerberos/dist/${PORTNAME}/${PORTVERSION:C/^[0-9]*\.[0-9]*/&X/:C/X\.[0-9]*$//:C/X//}/
PATCH_SITES=        http://web.mit.edu/kerberos/advisories/
DISTNAME=       ${PORTNAME}-${PORTVERSION}-signed
EXTRACT_SUFX=       .tar

MAINTAINER=     cy@FreeBSD.org
COMMENT=        Authentication system developed at MIT, successor to Kerberos IV

BUILD_DEPENDS=      gm4:${PORTSDIR}/devel/m4 \
            krb5-config:${PORTSDIR}/security/krb5

CONFLICTS=      krb4-[0-9]* krb5-1.[0-7].* heimdal-[0-9]* srp-[0-9]*

LATEST_LINK=        ${PORTNAME}-1
KERBEROSV_URL=      http://web.mit.edu/kerberos/
USE_OPENSSL=        yes
USES=           gmake perl5 gssapi:mit
USE_PERL5=      build
USE_LDCONFIG=       yes
USE_CSTD=       gnu89
USE_AUTOTOOLS=      autoheader autoconf
CONFIGURE_ARGS?=    --enable-shared --with-krb5=${PREFIX}/bin/krb5-config
CONFIGURE_ENV=      INSTALL="${INSTALL}" YACC=/usr/bin/yacc
MAKE_ARGS=      INSTALL="${INSTALL}"
PATCH_DIST_STRIP=   -p1

OPTIONS_DEFINE= KRB5_RENAME_FTP KRB5_RENAME_TELNET KRB5_RENAME_RLOGIN KRB5_RENAME_RSH KRB5_RENAME_RCP
OPTIONS_DEFAULT=    KRB5_PORT
OPTIONS_SINGLE=     KRB5_VERSION
OPTIONS_SINGLE_KRB5_VERSION=    KRB5_PORT KRB5_111_PORT KRB5_112_PORT
KRB5_RENAME_FTP_DESC=       Rename ftp to kftp
KRB5_RENAME_TELNET_DESC=    Rename telnet to ktelnet
KRB5_RENAME_RLOGIN_DESC=    Rename rlogin to krlogin
KRB5_RENAME_RSH_DESC=       Rename rsh to krsh
KRB5_RENAME_RCP_DESC=       Rename rcp to krcp
KRB5_PORT_DESC=         Depend on security/krb5
KRB5_111_PORT_DESC=     Depend on security/krb5-111
KRB5_112_PORT_DESC=     Depend on security/krb5-112

.include <bsd.port.pre.mk>

.if ${PORT_OPTIONS:MKRB5_PORT}
LIB_DEPENDS=        libkrb5support.so:${PORTSDIR}/security/krb5
RUN_DEPENDS=        kinit:${PORTSDIR}/security/krb5
.elif ${PORT_OPTIONS:MKRB5_111_PORT}
LIB_DEPENDS=        libkrb5support.so:${PORTSDIR}/security/krb5-111
RUN_DEPENDS=        kinit:${PORTSDIR}/security/krb5-111
.elif ${PORT_OPTIONS:MKRB5_112_PORT}
LIB_DEPENDS=        libkrb5support.so:${PORTSDIR}/security/krb5-112
RUN_DEPENDS=        kinit:${PORTSDIR}/security/krb5-112
.else
BROKEN=         krb5 dependency not selected
.endif

.if ${PORT_OPTIONS:MKRB5_DOC}
BUILD_DEPENDS+=     texi2dvi:${PORTSDIR}/print/texinfo \
            dvips:${PORTSDIR}/print/dvipsk-tetex
INFO=           krb5-admin krb5-install krb5-user
.endif

.if defined(KRB5_HOME)
PREFIX=         ${KRB5_HOME}
.if ${KRB5_HOME} != ${LOCALBASE}
BROKEN=         LIB_DEPENDS when using KRB5_HOME is broken
.endif
.endif

CFLAGS+=        -I${PREFIX}/include
LDFLAGS+=       -L${PREFIX}/lib

.if ${PORT_OPTIONS:MKRB5_RENAME_FTP}
PROGRAM_TRANSFORM_NAME+=    s/^ftp/kftp/;
PLIST_SUB+=     FTP_PROG="kftp"
.else
PLIST_SUB+=     FTP_PROG="ftp"
.endif

.if ${PORT_OPTIONS:MKRB5_RENAME_TELNET}
PROGRAM_TRANSFORM_NAME+=    s/^telnet/ktelnet/;
PLIST_SUB+=     TELNET_PROG="ktelnet"
.else
PLIST_SUB+=     TELNET_PROG="telnet"
.endif

.if ${PORT_OPTIONS:MKRB5_RENAME_RLOGIN}
PLIST_SUB+=     RLOGIN_PROG="krlogin"
PROGRAM_TRANSFORM_NAME+=    s/^rlogin/krlogin/;
.else
PLIST_SUB+=     RLOGIN_PROG="rlogin"
.endif

.if ${PORT_OPTIONS:MKRB5_RENAME_RSH}
PLIST_SUB+=     RSH_PROG="krsh"
PROGRAM_TRANSFORM_NAME+=    s/^rsh/krsh/;
.else
PLIST_SUB+=     RSH_PROG="rsh"
.endif

.if ${PORT_OPTIONS:MKRB5_RENAME_RCP}
PROGRAM_TRANSFORM_NAME+=    s/^rcp/krcp/;
PLIST_SUB+=     RCP_PROG="krcp"
.else
PLIST_SUB+=     RCP_PROG="rcp"
.endif

.if defined(PROGRAM_TRANSFORM_NAME) && ${PROGRAM_TRANSFORM_NAME} != ""
CONFIGURE_ARGS+=    --program-transform-name="${PROGRAM_TRANSFORM_NAME}"
.endif

WRKSRC=         ${WRKDIR}/${PORTNAME}-${PORTVERSION}

HTML_DOC_DIR=       ${WRKDIR}/${PORTNAME}-${PORTVERSION}/doc
HTML_DOCS=      ftp.html kdestroy.html kinit.html klist.html \
            kpasswd.html krb5-admin.html \
            krb5-install.html krb5-user.html ksu.html \
            rcp.html rlogin.html rsh.html telnet.html

CONFIGURE_ARGS+=    CPPFLAGS="-I${OPENSSLINC} -L${OPENSSLLIB}"

post-extract:
    @${TAR} -C ${WRKDIR} -xzf ${WRKDIR}/${PORTNAME}-${PORTVERSION}.tar.gz --no-same-owner --no-same-permissions
    @${RM} ${WRKDIR}/${PORTNAME}-${PORTVERSION}.tar.gz ${WRKDIR}/${PORTNAME}-${PORTVERSION}.tar.gz.asc

post-install:
    @${ECHO} "------------------------------------------------------"
    @${ECHO} "This port of MIT Kerberos 5 includes remote login     "
    @${ECHO} "daemons (telnetd and klogind).  These daemons default "
    @${ECHO} "to using the system login program (/usr/bin/login).   "
    @${ECHO} "Please see the file                                   "
    @${ECHO} "${PREFIX}/share/doc/krb5/README.FreeBSD"
    @${ECHO} "for more information.                                 "
    @${ECHO} "------------------------------------------------------"

.include <bsd.port.post.mk>