summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Grozin <grozin@gentoo.org>2022-12-24 13:20:51 +0700
committerAndrey Grozin <grozin@gentoo.org>2022-12-24 13:20:51 +0700
commitf8a5416a5d7ff63ebc486472f0ee36ad41db0f99 (patch)
treef43853e33a2be4dd146d353a5f97967e664d3cad
parentdev-games/godot: add 4.0_beta10 (diff)
downloadgentoo-f8a5416a5d7ff63ebc486472f0ee36ad41db0f99.tar.gz
gentoo-f8a5416a5d7ff63ebc486472f0ee36ad41db0f99.tar.bz2
gentoo-f8a5416a5d7ff63ebc486472f0ee36ad41db0f99.zip
sci-visualization/gle: ebuild improvements
Signed-off-by: Andrey Grozin <grozin@gentoo.org>
-rw-r--r--sci-visualization/gle/Manifest1
-rw-r--r--sci-visualization/gle/files/array.patch15
-rw-r--r--sci-visualization/gle/files/cairo-pixman.patch21
-rw-r--r--sci-visualization/gle/files/ghostscript.patch16
-rw-r--r--sci-visualization/gle/files/install.patch20
-rw-r--r--sci-visualization/gle/files/lic.patch9
-rw-r--r--sci-visualization/gle/files/link.patch20
-rw-r--r--sci-visualization/gle/files/wayland.patch10
-rw-r--r--sci-visualization/gle/gle-4.3.3-r3.ebuild94
9 files changed, 206 insertions, 0 deletions
diff --git a/sci-visualization/gle/Manifest b/sci-visualization/gle/Manifest
index 77a35673c733..711e164a9042 100644
--- a/sci-visualization/gle/Manifest
+++ b/sci-visualization/gle/Manifest
@@ -1,4 +1,5 @@
DIST gle-4.3.3.tar.gz 1788614 BLAKE2B 3f608a8dad32d02b06808d5b2cfe4a2beb2c076c74e2972be2e94fe56bf24190b9cc7c69f45f1b02d399354f827c43722029871d6355bc0e4abe003f71b2bf82 SHA512 191dde025828f3376c7241e0580fcd459c743fe947f69cc3be1345b43c1d2587852a0d002dfdab7d8b7b45fd30e6bf4e8a4b5c73bcc2f3ce2fd08aa41d799b03
+DIST gle-c++17.patch.gz 18738 BLAKE2B e0d91aedf2121897336be72d8ad5878be95cf15982b38efb2fda86605d6e0f01b792013a9ab6407692254e5c074630daede05bcf97f349541dd979b21eb2ff15 SHA512 3bc4e335577f94eafd140cd64f2ada1926b1679c113de1f0bb0dd1afed67210470340470b19d89dae4ae1ef433f05120332a465711afb4e637e3cf0c6db68ace
DIST gle-graphics-4.2.5f-src.tar.gz 2330270 BLAKE2B 46435a2366a278a88786a2dd0e0cbcc48d3ba2fc6d895fb07c81216089a10b2223b2ba692b951ee01a6ab014e84cce9aa3969d063ddf7d04501820aa33084c5c SHA512 d459b24577c9c3f8825c368f864532c97d0a37c94018276a60c941d17dce0e55fe738f7eda3227a47848f2fb32fea1dcec29d9751a5be92cde4d8d38a2eeb0f5
DIST gle-library.tar.gz 1073620 BLAKE2B 051f9584dbf3195c7598ae54b12ab8d373e8054e8ff4c3d1dfed70319c29c5cb8bb1f0baff127768bcf9e36e4f52be3b3238e786e1598d1cdfbd6d1af6d6bdd3 SHA512 af6a46f2bd945714679eb9d8ca4c70ca9a741cf6652590eb3a8d9422059f49ce3d2c33418c37899bd54f9e0bc0085ae82ffd2f2b84b77879e2f2d09a0026d12a
DIST gle-manual.pdf.gz 1878050 BLAKE2B 6ebd3c0214ab8aee3e5a32d1e1cdf1c001cd09325c80a506a1e41f4eb3ec8869b75083c741a5cf8b2f3faf1d2cb0c6cfeca835daa284263598f749109904cc11 SHA512 7cc796626fa19541558004250a4a5b206ead7ba704c76fd948693aca144e70926b8213ee8b062841bffedc631eb39a255d69387bbee4a5acc7edc6d093e3113f
diff --git a/sci-visualization/gle/files/array.patch b/sci-visualization/gle/files/array.patch
new file mode 100644
index 000000000000..54b7676aea88
--- /dev/null
+++ b/sci-visualization/gle/files/array.patch
@@ -0,0 +1,15 @@
+diff -r -U2 src.orig/makefmt/makefmt.cpp src/makefmt/makefmt.cpp
+--- src.orig/makefmt/makefmt.cpp 2022-04-14 02:47:12.000000000 +0700
++++ src/makefmt/makefmt.cpp 2022-12-18 14:09:54.399896247 +0700
+@@ -115,6 +115,6 @@
+
+ int main(int argc, char *argv[]) {
+- char filename[80];
+- char fmtname[80];
++ char filename[200];
++ char fmtname[200];
+ init_accents();
+ /* encoding file given? */
+diff -r -U2 src.orig/TeX/CMakeLists.txt src/TeX/CMakeLists.txt
+--- src.orig/TeX/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/TeX/CMakeLists.txt 2022-12-20 13:34:00.953502995 +0700
diff --git a/sci-visualization/gle/files/cairo-pixman.patch b/sci-visualization/gle/files/cairo-pixman.patch
new file mode 100644
index 000000000000..e5b34eb287f9
--- /dev/null
+++ b/sci-visualization/gle/files/cairo-pixman.patch
@@ -0,0 +1,21 @@
+diff -r -U2 src.orig/CMakeLists.txt src/CMakeLists.txt
+--- src.orig/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/CMakeLists.txt 2022-12-20 13:03:11.386586253 +0700
+@@ -130,5 +133,5 @@
+ string(COMPARE NOTEQUAL "${CAIRO_LIBRARIES}" "CAIRO_LIBRARIES-NOTFOUND" CAIRO_FOUND)
+ endif()
+-find_path(CAIRO_INCLUDE_DIRS cairo.h PATHS ${CAIRO_ROOT} PATH_SUFFIXES include REQUIRED)
++find_path(CAIRO_INCLUDE_DIRS cairo.h PATHS ${CAIRO_ROOT} PATH_SUFFIXES include include/cairo REQUIRED)
+ if(CAIRO_FOUND)
+ message("-- Found CAIRO: " ${CAIRO_LIBRARIES} )
+@@ -154,8 +157,8 @@
+ endif()
+ else()
+- find_library(PIXMAN_LIBRARIES NAMES pixman pixmand PATHS ${PIXMAN_ROOT} PATH_SUFFIXES lib REQUIRED)
++ find_library(PIXMAN_LIBRARIES NAMES pixman pixmand pixman-1 PATHS ${PIXMAN_ROOT} PATH_SUFFIXES lib REQUIRED)
+ string(COMPARE NOTEQUAL "${PIXMAN_LIBRARIES}" "PIXMAN_LIBRARIES-NOTFOUND" PIXMAN_FOUND)
+ endif()
+-find_path(PIXMAN_INCLUDE_DIRS pixman.h PATHS ${PIXMAN_ROOT} PATH_SUFFIXES include REQUIRED)
++find_path(PIXMAN_INCLUDE_DIRS pixman.h PATHS ${PIXMAN_ROOT} PATH_SUFFIXES include include/pixman-1 REQUIRED)
+ if(PIXMAN_FOUND)
+ message("-- Found PIXMAN: " ${PIXMAN_LIBRARIES} )
diff --git a/sci-visualization/gle/files/ghostscript.patch b/sci-visualization/gle/files/ghostscript.patch
new file mode 100644
index 000000000000..576477ca17c3
--- /dev/null
+++ b/sci-visualization/gle/files/ghostscript.patch
@@ -0,0 +1,16 @@
+diff -r -U2 src.orig/CMakeLists.txt src/CMakeLists.txt
+--- src.orig/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/CMakeLists.txt 2022-12-20 13:03:11.386586253 +0700
+@@ -164,9 +167,9 @@
+ # -- GHOSTscript or GHOSTPDL include directory only since gle links to installed version at runtime
+ #
+-find_path(GDIR1 iapi.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices )
++find_path(GDIR1 iapi.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices ghostscript )
+ list(APPEND GHOSTPDL_INCLUDE_DIRS ${GDIR1} )
+-find_path(GDIR2 gdevdsp.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices )
++find_path(GDIR2 gdevdsp.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices ghostscript )
+ list(APPEND GHOSTPDL_INCLUDE_DIRS ${GDIR2} )
+-find_path(GDIR3 gserrors.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices )
++find_path(GDIR3 gserrors.h PATHS ${GHOSTPDL_ROOT} PATH_SUFFIXES psi base devices ghostscript )
+ list(APPEND GHOSTPDL_INCLUDE_DIRS ${GDIR3} )
+
diff --git a/sci-visualization/gle/files/install.patch b/sci-visualization/gle/files/install.patch
new file mode 100644
index 000000000000..b4a82f5548f6
--- /dev/null
+++ b/sci-visualization/gle/files/install.patch
@@ -0,0 +1,20 @@
+diff -r -U2 src.orig/TeX/CMakeLists.txt src/TeX/CMakeLists.txt
+--- src.orig/TeX/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/TeX/CMakeLists.txt 2022-12-20 13:34:00.953502995 +0700
+@@ -52,11 +52,11 @@
+ )
+ # make the inittex.ini in the install folder
+-install(CODE "execute_process(COMMAND ${CMAKE_INSTALL_PREFIX}/bin/gle$<$<CONFIG:Debug>:d> -mkinittex)")
++# install(CODE "execute_process(COMMAND ${CMAKE_INSTALL_PREFIX}/bin/gle$<$<CONFIG:Debug>:d> -mkinittex)")
+ # explicity install inittex.ini for cpack even though its created in this directory
+ # from gle -mkinittex command above
+-install(FILES
+- ${CMAKE_INSTALL_PREFIX}/inittex.ini
+- CONFIGURATIONS Release Debug
+- DESTINATION .
+-)
++# install(FILES
++# ${CMAKE_INSTALL_PREFIX}/inittex.ini
++# CONFIGURATIONS Release Debug
++# DESTINATION .
++# )
diff --git a/sci-visualization/gle/files/lic.patch b/sci-visualization/gle/files/lic.patch
new file mode 100644
index 000000000000..3bfa54a1de65
--- /dev/null
+++ b/sci-visualization/gle/files/lic.patch
@@ -0,0 +1,9 @@
+diff -r -U2 src.orig/CMakeLists.txt src/CMakeLists.txt
+--- src.orig/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/CMakeLists.txt 2022-12-20 13:03:11.386586253 +0700
+@@ -398,5 +401,4 @@
+ # documentation file installation in doc folder
+ install(FILES
+- ../doc/LICENSE.txt
+ ../doc/README.txt
+ ../doc/ChangeLog.txt
diff --git a/sci-visualization/gle/files/link.patch b/sci-visualization/gle/files/link.patch
new file mode 100644
index 000000000000..b565670cbd09
--- /dev/null
+++ b/sci-visualization/gle/files/link.patch
@@ -0,0 +1,20 @@
+diff -r -U2 src.orig/gui/CMakeLists.txt src/gui/CMakeLists.txt
+--- src.orig/gui/CMakeLists.txt 2022-04-14 02:47:12.000000000 +0700
++++ src/gui/CMakeLists.txt 2022-12-19 10:21:59.026388957 +0700
+@@ -54,11 +54,14 @@
+ $<$<PLATFORM_ID:Windows>:qgle.rc>
+ )
+-# no jpeg as its contianed in Qt
++# no jpeg as its contained in Qt
++# but need to add JPEG for Linux!
++# order matters: first static files (and libgle), then dynamic libraries
+ target_link_libraries ( qgle LINK_PUBLIC
++ libgle-graphics_s
+ ${ZLIB_LIBRARIES}
++ ${JPEG_LIBRARIES}
+ ${TIFF_LIBRARIES}
+ ${PNG_LIBRARIES}
+ ${PIXMAN_LIBRARIES}
+- libgle-graphics_s
+ Qt::Core
+ Qt::Gui
diff --git a/sci-visualization/gle/files/wayland.patch b/sci-visualization/gle/files/wayland.patch
new file mode 100644
index 000000000000..acdbc43a08bc
--- /dev/null
+++ b/sci-visualization/gle/files/wayland.patch
@@ -0,0 +1,10 @@
+diff -r -U2 src.orig/gui/main.cpp src/gui/main.cpp
+--- src.orig/gui/main.cpp 2022-04-14 02:47:12.000000000 +0700
++++ src/gui/main.cpp 2022-12-19 10:21:59.046388957 +0700
+@@ -277,5 +277,5 @@
+ #endif
+ #ifdef Q_OS_LINUX
+- Q_IMPORT_PLUGIN(QWaylandIntegrationPlugin)
++ // Q_IMPORT_PLUGIN(QWaylandIntegrationPlugin)
+ #endif
+ QLocale curLocale("C");
diff --git a/sci-visualization/gle/gle-4.3.3-r3.ebuild b/sci-visualization/gle/gle-4.3.3-r3.ebuild
new file mode 100644
index 000000000000..5c2be2635c7d
--- /dev/null
+++ b/sci-visualization/gle/gle-4.3.3-r3.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake elisp-common
+
+DESCRIPTION="Graphics Layout Engine"
+HOMEPAGE="http://glx.sourceforge.io/ https://github.com/vlabella/GLE/"
+IUSE="doc emacs"
+LIB_VERSION="d476418f006b001dc7f47dcafb413c0557fa44a7"
+SRC_URI="https://github.com/vlabella/GLE/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/vlabella/gle-library/archive/${LIB_VERSION}.tar.gz -> ${PN}-library.tar.gz
+ https://dev.gentoo.org/~grozin/gle-c++17.patch.gz
+ doc? ( https://dev.gentoo.org/~grozin/gle-manual.pdf.gz )
+ emacs? ( https://dev.gentoo.org/~grozin/gle-mode.el.gz )"
+S="${WORKDIR}"/GLE-${PV}/src
+
+LICENSE="BSD GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="app-text/ghostscript-gpl
+ dev-libs/boost
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtwidgets:5
+ media-libs/freeglut
+ media-libs/glu
+ media-libs/libpng
+ media-libs/tiff
+ sys-libs/zlib
+ media-libs/libjpeg-turbo
+ x11-libs/cairo
+ x11-libs/pixman
+ emacs? ( app-editors/emacs:* )"
+RDEPEND="${DEPEND}
+ virtual/latex-base"
+
+PATCHES=( \
+ "${WORKDIR}"/${PN}-c++17.patch \
+ "${FILESDIR}"/cairo-pixman.patch \
+ "${FILESDIR}"/ghostscript.patch \
+ "${FILESDIR}"/link.patch \
+ "${FILESDIR}"/array.patch \
+ "${FILESDIR}"/wayland.patch \
+ "${FILESDIR}"/install.patch \
+ "${FILESDIR}"/lic.patch \
+ )
+SITEFILE="64${PN}-gentoo.el"
+
+src_configure() {
+ local mycmakeargs=(
+ -DGLE_EXAMPLES_LIBRARY_PATH="${WORKDIR}"/gle-library-${LIB_VERSION}
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use emacs && elisp-compile "${WORKDIR}"/*.el
+}
+
+src_install() {
+ pushd "${WORKDIR}"/${P}_build > /dev/null || die "pushd failed"
+ newbin gle/gle gle.bin
+ dobin gui/qgle
+ insinto /usr/share/${PN}
+ doins gle/glerc
+ doins -r gle/font
+ popd > /dev/null
+ newbin "${FILESDIR}"/gle.sh gle
+ dodoc ../doc/README.txt ../doc/ChangeLog.txt
+ doins TeX/init.tex
+ mv "${WORKDIR}"/gle-library-${LIB_VERSION}/include "${WORKDIR}"/gle-library-${LIB_VERSION}/gleinc || die "mv failed"
+ doins -r "${WORKDIR}"/gle-library-${LIB_VERSION}/gleinc
+ GLE_TOP="${D}"/usr/share/${PN} "${D}"/usr/bin/gle.bin -mkinittex
+ use doc && dodoc "${WORKDIR}"/*.pdf
+ if use emacs; then
+ elisp-install ${PN} "${WORKDIR}"/*.el "${WORKDIR}"/*.elc
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}