Bug#442763: wmxres: FTBFS if build twice in a row

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Todd Troxell
Hi Patrick,

On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> Package: wmxres
> Severity: important
> Version: 1.2-6
> User: [hidden email]
> Usertags: qa-doublebuild


> dpkg-source: building wmxres in wmxres_1.2-6.dsc
>   debian/rules build
>  dh_testdir
>  # Add here commands to configure the package.
>  touch configure-stamp
>  dh_testdir
>  # Add here commands to compile the package.
>  /usr/bin/make
>  make[1]: Entering directory `/build/user/wmxres-1.2'
>  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o -I/usr/X11R6/include
>  cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o wmgeneral/wmgeneral.o -I/usr/X11R6/include
>  make[1]: Leaving directory `/build/user/wmxres-1.2'
>  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
>  touch build-stamp
>   /usr/bin/fakeroot debian/rules binary
>  dh_testdir
>  dh_testroot
>  dh_clean -k
>  dh_installdirs
>  # Add here commands to install the package into debian/wmxres.
>  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
>  make[1]: Entering directory `/build/user/wmxres-1.2'
>  install -s -m 4755 -o root wmxres/wmxres \
>            /build/user/wmxres-1.2/debian/wmxres/usr/bin
>  install: cannot stat `wmxres/wmxres': No such file or directory
>  make[1]: *** [install] Error 1
>  make[1]: Leaving directory `/build/user/wmxres-1.2'
>  make: *** [install] Error 2
>  ******************************************************************************
>  Build finished at 20070905-2157
>  #### END OF BUILD NO 2 ####
>  FAILED [dpkg-buildpackage died]

I am having trouble reproducing this bug.

When I run "fakeroot dpkg-buildpackage" twice, I get two successful builds on
latest sid.  What is the sequence of actions that creates this situation?

Thanks,
--
Todd Troxell
http://rapidpacket.com/~xtat



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Patrick Winnertz-4
Am Mittwoch, 19. September 2007 08:00:12 schrieben Sie:

> Hi Patrick,
>
> On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> > Package: wmxres
> > Severity: important
> > Version: 1.2-6
> > User: [hidden email]
> > Usertags: qa-doublebuild
> >
> >
> > dpkg-source: building wmxres in wmxres_1.2-6.dsc
> >   debian/rules build
> >  dh_testdir
> >  # Add here commands to configure the package.
> >  touch configure-stamp
> >  dh_testdir
> >  # Add here commands to compile the package.
> >  /usr/bin/make
> >  make[1]: Entering directory `/build/user/wmxres-1.2'
> >  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o
> > -I/usr/X11R6/include cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o
> > wmgeneral/wmgeneral.o -I/usr/X11R6/include make[1]: Leaving directory
> > `/build/user/wmxres-1.2'
> >  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
> >  touch build-stamp
> >   /usr/bin/fakeroot debian/rules binary
> >  dh_testdir
> >  dh_testroot
> >  dh_clean -k
> >  dh_installdirs
> >  # Add here commands to install the package into debian/wmxres.
> >  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
> >  make[1]: Entering directory `/build/user/wmxres-1.2'
> >  install -s -m 4755 -o root wmxres/wmxres \
> >            /build/user/wmxres-1.2/debian/wmxres/usr/bin
> >  install: cannot stat `wmxres/wmxres': No such file or directory
> >  make[1]: *** [install] Error 1
> >  make[1]: Leaving directory `/build/user/wmxres-1.2'
> >  make: *** [install] Error 2
> >
> > **********************************************************************
> >******** Build finished at 20070905-2157
> >  #### END OF BUILD NO 2 ####
> >  FAILED [dpkg-buildpackage died]
>
> I am having trouble reproducing this bug.
>
> When I run "fakeroot dpkg-buildpackage" twice, I get two successful
> builds on latest sid.  What is the sequence of actions that creates this
> situation?

Mh... i don't know really. Lucas rebuilds the packages on the grid 5000
system and I was responsible for filling the bugs. The best thing would be
to ask lucas how he builds the packages.

