summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO39
-rw-r--r--PKGBUILD79
-rw-r--r--cinelerra.desktop6
-rw-r--r--cinelerra_4.6.patch45
-rw-r--r--gpac.patch12
-rw-r--r--libavcodec.patch11
-rw-r--r--plugin_dir.patch32
-rw-r--r--quicktime.patch25
-rw-r--r--texi2html.patch11
9 files changed, 260 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..5cb21844a77f
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,39 @@
+pkgbase = cinelerra-heroine
+ pkgdesc = Cinelerra from the HeroineWarrior.com (64-bit)
+ pkgver = 4.6
+ pkgrel = 2
+ url = http://www.heroinewarrior.com/cinelerra.php
+ arch = x86_64
+ license = GPL
+ makedepends = yasm
+ makedepends = nasm
+ makedepends = libtool
+ depends = libpng
+ depends = freeglut
+ depends = libxv
+ depends = ncurses
+ depends = libva
+ depends = openexr
+ depends = libxft
+ depends = freetype2
+ depends = alsa-lib
+ conflicts = cinelerra-cv
+ source = https://sourceforge.net/projects/heroines/files/cinelerra-4.6.src.tar.xz
+ source = quicktime.patch
+ source = plugin_dir.patch
+ source = texi2html.patch
+ source = gpac.patch
+ source = libavcodec.patch
+ source = cinelerra_4.6.patch
+ source = cinelerra.desktop
+ md5sums = 3da60ce525abc278a028c8889d5b9fd6
+ md5sums = 0babae23875017653914bd121477ec97
+ md5sums = cf9861e808948fe8ea4d4be27765ffa5
+ md5sums = 431503db853032e14ade0438ed3eea29
+ md5sums = cefa6a8efe5ba5bc00ad9fc5649dd25c
+ md5sums = 4dd7fd1184dfe3813a8821d47ef70a55
+ md5sums = 3e84af8442b5a3d426ed64f29be71cbf
+ md5sums = 54ee50b75e5318509da5d4e8fa55caf3
+
+pkgname = cinelerra-heroine
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..adeb944fc6bd
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,79 @@
+# Maintainer: Garrett <floft.net/contact>
+pkgname=cinelerra-heroine
+pkgver=4.6
+pkgrel=2
+pkgdesc="Cinelerra from the HeroineWarrior.com (64-bit)"
+arch=('x86_64')
+url="http://www.heroinewarrior.com/cinelerra.php"
+license=('GPL')
+depends=('libpng' 'freeglut' 'libxv' 'ncurses' 'libva'
+ 'openexr' 'libxft' 'freetype2' 'alsa-lib')
+makedepends=('yasm' 'nasm' 'libtool')
+conflicts=('cinelerra-cv')
+source=(https://sourceforge.net/projects/heroines/files/cinelerra-$pkgver.src.tar.xz
+ quicktime.patch
+ plugin_dir.patch
+ texi2html.patch
+ gpac.patch
+ libavcodec.patch
+ cinelerra_4.6.patch
+ cinelerra.desktop)
+md5sums=('3da60ce525abc278a028c8889d5b9fd6'
+ '0babae23875017653914bd121477ec97'
+ 'cf9861e808948fe8ea4d4be27765ffa5'
+ '431503db853032e14ade0438ed3eea29'
+ 'cefa6a8efe5ba5bc00ad9fc5649dd25c'
+ '4dd7fd1184dfe3813a8821d47ef70a55'
+ '3e84af8442b5a3d426ed64f29be71cbf'
+ '54ee50b75e5318509da5d4e8fa55caf3')
+
+prepare() {
+ cd "$srcdir/cinelerra-$pkgver-src"
+
+ # Use ncurses instead of termcap
+ sed -i 's/ltermcap/lncurses/g' ./thirdparty/speech_tools/{configure{,.in},config/config}
+
+ # fixes to make it compile
+ patch -Np1 -i "$srcdir/quicktime.patch"
+ patch -Np1 -i "$srcdir/texi2html.patch"
+ patch -Np1 -i "$srcdir/gpac.patch"
+ patch -Np1 -i "$srcdir/libavcodec.patch"
+ patch -Np1 -i "$srcdir/cinelerra_4.6.patch"
+
+ # fix problems with Cinelerra_plugins in read-only directories
+ patch -Np1 -i "$srcdir/plugin_dir.patch"
+}
+
+build() {
+ cd "$srcdir/cinelerra-$pkgver-src"
+
+ ./configure
+
+ # fix faac linking
+ sed -i 's/LDFLAGS = -Wl,-O1,--sort-common,--as-needed,-z,relro/LDFLAGS = -Wl,-O1,-lm,--sort-common,--as-needed,-z,relro/' \
+ ./quicktime/thirdparty/faac-1.24/frontend/Makefile
+
+ make
+}
+
+package() {
+ cd "$srcdir/cinelerra-$pkgver-src"
+
+ # makes repackaging work
+ [ ! -e "bin/cinelerra" ] && \
+ make -C cinelerra && \
+ make -C plugins
+
+ make install
+
+ # install puts it in bin/
+ rm -rf "$pkgdir/usr/lib/cinelerra/"
+ mkdir -p "$pkgdir/usr/lib/cinelerra/"
+ mv bin/* "$pkgdir/usr/lib/cinelerra/"
+
+ mkdir -p "$pkgdir/usr/bin/"
+ ln -s /usr/lib/cinelerra/cinelerra "$pkgdir/usr/bin/cinelerra"
+
+ mkdir -p "$pkgdir/usr/share/applications/"
+ install -Dm644 "$srcdir/cinelerra.desktop" "$pkgdir/usr/share/applications/"
+}
diff --git a/cinelerra.desktop b/cinelerra.desktop
new file mode 100644
index 000000000000..af1fdf35c6a8
--- /dev/null
+++ b/cinelerra.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Name=Cinelerra
+Comment=Video Editor
+Exec=cinelerra
+Terminal=false
+Type=Application
diff --git a/cinelerra_4.6.patch b/cinelerra_4.6.patch
new file mode 100644
index 000000000000..99c13d62017f
--- /dev/null
+++ b/cinelerra_4.6.patch
@@ -0,0 +1,45 @@
+diff -ru cinelerra-4.6-src/cinelerra/filejpeg.C cinelerra-4.6-src.new/cinelerra/filejpeg.C
+--- cinelerra-4.6-src/cinelerra/filejpeg.C 2014-09-01 21:18:54.000000000 -0700
++++ cinelerra-4.6-src.new/cinelerra/filejpeg.C 2014-09-15 09:47:05.087692323 -0700
+@@ -33,6 +33,7 @@
+ #include "videodevice.inc"
+
+
++#include <string.h>
+ #include <errno.h>
+
+
+diff -ru cinelerra-4.6-src/cinelerra/filemov.C cinelerra-4.6-src.new/cinelerra/filemov.C
+--- cinelerra-4.6-src/cinelerra/filemov.C 2014-09-01 21:18:54.000000000 -0700
++++ cinelerra-4.6-src.new/cinelerra/filemov.C 2014-09-15 09:48:06.208668661 -0700
+@@ -36,6 +36,8 @@
+ #include "videodevice.inc"
+
+ #include <unistd.h>
++#include <string.h>
++#include <strings.h>
+
+ #if 0
+ N_("MPEG-4")
+diff -ru cinelerra-4.6-src/cinelerra/filepng.C cinelerra-4.6-src.new/cinelerra/filepng.C
+--- cinelerra-4.6-src/cinelerra/filepng.C 2014-09-01 21:18:54.000000000 -0700
++++ cinelerra-4.6-src.new/cinelerra/filepng.C 2014-09-15 09:41:24.460835813 -0700
+@@ -29,6 +29,7 @@
+ #include "vframe.h"
+ #include "videodevice.inc"
+
++#include <string.h>
+ #include <png.h>
+
+ FilePNG::FilePNG(Asset *asset, File *file)
+diff -ru cinelerra-4.6-src/cinelerra/videodevice.C cinelerra-4.6-src.new/cinelerra/videodevice.C
+--- cinelerra-4.6-src/cinelerra/videodevice.C 2014-09-01 21:18:54.000000000 -0700
++++ cinelerra-4.6-src.new/cinelerra/videodevice.C 2014-09-15 09:53:27.356291064 -0700
+@@ -50,6 +50,7 @@
+
+ #include <unistd.h>
+ #include <fcntl.h>
++#include <string.h>
+
+ KeepaliveThread::KeepaliveThread(VideoDevice *device)
+ : Thread()
diff --git a/gpac.patch b/gpac.patch
new file mode 100644
index 000000000000..b39dbfeaaa9a
--- /dev/null
+++ b/gpac.patch
@@ -0,0 +1,12 @@
+diff -ru cinelerra-4.4.orig/quicktime/thirdparty/x264.052906/configure cinelerra-4.4/quicktime/thirdparty/x264.052906/configure
+--- cinelerra-4.4.orig/quicktime/thirdparty/x264.052906/configure 2013-01-02 15:42:12.870084505 -0800
++++ cinelerra-4.4/quicktime/thirdparty/x264.052906/configure 2013-01-02 15:43:59.639182303 -0800
+@@ -290,7 +290,7 @@
+ esac
+ fi
+
+-MP4_LDFLAGS="-lgpac_static"
++MP4_LDFLAGS="-lgpac_static -lz"
+ if [ $SYS = CYGWIN -o $SYS = MINGW ]; then
+ MP4_LDFLAGS="$MP4_LDFLAGS -lwinmm"
+ fi
diff --git a/libavcodec.patch b/libavcodec.patch
new file mode 100644
index 000000000000..d7f8e0c1fa90
--- /dev/null
+++ b/libavcodec.patch
@@ -0,0 +1,11 @@
+diff -ur cinelerra-4.4/quicktime/thirdparty/ffmpeg-0.6.1/libavcodec/vaapi_mpeg4.c cinelerra-4.4new/quicktime/thirdparty/ffmpeg-0.6.1/libavcodec/vaapi_mpeg4.c
+--- cinelerra-4.4/quicktime/thirdparty/ffmpeg-0.6.1/libavcodec/vaapi_mpeg4.c 2010-03-30 16:30:55.000000000 -0700
++++ cinelerra-4.4new/quicktime/thirdparty/ffmpeg-0.6.1/libavcodec/vaapi_mpeg4.c 2013-06-18 09:02:32.953720213 -0700
+@@ -20,6 +20,7 @@
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
++#include "h263.h"
+ #include "vaapi_internal.h"
+
+ /** Reconstruct bitstream intra_dc_vlc_thr */
diff --git a/plugin_dir.patch b/plugin_dir.patch
new file mode 100644
index 000000000000..3157c91d2845
--- /dev/null
+++ b/plugin_dir.patch
@@ -0,0 +1,32 @@
+diff -ur cinelerra-4.4.orig/cinelerra/mwindow.C cinelerra-4.4.new/cinelerra/mwindow.C
+--- cinelerra-4.4.orig/cinelerra/mwindow.C 2012-09-09 15:56:45.003303505 -0700
++++ cinelerra-4.4.new/cinelerra/mwindow.C 2012-09-09 18:15:33.360657582 -0700
+@@ -107,6 +107,7 @@
+ #include "zoombar.h"
+
+ #include <string.h>
++#include <sys/stat.h>
+
+
+
+@@ -376,7 +377,7 @@
+ char index_path[BCTEXTLEN];
+ FILE *index_fd = 0;
+
+- sprintf(index_path, "%s/%s", path, PLUGIN_FILE);
++ sprintf(index_path, "%s/%s", preferences->index_directory, PLUGIN_FILE);
+ //printf("MWindow::init_plugin_path %d %s plugindb=%p\n", __LINE__, index_path, plugindb);
+
+
+@@ -401,8 +402,10 @@
+ // Create plugin server from index entry
+ PluginServer *new_plugin = new PluginServer(path);
+ result = new_plugin->read_table(index_line);
++ struct stat buffer;
++ int exists = stat(new_plugin->path, &buffer);
+ //printf("%p new_plugin=%p %s", result2, new_plugin, index_line);
+- if(!result)
++ if(!result && !exists)
+ {
+ plugindb->append(new_plugin);
+ }
diff --git a/quicktime.patch b/quicktime.patch
new file mode 100644
index 000000000000..1dfe210a7eb7
--- /dev/null
+++ b/quicktime.patch
@@ -0,0 +1,25 @@
+diff -ur cinelerra-4.4.orig/cinelerra/Makefile cinelerra-4.4/cinelerra/Makefile
+--- cinelerra-4.4.orig/cinelerra/Makefile 2012-09-09 19:12:50.740569440 -0700
++++ cinelerra-4.4/cinelerra/Makefile 2012-09-09 19:13:20.339370457 -0700
+@@ -396,7 +396,8 @@
+ -lpng \
+ -lz \
+ -ldl \
+- -lbz2
++ -lbz2 \
++ -lva
+
+ # -lXxf86vm \
+
+diff -ur cinelerra-4.4.orig/quicktime/thirdparty/faac-1.24/frontend/main.c cinelerra-4.4/quicktime/thirdparty/faac-1.24/frontend/main.c
+--- cinelerra-4.4.orig/quicktime/thirdparty/faac-1.24/frontend/main.c 2012-09-09 19:12:51.407209104 -0700
++++ cinelerra-4.4/quicktime/thirdparty/faac-1.24/frontend/main.c 2012-09-09 19:13:02.150107282 -0700
+@@ -30,7 +30,7 @@
+ #endif
+
+ #ifdef HAVE_LIBMP4V2
+-# include <mp4.h>
++# include <mp4v2/mp4v2.h>
+ #endif
+
+ #define DEFAULT_TNS 1
diff --git a/texi2html.patch b/texi2html.patch
new file mode 100644
index 000000000000..a5b87553b7c3
--- /dev/null
+++ b/texi2html.patch
@@ -0,0 +1,11 @@
+--- cinelerra-4.4.orig/quicktime/thirdparty/ffmpeg-0.6.1/Makefile 2013-01-02 15:17:54.625193189 -0800
++++ cinelerra-4.4/quicktime/thirdparty/ffmpeg-0.6.1/Makefile 2013-01-02 15:18:31.860356486 -0800
+@@ -107,7 +107,7 @@
+
+ doc/%.html: TAG = HTML
+ doc/%.html: doc/%.texi
+- $(M)cd doc && texi2html -monolithic -number $(<:doc/%=%)
++ $(M)cd doc && texi2html $(<:doc/%=%)
+
+ doc/%.pod: TAG = POD
+ doc/%.pod: doc/%-doc.texi