Makefile upgrade: target for x86_64

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Fri Nov 6 20:20:45 PST 2009


On Fri, Nov 06, 2009 at 09:56:44PM +0530, Saifi Khan wrote:
> On Sat, 7 Nov 2009, YONETANI Tomokazu wrote:
> > On Fri, Nov 06, 2009 at 08:06:56PM +0530, Saifi Khan wrote:
> > > Running the Makefile in debug mode, shows that the following
> > > variables are still set to amd64
> > > 
> > > MACHINE_ARCH
> > > MACHINE
> > > 
> > > Please see the highlighted lines (line 751 and 752) at
> > > http://dragonflybsd.pastebin.com/m7e5b6eca
> > > 
> > > How do i set these variables to x86_64 in the Makefile ?
> > 
> > By setting environment variables with the same name, or specify them
> > on the command line.  Otherwise they're taken from sysctl variables
> > (look at InitVariables() function in make's source code).  
> 
> Yonetani Tomokazu thank you for your reply.
> 
> i wrote a small shell script that i 'source' so that the
> environment variables are set.
> 
> > If you're  performing the `approved method of upgrading your
> > system', you're still running old kernel, which should return
> > amd64.  

I've just upgraded my amd64 machine as described at the end of build(7)
with a little arrangement:

env - PATH=/sbin:/bin:/usr/sbin:/usr/bin __MAKE_CONF=/dev/null sh -c '
    make buildworld
    make buildkernel KERNCONF=FOO
    make installkernel KERNCONF=FOO
    make installworld
    MACHINE_ARCH=x86_64 make upgrade
'

(the first line is to get rid of extra env variables or /etc/make.conf)
then rebooted, and now make command reports these variables correctly:
    $ cd
    $ env - PATH=$PATH make -V MACHINE_ARCH -V MACHINE -V MACHINE_PLATFORM
    x86_64
    x86_64
    pc64

so if you're running new kernel and still need those environment variables
set to x86_64, maybe you need to build and install it WITHOUT those
environment variables set.

Cheers.





More information about the Users mailing list