Source: vala
Version: 0.56.13-1
Severity: normal
Tags: patch

Hello,

- vala build-depends on libgraphviz-dev
- graphviz build-depends on librsvg2-dev
- librsvg build-depends on valac

thus forming a build-dependency loop which makes bootstrapping new
Debian ports tricky.

AIUI, vala uses graphviz only for valadoc, so it is easy for it to allow
disabling the dependency through a pkg.vala.nographviz build profile
that just disables building valadoc, as the attached patch does, could
you apply it?

(valadoc is rarely build-depended on, or else mostly as
build-depend-indep or with <!nodoc>, so it seems like a good candidate
for bootstrap-skipping)

Thanks,
Samuel

-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 
'testing-debug'), (500, 'stable-security'), (500, 'stable-debug'), (500, 
'oldstable-proposed-updates-debug'), (500, 'oldstable-proposed-updates'), (500, 
'oldoldstable-proposed-updates'), (500, 'oldoldstable'), (500, 
'buildd-unstable'), (500, 'unstable'), (500, 'stable'), (500, 'oldstable'), (1, 
'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, arm64

Kernel: Linux 6.5.0-1-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.
--- debian/control.original     2023-11-07 20:52:29.000000000 +0000
+++ debian/control      2023-11-07 20:54:36.000000000 +0000
@@ -10,7 +10,7 @@
 Build-Depends: debhelper-compat (= 13),
                dh-sequence-gnome,
                libglib2.0-dev (>= 2.48),
-               libgraphviz-dev (>= 2.16),
+               libgraphviz-dev (>= 2.16) <!pkg.vala.nographviz>,
                bison (>= 2.3),
                flex,
                libdbus-1-dev <!nocheck>,
@@ -156,6 +156,7 @@
 
 Package: valadoc
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Depends: ${shlibs:Depends},
          libvaladoc-0.56-0 (= ${binary:Version}),
          libvalacodegen-0.56-0 (= ${binary:Version}),
@@ -171,6 +172,7 @@
 Package: libvaladoc-0.56-0
 Section: libs
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          libvala-0.56-0 (= ${binary:Version}),
@@ -187,6 +189,7 @@
 Package: libvaladoc-0.56-data
 Section: misc
 Architecture: all
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: foreign
 Depends: ${misc:Depends}
 Description: API documentation generator for vala (data)
@@ -199,6 +202,7 @@
 Package: libvaladoc-0.56-dev
 Section: libdevel
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: same
 Depends: ${misc:Depends},
          libvala-0.56-dev (= ${binary:Version}),
--- debian/control.in.original  2023-11-07 20:52:46.000000000 +0000
+++ debian/control.in   2023-11-07 20:54:16.000000000 +0000
@@ -6,7 +6,7 @@
 Build-Depends: debhelper-compat (= 13),
                dh-sequence-gnome,
                libglib2.0-dev (>= 2.48),
-               libgraphviz-dev (>= 2.16),
+               libgraphviz-dev (>= 2.16) <!pkg.vala.nographviz>,
                bison (>= 2.3),
                flex,
                libdbus-1-dev <!nocheck>,
@@ -152,6 +152,7 @@
 
 Package: valadoc
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Depends: ${shlibs:Depends},
          libvaladoc-0.56-0 (= ${binary:Version}),
          libvalacodegen-0.56-0 (= ${binary:Version}),
@@ -167,6 +168,7 @@
 Package: libvaladoc-0.56-0
 Section: libs
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          libvala-0.56-0 (= ${binary:Version}),
@@ -183,6 +185,7 @@
 Package: libvaladoc-0.56-data
 Section: misc
 Architecture: all
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: foreign
 Depends: ${misc:Depends}
 Description: API documentation generator for vala (data)
@@ -195,6 +198,7 @@
 Package: libvaladoc-0.56-dev
 Section: libdevel
 Architecture: any
+Build-Profiles: <!pkg.vala.nographviz>
 Multi-Arch: same
 Depends: ${misc:Depends},
          libvala-0.56-dev (= ${binary:Version}),
--- debian/rules.original       2023-11-07 20:55:30.000000000 +0000
+++ debian/rules        2023-11-07 21:02:42.000000000 +0000
@@ -6,6 +6,10 @@
 export DPKG_GENSYMBOLS_CHECK_LEVEL = 4
 include /usr/share/dpkg/architecture.mk
 
+ifneq (,$(filter pkg.vala.nographviz,$(DEB_BUILD_PROFILES)))
+NOVALADOC=--disable-valadoc
+endif
+
 %:
        dh $@
 
@@ -18,7 +22,7 @@
        dh_autoreconf --as-needed
 
 configure-bootstrap:
-       dh_auto_configure --builddirectory=bootstrap/build
+       dh_auto_configure --builddirectory=bootstrap/build -- $(NOVALADOC)
 
 bootstrap: configure-bootstrap
        dh_auto_build --builddirectory=bootstrap/build
@@ -29,7 +33,7 @@
        
LD_LIBRARY_PATH="$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH):$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH)/vala-0.56:$$LD_LIBRARY_PATH"
 \
                dh_auto_configure -- \
                        VALAC="$(CURDIR)/bootstrap/install/usr/bin/valac" \
-                       --enable-unversioned
+                       --enable-unversioned $(NOVALADOC)
 
 override_dh_auto_build:
        
LD_LIBRARY_PATH="$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH):$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH)/vala-0.56:$$LD_LIBRARY_PATH"
 \

Reply via email to