#### NOTE: this package produces broken boot code with GCC4! SRC_FETCH_METHOD="http" SRC_FETCH_PATH="ftp://alpha.gnu.org/gnu/grub/grub-0.96.tar.gz" PATCH_LIST=" 0001-path_max-undeclared.diff 0002-save-default-entry-on-mbr.diff 0003-add-grub-mbr-default3.diff 0004-add-support-for-the-savemap-keyword.diff 0005-update-default_entry-according-to-the-savemap.diff 0006-add-support-for-savedefault-savemap.diff 0007-update-the-savemap-upon-user-action-or-fallback.diff 0008-documentation-savemap.diff 0009-sample-config-files-using-savemap.diff 0010-build-gcc4-local-functions-must-not-be-declared-stat.patch 0011-build-gcc4-don-t-declare-static-something-global.patch 0013-bug-properly-initialize-default_file-to-empty-string.patch 0014-stage2-disable-geometry-check-prior-to-accessing-dis.patch 0015-build-gcc4-rename-log2-to-my_log2-to-avoid-a-conflic.patch 0016-build-gcc4-fix-missing-prototype-warning.patch 0017-build-gcc4-fix-warning-about-return-with-a-value.patch " # keep this one apart for now, it ensures that gcc4 builds will definitely # fail instead of producing broken binaries #0012-build-gcc4-disable-use-of-writable-strings.patch FILE_LIST= function do_config { # CC="uclibc $CC -Os" CFLAGS="$GCC_ARCH_SMALL $GCC_CPU_SMALL $GCC_OPT_SMALL -fno-strict-aliasing" \ ./configure --prefix=/usr --libdir=/usr/share \ --disable-ffs --disable-ufs2 --disable-reiserfs \ --disable-vstafs --disable-jfs --disable-xfs \ --disable-md5-password --disable-hercules \ --disable-auto-linux-mem-opt \ --host=$FLXTARG --build=$FLXHOST } function do_compile_only { $FLXMAKE CC="${CC:-gcc} -m32" || return 1 [ -z "$CC" ] && CC="gcc" if uclibc $CC -E - /dev/null 2>&1 ; then # we can build a (small) static binary for grub-mbr-default rm -f util/grub-mbr-default $FLXMAKE -C util grub-mbr-default CC="uclibc $CC -Os" || return 1 # $FLXMAKE CC="uclibc $CC -Os" else echo "Warning! neither uclibc nor dietlibc found, dynamically linking grub-mbr-default." fi } function do_prepack { $FLXMAKE install DESTDIR=$ROOTDIR CC="uclibc $CC -Os" || return 1 mkdir -p $ROOTDIR/sbin || return 1 mv $ROOTDIR/usr/sbin/grub-mbr-default $ROOTDIR/sbin/ || return 1 set_default_perm $ROOTDIR || return 1 }