Update to 2.0.r1, add VST support (disabled by default due to legal reasons)

and clean things a bit.

PR:		ports/111506
Submitted by:	trasz
Approved by:	miwi (mentor)
This commit is contained in:
Edward Tomasz Napierala 2007-04-14 17:28:52 +00:00
parent 0c43565a87
commit cdf120dd5b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=189959
9 changed files with 144 additions and 81 deletions

View file

@ -6,9 +6,11 @@
# #
PORTNAME= ardour PORTNAME= ardour
DISTVERSION= 2.0beta12 DISTVERSION= 2.0rc1
CATEGORIES= audio CATEGORIES= audio
MASTER_SITES= http://ardour.org/files/releases/ MASTER_SITES= http://ardour.org/files/releases/
DISTFILES= ardour-${DISTVERSION}.tar.bz2
EXTRACT_ONLY= ardour-${DISTVERSION}.tar.bz2
MAINTAINER= trasz@freebsd.org MAINTAINER= trasz@freebsd.org
COMMENT= Ardour - a digital audio workstation COMMENT= Ardour - a digital audio workstation
@ -26,25 +28,54 @@ LIB_DEPENDS= lrdf.2:${PORTSDIR}/textproc/liblrdf \
USE_SCONS= yes USE_SCONS= yes
SCONS_ENV+= SYSLIBS=yes PREFIX=${PREFIX} NLS=yes FPU_OPTIMIZATION=0 SCONS_ENV+= SYSLIBS=yes PREFIX=${PREFIX} NLS=yes FPU_OPTIMIZATION=0
CFLAGS+= -I${LOCALBASE}/include
USE_BZIP2= yes USE_BZIP2= yes
USE_GNOME= gtk20 libxslt libgnomecanvas intltool USE_GNOME= gtk20 libxslt libgnomecanvas intltool
USE_GETTEXT= yes USE_GETTEXT= yes
USE_LDCONFIG= ${PREFIX}/lib/ardour2 ${PREFIX}/lib/ardour2/surfaces USE_LDCONFIG= ${PREFIX}/lib/ardour2 ${PREFIX}/lib/ardour2/surfaces
TEMPLATESDIR= ${PREFIX}/share/ardour2/templates TEMPLATESDIR= ${PREFIX}/share/ardour2/templates
PLIST_SUB= DISTVERSION=${DISTVERSION} PLIST_SUB= DISTVERSION=${DISTVERSION}
OPTIONS= OPTIMIZED_CFLAGS "Builds with compiler optimizations" on \
VST "Enable VST plugins support" off
.include <bsd.port.pre.mk> .include <bsd.port.pre.mk>
.if defined(WITH_VST)
# Yes, 'PlugIns' is not a typo.
RESTRICTED= Redistribution of the VST PlugIns SDK is not allowed
VST_DIST+= vst_sdk2_3.zip
DISTFILES+= ${VST_DIST}
SCONS_ENV+= VST=yes
BUILD_DEPENDS+= winegcc:${PORTSDIR}/emulators/wine \
unzip:${PORTSDIR}/archivers/unzip \
gsed:${PORTSDIR}/textproc/gsed
LIB_DEPENDS+= wine.1:${PORTSDIR}/emulators/wine
.if !exists(${DISTDIR}/${VST_DIST})
IGNORE= download the VST 2.3 SDK from Steinberg (http://www.steinberg.de/331+M52087573ab0.html) and copy ${VST_DIST} into ${DISTDIR}
.endif
PLIST_SUB+= NO_VST="@comment "
PLIST_SUB+= VST=""
.else
PLIST_SUB+= NO_VST=""
PLIST_SUB+= VST="@comment "
.endif
# Upstream uses these flags by default. # Upstream uses these flags by default.
.if !defined(WITHOUT_OPTIMIZED_CFLAGS) .if !defined(WITHOUT_OPTIMIZED_CFLAGS)
# XXX: what about SSE?
CFLAGS+= -O3 -fomit-frame-pointer -ffast-math -fstrength-reduce CFLAGS+= -O3 -fomit-frame-pointer -ffast-math -fstrength-reduce
.endif .endif
CFLAGS:= ${CFLAGS:N-fno-strict-aliasing} CFLAGS:= ${CFLAGS:N-fno-strict-aliasing}
post-patch: post-patch:
${REINPLACE_CMD} -e "s|%%CFLAGS%%|${CFLAGS}|" ${WRKSRC}/SConstruct ${REINPLACE_CMD} -e "s|%%CFLAGS%%|${CFLAGS}|g" ${WRKSRC}/SConstruct
${REINPLACE_CMD} -e "s|alsa_pcm|oss|g" ${WRKSRC}/templates/*.template ${REINPLACE_CMD} -e "s|alsa_pcm|oss|g" ${WRKSRC}/templates/*.template
.if defined(WITH_VST)
${CP} ${DISTDIR}/${VST_DIST} ${WRKSRC}/libs/fst/
.endif
post-install: post-install:
${CHOWN} -R 0:0 ${PREFIX}/lib/ardour2/ ${CHOWN} -R 0:0 ${PREFIX}/lib/ardour2/

View file

@ -1,3 +1,6 @@
MD5 (ardour-2.0beta12.tar.bz2) = d9ac67f73963a36ed61c378a4ccda223 MD5 (ardour-2.0rc1.tar.bz2) = 537b60cab1ce4a053a722cd09d6ba608
SHA256 (ardour-2.0beta12.tar.bz2) = 67268501571ca21946b236773f8317452922f60e08a33edb2a921aff25c8c9ab SHA256 (ardour-2.0rc1.tar.bz2) = 367efc28f3e80417b28993a5c81067d8592dd455576aeb7c150db408a562ab89
SIZE (ardour-2.0beta12.tar.bz2) = 2706928 SIZE (ardour-2.0rc1.tar.bz2) = 2723234
MD5 (vst_sdk2_3.zip) = c91d3be58ad4e9c695d0a90b2198be0d
SHA256 (vst_sdk2_3.zip) = 5400e0bbfeef0ab8a67b48899a9e8067db47552f43b30d8d15323ab999523226
SIZE (vst_sdk2_3.zip) = 4147357

View file

@ -1,5 +1,5 @@
--- SConstruct.orig Fri Mar 16 22:45:44 2007 --- SConstruct.orig Fri Mar 16 22:45:44 2007
+++ SConstruct Sun Mar 18 09:53:00 2007 +++ SConstruct Fri Mar 30 17:32:20 2007
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
BoolOption('FPU_OPTIMIZATION', 'Build runtime checked assembler code', 1), BoolOption('FPU_OPTIMIZATION', 'Build runtime checked assembler code', 1),
BoolOption('LIBLO', 'Compile with support for liblo library', 1), BoolOption('LIBLO', 'Compile with support for liblo library', 1),
@ -9,6 +9,15 @@
BoolOption('SURFACES', 'Build support for control surfaces', 1), BoolOption('SURFACES', 'Build support for control surfaces', 1),
BoolOption('SYSLIBS', 'USE AT YOUR OWN RISK: CANCELS ALL SUPPORT FROM ARDOUR AUTHORS: Use existing system versions of various libraries instead of internal ones', 0), BoolOption('SYSLIBS', 'USE AT YOUR OWN RISK: CANCELS ALL SUPPORT FROM ARDOUR AUTHORS: Use existing system versions of various libraries instead of internal ones', 0),
BoolOption('UNIVERSAL', 'Compile as universal binary. Requires that external libraries are already universal.', 0), BoolOption('UNIVERSAL', 'Compile as universal binary. Requires that external libraries are already universal.', 0),
@@ -381,7 +381,7 @@
# Make sure they know what they are doing
#
-if env['VST']:
+if False:
sys.stdout.write ("Are you building Ardour for personal use (rather than distribution to others)? [no]: ")
answer = sys.stdin.readline ()
answer = answer.rstrip().strip()
@@ -660,13 +660,7 @@ @@ -660,13 +660,7 @@
# prepend boiler plate optimization flags # prepend boiler plate optimization flags
# #
@ -24,94 +33,36 @@
if env['DEBUG'] == 1: if env['DEBUG'] == 1:
env.Append(CCFLAGS=" ".join (debug_flags)) env.Append(CCFLAGS=" ".join (debug_flags))
@@ -754,9 +748,9 @@ @@ -752,6 +746,7 @@
if env['LIBLO']:
libraries['lo'] = LibraryInfo ()
prep_libcheck(env, libraries['lo']) prep_libcheck(env, libraries['lo'])
+ libraries['lo'].Append(CCFLAGS="-I/usr/local/include", LINKFLAGS="-L/usr/local/lib")
conf = Configure (libraries['lo']) conf = Configure (libraries['lo'])
- if conf.CheckLib ('lo', 'lo_server_new') == False: if conf.CheckLib ('lo', 'lo_server_new') == False:
- print "liblo does not appear to be installed." @@ -765,6 +760,7 @@
- sys.exit (1)
+# if conf.CheckLib ('lo', 'lo_server_new') == False:
+# print "liblo does not appear to be installed."
+# sys.exit (1)
libraries['lo'] = conf.Finish ()
@@ -796,8 +790,10 @@ libraries['dmalloc'] = LibraryInfo ()
prep_libcheck(env, libraries['dmalloc'])
+libraries['dmalloc'].Append(CCFLAGS="-I/usr/local/include", LINKFLAGS="-L/usr/local/lib")
#
# look for the threaded version
@@ -796,8 +792,10 @@
subst_dict['%MIDITAG%'] = "ardour" subst_dict['%MIDITAG%'] = "ardour"
subst_dict['%MIDITYPE%'] = "coremidi" subst_dict['%MIDITYPE%'] = "coremidi"
else: else:
- print "It appears you don't have the required MIDI libraries installed. For Linux this means you are missing the development package for ALSA libraries." - print "It appears you don't have the required MIDI libraries installed. For Linux this means you are missing the development package for ALSA libraries."
- sys.exit (1) - sys.exit (1)
+ libraries['sysmidi'] = LibraryInfo (LIBS='lo') + libraries['sysmidi'] = LibraryInfo ()
+ env['SYSMIDI'] = 'none' + env['SYSMIDI'] = 'none'
+ subst_dict['%MIDITAG%'] = "none" + subst_dict['%MIDITAG%'] = "none"
+ subst_dict['%MIDITYPE%'] = "none" + subst_dict['%MIDITYPE%'] = "none"
env = conf.Finish() env = conf.Finish()
@@ -1021,33 +1017,33 @@ @@ -1064,8 +1062,8 @@
# i18n support
#
-conf = Configure (env)
-if env['NLS']:
- nls_error = 'This system is not configured for internationalized applications. An english-only version will be built:'
- print 'Checking for internationalization support ...'
- have_gettext = conf.TryAction(Action('xgettext --version'))
- if have_gettext[0] != 1:
- nls_error += ' No xgettext command.'
- env['NLS'] = 0
- else:
- print "Found xgettext"
-
- have_msgmerge = conf.TryAction(Action('msgmerge --version'))
- if have_msgmerge[0] != 1:
- nls_error += ' No msgmerge command.'
- env['NLS'] = 0
- else:
- print "Found msgmerge"
-
- if not conf.CheckCHeader('libintl.h'):
- nls_error += ' No libintl.h.'
- env['NLS'] = 0
-
- if env['NLS'] == 0:
- print nls_error
- else:
- print "International version will be built."
-env = conf.Finish()
+#conf = Configure (env)
+#if env['NLS']:
+# nls_error = 'This system is not configured for internationalized applications. An english-only version will be built:'
+# print 'Checking for internationalization support ...'
+# have_gettext = conf.TryAction(Action('xgettext --version'))
+# if have_gettext[0] != 1:
+# nls_error += ' No xgettext command.'
+# env['NLS'] = 0
+# else:
+# print "Found xgettext"
+#
+# have_msgmerge = conf.TryAction(Action('msgmerge --version'))
+# if have_msgmerge[0] != 1:
+# nls_error += ' No msgmerge command.'
+# env['NLS'] = 0
+# else:
+# print "Found msgmerge"
+#
+# if not conf.CheckCHeader('libintl.h'):
+# nls_error += ' No libintl.h.'
+# env['NLS'] = 0
+#
+# if env['NLS'] == 0:
+# print nls_error
+# else:
+# print "International version will be built."
+#env = conf.Finish()
if env['NLS'] == 1:
env.Append(CCFLAGS="-DENABLE_NLS")
@@ -1064,8 +1060,8 @@
subst_dict['%JACK_INPUT%'] = "coreaudio:Built-in Audio:in" subst_dict['%JACK_INPUT%'] = "coreaudio:Built-in Audio:in"
subst_dict['%JACK_OUTPUT%'] = "coreaudio:Built-in Audio:out" subst_dict['%JACK_OUTPUT%'] = "coreaudio:Built-in Audio:out"
else: else:

View file

@ -0,0 +1,11 @@
--- libs/fst/SConscript.orig Fri Dec 1 04:24:47 2006
+++ libs/fst/SConscript Sun Mar 18 19:02:10 2007
@@ -38,7 +38,7 @@
"unzip -qq -d ${SOURCE.dir} -o $SOURCE",
Delete ('$TARGET.dir'),
Copy ('${TARGET.dir}', 'libs/fst/vstsdk2.3/source/common'),
- "sed -i '/struct VstFileType\|struct VstFileSelect/,/};/d' $TARGET"
+ "gsed -i '/struct VstFileType\|struct VstFileSelect/,/};/d' $TARGET"
])
a = fst.Object ('fst', 'fst.c')

View file

@ -0,0 +1,22 @@
--- libs/fst/jackvst.h.orig Wed Aug 30 22:49:25 2006
+++ libs/fst/jackvst.h Sat Mar 24 16:58:18 2007
@@ -6,7 +6,9 @@
#include <jack/jack.h>
#include <jack/ringbuffer.h>
#include <fst.h>
+#ifdef WITH_ALSA
#include <alsa/asoundlib.h>
+#endif
typedef struct _JackVST JackVST;
@@ -26,7 +28,9 @@
/* For VST/i support */
pthread_t midi_thread;
+#ifdef WITH_ALSA
snd_seq_t* seq;
+#endif WITH_ALSA
int midiquit;
jack_ringbuffer_t* event_queue;
struct VstEvents* events;

View file

@ -0,0 +1,18 @@
--- libs/fst/vsti.c.orig Sat Mar 24 16:56:58 2007
+++ libs/fst/vsti.c Sat Mar 24 16:59:07 2007
@@ -32,6 +32,8 @@
#include <jackvst.h>
#include <vst/aeffectx.h>
+#ifdef WITH_ALSA
+
snd_seq_t *
create_sequencer (const char* client_name, bool isinput)
{
@@ -177,5 +179,5 @@
snd_seq_close (jvst->seq);
}
-
+#endif

View file

@ -0,0 +1,13 @@
--- libs/pbd/stacktrace.cc.orig Thu Mar 29 18:26:37 2007
+++ libs/pbd/stacktrace.cc Thu Mar 29 18:27:27 2007
@@ -3,7 +3,9 @@
/* Obtain a backtrace and print it to stdout. */
-#ifdef HAVE_EXECINFO
+/* Without this change, ardourvst dies during startup with
+ 'wine: could not load L"Z:\\usr\\local\\lib\\ardour2\\ardour_vst.exe.so": Bad EXE format for''. */
+#if 0
#include <execinfo.h>
#include <stdlib.h>

View file

@ -0,0 +1,11 @@
--- vst/SConscript.orig Sat Mar 24 13:25:52 2007
+++ vst/SConscript Sat Mar 24 13:26:42 2007
@@ -20,7 +20,7 @@
)
ardour_vst.Append (CCFLAGS="-DVST_SUPPORT", CPPPATH="#libs/fst", LIBPATH='#gtk2_ardour', LIBS="ardourgtk")
-ardour_vst.Append (LINKFLAGS='-L/usr/X11R6/lib -lasound -lX11 -lpthread')
+#ardour_vst.Append (LINKFLAGS='-L/usr/X11R6/lib -lasound -lX11 -lpthread')
ardour_vst["CC"] ="winegcc"
ardour_vst["LINK"] ="wineg++ -mwindows"

View file

@ -1,10 +1,13 @@
bin/ardour2 %%NO_VST%%bin/ardour2
%%VST%%bin/ardourvst
lib/ardour2/libsndfile-ardour.so lib/ardour2/libsndfile-ardour.so
lib/ardour2/libpbd.so lib/ardour2/libpbd.so
lib/ardour2/libmidi++.so lib/ardour2/libmidi++.so
lib/ardour2/libardour.so lib/ardour2/libardour.so
%%NO_VST%%lib/ardour2/ardour-%%DISTVERSION%%
%%VST%%lib/ardour2/ardour_vst.exe.so
%%VST%%lib/ardour2/libardourgtk.so
lib/ardour2/libgtkmm2ext.so lib/ardour2/libgtkmm2ext.so
lib/ardour2/ardour-%%DISTVERSION%%
lib/ardour2/libardour_cp.so lib/ardour2/libardour_cp.so
lib/ardour2/surfaces/libardour_genericmidi.so lib/ardour2/surfaces/libardour_genericmidi.so
lib/ardour2/surfaces/libardour_mackie.so lib/ardour2/surfaces/libardour_mackie.so