Allow one to specify a second parameter to the machine line. This
allows us to specify the machine_arch as well as machine. If specified then a second link will be made, similar to machine, from $MACHINE_ARCH to $S/$MACHINE_ARCH/include. This is for ports where MACHINE != MACHINE_ARCH (pc98 today, others in the future?). Reviewed by: arch@, nyan@
This commit is contained in:
parent
e5bd0ae156
commit
51c1297a48
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=144509
@ -91,9 +91,11 @@ struct config {
|
||||
* being used. It uses the name of the machine in choosing
|
||||
* files and directories. Thus if the name of the machine is ``i386'',
|
||||
* it will build from ``Makefile.i386'' and use ``../i386/inline''
|
||||
* in the makerules, etc.
|
||||
* in the makerules, etc. machinearch is the global notion of the
|
||||
* MACHINE_ARCH for this MACHINE.
|
||||
*/
|
||||
char *machinename;
|
||||
char *machinearch;
|
||||
|
||||
/*
|
||||
* For each machine, a set of CPU's may be specified as supported.
|
||||
|
@ -138,6 +138,15 @@ Config_spec:
|
||||
errx(1, "%s:%d: only one machine directive is allowed",
|
||||
yyfile, yyline);
|
||||
machinename = $2;
|
||||
machinearch = $2;
|
||||
} |
|
||||
ARCH Save_id Save_id
|
||||
= {
|
||||
if (machinename != NULL)
|
||||
errx(1, "%s:%d: only one machine directive is allowed",
|
||||
yyfile, yyline);
|
||||
machinename = $2;
|
||||
machinearch = $3;
|
||||
} |
|
||||
CPU Save_id
|
||||
= {
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* 6 digits of version. The most significant are branch indicators
|
||||
* (eg: RELENG_2_2 = 22, -current presently = 50 etc). The least
|
||||
* (eg: RELENG_2_2 = 22, -current presently = 60 etc). The least
|
||||
* significant digits are incremented for each incompatible change.
|
||||
*
|
||||
* The numbering scheme is inspired by the sys/conf/newvers.sh RELDATE
|
||||
@ -8,4 +8,4 @@
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
#define CONFIGVERS 600001
|
||||
#define CONFIGVERS 600002
|
||||
|
@ -163,6 +163,20 @@ main(int argc, char **argv)
|
||||
srcdir, machinename);
|
||||
(void) unlink(path("machine"));
|
||||
(void) symlink(xxx, path("machine"));
|
||||
if (strcmp(machinename, machinearch) != 0) {
|
||||
/*
|
||||
* make symbolic links in compilation directory for
|
||||
* machinearch, if it is different than machinename.
|
||||
*/
|
||||
if (*srcdir == '\0')
|
||||
(void)snprintf(xxx, sizeof(xxx), "../../../%s/include",
|
||||
machinearch);
|
||||
else
|
||||
(void)snprintf(xxx, sizeof(xxx), "%s/%s/include",
|
||||
srcdir, machinearch);
|
||||
(void) unlink(path(machinearch));
|
||||
(void) symlink(xxx, path(machinearch));
|
||||
}
|
||||
options(); /* make options .h files */
|
||||
makefile(); /* build Makefile */
|
||||
headers(); /* make a lot of .h files */
|
||||
|
Loading…
Reference in New Issue
Block a user