Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 May 1999 10:55:15 -0700 (PDT)
From:      dima@server.ru
To:        freebsd-gnats-submit@freebsd.org
Subject:   bin/11914: makewhatis during installworld uses /usr/bin/perl and /usr/bin/gzip instead of /usr/obj/usr/src/tmp/usr/bin/{perl,gzip}
Message-ID:  <19990528175515.F12CE15106@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         11914
>Category:       bin
>Synopsis:       makewhatis during installworld uses /usr/bin/perl and /usr/bin/gzip instead of /usr/obj/usr/src/tmp/usr/bin/{perl,gzip}
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri May 28 11:00:01 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Dmitry Kazarov
>Release:        FreeBSD 3.2-STABLE
>Organization:
Server Inc
>Environment:
>Description:
During makeworld makewhatis is being copied to the tool tree 'as is':
it's first line is
    #!/usr/bin/perl
line #454 is
    $ENV{'PATH'} = "/bin:/usr/bin:$ENV{'PATH'}";

These lines causes usage /usr/bin/perl and /usr/bin/gzip instead of 
/usr/obj/usr/src/tmp/usr/bin/perl and /usr/obj/usr/src/tmp/usr/bin/gzip

This causes problem when I install system by booting from floppies,
partitioning disk, mounting partitions under /newroot,
 mounting /usr/src and /usr/obj with ready buildworld 
via NFS and running 'make DESTDIR=/newroot installworld' because 
the FreeBSD's boot floppies has no perl.

>How-To-Repeat:
# make buildworld
# make installworld
...
----------------------------------------
>Fix:
change beforeinstall targed in /usr/src/gnu/man/makewhatis/Makefile
to something like this 

beforeinstall:
.ifdef _BUILD_TOOLS
        echo '#!'${DESTDIR}${BINDIR}'/perl' > makewhatis
        grep -Fv "ENV{'PATH'} =" ${.CURDIR}/makewhatis.perl >> makewhatis
        echo '#!'${DESTDIR}${BINDIR}'/sh' > makewhatis.local
        grep -v '^PATH=' ${.CURDIR}/makewhatis.local.sh >> makewhatis.local
        ${INSTALL} ... makewhatis ${DESTDIR}${BINDIR}/makewhatis
        ${RM} makewhatis
        ${INSTALL} ... makewhatis.local ${DESTDIR}${libexecdir}/makewhatis.local
        ${RM} makewhatis.local
.else
        ${INSTALL} ... ${.CURDIR}/makewhatis.perl ....
        ${INSTALL} ... ${.CURDIR}/makewhatis.local.sh ...
.endif


>Release-Note:
>Audit-Trail:
>Unformatted:
 >>> Rebuilding man page indices
 ----------------------------------------
 ^Z
 [1]+ Stopped        make installworld
 # 
 Now you can find out which perl is running using lsof or something else.
 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990528175515.F12CE15106>