2.10.3 (2020) -> 2.12.1 (2023)
Encountered two issues, documentation related.
1. Anything where doxygen calls dot (graphviz), it just hangs, forever,
no message. Looked at rebuilding graphviz and doxygen, tried a few
things, no simple fix. It seems to be a known issue with other packages,
applying this quick fix: Just toggle off any HAVE_DOT from Doxygen file.
2. It proposes to build a pdf optionally. If we make a doc package, why
not (I see they didn't bother with the pdf on Gentoo, not even an
option). I might have the reason... annoying docbook dependencies and
dblatex went on an infinite loop (missing a font dependency), also no
message. Annoying... Therefore proposed this upstream, so that it fails
cleanly in the future:
https://github.com/libsigcplusplus/libsigcplusplus/pull/113
The file:
https://cygwin.com/cgit/cygwin-packages/libsigc2.0/tree/libsigc2.0.cygport?id=f9fab9baa058f38057cad78fe7a2d46b23be8483
Log:
https://github.com/cygwin/scallywag/actions/runs/14690452902
--
Philippe Baril Lecavalier
diff --git a/libsigc2.0.cygport b/libsigc2.0.cygport
index 86050ff..b227667 100644
--- a/libsigc2.0.cygport
+++ b/libsigc2.0.cygport
@@ -1,20 +1,56 @@
ORIG_PN="libsigc++"
-inherit gtkmm
+
+inherit gnome.org meson
NAME="libsigc2.0"
-VERSION=2.10.3
+VERSION=2.12.1
RELEASE=1
+
+LICENSE="LGPL-2.1-or-later"
CATEGORY="Libs"
SUMMARY="C++ typesafe callback library"
-DESCRIPTION="libsigc++ implements a typesafe callback system for standard C++.
It
-allows you to define signals and to connect those signals to any
-callback function, either global or a member function, regardless of
-whether it is static or virtual."
+DESCRIPTION="libsigc++ implements a typesafe callback system for standard C++.
+It allows you to define signals and to connect those signals to any callback
+function, either global or a member function, regardless of whether it is
+static or virtual."
HOMEPAGE="https://libsigcplusplus.github.io/libsigcplusplus/"
+#SRC_URI="https://github.com/libsigcplusplus/libsigcplusplus/releases/download/${VERSION}/${ORIG_PN}-${VERSION}.tar.xz"
PKG_NAMES="${NAME}_0 ${NAME}-devel ${NAME}-doc"
libsigc2_0_0_CONTENTS="usr/bin/*-2.0-0.dll usr/share/doc/${NAME}/"
libsigc2_0_devel_CONTENTS='usr/include/ usr/lib/'
libsigc2_0_doc_CONTENTS='usr/share/devhelp/ usr/share/doc/libsigc++-2.0/'
-BUILD_REQUIRES="mm-common"
+BUILD_REQUIRES="mm-common python3"
+BUILD_REQUIRES+=" dblatex docbook-sgml45 docbook-xml45 docbook-xsl doxygen
+ graphviz libxslt texlive-collection-fontsrecommended" #doc
+BUILD_REQUIRES+=" libboost-devel" #benchmark test
+
+#graphviz not used (see below), only listed to avoid more edits to meson.build
+
+CYGMESON_ARGS="
+ -Dbenchmark=true
+ -Dbuild-deprecated-api=true
+ -Dbuild-documentation=true
+ -Dbuild-examples=false
+ -Dbuild-pdf=true
+ -Dbuild-tests=true
+ -Dvalidation=false
+"
+
+src_compile() {
+ cd ${S}
+ #build-docmentation just hangs, problem with doxygen/graphviz
+ sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \
+ ${S}/docs/reference/Doxyfile.in
+ meson_compile
+}
+
+src_install() {
+ cd ${S}
+ meson_install
+
+ #builds a pdf, ends up left behind
+ docinto /${ORIG_PN}-${VERSION%.*.*}.0/tutorial
+ dodoc ${S}/_build.${CHOST}/docs/manual/libsigc_manual.pdf
+}