Bug#784975: partclone: FTBFS on non x86 arches: error: unrecognized command line option '-m32'

2015-05-13 Thread James Cowgill
On Tue, 2015-05-12 at 23:47 +0200, Georges Khaznadar wrote:
> Thank you for the bug report, James.
> 
> The binary file fail-mbr.bin can be built only with a (real or emulated) 
> x-86 machine; however it makes sense to install it in a non-x-86 server,
> since partclone can use it while restoring an x-86 client.
> 
> So, what may I do? 

I would just go with a, but I think your choices are:

a) Ship fail-mbr.bin as part of the package source and don't build it
   - You already seem to be shipping it with the source
   - This should be OK as long as you also distribute the .S and
 Makefile.am, and if fail-mbr.bin can be proven to be built from the
 same source.

b) Split the fail-mbr into a separate arch:all package and only build it
   when binary-indep is called. You can then say in README.source that
   this extra package can only be built on x86. The buildds won't try
   and build it.

c) Build a cross toolchain as part of your build process. You might be
   able to get away with just binutils here. You can build-depend on
   binutils-source to get the source.

> The closest issue which I could imagine among debian packages is the
> build system of the package firmware-free; however I could not
> understand, while inspecting loosely this package, whether there were
> real source files in the package and whether there is any chance to
> buils any binary from source. When I try to debuild this package with an
> amd64 machine, nothing is built, binaries are just copied.

firmware-free doesn't actually build anything, it just ships all the
binaries.

James

> James Cowgill a écrit :
> > Source: partclone
> > Version: 0.2.78-1
> > Severity: serious
> > 
> > Hi,
> > 
> > partclone failed to build on all non-x86 arches with this error:
> > 
> > > Making all in fail-mbr
> > > make[3]: Entering directory '/«PKGBUILDDIR»/fail-mbr'
> > > gcc -Wall -Werror -m32 -nostdlib -o fail-mbr.o fail-mbr.S
> > > gcc: error: unrecognized command line option '-m32'
> > > make[3]: *** [fail-mbr.o] Error 1
> > > Makefile:481: recipe for target 'fail-mbr.o' failed
> > > make[3]: Leaving directory '/«PKGBUILDDIR»/fail-mbr'
> > > make[2]: *** [all-recursive] Error 1
> > > Makefile:387: recipe for target 'all-recursive' failed
> > > make[2]: Leaving directory '/«PKGBUILDDIR»'
> > > make[1]: *** [all] Error 2
> > > dh_auto_build: make -j1 returned exit code 2
> > 
> > Assembling fail-mbr.S with a non-x86 compiler clearly isn't going to work.
> > 
> > Thanks,
> > James
> 
> 
> 



signature.asc
Description: This is a digitally signed message part


Bug#784975: partclone: FTBFS on non x86 arches: error: unrecognized command line option '-m32'

2015-05-12 Thread Georges Khaznadar
Thank you for the bug report, James.

The binary file fail-mbr.bin can be built only with a (real or emulated) 
x-86 machine; however it makes sense to install it in a non-x-86 server,
since partclone can use it while restoring an x-86 client.

So, what may I do? 

I suggest to include fail-mbr.bin in the package's source, and override
the lintian error, while documenting that this file comes with its
source.

On the other hand, such a method cannot be recommended : the same
argument might be used for any arbitrary binary file, and a boot sector
can be considered as a very sensitive piece of software.

Please have you some suggestion, do you know other methods to build this
file only with *one* architecture, and declare it as available for "all"
architectures? This would enforce its build from sources in the debian
build farm.

The closest issue which I could imagine among debian packages is the
build system of the package firmware-free; however I could not
understand, while inspecting loosely this package, whether there were
real source files in the package and whether there is any chance to
buils any binary from source. When I try to debuild this package with an
amd64 machine, nothing is built, binaries are just copied.

Best regards,   Georges.

James Cowgill a écrit :
> Source: partclone
> Version: 0.2.78-1
> Severity: serious
> 
> Hi,
> 
> partclone failed to build on all non-x86 arches with this error:
> 
> > Making all in fail-mbr
> > make[3]: Entering directory '/«PKGBUILDDIR»/fail-mbr'
> > gcc -Wall -Werror -m32 -nostdlib -o fail-mbr.o fail-mbr.S
> > gcc: error: unrecognized command line option '-m32'
> > make[3]: *** [fail-mbr.o] Error 1
> > Makefile:481: recipe for target 'fail-mbr.o' failed
> > make[3]: Leaving directory '/«PKGBUILDDIR»/fail-mbr'
> > make[2]: *** [all-recursive] Error 1
> > Makefile:387: recipe for target 'all-recursive' failed
> > make[2]: Leaving directory '/«PKGBUILDDIR»'
> > make[1]: *** [all] Error 2
> > dh_auto_build: make -j1 returned exit code 2
> 
> Assembling fail-mbr.S with a non-x86 compiler clearly isn't going to work.
> 
> Thanks,
> James



-- 
Georges KHAZNADAR et Jocelyne FOURNIER
22 rue des mouettes, 59240 Dunkerque France.
Téléphone +33 (0)3 28 29 17 70



signature.asc
Description: Digital signature


Bug#784975: partclone: FTBFS on non x86 arches: error: unrecognized command line option '-m32'

2015-05-11 Thread James Cowgill
Source: partclone
Version: 0.2.78-1
Severity: serious

Hi,

partclone failed to build on all non-x86 arches with this error:

> Making all in fail-mbr
> make[3]: Entering directory '/«PKGBUILDDIR»/fail-mbr'
> gcc -Wall -Werror -m32 -nostdlib -o fail-mbr.o fail-mbr.S
> gcc: error: unrecognized command line option '-m32'
> make[3]: *** [fail-mbr.o] Error 1
> Makefile:481: recipe for target 'fail-mbr.o' failed
> make[3]: Leaving directory '/«PKGBUILDDIR»/fail-mbr'
> make[2]: *** [all-recursive] Error 1
> Makefile:387: recipe for target 'all-recursive' failed
> make[2]: Leaving directory '/«PKGBUILDDIR»'
> make[1]: *** [all] Error 2
> dh_auto_build: make -j1 returned exit code 2

Assembling fail-mbr.S with a non-x86 compiler clearly isn't going to work.

Thanks,
James


signature.asc
Description: This is a digitally signed message part