diff options
author | Felix Kauselmann | 2017-07-30 20:14:06 +0200 |
---|---|---|
committer | Felix Kauselmann | 2017-07-30 20:14:06 +0200 |
commit | 2702753afd164cbd3a1781cbc266f2219e4b5e7b (patch) | |
tree | 5ea2c07c76bde15ae81080aee27f510d491a0943 | |
download | aur-2702753afd164cbd3a1781cbc266f2219e4b5e7b.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 115 | ||||
-rw-r--r-- | libpdfium.pc | 11 |
3 files changed, 154 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..30cece472771 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,28 @@ +# Generated by mksrcinfo v8 +# Sun Jul 30 18:13:33 UTC 2017 +pkgbase = libpdfium-nojs + pkgdesc = Open-source PDF rendering engine. + pkgver = 3112.r2.46e8ecf84 + pkgrel = 1 + url = https://pdfium.googlesource.com/pdfium/ + arch = x86_64 + license = BSD + makedepends = git + makedepends = python2 + makedepends = gn + makedepends = ninja + depends = freetype2 + depends = lcms2 + provides = libpdfium + conflicts = libpdfium-bin + source = git+https://pdfium.googlesource.com/pdfium + source = git+https://chromium.googlesource.com/chromium/src/build.git + source = glnames.py::http://git.savannah.gnu.org/cgit/freetype/freetype2.git/plain/src/tools/glnames.py?h=VER-2-8 + source = libpdfium.pc + md5sums = SKIP + md5sums = SKIP + md5sums = 8c2bc74bc06f1e6a940266a58bedeb12 + md5sums = 776bd9b489cb2878fdd318407a9f63e3 + +pkgname = libpdfium-nojs + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..95598a832eb2 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,115 @@ +# Maintainer: Felix Kauselmann <licorn at gmail dot com> + +pkgname=libpdfium-nojs +pkgver=3112.r2.46e8ecf84 +pkgrel=1 +pkgdesc="Open-source PDF rendering engine." +arch=('x86_64') +url="https://pdfium.googlesource.com/pdfium/" +license=('BSD') +depends=('freetype2' 'lcms2') +conflicts=('libpdfium-bin') +provides=('libpdfium') +makedepends=('git' 'python2' 'gn' 'ninja') + +source=("git+https://pdfium.googlesource.com/pdfium" + "git+https://chromium.googlesource.com/chromium/src/build.git" + "glnames.py::http://git.savannah.gnu.org/cgit/freetype/freetype2.git/plain/src/tools/glnames.py?h=VER-2-8" + "libpdfium.pc" + ) + +md5sums=('SKIP' + 'SKIP' + '8c2bc74bc06f1e6a940266a58bedeb12' + '776bd9b489cb2878fdd318407a9f63e3') + +pkgver() { + + cd $srcdir/pdfium + + # Version = branch name/number + number of commits since branch creation + # + short head + printf "%s.r%s.%s" $(git rev-parse --abbrev-ref HEAD | cut -d '/' -f2)\ + $(git rev-list --count master..) $(git rev-parse --short HEAD) + +} + +prepare() { + + cd "$srcdir/pdfium" + + ln -sf $srcdir/build build + + # Pdfium is developed alongside Chromium and does not provide releases + # Upstream recommends using Chromium's dev channels instead + + # Extract pdfium branch name used in stable channel from omahaproxy and do + # a checkout + git checkout "chromium/$(curl https://omahaproxy.appspot.com/linux?channel=stable | cut -d'.' -f 3)" + + # git checkout "chromium/$(curl https://omahaproxy.appspot.com/linux?channel=beta | cut -d'.' -f 3)" + # git checkout "chromium/$(curl https://omahaproxy.appspot.com/linux?channel=dev | cut -d'.' -f 3)" + + # Extract build repo revision needed from DEPS file and do a checkout + cd "$srcdir/pdfium/build" + git checkout $(awk '/build_revision/ {print substr($2,2,40)}' $srcdir/pdfium/DEPS) -q + + # Patch BUILD.gn to build a shared library + cd "$srcdir/pdfium" + sed -i 's/static_library("pdfium")/shared_library("pdfium")/g' BUILD.gn + + # 'source_set' builds faster and is more reliable for shared libraries + sed -i 's/static_library/source_set/g' BUILD.gn + sed -i 's/static_library/source_set/g' third_party/BUILD.gn + + # Patch pdfium headers to enable symbol export + sed -i 's/\#define DLLEXPORT/\#define DLLEXPORT __attribute__ ((visibility ("default")))/g'\ + public/fpdfview.h + sed -i '/"PNG_PREFIX",/a "FPDFSDK_EXPORTS",' BUILD.gn + + # https://bugs.chromium.org/p/pdfium/issues/detail?id=733 + mkdir -p $srcdir/pdfium/third_party/freetype/src/src/psnames/ + python2 $srcdir/glnames.py $srcdir/pdfium/third_party/freetype/src/src/psnames/pstables.h + + # set pdfium version in pc file + sed "s/@VERSION@/${pkgver}/g" -i "${srcdir}/libpdfium.pc" + +} + +build() { + + cd "$srcdir/pdfium" + + local _flags=( + 'is_clang=false' + 'use_sysroot=false' + 'is_debug=false' + 'symbol_level=0' + 'is_component_build=false' + 'pdf_enable_v8=false' + 'pdf_enable_xfa=false' + 'treat_warnings_as_errors=false' + 'use_system_libjpeg=true' + 'use_system_zlib=true' + 'pdf_bundle_freetype=false' + 'use_system_freetype=true' + 'use_system_lcms2=true' + 'use_gio=false' + ) + + gn gen out/Release --script-executable=/usr/bin/python2 --args="${_flags[*]}" + ninja -C out/Release pdfium + +} + +package() { + + cd "$srcdir/pdfium" + + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -D public/*.h --target-directory="${pkgdir}/usr/include/pdfium" + install -D docs/* --target-directory="${pkgdir}/usr/share/doc/pdfium" + install -Dm755 out/Release/libpdfium.so --target-directory="${pkgdir}/usr/lib/pdfium" + install -Dm644 ${srcdir}/libpdfium.pc --target-directory=${pkgdir}/usr/lib/pkgconfig + +} diff --git a/libpdfium.pc b/libpdfium.pc new file mode 100644 index 000000000000..607c8cf02a4a --- /dev/null +++ b/libpdfium.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib/pdfium +includedir=${prefix}/include/pdfium + +Name: Pdfium +Description: Open-source PDF rendering engine. +Version: @VERSION@ +Cflags: -I${includedir} +Requires.private: lcms2 libjpeg zlib freetype2 +Libs: -L${libdir} -lpdfium |