aboutsummaryrefslogtreecommitdiffstats
path: root/lang/pike78/Makefile
blob: a382b57fcbf9b27b38489e3b0897ed9e07b93aa6 (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
# $FreeBSD$

PORTNAME=   pike78
PORTVERSION=    7.8.852
CATEGORIES= lang
MASTER_SITES=   http://pike.ida.liu.se/pub/pike/all/${PORTVERSION}/ \
        ftp://pike.ida.liu.se/pub/pike/beta/${PORTVERSION}/ \
        http://pike.ida.liu.se/pub/pike/beta/${PORTVERSION}/ \
        ftp://ftp.caudium.net/pike/official_releases/${PORTVERSION}/
DISTNAME=   Pike-v${PORTVERSION}

MAINTAINER= johans@FreeBSD.org
COMMENT=    A dynamic programming language with a syntax similar to C++

LIB_DEPENDS=    libjpeg.so:${PORTSDIR}/graphics/jpeg \
        libtiff.so:${PORTSDIR}/graphics/tiff \
        libgdbm.so:${PORTSDIR}/databases/gdbm \
        libpcre.so:${PORTSDIR}/devel/pcre \
        libgmp.so:${PORTSDIR}/math/gmp \
        libnettle.so:${PORTSDIR}/security/nettle

CONFLICTS=  pike7[26]-[0-9]*

OPTIONS_DEFINE= TTF FREETYPE MYSQL PGSQL
OPTIONS_DEFAULT=TTF FREETYPE MYSQL
NO_OPTIONS_SORT=yes
TTF_DESC?=      Enable FreeType 1 (libttf) font rendering engine
TTF_LIB_DEPENDS=    libttf.so:${PORTSDIR}/print/freetype
TTF_CONFIGURE_WITH= ttflib
FREETYPE_LIB_DEPENDS=   libfreetype.so:${PORTSDIR}/print/freetype2
FREETYPE_CONFIGURE_WITH=freetype
MYSQL_USE=      mysql=yes
MYSQL_CONFIGURE_WITH=   mysql
PGSQL_USE=      pgsql=yes
PGSQL_CONFIGURE_WITH=   pgsql

CFLAGS+=    -ffast-math -fomit-frame-pointer

GNU_CONFIGURE=  yes
CONFIGURE_ENV=  CPPFLAGS+=${PTHREAD_CFLAGS} M4="/usr/bin/m4 -g"
CONFIGURE_ARGS+=    --without-debug \
         --with-thread-library=${PTHREAD_LIBS} \
         --with-double-precision \
         --with-long-double-precision \
         --disable-rpath \
         --without-rtldebug \
         --without-cdebug \
         --without-copt \
         --without-security \
         --with-oob \
         --without-poll \
         --without-devpoll \
         --with-max-fd=60000 \
         --with-gmp \
         --with-zlib \
         --with-threads \
         --with-readline \
         --with-jpeg \
         --with-tiff \
         --with-gdbm \
         --with-perl \
         --with-relocatable-dumped-modules \
         --without-GL --without-GLUT \
         --without-GTK \
         --without-ffmpeg \
         --without-fftw \
         --without-glade \
         --without-gnome \
         --without-gssapi \
         --without-java \
         --without-libglade-config \
         --without-libpdf --without-libpanda \
         --without-machine-code \
         --without-msql \
         --without-odbc \
         --without-sane \
         --without-svg \
         --without-sybase \
         --prefix=${PREFIX}

USES=       bison gettext gmake perl5

PLIST_FILES=    bin/pike bin/pike78 bin/hilfe \
        man/man1/pike.1.gz

ONLY_FOR_ARCHS= i386 amd64

do-configure:
    @${MAKE} -C ${WRKSRC} configure CONFIGUREARGS="${CONFIGURE_ARGS}"

post-patch:
    @${REINPLACE_CMD} -e 's| -lgmp| -L${LOCALBASE}/lib -lgmp|' \
        ${WRKSRC}/src/modules/Gmp/configure ${WRKSRC}/src/modules/_Image_XFace/configure
    @${REINPLACE_CMD} -e 's|%%PTHREAD_CFLAGS%%|${PTHREAD_CFLAGS}|' \
        -e 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|' \
        -e 's|,-Bshareable|& -shared|' \
        ${WRKSRC}/src/configure
    @${REINPLACE_CMD} -e '/install.*MANDIR/s|^|//|' \
        ${WRKSRC}/bin/install.pike

do-install:
    @cd ${WRKSRC} && ${GMAKE} ${INSTALL_TARGET} buildroot=${STAGEDIR}

post-install:
    ${STRIP_CMD} ${STAGEDIR}${PREFIX}/pike/${PORTVERSION}/bin/pike
    ${INSTALL_SCRIPT} ${WRKSRC}/bin/hilfe ${STAGEDIR}${PREFIX}/bin
    ${INSTALL_MAN} ${WRKSRC}/man/pike.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
    @cd ${STAGEDIR}${PREFIX} && \
        (${FIND} pike/${PORTVERSION} ! -type d && \
        ${FIND} pike/${PORTVERSION} -type d -empty -delete && \
        ${FIND} -d pike/${PORTVERSION} -type d | \
        ${SED} 's,^,@dirrm ,' && \
        ${ECHO_CMD} '@unexec rmdir %D/pike 2>/dev/null || true' \
        ) >> ${TMPPLIST}

verify:
    cd ${WRKSRC}; ${GMAKE} verify

.include <bsd.port.mk>