diff options
author | Tim Harder <radhermit@gentoo.org> | 2018-12-22 01:41:29 -0600 |
---|---|---|
committer | Tim Harder <radhermit@gentoo.org> | 2018-12-22 01:49:04 -0600 |
commit | 045561eb7c94dc7d4acf061a421d541c3a3d3e58 (patch) | |
tree | ca13a09d3da71c1728ee26bf482af0c0737dc883 /app-text/llpp | |
parent | media-sound/abcmidi: remove old (diff) | |
download | gentoo-045561eb7c94dc7d4acf061a421d541c3a3d3e58.tar.gz gentoo-045561eb7c94dc7d4acf061a421d541c3a3d3e58.tar.bz2 gentoo-045561eb7c94dc7d4acf061a421d541c3a3d3e58.zip |
app-text/llpp: version bump to 30
Closes: https://bugs.gentoo.org/662206
Closes: https://bugs.gentoo.org/672360
Signed-off-by: Tim Harder <radhermit@gentoo.org>
Diffstat (limited to 'app-text/llpp')
-rw-r--r-- | app-text/llpp/Manifest | 1 | ||||
-rw-r--r-- | app-text/llpp/files/Makefile | 90 | ||||
-rw-r--r-- | app-text/llpp/files/llpp-30-keysym.patch | 55 | ||||
-rw-r--r-- | app-text/llpp/files/llpp.desktop | 14 | ||||
-rw-r--r-- | app-text/llpp/llpp-30.ebuild | 70 |
5 files changed, 230 insertions, 0 deletions
diff --git a/app-text/llpp/Manifest b/app-text/llpp/Manifest index bfbf28930ced..b3c280baf7e7 100644 --- a/app-text/llpp/Manifest +++ b/app-text/llpp/Manifest @@ -1 +1,2 @@ DIST llpp-26b_p20180114.tar.gz 170204 BLAKE2B c7f46491d69350e8e94b444f0be4d7375f5658cccded792ecce2a246c907ae98bcca45d73e3b6c15765bd926d559327491559b5e5eec63bf2645cba84f6ee0d3 SHA512 1bc544f4bae268f573c2c111b69f7129bd3d1c1c8cc635c06f76e12670ad9476b4c2a2776e3959203ab6e53ea8ad1c68be290619298f7ebc1ae8203875f88314 +DIST llpp-30.tar.gz 165821 BLAKE2B 755648f9f7e0e0740dd9647559c085ab1626edfceb91d8df4aa783610f32499d744f24a2e0ac0d6f13e747695e8829112e59bcf0fc78c7ef5f4b2427c759353d SHA512 1dfcf273bdabfb3c7b38366bac60659555b943f459cb3fd6e656df1a33c0f84e6745d62522c5498df0bd6182bda13973144724054588c07145018bb3e758d893 diff --git a/app-text/llpp/files/Makefile b/app-text/llpp/files/Makefile new file mode 100644 index 000000000000..1fb99c9a2118 --- /dev/null +++ b/app-text/llpp/files/Makefile @@ -0,0 +1,90 @@ +VERSION = $(shell test -d .git && git describe --tags --dirty 2>/dev/null) +ifeq "$(VERSION)" "" +VERSION = 28 +endif + +# paths +PREFIX ?= /usr/local + +# includes and libs +PKGCONF_DEPS := freetype2 harfbuzz libopenjp2 libjpeg mupdf x11 zlib +CPPFLAGS += -D_GNU_SOURCE -DFFP +CFLAGS += -g -std=c99 -pedantic -Wall -Wextra -Wshadow $(shell pkg-config --cflags $(PKGCONF_DEPS)) +LDLIBS = -lpthread -ljbig2dec $(shell pkg-config --libs $(PKGCONF_DEPS)) + +# ocaml +CAMLOPT = ocamlopt +CAMLFLAGS = -g -w +a -safe-string -I +lablGL + +VPATH = wsi/x11 + +C_SRC = cutils.c keysym2ucs.c link.c xlib.c version.c +C_OBJ = $(C_SRC:.c=.o) +OCAML_SRC = utils.ml wsi.ml confstruct.ml parser.ml config.ml ffi.ml glutils.ml help.ml keys.ml utf8syms.ml listview.ml main.ml +OCAML_OBJ = $(OCAML_SRC:.ml=.cmx) +MOD = unix.cmxa str.cmxa lablgl.cmxa +SRCMANS = $(wildcard adoc/*.adoc) +MANS = $(SRCMANS:.adoc=.1) + +DISTFILES := Makefile $(OCAML_SRC) link.c glfont.c keysym2ucs.c wsi.mli +DISTFILES += $(wildcard *.sh) KEYS README BUILDING +DISTFILES += misc/ adoc/ + +all: llpp $(MANS) + +# dependency ordering +config.cmx: wsi.cmi parser.cmx utils.cmx confstruct.cmx +confstruct.cmx: wsi.cmx utils.cmx +ffi.cmx: config.cmx +glutils.cmx: ffi.cmx +help.cmx: help.cmi config.cmx utils.cmx +listview.cmx: utils.cmx glutils.cmx config.cmx utf8syms.cmx +main.cmx: main.ml utils.cmx config.cmx glutils.cmx listview.cmx ffi.cmx keys.cmx wsi.cmx +main.cmx: CAMLFLAGS += -thread +parser.cmx: utils.cmx +wsi.cmi: utils.cmx keys.cmx +wsi.cmx: wsi.cmi + +link.o: glfont.c +version.o: CPPFLAGS += -DLLPP_VERSION=$(VERSION) + +# ordinary targets +llpp: $(OCAML_OBJ) $(C_OBJ) + $(CAMLOPT) -o $@ $(CAMLFLAGS) $(C_OBJ) -ccopt '$(LDFLAGS)' -cclib '$(LDLIBS)' $(MOD) $(OCAML_OBJ) + + +confstruct.ml: genconfstr.sh + sh $< >$@ + +# pattern rules +%.o: %.c + $(CAMLOPT) -c -o $@ $(CAMLFLAGS) -cc $(CC) -ccopt '$(CFLAGS) $(CPPFLAGS)' $< + +%.cmx: %.ml + $(CAMLOPT) -c -o $@ $(CAMLFLAGS) $< + +%.cmi: %.mli + $(CAMLOPT) -c -o $@ $(CAMLFLAGS) $< + +%.1: %.adoc adoc/asciidoc.conf + a2x -d manpage -f manpage --asciidoc-opts="-f adoc/asciidoc.conf --out-file=$@.xml" $< + +# special targets +clean: + $(RM) llpp link.o help.ml $(OCAML_OBJ) $(OCAML_OBJ:.cmx=.cmi) $(OCAML_OBJ:.cmx=.o) $(MANS) $(MANS:.1=.xml) + +dist: clean + mkdir llpp-$(VERSION) + cp -r $(DISTFILES) llpp-$(VERSION) + tar czf llpp-$(VERSION).tar.gz llpp-$(VERSION) + rm -rf llpp-$(VERSION) + +install: + install -Dm755 llpp "$(DESTDIR)"$(PREFIX)/bin/llpp + install -Dm644 -t "$(DESTDIR)"$(PREFIX)/share/man/man1 $(MANS) + install -Dm755 misc/llppac "$(DESTDIR)"$(PREFIX)/bin/llppac + install -Dm755 misc/llpp.inotify "$(DESTDIR)"$(PREFIX)/bin/llpp.inotify + install -Dm755 misc/llpphtml "$(DESTDIR)"$(PREFIX)/bin/llpphtml + install -Dm644 misc/llpp.desktop "$(DESTDIR)"$(PREFIX)/share/applications/llpp.desktop + +.PHONY: all clean dist install diff --git a/app-text/llpp/files/llpp-30-keysym.patch b/app-text/llpp/files/llpp-30-keysym.patch new file mode 100644 index 000000000000..b1527e1856f1 --- /dev/null +++ b/app-text/llpp/files/llpp-30-keysym.patch @@ -0,0 +1,55 @@ +From 6e40f7315cb620fef1d96bbe56cfe24dd91e182a Mon Sep 17 00:00:00 2001 +From: Eli Schwartz <eschwartz93@gmail.com> +Date: Tue, 5 Jun 2018 11:56:06 -0400 +Subject: [PATCH] Do not use CPPFLAGS to add headers to source files + +Source code, e.g. #include, belongs in the source code, not the build +system. Build systems are for defining include paths, not the includes +themselves. + +Drop the KeySym keyword since it seems to be a useless alias for +uint32_t which might as well be used directly instead of indirectly +using #define everywhere. +--- + link.c | 4 ++-- + wsi/x11/keysym2ucs.c | 4 +++- + 2 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/link.c b/link.c +index 783b12f..e8dcac3 100644 +--- a/link.c ++++ b/link.c +@@ -3437,9 +3437,9 @@ CAMLprim value ml_keysymtoutf8 (value keysym_v) + { + CAMLparam1 (keysym_v); + CAMLlocal1 (str_v); +- KeySym keysym = Int_val (keysym_v); ++ uint32_t keysym = Int_val (keysym_v); + Rune rune; +- extern long keysym2ucs (KeySym); ++ extern long keysym2ucs (uint32_t); + int len; + char buf[5]; + +diff --git a/wsi/x11/keysym2ucs.c b/wsi/x11/keysym2ucs.c +index 38f9f1f..0f907c2 100644 +--- a/wsi/x11/keysym2ucs.c ++++ b/wsi/x11/keysym2ucs.c +@@ -37,6 +37,8 @@ + * AUTOMATICALLY GENERATED FILE, DO NOT EDIT !!! (unicode/convmap.pl) + */ + ++#include <inttypes.h> ++ + struct codepair { + unsigned short keysym; + unsigned short ucs; +@@ -816,7 +818,7 @@ struct codepair { + { 0x20ac, 0x20ac }, /* EuroSign € EURO SIGN */ + }; + +-long keysym2ucs(KeySym keysym) ++long keysym2ucs(uint32_t keysym) + { + int min = 0; + int max = sizeof(keysymtab) / sizeof(struct codepair) - 1; diff --git a/app-text/llpp/files/llpp.desktop b/app-text/llpp/files/llpp.desktop new file mode 100644 index 000000000000..9d81141aede6 --- /dev/null +++ b/app-text/llpp/files/llpp.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Name=llpp +GenericName=PDF Pager +Exec=llpp %f +TryExec=llpp +Terminal=false +Type=Application +MimeType=application/pdf;application/x-pdf;application/x-cbz;application/oxps;application/vnd.ms-xpsdocument;application/epub+zip;image/png;image/jpeg;image/pjpeg;image/gif;image/bmp;image/jpx;image/jp2;image/vnd.ms-photo;image/jxr;image/x-portable-bitmap;image/x-portable-greymap;image/x-portable-pixmap;image/x-portable-arbitrarymap;image/png; +Categories=Office;Viewer;Graphics +Actions=View +Version=1.0 +[Desktop Action View] +Name=View with llpp +Exec=llpp %f diff --git a/app-text/llpp/llpp-30.ebuild b/app-text/llpp/llpp-30.ebuild new file mode 100644 index 000000000000..9f5ec30d5069 --- /dev/null +++ b/app-text/llpp/llpp-30.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit toolchain-funcs xdg-utils + +DESCRIPTION="graphical PDF viewer which aims to superficially resemble less(1)" +HOMEPAGE="https://github.com/moosotc/llpp" +SRC_URI="https://github.com/moosotc/llpp/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="+ocamlopt static" + +LIB_DEPEND=">=app-text/mupdf-1.12.0:0=[static-libs] + media-libs/openjpeg:2[static-libs] + media-libs/fontconfig:1.0[static-libs] + media-libs/freetype:2[static-libs] + media-libs/jbig2dec[static-libs] + sys-libs/zlib[static-libs] + virtual/jpeg:0[static-libs] + x11-libs/libX11[static-libs]" +RDEPEND="x11-misc/xsel + !static? ( ${LIB_DEPEND//\[static-libs]} )" +DEPEND="${RDEPEND} + app-text/asciidoc + virtual/pkgconfig + static? ( ${LIB_DEPEND} + app-arch/bzip2[static-libs] + media-libs/libXcm[static-libs] + x11-libs/libXau[static-libs] + x11-libs/libXdmcp[static-libs] + x11-libs/libXmu[static-libs] ) + >=dev-lang/ocaml-4.02[ocamlopt?] + dev-ml/lablgl[glut,ocamlopt?]" + +RESTRICT="!ocamlopt? ( strip )" + +PATCHES=( "${FILESDIR}"/${P}-keysym.patch ) + +src_prepare() { + default + + # use custom makefile from archlinux with minor changes + cp "${FILESDIR}"/Makefile "${S}" || die + + # re-add desktop file removed upstream + cp "${FILESDIR}"/llpp.desktop "${S}"/misc || die +} + +src_compile() { + emake -j1 VERSION=${PV} +} + +src_install() { + emake DESTDIR="${D}" PREFIX="/usr" install + dodoc README Thanks +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_mimeinfo_database_update +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_mimeinfo_database_update +} |