aboutsummaryrefslogtreecommitdiffstats
path: root/shells/ksh93/Makefile
blob: e39512eb399e16d64ef25357f41ad6982bb5b8dc (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
# $FreeBSD$

# Make sure that your configuration DOES NOT set ANY gcc-related
# variables.  ksh93 will not compile if you set even the seemingly
# most unrelated variable related to gcc configuration.  This means
# especially any flag which attempts to set the cputype.  Setting the
# cputype does absolutely nothing except cause systems to fail in
# horrible ways.  For any modern processor, setting the cputype only
# serves to expose gcc bugs and does nothing to speed up any known
# program.  If you are really unconvinced, go ahead but do not
# complain to me about it.

PORTNAME=   ksh93
PORTVERSION=    ${KSHVERSION:S/-//g}
PORTREVISION=   1
CATEGORIES= shells
MASTER_SITES=   http://www.research.att.com/~gsf/download/tgz/
DISTFILES=  INIT.${INITVERSION}.tgz ast-ksh.${KSHVERSION}.tgz
DIST_SUBDIR=    ${PORTNAME}

MAINTAINER= sunpoet@FreeBSD.org
COMMENT=    Official AT&T release of KornShell 93

LICENSE=    EPL

OPTIONS_DEFINE= EXAMPLES STATIC

FETCH_ARGS= -Rr
FETCH_ENV=  HTTP_AUTH='basic:*:I accept www.opensource.org/licenses/cpl:.'
LDFLAGS+=   -lm
MAKE_ENV=   CCFLAGS="${CFLAGS}"
NO_WRKSUBDIR=   yes

MAN1=       ksh93.1

INITVERSION=    2013-05-24
KSHVERSION= 2012-08-01

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MSTATIC}
MAKE_ENV+=  LDFLAGS+=-static
.endif

post-patch:
    @${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|' \
        ${WRKSRC}/bin/package ${WRKSRC}/src/cmd/INIT/package.sh

do-build:
    @cd ${WRKSRC}/ && ${SETENV} -i ${MAKE_ENV} ${SH} bin/package flat make

do-install:
    ${INSTALL_PROGRAM} ${WRKSRC}/bin/ksh ${PREFIX}/bin/ksh93
    ${INSTALL_MAN} ${WRKSRC}/man/man1/sh.1 ${MAN1PREFIX}/man/man1/ksh93.1
.if ${PORT_OPTIONS:MEXAMPLES}
    ${MKDIR} ${EXAMPLESDIR}/
    cd ${WRKSRC}/fun/ && ${INSTALL_SCRIPT} dirs popd pushd ${EXAMPLESDIR}/
.endif

post-install:
    @${ECHO} "Updating /etc/shells"
    @${SED} -i '' '\|${PREFIX}/bin/ksh93|d' /etc/shells
    @${ECHO} ${PREFIX}/bin/ksh93 >> /etc/shells

test: build
    @cd ${WRKSRC}/src/cmd/ksh93/tests/ && \
        ${SETENV} SHELL=${WRKSRC}/bin/ksh ${WRKSRC}/bin/ksh shtests

.include <bsd.port.mk>