Bug#379720: vdr-plugin-bitstreamout: FTBFS: error: 'fls' was not declared in this scope
reassign 379720 linux-kernel-headers tags 379720 patch I am reassigning this bug to linux-kernel-headers as it seems to be the root cause for this FTBFS, the last upload of vdr-plugin-bitstreamout was in on 2006-04-30, at this time it was built without any problems. A few tests showed that this FTBFS was introduced with the upload of linux-kernel-headers 2.6.17.1-1. The following patch fixes this FTBFS, i hope it is correct and does not introduce other problems: diff -Nurd linux-kernel-headers-2.6.17.7.orig/include/asm-generic/bitops/fls64.h linux-kernel-headers-2.6.17.7/include/asm-generic/bitops/fls64.h --- linux-kernel-headers-2.6.17.7.orig/include/asm-generic/bitops/fls64.h 2006-08-14 22:17:50.0 +0200 +++ linux-kernel-headers-2.6.17.7/include/asm-generic/bitops/fls64.h 2006-08-14 22:21:44.0 +0200 @@ -2,6 +2,7 @@ #define _ASM_GENERIC_BITOPS_FLS64_H_ #include asm/types.h +#include asm-generic/bitops/fls.h static inline int fls64(__u64 x) { Regards, Thomas -- Thomas Schmidt, Debian VDR Team http://pkg-vdr-dvb.alioth.debian.org/ signature.asc Description: Digital signature
Bug#379720: vdr-plugin-bitstreamout: FTBFS: error: 'fls' was not declared in this scope
$ gcc -x c -c -o test.o /usr/include/asm/bitops.h $ gcc -x c++ -c -o test.o /usr/include/asm/bitops.h /usr/include/asm-generic/bitops/fls64.h: In function 'int fls64(__u64)': /usr/include/asm-generic/bitops/fls64.h:10: error: 'fls' was not declared in this scope /usr/include/asm-generic/bitops/fls64.h:11: error: 'fls' was not declared in this scope Firstly, why is this package using a C++ compiler for what on the face of it looks like C code? Secondly, asm-i486/bitops.h defines fls() only if __KERNEL__ is defined but always includes asm-generic/bitops/fls64.h, which defines fls64() in terms of fls(). A C compiler will accept this use of fls() as an implicit declaration - though the function is never defined - but a C++ compiler will not. This seems like a bug in linux-kernel-headers. Ben. -- Ben Hutchings -- [EMAIL PROTECTED] shortened to [EMAIL PROTECTED] If you've signed my GPG key, please send a signature on and to the new uid. Tomorrow will be cancelled due to lack of interest. signature.asc Description: This is a digitally signed message part
Bug#379720: vdr-plugin-bitstreamout: FTBFS: error: 'fls' was not declared in this scope
Package: vdr-plugin-bitstreamout Version: 0.85-5 Severity: serious Hello, There was a problem while autobuilding your package: Automatic build of vdr-plugin-bitstreamout_0.85-5 on avidan by sbuild/i386 0.49 Build started at 20060725-0359 ** ... debian/rules build test -d debian/patched || install -d debian/patched dpatch apply-all applying patch 90_APIVERSION to ./ ... ok. dpatch cat-all patch-stampT mv -f patch-stampT patch-stamp dh_testdir touch configure-stamp dh_testdir /usr/bin/make all CXXARCH= VDRDIR=/usr/include/vdr LIBDIR=. make[1]: Entering directory `/build/buildd/vdr-plugin-bitstreamout-0.85' make[1]: Leaving directory `/build/buildd/vdr-plugin-bitstreamout-0.85' make[1]: Entering directory `/build/buildd/vdr-plugin-bitstreamout-0.85' bitstreamout Version 0.85 g++ -O2 -Wall -Woverloaded-virtual -pthread -fPIC -fPIC -DPIC -c -DPLUGIN_NAME_I18N='bitstreamout' -D_GNU_SOURCE -I/usr/include/vdr/include -I../../../../DVB/include bitstreamout.c /usr/include/asm-generic/bitops/fls64.h: In function 'int fls64(__u64)': /usr/include/asm-generic/bitops/fls64.h:10: error: 'fls' was not declared in this scope /usr/include/asm-generic/bitops/fls64.h:11: error: 'fls' was not declared in this scope make[1]: *** [bitstreamout.o] Error 1 make[1]: Leaving directory `/build/buildd/vdr-plugin-bitstreamout-0.85' make: *** [build-stamp] Error 2 ** Build finished at 20060725-0359 FAILED [dpkg-buildpackage died] -- -- Julien Danjou .''`. Debian Developer : :' : http://julien.danjou.info `. `' http://people.debian.org/~acid `- 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD signature.asc Description: Digital signature