But I guess two calls of "debuild" should do the job. The clean, build,
install, clean, build, install.  ;-)
(the important thing is here the second clean.. we want to ensure with this
procedure that the clean target of the debs is okay

Greetings
Patrick
>
> Thanks,



--
 .''`.   Patrick Winnertz <[hidden email]>
:  :' :  GNU/Linux Debian-Edu Developer
`. `'`   http://www.der-winnie.de http://d.skolelinux.org/~winnie
  `-  Debian - when you have better things to do than fixing systems



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Todd Troxell
Hi Lucas,

On Wed, Sep 19, 2007 at 11:09:21AM +0200, Patrick Winnertz wrote:

> Am Mittwoch, 19. September 2007 08:00:12 schrieben Sie:
> > Hi Patrick,
> >
> > On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> > > Package: wmxres
> > > Severity: important
> > > Version: 1.2-6
> > > User: [hidden email]
> > > Usertags: qa-doublebuild
> > >
> > >
> > > dpkg-source: building wmxres in wmxres_1.2-6.dsc
> > >   debian/rules build
> > >  dh_testdir
> > >  # Add here commands to configure the package.
> > >  touch configure-stamp
> > >  dh_testdir
> > >  # Add here commands to compile the package.
> > >  /usr/bin/make
> > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > >  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o
> > > -I/usr/X11R6/include cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o
> > > wmgeneral/wmgeneral.o -I/usr/X11R6/include make[1]: Leaving directory
> > > `/build/user/wmxres-1.2'
> > >  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
> > >  touch build-stamp
> > >   /usr/bin/fakeroot debian/rules binary
> > >  dh_testdir
> > >  dh_testroot
> > >  dh_clean -k
> > >  dh_installdirs
> > >  # Add here commands to install the package into debian/wmxres.
> > >  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
> > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > >  install -s -m 4755 -o root wmxres/wmxres \
> > >            /build/user/wmxres-1.2/debian/wmxres/usr/bin
> > >  install: cannot stat `wmxres/wmxres': No such file or directory
> > >  make[1]: *** [install] Error 1
> > >  make[1]: Leaving directory `/build/user/wmxres-1.2'
> > >  make: *** [install] Error 2
> > >
> > > **********************************************************************
> > >******** Build finished at 20070905-2157
> > >  #### END OF BUILD NO 2 ####
> > >  FAILED [dpkg-buildpackage died]
> >
> > I am having trouble reproducing this bug.
> >
> > When I run "fakeroot dpkg-buildpackage" twice, I get two successful
> > builds on latest sid.  What is the sequence of actions that creates this
> > situation?
>
> Mh... i don't know really. Lucas rebuilds the packages on the grid 5000
> system and I was responsible for filling the bugs. The best thing would be
> to ask lucas how he builds the packages.
>
> But I guess two calls of "debuild" should do the job. The clean, build,
> install, clean, build, install.  ;-)
> (the important thing is here the second clean.. we want to ensure with this
> procedure that the clean target of the debs is okay

Do you know how I can reproduce this bug?  I tried so far:
-fakeroot dpkg-buildpackage (2x)
-debuild (2x)
-fakeroot debian/rules binary, clean, binary ,clean

Thanks,
--
Todd Troxell
http://rapidpacket.com/~xtat



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Lucas Nussbaum
On 20/09/07 at 13:44 -0500, Todd Troxell wrote:

> Hi Lucas,
>
> On Wed, Sep 19, 2007 at 11:09:21AM +0200, Patrick Winnertz wrote:
> > Am Mittwoch, 19. September 2007 08:00:12 schrieben Sie:
> > > Hi Patrick,
> > >
> > > On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> > > > Package: wmxres
> > > > Severity: important
> > > > Version: 1.2-6
> > > > User: [hidden email]
> > > > Usertags: qa-doublebuild
> > > >
> > > >
> > > > dpkg-source: building wmxres in wmxres_1.2-6.dsc
> > > >   debian/rules build
> > > >  dh_testdir
> > > >  # Add here commands to configure the package.
> > > >  touch configure-stamp
> > > >  dh_testdir
> > > >  # Add here commands to compile the package.
> > > >  /usr/bin/make
> > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > >  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o
> > > > -I/usr/X11R6/include cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o
> > > > wmgeneral/wmgeneral.o -I/usr/X11R6/include make[1]: Leaving directory
> > > > `/build/user/wmxres-1.2'
> > > >  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
> > > >  touch build-stamp
> > > >   /usr/bin/fakeroot debian/rules binary
> > > >  dh_testdir
> > > >  dh_testroot
> > > >  dh_clean -k
> > > >  dh_installdirs
> > > >  # Add here commands to install the package into debian/wmxres.
> > > >  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
> > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > >  install -s -m 4755 -o root wmxres/wmxres \
> > > >            /build/user/wmxres-1.2/debian/wmxres/usr/bin
> > > >  install: cannot stat `wmxres/wmxres': No such file or directory
> > > >  make[1]: *** [install] Error 1
> > > >  make[1]: Leaving directory `/build/user/wmxres-1.2'
> > > >  make: *** [install] Error 2
> > > >
> > > > **********************************************************************
> > > >******** Build finished at 20070905-2157
> > > >  #### END OF BUILD NO 2 ####
> > > >  FAILED [dpkg-buildpackage died]
> > >
> > > I am having trouble reproducing this bug.
> > >
> > > When I run "fakeroot dpkg-buildpackage" twice, I get two successful
> > > builds on latest sid.  What is the sequence of actions that creates this
> > > situation?
> >
> > Mh... i don't know really. Lucas rebuilds the packages on the grid 5000
> > system and I was responsible for filling the bugs. The best thing would be
> > to ask lucas how he builds the packages.
> >
> > But I guess two calls of "debuild" should do the job. The clean, build,
> > install, clean, build, install.  ;-)
> > (the important thing is here the second clean.. we want to ensure with this
> > procedure that the clean target of the debs is okay
>
> Do you know how I can reproduce this bug?  I tried so far:
> -fakeroot dpkg-buildpackage (2x)
> -debuild (2x)
> -fakeroot debian/rules binary, clean, binary ,clean
 
Hi,

I tried again. The failure didn't happen after the third
dpkg-buildpackage run, but only after the fifth. So I guess that there's
some randomness in the build process that makes it to fail sometimes.

You can try doing:
while dpkg-buildpackage -us -uc; do :; done
--
| Lucas Nussbaum
| [hidden email]   http://www.lucas-nussbaum.net/ |
| jabber: [hidden email]             GPG: 1024D/023B3F4F |



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Todd Troxell
Hi Lucas,

On Fri, Sep 21, 2007 at 09:32:06AM +0200, Lucas Nussbaum wrote:

> On 20/09/07 at 13:44 -0500, Todd Troxell wrote:
> > Hi Lucas,
> >
> > On Wed, Sep 19, 2007 at 11:09:21AM +0200, Patrick Winnertz wrote:
> > > Am Mittwoch, 19. September 2007 08:00:12 schrieben Sie:
> > > > Hi Patrick,
> > > >
> > > > On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> > > > > Package: wmxres
> > > > > Severity: important
> > > > > Version: 1.2-6
> > > > > User: [hidden email]
> > > > > Usertags: qa-doublebuild
> > > > >
> > > > >
> > > > > dpkg-source: building wmxres in wmxres_1.2-6.dsc
> > > > >   debian/rules build
> > > > >  dh_testdir
> > > > >  # Add here commands to configure the package.
> > > > >  touch configure-stamp
> > > > >  dh_testdir
> > > > >  # Add here commands to compile the package.
> > > > >  /usr/bin/make
> > > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > > >  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o
> > > > > -I/usr/X11R6/include cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o
> > > > > wmgeneral/wmgeneral.o -I/usr/X11R6/include make[1]: Leaving directory
> > > > > `/build/user/wmxres-1.2'
> > > > >  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
> > > > >  touch build-stamp
> > > > >   /usr/bin/fakeroot debian/rules binary
> > > > >  dh_testdir
> > > > >  dh_testroot
> > > > >  dh_clean -k
> > > > >  dh_installdirs
> > > > >  # Add here commands to install the package into debian/wmxres.
> > > > >  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
> > > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > > >  install -s -m 4755 -o root wmxres/wmxres \
> > > > >            /build/user/wmxres-1.2/debian/wmxres/usr/bin
> > > > >  install: cannot stat `wmxres/wmxres': No such file or directory
> > > > >  make[1]: *** [install] Error 1
> > > > >  make[1]: Leaving directory `/build/user/wmxres-1.2'
> > > > >  make: *** [install] Error 2
> > > > >
> > > > > **********************************************************************
> > > > >******** Build finished at 20070905-2157
> > > > >  #### END OF BUILD NO 2 ####
> > > > >  FAILED [dpkg-buildpackage died]
> > > >
> > > > I am having trouble reproducing this bug.
> > > >
> > > > When I run "fakeroot dpkg-buildpackage" twice, I get two successful
> > > > builds on latest sid.  What is the sequence of actions that creates this
> > > > situation?
> > >
> > > Mh... i don't know really. Lucas rebuilds the packages on the grid 5000
> > > system and I was responsible for filling the bugs. The best thing would be
> > > to ask lucas how he builds the packages.
> > >
> > > But I guess two calls of "debuild" should do the job. The clean, build,
> > > install, clean, build, install.  ;-)
> > > (the important thing is here the second clean.. we want to ensure with this
> > > procedure that the clean target of the debs is okay
> >
> > Do you know how I can reproduce this bug?  I tried so far:
> > -fakeroot dpkg-buildpackage (2x)
> > -debuild (2x)
> > -fakeroot debian/rules binary, clean, binary ,clean
>  
> Hi,
>
> I tried again. The failure didn't happen after the third
> dpkg-buildpackage run, but only after the fifth. So I guess that there's
> some randomness in the build process that makes it to fail sometimes.
>
> You can try doing:
> while dpkg-buildpackage -us -uc; do :; done

Thanks for this information.  I have rebuilt the package several hundred
times using different options on latest unstable, still with no failures.
>From reading the Makefile, I don't see why it would be possible to fail.

Target 'install' depends on target 'all' and target 'all' depends on 'wmxres'
so I don't see how wmxres/wmxres can fail to exist directly after calling
make install.

Please let me know if you have any further info on this.  As of now I can't
reproduce it.

--
Todd Troxell
http://rapidpacket.com/~xtat



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Lucas Nussbaum
tags 442763 + patch
thanks

On 25/09/07 at 11:10 -0500, Todd Troxell wrote:

> Hi Lucas,
>
> On Fri, Sep 21, 2007 at 09:32:06AM +0200, Lucas Nussbaum wrote:
> > On 20/09/07 at 13:44 -0500, Todd Troxell wrote:
> > > Hi Lucas,
> > >
> > > On Wed, Sep 19, 2007 at 11:09:21AM +0200, Patrick Winnertz wrote:
> > > > Am Mittwoch, 19. September 2007 08:00:12 schrieben Sie:
> > > > > Hi Patrick,
> > > > >
> > > > > On Sun, Sep 16, 2007 at 08:53:30PM +0200, Patrick Winnertz wrote:
> > > > > > Package: wmxres
> > > > > > Severity: important
> > > > > > Version: 1.2-6
> > > > > > User: [hidden email]
> > > > > > Usertags: qa-doublebuild
> > > > > >
> > > > > >
> > > > > > dpkg-source: building wmxres in wmxres_1.2-6.dsc
> > > > > >   debian/rules build
> > > > > >  dh_testdir
> > > > > >  # Add here commands to configure the package.
> > > > > >  touch configure-stamp
> > > > > >  dh_testdir
> > > > > >  # Add here commands to compile the package.
> > > > > >  /usr/bin/make
> > > > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > > > >  cc -c -O2 -Wall -DLinux wmxres/wmxres.c -o wmxres/wmxres.o
> > > > > > -I/usr/X11R6/include cc -c -O2 -Wall -DLinux wmgeneral/wmgeneral.c -o
> > > > > > wmgeneral/wmgeneral.o -I/usr/X11R6/include make[1]: Leaving directory
> > > > > > `/build/user/wmxres-1.2'
> > > > > >  #/usr/bin/docbook-to-man debian/wmxres.sgml > wmxres.1
> > > > > >  touch build-stamp
> > > > > >   /usr/bin/fakeroot debian/rules binary
> > > > > >  dh_testdir
> > > > > >  dh_testroot
> > > > > >  dh_clean -k
> > > > > >  dh_installdirs
> > > > > >  # Add here commands to install the package into debian/wmxres.
> > > > > >  /usr/bin/make install DESTDIR=/build/user/wmxres-1.2/debian/wmxres
> > > > > >  make[1]: Entering directory `/build/user/wmxres-1.2'
> > > > > >  install -s -m 4755 -o root wmxres/wmxres \
> > > > > >            /build/user/wmxres-1.2/debian/wmxres/usr/bin
> > > > > >  install: cannot stat `wmxres/wmxres': No such file or directory
> > > > > >  make[1]: *** [install] Error 1
> > > > > >  make[1]: Leaving directory `/build/user/wmxres-1.2'
> > > > > >  make: *** [install] Error 2
> > > > > >
> > > > > > **********************************************************************
> > > > > >******** Build finished at 20070905-2157
> > > > > >  #### END OF BUILD NO 2 ####
> > > > > >  FAILED [dpkg-buildpackage died]
> > > > >
> > > > > I am having trouble reproducing this bug.
> > > > >
> > > > > When I run "fakeroot dpkg-buildpackage" twice, I get two successful
> > > > > builds on latest sid.  What is the sequence of actions that creates this
> > > > > situation?
> > > >
> > > > Mh... i don't know really. Lucas rebuilds the packages on the grid 5000
> > > > system and I was responsible for filling the bugs. The best thing would be
> > > > to ask lucas how he builds the packages.
> > > >
> > > > But I guess two calls of "debuild" should do the job. The clean, build,
> > > > install, clean, build, install.  ;-)
> > > > (the important thing is here the second clean.. we want to ensure with this
> > > > procedure that the clean target of the debs is okay
> > >
> > > Do you know how I can reproduce this bug?  I tried so far:
> > > -fakeroot dpkg-buildpackage (2x)
> > > -debuild (2x)
> > > -fakeroot debian/rules binary, clean, binary ,clean
> >  
> > Hi,
> >
> > I tried again. The failure didn't happen after the third
> > dpkg-buildpackage run, but only after the fifth. So I guess that there's
> > some randomness in the build process that makes it to fail sometimes.
> >
> > You can try doing:
> > while dpkg-buildpackage -us -uc; do :; done
>
> Thanks for this information.  I have rebuilt the package several hundred
> times using different options on latest unstable, still with no failures.
> From reading the Makefile, I don't see why it would be possible to fail.
>
> Target 'install' depends on target 'all' and target 'all' depends on 'wmxres'
> so I don't see how wmxres/wmxres can fail to exist directly after calling
> make install.
>
> Please let me know if you have any further info on this.  As of now I can't
> reproduce it.

Hi,

The problem is that all depends on wmxres, but that wmxres is a
*directory*. So it compares the mtime of *.o with the mtime of the
directory, which is obviously not what you want to do.

I see two solutions:
1) make the wmxres target PHONY in the Makefile. (also, you should make
the clean target PHONY as well)

2) replace wmxres by wmxres/wmxres in the Makefile, so you depend on the
actual file.
--
| Lucas Nussbaum
| [hidden email]   http://www.lucas-nussbaum.net/ |
| jabber: [hidden email]             GPG: 1024D/023B3F4F |



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]

Reply | Threaded
Open this post in threaded view
|

Bug#442763: wmxres: FTBFS if build twice in a row

Todd Troxell
On Sat, Sep 29, 2007 at 02:34:17PM +0200, Lucas Nussbaum wrote:
> The problem is that all depends on wmxres, but that wmxres is a
> *directory*. So it compares the mtime of *.o with the mtime of the
> directory, which is obviously not what you want to do.

Ah, that makes sense to me.  Thanks for looking at this.  I have uploaded a
patched version.

--
Todd Troxell
http://rapidpacket.com/~xtat



--
To UNSUBSCRIBE, email to [hidden email]
with a subject of "unsubscribe". Trouble? Contact [hidden email]