mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 10:50:07 +00:00
* Makeconfig (sysd-rules-patterns): New variable.
* Makerules ($(common-objpfx)sysd-rules): Drive the loop from that. (check-inhibit-asm): New canned sequence, replaces ... (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed. * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands. (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld. (CFLAGS-rtld): Variable removed.
This commit is contained in:
parent
f641ffccd8
commit
16cd816fd0
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
||||
2008-01-29 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* Makeconfig (sysd-rules-patterns): New variable.
|
||||
* Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
|
||||
(check-inhibit-asm): New canned sequence, replaces ...
|
||||
(open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
|
||||
* elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
|
||||
(rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
|
||||
(CFLAGS-rtld): Variable removed.
|
||||
|
||||
2008-01-24 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* configure.in: Let configure fragments set base_os.
|
||||
|
@ -1,4 +1,5 @@
|
||||
# Copyright (C) 1991-2003,2004,2005,2006,2007 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1991-2003,2004,2005,2006,2007,2008
|
||||
# Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -931,6 +932,12 @@ $(common-objpfx)sysd-sorted: $(..)scripts/gen-sorted.awk \
|
||||
$(all-Depend-files): ;
|
||||
endif
|
||||
|
||||
# This gives partial TARGET:SOURCE pattern pairs to have rules
|
||||
# emitted into sysd-rules. A sysdeps Makeconfig fragment can
|
||||
# add its own special object file prefix to this list with e.g. foo-%:%
|
||||
# to have foo-*.? compiled from *.? using $(foo-CPPFLAGS).
|
||||
sysd-rules-patterns := %:% rtld-%:% m_%:s_%
|
||||
|
||||
# Let sysdeps/ subdirs contain a Makeconfig fragment for us to include here.
|
||||
sysdep-makeconfigs := $(wildcard $(+sysdep_dirs:=/Makeconfig))
|
||||
ifneq (,$(sysdep-makeconfigs))
|
||||
|
53
Makerules
53
Makerules
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 1991-2006, 2007 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1991-2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -207,10 +207,9 @@ endif
|
||||
# patterns matching sysdep directories whose assembly source files should
|
||||
# be suppressed.
|
||||
ifdef inhibit-sysdep-asm
|
||||
define open-check-inhibit-asm
|
||||
case $$sysdir in $(subst $(empty) ,|,$(inhibit-sysdep-asm))) : ;; *)
|
||||
define check-inhibit-asm
|
||||
case $$sysdir in $(subst $(empty) ,|,$(inhibit-sysdep-asm))) asm= ;; esac;
|
||||
endef
|
||||
close-check-inhibit-asm = ;; esac ;
|
||||
endif
|
||||
|
||||
-include $(common-objpfx)sysd-rules
|
||||
@ -229,36 +228,22 @@ $(common-objpfx)sysd-rules: $(common-objpfx)config.make $(..)Makerules \
|
||||
/*) ;; \
|
||||
*) dir="\$$(..)$$dir" ;; \
|
||||
esac; \
|
||||
for o in $(all-object-suffixes); do \
|
||||
$(open-check-inhibit-asm) \
|
||||
echo "\$$(objpfx)%$$o: $$dir/%.S \$$(before-compile); \
|
||||
\$$(compile-command.S)"; \
|
||||
echo "\$$(objpfx)%$$o: $$dir/%.s \$$(before-compile); \
|
||||
\$$(compile-command.s)"; \
|
||||
echo "\$$(objpfx)rtld-%$$o: $$dir/%.S \$$(before-compile); \
|
||||
\$$(compile-command.S)"; \
|
||||
echo "\$$(objpfx)rtld-%$$o: $$dir/%.s \$$(before-compile); \
|
||||
\$$(compile-command.s)"; \
|
||||
echo "\$$(objpfx)ptw-%$$o: $$dir/%.S \$$(before-compile); \
|
||||
\$$(compile-command.S) -DPTW"; \
|
||||
echo "\$$(objpfx)ptw-%$$o: $$dir/%.s \$$(before-compile); \
|
||||
\$$(compile-command.s) -DPTW"; \
|
||||
echo "\$$(objpfx)m_%$$o: $$dir/s_%.S \$$(before-compile); \
|
||||
\$$(compile-command.S)"; \
|
||||
echo "\$$(objpfx)m_%$$o: $$dir/s_%.s \$$(before-compile); \
|
||||
\$$(compile-command.s)"; \
|
||||
$(close-check-inhibit-asm) \
|
||||
echo "\$$(objpfx)%$$o: $$dir/%.c \$$(before-compile); \
|
||||
\$$(compile-command.c)"; \
|
||||
echo "\$$(objpfx)rtld-%$$o: $$dir/%.c \$$(before-compile); \
|
||||
\$$(compile-command.c)"; \
|
||||
echo "\$$(objpfx)ptw-%$$o: $$dir/%.c \$$(before-compile); \
|
||||
\$$(compile-command.c) -DPTW"; \
|
||||
echo "\$$(objpfx)m_%$$o: $$dir/s_%.c \$$(before-compile); \
|
||||
\$$(compile-command.c)"; \
|
||||
done; \
|
||||
echo "\$$(inst_includedir)/%.h: $$dir/%.h \$$(+force); \
|
||||
\$$(do-install)"; \
|
||||
asm='.S .s'; \
|
||||
$(check-inhibit-asm) \
|
||||
for o in $(all-object-suffixes); do \
|
||||
set $(subst :, ,$(sysd-rules-patterns)); \
|
||||
while [ $$# -ge 2 ]; do \
|
||||
t=$$1; shift; \
|
||||
d=$$1; shift; \
|
||||
v=$${t%%%}; [ x"$$v" = x ] || v="\$$($${v}CPPFLAGS)"; \
|
||||
for s in $$asm .c; do \
|
||||
echo "\$$(objpfx)$$t$$o: $$dir/$$d$$s \$$(before-compile)"; \
|
||||
echo " \$$(compile-command$$s) $$v"; \
|
||||
done; \
|
||||
done; \
|
||||
done; \
|
||||
echo "\$$(inst_includedir)/%.h: $$dir/%.h \$$(+force)"; \
|
||||
echo " \$$(do-install)"; \
|
||||
done; \
|
||||
echo 'sysd-rules-done = t') > $@T
|
||||
mv -f $@T $@
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Subroutine makefile for compiling libc modules linked into dynamic linker.
|
||||
|
||||
# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002, 2003, 2005, 2006, 2008 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -93,9 +93,12 @@ else
|
||||
# These are the basic compilation rules corresponding to the Makerules ones.
|
||||
# The sysd-rules generated makefile already defines pattern rules for rtld-%
|
||||
# targets built from sysdeps source files.
|
||||
$(objpfx)rtld-%.os: %.S $(before-compile); $(compile-command.S)
|
||||
$(objpfx)rtld-%.os: %.s $(before-compile); $(compile-command.s)
|
||||
$(objpfx)rtld-%.os: %.c $(before-compile); $(compile-command.c)
|
||||
$(objpfx)rtld-%.os: %.S $(before-compile)
|
||||
$(compile-command.S) $(rtld-CPPFLAGS)
|
||||
$(objpfx)rtld-%.os: %.s $(before-compile)
|
||||
$(compile-command.s) $(rtld-CPPFLAGS)
|
||||
$(objpfx)rtld-%.os: %.c $(before-compile)
|
||||
$(compile-command.c) $(rtld-CPPFLAGS)
|
||||
|
||||
# The rules for generated source files.
|
||||
$(objpfx)rtld-%.os: $(objpfx)%.S $(before-compile); $(compile-command.S)
|
||||
@ -118,16 +121,7 @@ ifdef rtld-depfiles
|
||||
-include $(rtld-depfiles)
|
||||
endif
|
||||
|
||||
# Just in case we wind up e.g. regenerating dependencies for non-rtld objects,
|
||||
# we don't unconditionally modify the flags. For rtld-% targets, use the
|
||||
# special flags set below.
|
||||
CFLAGS += $(if $(filter rtld-%,$(@F)),$(CFLAGS-rtld))
|
||||
CPPFLAGS += $(if $(filter rtld-%,$(@F)),$(CPPFLAGS-rtld))
|
||||
|
||||
|
||||
# This here is the whole point of all the shenanigans.
|
||||
CPPFLAGS-rtld := -DNOT_IN_libc=1 -DIS_IN_rtld=1
|
||||
CFLAGS-rtld := # blah
|
||||
|
||||
rtld-CPPFLAGS := -DNOT_IN_libc=1 -DIS_IN_rtld=1
|
||||
|
||||
endif
|
||||
|
@ -1,3 +1,7 @@
|
||||
2008-01-29 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* Makeconfig (ptw-CPPFLAGS, sysd-rules-patterns): New variables.
|
||||
|
||||
2008-01-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||||
|
||||
* sysdeps/unix/sysv/linux/sh/sem_post.S: Don't overflow value field.
|
||||
@ -15,7 +19,7 @@
|
||||
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S
|
||||
(pthread_rwlock_timedrdlock): Return correct return value.
|
||||
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S
|
||||
(pthread_rwlock_timedwrlock): Likewise.
|
||||
(pthread_rwlock_timedwrlock): Likewise.
|
||||
|
||||
2008-01-15 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2002,2003,2005,2006 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002,2003,2005,2006,2008 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
# Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
@ -28,3 +28,7 @@ static-thread-library = $(common-objpfx)nptl/libpthread.a
|
||||
bounded-thread-library = $(common-objpfx)nptl/libpthread_b.a
|
||||
|
||||
rpath-dirs += nptl
|
||||
|
||||
# This makes for ptw-*.? object rules in sysd-rules.
|
||||
ptw-CPPFLAGS := -DPTW
|
||||
sysd-rules-patterns += ptw-%:%
|
||||
|
Loading…
Reference in New Issue
Block a user