]> git.ipfire.org Git - thirdparty/glibc.git/commit - io/Makefile
Consistently include Makeconfig after defining subdir.
authorJoseph Myers <joseph@codesourcery.com>
Wed, 26 Feb 2014 23:12:03 +0000 (23:12 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 26 Feb 2014 23:12:03 +0000 (23:12 +0000)
commita5f891ac8df09e56ecc64bf18a839a06470deacd
tree65e83dc43392aabcf709d3a01c2940e12ef6bab7
parentcf822e3c94c2cdec736cdf7b503790b17179afcd
Consistently include Makeconfig after defining subdir.

In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I
noted it was necessary to add includes of Makeconfig early in various
subdirectory makefiles for the tests-special variable settings added
by that patch to be conditional on configuration information.  No-one
commented on the general question there of whether Makeconfig should
always be included immediately after the definition of subdir.

This patch implements that early inclusion of Makeconfig in each
directory (which is a lot easier than consistent placement of includes
of Rules).  Includes are added if needed, or moved up if already
present.  Subdirectory "all:" targets are removed, since Makeconfig
provides one.

There is potential for further cleanups I haven't done.  Rules and
Makerules have code such as

ifneq   "$(findstring env,$(origin headers))" ""
headers :=
endif

to override to empty any value of various variables that came from the
environment.  I think there is a case for Makeconfig setting all the
subdirectory variables (other than subdir) to empty to ensure no
outside value is going to take effect if a subdirectory fails to
define a variable.  (A list of such variables, possibly out of date
and incomplete, is in manual/maint.texi.)  Rules and Makerules would
give errors if Makeconfig hadn't already been included, instead of
including it themselves.  The special code to override values coming
from the environment would then be obsolete and could be removed.

Tested x86_64, including that installed binaries are identical before
and after the patch.

* argp/Makefile: Include Makeconfig immediately after defining
subdir.
* assert/Makefile: Likewise.
* benchtests/Makefile: Likewise.
* catgets/Makefile: Likewise.
* conform/Makefile: Likewise.
* crypt/Makefile: Likewise.
* csu/Makefile: Likewise.
(all): Remove target.
* ctype/Makefile: Include Makeconfig immediately after defining
subdir.
* debug/Makefile: Likewise.
* dirent/Makefile: Likewise.
* dlfcn/Makefile: Likewise.
* gmon/Makefile: Likewise.
* gnulib/Makefile: Likewise.
* grp/Makefile: Likewise.
* gshadow/Makefile: Likewise.
* hesiod/Makefile: Likewise.
* hurd/Makefile: Likewise.
(all): Remove target.
* iconvdata/Makefile: Include Makeconfig immediately after
defining subdir.
* inet/Makefile: Likewise.
* intl/Makefile: Likewise.
* io/Makefile: Likewise.
* libio/Makefile: Likewise.
(all): Remove target.
* locale/Makefile: Include Makeconfig immediately after defining
subdir.
* login/Makefile: Likewise.
* mach/Makefile: Likewise.
(all): Remove target.
* malloc/Makefile: Include Makeconfig immediately after defining
subdir.
(all): Remove target.
* manual/Makefile: Include Makeconfig immediately after defining
subdir.
* math/Makefile: Likewise.
* misc/Makefile: Likewise.
* nis/Makefile: Likewise.
* nss/Makefile: Likewise.
* po/Makefile: Likewise.
(all): Remove target.
* posix/Makefile: Include Makeconfig immediately after defining
subdir.
* pwd/Makefile: Likewise.
* resolv/Makefile: Likewise.
* resource/Makefile: Likewise.
* rt/Makefile: Likewise.
* setjmp/Makefile: Likewise.
* shadow/Makefile: Likewise.
* signal/Makefile: Likewise.
* socket/Makefile: Likewise.
* soft-fp/Makefile: Likewise.
* stdio-common/Makefile: Likewise.
* stdlib/Makefile: Likewise.
* streams/Makefile: Likewise.
* string/Makefile: Likewise.
* sunrpc/Makefile: Likewise.
(all): Remove target.
* sysvipc/Makefile: Include Makeconfig immediately after defining
subdir.
* termios/Makefile: Likewise.
* time/Makefile: Likewise.
* timezone/Makefile: Likewise.
(all): Remove target.
* wcsmbs/Makefile: Include Makeconfig immediately after defining
subdir.
* wctype/Makefile: Likewise.

libidn/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.

localedata/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
(all): Remove target.

nptl/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.

nptl_db/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
62 files changed:
ChangeLog
argp/Makefile
assert/Makefile
benchtests/Makefile
catgets/Makefile
conform/Makefile
crypt/Makefile
csu/Makefile
ctype/Makefile
debug/Makefile
dirent/Makefile
dlfcn/Makefile
gmon/Makefile
gnulib/Makefile
grp/Makefile
gshadow/Makefile
hesiod/Makefile
hurd/Makefile
iconvdata/Makefile
inet/Makefile
intl/Makefile
io/Makefile
libidn/ChangeLog
libidn/Makefile
libio/Makefile
locale/Makefile
localedata/ChangeLog
localedata/Makefile
login/Makefile
mach/Makefile
malloc/Makefile
manual/Makefile
math/Makefile
misc/Makefile
nis/Makefile
nptl/ChangeLog
nptl/Makefile
nptl_db/ChangeLog
nptl_db/Makefile
nss/Makefile
po/Makefile
posix/Makefile
pwd/Makefile
resolv/Makefile
resource/Makefile
rt/Makefile
setjmp/Makefile
shadow/Makefile
signal/Makefile
socket/Makefile
soft-fp/Makefile
stdio-common/Makefile
stdlib/Makefile
streams/Makefile
string/Makefile
sunrpc/Makefile
sysvipc/Makefile
termios/Makefile
time/Makefile
timezone/Makefile
wcsmbs/Makefile
wctype/Makefile