commit:     25f5cda80f5130b59de355d513ed5ea26d52a025
Author:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 13 06:10:35 2025 +0000
Commit:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
CommitDate: Mon Oct 13 06:10:35 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25f5cda8

sci-visualization/gle: bump to 4.3.8

Closes: https://bugs.gentoo.org/949683
Signed-off-by: Andrey Grozin <grozin <AT> gentoo.org>

 sci-visualization/gle/Manifest              |   3 +
 sci-visualization/gle/files/gle-4.3.8.patch | 137 ++++++++++++++++++++++++++++
 sci-visualization/gle/gle-4.3.8.ebuild      |  93 +++++++++++++++++++
 3 files changed, 233 insertions(+)

diff --git a/sci-visualization/gle/Manifest b/sci-visualization/gle/Manifest
index af36b4a7020c..dc91d2383b01 100644
--- a/sci-visualization/gle/Manifest
+++ b/sci-visualization/gle/Manifest
@@ -1,4 +1,7 @@
 DIST gle-4.3.7.tar.gz 1810016 BLAKE2B 
76ce8502c7050ac3de724b7a45448f5e78f9e1d8ce44cd707e4d05871d81a4420de1a40108989d6c372c2f9a848755a703e78d170001152f7cc84d81603be36d
 SHA512 
0d9567dde326e8ddf31dbdacf1f0f68c4c42d44a40869ab5c88e6692a6a16760278f037cbced11205660d2ba0099b282b63e99a92f2e250359fa56df48b52ecf
+DIST gle-4.3.8.tar.gz 1813845 BLAKE2B 
60110635fef90a7ff1259f4d078a3776f68aa2f9a5e7d4970362a9452cefe2a2c7fcf0fb5c09dff1ac925f8299a724544f7386caef852122659526d3fd4528fc
 SHA512 
b341c057f97e0a4a409884cc5e78b2ce027632c1c20129be72a22bb8d832f0491d7d549584f958a40b283acbf3aaa4ddbedb84469064977762d159d95e080d36
 DIST gle-library-4.3.7.tar.gz 1643914 BLAKE2B 
00bc562132dd95fa00bbf8222b70151d8687b10b12e1d3486a7dca2dc0830120181004f5f0c95f595e23e8db2079dbdac2eb0af8e4bcb7ab898f47a18a607994
 SHA512 
78e4223d587f032f59c093fcb74e935cb8dece52747f4ec5523a95c7a7ee092c94555a8899226daae8d81071b295cef099e20a33c7075dffdab9cf369d9c4212
+DIST gle-library-4.3.8.tar.gz 1638476 BLAKE2B 
82fd9910ec87ff2685f026441279b650631968d4bfbcd48e027c23f1fd8165b45ee92039d73236471c5330c48529046cfc5b23c9d08f2932723ba0cf9205d36f
 SHA512 
cd622f24efb611ec524cab72a2b168a2e76aac0d48791d79960fa3a3372fc7eb37ad06bcd6ff42281dd78a24693f4f1d1560c7a4f28409a283cad8586943a37a
 DIST gle-manual-4.3.7.tar.gz 365047 BLAKE2B 
0997efa35927ceb2cf58efd04d5ec5968ae7b8571ae33233386d37f62117984a61d0eb9458cf909e88864863bbb6ca0a005b6ebb36424e2a3f09ba4c2a9dc652
 SHA512 
dcf61e49482439db083d0f30530dc3924095d8f0c2f91ae693f2dac7073110509cc508034823115493458b8c9d8375919c6b09554a33cecbdae85e423265e13e
+DIST gle-manual-4.3.8.tar.gz 365933 BLAKE2B 
5be7302b7eef0525abfe013767fcedf198b79dea49edf22c12430ad472c39402a198a0a4ea3ffc0ca71abb07c96b5f5a4321ce152bc5b9c9d5ea9d11600b374b
 SHA512 
