Date: Sun, 05 Nov 2000 14:07:36 -0800 From: Marcel Moolenaar <marcel@cup.hp.com> To: arch@FreeBSD.org Subject: source upgrading: bootstrap library Message-ID: <3A05DA28.DE3EE486@cup.hp.com>
next in thread | raw e-mail | index | archive | help
Hi, When source upgrading, we seem to hit the problem of missing functions/syscalls more often. The problem in general is this: When we maintain our sources and/or update our contributed sources, we use functions that exist on the system at that moment. The mkstemps functions are a good example. When we try to build the sources on an older machine (when upgrading for example) those "new" functions may not be present. This breaks the build and the upgrade path which currently is broken in a number of cases. There are multiple ways to solve (avoid) this. One way is is handling each case seperately, as is currently done for gcc. We build a FreeBSD specific library for gcc that contains functions we need to be backward compatible (see /usr/src/gnu/usr.bin/cc/cc_fbsd). We have a similar problem with libiberty and just recently with perl. Another approach is to build a bootstrap library as part of the bootstrap phase and have it contain any and all functions or compatibility shims we need to be able to upgrade. All bootstrap, build and cross- tools are to be linked against this library (in such a way that existing functions are used). I tend to favor the latter and plan to implement it. Let me know if you have any objections, alternatives, additions or questions. -- Marcel Moolenaar mail: marcel@cup.hp.com / marcel@FreeBSD.org tel: (408) 447-4222 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A05DA28.DE3EE486>