aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
authorkwm <kwm@FreeBSD.org>2015-07-23 00:32:05 +0800
committerkwm <kwm@FreeBSD.org>2015-07-23 00:32:05 +0800
commit5d3649cdb933ffee2070c7f927e32a0c65a3aeb7 (patch)
tree4bf98705073dcb9e6047804dd393896d765d3356 /multimedia
parent7a87f40ed31b44e815c0f132be008e0a94f3eb4a (diff)
downloadfreebsd-ports-gnome-5d3649cdb933ffee2070c7f927e32a0c65a3aeb7.tar.gz
freebsd-ports-gnome-5d3649cdb933ffee2070c7f927e32a0c65a3aeb7.tar.zst
freebsd-ports-gnome-5d3649cdb933ffee2070c7f927e32a0c65a3aeb7.zip
Add libde265 Opensource h.265 video codec.
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/Makefile1
-rw-r--r--multimedia/libde265/Makefile22
-rw-r--r--multimedia/libde265/distinfo2
-rw-r--r--multimedia/libde265/files/patch-configure.ac60
-rw-r--r--multimedia/libde265/files/patch-libde265_Makefile.am19
-rw-r--r--multimedia/libde265/files/patch-libde265_fallback-dct.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_fallback-motion.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_image.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_motion.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_pps.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_refpic.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_threads.cc11
-rw-r--r--multimedia/libde265/files/patch-libde265_util.h11
-rw-r--r--multimedia/libde265/pkg-descr9
-rw-r--r--multimedia/libde265/pkg-plist14
15 files changed, 215 insertions, 0 deletions
diff --git a/multimedia/Makefile b/multimedia/Makefile
index d2a5d4f72d14..29de17cc6f62 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -168,6 +168,7 @@
SUBDIR += libcec
SUBDIR += libdc1394
SUBDIR += libdca
+ SUBDIR += libde265
SUBDIR += libdv
SUBDIR += libdvbcsa
SUBDIR += libdvbpsi
diff --git a/multimedia/libde265/Makefile b/multimedia/libde265/Makefile
new file mode 100644
index 000000000000..9df4a06ee727
--- /dev/null
+++ b/multimedia/libde265/Makefile
@@ -0,0 +1,22 @@
+# Created by: Koop Mast <kwm@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= libde265
+PORTVERSION= 1.0.2
+CATEGORIES= multimedia
+DISTVERSIONPREFIX= v
+
+MAINTAINER= kwm@FreeBSD.org
+COMMENT= Open source h.265 video codec
+
+USE_GITHUB= yes
+GH_ACCOUNT= strukturag
+GH_PROJECT= libde265
+
+USES= autoreconf compiler:c++11-lib libtool pathfix pkgconfig
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --disable-sherlock265 --disable-dec265
+
+PATHFIX_MAKEFILEIN= Makefile.am
+
+.include <bsd.port.mk>
diff --git a/multimedia/libde265/distinfo b/multimedia/libde265/distinfo
new file mode 100644
index 000000000000..b2eac3017666
--- /dev/null
+++ b/multimedia/libde265/distinfo
@@ -0,0 +1,2 @@
+SHA256 (strukturag-libde265-v1.0.2_GH0.tar.gz) = c9769a621d568bf5d1e687453cb5d996d7a813476813edb4752ce0fea437fca8
+SIZE (strukturag-libde265-v1.0.2_GH0.tar.gz) = 381737
diff --git a/multimedia/libde265/files/patch-configure.ac b/multimedia/libde265/files/patch-configure.ac
new file mode 100644
index 000000000000..7669ff17e8b2
--- /dev/null
+++ b/multimedia/libde265/files/patch-configure.ac
@@ -0,0 +1,60 @@
+--- configure.ac.orig 2015-07-14 13:51:51.000000000 +0200
++++ configure.ac 2015-07-22 16:42:42.854395000 +0200
+@@ -36,8 +36,8 @@
+ # Initialize automake stuff
+ AM_INIT_AUTOMAKE
+
+-CFLAGS+=" -std=c99"
+-CXXFLAGS+=" -Werror=return-type -Werror=unused-result -Werror=reorder"
++CFLAGS="$CFLAGS -std=c99"
++CXXFLAGS="$CXXFLAGS -Werror=return-type -Werror=unused-result -Werror=reorder"
+ AX_CXX_COMPILE_STDCXX_11()
+
+ dnl Use -Wall if we have gcc.
+@@ -101,8 +101,8 @@
+ ],[],[need_strict_ansi=no],[need_strict_ansi=yes]);
+ AC_LANG_POP(C++)
+ if eval "test x$need_strict_ansi = xyes"; then
+- CFLAGS+=" -D__STRICT_ANSI__"
+- CXXFLAGS+=" -D__STRICT_ANSI__"
++ CFLAGS="$CFLAGS -D__STRICT_ANSI__"
++ CXXFLAGS="$CXXFLAGS -D__STRICT_ANSI__"
+ fi
+ AC_MSG_RESULT([$need_strict_ansi])
+
+@@ -180,7 +180,7 @@
+ [enable_log_error=$enableval],
+ [enable_log_error=yes])
+ if eval "test $enable_log_error = yes"; then
+- CXXFLAGS+=" -DDE265_LOG_ERROR"
++ CXXFLAGS="$CXXFLAGS -DDE265_LOG_ERROR"
+ fi
+
+ AC_ARG_ENABLE(log-info,
+@@ -189,7 +189,7 @@
+ [enable_log_info=$enableval],
+ [enable_log_info=no])
+ if eval "test $enable_log_info = yes"; then
+- CXXFLAGS+=" -DDE265_LOG_INFO"
++ CXXFLAGS="$CXXFLAGS -DDE265_LOG_INFO"
+ fi
+
+ AC_ARG_ENABLE(log-debug,
+@@ -198,7 +198,7 @@
+ [enable_log_debug=$enableval],
+ [enable_log_debug=no])
+ if eval "test $enable_log_debug = yes"; then
+- CXXFLAGS+=" -DDE265_LOG_DEBUG"
++ CXXFLAGS="$CXXFLAGS -DDE265_LOG_DEBUG"
+ fi
+
+ AC_ARG_ENABLE(log-trace,
+@@ -207,7 +207,7 @@
+ [enable_log_trace=$enableval],
+ [enable_log_trace=no])
+ if eval "test $enable_log_trace = yes"; then
+- CXXFLAGS+=" -DDE265_LOG_TRACE"
++ CXXFLAGS="$CXXFLAGS -DDE265_LOG_TRACE"
+ fi
+
+
diff --git a/multimedia/libde265/files/patch-libde265_Makefile.am b/multimedia/libde265/files/patch-libde265_Makefile.am
new file mode 100644
index 000000000000..ca59913f4b89
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_Makefile.am
@@ -0,0 +1,19 @@
+--- libde265/Makefile.am.orig 2015-07-22 17:41:19.854783000 +0200
++++ libde265/Makefile.am 2015-07-22 17:41:35.651508000 +0200
+@@ -19,7 +19,6 @@
+ endif
+
+ libde265_la_LDFLAGS = -version-info $(LIBDE265_CURRENT):$(LIBDE265_REVISION):$(LIBDE265_AGE)
+-libde265_la_LIBADD = -lstdc++
+
+ libde265_la_SOURCES = \
+ acceleration.h \
+@@ -92,7 +91,7 @@
+ vui.h
+
+ SUBDIRS = encoder
+-libde265_la_LIBADD += encoder/libde265_encoder.la
++libde265_la_LIBADD = encoder/libde265_encoder.la
+
+ if ENABLE_SSE_OPT
+ SUBDIRS += x86
diff --git a/multimedia/libde265/files/patch-libde265_fallback-dct.cc b/multimedia/libde265/files/patch-libde265_fallback-dct.cc
new file mode 100644
index 000000000000..0435d5dd38fa
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_fallback-dct.cc
@@ -0,0 +1,11 @@
+--- libde265/fallback-dct.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/fallback-dct.cc 2015-07-22 17:24:55.690743000 +0200
+@@ -22,7 +22,7 @@
+
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_fallback-motion.cc b/multimedia/libde265/files/patch-libde265_fallback-motion.cc
new file mode 100644
index 000000000000..e186d0846afe
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_fallback-motion.cc
@@ -0,0 +1,11 @@
+--- libde265/fallback-motion.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/fallback-motion.cc 2015-07-22 17:25:04.707534000 +0200
+@@ -23,7 +23,7 @@
+
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_image.cc b/multimedia/libde265/files/patch-libde265_image.cc
new file mode 100644
index 000000000000..806758edc786
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_image.cc
@@ -0,0 +1,11 @@
+--- libde265/image.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/image.cc 2015-07-22 17:32:34.455583000 +0200
+@@ -47,7 +47,7 @@
+ #elif _WIN32
+ #define ALLOC_ALIGNED(alignment, size) _aligned_malloc((size), (alignment))
+ #define FREE_ALIGNED(mem) _aligned_free((mem))
+-#elif __APPLE__
++#elif defined(HAVE_POSIX_MEMALIGN)
+ static inline void *ALLOC_ALIGNED(size_t alignment, size_t size) {
+ void *mem = NULL;
+ if (posix_memalign(&mem, alignment, size) != 0) {
diff --git a/multimedia/libde265/files/patch-libde265_motion.cc b/multimedia/libde265/files/patch-libde265_motion.cc
new file mode 100644
index 000000000000..9732432fd579
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_motion.cc
@@ -0,0 +1,11 @@
+--- libde265/motion.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/motion.cc 2015-07-22 17:25:26.140610000 +0200
+@@ -31,7 +31,7 @@
+
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_pps.cc b/multimedia/libde265/files/patch-libde265_pps.cc
new file mode 100644
index 000000000000..ab44c25cc57c
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_pps.cc
@@ -0,0 +1,11 @@
+--- libde265/pps.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/pps.cc 2015-07-22 17:25:38.546345000 +0200
+@@ -27,7 +27,7 @@
+ #include <string.h>
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_refpic.cc b/multimedia/libde265/files/patch-libde265_refpic.cc
new file mode 100644
index 000000000000..eee9e4181ad2
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_refpic.cc
@@ -0,0 +1,11 @@
+--- libde265/refpic.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/refpic.cc 2015-07-22 17:25:52.916195000 +0200
+@@ -26,7 +26,7 @@
+ #include <stdlib.h>
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_threads.cc b/multimedia/libde265/files/patch-libde265_threads.cc
new file mode 100644
index 000000000000..680192770a2f
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_threads.cc
@@ -0,0 +1,11 @@
+--- libde265/threads.cc.orig 2015-07-14 13:51:51.000000000 +0200
++++ libde265/threads.cc 2015-07-22 17:26:03.712606000 +0200
+@@ -24,7 +24,7 @@
+
+ #if defined(_MSC_VER) || defined(__MINGW32__)
+ # include <malloc.h>
+-#else
++#elif defined(HAVE_ALLOCA_H)
+ # include <alloca.h>
+ #endif
+
diff --git a/multimedia/libde265/files/patch-libde265_util.h b/multimedia/libde265/files/patch-libde265_util.h
new file mode 100644
index 000000000000..f90ae891c840
--- /dev/null
+++ b/multimedia/libde265/files/patch-libde265_util.h
@@ -0,0 +1,11 @@
+--- libde265/util.h.orig 2015-07-22 16:48:18.032493000 +0200
++++ libde265/util.h 2015-07-22 16:48:43.439129000 +0200
+@@ -70,7 +70,7 @@
+ namespace std { using namespace std::tr1; }
+ #endif
+
+-#if __GNUC__ && GCC_VERSION < 40600
++#if __GNUC__ && GCC_VERSION < 40600 && !defined(__clang__)
+ // nullptr was introduced in gcc 4.6, a simple alias should be fine for our use case
+ #define nullptr NULL
+ #endif
diff --git a/multimedia/libde265/pkg-descr b/multimedia/libde265/pkg-descr
new file mode 100644
index 000000000000..7e42161856c2
--- /dev/null
+++ b/multimedia/libde265/pkg-descr
@@ -0,0 +1,9 @@
+libde265 is an open source implementation of the h.265 video codec. It is
+written from scratch and has a plain C API to enable a simple integration
+into other software.
+
+libde265 supports WPP and tile-based multithreading and includes SSE
+optimizations. The decoder includes all features of the Main profile
+and correctly decodes almost all conformance streams.
+
+WWW: http://www.libde265.org
diff --git a/multimedia/libde265/pkg-plist b/multimedia/libde265/pkg-plist
new file mode 100644
index 000000000000..6c3fe7f4dab5
--- /dev/null
+++ b/multimedia/libde265/pkg-plist
@@ -0,0 +1,14 @@
+bin/bjoentegaard
+bin/block-rate-estim
+bin/enc265
+bin/gen-enc-table
+bin/rd-curves
+bin/tests
+bin/yuv-distortion
+include/libde265/de265-version.h
+include/libde265/de265.h
+lib/libde265.a
+lib/libde265.so
+lib/libde265.so.0
+lib/libde265.so.0.0.10
+libdata/pkgconfig/libde265.pc