mirror of git://sourceware.org/git/glibc.git
BZ#17496: Fix gnu/lib-names.h dependency.
This commit is contained in:
parent
f3f5d89569
commit
67c379871e
|
@ -1,3 +1,10 @@
|
||||||
|
2014-10-31 Roland McGrath <roland@hack.frob.com>
|
||||||
|
|
||||||
|
[BZ #17496]
|
||||||
|
* Makerules: Move gnu/lib-names.h generation chunk up, to right after
|
||||||
|
gen-as-const-headers chunk. Add a big scare comment after the last
|
||||||
|
safe place to touch before-compile.
|
||||||
|
|
||||||
2014-10-31 Joseph Myers <joseph@codesourcery.com>
|
2014-10-31 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
* manual/install.texi (Tools for Compilation): Update autoconf
|
* manual/install.texi (Tools for Compilation): Update autoconf
|
||||||
|
|
132
Makerules
132
Makerules
|
@ -211,6 +211,73 @@ $(objpfx)test-as-const-%.c: $(..)scripts/gen-as-const.awk $(..)Makerules \
|
||||||
mv -f $@T $@
|
mv -f $@T $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq (yes,$(build-shared))
|
||||||
|
# Generate the header containing the names of all shared libraries.
|
||||||
|
# We use a stamp file to avoid unnecessary recompilations.
|
||||||
|
before-compile += $(common-objpfx)gnu/lib-names.h
|
||||||
|
ifeq ($(soversions.mk-done),t)
|
||||||
|
ifndef abi-variants
|
||||||
|
lib-names-h-abi = gnu/lib-names.h
|
||||||
|
lib-names-stmp-abi = gnu/lib-names.stmp
|
||||||
|
else
|
||||||
|
lib-names-h-abi = gnu/lib-names-$(default-abi).h
|
||||||
|
lib-names-stmp-abi = gnu/lib-names-$(default-abi).stmp
|
||||||
|
before-compile += $(common-objpfx)$(lib-names-h-abi)
|
||||||
|
common-generated += gnu/lib-names.h
|
||||||
|
install-others-nosubdir: $(inst_includedir)/$(lib-names-h-abi)
|
||||||
|
$(common-objpfx)gnu/lib-names.h:
|
||||||
|
$(make-target-directory)
|
||||||
|
{ \
|
||||||
|
echo '/* This file is automatically generated.';\
|
||||||
|
echo ' It defines macros to allow user program to find the shared'; \
|
||||||
|
echo ' library files which come as part of GNU libc. */'; \
|
||||||
|
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
||||||
|
echo '#define __GNU_LIB_NAMES_H 1'; \
|
||||||
|
echo ''; \
|
||||||
|
$(if $(abi-includes), \
|
||||||
|
$(foreach h,$(abi-includes), echo '#include <$(h)>';) \
|
||||||
|
echo '';) \
|
||||||
|
$(foreach v,$(abi-variants),\
|
||||||
|
$(if $(abi-$(v)-condition),\
|
||||||
|
echo '#if $(abi-$(v)-condition)'; \
|
||||||
|
echo '# include <gnu/lib-names-$(v).h>'); \
|
||||||
|
$(if $(abi-$(v)-condition),echo '#endif';)) \
|
||||||
|
echo ''; \
|
||||||
|
echo '#endif /* gnu/lib-names.h */'; \
|
||||||
|
} > $@
|
||||||
|
endif
|
||||||
|
$(common-objpfx)$(lib-names-h-abi): $(common-objpfx)$(lib-names-stmp-abi); @:
|
||||||
|
$(common-objpfx)$(lib-names-stmp-abi): $(..)scripts/lib-names.awk \
|
||||||
|
$(common-objpfx)soversions.i
|
||||||
|
$(make-target-directory)
|
||||||
|
{ \
|
||||||
|
$(if $(abi-variants), \
|
||||||
|
echo '/* This file is automatically generated. */';\
|
||||||
|
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
||||||
|
echo '# error "Never use <$(lib-names-h-abi)> directly; include <gnu/lib-names.h> instead."'; \
|
||||||
|
echo '#endif';, \
|
||||||
|
echo '/* This file is automatically generated.';\
|
||||||
|
echo ' It defines macros to allow user program to find the shared'; \
|
||||||
|
echo ' library files which come as part of GNU libc. */'; \
|
||||||
|
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
||||||
|
echo '#define __GNU_LIB_NAMES_H 1';) \
|
||||||
|
echo ''; \
|
||||||
|
($(foreach s,$(all-sonames), echo $(s);)) \
|
||||||
|
| LC_ALL=C $(AWK) -f $(firstword $^) | LC_ALL=C sort; \
|
||||||
|
$(if $(abi-variants),, \
|
||||||
|
echo ''; \
|
||||||
|
echo '#endif /* gnu/lib-names.h */';) \
|
||||||
|
} > ${@:stmp=T}
|
||||||
|
$(move-if-change) ${@:stmp=T} ${@:stmp=h}
|
||||||
|
touch $@
|
||||||
|
endif
|
||||||
|
common-generated += $(lib-names-h-abi) $(lib-names-stmp-abi)
|
||||||
|
endif
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# NOTE! Everything adding to before-compile needs to come before this point! #
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# Generate an ordered list of implicit rules which find the source files in
|
# Generate an ordered list of implicit rules which find the source files in
|
||||||
# each sysdep directory. The old method was to use vpath to search all the
|
# each sysdep directory. The old method was to use vpath to search all the
|
||||||
# sysdep directories. However, that had the problem that a .S file in a
|
# sysdep directories. However, that had the problem that a .S file in a
|
||||||
|
@ -1276,7 +1343,7 @@ endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# These will have been set by sysdeps/posix/Makefile.
|
# These will have been set by sysdeps/posix/Makefile.
|
||||||
L_tmpnam ?= 1
|
L_tmpnam ?= 1
|
||||||
TMP_MAX ?= 0
|
TMP_MAX ?= 0
|
||||||
|
@ -1324,69 +1391,6 @@ ifndef no_deps
|
||||||
-include $(stdio_lim:h=d)
|
-include $(stdio_lim:h=d)
|
||||||
endif
|
endif
|
||||||
common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
|
common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
|
||||||
|
|
||||||
ifeq (yes,$(build-shared))
|
|
||||||
# Generate the header containing the names of all shared libraries.
|
|
||||||
# We use a stamp file to avoid unnecessary recompilations.
|
|
||||||
before-compile += $(common-objpfx)gnu/lib-names.h
|
|
||||||
ifeq ($(soversions.mk-done),t)
|
|
||||||
ifndef abi-variants
|
|
||||||
lib-names-h-abi = gnu/lib-names.h
|
|
||||||
lib-names-stmp-abi = gnu/lib-names.stmp
|
|
||||||
else
|
|
||||||
lib-names-h-abi = gnu/lib-names-$(default-abi).h
|
|
||||||
lib-names-stmp-abi = gnu/lib-names-$(default-abi).stmp
|
|
||||||
before-compile += $(common-objpfx)$(lib-names-h-abi)
|
|
||||||
common-generated += gnu/lib-names.h
|
|
||||||
install-others-nosubdir: $(inst_includedir)/$(lib-names-h-abi)
|
|
||||||
$(common-objpfx)gnu/lib-names.h:
|
|
||||||
$(make-target-directory)
|
|
||||||
{ \
|
|
||||||
echo '/* This file is automatically generated.';\
|
|
||||||
echo ' It defines macros to allow user program to find the shared'; \
|
|
||||||
echo ' library files which come as part of GNU libc. */'; \
|
|
||||||
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
|
||||||
echo '#define __GNU_LIB_NAMES_H 1'; \
|
|
||||||
echo ''; \
|
|
||||||
$(if $(abi-includes), \
|
|
||||||
$(foreach h,$(abi-includes), echo '#include <$(h)>';) \
|
|
||||||
echo '';) \
|
|
||||||
$(foreach v,$(abi-variants),\
|
|
||||||
$(if $(abi-$(v)-condition),\
|
|
||||||
echo '#if $(abi-$(v)-condition)'; \
|
|
||||||
echo '# include <gnu/lib-names-$(v).h>'); \
|
|
||||||
$(if $(abi-$(v)-condition),echo '#endif';)) \
|
|
||||||
echo ''; \
|
|
||||||
echo '#endif /* gnu/lib-names.h */'; \
|
|
||||||
} > $@
|
|
||||||
endif
|
|
||||||
$(common-objpfx)$(lib-names-h-abi): $(common-objpfx)$(lib-names-stmp-abi); @:
|
|
||||||
$(common-objpfx)$(lib-names-stmp-abi): $(..)scripts/lib-names.awk \
|
|
||||||
$(common-objpfx)soversions.i
|
|
||||||
$(make-target-directory)
|
|
||||||
{ \
|
|
||||||
$(if $(abi-variants), \
|
|
||||||
echo '/* This file is automatically generated. */';\
|
|
||||||
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
|
||||||
echo '# error "Never use <$(lib-names-h-abi)> directly; include <gnu/lib-names.h> instead."'; \
|
|
||||||
echo '#endif';, \
|
|
||||||
echo '/* This file is automatically generated.';\
|
|
||||||
echo ' It defines macros to allow user program to find the shared'; \
|
|
||||||
echo ' library files which come as part of GNU libc. */'; \
|
|
||||||
echo '#ifndef __GNU_LIB_NAMES_H'; \
|
|
||||||
echo '#define __GNU_LIB_NAMES_H 1';) \
|
|
||||||
echo ''; \
|
|
||||||
($(foreach s,$(all-sonames), echo $(s);)) \
|
|
||||||
| LC_ALL=C $(AWK) -f $(firstword $^) | LC_ALL=C sort; \
|
|
||||||
$(if $(abi-variants),, \
|
|
||||||
echo ''; \
|
|
||||||
echo '#endif /* gnu/lib-names.h */';) \
|
|
||||||
} > ${@:stmp=T}
|
|
||||||
$(move-if-change) ${@:stmp=T} ${@:stmp=h}
|
|
||||||
touch $@
|
|
||||||
endif
|
|
||||||
common-generated += $(lib-names-h-abi) $(lib-names-stmp-abi)
|
|
||||||
endif
|
|
||||||
|
|
||||||
FORCE:
|
FORCE:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue