On Fri, May 25, 2007 at 12:28:18PM +0400, Ruslan Ermilov wrote:
> On Fri, May 25, 2007 at 12:07:10PM +0930, Shaun Branden wrote:
 
> IEEE80211_IS_CHAN_PASSIVE() is a macro defined in
> src/sys/net80211/_ieee80211.h.  Check that you have an up-to-date
> copy of that file in /usr/src.  If you have it and still get the
> error, "rm -rf /usr/obj/usr/src" first, then try to build world
> again.

Thanks for that

The file is there:
[EMAIL PROTECTED]:net80211$ pwd
/usr/src/sys/net80211
You have mail in /var/mail/shaun
[EMAIL PROTECTED]:net80211$ ls -l _ieee80211.h
-rw-r--r--  1 root  wheel  8181 Jan 28 14:37 _ieee80211.h

and this is from my history:
489   cvsup -g ~shaun/cvs/stable-supfile 
490  cd /usr/obj
491  rm -rf *
492  chflags -R noschg *
493  rm -rf *
494  cd /usr/src

I just ran these again, ie !489, !490 etc with make buildworld at the
end and got the same result.

...

ifconfig.lo(.text+0x4df8): In function `print_chaninfo':
: undefined reference to `IEEE80211_IS_CHAN_PASSIVE'
*** Error code 1

Stop in /usr/obj/usr/src/rescue/rescue.
*** Error code 1

Stop in /usr/src/rescue/rescue.
*** Error code 1

Stop in /usr/src/rescue.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
[EMAIL PROTECTED]:src$ 

Also, I usually use the following script to do all this, but started
running the commands interactively after it failed the first time. As
you can see it removes the /usr/obj before running make buildworld.

#!/usr/local/bin/bash
# Copyright (c) June 2002 Shaun Branden <[EMAIL PROTECTED]>.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.

SUPFILE="/home/shaun/cvs/stable-supfile"
KERN="SAGAN"
#KERN="GENERICNEW"

if [ -z $1 ]
then
        echo "Usage: `basename $0` {-a(ll includes cvs)|-m(ost)}" >&2
        exit 42
fi

if [ "$UID" != "0" ]
then
        echo "You do not have permission to use this script"
        exit 42
fi

docvs ()
{
echo "updating cvs"
cvsup -g $SUPFILE
if [ $? -ne "0" ]
then
        echo "cvs failed, perhaps we are offline"
        exit 42
fi
}

#remove the working files from last time
doremove ()
{
echo "Removing old /usr/obj:"
cd /usr/obj
if [ $? -eq "0" ]
then
        rm -rf *
        chflags -R noschg *
        rm -rf *
else
        echo "Did not change to /usr/obj so rm -rf not run"
        exit 42
fi
}

#compiles all system sources
dobuild ()
{
echo "Compiling the sources:"
cd /usr/src
make buildworld
if [ $? -ne "0" ]
then
        echo "make buildworld failed, exiting"
        exit 42
fi
}

#compile and installs the kernel
dokernel ()
{
echo "Compiling the kernel called $KERN "
echo "running make buildkernel"
make buildkernel KERNCONF=$KERN
if [ $? -ne "0" ]
then
        echo "make buildkernel failed, exiting"
        exit 42
fi
echo "running make installkernel"
make installkernel KERNCONF=$KERN
if [ $? -ne "0" ]
then
        echo "make installkernel failed, exiting"
        exit 42
fi
}

#installs new system
doinstall ()
{
#install it all
echo "running make installworld"
make installworld
if [ $? -ne "0" ]
then
        echo "ERROR: make installworld failed, exiting"
        exit 42
fi
}

#Now run Mergemaster, this will also run MAKEDEV"
domerge ()
{
echo "Would you like me to run mergemaster? (y/n)"
read answer
if [ $answer = "y" ]
then
        cp -Rp /etc /etc.old
        mergemaster
        if [ $? -ne "0" ]
        then
                echo "make installkernel failed, exiting"
                exit 42
        fi
else
        echo "Run cp -Rp /etc /etc.old
        mergemaster
        manually"
        exit
fi
}

#calls from here
case "$1" in
-a)
        docvs
        doremove
        dobuild
        dokernel
        doinstall
        domerge
        ;;
-m)
        doremove
        dobuild
        dokernel
        doinstall
        domerge
        ;;
*)
echo "Usage: `basename $0` {-a(ll includes cvs)|-m(ost)}" >&2
        ;;
esac
echo "Now that mergemaster is complete you can reboot to the new system:)"

thanks

shaun
-- 
Shaun Branden: Alchemist and Bit Bender
PGP and contact details in the headers.

Attachment: pgpTVIdTdlZR2.pgp
Description: PGP signature

Reply via email to