diff options
-rw-r--r-- | .SRCINFO | 26 | ||||
-rw-r--r-- | 010-flif-remove-apt-get-references.patch (renamed from flif-git-remove-apt-get-references-from-tools.patch) | 10 | ||||
-rw-r--r-- | 020-flif-fix-install.patch | 52 | ||||
-rw-r--r-- | 030-flif-use-arch-flags.patch | 26 | ||||
-rw-r--r-- | LICENSE-CC0-1.0-Universal | 81 | ||||
-rw-r--r-- | PKGBUILD | 54 | ||||
-rw-r--r-- | flif-git-fix-makefile-target-install-pixbufloader.patch | 27 |
7 files changed, 201 insertions, 75 deletions
@@ -1,27 +1,31 @@ pkgbase = flif-git pkgdesc = Free Lossless Image Format (git version) - pkgver = 0.3.r96.g74ea92b - pkgrel = 3 + pkgver = 0.4.r0.g0074d6f + pkgrel = 1 url = https://github.com/FLIF-hub/FLIF/ arch = x86_64 license = LGPL3 license = Apache + license = custom: CC0 1.0 Universal makedepends = git - depends = gcc-libs + makedepends = gdk-pixbuf2 + makedepends = sdl2 depends = libpng - depends = sdl2 - depends = gdk-pixbuf2 - depends = glib2 + optdepends = gdk-pixbuf2: for gdk-pixbuf loader optdepends = imagemagick: for gif2flif tool + optdepends = sdl2: for viewflif tool optdepends = apng-utils: for apng2flif tool provides = flif conflicts = flif source = git+https://github.com/FLIF-hub/FLIF.git - source = flif-git-fix-makefile-target-install-pixbufloader.patch - source = flif-git-remove-apt-get-references-from-tools.patch + source = LICENSE-CC0-1.0-Universal + source = 010-flif-remove-apt-get-references.patch + source = 020-flif-fix-install.patch + source = 030-flif-use-arch-flags.patch sha256sums = SKIP - sha256sums = 4d166a2f462b6d250202f6adf3b7280871fe98bc5385a851135d2473785d5399 - sha256sums = c516d92d4724e319af79bb1ac5d3dde81dac359fd4a02af1ee71239a49d58710 + sha256sums = 9b99bfef33dc330e756e48d28be6c8470ac4fc5c2802bdb20dc9f4929a169abc + sha256sums = 4ee963275d0559b470f5869fe6effb76f11517dc98334d12a4d0f150ecd95b65 + sha256sums = 7b72dec66d1bbb04597c37ac1715378609efc5076af8d3fffe296b3561ab334d + sha256sums = b7118224eedf510b215ba71e5c67744aa6616ac1baa854e09705e859772aff24 pkgname = flif-git - diff --git a/flif-git-remove-apt-get-references-from-tools.patch b/010-flif-remove-apt-get-references.patch index 50430beabf13..a74e76363a6b 100644 --- a/flif-git-remove-apt-get-references-from-tools.patch +++ b/010-flif-remove-apt-get-references.patch @@ -1,6 +1,5 @@ -diff -Naurp a/tools/apng2flif b/tools/apng2flif ---- a/tools/apng2flif 2017-04-28 15:46:54.000000000 +0000 -+++ b/tools/apng2flif 2019-03-05 15:42:29.000000000 +0000 +--- a/tools/apng2flif ++++ b/tools/apng2flif @@ -13,7 +13,6 @@ fi if ! $APNGDIS 2>/dev/null |grep -q APNG then @@ -9,9 +8,8 @@ diff -Naurp a/tools/apng2flif b/tools/apng2flif exit 1 fi -diff -Naurp a/tools/gif2flif b/tools/gif2flif ---- a/tools/gif2flif 2017-04-28 15:46:54.000000000 +0000 -+++ b/tools/gif2flif 2019-03-05 15:42:29.000000000 +0000 +--- a/tools/gif2flif ++++ b/tools/gif2flif @@ -13,7 +13,6 @@ fi if ! $CONVERT -version 2>/dev/null >/dev/null then diff --git a/020-flif-fix-install.patch b/020-flif-fix-install.patch new file mode 100644 index 000000000000..a31199e3f084 --- /dev/null +++ b/020-flif-fix-install.patch @@ -0,0 +1,52 @@ +--- a/src/Makefile ++++ b/src/Makefile +@@ -77,29 +77,24 @@ pixbufloader: libpixbufloader-flif$(LIBE + + install: flif libflif$(LIBEXT) install-libflif$(LIBEXT) + install -d $(PREFIX)/bin $(PREFIX)/share/man/man1 +- install -m 755 flif $(PREFIX)/bin +- strip -x $(PREFIX)/bin/flif ++ install -m 755 -D flif -t $(PREFIX)/bin + install -m 644 ../doc/flif.1 $(PREFIX)/share/man/man1 +- install -m 755 ../tools/gif2flif $(PREFIX)/bin +- install -m 755 ../tools/apng2flif $(PREFIX)/bin ++ install -m 755 -D ../tools/gif2flif -t $(PREFIX)/bin ++ install -m 755 -D ../tools/apng2flif -t $(PREFIX)/bin + + install-viewflif: +- install -m 755 viewflif $(PREFIX)/bin +- strip -x $(PREFIX)/bin/viewflif ++ install -m 755 -D viewflif -t $(PREFIX)/bin + + install-libflif$(LIBEXT): libflif$(LIBEXT) + install -d $(PREFIX)/lib + install -m 755 libflif$(LIBEXT) libflif$(LIBEXTV) $(PREFIX)/lib +- strip -x $(PREFIX)/lib/libflif$(LIBEXT) \ +- $(PREFIX)/lib/libflif$(LIBEXTV) + + # There is no prefix here because gdk-pixbuf will not search /usr/local for loadrs + # while it sucks, it's the truth + install-libpixbufloader-flif$(LIBEXT): libpixbufloader-flif$(LIBEXT) install-libflif$(LIBEXT) +- install -c -d /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders +- install -c -m 755 -s libpixbufloader-flif$(LIBEXT) /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/ +- gdk-pixbuf-query-loaders --update-cache +- xdg-mime install --novendor flif-mime.xml ++ install -c -d $(PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders ++ install -c -m 755 -s libpixbufloader-flif$(LIBEXT) $(PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/ ++ install -m 644 -D flif-mime.xml -t $(PREFIX)/share/mime/packages + + install-pixbufloader: install-libpixbufloader-flif$(LIBEXT) + +@@ -108,11 +103,8 @@ install-dev: + install -m 644 library/*.h $(PREFIX)/include + + install-decoder: decoder +- install -m 755 dflif $(PREFIX)/bin +- strip -x $(PREFIX)/bin/dflif ++ install -m 755 -D dflif -t $(PREFIX)/bin + install -m 755 libflif_dec$(LIBEXT) libflif_dec$(LIBEXTV) $(PREFIX)/lib +- strip -x $(PREFIX)/lib/libflif_dec$(LIBEXT) \ +- $(PREFIX)/lib/libflif_dec$(LIBEXTV) + + magic: + if ! grep -q FLIF /etc/magic; then cat ../doc/flif.magic >> /etc/magic; fi diff --git a/030-flif-use-arch-flags.patch b/030-flif-use-arch-flags.patch new file mode 100644 index 000000000000..5e9f49930f87 --- /dev/null +++ b/030-flif-use-arch-flags.patch @@ -0,0 +1,26 @@ +--- a/src/Makefile ++++ b/src/Makefile +@@ -46,12 +46,12 @@ flif: $(FILES_O) flif.o + + # Command-line FLIF decoding tool - Apache2 (not built by default) + dflif: $(FILES_H) libflif_dec$(LIBEXT) flif.cpp +- $(CXX) -std=gnu++11 $(CXXFLAGS) $(OPTIMIZATIONS) -DDECODER_ONLY -g0 -Wall flif.cpp $(LDFLAGS) -L. -lflif_dec -o dflif ++ $(CXX) -std=gnu++11 $(CXXFLAGS) $(CPPFLAGS) $(OPTIMIZATIONS) -DDECODER_ONLY -g0 -Wall flif.cpp $(LDFLAGS) -L. -lflif_dec -o dflif + + # Decoder-only library - Apache2 (not built by default) + libflif_dec$(LIBEXT): $(FILES_H) $(FILES_CPP) library/flif_dec.h library/flif-interface-private_dec.hpp library/flif-interface_dec.cpp + echo $(OS) +- $(CXX) -std=gnu++11 $(CXXFLAGS) $(LIB_OPTIMIZATIONS) -DDECODER_ONLY -g0 -Wall -shared -fPIC $(FILES_CPP) library/flif-interface_dec.cpp $(LDFLAGS) -Wl,$(SONAME),libflif_dec$(LIBEXTV) -o libflif_dec$(LIBEXTV) ++ $(CXX) -std=gnu++11 $(CXXFLAGS) $(CPPFLAGS) $(LIB_OPTIMIZATIONS) -DDECODER_ONLY -g0 -Wall -shared -fPIC $(FILES_CPP) library/flif-interface_dec.cpp $(LDFLAGS) -Wl,$(SONAME),libflif_dec$(LIBEXTV) -o libflif_dec$(LIBEXTV) + ln -sf libflif_dec$(LIBEXTV) libflif_dec$(LIBEXT) + + # Decoder + encoder library - LGPL +@@ -71,7 +71,7 @@ viewflif: libflif$(LIBEXT) viewflif.c + # The loader is LGPLed so there's no reason to use libflif_dec here + # -Werror=implicit-function-declaration is useful here to check for preprocessor dependency errors + libpixbufloader-flif$(LIBEXT): libflif$(LIBEXT) flif-pixbuf-loader.c +- $(CC) -shared $(CFLAGS) -Ilibrary/ -fPIC -Wall -Werror=implicit-function-declaration $(shell pkg-config --cflags gdk-pixbuf-2.0) -o libpixbufloader-flif$(LIBEXT) flif-pixbuf-loader.c $(LDFLAGS) $(shell pkg-config --libs gdk-pixbuf-2.0) -L. -lflif ++ $(CC) -shared $(CFLAGS) $(CPPFLAGS) -Ilibrary/ -fPIC -Wall -Werror=implicit-function-declaration $(shell pkg-config --cflags gdk-pixbuf-2.0) -o libpixbufloader-flif$(LIBEXT) flif-pixbuf-loader.c $(LDFLAGS) $(shell pkg-config --libs gdk-pixbuf-2.0) -L. -lflif + + pixbufloader: libpixbufloader-flif$(LIBEXT) + diff --git a/LICENSE-CC0-1.0-Universal b/LICENSE-CC0-1.0-Universal new file mode 100644 index 000000000000..6bd3b99b469b --- /dev/null +++ b/LICENSE-CC0-1.0-Universal @@ -0,0 +1,81 @@ + Creative Commons Legal Code + CC0 1.0 Universal + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related +Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original +work of authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a +commons of creative, cultural and scientific works ("Commons") that the public can reliably and without +fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute +as freely as possible in any form whatsoever and for any purposes, including without limitation +commercial purposes. These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific works, or to gain reputation or greater +distribution for their Work in part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any expectation of additional consideration +or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is +an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and +publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in +the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and +related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but +are not limited to, the following: + + i.the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; + ii.moral rights retained by the original author(s) and/or performer(s); + iii.publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in + paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, and under any national + implementation thereof, including any amended or successor version of such directive); and + vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or + treaty, and any national implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby +overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known +or unknown (including existing as well as future claims and causes of action), in the Work (i) in all +territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any +purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the +"Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the +detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet +enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or +ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted +taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so +judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, +non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights +in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future medium and for any number of +copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or +promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or +ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or +her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes +of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or + otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning + the Work, express, implied, statutory or otherwise, including without limitation warranties of title, + merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other + defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the + greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or + any use thereof, including without limitation any person's Copyright and Related Rights in the + Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions + or other rights required for any use of the Work. + d. Affirmer understands and acknowledges that Creative Commons is not a party to this document + and has no duty or obligation with respect to this CC0 or use of the Work. + @@ -1,51 +1,48 @@ -# Maintainer : Daniel Bermond < gmail-com: danielbermond > +# Maintainer : Daniel Bermond <dbermond@archlinux.org> # Contributor: John Jenkins <twodopeshaggy@gmail.com> pkgname=flif-git -pkgver=0.3.r96.g74ea92b -pkgrel=3 +pkgver=0.4.r0.g0074d6f +pkgrel=1 pkgdesc='Free Lossless Image Format (git version)' arch=('x86_64') url='https://github.com/FLIF-hub/FLIF/' -license=('LGPL3' 'Apache') -depends=('gcc-libs' 'libpng' 'sdl2' 'gdk-pixbuf2' 'glib2') -makedepends=('git') +license=('LGPL3' 'Apache' 'custom: CC0 1.0 Universal') +depends=('libpng') optdepends=( # official repositories: + 'gdk-pixbuf2: for gdk-pixbuf loader' 'imagemagick: for gif2flif tool' + 'sdl2: for viewflif tool' # AUR: 'apng-utils: for apng2flif tool' ) +makedepends=('git' 'gdk-pixbuf2' 'sdl2') provides=('flif') conflicts=('flif') source=('git+https://github.com/FLIF-hub/FLIF.git' - 'flif-git-fix-makefile-target-install-pixbufloader.patch' - 'flif-git-remove-apt-get-references-from-tools.patch') + 'LICENSE-CC0-1.0-Universal' + '010-flif-remove-apt-get-references.patch' + '020-flif-fix-install.patch' + '030-flif-use-arch-flags.patch') sha256sums=('SKIP' - '4d166a2f462b6d250202f6adf3b7280871fe98bc5385a851135d2473785d5399' - 'c516d92d4724e319af79bb1ac5d3dde81dac359fd4a02af1ee71239a49d58710') + '9b99bfef33dc330e756e48d28be6c8470ac4fc5c2802bdb20dc9f4929a169abc' + '4ee963275d0559b470f5869fe6effb76f11517dc98334d12a4d0f150ecd95b65' + '7b72dec66d1bbb04597c37ac1715378609efc5076af8d3fffe296b3561ab334d' + 'b7118224eedf510b215ba71e5c67744aa6616ac1baa854e09705e859772aff24') prepare() { - cd FLIF - - # fix Makefile target install-pixbufloader - patch -Np1 -i "${srcdir}/flif-git-fix-makefile-target-install-pixbufloader.patch" - - # remove apt-get references from installed tools - patch -Np1 -i "${srcdir}/flif-git-remove-apt-get-references-from-tools.patch" + patch -d FLIF -Np1 -i "${srcdir}/010-flif-remove-apt-get-references.patch" + patch -d FLIF -Np1 -i "${srcdir}/020-flif-fix-install.patch" + patch -d FLIF -Np1 -i "${srcdir}/030-flif-use-arch-flags.patch" } pkgver() { - cd FLIF - - # git, tags available - git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//' + git -C FLIF describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//' } build() { - cd FLIF/src - - make all decoder viewflif pixbufloader test-interface + make -C FLIF/src all decoder viewflif pixbufloader test-interface } @@ -66,11 +63,6 @@ check() { } package() { - cd FLIF/src - - make PREFIX="${pkgdir}/usr" install{,-dev} - make PREFIX="${pkgdir}/usr" install{-decoder,-viewflif,-pixbufloader} - - # mime type for pixbuf loader - install -D -m644 flif-mime.xml -t "${pkgdir}/usr/share/mime/packages" + make -C FLIF/src PREFIX="${pkgdir}/usr" install{,-dev,-decoder,-viewflif,-pixbufloader} + install -D -m644 LICENSE-CC0-1.0-Universal -t "${pkgdir}/usr/share/licenses/${pkgname}" } diff --git a/flif-git-fix-makefile-target-install-pixbufloader.patch b/flif-git-fix-makefile-target-install-pixbufloader.patch deleted file mode 100644 index b070b8bd91f0..000000000000 --- a/flif-git-fix-makefile-target-install-pixbufloader.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -Naurp a/src/Makefile b/src/Makefile ---- a/src/Makefile 2019-06-09 02:07:26.000000000 +0000 -+++ b/src/Makefile 2019-06-09 02:07:49.000000000 +0000 -@@ -96,10 +96,10 @@ install-libflif$(LIBEXT): libflif$(LIBEX - # There is no prefix here because gdk-pixbuf will not search /usr/local for loadrs - # while it sucks, it's the truth - install-libpixbufloader-flif$(LIBEXT): libpixbufloader-flif$(LIBEXT) install-libflif$(LIBEXT) -- install -c -d /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders -- install -c -m 755 -s libpixbufloader-flif$(LIBEXT) /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/ -- gdk-pixbuf-query-loaders --update-cache -- xdg-mime install --novendor flif-mime.xml -+ install -c -d $(PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders -+ install -c -m 755 -s libpixbufloader-flif$(LIBEXT) $(PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/ -+ #gdk-pixbuf-query-loaders --update-cache -+ #xdg-mime install --novendor flif-mime.xml - - install-pixbufloader: install-libpixbufloader-flif$(LIBEXT) - -@@ -131,7 +131,7 @@ uninstall: - rm -f $(PREFIX)/lib/libflif$(LIBEXTV) - rm -f $(PREFIX)/lib/libflif_dec$(LIBEXTV) - rm -f $(PREFIX)/share/man/man1/flif.1 -- rm -f /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-flif$(LIBEXT) -+ rm -f $(PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-flif$(LIBEXT) - - clean: - rm -f flif dflif lib*flif*$(LIBEXT)* viewflif flif.asan flif.dbg flif.prof flif.stats test-interface $(FILES_O) flif.o library/flif-interface.o |