* Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) [not found] <20071222194111.GA8254@durotan.0x539.de> @ 2007-12-25 9:32 ` Robert Millan 2007-12-25 10:29 ` Yoshinori K. Okuji 0 siblings, 1 reply; 10+ messages in thread From: Robert Millan @ 2007-12-25 9:32 UTC (permalink / raw) To: grub-devel; +Cc: 457491-forwarded, Philipp Kern Any comments on this one? It seems to me that the module dependency hack doesn't take into account gcc internal symbols. Maybe skipping symbols starting with _ (or __?) would suffice ? On Sat, Dec 22, 2007 at 08:41:11PM +0100, Philipp Kern wrote: > Package: grub2 > Version: 1.95+20071004-2 > Severity: serious > > Your package fails to build on powerpc since version 1.95+20071004-2. > Please fix this long-standing issue. > > Automatic build of grub2_1.95+20071101-1 on voltaire by sbuild/powerpc 99.99 > Build started at 20071106-1003 > ****************************************************************************** > [...] > nm -u -P -p pre-elf.o | cut -f1 -d' ' >> und-elf.lst > echo 'gzio' > und-gzio.lst > nm -u -P -p pre-gzio.o | cut -f1 -d' ' >> und-gzio.lst > cat kernel_syms.lst def-_linux.lst def-linux.lst def-normal.lst def-suspend.lst def-reboot.lst def-halt.lst def-_multiboot.lst def-multiboot.lst def-fshelp.lst def-fat.lst def-ufs.lst def-ext2.lst def-ntfs.lst def-minix.lst def-hfs.lst def-jfs.lst def-iso9660.lst def-xfs.lst def-affs.lst def-sfs.lst def-hfsplus.lst def-amiga.lst def-apple.lst def-pc.lst def-sun.lst def-acorn.lst def-gpt.lst def-raid.lst def-lvm.lst def-hello.lst def-boot.lst def-terminal.lst def-ls.lst def-cmp.lst def-cat.lst def-help.lst def-font.lst def-search.lst def-test.lst def-loopback.lst def-configfile.lst def-terminfo.lst def-blocklist.lst def-elf.lst def-gzio.lst /dev/null \ > | mawk -f /build/buildd/grub2-1.95+20071101/genmoddep.awk und-_linux.lst und-linux.lst und-normal.lst und-suspend.lst und-reboot.lst und-halt.lst und-_multiboot.lst und-multiboot.lst und-fshelp.lst und-fat.lst und-ufs.lst und-ext2.lst und-ntfs.lst und-minix.lst und-hfs.lst und-jfs.lst und-iso9660.lst und-xfs.lst und-affs.lst und-sfs.lst und-hfsplus.lst und-amiga.lst und-apple.lst und-pc.lst und-sun.lst und-acorn.lst und-gpt.lst und-raid.lst und-lvm.lst und-hello.lst und-boot.lst und-terminal.lst und-ls.lst und-cmp.lst und-cat.lst und-help.lst und-font.lst und-search.lst und-test.lst und-loopback.lst und-configfile.lst und-terminfo.lst und-blocklist.lst und-elf.lst und-gzio.lst > moddep.lst \ > || (rm -f moddep.lst; exit 1) > __floatundisf in ls is not defined > make[1]: *** [moddep.lst] Error 1 > make[1]: Leaving directory `/build/buildd/grub2-1.95+20071101/build/grub-ieee1275' > make: *** [build/grub-ieee1275] Error 2 > dpkg-buildpackage: failure: debian/rules build gave error exit status 2 > ****************************************************************************** > Build finished at 20071106-1007 > FAILED [dpkg-buildpackage died] > > The build log is available at [0]. > > Kind regards, > Philipp Kern > > [0] http://buildd.debian.org/fetch.cgi?&pkg=grub2&ver=1.95%2B20071101-1&arch=powerpc&stamp=1194343724&file=log > -- > .''`. Philipp Kern (proud) Debian Developer > : :' : http://philkern.de Ubuntu MOTU > `. `' xmpp:phil@0x539.de > `- finger pkern/key@db.debian.org -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2007-12-25 9:32 ` Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) Robert Millan @ 2007-12-25 10:29 ` Yoshinori K. Okuji 2007-12-25 10:52 ` Robert Millan 0 siblings, 1 reply; 10+ messages in thread From: Yoshinori K. Okuji @ 2007-12-25 10:29 UTC (permalink / raw) To: grub-devel; +Cc: 457491-forwarded, Philipp Kern, Robert Millan On Tuesday 25 December 2007 10:32, Robert Millan wrote: > Any comments on this one? > > It seems to me that the module dependency hack doesn't take into account > gcc internal symbols. > > Maybe skipping symbols starting with _ (or __?) would suffice ? If this is easy, I think it would be better to add symbols defined in libgcc into kernel-defined symbols on ppc (as well as on sparc?). Okuji ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2007-12-25 10:29 ` Yoshinori K. Okuji @ 2007-12-25 10:52 ` Robert Millan [not found] ` <20071225120612.GA16779@durotan.0x539.de> 0 siblings, 1 reply; 10+ messages in thread From: Robert Millan @ 2007-12-25 10:52 UTC (permalink / raw) To: Yoshinori K. Okuji; +Cc: grub-devel, Philipp Kern, 457491-forwarded [-- Attachment #1: Type: text/plain, Size: 805 bytes --] On Tue, Dec 25, 2007 at 11:29:58AM +0100, Yoshinori K. Okuji wrote: > On Tuesday 25 December 2007 10:32, Robert Millan wrote: > > Any comments on this one? > > > > It seems to me that the module dependency hack doesn't take into account > > gcc internal symbols. > > > > Maybe skipping symbols starting with _ (or __?) would suffice ? > > If this is easy, I think it would be better to add symbols defined in libgcc > into kernel-defined symbols on ppc (as well as on sparc?). Ah, I see there's a mechanism for that already. Philipp, I'm attaching a patch for the __floatundisf. There might be others, though. Please, could you check and report ? Thanks -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) [-- Attachment #2: powerpc_symbols.diff --] [-- Type: text/x-diff, Size: 544 bytes --] diff -ur grub2/include/grub/powerpc/libgcc.h grub2.powerpc/include/grub/powerpc/libgcc.h --- grub2/include/grub/powerpc/libgcc.h 2007-07-22 01:32:24.000000000 +0200 +++ grub2.powerpc/include/grub/powerpc/libgcc.h 2007-12-25 11:50:33.000000000 +0100 @@ -25,6 +25,7 @@ void EXPORT_FUNC (__fixunsdfsi) (void); void EXPORT_FUNC (__floatsidf) (void); void EXPORT_FUNC (__floatsisf) (void); +void EXPORT_FUNC (__floatundisf) (void); void EXPORT_FUNC (__lshrdi3) (void); void EXPORT_FUNC (__make_dp) (void); void EXPORT_FUNC (__make_fp) (void); ^ permalink raw reply [flat|nested] 10+ messages in thread
[parent not found: <20071225120612.GA16779@durotan.0x539.de>]
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) [not found] ` <20071225120612.GA16779@durotan.0x539.de> @ 2007-12-25 19:21 ` Robert Millan 2007-12-26 9:21 ` Robert Millan 0 siblings, 1 reply; 10+ messages in thread From: Robert Millan @ 2007-12-25 19:21 UTC (permalink / raw) To: Philipp Kern; +Cc: grub-devel, 457491, Yoshinori K. Okuji On Tue, Dec 25, 2007 at 01:06:12PM +0100, Philipp Kern wrote: > On Tue, Dec 25, 2007 at 11:52:47AM +0100, Robert Millan wrote: > > Philipp, I'm attaching a patch for the __floatundisf. There might be others, > > though. Please, could you check and report ? > > With the patch applied, on Debian Lenny: > > cc -o kernel.elf kernel_elf-kern_powerpc_ieee1275_crt0.o kernel_elf-kern_powerpc_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_powerpc_ieee1275_init.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_powerpc_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kernel_elf_symlist.o kernel_elf-kern_powerpc_cache.o -nostdlib -static-libgcc -lgcc -Wl,-N,-S,-Ttext,0x10000,-Bstatic > kernel_elf-kernel_elf_symlist.o:(.data+0x584): undefined reference to `__make_dp' > kernel_elf-kernel_elf_symlist.o:(.data+0x58c): undefined reference to `__make_fp' > kernel_elf-kernel_elf_symlist.o:(.data+0x5bc): undefined reference to `__pack_d' > kernel_elf-kernel_elf_symlist.o:(.data+0x5c4): undefined reference to `__pack_f' > kernel_elf-kernel_elf_symlist.o:(.data+0x5dc): undefined reference to `__thenan_df' > kernel_elf-kernel_elf_symlist.o:(.data+0x5e4): undefined reference to `__thenan_sf' > kernel_elf-kernel_elf_symlist.o:(.data+0x5fc): undefined reference to `__unpack_d' > kernel_elf-kernel_elf_symlist.o:(.data+0x604): undefined reference to `__unpack_f' Are those provided by libgcc on powerpc? -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2007-12-25 19:21 ` Robert Millan @ 2007-12-26 9:21 ` Robert Millan 2008-01-13 12:19 ` Robert Millan 0 siblings, 1 reply; 10+ messages in thread From: Robert Millan @ 2007-12-26 9:21 UTC (permalink / raw) To: Philipp Kern; +Cc: grub-devel, Yoshinori K. Okuji, 457491 On Tue, Dec 25, 2007 at 08:21:50PM +0100, Robert Millan wrote: > On Tue, Dec 25, 2007 at 01:06:12PM +0100, Philipp Kern wrote: > > On Tue, Dec 25, 2007 at 11:52:47AM +0100, Robert Millan wrote: > > > Philipp, I'm attaching a patch for the __floatundisf. There might be others, > > > though. Please, could you check and report ? > > > > With the patch applied, on Debian Lenny: > > > > cc -o kernel.elf kernel_elf-kern_powerpc_ieee1275_crt0.o kernel_elf-kern_powerpc_ieee1275_cmain.o kernel_elf-kern_ieee1275_ieee1275.o kernel_elf-kern_main.o kernel_elf-kern_device.o kernel_elf-kern_disk.o kernel_elf-kern_dl.o kernel_elf-kern_err.o kernel_elf-kern_file.o kernel_elf-kern_fs.o kernel_elf-kern_misc.o kernel_elf-kern_mm.o kernel_elf-kern_loader.o kernel_elf-kern_rescue.o kernel_elf-kern_term.o kernel_elf-kern_powerpc_ieee1275_init.o kernel_elf-term_ieee1275_ofconsole.o kernel_elf-kern_powerpc_ieee1275_openfw.o kernel_elf-disk_ieee1275_ofdisk.o kernel_elf-kern_parser.o kernel_elf-kern_partition.o kernel_elf-kern_env.o kernel_elf-kern_powerpc_dl.o kernel_elf-kernel_elf_symlist.o kernel_elf-kern_powerpc_cache.o -nostdlib -static-libgcc -lgcc -Wl,-N,-S,-Ttext,0x10000,-Bstatic > > kernel_elf-kernel_elf_symlist.o:(.data+0x584): undefined reference to `__make_dp' > > kernel_elf-kernel_elf_symlist.o:(.data+0x58c): undefined reference to `__make_fp' > > kernel_elf-kernel_elf_symlist.o:(.data+0x5bc): undefined reference to `__pack_d' > > kernel_elf-kernel_elf_symlist.o:(.data+0x5c4): undefined reference to `__pack_f' > > kernel_elf-kernel_elf_symlist.o:(.data+0x5dc): undefined reference to `__thenan_df' > > kernel_elf-kernel_elf_symlist.o:(.data+0x5e4): undefined reference to `__thenan_sf' > > kernel_elf-kernel_elf_symlist.o:(.data+0x5fc): undefined reference to `__unpack_d' > > kernel_elf-kernel_elf_symlist.o:(.data+0x604): undefined reference to `__unpack_f' Those were present in older versions of gcc, but not anymore. The following patch fixes the problem (while also breaking backwards compatibility): diff -ur grub2-1.95+20071101/include/grub/powerpc/libgcc.h grub2-1.95+20071101.new/include/grub/powerpc/libgcc.h --- grub2-1.95+20071101/include/grub/powerpc/libgcc.h 2007-07-21 23:32:24.000000000 +0000 +++ grub2-1.95+20071101.new/include/grub/powerpc/libgcc.h 2007-12-26 08:42:49.000000000 +0000 @@ -26,19 +26,12 @@ void EXPORT_FUNC (__floatsidf) (void); void EXPORT_FUNC (__floatsisf) (void); void EXPORT_FUNC (__lshrdi3) (void); -void EXPORT_FUNC (__make_dp) (void); -void EXPORT_FUNC (__make_fp) (void); void EXPORT_FUNC (__muldf3) (void); void EXPORT_FUNC (__mulsf3) (void); -void EXPORT_FUNC (__pack_d) (void); -void EXPORT_FUNC (__pack_f) (void); void EXPORT_FUNC (__subdf3) (void); void EXPORT_FUNC (__subsf3) (void); -void EXPORT_FUNC (__thenan_df) (void); -void EXPORT_FUNC (__thenan_sf) (void); void EXPORT_FUNC (__trampoline_setup) (void); void EXPORT_FUNC (__truncdfsf2) (void); -void EXPORT_FUNC (__unpack_d) (void); -void EXPORT_FUNC (__unpack_f) (void); void EXPORT_FUNC (__floatdisf) (void); +void EXPORT_FUNC (__floatundisf) (void); void EXPORT_FUNC (__cmpdi2) (void); Is there any way we can preserve compatibility with gcc 3.x ? Perhaps obtain a list of symbols dynamicaly, but maybe this would bloat the kernel too much. -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2007-12-26 9:21 ` Robert Millan @ 2008-01-13 12:19 ` Robert Millan 2008-01-13 19:53 ` Yoshinori K. Okuji 0 siblings, 1 reply; 10+ messages in thread From: Robert Millan @ 2008-01-13 12:19 UTC (permalink / raw) To: Philipp Kern; +Cc: grub-devel, 457491, Yoshinori K. Okuji On Wed, Dec 26, 2007 at 10:21:16AM +0100, Robert Millan wrote: > diff -ur grub2-1.95+20071101/include/grub/powerpc/libgcc.h grub2-1.95+20071101.new/include/grub/powerpc/libgcc.h > --- grub2-1.95+20071101/include/grub/powerpc/libgcc.h 2007-07-21 23:32:24.000000000 +0000 > +++ grub2-1.95+20071101.new/include/grub/powerpc/libgcc.h 2007-12-26 08:42:49.000000000 +0000 > @@ -26,19 +26,12 @@ > void EXPORT_FUNC (__floatsidf) (void); > void EXPORT_FUNC (__floatsisf) (void); > void EXPORT_FUNC (__lshrdi3) (void); > -void EXPORT_FUNC (__make_dp) (void); > -void EXPORT_FUNC (__make_fp) (void); > void EXPORT_FUNC (__muldf3) (void); > void EXPORT_FUNC (__mulsf3) (void); > -void EXPORT_FUNC (__pack_d) (void); > -void EXPORT_FUNC (__pack_f) (void); > void EXPORT_FUNC (__subdf3) (void); > void EXPORT_FUNC (__subsf3) (void); > -void EXPORT_FUNC (__thenan_df) (void); > -void EXPORT_FUNC (__thenan_sf) (void); > void EXPORT_FUNC (__trampoline_setup) (void); > void EXPORT_FUNC (__truncdfsf2) (void); > -void EXPORT_FUNC (__unpack_d) (void); > -void EXPORT_FUNC (__unpack_f) (void); > void EXPORT_FUNC (__floatdisf) (void); > +void EXPORT_FUNC (__floatundisf) (void); > void EXPORT_FUNC (__cmpdi2) (void); > > Is there any way we can preserve compatibility with gcc 3.x ? Perhaps obtain > a list of symbols dynamicaly, but maybe this would bloat the kernel too much. This is becoming a nightmare. I think it's better if we just exclude symbols starting with __ from our checks. They aren't really meant for us to mess with. -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2008-01-13 12:19 ` Robert Millan @ 2008-01-13 19:53 ` Yoshinori K. Okuji 2008-01-13 20:16 ` Robert Millan 2008-01-15 11:14 ` Marco Gerards 0 siblings, 2 replies; 10+ messages in thread From: Yoshinori K. Okuji @ 2008-01-13 19:53 UTC (permalink / raw) To: grub-devel; +Cc: Philipp Kern, 457491, Robert Millan On Sunday 13 January 2008 13:19, Robert Millan wrote: > This is becoming a nightmare. I think it's better if we just exclude > symbols starting with __ from our checks. They aren't really meant for us > to mess with. My original suggestion was that we could extract (required) symbols from libgcc, and export them from the kernel. I think this can be automated. Okuji ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2008-01-13 19:53 ` Yoshinori K. Okuji @ 2008-01-13 20:16 ` Robert Millan 2008-01-13 20:38 ` Yoshinori K. Okuji 2008-01-15 11:14 ` Marco Gerards 1 sibling, 1 reply; 10+ messages in thread From: Robert Millan @ 2008-01-13 20:16 UTC (permalink / raw) To: The development of GRUB 2; +Cc: 457491, Philipp Kern On Sun, Jan 13, 2008 at 08:53:49PM +0100, Yoshinori K. Okuji wrote: > On Sunday 13 January 2008 13:19, Robert Millan wrote: > > This is becoming a nightmare. I think it's better if we just exclude > > symbols starting with __ from our checks. They aren't really meant for us > > to mess with. > > My original suggestion was that we could extract (required) symbols from > libgcc, and export them from the kernel. I think this can be automated. Yes, but what's the point? Doesn't libgcc already provide those symbols? The problem seems to be only with our checker scripts, not with linking itself. Unless I missed something of course.. -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2008-01-13 20:16 ` Robert Millan @ 2008-01-13 20:38 ` Yoshinori K. Okuji 0 siblings, 0 replies; 10+ messages in thread From: Yoshinori K. Okuji @ 2008-01-13 20:38 UTC (permalink / raw) To: grub-devel; +Cc: Philipp Kern, 457491, Robert Millan On Sunday 13 January 2008 21:16, Robert Millan wrote: > On Sun, Jan 13, 2008 at 08:53:49PM +0100, Yoshinori K. Okuji wrote: > > On Sunday 13 January 2008 13:19, Robert Millan wrote: > > > This is becoming a nightmare. I think it's better if we just exclude > > > symbols starting with __ from our checks. They aren't really meant for > > > us to mess with. > > > > My original suggestion was that we could extract (required) symbols from > > libgcc, and export them from the kernel. I think this can be automated. > > Yes, but what's the point? Doesn't libgcc already provide those symbols? It does, but our kernel doesn't. > The problem seems to be only with our checker scripts, not with linking > itself. > > Unless I missed something of course.. From my point of view, ignoring all symbols starting with __ is a hack. I prefer to resolve symbols in the Right Way. Okuji ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) 2008-01-13 19:53 ` Yoshinori K. Okuji 2008-01-13 20:16 ` Robert Millan @ 2008-01-15 11:14 ` Marco Gerards 1 sibling, 0 replies; 10+ messages in thread From: Marco Gerards @ 2008-01-15 11:14 UTC (permalink / raw) To: The development of GRUB 2; +Cc: Robert Millan, 457491, Philipp Kern "Yoshinori K. Okuji" <okuji@enbug.org> writes: > On Sunday 13 January 2008 13:19, Robert Millan wrote: >> This is becoming a nightmare. I think it's better if we just exclude >> symbols starting with __ from our checks. They aren't really meant for us >> to mess with. > > My original suggestion was that we could extract (required) symbols from > libgcc, and export them from the kernel. I think this can be automated. Agreed, this is the best solution. The current one is a hack I introduced when I initiated the work on the PPC port. We need a structural solution. -- Marco ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2008-01-15 11:14 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20071222194111.GA8254@durotan.0x539.de>
2007-12-25 9:32 ` Fwd: grub2: FTBFS on powerpc (__floatundisf in ls is not defined) Robert Millan
2007-12-25 10:29 ` Yoshinori K. Okuji
2007-12-25 10:52 ` Robert Millan
[not found] ` <20071225120612.GA16779@durotan.0x539.de>
2007-12-25 19:21 ` Robert Millan
2007-12-26 9:21 ` Robert Millan
2008-01-13 12:19 ` Robert Millan
2008-01-13 19:53 ` Yoshinori K. Okuji
2008-01-13 20:16 ` Robert Millan
2008-01-13 20:38 ` Yoshinori K. Okuji
2008-01-15 11:14 ` Marco Gerards
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.