ed571b1ac092d6ed646c99b356afe510d117669e82a1e42709a9aa7521e9b495d701c14efca59963dfaec5024f482314856c3e0c097dbb9ccddd4a9862627344
 DIST gle-mode.el.gz 7359 BLAKE2B 
bcbc61651f87f3ee1d079fc0a0de38788523a5ee33f56087b89f4e15b9ef5ee4010cf47679c38da3dfae1954ddbfee4728d10c0af6530f645ff63ab2b219da09
 SHA512 
c8d291c23f53346d8a44b7d95d737da88c6ec0af597fb8298a564a5567a9e9a0db658d14c3cb43157d58614e65cf2293eaeb01528a7a49722a2da07e16f940e1

diff --git a/sci-visualization/gle/files/gle-4.3.8.patch 
b/sci-visualization/gle/files/gle-4.3.8.patch
new file mode 100644
index 000000000000..5650a62ab5ad
--- /dev/null
+++ b/sci-visualization/gle/files/gle-4.3.8.patch
@@ -0,0 +1,137 @@
+diff '--color=auto' -r -U3 src.orig/CMakeLists.txt src/CMakeLists.txt
+--- src.orig/CMakeLists.txt    2025-10-05 20:31:58.000000000 +0700
++++ src/CMakeLists.txt 2025-10-13 11:23:23.257474930 +0700
+@@ -1,10 +1,11 @@
+ #
+ # -- CMakeLists.txt for GLE - Graphics Layout Engine
+ #
+-cmake_minimum_required (VERSION 3.30)
++cmake_minimum_required (VERSION 3.50)
+ cmake_policy(SET CMP0091 NEW)         # windows static runtimes selection
+ #cmake_policy(SET CMP0167 NEW)        # The FindBoost module is removed. only 
for cmake 3.30 and later live with the warning for now
+ cmake_policy(SET CMP0074 NEW) # uses <PackageName>_ROOT variables.
++cmake_policy(SET CMP0177 NEW) # normalize DESTINATION paths
+ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ include(CheckIncludeFile)
+@@ -595,18 +596,17 @@
+ 
+ # documentation file installation in doc folder
+ install(FILES
+-      ../doc/LICENSE.txt
+       ../doc/README.txt
+       ../doc/ChangeLog.txt
+       CONFIGURATIONS Release Debug
+-      DESTINATION ./doc
++      DESTINATION ./${GLEDOC}
+ )
+ #
+ # -- install include files from gle-library repo
+ #
+ install(DIRECTORY
+       ${GLE_EXAMPLES_LIBRARY_PATH}/include/
+-      DESTINATION ./gleinc
++      DESTINATION ./share/gle/gleinc
+       CONFIGURATIONS Release Debug
+       OPTIONAL
+       PATTERN "*.gle"
+@@ -617,7 +617,7 @@
+ #
+ install(FILES
+       ${GLE_USER_MANUAL_PATH}/gle-manual.pdf
+-      DESTINATION ./doc
++      DESTINATION ./${GLEDOC}
+       CONFIGURATIONS Release Debug
+       OPTIONAL
+ )
+diff '--color=auto' -r -U3 src.orig/fonts/CMakeLists.txt 
src/fonts/CMakeLists.txt
+--- src.orig/fonts/CMakeLists.txt      2025-10-05 20:31:58.000000000 +0700
++++ src/fonts/CMakeLists.txt   2025-10-13 11:25:22.307477179 +0700
+@@ -310,5 +310,5 @@
+       ${FMT_FILES} 
+       ${FVE_FILES}
+       CONFIGURATIONS Release Debug
+-      DESTINATION font)
++      DESTINATION ./share/gle/font)
+ 
+diff '--color=auto' -r -U3 src.orig/gle/CMakeLists.txt src/gle/CMakeLists.txt
+--- src.orig/gle/CMakeLists.txt        2025-10-05 20:31:58.000000000 +0700
++++ src/gle/CMakeLists.txt     2025-10-13 11:39:25.134159818 +0700
+@@ -1,3 +1,4 @@
++cmake_policy(SET CMP0177 NEW) # normalize DESTINATION paths
+ 
+ set(GLE_SOURCES
+       bitmap/img2ps.cpp
+@@ -129,10 +130,10 @@
+ 
+ if(ZSTD_FOUND)
+       target_link_libraries ( gle LINK_PUBLIC
+-              zstd::libzstd_static
++              zstd::libzstd_shared
+       )
+       target_link_libraries ( gle-graphics LINK_PUBLIC
+-              zstd::libzstd_static
++              zstd::libzstd_shared
+       )
+ endif()
+ 
+@@ -201,5 +202,5 @@
+ 
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glerc
+               CONFIGURATIONS Release Debug
+-              DESTINATION . )
++              DESTINATION ./share/gle )
+ 
+diff '--color=auto' -r -U3 src.orig/gui/CMakeLists.txt src/gui/CMakeLists.txt
+--- src.orig/gui/CMakeLists.txt        2025-10-05 20:31:58.000000000 +0700
++++ src/gui/CMakeLists.txt     2025-10-13 11:40:02.467493862 +0700
+@@ -126,7 +126,7 @@
+ endif()
+ if(ZSTD_FOUND)
+       list(APPEND QGLE_LIBRARIES
+-              zstd::libzstd_static
++              zstd::libzstd_shared
+       )
+ endif()
+ 
+diff '--color=auto' -r -U3 src.orig/TeX/CMakeLists.txt src/TeX/CMakeLists.txt
+--- src.orig/TeX/CMakeLists.txt        2025-10-05 20:31:58.000000000 +0700
++++ src/TeX/CMakeLists.txt     2025-10-13 12:42:14.357564475 +0700
+@@ -1,8 +1,8 @@
+ #
+ # -- generate inittex.ini from init.tex
+ #
+-set(GLE_DIR 
${CMAKE_BINARY_DIR}/gle$<$<PLATFORM_ID:Windows>:$<IF:$<CONFIG:debug>,/Debug,/Release>>)
+-set(GLE gle$<$<CONFIG:Debug>:d>)
++set(GLE_DIR ${CMAKE_BINARY_DIR}/gle)
++set(GLE ${GLE_DIR}/gle)
+ # inittex.ini is generated from init.tex by running "gle -mkinittex"
+ # for gle to run:
+ #  - init.tex must reside one directory level up from location of the gle 
executable.
+@@ -29,7 +29,7 @@
+       COMMAND 
"$<$<NOT:$<PLATFORM_ID:Windows>>:${CMAKE_COMMAND};-E;copy;${GLE_DIR}/glerc;${CMAKE_BINARY_DIR}/glerc>"
+       COMMAND 
"$<$<NOT:$<PLATFORM_ID:Windows>>:${CMAKE_COMMAND};-E;create_symlink;${GLE_DIR}/font;${CMAKE_BINARY_DIR}/font>"
+       COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/init.tex 
${CMAKE_BINARY_DIR}$<$<PLATFORM_ID:Windows>:/gle>/init.tex
+-      COMMAND ${GLE} -mkinittex
++      COMMAND GLE_TOP=${CMAKE_BINARY_DIR} ${GLE} -mkinittex
+       COMMAND ${CMAKE_COMMAND} -E copy 
${CMAKE_BINARY_DIR}$<$<PLATFORM_ID:Windows>:/gle>/inittex.ini 
${CMAKE_CURRENT_SOURCE_DIR}
+       COMMAND ${CMAKE_COMMAND} -E copy 
${CMAKE_BINARY_DIR}$<$<PLATFORM_ID:Windows>:/gle>/inittex.ini 
${CMAKE_BINARY_DIR}/TeX
+       COMMAND ${CMAKE_COMMAND} -E rm 
${CMAKE_BINARY_DIR}$<$<PLATFORM_ID:Windows>:/gle>/init.tex
+@@ -40,6 +40,8 @@
+       COMMAND_EXPAND_LISTS
+ )
+ 
++cmake_policy(SET CMP0177 NEW) # normalize DESTINATION paths
++
+ add_custom_target(inittex ALL
+       DEPENDS inittex.ini
+ )
+@@ -48,7 +50,7 @@
+       init.tex
+       inittex.ini
+       CONFIGURATIONS Release Debug
+-      DESTINATION .
++      DESTINATION ./share/gle
+ )
+ 
+ 

