build: only use @SET_MAKE@ in the top-level Makefile.in

@SET_MAKE@ (AC_PROG_MAKE_SET) is a legacy autoconf substitution needed
only for very old Unix make implementations that don't automatically
propagate $(MAKE) to recursively invoked sub-makes. Every Makefile.in
in the tree carried its own copy, but that's unnecessary: exporting
MAKE once, from the top-level Makefile.in, is sufficient for it to
reach any sub-make invoked (directly or transitively) from there.

Replace the top-level @SET_MAKE@ with the pair "@SET_MAKE@" followed
by "export MAKE", and drop the now-redundant @SET_MAKE@ line from
doc/Makefile.in, misc/Makefile.in and test/Makefile.in.

This incidentally fixes doc/Makefile.in being usable when fed directly
to nmake (as Mkfiles/msvc.mak's "docs" rule does, since it predates
running ./configure): a bare "@SET_MAKE@" line, left unexpanded, is
not a valid nmake assignment or rule and previously caused a hard
parse error (U1035, "expected ':' or '=' separator").

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
H. Peter Anvin (Intel) 2026-07-07 13:52:07 -07:00
parent 186be201d5
commit 56200857e2
4 changed files with 1 additions and 6 deletions

View file

@ -5,6 +5,7 @@
# Auto-configuring Makefile for the Netwide Assembler.
@SET_MAKE@
export MAKE
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_TARNAME = @PACKAGE_TARNAME@

View file

@ -6,8 +6,6 @@
# UNIX Makefile for NASM documentation
#
@SET_MAKE@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_TARNAME = @PACKAGE_TARNAME@

View file

@ -6,8 +6,6 @@
# Makefile for various extra NASM programs and files
#
@SET_MAKE@
top_srcdir = @top_srcdir@
srcdir = @srcdir@
top_objdir = @top_builddir@

View file

@ -1,5 +1,3 @@
@SET_MAKE@
.SUFFIXES: .bin .bin16 .bin32 .bin64 .o .o64 .aout .aoutb .obj .obj64 \
.mo32 .mo64 .dbg .i .od .ox .ith .srec .exe .lst \
.asm .pl