aboutsummaryrefslogtreecommitdiffstats
path: root/audio/boodler/Makefile
blob: 792d847677fb7d30ed695cb62b3f02fdf8cbac31 (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
# New ports collection makefile for:    boodler
# Date created:     2003/12/30
# Whom:         Dan Pelleg <daniel+boodler@pelleg.org>
#
# $FreeBSD$
#

PORTNAME=   boodler
PORTVERSION=    1.5.3
PORTREVISION=   1
CATEGORIES= audio
MASTER_SITES=   http://www.eblong.com/zarf/boodler/
DISTFILES=  boodler-153.tar.gz boodler-snd-021902.tar.gz

MAINTAINER= daniel+boodler@pelleg.org
COMMENT=    A programmable soundscape tool

RESTRICTED= no commercial use
RESTRICTED_FILES=   boodler-snd-021902.tar.gz
USE_GMAKE=  yes
USE_PYTHON= yes
DRIVER?=    oss
WRKSRC=     ${WRKDIR}/${PORTNAME}
BHOME=      ${PREFIX}/share/boodler
USE_LDCONFIG=   yes
LDCONFIG_DIRS=  %%PREFIX%%/share/boodler/boodle

pre-everything::
    @${ECHO} ""
    @${ECHO} "The following build options are available for Boodler:"
    @${ECHO} ""
    @${ECHO} "      DRIVER=OSS  Configure to use /dev/dsp."
    @${ECHO} "      DRIVER=ESD  Configure to use EsounD."
    @${ECHO} "      DRIVER=FILE Configure to write raw PCM data to a file."
    @${ECHO} ""
    @${ECHO} "Boodler can only be configured to use one of these"
    @${ECHO} "interfaces. The default is to use OSS."
    @${ECHO} ""

.if ${DRIVER:L} == "oss"
# Probably nothing here...
.endif

.if ${DRIVER:L} == "esd"
LIB_DEPENDS+=   esd.2:${PORTSDIR}/audio/esound
PKGNAMESUFFIX=  -esd
.endif

.if ${DRIVER:L} == "file"
PKGNAMESUFFIX=  -file
.endif

.include <bsd.port.pre.mk>

.if ${ARCH} == "amd64" || ${ARCH} == "ia64"
PIC=    --PIC
.endif

.if ${ARCH} == "sparc64"
BROKEN=     does not compile on sparc64
.endif

post-patch:
    ${REINPLACE_CMD} -e "s|^booroot=.*|booroot=${PREFIX}/share/boodler|" ${WRKSRC}/wrapper/boodler
    @${RMDIR} ${WRKDIR}/boodler-snd/string

do-build:
    (cd ${WRKSRC} && ${PYTHON_CMD} configure.py --driver ${DRIVER:L} ${PIC} --include ${PREFIX}/include --lib ${PREFIX}/lib && make)
    @${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py ${WRKSRC}/effects ${WRKSRC}/boodle/

do-install:
    @${ECHO_MSG} "Installing files"
    @${INSTALL_SCRIPT} ${WRKSRC}/wrapper/boodler ${PREFIX}/bin/
    @${MKDIR} ${BHOME}
    @${INSTALL_SCRIPT} ${WRKSRC}/boodler.py ${BHOME}
    @${MKDIR} ${BHOME}/boodle/ ${BHOME}/effects/ ${BHOME}/boodler-snd/
    @${CHMOD} -R u+w,a+r,og-w ${WRKDIR}/boodler-snd
    @${FIND} ${WRKDIR}/boodler-snd -type d -print0 | ${XARGS} -0 ${CHMOD} 755
    @cd ${WRKDIR} && ${CP} -pPR boodler/boodle boodler/effects boodler-snd ${BHOME}
.if !defined(NOPORTDOCS)
    @${MKDIR} ${DOCSDIR}
    @${INSTALL_DATA} ${WRKSRC}/doc/*.html ${DOCSDIR}
.endif
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>