aboutsummaryrefslogtreecommitdiffstats
path: root/audio/audacity/Makefile
blob: 9b99162c3a5b2ebc8f415396f9c4952967ba9aae (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
142
143
144
145
146
147
# Created by: Marc van Woerkom <3d@FreeBSD.org>
# $FreeBSD$

PORTNAME=   audacity
PORTVERSION=    2.1.3
CATEGORIES= audio
MASTER_SITES=   https://github.com/audacity/audacity/archive/
DISTNAME=   Audacity-${PORTVERSION}

MAINTAINER= xxjack12xx@gmail.com
COMMENT=    GUI editor for digital audio waveforms

LICENSE=    GPLv2+
LICENSE_FILE=   ${WRKSRC}/LICENSE.txt

BUILD_DEPENDS=  autogen:devel/autogen \
        bash:shells/bash \
        cmake:devel/cmake
LIB_DEPENDS=    libexpat.so:textproc/expat2 \
        libsndfile.so:audio/libsndfile

BROKEN_powerpc64=   Does not build

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

GNU_CONFIGURE=  yes
USES=       autoreconf compiler:gcc-c++11-lib cpe desktop-file-utils gettext-tools gmake iconv libtool pkgconfig shared-mime-info shebangfix dos2unix
NLS_USES=   gettext-runtime
NLS_CONFIGURE_ENABLE=   nls
NLS_CONFIGURE_WITH= libintl-prefix="${LOCALBASE}"
OPTIONS_SUB=    yes
USE_GCC=    4.9+
USE_WX=     3.0+
WX_COMPS=   wx
INSTALLS_ICONS= yes
PORTDOCS=   README.txt
DOS2UNIX_GLOB=  Makefile.* *.c* *.h
SHEBANG_FILES=  lib-src/lv2/build

OPTIONS_DEFINE= NLS DEBUG DOCS ALSA DYNLOAD FFMPEG FLAC ID3TAG LADSPA LAME LV2 \
        MAD SBSMS SOUNDTOUCH TWOLAME VAMP VORBIS VST
OPTIONS_DEFAULT=    FLAC ID3TAG LADSPA MAD \
            SBSMS SOUNDTOUCH TWOLAME VAMP VORBIS VST

OPTIONS_DEFINE_amd64=   SSE
OPTIONS_DEFINE_i386=    SSE
OPTIONS_DEFAULT_amd64=  SSE
OPTIONS_DEFAULT_i386=   ${MACHINE_CPU:tu:MSSE}

DYNLOAD_DESC=   Enable dynamic loading of lame and FFmpeg
LAME_DESC=  Use lame for import and export support
LV2_DESC=   Add LV2 plug-in support
MAD_DESC=   Use libmad for mp2/3 decoding support
MIDI_DESC=  Use portSMF for Midi support
SBSMS_DESC= Use libsbsms for pitch and tempo changing
SOUNDTOUCH_DESC=    Use libSoundTouch for pitch and tempo changing
TAGLIB_DESC=    Use TagLib for metadata support
TWOLAME_DESC=   Use libtwolame for MP2 export support
VAMP_DESC=  Vamp plug-in support
VST_DESC=   VST plug-in support

CONFIGURE_ENV+= WX_CONFIG="${WX_CONFIG}"

CONFIGURE_ARGS+=    --enable-unicode \
            ${ICONV_CONFIGURE_ARG} \
            --with-lib-preference="local" \
            --with-expat=system \
            --with-libsndfile=system \
            --with-libsoxr \
            --with-portaudio \
            --with-midi \
            --with-widgetextra \
            --with-portmixer=yes

CONFIGURE_SHELL?=   ${LOCALBASE}/bin/bash

DEBUG_CONFIGURE_WITH=   debug

DOCS_BUILD_DEPENDS= docbook-to-man:textproc/docbook-to-man \
            docbook2man:textproc/docbook-utils

ALSA_CONFIGURE_OFF= --disable-alsa
ALSA_CONFIGURE_WITH=    alsa
ALSA_CFLAGS=        -I${LOCALBASE}/include
ALSA_CXXFLAGS=      -I${LOCALBASE}/include
ALSA_LDFLAGS=       -L${LOCALBASE}/lib
ALSA_LIB_DEPENDS=   libasound.so:audio/alsa-lib

DYNLOAD_BUILD_DEPENDS=  ${LOCALBASE}/libdata/pkgconfig/libavcodec.pc:multimedia/ffmpeg
DYNLOAD_BUILD_DEPENDS=  ${LOCALBASE}/include/lame/lame.h:audio/lame
DYNLOAD_CONFIGURE_ENABLE=   dynamic-loading
DYNLOAD_CPPFLAGS=       -I${LOCALBASE}/include  # for audio/lame using
DYNLOAD_LDFLAGS=        -L${LOCALBASE}/lib  # for audio/lame using

FFMPEG_CONFIGURE_WITH=  ffmpeg=system
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg

FLAC_CONFIGURE_WITH=    libflac=system
FLAC_LIB_DEPENDS=   libFLAC.so:audio/flac

ID3TAG_CONFIGURE_WITH=  libid3tag=system
ID3TAG_LIB_DEPENDS= libid3tag.so:audio/libid3tag

JACK_LIB_DEPENDS=   libjack.so:audio/jack

LADSPA_CONFIGURE_ENABLE=    ladspa
LADSPA_RUN_DEPENDS= listplugins:audio/ladspa

MAD_CONFIGURE_WITH= libmad=system
MAD_LIB_DEPENDS=    libmad.so:audio/libmad

LAME_CONFIGURE_ON=  --with-lame=system
LAME_CONFIGURE_OFF= --with-lame # --without-lame is broken
LAME_CPPFLAGS=      -I${LOCALBASE}/include
LAME_LDFLAGS=       -L${LOCALBASE}/lib
LAME_LIB_DEPENDS=   libmp3lame.so:audio/lame

LV2_CONFIGURE_WITH= lv2

SBSMS_CONFIGURE_WITH=   sbsms

SOUNDTOUCH_CONFIGURE_WITH=  soundtouch=system
SOUNDTOUCH_LIB_DEPENDS= libSoundTouch.so:audio/soundtouch

SSE_CONFIGURE_ENABLE=   sse

TWOLAME_CONFIGURE_WITH= libtwolame=system
TWOLAME_LIB_DEPENDS=    libtwolame.so:audio/twolame

VAMP_CONFIGURE_WITH=    libvamp=system
VAMP_LIB_DEPENDS=   libvamp-hostsdk.so:audio/vamp-plugin-sdk

VORBIS_CONFIGURE_WITH=  libvorbis=system
VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis

VST_CONFIGURE_ENABLE=   vst

.include <bsd.port.pre.mk>

post-install:
    @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}

post-install-DOCS-on:
    @${MKDIR} ${STAGEDIR}${DOCSDIR}
    cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}

.include <bsd.port.post.mk>