aboutsummaryrefslogtreecommitdiff
path: root/audio/ardour
diff options
context:
space:
mode:
authorAlexey Dokuchaev <danfe@FreeBSD.org>2015-04-02 17:15:52 +0000
committerAlexey Dokuchaev <danfe@FreeBSD.org>2015-04-02 17:15:52 +0000
commit022e62c7f3cadc8817ead921e82a8a51e1546aac (patch)
treea2f43d40caf8c769b7992c31d8df2416e712cbf0 /audio/ardour
parentdd6fbcb36b5c476cf54e8b0e162b0e1a7170d637 (diff)
downloadports-022e62c7f3cadc8817ead921e82a8a51e1546aac.tar.gz
ports-022e62c7f3cadc8817ead921e82a8a51e1546aac.zip
Notes
Diffstat (limited to 'audio/ardour')
-rw-r--r--audio/ardour/Makefile14
-rw-r--r--audio/ardour/distinfo4
-rw-r--r--audio/ardour/files/patch-tempoline_crash83
3 files changed, 87 insertions, 14 deletions
diff --git a/audio/ardour/Makefile b/audio/ardour/Makefile
index 991dea15d0f9..8e4b7a31e565 100644
--- a/audio/ardour/Makefile
+++ b/audio/ardour/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= ardour
-PORTVERSION= 2.8.14
-PORTREVISION= 7
+PORTVERSION= 2.8.16
CATEGORIES= audio
MASTER_SITES= http://freebsd.nsu.ru/distfiles/
@@ -25,8 +24,6 @@ CFLAGS+= -I${LOCALBASE}/include
USE_GNOME= libxslt
USE_LDCONFIG= ${PREFIX}/lib/ardour2 ${PREFIX}/lib/ardour2/surfaces
-RESTRICTED= Redistribution of the VST PlugIns SDK is not allowed
-
PLIST_SUB= DISTVERSION=${DISTVERSION}
OPTIONS_DEFINE= OPTIMIZED_CFLAGS VST
@@ -35,12 +32,8 @@ VST_DESC= VST plugins support
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MVST}
-ONS_ENV+= VST=yes
-BUILD_DEPENDS+= winegcc:${PORTSDIR}/emulators/wine \
- unzip:${PORTSDIR}/archivers/unzip \
- gsed:${PORTSDIR}/textproc/gsed
+MAKE_ARGS+= VST=yes
LIB_DEPENDS+= libwine.so:${PORTSDIR}/emulators/wine
-
PLIST_SUB+= NO_VST="@comment "
PLIST_SUB+= VST=""
.else
@@ -69,9 +62,6 @@ post-patch:
@${REINPLACE_CMD} -e 's|%%CFLAGS%%|${CFLAGS}|' ${WRKSRC}/SConstruct
@${REINPLACE_CMD} -e 's|alsa_pcm|oss|g' ${WRKSRC}/templates/*.template
-pre-build:
- @${MKDIR} ${STAGEDIR}
-
post-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/share/ardour2/templates
${INSTALL_DATA} ${WRKSRC}/templates/*.template \
diff --git a/audio/ardour/distinfo b/audio/ardour/distinfo
index 077074d0c74a..0e44b067e3a7 100644
--- a/audio/ardour/distinfo
+++ b/audio/ardour/distinfo
@@ -1,2 +1,2 @@
-SHA256 (ardour-2.8.14.tar.bz2) = e07e483a12354c00d821dafbec5f5d2690062b758205daceab723bf1e9a633fe
-SIZE (ardour-2.8.14.tar.bz2) = 2169985
+SHA256 (ardour-2.8.16.tar.bz2) = 37ee32119ba105fa0883faa7e18c58ecd5276894568da224a554d9ef49075e40
+SIZE (ardour-2.8.16.tar.bz2) = 2169916
diff --git a/audio/ardour/files/patch-tempoline_crash b/audio/ardour/files/patch-tempoline_crash
new file mode 100644
index 000000000000..bcf4117179a5
--- /dev/null
+++ b/audio/ardour/files/patch-tempoline_crash
@@ -0,0 +1,83 @@
+commit b29f54fb6efcdb2facf0471bd8e24d8eea3231b0
+Author: Paul Davis <paul@linuxaudiosystems.com>
+Date: Wed Feb 20 18:53:30 2013 +0000
+
+ back-port tempo line assert fix from 3.0 to stop crashing under some relatively easy to hit conditions
+
+ git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@14067 d708f5d6-7413-0410-9779-e7cbd77b26cf
+
+diff --git a/gtk2_ardour/tempo_lines.cc b/gtk2_ardour/tempo_lines.cc
+index e8bd034..a373dec 100644
+--- gtk2_ardour/tempo_lines.cc.orig
++++ gtk2_ardour/tempo_lines.cc
+@@ -146,9 +146,8 @@ TempoLines::draw (ARDOUR::TempoMap::BBTPointList& points, double frames_per_unit
+ }
+
+ xpos = rint(((nframes64_t)(*i).frame) / (double)frames_per_unit);
+- if (inserted_last_time && !_lines.empty()) {
+- li = _lines.lower_bound(xpos); // first line >= xpos
+- }
++
++ li = _lines.lower_bound(xpos); // first line >= xpos
+
+ line = (li != _lines.end()) ? li->second : NULL;
+ assert(!line || line->property_x1() == li->first);
+@@ -215,33 +214,35 @@ TempoLines::draw (ARDOUR::TempoMap::BBTPointList& points, double frames_per_unit
+ // Create a new line
+ } else if (_lines.size() < needed || _lines.size() < MAX_CACHED_LINES) {
+ //cout << "*** CREATING LINE" << endl;
+- assert(_lines.find(xpos) == _lines.end());
+- line = new ArdourCanvas::SimpleLine (*_group);
+- line->property_x1() = xpos;
+- line->property_x2() = xpos;
+- line->property_y1() = 0.0;
+- line->property_y2() = _height;
+- line->property_color_rgba() = color;
+- _lines.insert(make_pair(xpos, line));
+- inserted_last_time = true;
++ if (_lines.find(xpos) == _lines.end()) {
++ line = new ArdourCanvas::SimpleLine (*_group);
++ line->property_x1() = xpos;
++ line->property_x2() = xpos;
++ line->property_y1() = 0.0;
++ line->property_y2() = _height;
++ line->property_color_rgba() = color;
++ _lines.insert(make_pair(xpos, line));
++ inserted_last_time = true;
++ }
+
+ // Steal from the left
+ } else {
+ //cout << "*** STEALING FROM LEFT" << endl;
+- assert(_lines.find(xpos) == _lines.end());
+- Lines::iterator steal = _lines.begin();
+- line = steal->second;
+- _lines.erase(steal);
+- line->property_color_rgba() = color;
+- line->property_x1() = xpos;
+- line->property_x2() = xpos;
+- _lines.insert(make_pair(xpos, line));
+- inserted_last_time = true; // search next time
+- invalidated = true;
+-
+- // Shift clean range right
+- _clean_left = max(_clean_left, steal->first);
+- _clean_right = max(_clean_right, xpos);
++ if (_lines.find(xpos) == _lines.end()) {
++ Lines::iterator steal = _lines.begin();
++ line = steal->second;
++ _lines.erase(steal);
++ line->property_color_rgba() = color;
++ line->property_x1() = xpos;
++ line->property_x2() = xpos;
++ _lines.insert(make_pair(xpos, line));
++ inserted_last_time = true; // search next time
++ invalidated = true;
++
++ // Shift clean range right
++ _clean_left = max(_clean_left, steal->first);
++ _clean_right = max(_clean_right, xpos);
++ }
+ }
+
+ break;