summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Rösner <rndxelement@protonmail.com>2023-04-06 08:52:50 +0200
committerJoonas Niilola <juippis@gentoo.org>2023-06-02 18:34:02 +0300
commit945cc3e557cf8a35f8677a2b447886c8178119df (patch)
tree8500da7ca201ed68abfdea3aa45e9bba7cc60ceb /media-gfx
parentmedia-libs/sdl2-pango: new package, add 2.1.5 (diff)
downloadgentoo-945cc3e557cf8a35f8677a2b447886c8178119df.tar.gz
gentoo-945cc3e557cf8a35f8677a2b447886c8178119df.tar.bz2
gentoo-945cc3e557cf8a35f8677a2b447886c8178119df.zip
media-gfx/tuxpaint: add 0.9.29
Tuxpaint version 0.9.29 and further only supports sdl2. Therefore, switched to sdl2 in this ebuild. Also include an upstream patch for fixing the problem of the trans directory not being created before it is used. Signed-off-by: Philipp Rösner <rndxelement@protonmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/tuxpaint/Manifest1
-rw-r--r--media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile-trans.patch30
-rw-r--r--media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile.patch164
-rw-r--r--media-gfx/tuxpaint/tuxpaint-0.9.29.ebuild66
4 files changed, 261 insertions, 0 deletions
diff --git a/media-gfx/tuxpaint/Manifest b/media-gfx/tuxpaint/Manifest
index 602f0fbbc91e..fdf65c4da48d 100644
--- a/media-gfx/tuxpaint/Manifest
+++ b/media-gfx/tuxpaint/Manifest
@@ -1,2 +1,3 @@
DIST tuxpaint-0.9.27.tar.gz 14292992 BLAKE2B f1337b828604bac968325437eba21046f871a0e07e049f2d3568f44adac400e729f4c6d46bcba9eddf9078089aaf55aab7d0774fb5ab126b96d317b59e37ee00 SHA512 197c6e23fb772edd57614e34dec23e160ece528b58e4a17d67fe4100c58cbcd6c4b5efccfbb24ca760b3a20755230b47f4e3e49969e75ba04ce722102a7f2dd9
DIST tuxpaint-0.9.28.tar.gz 14802638 BLAKE2B 7f7a8f3d61faf052d9872b5af775a6becdefae7cee1207ebcbb5db108fc381b0fa5ba8b7a8facd55ba6dcfca59886125cba7837d2de432fd5c75d2c40b509c41 SHA512 038f92f8d7ee8d85b1c9b18f7781e814ee55067e090fbfa597028e2d13218911157d00f312de2be9db29754a07c5706fc3c3e0e6ea3c71a15f80c37bb2eceb34
+DIST tuxpaint-0.9.29.tar.gz 17144658 BLAKE2B db00b14862ca139b0ee2851b7f57bda0df12d09ae516649dab25eb260bfc65fef35c968ab39593a71c173f196dc24426c5d4be79eee230c7139a7832d5508171 SHA512 9642c7145d32848e663b69428d7ff046e6109b292f3c3104dc40f8fcbf4152ab39815cf7dd3a217b0a6bd26ea50c57e0b14b186a23157fbac091ee10436646b3
diff --git a/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile-trans.patch b/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile-trans.patch
new file mode 100644
index 000000000000..20868602f65b
--- /dev/null
+++ b/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile-trans.patch
@@ -0,0 +1,30 @@
+# Sometimes the trans directory isn't created before
+# accessing it.
+# Upstream commit b452d84d2544a38eca1d2e4e9686a8eaef197d0f
+# fixes this.
+--- a/Makefile
++++ b/Makefile
+@@ -535,6 +535,7 @@ endif
+ # Build the translation files for gettext
+
+ $(MOFILES): trans/%.mo: src/po/%.po
++ @-mkdir -p trans
+ msgfmt -o $@ $<
+
+ %.desktop: %.desktop.in $(POTFILES)
+@@ -552,14 +553,9 @@ translations: trans
+ @echo "Install gettext to run Tux Paint in non-U.S. English modes."
+ @echo "--------------------------------------------------------------"
+ else
+-translations: trans $(MOFILES) src/tuxpaint.desktop src/tuxpaint-fullscreen.desktop src/org.tuxpaint.Tuxpaint.appdata.xml
++translations: $(MOFILES) src/tuxpaint.desktop src/tuxpaint-fullscreen.desktop src/org.tuxpaint.Tuxpaint.appdata.xml
+ endif
+
+-trans:
+- @echo
+- @echo "...Preparing translation files..."
+- @mkdir trans
+-
+ ######
+
+ windows_ARCH_INSTALL:=
diff --git a/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile.patch b/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile.patch
new file mode 100644
index 000000000000..e0b1c43a03bb
--- /dev/null
+++ b/media-gfx/tuxpaint/files/tuxpaint-0.9.29-Makefile.patch
@@ -0,0 +1,164 @@
+diff --git a/Makefile.old b/Makefile
+index 88d0d02..ab71f97 100644
+--- a/Makefile.old
++++ b/Makefile
+@@ -74,7 +74,7 @@ endif
+ # <HOSTROOT> is the directory containing support files for building for <HOST>:
+ # <HOSTROOT>/include Header files.
+ # <HOSTROOT>/lib Library files.
+-# <HOSTROOT>/lib/pkgconfig *.pc files.
++# <HOSTROOT>/pkgconfig *.pc files.
+ #
+ ifdef HOST
+ ifdef HOSTROOT
+@@ -105,7 +105,7 @@ ifdef HOST
+ # We set PKG_CONFIG_LIBDIR instead of PKG_CONFIG_PATH because we want to
+ # *change* where pkg-config looks for .pc files instead of adding to the
+ # default path which may have libraries that aren't for HOST.
+- export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/lib/pkgconfig
++ export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/$(GENTOO_LIBDIR)/pkgconfig
+ endif
+ endif
+
+@@ -171,14 +171,14 @@ windows_ARCH_CFLAGS:=
+ macos_ARCH_CFLAGS:=-isysroot $(SDKROOT) -I$(SDKROOT)/usr/include -I$(HOSTROOT)/include -mmacosx-version-min=$(MINVER) -arch $(subst $() $(), -arch ,$(ARCHS)) -w -headerpad_max_install_names -DHAVE_STRCASESTR
+ ios_ARCH_CFLAGS:=-isysroot $(SDKROOT) -I$(SDKROOT)/usr/include -I$(HOSTROOT)/include $(MINVEROPT) -arch $(subst $() $(), -arch ,$(ARCHS)) -w -fPIC -DHAVE_STRCASESTR -DUNLINK_ONLY
+ beos_ARCH_CFLAGS:=
+-linux_ARCH_CFLAGS:=
++linux_ARCH_CFLAGS:=${CFLAGS}
+ ARCH_CFLAGS:=$($(OS)_ARCH_CFLAGS)
+
+ windows_ARCH_LDFLAGS:=
+ macos_ARCH_LDFLAGS:=-isysroot $(SDKROOT) -L$(HOSTROOT)/lib -mmacosx-version-min=$(MINVER) -arch $(subst $() $(), -arch ,$(ARCHS))
+ ios_ARCH_LDFLAGS:=-isysroot $(SDKROOT) -L$(HOSTROOT)/lib $(MINVEROPT) -arch $(subst $() $(), -arch ,$(ARCHS))
+ beos_ARCH_LDFLAGS:=
+-linux_ARCH_LDFLAGS:=
++linux_ARCH_LDFLAGS:=${LDFLAGS}
+ ARCH_LDFLAGS:=$($(OS)_ARCH_LDFLAGS)
+ LDFLAGS:=$(ARCH_LDFLAGS)
+
+@@ -207,7 +207,7 @@ ARCH_HEADERS:=$($(OS)_ARCH_HEADERS)
+ windows_PREFIX:=/usr/local
+ macos_PREFIX:=Resources
+ ios_PREFIX:=.
+-linux_PREFIX:=/usr/local
++linux_PREFIX:=/usr
+ PREFIX:=$($(OS)_PREFIX)
+
+ # Root directory to place files when creating packages.
+@@ -241,10 +241,10 @@ LIBDIR=$(PREFIX)
+
+ # Magic Tool plug-ins
+ INCLUDE_PREFIX:=$(DESTDIR)$(PREFIX)/include
+-MAGIC_PREFIX:=$(DESTDIR)$(LIBDIR)/lib$(LIBDIRSUFFIX)/tuxpaint/plugins
++MAGIC_PREFIX:=$(DESTDIR)$(LIBDIR)/${GENTOO_LIBDIR}/tuxpaint/plugins
+
+ # Docs and man page:
+-DOC_PREFIX:=$(DESTDIR)$(PREFIX)/share/doc/tuxpaint-$(VER_VERSION)
++DOC_PREFIX:=$(DESTDIR)$(PREFIX)/share/doc/${PF}
+ MAN_PREFIX:=$(DESTDIR)$(PREFIX)/share/man
+ DEVMAN_PREFIX:=$(DESTDIR)$(PREFIX)/share/man
+
+@@ -367,7 +367,7 @@ MOUSE_CFLAGS:=-Isrc/$(MOUSEDIR) -D$(CURSOR_SHAPES)_CURSOR_SHAPES
+ # are 132x80. On larger screens, they will be bigger (since the New dialog
+ # is always 4x4 thumbnails); therefore, generating larger thumbs, which can
+ # be still be scaled down fairly quickly (esp. complicated SVG ones).
+-CONVERT_OPTS:=-alpha Background -alpha Off +depth -resize !264x160 -background white -interlace none
++CONVERT_OPTS:=-resize 264x160 -background white -extent 0x0 -interlace none
+
+ .SUFFIXES:
+
+@@ -551,7 +551,7 @@ trans:
+ windows_ARCH_INSTALL:=
+ macos_ARCH_INSTALL:=install-macbundle
+ ios_ARCH_INSTALL:=install-iosbundle
+-linux_ARCH_INSTALL:=install-xdg install-man install-importscript install-bash-completion
++linux_ARCH_INSTALL:=install-man install-importscript install-bash-completion
+ ARCH_INSTALL:=$($(OS)_ARCH_INSTALL)
+
+ # "make install" installs all of the various parts
+@@ -719,12 +719,12 @@ uninstall: uninstall-i18n
+ -rm $(BIN_PREFIX)/tuxpaint-import
+ -rm -r $(DATA_PREFIX)
+ -rm -r $(DOC_PREFIX)
+- -rm $(MAN_PREFIX)/man1/tuxpaint.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tuxpaint.1.gz
+- -rm $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tuxpaint-import.1.gz
+- -rm $(MAN_PREFIX)/man1/tp-magic-config.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tp-magic-config.1.gz
++ -rm $(MAN_PREFIX)/man1/tuxpaint.1
++ -rm $(MAN_PREFIX)/*/man1/tuxpaint.1
++ -rm $(MAN_PREFIX)/man1/tuxpaint-import.1
++ -rm $(MAN_PREFIX)/*/man1/tuxpaint-import.1
++ -rm $(MAN_PREFIX)/man1/tp-magic-config.1
++ -rm $(MAN_PREFIX)/*/man1/tp-magic-config.1
+ -rm -f -r $(CONFDIR)
+ -rm $(COMPLETIONDIR)/tuxpaint-completion.bash
+ -rm -r $(MAGIC_PREFIX)
+@@ -855,11 +855,11 @@ $(THUMB_STARTERS):
+ @mkdir -p starters/.thumbs
+ @if [ "x" != "x"$(STARTER_BACK_NAME) ] ; \
+ then \
+- composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png ; \
+- convert $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ 2> /dev/null ; \
++ gm composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png 2> /dev/null ; \
++ gm convert $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ || echo "($@ failed)" ; \
+ rm obj/tmp_$(notdir $(STARTER_NAME)).png ; \
+ else \
+- convert $(CONVERT_OPTS) $(STARTER_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
++ gm convert $(CONVERT_OPTS) $(STARTER_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
+ fi
+
+ $(INSTALLED_THUMB_STARTERS): $(DATA_PREFIX)/%: % install-example-starters-dirs
+@@ -876,7 +876,7 @@ TEMPLATE_NAME=$(or $(wildcard $(subst templates/.thumbs,templates,$(@:-t.png=.sv
+ $(THUMB_TEMPLATES):
+ @printf "."
+ @mkdir -p templates/.thumbs
+- @convert $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
++ @gm convert $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
+
+ $(INSTALLED_THUMB_TEMPLATES): $(DATA_PREFIX)/%: %
+ @install -D -m 644 $< $@ || ( echo "NO THUMB $<" )
+@@ -988,9 +988,9 @@ install-dlls:
+ @cp -R win32/etc/ $(BIN_PREFIX)
+ @echo
+ @echo "...Installing Library Modules..."
+- @mkdir -p $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
+- @cp $(MINGW_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
+- @strip -s $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll
++ @mkdir -p $(BIN_PREFIX)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders
++ @cp $(MINGW_DIR)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
++ @strip -s $(BIN_PREFIX)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders/*.dll
+
+ # Install symlink:
+ .PHONY: install-haiku
+@@ -1065,24 +1065,20 @@ install-man:
+ @install -d $(MAN_PREFIX)/man1
+ @# tuxpaint.1
+ @cp man/en/tuxpaint.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tuxpaint.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint.1
+ @# tuxpaint-import.1
+ @cp man/en/tuxpaint-import.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tuxpaint-import.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint-import.1
+ @# tp-magic-config.1
+ @cp man/en/tp-magic-config.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tp-magic-config.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tp-magic-config.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tp-magic-config.1
+ @echo
+ for l in `ls -d man/*.UTF-8 | cut -d '/' -f 2`; do \
+ DEST=$(MAN_PREFIX)/$$l/man1 ; \
+ echo "...Installing $$l man pages into $$DEST..." ; \
+ install -d $$DEST ; \
+ cp man/$$l/tuxpaint.1 $$DEST ; \
+- gzip -f $$DEST/tuxpaint.1 ; \
+- chmod a+rx,g-w,o-w $$DEST/tuxpaint.1.gz ; \
++ chmod a+rx,g-w,o-w $$DEST/tuxpaint.1 ; \
+ done
+ @# FIXME: The other man pages aren't localizable yet -bjk 2021.08.14
+
diff --git a/media-gfx/tuxpaint/tuxpaint-0.9.29.ebuild b/media-gfx/tuxpaint/tuxpaint-0.9.29.ebuild
new file mode 100644
index 000000000000..84464c6a3d04
--- /dev/null
+++ b/media-gfx/tuxpaint/tuxpaint-0.9.29.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature toolchain-funcs xdg
+
+DESCRIPTION="Drawing program designed for young children"
+HOMEPAGE="https://www.tuxpaint.org/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+S="${WORKDIR}"/${P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ app-text/libpaper:=
+ dev-libs/fribidi
+ gnome-base/librsvg:2
+ media-gfx/libimagequant
+ >=media-libs/freetype-2:2
+ >=media-libs/libpng-1.2:0=
+ media-libs/libsdl2[X,joystick]
+ media-libs/sdl2-gfx:=
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-mixer
+ media-libs/sdl2-pango
+ media-libs/sdl2-ttf
+ sys-libs/zlib
+ x11-libs/cairo
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/gperf
+ media-gfx/graphicsmagick[jpeg,png,svg]
+ sys-devel/gettext
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PF}-Makefile.patch
+ "${FILESDIR}"/${PF}-Makefile-trans.patch
+)
+
+src_compile() {
+ emake CC="$(tc-getCC)" GENTOO_LIBDIR="$(get_libdir)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" GENTOO_LIBDIR="$(get_libdir)" install
+ local file size
+ for file in data/images/icon[0-9]*x[0-9]*.png; do
+ size=${file##*/icon}
+ size=${size%%x*}
+ newicon -s "${size}" "${file}" tux4kids-tuxpaint.png
+ done
+ newmenu src/tuxpaint.desktop tux4kids-tuxpaint.desktop
+ docinto /usr/share/doc/${PF}
+ dodoc docs/*.txt
+ dodoc docs/en/*.txt
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "additional graphic stamps" media-gfx/tuxpaint-stamps
+}