On Thu, Dec 13, 2012 at 4:13 PM, Ian Lepore <freebsd_at_damnhippie.dyndns.org> wrote: > On Wed, 2012-12-12 at 20:52 +0200, Kimmo Paasiala wrote: >> On Wed, Dec 12, 2012 at 6:53 PM, Ian Lepore >> <freebsd_at_damnhippie.dyndns.org> wrote: >> > On Wed, 2012-12-12 at 18:14 +0200, Kimmo Paasiala wrote: >> >> Hello, >> >> >> >> My 9-STABLE buildworld broke in a very inexplicable way, I was >> >> getting an error on /usr/src/include/osreldate.h that I couldn't >> >> figure out until I started looking at the sys/conf/newvers.sh and what >> >> it does. It turned out that the thing that broke my buildworld was >> >> having .git directory at the root directory of the system because I >> >> recently started using GIT to track the configuration files. >> >> >> >> I added some debug echos to the newvers.sh and I found out it's >> >> setting SYSDIR to /bin/.. which in turn causes the newvers.sh to set >> >> the gitdir to /.git and that seems to break the logic in newvers.sh. >> >> >> >> Isn't SYSDIR supposed to be set to the sys -subdirectory of the source >> >> tree (/usr/src/sys default)? >> >> >> >> I'm guessing the reason the SYSDIR gets set to /bin/.. is the line in >> >> newvers.sh: >> >> >> >> SYSDIR=$(dirname $0)/.. >> >> >> >> $0 is actually /bin/sh and not the path to newver.sh because the >> >> newvers.sh is sourced by the Makefile in /usr/src/include instead of >> >> executing it: >> >> >> >> osreldate.h: ${.CURDIR}/../sys/conf/newvers.sh ${.CURDIR}/../sys/sys/param.h \ >> >> ${.CURDIR}/Makefile >> >> _at_${ECHO} creating osreldate.h from newvers.sh >> >> _at_MAKE=${MAKE}; \ >> >> PARAMFILE=${.CURDIR}/../sys/sys/param.h; \ >> >> . ${.CURDIR}/../sys/conf/newvers.sh; \ >> >> >> >> Now the question is how to fix this? >> >> >> >> -Kimmo >> > >> > Perhaps it could be handled similar to PARAMFILE, something like this in >> > the makefile: >> > >> > PARAMFILE=${.CURDIR}/../sys/sys/param.h; \ >> > SYSDIR=${.CURDIR}/../sys; \ >> > . ${.CURDIR}/../sys/conf/newvers.sh; \ >> > >> > I'm not sure if newvers.sh needs to work in ways that don't involve >> > being invoked from that makefile rule, so to be safe it could have >> > default handling, something like: >> > >> > : ${SYSDIR:=$(dirname $0)/..} >> > >> > -- Ian >> > >> > >> >> Thanks, that works. Should I file a PR about this? >> >> -Kimmo > > I think that would probably be a good idea, since no committer has > chimed in on this thread saying they're about to commit a fix. > > -- Ian > > Submitted as misc/174422. -KimmoReceived on Thu Dec 13 2012 - 22:02:17 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:33 UTC