[ITA] libsigc2.0

Philippe Baril Lecavalier pbl.ltx@gmail.com
Wed Apr 30 21:39:14 GMT 2025


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


More information about the Cygwin-apps mailing list