Created attachment 349634 [details, diff] patch to $PORTDIR/sys-libs/gdbm/gdbm-1.8.3-r4.ebuild Providing small patch needed on $EPREFIX/usr/portage/sys-libs/gdbm/gdbm-1.8.3-r4.ebuild to make it work with eprefix. Steps to show error message by current ebuild (tested on system described by http://wiki.gentoo.org/wiki/Raspberry_Pi_Quick_Install_Guide ): wget http://overlays.gentoo.org/proj/alt/browser/trunk/prefix-overlay/scripts/bootstrap-prefix.sh?format=txt EPREFIX=/myprefix ./bootstrap-prefix.sh Error message: >>> Completed installing gdbm-1.8.3-r4 into /run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/image/^M ^M Fixing .la files^M data/data/com.spartacusrex.spartacuside/gentoo_armv6l/usr/lib/libgdbm_compat.la^M strip: armv6j-hardfloat-linux-gnueabi-strip --strip-unneeded -R .comment -R .GCC.command.line -R .note.gnu.gold-version^M usr/lib/libgdbm.so.3.0.0^M usr/lib/libgdbm.a^M usr/lib/libgdbm_compat.so.3.0.0^M usr/lib/libgdbm_compat.a^M ecompressdir: bzip2 -9 /usr/share/man^M ecompressdir: bzip2 -9 /usr/share/info^M ^[[33;01m*^[[0m QA Notice: the following files are outside of the prefix:^M ^[[33;01m*^[[0m /usr^M ^[[33;01m*^[[0m /usr/include^M ^[[33;01m*^[[0m /usr/include/gdbm.h^M ^[[33;01m*^[[0m /usr/include/gdbm^M ^[[33;01m*^[[0m /usr/include/gdbm/dbm.h^M ^[[33;01m*^[[0m /usr/include/gdbm/ndbm.h^M ^[[31;01m*^[[0m ERROR: sys-libs/gdbm-1.8.3-r4 failed:^M ^[[31;01m*^[[0m Aborting due to QA concerns: there are files installed outside the prefix^M ^[[31;01m*^[[0m ^M ^[[31;01m*^[[0m Call stack:^M ^[[31;01m*^[[0m misc-functions.sh, line 1893: Called install_qa_check^M ^[[31;01m*^[[0m misc-functions.sh, line 244: Called install_qa_check_prefix^M ^[[31;01m*^[[0m misc-functions.sh, line 932: Called die^M ^[[31;01m*^[[0m The specific snippet of code:^M ^[[31;01m*^[[0m die "Aborting due to QA concerns: there are files installed outside the prefix"^M ^[[31;01m*^[[0m ^M ^[[31;01m*^[[0m If you need support, post the output of `emerge --info '=sys-libs/gdbm-1.8.3-r4'`,^M ^[[31;01m*^[[0m the complete build log and the output of `emerge -pqv '=sys-libs/gdbm-1.8.3-r4'`.^M ^[[31;01m*^[[0m The complete build log is located at '/run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/temp/build.log'.^M ^[[31;01m*^[[0m The ebuild environment file is located at '/run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/temp/environment'.^M ^[[31;01m*^[[0m Working directory: '/run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/image'^M ^[[31;01m*^[[0m S: '/run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/work/gdbm-1.8.3'^M !!! post install failed; exiting.^M ^M >>> ^[[31;01mFailed^[[39;49;00m to emerge ^[[32msys-libs/gdbm-1.8.3-r4^[[39;49;00m, Log file:^M ^M >>> '^[[32m/run/xdej/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/temp/build.log^[[39;49;00m'^M
I have similar patches for : sys-devel/bison/bison-2.4.3.ebuild sys-devel/binutils/files/binutils-2.22-mint.patch sys-devel/binutils/binutils-2.23.51.0.8.ebuild sys-apps/portage/portage-2.2.01.21864.ebuild eclass/kernel-2.eclass dev-lang/python/python-2.7.3-r3.ebuildn dev-lang/perl/perl-5.12.4-r1.ebuild app-admin/eselect-python/eselect-python-20111108.ebuild Please tell me, here or by e-mail, if these patches, all related to prefix, are welcomed in https://bugs.gentoo.org, and if I should file a new bug for each of them.
Comment on attachment 349634 [details, diff] patch to $PORTDIR/sys-libs/gdbm/gdbm-1.8.3-r4.ebuild why do you care about gdbm-1.8.x ? the latest version is gdbm-1.9.x and that should work fine for prefix. your change won't work w/out bumping the EAPI. >- --includedir=/usr/include/gdbm \ >+ --includedir=$EPREFIX/usr/include/gdbm \ quoting is missing, and vars should braces around them however, this would probably be better: --includedir='$(prefix)/include/gdbm' >+ --oldincludedir=$EPREFIX/usr/include \ why do you need to set oldincludedir ? >+ mv "${D}"$EPREFIX/usr/include/gdbm/gdbm.h "${D}"$EPREFIX/usr/include/ || die no ... this is what $ED is for
(In reply to Daa Jaa from comment #1) we don't care about old versions. for prefix work, you should *only* be looking at the very latest. please cc prefix@gentoo.org when you file EPREFIX related bugs.
Thank you SpanKY for all your remarks. @SpanKY : "we don't care about old versions. for prefix work, you should *only* be looking at the very latest." Is there a difference between the normal portage tree and the EPREFIX portage tree ? Where can I find the latest version of the latter ? When the EPREFIX will be working, I will test the adaptation of my patch to gdbm-1.9 before submitting it here.
(In reply to Daa Jaa from comment #4) > Thank you SpanKY for all your remarks. > > @SpanKY : "we don't care about old versions. for prefix work, you should > *only* be looking at the very latest." > > Is there a difference between the normal portage tree and the EPREFIX > portage tree ? Where can I find the latest version of the latter ? What tree are you using? Have you ever done "emerge --sync"? My Prefix installation have sys-libs/gdbm-1.10
@Benda Xu: "Have you ever done "emerge --sync"?" emerge --sync has been done by bootstrap-prefix.sh, but my patch addresses a bug of bootstrap-prefix.sh happening BEFORE that emerge --sync, with the portage tree hardcoded in bootstrap-prefix.sh.
(In reply to Daa Jaa from comment #6) > @Benda Xu: "Have you ever done "emerge --sync"?" > > emerge --sync has been done by bootstrap-prefix.sh, but my patch addresses a > bug of bootstrap-prefix.sh happening BEFORE that emerge --sync, with the > portage tree hardcoded in bootstrap-prefix.sh. I speculate that bug is fixed. The portage snapshot used by bootstrap-prefix.sh is updated regularly.