Due to typo in Makefile, emulators/linux_base-8 installation fails with following message: mv: /compat/linux/etcnsswitch.conf.dist: No such file or directory Fix: Following patch should fix this: --- Makefile 4 Dec 2005 13:12:08 -0000 1.112 +++ Makefile 10 Dec 2005 22:16:45 -0000 @@ -145,7 +145,7 @@ ${ECHO} $$R; \ ${RPM} -U ${RPMFLAGS} ${RPMDIR}/$$R; \ done - @${MV} ${PREFIX}/etcnsswitch.conf.dist ${PREFIX}/etc/nsswitch.conf.dist + @${MV} ${PREFIX}/etc/nsswitch.conf.dist ${PREFIX}/etc/nsswitch.conf.dist @test -f ${PREFIX}/etc/nsswitch.conf || cp ${PREFIX}/etc/nsswitch.conf.dist \ ${PREFIX}/etc/nsswitch.conf @${FIND} ${PREFIX}/bin ${PREFIX}/sbin/ ${PREFIX}/usr/bin \ How-To-Repeat: cd /usr/ports/emulators/linux_base-8; make install
Responsible Changed From-To: freebsd-ports-bugs->freebsd-emulation Over to maintainer
Hi, I can't reproduce this. Here it works just fine. The etcnsswitch.conf.dist file is created (have a look at the "FIXME" comment in the makefile) and moved to the right directory. Can you please do a "portupgrade -f linux_base-8" and report back if the error persists? Which version of the rpm port are you using? Bye, Alexander. -- Weird enough for government work. http://www.Leidinger.net Alexander @ Leidinger.net GPG fingerprint = C518 BC70 E67F 143F BE91 3365 79E2 9C60 B006 3FE7
Hi, My rpm port was rpm-4.0.4_3 (archivers/rpm4). With rpm-3.0.6_10, it worked just fine (no installation error, at least). I now realize that my patch was meaningless. (I thought it moves from WRKDIR to PREFIX, but...) Sorry for confusion. Alexander Leidinger wrote: > Hi, > > I can't reproduce this. Here it works just fine. The > etcnsswitch.conf.dist file is created (have a look at the "FIXME" > comment in the makefile) and moved to the right directory. > > Can you please do a "portupgrade -f linux_base-8" and report back if > the error persists? > > Which version of the rpm port are you using? > > Bye, > Alexander. >
SANETO Takanori <sanewo@ba2.so-net.ne.jp> wrote: > Hi, > My rpm port was rpm-4.0.4_3 (archivers/rpm4). > With rpm-3.0.6_10, it worked just fine (no installation error, at least). > > I now realize that my patch was meaningless. > (I thought it moves from WRKDIR to PREFIX, but...) Your patch: yes. Your bogreport: not at all. I try to get time this week to fix the issue for rpm-4. Bye, Alexander. -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137 It pays to be obvious, especially if you have a reputation for subtlety.
> I try to get time this week to fix the issue for rpm-4. Since I made the mess, attached is a patch that fixes it for both rpm3 and rpm4. Just did a install/deinstall with both rpms, I hope this really fixes it. Ulrich Spoerlein Index: Makefile =================================================================== RCS file: /home/ncvs/ports/emulators/linux_base-8/Makefile,v retrieving revision 1.112 diff -u -p -r1.112 Makefile --- Makefile 4 Dec 2005 13:12:08 -0000 1.112 +++ Makefile 13 Dec 2005 19:55:08 -0000 @@ -125,8 +125,8 @@ FALLBACK_ELF_MIB= kern.fallback_elf_bran LINUX_ELF= 3 PREVIOUS_ELF!= /sbin/sysctl -n ${FALLBACK_ELF_MIB} -# FIXME. This will result in a file at /compat/linux/etcnsswitch.conf.dist (sic!) -RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc/nsswitch.conf.dist --badreloc +# FIXME: The double-// can go away, once we deprecate rpm-3 +RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc//nsswitch.conf.dist --badreloc do-install: # @@ -145,7 +145,6 @@ do-install: ${ECHO} $$R; \ ${RPM} -U ${RPMFLAGS} ${RPMDIR}/$$R; \ done - @${MV} ${PREFIX}/etcnsswitch.conf.dist ${PREFIX}/etc/nsswitch.conf.dist @test -f ${PREFIX}/etc/nsswitch.conf || cp ${PREFIX}/etc/nsswitch.conf.dist \ ${PREFIX}/etc/nsswitch.conf @${FIND} ${PREFIX}/bin ${PREFIX}/sbin/ ${PREFIX}/usr/bin \
It worked fine with me, except that when rpm4 is used, pkg-plist does not match actual files installed. From pkg-plist, var/lib/rpm/conflictsindex.rpm var/lib/rpm/fileindex.rpm var/lib/rpm/groupindex.rpm var/lib/rpm/nameindex.rpm var/lib/rpm/packages.rpm var/lib/rpm/providesindex.rpm var/lib/rpm/requiredby.rpm var/lib/rpm/triggerindex.rpm Ulrich Spoerlein wrote: >> I try to get time this week to fix the issue for rpm-4. > > Since I made the mess, attached is a patch that fixes it for both rpm3 > and rpm4. Just did a install/deinstall with both rpms, I hope this > really fixes it. > > Ulrich Spoerlein > > Index: Makefile > =================================================================== > RCS file: /home/ncvs/ports/emulators/linux_base-8/Makefile,v > retrieving revision 1.112 > diff -u -p -r1.112 Makefile > --- Makefile 4 Dec 2005 13:12:08 -0000 1.112 > +++ Makefile 13 Dec 2005 19:55:08 -0000 > @@ -125,8 +125,8 @@ FALLBACK_ELF_MIB= kern.fallback_elf_bran > LINUX_ELF= 3 > PREVIOUS_ELF!= /sbin/sysctl -n ${FALLBACK_ELF_MIB} > > -# FIXME. This will result in a file at /compat/linux/etcnsswitch.conf.dist (sic!) > -RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc/nsswitch.conf.dist --badreloc > +# FIXME: The double-// can go away, once we deprecate rpm-3 > +RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc//nsswitch.conf.dist --badreloc > > do-install: > # > @@ -145,7 +145,6 @@ do-install: > ${ECHO} $$R; \ > ${RPM} -U ${RPMFLAGS} ${RPMDIR}/$$R; \ > done > - @${MV} ${PREFIX}/etcnsswitch.conf.dist ${PREFIX}/etc/nsswitch.conf.dist > @test -f ${PREFIX}/etc/nsswitch.conf || cp ${PREFIX}/etc/nsswitch.conf.dist \ > ${PREFIX}/etc/nsswitch.conf > @${FIND} ${PREFIX}/bin ${PREFIX}/sbin/ ${PREFIX}/usr/bin \
Oops, I've sent unfinished mail. In /compat/linux/var/lib/rpm, I see followings: % ls -l /compat/linux/var/lib/rpm total 2268 -rw-r--r-- 1 root wheel 348160 Dec 15 23:45 Basenames -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Conflictname -rw-r--r-- 1 root wheel 94208 Dec 15 23:45 Dirnames -rw-r--r-- 1 root wheel 643072 Dec 15 23:45 Filemd5s -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Group -rw-r--r-- 1 root wheel 8192 Dec 15 23:45 Installtid -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Name -rw-r--r-- 1 root wheel 1327104 Dec 15 23:45 Packages -rw-r--r-- 1 root wheel 24576 Dec 15 23:45 Providename -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Provideversion -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Requirename -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Requireversion -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Sigmd5 -rw-r--r-- 1 root wheel 12288 Dec 15 23:45 Triggername The contents of pkg-plist should be tailored for each rpm version, I think. Regards, SANETO Takanori wrote: > It worked fine with me, except that when rpm4 is used, pkg-plist does > not match actual files installed. > >>From pkg-plist, > > var/lib/rpm/conflictsindex.rpm > var/lib/rpm/fileindex.rpm > var/lib/rpm/groupindex.rpm > var/lib/rpm/nameindex.rpm > var/lib/rpm/packages.rpm > var/lib/rpm/providesindex.rpm > var/lib/rpm/requiredby.rpm > var/lib/rpm/triggerindex.rpm > > > > Ulrich Spoerlein wrote: >>> I try to get time this week to fix the issue for rpm-4. >> Since I made the mess, attached is a patch that fixes it for both rpm3 >> and rpm4. Just did a install/deinstall with both rpms, I hope this >> really fixes it. >> >> Ulrich Spoerlein >> >> Index: Makefile >> =================================================================== >> RCS file: /home/ncvs/ports/emulators/linux_base-8/Makefile,v >> retrieving revision 1.112 >> diff -u -p -r1.112 Makefile >> --- Makefile 4 Dec 2005 13:12:08 -0000 1.112 >> +++ Makefile 13 Dec 2005 19:55:08 -0000 >> @@ -125,8 +125,8 @@ FALLBACK_ELF_MIB= kern.fallback_elf_bran >> LINUX_ELF= 3 >> PREVIOUS_ELF!= /sbin/sysctl -n ${FALLBACK_ELF_MIB} >> >> -# FIXME. This will result in a file at /compat/linux/etcnsswitch.conf.dist (sic!) >> -RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc/nsswitch.conf.dist --badreloc >> +# FIXME: The double-// can go away, once we deprecate rpm-3 >> +RPMFLAGS+= --relocate /etc/nsswitch.conf=/etc//nsswitch.conf.dist --badreloc >> >> do-install: >> # >> @@ -145,7 +145,6 @@ do-install: >> ${ECHO} $$R; \ >> ${RPM} -U ${RPMFLAGS} ${RPMDIR}/$$R; \ >> done >> - @${MV} ${PREFIX}/etcnsswitch.conf.dist ${PREFIX}/etc/nsswitch.conf.dist >> @test -f ${PREFIX}/etc/nsswitch.conf || cp ${PREFIX}/etc/nsswitch.conf.dist \ >> ${PREFIX}/etc/nsswitch.conf >> @${FIND} ${PREFIX}/bin ${PREFIX}/sbin/ ${PREFIX}/usr/bin \ >
State Changed From-To: open->closed I committed the double-slash patch. As for changing plist for rpm3/rpm4, that would be a bit tricky, because today Ports framework have no idea of actual version of a dependencies... hmm.