Bug#806014: defendguin: FTBFS when built with dpkg-buildpackage -A (No such file or directory)

2016-07-13 Thread Santiago Vila
Greetings.

I have the ok from the Release Managers to consider this issue as RC
for stretch. I'm going to wait at least one week before raising
this to "serious".

There is a patch available for this bug. If you need someone to make
an upload, please ask for a sponsor in debian-mentors.

Thanks.



Bug#806014: defendguin: FTBFS when built with dpkg-buildpackage -A (No such file or directory)

2016-04-08 Thread Santiago Vila
tags 806014 + patch
thanks

> make install \
>   DESTDIR=/debian/defendguin \
>   BIN_PREFIX=debian/defendguin/usr/games \
>   MAN_PREFIX=debian/defendguin/usr/share \
>   DATA_PREFIX=debian/defendguin/usr/share/games/defendguin/
> make[2]: Entering directory '/<>'
> install -d debian/defendguin/usr/share/games/defendguin/
> cp -R data/* debian/defendguin/usr/share/games/defendguin/
> chmod -R a+rX,g-w,o-w debian/defendguin/usr/share/games/defendguin/
> cp defendguin debian/defendguin/usr/games/
> cp: cannot create regular file 'debian/defendguin/usr/games/': Not a directory

Explanation: We are creating arch-independent packages only, so
"debian/defendguin/usr/games" does not exist because "defendguin" is
arch-dependent.

The following patch makes the packaging a little bit more orthodox
(by using *.install files instead of dh_movefiles) and should fix the
"dpkg-buildpackage -A" problem.

Thanks.commit 37f56e1c0cf6b393733860b4b59b505ff8167a56
Author: Santiago Vila 
Date:   Fri Apr 8 21:38:12 2016 +0200

Patch

diff --git a/debian/defendguin-data.install b/debian/defendguin-data.install
new file mode 100644
index 000..5bad92b
--- /dev/null
+++ b/debian/defendguin-data.install
@@ -0,0 +1 @@
+usr/share/games
diff --git a/debian/defendguin.install b/debian/defendguin.install
new file mode 100644
index 000..9af7d9f
--- /dev/null
+++ b/debian/defendguin.install
@@ -0,0 +1,4 @@
+usr/games/defendguin
+usr/share/man
+debian/defendguin-icon.xpm  usr/share/pixmaps
+debian/defendguin.desktop   usr/share/applications
diff --git a/debian/rules b/debian/rules
index 5e64b21..ba7ca7c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -11,14 +11,10 @@ override_dh_auto_build:
make -j1 DEB_CFLAGS="$(CFLAGS)" DATA_PREFIX=/usr/share/games/defendguin/
 
 override_dh_auto_install:
+   install -d debian/tmp/usr/games
+   install -d debian/tmp/usr/share/pixmaps
+   install -d debian/tmp/usr/share/applications
make install \
-  DESTDIR=/debian/defendguin \
-  BIN_PREFIX=debian/defendguin/usr/games \
-  MAN_PREFIX=debian/defendguin/usr/share \
-  DATA_PREFIX=debian/defendguin/usr/share/games/defendguin/
-
-   install -D -m 644 debian/defendguin-icon.xpm 
debian/defendguin/usr/share/pixmaps/
-   install -D -m 644 debian/defendguin.desktop 
debian/defendguin/usr/share/applications/
-
-   dh_movefiles --sourcedir=debian/defendguin
-   rm -rf debian/defendguin/usr/share/games
+  BIN_PREFIX=debian/tmp/usr/games \
+  MAN_PREFIX=debian/tmp/usr/share \
+  DATA_PREFIX=debian/tmp/usr/share/games/defendguin/


Bug#806014: defendguin: FTBFS when built with dpkg-buildpackage -A (No such file or directory)

2015-11-24 Thread Santiago Vila
Package: src:defendguin
Version: 0.0.12-5
User: sanv...@debian.org
Usertags: binary-indep
Severity: important

Dear maintainer:

I tried to build this package with "dpkg-buildpackage -A"
(i.e. only architecture-independent packages), and it failed:


[...]
 fakeroot debian/rules binary-indep
dh binary-indep 
   dh_testroot -i
   dh_prep -i
   debian/rules override_dh_auto_install
make[1]: Entering directory '/<>'
make install \
  DESTDIR=/debian/defendguin \
  BIN_PREFIX=debian/defendguin/usr/games \
  MAN_PREFIX=debian/defendguin/usr/share \
  DATA_PREFIX=debian/defendguin/usr/share/games/defendguin/
make[2]: Entering directory '/<>'
install -d debian/defendguin/usr/share/games/defendguin/
cp -R data/* debian/defendguin/usr/share/games/defendguin/
chmod -R a+rX,g-w,o-w debian/defendguin/usr/share/games/defendguin/
cp defendguin debian/defendguin/usr/games/
cp: cannot create regular file 'debian/defendguin/usr/games/': Not a directory
Makefile:40: recipe for target 'install' failed
make[2]: *** [install] Error 1
make[2]: Leaving directory '/<>'
debian/rules:14: recipe for target 'override_dh_auto_install' failed
make[1]: *** [override_dh_auto_install] Error 2
make[1]: Leaving directory '/<>'
debian/rules:8: recipe for target 'binary-indep' failed
make: *** [binary-indep] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary-indep gave error exit 
status 2


Sorry not to have a fix, as I am reporting many bugs similar to
this one, but I can give some general hints:

* If all the arch-independent packages are dummy transitional packages
released with jessie, the easy fix is to drop them now.
 
* If not, debian/rules should be modified so that the binary-indep
target works in all cases, even when binary-arch is not used (this is
what the "Architecture: all" autobuilder does). For that:

* If you are using debhelper, you might want to use options -a and -i
for dh_* commands so that they do not act on packages they do not
have to act.

* Also, if you are using dh, the (independently) optional targets
override_dh_foo-arch and override_dh_foo-indep (for several values
of "foo") may be useful to write a debian/rules which behaves exactly
as desired.


After checking that both "dpkg-buildpackage -A" and "dpkg-buildpackage -B"
work properly, this package will be suitable to be uploaded in
source-only form if you wish (you might want to try it).

Thanks.