Date: Thu, 18 Nov 1999 06:07:14 +1100 From: John Birrell <jb@cimlogic.com.au> To: Marcel Moolenaar <marcel@scc.nl> Cc: John Birrell <jb@cimlogic.com.au>, Warner Losh <imp@village.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src Makefile.inc1 src/usr.bin/make Makefile Message-ID: <19991118060714.B13376@freebsd1.cimlogic.com.au> In-Reply-To: <38329493.82FFA536@scc.nl>; from Marcel Moolenaar on Wed, Nov 17, 1999 at 12:42:11PM %2B0100 References: <383189F7.67E89E8B@scc.nl> <38310A94.B1939A83@scc.nl> <199911151707.JAA03820@freefall.freebsd.org> <199911160533.WAA02391@harmony.village.org> <199911161544.IAA08642@harmony.village.org> <199911161714.KAA09479@harmony.village.org> <38319FFB.530FFCC6@scc.nl> <199911161935.MAA10311@harmony.village.org> <19991117212631.A13376@freebsd1.cimlogic.com.au> <38329493.82FFA536@scc.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Nov 17, 1999 at 12:42:11PM +0100, Marcel Moolenaar wrote: > John Birrell wrote: > > > > I've sent a set of makefiles to David O'Brien which allow gcc/egcs to > > be built as host and cross-compilers. Most of the trickery needs > > to be in sys.mk (it gets poluted more!), not Makefile.inc1 to ensure > > that things like the bfd type set at all levels of the build. > > sys.mk should not and need not be polluted. With the proper staging > and/or phasing of the build process you can handle anything without > trickery. Can you cross-compile from any level in the tree? > > all the tools that are needed for a cross-build. Then, for a cross-build, > > all you need to do in Makefile.inc1 is this: > > > > # Check if cross-compiling. > > __MA!=/sbin/sysctl -b hw.machine_arch > > __M!=/sbin/sysctl -b hw.machine > > .if ${__MA} != ${MACHINE_ARCH} || ${__M} != ${MACHINE} > > # Cross-compiling, so don't build tools. > > CROSS_COMPILING = 1 > > NOTOOLS = 1 > > .endif > > This won't work. I'm not able to make the native, non-cross Alpha > compiler in a cross-build, because MACHINE_ARCH=alpha in that case and > __MA will be something other (say i386). In a cross-build you want to > create the same world you do when you don't cross-build. This is not the > case with your 'solution'. Yes it is. > > I still believe that there should be compatibility in libc for the > > old signal interface while the running kernel doesn't support the > > new signal stuff. > > Unnecessarily complex. Fix what is broken. Don't work-around it, unless > a fix is not feasible. The build process is broken and fixing it would > give us much more in return than a work-around in libc would do. > > > Building a kernel in as part of a make world is too complicated IMHO. > > kernel: > cd ${.CURDIR}/sys/${MACHINE_ARCH}/conf; \ > config -d ${KERNELBUILDDIR} ${KERNEL} > cd ${KERNELBUILDDIR}; ${MAKE} depend; ${MAKE} all > > Piece of cake :-) Sounds simple, but I doubt that it will work out that way because of all the issues related to ${KERNEL}. -- John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/ john.birrell@cai.com john.birrell@opendirectory.com.au To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991118060714.B13376>