From owner-freebsd-current Tue Apr 4 14:37:04 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id OAA23941 for current-outgoing; Tue, 4 Apr 1995 14:37:04 -0700 Received: from trout.sri.MT.net (trout.sri.MT.net [204.182.243.12]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id OAA23935 for ; Tue, 4 Apr 1995 14:36:57 -0700 Received: (from nate@localhost) by trout.sri.MT.net (8.6.9/8.6.9) id PAA07441; Tue, 4 Apr 1995 15:40:34 -0600 Date: Tue, 4 Apr 1995 15:40:34 -0600 From: Nate Williams Message-Id: <199504042140.PAA07441@trout.sri.MT.net> In-Reply-To: rkw@dataplex.net (Richard Wackerbarth) "Re: cvs commit: src/sys/i386/conf Makefile.i386" (Apr 4, 4:13pm) X-Mailer: Mail User's Shell (7.2.5 10/14/92) To: rkw@dataplex.net (Richard Wackerbarth), "Rodney W. Grimes" Subject: Re: cvs commit: src/sys/i386/conf Makefile.i386 Cc: current@FreeBSD.org Sender: current-owner@FreeBSD.org Precedence: bulk > >The rule for genassym's should be changed such that it always uses > >/usr/include/stdio.h, that is the correct file to use, period, as > >it is going to be linked and run against /usr/lib/libc.a at the time > >the kernel is compiled. This will be extreamly important for cross > >compilation in the future. > > Actually, cross compilation is why it is WRONG!. > > There are two genassym's. No, there is *one* genassym. > One will be run on "this" machine to generate a > kernel for "that" machine and the other is a version which will be in the > distribution which is installed on "that" machine and used to rebuild the > kernel. But only one is created per kernel build. You aren't going to get a cross-compilation environment to work if leave everything in the same directory. Genassym is used *once* during a kernel compile to build a program 'on the host machine' which generates kernel files 'for the target machine' kernel. Where genassym is built is a moot point? > Since the two versions are linked against different libraries, it is > important that thare is NO ABSOLUTE reference to any file. All references > MUST be RELATIVE to the environment in which the code will be executed. One version is built on the cross. machine, and another version is built on the host machine. Genassym won't run on the cross machine if it's compiled and linked with include files and libraries that exist for the target machine, and vice-versa. Nate