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 +}
