NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: toolchain/52834: NetBSD/sparc cross-build failure



The following reply was made to PR toolchain/52834; it has been noted by GNATS.

From: clare%csel.org@localhost
To: gnats-bugs%NetBSD.org@localhost
Cc: Robert Elz <kre%munnari.OZ.AU@localhost>, toolchain-manager%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Subject: Re: toolchain/52834: NetBSD/sparc cross-build failure
Date: Sun, 17 Dec 2017 22:48:06 +0900

 On Sun, 17 Dec 2017 12:50:00 +0000 (UTC)
 Robert Elz <kre%munnari.OZ.AU@localhost> wrote:
 
 >    | 	NetBSD/sparc build fails as following:
 >  
 >  Notice ...
 >  
 >    | #    create  libgcc_s/_clzdi2.d
 >    | CC=/export/stage/tools/bin/sparc--netbsdelf-gcc [...]
 >  
 >    | In file included from _clzdi2.S:2:0:
 >    | /export/stage/hack/src/external/gpl3/gcc.old/dist/libgcc/config/arm/,,,
 >  
 >  There is a strange mix of architectures there, sparc and arm ...
 >  
 >  My guess is that this is caused by:
 >  
 >    | 	run build.sh as following script:
 >    | 
 >    | #!/bin/sh
 >    | date=`/bin/date +%Y%m%d`
 >    | workdir=`pwd`
 >  [...]
 >    | for machine in amd64 i386 evbarm sparc; do
 >    |   cd ${workdir}/src || exit
 >    | 
 >    |   releasedir=/export/stage/release/${date}
 >    |   destdir=/export/stage/destdir/${machine}
 >    |   objdir=/export/stage/tmp
 >  
 >  Note, no mention of $machine in objdir
 >  
 >    |   echo "===> deleting ${destdir}"
 >    |   rm -rf ${destdir}
 >    |   mkdir -p ${destdir}
 >  
 >  destdir is cleaned, but objdir ?
 >  
 >    |   ./build.sh -m ${machine} -x -j4 \
 >    |     -U \
 >    |     -O ${objdir} \
 >  [...]
 >  
 >  The ARM build was immediately before the sparc build, I'd guess that
 >  there's contamination from the objdir from the evbarm build that is
 >  affecting the sparc build.
 >  
 >  You could delete $objdir before each build, or set
 >  
 >  	objdir=/export/stage/tmp/${machine}
 >  
 >  or use
 >  	-O ${objdir}/${machine}
 >  
 >  My similar script includes ...
 >  
 >  	        /bin/sh build.sh "$@" \
 >                          -m "${ARCH}"                    \
 >                          -D "${DEST}"                    \
 >                          -O "${OBJD}/${REL}/${ARCH}"     \
 >                          -R "${SNAP}"                    \
 >                          -T "${OBJD}/${REL}/tools"       \
 >  
 >  where REL is what release I am building (7.0 current ...) - including
 >  that in the names allows the objdir to be retained through all kinds of
 >  different builds, which makes the -u flag more effective...   Note that
 >  the tooldir can be shared between different arch builds of the same release
 >  (that's optional though.)
 
 thank you detailed analysis.
 i thought OBJMACHINE="yes" was sufficient to separation of objdir,
 but the real was not separated, as you say.
 
 i am retrying by updated script... (it will take few days,
 i have only poor machines...)
 
 
 -- 
 Shinichi Doyashiki <clare%csel.org@localhost>
 


Home | Main Index | Thread Index | Old Index