summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Radel2022-07-17 16:51:29 +0200
committerBenjamin Radel2022-07-17 16:51:29 +0200
commit1b2d6ee79f8dbdfb1a3e507d630e59da9f6025ad (patch)
treea3de639b0979611de76be1b955b406d9cd608351
parent340fa66499db0d58f3c888a4bd2b8bb72c2a6c00 (diff)
downloadaur-1b2d6ee79f8dbdfb1a3e507d630e59da9f6025ad.tar.gz
Bump libcp version to 1.8.22
Add patch to provide support for openjpeg 2.5
-rw-r--r--.SRCINFO12
-rw-r--r--0001-fix-compile-with-openjp25.patch26
-rw-r--r--PKGBUILD44
3 files changed, 48 insertions, 34 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e5eef672f039..975f5d1ce400 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,13 +1,12 @@
pkgbase = libdcp
pkgdesc = A small C++ library which can create and read Digital Cinema Packages using JPEG2000 and WAV files
- pkgver = 1.8.18
+ pkgver = 1.8.22
pkgrel = 1
url = https://carlh.net/libdcp
arch = i686
arch = x86_64
license = GPL
makedepends = git
- makedepends = cmake
makedepends = python
makedepends = boost>=1.72.0
makedepends = gcc
@@ -15,13 +14,14 @@ pkgbase = libdcp
depends = libxml++2.6
depends = xmlsec
depends = imagemagick
+ depends = openjpeg2>=2.5
depends = libcxml>=0.17.3
depends = libsigc++>=2.0
depends = boost-libs>=1.72.0
- depends = libasdcp-cth>=0.1.6
- source = libdcp-1.8.18::git+git://git.carlh.net/git/libdcp.git#tag=v1.8.18
- source = openjpeg-carl::git://git.carlh.net/git/openjpeg.git#branch=carl-2
- sha256sums = SKIP
+ depends = libasdcp-cth>=0.1.6.r18.ga276ed1
+ source = libdcp-1.8.22::git+git://git.carlh.net/git/libdcp.git#tag=v1.8.22
+ source = 0001-fix-compile-with-openjp25.patch
sha256sums = SKIP
+ sha256sums = 671046a87eaf567ca94cde72a92497239155d7cb12450ee12b41b2eed13c78fb
pkgname = libdcp
diff --git a/0001-fix-compile-with-openjp25.patch b/0001-fix-compile-with-openjp25.patch
new file mode 100644
index 000000000000..1cc8768962b3
--- /dev/null
+++ b/0001-fix-compile-with-openjp25.patch
@@ -0,0 +1,26 @@
+--- a/src/j2k_transcode.cc 2022-05-17 10:07:44.525679224 +0200
++++ b/src/j2k_transcode.cc 2022-05-17 10:04:18.846330309 +0200
+@@ -46,7 +46,7 @@
+ #include <openjpeg.h>
+ #include <cmath>
+ #include <iostream>
+-
++#include <string>
+
+ using std::min;
+ using std::pow;
+@@ -315,10 +315,13 @@
+ parameters.max_comp_size = parameters.max_cs_size / 1.25;
+ parameters.tcp_numlayers = 1;
+ parameters.tcp_mct = 1;
+- parameters.numgbits = fourk ? 2 : 1;
++ string numgbits = "GUARD_BITS=";
++ numgbits.append(std::to_string(fourk ? 2 : 1));
++ const char* extraopt[] { numgbits.data(), nullptr };
+
+ /* Setup the encoder parameters using the current image and user parameters */
+ opj_setup_encoder (encoder, &parameters, xyz->opj_image());
++ opj_encoder_set_extra_options(encoder, extraopt);
+
+ auto stream = opj_stream_default_create (OPJ_FALSE);
+ if (!stream) {
diff --git a/PKGBUILD b/PKGBUILD
index 0e3bb4c82da2..b5bb08d99c9e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,46 +2,34 @@
# Maintainer: Benjamin Radel <aur@radel.tk>
# Contributor: Stefan Karner <stefan.karner@student.tuwien.ac.at>
pkgname=libdcp
-pkgver=1.8.18
+pkgver=1.8.22
pkgrel=1
pkgdesc="A small C++ library which can create and read Digital Cinema Packages using JPEG2000 and WAV files"
arch=('i686' 'x86_64')
url="https://carlh.net/libdcp"
license=('GPL')
-depends=('libxml++2.6' 'xmlsec' 'imagemagick' 'libcxml>=0.17.3' 'libsigc++>=2.0' 'boost-libs>=1.72.0' 'libasdcp-cth>=0.1.6')
-makedepends=('git' 'cmake' 'python' 'boost>=1.72.0' 'gcc' 'pkg-config')
-source=("${pkgname}-${pkgver}::git+git://git.carlh.net/git/${pkgname}.git#tag=v${pkgver}"
- "openjpeg-carl::git://git.carlh.net/git/openjpeg.git#branch=carl-2")
+depends=('libxml++2.6' 'xmlsec' 'imagemagick' 'openjpeg2>=2.5' 'libcxml>=0.17.3' 'libsigc++>=2.0' 'boost-libs>=1.72.0' 'libasdcp-cth>=0.1.6.r18.ga276ed1')
+makedepends=('git' 'python' 'boost>=1.72.0' 'gcc' 'pkg-config')
+source=("${pkgname}-${pkgver}::git+git://git.carlh.net/git/${pkgname}.git#tag=v${pkgver}"
+ "0001-fix-compile-with-openjp25.patch")
sha256sums=('SKIP'
- 'SKIP')
+ '671046a87eaf567ca94cde72a92497239155d7cb12450ee12b41b2eed13c78fb')
prepare() {
- ### Ugly fix for custom openjpeg ###
- _openjpeg_builddir=$srcdir/openjpeg-build
- cd $srcdir/openjpeg-carl
- CFLAGS+=" -fPIC"
- cmake -B $_openjpeg_builddir -DCMAKE_BUILD_TYPE=None -DBUILD_PKGCONFIG_FILES=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=$srcdir/openjpeg-install -DCMAKE_C_FLAGS="$CFLAGS" -DCMAKE_CXX_FLAGS="$CXXFLAGS"
- cmake --build $_openjpeg_builddir
- cd $_openjpeg_builddir
- make install
- cd $srcdir/openjpeg-install
- ### Remove shared libs (why are they built anyway?) ###
- find . -type l -name '*.so*' -exec rm {} \;
- find . -type f -name '*.so*' -exec rm {} \;
- rm -r bin
- ### Rename pkgconf-file to avoid conflict with system openjpeg ###
- mv lib/pkgconfig/libopenjp2.pc lib/pkgconfig/libopenjp2-carl.pc
-
- ### Configure libdcp ###
- cd "$srcdir/${pkgname}-${pkgver}"
- ### Patch wscript to use static openjpeg-carl ###
- sed -i 's/libopenjp2/libopenjp2-carl/' wscript
- PKG_CONFIG_PATH=$srcdir/openjpeg-install/lib/pkgconfig \
- python waf configure --prefix=/usr
+ cd $srcdir/${pkgname}-${pkgver}
+ ### Patch libdcp for openjpeg>2.5 ###
+ for p in "${source[@]}"; do
+ if [[ "$p" =~ \.patch$ ]]; then
+ echo "Applying patch ${p##*/}"
+ patch -p1 -N -i "${srcdir}/${p##*/}"
+ fi
+ done
}
build() {
+ ### Configure libdcp ###
cd "${srcdir}/${pkgname}-${pkgver}"
+ python waf configure --prefix=/usr --disable-tests
python waf build
}