diff options
author | Daniel Bermond | 2017-12-22 19:07:23 -0200 |
---|---|---|
committer | Daniel Bermond | 2017-12-22 19:07:23 -0200 |
commit | bb500999e0c726bd314a237eb8b20650dca36d7c (patch) | |
tree | d983b2d292893d0e0f3bafb4deb4b108f26d768d /PKGBUILD | |
parent | 739a579c3fa8bf9ed47b243b9d35e0f20766c20a (diff) | |
download | aur-bb500999e0c726bd314a237eb8b20650dca36d7c.tar.gz |
Rewrite to match official repository changes
Official repository now provides ImageMagick version 7 and it has
splitted the package into libmagick and imagemagick binaries.
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 175 |
1 files changed, 111 insertions, 64 deletions
@@ -15,32 +15,56 @@ _dejavu_font_dir='/usr/share/fonts/TTF' _gs_font_dir='/usr/share/fonts/Type1' +_urw_font_dir='/usr/share/fonts/gsfonts' _windows_font_dir='/usr/share/fonts/WindowsFonts' _1st_apple_font_dir='/usr/share/fonts/TTF' _2nd_apple_font_dir='/usr/share/fonts/Type1' _qdepth='32' pkgbase=imagemagick-full-git -pkgname=('imagemagick-full-git' 'imagemagick-full-doc-git') +pkgname=('libmagick-full-git' 'imagemagick-full-git' 'imagemagick-full-doc-git') pkgver=7.0.7.5.r12632.gabac32acf -pkgrel=1 +_majorver="${pkgver%%.*}" +_etcdir="ImageMagick-${_majorver}" +pkgrel=2 arch=('i686' 'x86_64') +pkgdesc="An image viewing/manipulation program (Q${_qdepth} HDRI with all libs and features, git version)" url='http://www.imagemagick.org/' license=('custom') +depends=( + # official repositories: + 'libltdl' 'lcms2' 'fontconfig' 'libxext' 'liblqr' 'libraqm' 'libpng' + 'gsfonts' 'ttf-dejavu' 'ghostpcl' 'ghostxps' + 'ghostscript' 'libraw' 'librsvg' 'libwebp' 'libwmf' 'libxml2' + 'ocl-icd' 'openexr' 'openjpeg2' 'pango' + 'glu' 'libxt' 'bzip2' 'djvulibre' 'fftw' 'freetype2' 'graphviz' + 'jbigkit' 'jemalloc' 'libjpeg-turbo' 'libtiff' 'pango' 'xz' 'zlib' + # AUR: + 'autotrace-nomagick' 'flif' 'libfpx' 'libraqm' 'libumem-git' +) makedepends=( # official repositories: 'git' - 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' - 'openexr' 'libwmf' 'librsvg' 'libxml2' 'liblqr' 'openjpeg2' 'libraw' - 'opencl-headers' 'opencl-icd-loader' 'libwebp' 'glu' - 'bzip2' 'djvulibre' 'ttf-dejavu' 'fftw' 'freetype2' 'fontconfig' - 'ghostscript' 'gsfonts' 'graphviz' 'jbigkit' 'jemalloc' 'libjpeg-turbo' - 'lcms2' 'libpng' 'libtiff' 'pango' 'perl' 'zlib' 'xz' + 'libltdl' 'lcms2' 'fontconfig' 'libxext' 'liblqr' 'libraqm' 'libpng' + 'gsfonts' 'ttf-dejavu' 'opencl-headers' 'chrpath' 'ghostpcl' 'ghostxps' + 'ghostscript' 'libraw' 'librsvg' 'libwebp' 'libwmf' 'libxml2' + 'ocl-icd' 'openexr' 'openjpeg2' 'pango' + 'glu' 'libxt' 'bzip2' 'djvulibre' 'fftw' 'freetype2' 'graphviz' + 'jbigkit' 'jemalloc' 'libjpeg-turbo' 'libtiff' 'pango' 'xz' 'zlib' # AUR: 'autotrace-nomagick' 'flif' 'libfpx' 'libraqm' 'libumem-git' ) -source=("$pkgname"::'git+https://github.com/ImageMagick/ImageMagick.git') -sha256sums=('SKIP') +source=("$pkgbase"::'git+https://github.com/ImageMagick/ImageMagick.git' + 'arch-fonts.diff') +sha256sums=('SKIP' + 'a85b744c61b1b563743ecb7c7adad999d7ed9a8af816650e3ab9321b2b102e73') + +prepare() { + cd "$pkgbase" + + # fix up typemaps to match Arch Linux packages, where possible + patch -Np1 -i "${srcdir}/arch-fonts.diff" +} pkgver() { cd "$pkgbase" @@ -55,7 +79,7 @@ pkgver() { build() { cd "$pkgbase" - CPPFLAGS='-I/usr/include/FLIF' \ + CFLAGS="${CFLAGS} -I/usr/include/FLIF" \ ./configure \ --prefix='/usr' \ --sysconfdir='/etc' \ @@ -72,7 +96,7 @@ build() { --enable-docs \ --with-threads \ --with-modules \ - --with-quantum-depth="$_qdepth" \ + --with-quantum-depth="${_qdepth}" \ --with-magick-plus-plus \ --with-perl \ --with-perl-options='INSTALLDIRS=vendor' \ @@ -101,6 +125,7 @@ build() { --with-openexr \ --with-pango \ --with-png \ + --with-raw \ --with-rsvg \ --with-tiff \ --with-webp \ @@ -108,82 +133,104 @@ build() { --with-xml \ --with-dejavu-font-dir="$_dejavu_font_dir" \ --with-gs-font-dir="$_gs_font_dir" \ + --with-urw-base35-font-dir="$_urw_font_dir" \ --with-windows-font-dir="$_windows_font_dir" \ --with-apple-font-dir="$_1st_apple_font_dir" \ - --with-fontpath="$_2nd_apple_font_dir" + --with-fontpath="$_2nd_apple_font_dir" \ + PSDelegate='/usr/bin/gs' \ + XPSDelegate='/usr/bin/gxps' \ + PCLDelegate='/usr/bin/gpcl6' \ make } -package_imagemagick-full-git() { - pkgdesc="An image viewing/manipulation program (Q${_qdepth} HDRI with all libs and features, git version)" - depends=( - # official repositories: - 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' - 'openexr' 'libwmf' 'librsvg' 'libxml2' 'liblqr' 'openjpeg2' 'libraw' - 'opencl-icd-loader' 'libwebp' 'glu' - 'bzip2' 'djvulibre' 'ttf-dejavu' 'fftw' 'freetype2' 'fontconfig' - 'ghostscript' 'gsfonts' 'graphviz' 'jbigkit' 'jemalloc' 'libjpeg-turbo' - 'lcms2' 'libpng' 'libtiff' 'pango' 'perl' 'zlib' 'xz' - # AUR: - 'autotrace-nomagick' 'flif' 'libfpx' 'libraqm' 'libumem-git' - ) - optdepends=( - # AUR: - 'ttf-mac-fonts: for Apple fonts support' - ) - provides=('imagemagick' 'imagemagick7' 'imagemagick-full' - 'imagemagick-git' 'imagemagick-fftw' +package_libmagick-full-git() { + pkgdesc+=" (library)" + backup=(etc/"$_etcdir"/{coder,colors,delegates,log,magic,mime,policy,quantization-table,thresholds,type,type-{dejavu,ghostscript}}.xml) + options=('!emptydirs' 'libtool') + provides=('libmagick' 'libmagick-git' "libMagickCore-${pkgver%%.*}.Q${_qdepth}HDRI.so" "libMagickWand-${pkgver%%.*}.Q${_qdepth}HDRI.so" "libMagick++-${pkgver%%.*}.Q${_qdepth}HDRI.so") - conflicts=('imagemagick' 'imagemagick7' 'imagemagick-fftw' 'imagemagick-no-hdri' - 'imagemagick-full' 'imagemagick-git') - backup=("etc/ImageMagick-${pkgver%%.*}/coder.xml" - "etc/ImageMagick-${pkgver%%.*}/colors.xml" - "etc/ImageMagick-${pkgver%%.*}/delegates.xml" - "etc/ImageMagick-${pkgver%%.*}/log.xml" - "etc/ImageMagick-${pkgver%%.*}/magic.xml" - "etc/ImageMagick-${pkgver%%.*}/mime.xml" - "etc/ImageMagick-${pkgver%%.*}/policy.xml" - "etc/ImageMagick-${pkgver%%.*}/quantization-table.xml" - "etc/ImageMagick-${pkgver%%.*}/thresholds.xml" - "etc/ImageMagick-${pkgver%%.*}/type.xml" - "etc/ImageMagick-${pkgver%%.*}/type-dejavu.xml" - "etc/ImageMagick-${pkgver%%.*}/type-ghostscript.xml" - "etc/ImageMagick-${pkgver%%.*}/type-windows.xml") - options=('!docs' 'libtool' '!emptydirs') + conflicts=('libmagick' 'libmagick-fftw' 'libmagick-no-hdri' + 'libmagick-git' 'libmagick-full') cd "$pkgbase" - make DESTDIR="$pkgdir" install + rm -f "$pkgdir"/usr/lib/*.la + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" install -D -m644 NOTICE "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" - # Security fix + rm -rf binpkg/* docpkg/* + + mkdir -p binpkg/usr/lib {binpkg,docpkg}/usr/share + + # split 'imagemagick' + cd binpkg + mv -f "${pkgdir}/usr/bin" usr/ + mv -f "${pkgdir}/usr/lib/perl5" usr/lib/ + mv -f "${pkgdir}/usr/share/man" usr/share/ + + # split docs + cd "${srcdir}/${pkgbase}/docpkg" + mv -f "${pkgdir}/usr/share/doc" usr/share/ + + # security fix # https://www.imagemagick.org/discourse-server/viewtopic.php?f=4&t=29588 - # https://www.imagetragick.com/ - sed -i '65i\ \<policy domain="coder" rights="none" pattern="EPHEMERAL" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '66i\ \<policy domain="coder" rights="none" pattern="URL" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '67i\ \<policy domain="coder" rights="none" pattern="HTTPS" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '68i\ \<policy domain="coder" rights="none" pattern="MVG" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '69i\ \<policy domain="coder" rights="none" pattern="MSL" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '70i\ \<policy domain="coder" rights="none" pattern="TEXT" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '71i\ \<policy domain="coder" rights="none" pattern="SHOW" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '72i\ \<policy domain="coder" rights="none" pattern="WIN" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" - sed -i '73i\ \<policy domain="coder" rights="none" pattern="PLT" />' "${pkgdir}/etc/ImageMagick-${pkgver%%.*}/policy.xml" + # https://imagetragick.com/ + sed -i '65i\ \<policy domain="coder" rights="none" pattern="EPHEMERAL" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '66i\ \<policy domain="coder" rights="none" pattern="URL" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '67i\ \<policy domain="coder" rights="none" pattern="HTTPS" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '68i\ \<policy domain="coder" rights="none" pattern="MVG" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '69i\ \<policy domain="coder" rights="none" pattern="MSL" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '70i\ \<policy domain="coder" rights="none" pattern="TEXT" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '71i\ \<policy domain="coder" rights="none" pattern="SHOW" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '72i\ \<policy domain="coder" rights="none" pattern="WIN" />' "${pkgdir}/etc/${_etcdir}/policy.xml" + sed -i '73i\ \<policy domain="coder" rights="none" pattern="PLT" />' "${pkgdir}/etc/${_etcdir}/policy.xml" +} + +package_imagemagick-full-git() { + depends=("libmagick-full-git=${pkgver}-${pkgrel}") + optdepends=( + # AUR: + 'imagemagick-full-doc-git: manual and API docs' + 'ttf-mac-fonts: for Apple fonts support' + ) + provides=('imagemagick' 'imagemagick-fftw') + conflicts=('imagemagick' 'imagemagick-fftw' 'imagemagick-no-hdri' + 'imagemagick-git' 'imagemagick-full') + options=('!emptydirs') + + cd "$pkgbase" + + mv -f binpkg/* "$pkgdir" + + find "$pkgdir/usr/lib/perl5" -name '*.so' -exec chrpath -d {} + + + # template start; name=perl-binary-module-dependency; version=1; + if [ $(find "${pkgdir}/usr/lib/perl5/" -name '*.so') ] + then + local _perlver_min="$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')" + local _perlver_max="$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')" + depends+=("perl>=${_perlver_min}" "perl<${_perlver_max}") + fi + # template end; + + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -D -m644 NOTICE "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" } package_imagemagick-full-doc-git() { - pkgdesc='The ImageMagick documentation (utilities manuals and libraries API, git version)' + pkgdesc+=" (utilities manuals and libraries API)" arch=('any') - provides=('imagemagick-doc' 'imagemagick-full-doc' 'imagemagick-git-doc') - conflicts=('imagemagick-doc' 'imagemagick-full-doc' 'imagemagick-git-doc') + provides=('imagemagick-doc') + conflicts=('imagemagick-doc' 'imagemagick-git-doc' 'imagemagick-full-doc') cd "$pkgbase" - make DESTDIR="$pkgdir" install-data-html + mv -f docpkg/* "$pkgdir" install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" install -D -m644 NOTICE "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" |