Bug#870640: Make source package bootstrappable

Osamu Aoki osamu at debian.org
Mon Aug 28 13:36:45 UTC 2017


Hi,

Here is an idea for improvement.  Please check my idea is right or not.
I am not familiar with this bootstrapping tricks.  (What does <!nocheck>
means? If nocheck is defined, skip it for dependency?  Following script
may need to flip logic ifeq/ifneq)

Recent commits by Mattia Rizzolo made me wonder what is this <!nocheck>.

Then the commit message made me wonder why perl library is needed for build
script.  It was unintuitive but reminded me of my own experience of
writing buggy code and its failed test build for uscan.pl.  It failed
before even running "make test".  This is because scripts/Makefile has
"all" target from which the following code is run:

	perl -I ../lib -c $@

This is to catch syntax error but probably cause error if pertinent perl
library modules are not available.  (Actually, 2 such lines.)

In order to skip such dependency to perl library modules during the
build, I think, you need to disable these syntax checking lines by
changing above mentioned lines to:

ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	perl -I ../lib -c $@
endif

Then the following will not cause trouble for missing
libgit-wrapper-perl which Mattia reported.
$ grep "Git::Wrapper" *
grep: devscripts: Is a directory
git-deborig.pl:use Git::Wrapper;
git-deborig.pl:    my $git = Git::Wrapper->new(".");
 
I guess most lib*-perl packages in Build-Depends can be disabled with
<!nocheck>, too.

Another heavy dependency are: docbook-xsl and xsltproc

These should be removed as <!nodoc> if the following lines in
scripts/Makefile:
%.1: %.dbk
	xsltproc --nonet -o $@ \
          /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl $<

are chenged to the following lines:
%.1: %.dbk
ifeq (,$(filter nodoc,$(DEB_BUILD_OPTIONS)))
	xsltproc --nonet -o $@ \
          /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl $<
else
	echo "Bogus manpage for boot strapping" > $@
endif

These should make building this package much easier for boot strapping.

Regards,

Osamu



More information about the devscripts-devel mailing list