Import lang/squeak version 4.10.2
[dports.git] / lang / squeak / Makefile
1 # Created by: Roland Jesse <roland.jesse@gmx.net>
2 # $FreeBSD$
3
4 PORTNAME=       squeak
5 PORTVERSION=    4.10.2
6 CATEGORIES=     lang
7 MASTER_SITES=   http://www.squeakvm.org/unix/release/:vmsrc \
8                 http://ftp.squeak.org/${IMAGE_VERSION}/:src \
9                 ftp://squeak.org/4.1/:sqsrc \
10                 http://squeak.610t.org/patches/:mainsrc
11 DISTFILES=      Squeak-${VM_VERSION}-src${EXTRACT_SUFX}:vmsrc \
12                 Squeak${IMAGE_VERSION}.zip:src \
13                 ${SQUEAK_SRC}.gz:sqsrc
14 EXTRACT_ONLY=   Squeak-${VM_VERSION}-src${EXTRACT_SUFX}
15 DIST_SUBDIR=    ${PORTNAME}
16
17 MAINTAINER=     ports@FreeBSD.org
18 COMMENT=        Full Smalltalk 80 with portability to Unix, Mac, and Windows
19
20 LICENSE=        APACHE20 MIT
21 LICENSE_COMB=   multi
22
23 BUILD_DEPENDS=  cmake:${PORTSDIR}/devel/cmake \
24                 ${UNZIP_CMD}:${PORTSDIR}/archivers/unzip \
25                 v4l_compat>=1.0.20120501:${PORTSDIR}/multimedia/v4l_compat
26 LIB_DEPENDS=    libaudio.so:${PORTSDIR}/audio/nas \
27                 libffi.so:${PORTSDIR}/devel/libffi \
28                 libasound.so:${PORTSDIR}/audio/alsa-lib \
29                 libpulse-simple.so:${PORTSDIR}/audio/pulseaudio \
30                 libv4l2.so:${PORTSDIR}/multimedia/libv4l
31
32 ONLY_FOR_ARCHS= i386 amd64 powerpc
33
34 USES=           pkgconfig
35 USE_GL=         gl
36 HAS_CONFIGURE=  yes
37 USE_GSTREAMER=  yes
38
39 VM_VERSION=     ${PORTVERSION}.${SVN_VERSION}
40 SVN_VERSION=    2614
41 IMAGE_VERSION=  4.3
42 SQUEAK_SRC=     SqueakV41.sources
43 SQUEAK_LIB_DIR= ${PORTVERSION}-${SVN_VERSION}
44
45 WRKSRC=                 ${WRKDIR}/Squeak-${VM_VERSION}-src
46 CONFIGURE_WRKSRC=       ${WRKSRC}/build
47 BUILD_WRKSRC=           ${CONFIGURE_WRKSRC}
48 INSTALL_WRKSRC=         ${CONFIGURE_WRKSRC}
49 CONFIGURE_SCRIPT=       ../unix/cmake/configure
50 CONFIGURE_ARGS=         --prefix=${PREFIX}
51 CMAKE_SOURCE_PATH=      ../unix
52
53 SUB_FILES=      pkg-message
54 SUB_LIST=       SQUEAK_LIB_DIR=${SQUEAK_LIB_DIR}
55 PLIST_SUB=      SQUEAK_LIB_DIR=${SQUEAK_LIB_DIR}
56
57 # Plugin image must be writable, because of it copy to user's ~/.npsqueak/ and
58 # be updated.
59 SHAREMODE=      644
60
61 IMAGES=         Squeak${IMAGE_VERSION}/Squeak${IMAGE_VERSION}.image \
62                 Squeak${IMAGE_VERSION}/Squeak${IMAGE_VERSION}.changes
63
64 .include <bsd.port.pre.mk>
65
66 post-patch:
67 .if ${OSVERSION} > 900007
68         @${REINPLACE_CMD} -e 's,<utmp\.h>,<utmpx.h>,' \
69                 ${WRKSRC}/unix/plugins/PseudoTTYPlugin/openpty.h
70 .endif
71         @${REINPLACE_CMD} -e 's,return;,return 0;,' \
72                 ${WRKSRC}/Cross/plugins/Mpeg3Plugin/libmpeg/video/idct.c \
73                 ${WRKSRC}/Cross/plugins/Mpeg3Plugin/libmpeg/audio/layer3.c
74         @${REINPLACE_CMD} -e 's,return;,return 1;,' \
75                 ${WRKSRC}/Cross/plugins/Mpeg3Plugin/libmpeg/video/getpicture.c
76
77 pre-configure:
78         @${MKDIR} ${CONFIGURE_WRKSRC}
79
80 post-install:
81         ${GUNZIP_CMD} -c ${_DISTDIR}/${SQUEAK_SRC}.gz > \
82                 ${STAGEDIR}${PREFIX}/lib/squeak/${SQUEAK_LIB_DIR}/${SQUEAK_SRC}
83         ${UNZIP_CMD} -u ${_DISTDIR}/Squeak${IMAGE_VERSION}.zip \
84                 -d ${WRKDIR}
85         ${INSTALL_DATA} ${IMAGES:S,^,${WRKDIR}/,} \
86                 ${STAGEDIR}${PREFIX}/lib/squeak
87
88 .include <bsd.port.post.mk>