On Sat, Mar 15, 2008 at 08:21:24PM +0100, Javier Fernández-Sanguino Peña wrote: > On Sat, Mar 15, 2008 at 01:11:56PM -0400, James Vega wrote: > > This bug is still present[0] and is holding up an RC bug fix for > > Snort[1] from propagating to testing. The problem looks to be two-fold. > > > > First, the check added in 2.7.0-9 to prevent building the documentation > > will fail in dirty chroots. Since the latex packages take so long to > > install and uninstall, it's not uncommon for the slower buildds to have > > those packages pre-installed. > > There is no way I can prevent that, chroots should *not* run the binary > target at all (just binary-arch). This is a flaw in the build environment, > not in Snort.
They don't run the binary target. They simply call binary-arch. The
binary-arch target has a prerequisite on build which then causes the
build-indep target to be run. I've attached a patch which fixes the
build. I had no intention of uploading as an NMU, I just used the
changelog to document the changes I made in the patch.
> > Second, the binary-arch and binary-indep targets in your rules file both
> > have the install target as a prerequisite. It seems like they should
> > have the associated install-{arch,indep} as a prerequisite instead.
>
> This is not the reason why the buildd daemon tries to build the
> documentation. It is building it because it is calling build, and not just
> build-arch. I'm going to fix that, however.
>
> > [0] -
> > http://buildd.debian.org/fetch.cgi?pkg=snort;ver=2.7.0-11;arch=mipsel;stamp=1205557525
>
> If you review the build log you will see that it fails because it doesn't
> find a LaTeX .sty file, I'm adding texlive-latex-recommended to the
> Build-Depends-Indep line, since it was missing.
It's not installed because Build-Depends-Indep packages aren't
installed. The attached patch fixes removes the binary checks since
bulid-indep won't be run on a buildd.
--
James
GPG Key: 1024D/61326D40 2003-09-02 James Vega <[EMAIL PROTECTED]>
diff -u snort-2.7.0/debian/changelog snort-2.7.0/debian/changelog
--- snort-2.7.0/debian/changelog
+++ snort-2.7.0/debian/changelog
@@ -1,3 +1,18 @@
+snort (2.7.0-11.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * debian/rules:
+ - binary-{arch,indep} should have install-{arch,indep}, respectively, as
+ prerequisites instead of the general install target.
+ - Make build an empty target and rely on the target dependencies to call
+ the proper build targets. (Closes: #445113)
+ - Remove the binary checks from build-indep since it no longer gets called
+ for an arch-only build.
+ - Move installation of vim-common files from install-arch to
+ install-indep.
+
+ -- James Vega <[EMAIL PROTECTED]> Sat, 15 Mar 2008 13:17:19 -0400
+
snort (2.7.0-11) unstable; urgency=low
* Make the init.d script not depend on the availability of iproute.
diff -u snort-2.7.0/debian/rules snort-2.7.0/debian/rules
--- snort-2.7.0/debian/rules
+++ snort-2.7.0/debian/rules
@@ -117,15 +117,10 @@
build-indep-stamp:
dh_testdir
# Build the documentation
- [ ! -x /usr/bin/ps2pdf ] || [ ! -x /usr/bin/pslatex ] || \
- [ ! -x /usr/bin/dvips ] || $(MAKE) -C doc snort_manual.pdf faq.pdf
+ $(MAKE) -C doc snort_manual.pdf faq.pdf
touch $@
-build: build-arch build-indep build-stamp
-build-stamp:
- touch $@
-
-install: install-indep install-arch
+build:
install-arch:
dh_testdir
@@ -143,14 +138,6 @@
install -m 755 -o root -g root src/snort-pgsql $(TMP)/snort-pgsql/usr/sbin/snort
# install -m 755 -o root -g root src/snort-inline $(TMP)/snort/usr/sbin/snort
- # Install Debian specific, scripts and files of the snort-common
- # package
- install -m 755 -o root -g root `pwd`/debian/snort.cron.daily $(TMP)/snort-common/etc/cron.daily/5snort
- install -m 755 -o root -g root `pwd`/debian/my/snort-stat $(TMP)/snort-common/usr/sbin/
- install -m 644 -o root -g root `pwd`/etc/snort.conf $(TMP)/snort-common/etc/snort/
- install -m 644 -o root -g root `pwd`/etc/unicode.map $(TMP)/snort-common/etc/snort/
- install -m 644 -o root -g root `pwd`/etc/threshold.conf $(TMP)/snort-common/etc/snort/
-
# Install init.d initscripts
install -m 755 -o root -g root `pwd`/debian/snort.init.d $(TMP)/snort/etc/init.d/snort
@@ -204,6 +191,14 @@
# mkdir -p $(TMP)/snort-rules-default/usr/share/snort/
# install -m 644 -o root -g root `pwd`/debian/oldrules.md5 $(TMP)/snort-rules-default/usr/share/snort/oldrules.md5
+ # Install Debian specific, scripts and files of the snort-common
+ # package
+ install -m 755 -o root -g root `pwd`/debian/snort.cron.daily $(TMP)/snort-common/etc/cron.daily/5snort
+ install -m 755 -o root -g root `pwd`/debian/my/snort-stat $(TMP)/snort-common/usr/sbin/
+ install -m 644 -o root -g root `pwd`/etc/snort.conf $(TMP)/snort-common/etc/snort/
+ install -m 644 -o root -g root `pwd`/etc/unicode.map $(TMP)/snort-common/etc/snort/
+ install -m 644 -o root -g root `pwd`/etc/threshold.conf $(TMP)/snort-common/etc/snort/
+
cp etc/sid-msg.map $(TMP)/snort-rules-default/etc/snort/
cp etc/gen-msg.map $(TMP)/snort-rules-default/etc/snort/
cp etc/community-sid-msg.map $(TMP)/snort-rules-default/etc/snort/
@@ -217,7 +212,7 @@
dh_install -i
# Build architecture-independent files here.
-binary-indep: build-indep install
+binary-indep: build-indep install-indep
dh_testdir -i
dh_testroot -i
@@ -248,7 +243,7 @@
dh_builddeb -i
# Build architecture-dependent files here.
-binary-arch: build-arch install
+binary-arch: build-arch install-arch
dh_testdir -a
dh_testroot -a
dh_installdocs -a
signature.asc
Description: Digital signature

