Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 112050 - unable to boot after reiser4 support removed from grub ebuild.
Summary: unable to boot after reiser4 support removed from grub ebuild.
Status: RESOLVED DUPLICATE of bug 69590
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: SpanKY
URL:
Whiteboard:
Keywords:
: 166064 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-11-10 00:29 UTC by Johannes Christenson
Modified: 2007-02-09 13:32 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Christenson 2005-11-10 00:29:48 UTC
Reiser4 support is totally removed in grub-0.97-r2.ebuild. It should be made
available through a USE-word (a good one would be "reiser4" or "reiser4-boot".

Reproducible: Always
Steps to Reproduce:
1.Update to latest grub.
2.Reboot.


Actual Results:  
I'm not able to boot since grub cant read my boot partition.

Expected Results:  
Booted!

Gentoo Base System version 1.6.13
Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r2,
2.6.13-gentoo-r5-reiser4 i686)
=================================================================
System uname: 2.6.13-gentoo-r5-reiser4 i686 Intel(R) Pentium(R) 4 CPU 2.00GHz
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -mtune=pentium4 -march=pentium4 -pipe -fomit-frame-pointer -mfpmath=sse"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -mtune=pentium4 -march=pentium4 -pipe -fomit-frame-pointer
-mfpmath=sse"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig candy ccache distlocks parallel-fetch prelink sandbox
sfperms strict"
GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/
http://gentoo.zie.pg.gda.pl http://www.gigaload.org/gentoo.org/"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 X a52 aac aalib alsa apm audiofile avi berkdb bidi bitmap-fonts boost
browserplugin bzip2 cddb cdr crypt cups curl dbus dga divx4linux dts dvb dvd
dvdr dvdread eds emboss encode exif expat fam fbcon ffmpeg flac foomaticdb
fortran gdbm ggi gif gimpprint glut gpm gtk2 hal idn imagemagick imlib ipv6 java
javascript jpeg kde lcms libcaca libg++ libwww mad mikmod mmx mmx2 mmxext mng
motif mozilla mp3 mpeg ncurses nls nptl nsplugin nvidia ogg oggvorbis opengl pam
pcre pda pdflib perl pic png python qt quicktime readline real reiser4 sdl
softmmu spell sse sse2 ssl svg svga tcltk tcpd tetex tga theora tiff truetype
truetype-fonts type1-fonts udev usb userlocales vcd video vorbis win32codecs
xine xml2 xosd xpm xprint xv xvid xvmc zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2005-11-10 00:34:18 UTC
(In reply to comment #0)
> Reiser4 support is totally removed in grub-0.97-r2.ebuild. It should be made
> available through a USE-word (a good one would be "reiser4" or "reiser4-boot".

No. See Bug 111885. And - an easy solution: don't put /boot in reiser4.
Comment 2 Johannes Christenson 2005-11-10 07:27:38 UTC
(In reply to comment #1)
> (In reply to comment #0)
> > Reiser4 support is totally removed in grub-0.97-r2.ebuild. It should be made
> > available through a USE-word (a good one would be "reiser4" or "reiser4-boot".
> 
> No. See Bug 111885. And - an easy solution: don't put /boot in reiser4.

Since I was glad to finaly see reiser4 support in grub I immediately tried it
(converted my /boot to reiser4) and it worked like a charm (that is, I booted
without any problems). I've also tried this modified version of
grub-0.97-r2.ebuild and it also works. So I can't see why u can't leave support
for us who likes it. You could mark the reiser4 use word with a comment that
tells people it's unstable.

# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r2.ebuild,v 1.1
2005/11/10 02:37:12 vapier Exp $

inherit mount-boot eutils flag-o-matic toolchain-funcs

PATCHVER=1.1
DESCRIPTION="GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${P}.tar.gz
	ftp://alpha.gnu.org/gnu/${PN}/${P}.tar.gz
	mirror://gentoo/splash.xpm.gz
	mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="static netboot custom-cflags reiser4"

RDEPEND=">=sys-libs/ncurses-5.2-r5"
DEPEND="${RDEPEND}
	>=sys-devel/automake-1.7
	>=sys-devel/autoconf-2.5"
PROVIDE="virtual/bootloader"

pkg_setup() {
	if use amd64 ; then
		if ! has_m32 ; then
			eerror "Your compiler seems to be unable to compile 32bit code."
			eerror "If you are on amd64, make sure you compile gcc with:"
			echo
			eerror "    USE=multilib FEATURES=-sandbox"
			die "Cannot produce 32bit objects!"
		fi

		ABI_ALLOW="x86"
		ABI="x86"
	fi
}

src_unpack() {
	unpack ${A}
	cd "${S}"

	# patch breaks booting for some people #111885
	if !(use reiser4); then
		rm "${WORKDIR}"/patch/400_*
	fi

	# patch for reiser4 support from ftp://ftp.namesys.com/pub/reiser4progs/grub
	#if use reiser4 ;then
	#	epatch ${FILESDIR}/${P}-reiser4-20050808.diff
	#fi

	if [[ -n ${PATCHVER} ]] ; then
		EPATCH_SUFFIX="patch"
		epatch "${WORKDIR}"/patch

		# a bunch of patches apply to raw autotool files
		autoconf || die "autoconf failed"
		aclocal || die "aclocal failed"
		automake || die "automake failed"
	fi
}

src_compile() {
	unset BLOCK_SIZE #73499

	### i686-specific code in the boot loader is a bad idea; disabling to ensure
	### at least some compatibility if the hard drive is moved to an older or
	### incompatible system.

	# grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
	# but the objcopy's (faulty) test fails if -fstack-protector is default.
	# create a cache telling configure that objcopy is ok, and add -C to econf
	# to make use of the cache.
	#
	# CFLAGS has to be undefined running econf, else -fno-stack-protector detection
fails.
	# STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
	# -fno-stack-protector detected by configure, removed from netboot's emake.
	use custom-cflags || unset CFLAGS

	export grub_cv_prog_objcopy_absolute=yes #79734
	use static && append-ldflags -static

	# build the net-bootable grub first, but only if "netboot" is set
	if use netboot ; then
		econf \
		--libdir=/lib \
		--datadir=/usr/lib/grub \
		--exec-prefix=/ \
		--disable-auto-linux-mem-opt \
		--enable-diskless \
		--enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
		--enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
		--enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
		--enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"

		emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"

		mv -f stage2/{nbgrub,pxegrub} "${S}"/
		mv -f stage2/stage2 stage2/stage2.netboot

		make clean || die "make clean failed"
	fi

	# Now build the regular grub
	# Note that FFS and UFS2 support are broken for now - stage1_5 files too big
	econf \
		--libdir=/lib \
		--datadir=/usr/lib/grub \
		--exec-prefix=/ \
		--disable-auto-linux-mem-opt || die "econf failed"
	emake || die "making regular stuff"
}

src_test() {
	# non-default block size also give false pass/fails.
	unset BLOCK_SIZE
	make check || die "make check failed"
}

src_install() {
	make DESTDIR="${D}" install || die
	if use netboot ; then
		exeinto /usr/lib/grub/${CHOST}
		doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
	fi

	insinto /boot/grub
	doins "${DISTDIR}"/splash.xpm.gz
	newins docs/menu.lst grub.conf.sample

	dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
	newdoc docs/menu.lst grub.conf.sample
}

pkg_postinst() {
	[[ ${ROOT} != "/" ]] && return 0

	# change menu.lst to grub.conf
	if [[ ! -e /boot/grub/grub.conf && -e /boot/grub/menu.lst ]] ; then
		mv -f /boot/grub/menu.lst /boot/grub/grub.conf
		ewarn
		ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
		ewarn
	fi
	einfo "Linking from new grub.conf name to menu.lst"
	[[ ! -e /boot/grub/menu.lst ]] && ln -snf grub.conf /boot/grub/menu.lst

	[[ -e /boot/grub/stage2 ]] && mv /boot/grub/stage2{,.old}

	einfo "Copying files from /lib/grub and /usr/lib/grub to /boot"
	for x in /lib/grub/*/* /usr/lib/grub/*/* ; do
		[[ -f ${x} ]] && cp -p ${x} /boot/grub
	done

	[[ -e /boot/grub/grub.conf ]] \
		&& /sbin/grub \
			--batch \
			--device-map=/boot/grub/device.map \
			< /boot/grub/grub.conf > /dev/null 2>&1
}
Comment 3 SpanKY gentoo-dev 2005-11-10 07:49:59 UTC

*** This bug has been marked as a duplicate of 69590 ***
Comment 4 John Herdy 2005-11-11 01:38:43 UTC
Hi Mike,

I'm sorry but I don't understand the current situation anymore, this bug has
been marked as dupe of bug #69590 which has been closed because the
reiser4-patch was included, however the reiser4-patch was removed due to bug
#111885 which resulted in this bug, I'm getting in some sort of loop but it
seems that reiser4 is out of grub and no bug is open to get it back in.

What to do? Open a new bug for re-adding reiser4-support to grub?

Regards,
Comment 5 SpanKY gentoo-dev 2005-11-11 06:57:34 UTC
no

Bug 69690 is for tracking reiser4 in grub

i really have no intention of re-enabling reiser4 in grub at all

edit the ebuild if you want it
Comment 6 John Herdy 2005-11-11 08:28:30 UTC
ok, thanks for clearing that up, I will wait for upstream support and until then
create a seperate bootpartition, thanks!
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2007-02-09 13:32:54 UTC
*** Bug 166064 has been marked as a duplicate of this bug. ***