Files
oldlinux-files/ftp-archives/tsx-11.mit.edu/1996-10-07/sources/FSF/mk363B.Notes
2024-02-19 00:24:15 -05:00

105 lines
3.1 KiB
Plaintext

GNU make 3.63
Binaries for Linux prepared by faith@cs.unc.edu, Sat Jan 23 12:29:02 1993
Compiled with gcc 2.3.3 (-O6)
Linked with jump-4.2 libraries (-s)
To install from Linux binary distribution:
1) Get binary distribution (mk363B.taz) from
ftp.cs.unc.edu:/pub/faith/linux/utils or from
tsx-11.mit.edu:/pub/linux/binaries/FSF
2) cd /
3) gtar zpxvf mk363B.taz
Alternatively, the SLS sysinstall program can be used.
To uninstall this binary distribution, do the following:
cd /usr/src/make-3.63
./mk363B.Unins
To install from source:
1) Get source from: prep.ai.mit.edu:/pub/gnu/make-3.63.tar.Z
2) Untar make-3.63.tar.Z in /usr/src
3) cd make-3.63
4) patch -p1 < mk363B.Notes
4) ./configure --prefix=/usr
5) make 'CFLAGS=-O6 -DSYS_SIGLIST_DECLARED' LDFLAGS=-s
6) make 'CFLAGS=-O6 -DSYS_SIGLIST_DECLARED' LDFLAGS=-s install
8) make make.info
9) cp make.info* /usr/emacs/info
10) cp make.man /usr/man/man1/make.1
Here is the patch from roland@gnu.ai.mit.edu (Roland McGrath) to correct
the problem of environment variable expansion changing the built in rules.
diff -rc make-3.63.old/variable.c make-3.63/variable.c
*** make-3.63.old/variable.c Wed Jan 13 21:09:20 1993
--- make-3.63/variable.c Thu Jan 28 21:09:55 1993
***************
*** 437,442 ****
--- 437,446 ----
switch (v->export)
{
case v_default:
+ if (v->origin == o_default)
+ /* Only export default variables by explicit request. */
+ continue;
+
if (!export_all_variables
&& v->origin != o_command
&& v->origin != o_env && v->origin != o_env_override
***************
*** 490,500 ****
for (b = table[i]; b != 0; b = b->next)
{
register struct variable *v = b->variable;
! /* If V is recursively expanded, expand its value. */
! char *value = v->recursive ? recursively_expand (v) : v->value;
! result[nvariables++] = concat (v->name, "=", value);
! if (v->recursive)
! free (value);
}
}
result[nvariables] = (char *) xmalloc (100);
--- 494,511 ----
for (b = table[i]; b != 0; b = b->next)
{
register struct variable *v = b->variable;
! /* If V is recursively expanded and didn't come from the environment,
! expand its value. If it came from the environment, it should
! go back into the environment unchanged. */
! if (v->recursive
! && v->origin != o_env && v->origin != o_env_override)
! {
! char *value = recursively_expand (v);
! result[nvariables++] = concat (v->name, "=", value);
! free (value);
! }
! else
! result[nvariables++] = concat (v->name, "=", v->value);
}
}
result[nvariables] = (char *) xmalloc (100);
***************
*** 682,688 ****
#ifndef NO_FLOAT
printf ("# average of %.1f variables per bucket, \
max %u in one bucket.\n",
! ((double) nvariables) * 100.0 / (double) set->buckets,
per_bucket);
#endif
}
--- 693,699 ----
#ifndef NO_FLOAT
printf ("# average of %.1f variables per bucket, \
max %u in one bucket.\n",
! (double) nvariables / (double) set->buckets,
per_bucket);
#endif
}