Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 296013 - sys-boot/grub-9999 fails automake step
Summary: sys-boot/grub-9999 fails automake step
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-06 22:14 UTC by niogic
Modified: 2010-01-17 01:25 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
proposed patch to use automake instead of eautomake (grub-9999-autogen.patch,383 bytes, patch)
2009-12-08 23:40 UTC, Finn Wilke
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description niogic 2009-12-06 22:14:27 UTC
grub switched to bzr, so did the ebuild. But now the ebuild is broken, again.
Here's the log.

 * CPV:  sys-boot/grub-9999
 * REPO: gentoo
 * USE:  custom-cflags elibc_glibc kernel_linux userland_GNU x86
>>> Unpacking source...
 * bzr fetch start -->
 *    repository: http://bzr.savannah.gnu.org/r/grub/trunk/grub => /mnt/schedasd/portage/distfiles/bzr-src/grub
 * exporting ...
 * Revision 1917 is now in /var/tmp/portage/sys-boot/grub-9999/work/grub-9999
 * Applying grub-1.96-genkernel.patch ...                                                                [ ok ]
 * QA Notice: 'aclocal' called by source: sys-boot/grub-9999
 * Use autotools.eclass instead of calling 'aclocal' directly.
am-wrapper: warning: invalid WANT_AUTOMAKE 'latest'; ignoring.
acinclude.m4:17: warning: underquoted definition of grub_PROG_TARGET_CC
acinclude.m4:17:   run info '(automake)Extending aclocal'
acinclude.m4:17:   or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
ac-wrapper: warning: invalid WANT_AUTOCONF 'latest'; ignoring.
configure.ac:42: warning: AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET
../../lib/autoconf/general.m4:1839: AC_CANONICAL_TARGET is expanded from...
configure.ac:42: the top level
 * Running autoconf ...                                                                                  [ ok ]
 * Running autoheader ...                                                                                [ ok ]
WARNING: C file isn't a module: rsa.c
WARNING: C file isn't a module: pubkey.c
WARNING: C file isn't a module: primegen.c
WARNING: C file isn't a module: md.c
WARNING: C file isn't a module: hmac-tests.c
WARNING: C file isn't a module: hash-common.c
WARNING: C file isn't a module: elgamal.c
WARNING: C file isn't a module: ecc.c
WARNING: C file isn't a module: dsa.c
WARNING: C file isn't a module: cipher.c
WARNING: C file isn't a module: ac.c
>>> Source unpacked in /var/tmp/portage/sys-boot/grub-9999/work
>>> Compiling source in /var/tmp/portage/sys-boot/grub-9999/work/grub-9999 ...
./configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-werror --sbindir=/sbin --bindir=/bin --libdir=/lib --disable-efiemu --enable-grub-mkfont --disable-mm-debug --disable-grub-emu --disable-grub-emu-usb --disable-grub-fstest
configure: WARNING: unrecognized options: --disable-grub-emu
configure: error: cannot find install-sh, install.sh, or shtool in "." "./.." "./../.."

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/sys-boot/grub-9999/work/grub-9999/config.log
 * ERROR: sys-boot/grub-9999 failed:
 *   econf failed
 * 
 * Call stack:
 *     ebuild.sh, line   49:  Called src_compile
 *   environment, line 3284:  Called econf '--disable-werror' '--sbindir=/sbin' '--bindir=/bin' '--libdir=/lib' '--disable-efiemu' '--enable-grub-mkfont' '--disable-mm-debug' '--disable-grub-emu' '--disable-grub-emu-usb' '--disable-grub-fstest'
 *     ebuild.sh, line  527:  Called die
Comment 1 Finn Wilke 2009-12-08 23:40:20 UTC
Created attachment 212499 [details, diff]
proposed patch to use automake instead of eautomake

The reason of this is, that the src_unpack() first replaces all occurrences of auto* with eauto* in ./autogen.sh and the runs it. This also happens to automake, which gets replaced with eautomake. I don't know exactly why eautomake doesn't behave like automake in this point, but when you let the ebuild not replace automake by eautomake it works. My patch should fix this.

After that, grub should compile well, if there wasn't Bug 275654 (why does nobody fix it?)
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2009-12-08 23:43:43 UTC
Comment on attachment 212499 [details, diff]
proposed patch to use automake instead of eautomake

Please don't.

Simply change the autogen.sh script to not run autotools at all, and run _that_ out of the ebuild. Or change the whole autotools stack call into a single eautoreconf.
Comment 3 Finn Wilke 2009-12-09 00:17:41 UTC
We could also wait for the grub team to fix the bug laying behing this:

# FIXME: automake doesn't like that there's no Makefile.am
automake -a -c -f || true
(from autogen.sh)

I'm not completely sure, but maybe after them fixing this, eautomake could work again.
Comment 4 SpanKY gentoo-dev 2010-01-10 05:44:06 UTC
changing the ebuild wouldnt fix anything.  the autotools.eclass is still broken:
eautomake() {
    local extra_opts
    local makefile_name

    if [[ -f GNUmakefile.am ]]; then
        makefile_name="GNUmakefile"
    elif [[ -f Makefile.am ]]; then
        makefile_name="Makefile"
    else
        return 0
    fi
...

since grub doesnt package one of these files, it fails to do its job of calling automake
Comment 5 darkbasic 2010-01-15 14:54:00 UTC
Is there any way to compile it?
I have to boot a kernel from an usb stick not seen by the bios and "insmod uhci" hangs grub 1.97.1...

Cheers,
Darkbasic