summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-gfx/freepv/files/freepv-0.3.0-gcc46.patch4
-rw-r--r--media-gfx/freepv/files/freepv-0.3.0-libpng14.patch4
-rw-r--r--media-gfx/freepv/files/freepv-0.3.0-stringh.patch4
-rw-r--r--media-gfx/freepv/files/freepv-0.3.0-unsigned_short.patch47
-rw-r--r--media-gfx/freepv/freepv-0.3.0-r5.ebuild44
5 files changed, 97 insertions, 6 deletions
diff --git a/media-gfx/freepv/files/freepv-0.3.0-gcc46.patch b/media-gfx/freepv/files/freepv-0.3.0-gcc46.patch
index 985d1443e7ce..be6b13f522cb 100644
--- a/media-gfx/freepv/files/freepv-0.3.0-gcc46.patch
+++ b/media-gfx/freepv/files/freepv-0.3.0-gcc46.patch
@@ -1,5 +1,5 @@
---- src/libfreepv/Action.h.orig 2011-06-16 17:37:55.705868856 +0200
-+++ src/libfreepv/Action.h 2011-06-16 17:38:19.792311535 +0200
+--- freepv-0.3.0.orig/src/libfreepv/Action.h 2011-06-16 17:37:55.705868856 +0200
++++ freepv-0.3.0/src/libfreepv/Action.h 2011-06-16 17:38:19.792311535 +0200
@@ -24,6 +24,7 @@
#ifndef FPV_ACTION_H
diff --git a/media-gfx/freepv/files/freepv-0.3.0-libpng14.patch b/media-gfx/freepv/files/freepv-0.3.0-libpng14.patch
index e3b614f57490..36fac0ff7419 100644
--- a/media-gfx/freepv/files/freepv-0.3.0-libpng14.patch
+++ b/media-gfx/freepv/files/freepv-0.3.0-libpng14.patch
@@ -1,5 +1,5 @@
---- src/libfreepv/pngReader.cpp
-+++ src/libfreepv/pngReader.cpp
+--- freepv-0.3.0.orig/src/libfreepv/pngReader.cpp
++++ freepv-0.3.0/src/libfreepv/pngReader.cpp
@@ -135,7 +135,7 @@
//Transfor grayscale images with less
//than 8 bits to 8 bits
diff --git a/media-gfx/freepv/files/freepv-0.3.0-stringh.patch b/media-gfx/freepv/files/freepv-0.3.0-stringh.patch
index 083585e5750c..45987355a766 100644
--- a/media-gfx/freepv/files/freepv-0.3.0-stringh.patch
+++ b/media-gfx/freepv/files/freepv-0.3.0-stringh.patch
@@ -1,5 +1,5 @@
---- src/libfreepv/Image.cpp.ORIG 2009-05-02 01:12:31.000000000 +0200
-+++ src/libfreepv/Image.cpp 2013-04-11 09:37:07.436358208 +0200
+--- freepv-0.3.0.orig/src/libfreepv/Image.cpp 2009-05-02 01:12:31.000000000 +0200
++++ freepv-0.3.0/src/libfreepv/Image.cpp 2013-04-11 09:37:07.436358208 +0200
@@ -23,6 +23,7 @@
*/
diff --git a/media-gfx/freepv/files/freepv-0.3.0-unsigned_short.patch b/media-gfx/freepv/files/freepv-0.3.0-unsigned_short.patch
new file mode 100644
index 000000000000..142b8ac0d9bd
--- /dev/null
+++ b/media-gfx/freepv/files/freepv-0.3.0-unsigned_short.patch
@@ -0,0 +1,47 @@
+diff -Naur freepv-0.3.0.orig/src/libfreepv/Utils/signatures.cpp freepv-0.3.0/src/libfreepv/Utils/signatures.cpp
+--- freepv-0.3.0.orig/src/libfreepv/Utils/signatures.cpp 2009-05-02 01:12:31.000000000 +0200
++++ freepv-0.3.0/src/libfreepv/Utils/signatures.cpp 2017-01-25 15:51:23.781294110 +0100
+@@ -30,34 +30,34 @@
+
+ //JPEG Signature
+ char jpg_size=1;
+- short jpg_sig[]={0xD8FF};
++ unsigned short jpg_sig[]={0xD8FF};
+ //PNG Signature
+ char png_size=4;
+- short png_sig[]={0x5089, 0x474E, 0x0A0D, 0x0A1A};
++ unsigned short png_sig[]={0x5089, 0x474E, 0x0A0D, 0x0A1A};
+ //XML Signature
+ char xml_size=3;
+- short xml_sig[]={0x3F3C, 0x6D78, 0x206C};
++ unsigned short xml_sig[]={0x3F3C, 0x6D78, 0x206C};
+ //DCR Signature
+ char dcr_size=2;
+- short dcr_sig[]={0x4658, 0x5249};
++ unsigned short dcr_sig[]={0x4658, 0x5249};
+ //MOV (MOOV atom) Signature
+ char mov_moov_size=4;
+- short mov_moov_sig[]={0x0000, 0x0000, 0x6F6D, 0x766F};
++ unsigned short mov_moov_sig[]={0x0000, 0x0000, 0x6F6D, 0x766F};
+ //MOV (FTYP atom) Siganture
+ char mov_ftyp_size=4;
+- short mov_ftyp_sig[]={0x0000, 0x0000, 0x7466, 0x7079};
++ unsigned short mov_ftyp_sig[]={0x0000, 0x0000, 0x7466, 0x7079};
+
+ //Signatures to check
+ char sig_types_num=6;
+- short* signature[]={jpg_sig,png_sig,xml_sig,dcr_sig,mov_moov_sig,mov_ftyp_sig};
++ unsigned short* signature[]={jpg_sig,png_sig,xml_sig,dcr_sig,mov_moov_sig,mov_ftyp_sig};
+ char sig_sizes[]={jpg_size,png_size,xml_size,dcr_size,mov_moov_size,mov_ftyp_size};
+
+ const char* CheckMagicBytes(const char* filename)
+ {
+ FILE * p_file;
+ p_file=fopen(filename, "rb");
+- short number;
+- short equal=0;
++ unsigned short number;
++ unsigned short equal=0;
+ char i, type;
+
+ if(p_file==NULL){
diff --git a/media-gfx/freepv/freepv-0.3.0-r5.ebuild b/media-gfx/freepv/freepv-0.3.0-r5.ebuild
new file mode 100644
index 000000000000..bad2816262cd
--- /dev/null
+++ b/media-gfx/freepv/freepv-0.3.0-r5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit cmake-utils
+
+DESCRIPTION="Panorama viewer (Quicktime, PangeaVR, GLPanoView formats)"
+HOMEPAGE="http://freepv.sourceforge.net/"
+SRC_URI="mirror://sourceforge/freepv/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-libs/libxml2
+ media-libs/libpng:0=
+ media-libs/freeglut
+ sys-libs/zlib
+ virtual/jpeg:0
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXxf86vm"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-gcc44.patch
+ "${FILESDIR}"/${P}-gcc46.patch
+ "${FILESDIR}"/${P}-noplugin.patch
+ "${FILESDIR}"/${P}-libpng14.patch
+ "${FILESDIR}"/${P}-stringh.patch
+ "${FILESDIR}"/${P}-unsigned_short.patch
+)
+
+src_prepare() {
+ sed -e 's:jpeg_mem_src:freepv_jpeg_mem_src:g' \
+ -i src/libfreepv/JpegReader.cpp || die
+
+ sed -e 's:^INSTALL(.*)::' \
+ -i src/libfreepv/CMakeLists.txt || die
+
+ default
+}