diff --git a/sci-visualization/gle/gle-4.3.8.ebuild 
b/sci-visualization/gle/gle-4.3.8.ebuild
new file mode 100644
index 000000000000..00991b0bea38
--- /dev/null
+++ b/sci-visualization/gle/gle-4.3.8.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE=Release
+inherit cmake elisp-common flag-o-matic
+
+DESCRIPTION="Graphics Layout Engine"
+HOMEPAGE="https://glx.sourceforge.io/ https://github.com/vlabella/GLE/";
+SRC_URI="https://github.com/vlabella/GLE/archive/refs/tags/v${PV}.tar.gz -> 
${P}.tar.gz
+       https://github.com/vlabella/gle-library/archive/refs/tags/v${PV}.tar.gz 
-> ${PN}-library-${PV}.tar.gz
+       doc? ( 
https://github.com/vlabella/gle-manual/archive/refs/tags/v${PV}.tar.gz -> 
${PN}-manual-${PV}.tar.gz )
+       emacs? ( https://dev.gentoo.org/~grozin/gle-mode.el.gz )"
+S="${WORKDIR}"/GLE-${PV}/src
+LICENSE="BSD gui? ( GPL-2+ )"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc emacs gui manip"
+
+DEPEND="app-text/ghostscript-gpl
+       app-text/poppler
+       dev-libs/boost
+       media-libs/libjpeg-turbo
+       media-libs/libpng
+       media-libs/tiff
+       sys-libs/zlib
+       x11-libs/cairo
+       x11-libs/pixman
+       gui? (
+               media-libs/freeglut
+               media-libs/glu
+               dev-qt/qtbase[dbus,gui,network,opengl,widgets]
+       )
+       manip? ( sys-libs/ncurses:0 )
+       emacs? ( app-editors/emacs:* )"
+RDEPEND="${DEPEND}
+       virtual/latex-base"
+BDEPEND="kde-frameworks/extra-cmake-modules
+       doc? ( virtual/latex-base )"
+
+PATCHES=(
+       "${FILESDIR}"/gle-4.3.8.patch
+       "${FILESDIR}"/top_dir.patch
+)
+SITEFILE="64${PN}-gentoo.el"
+
+src_configure() {
+       # -Werror=odr
+       # https://bugs.gentoo.org/927779
+       # https://github.com/vlabella/GLE/issues/35
+       filter-lto
+
+       local mycmakeargs=(
+               -DGLEDOC=share/doc/${PF}
+               -DGLE_EXAMPLES_LIBRARY_PATH="${WORKDIR}"/gle-library-${PV}
+               -DBUILD_GUI=$(usex gui)
+               -DBUILD_MANIP=$(usex manip)
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       use emacs && elisp-compile "${WORKDIR}"/*.el
+
+       # I don't really understand why is this hack needed
+       sed -e 's/|+//' -i "${BUILD_DIR}"/gle/cmake_install.cmake
+}
+
+src_install() {
+       export GLE_TOP="${D}"/usr/share/gle
+       cmake_src_install
+       if use doc; then
+               pushd "$WORKDIR"/gle-manual-${PV} > /dev/null || die "pushd 
gle_manual failed"
+               export PATH="${D}"/usr/bin:${PATH}
+               make -f Makefile.gcc GLE="${D}"/usr/bin/gle
+               dodoc gle-manual.pdf
+               popd > /dev/null
+       fi
+       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
+}

Reply via email to