aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--Makerules12
-rw-r--r--elf/Makefile12
-rw-r--r--iconvdata/Makefile14
-rw-r--r--sysdeps/unix/sysv/linux/Makefile10
5 files changed, 32 insertions, 28 deletions
diff --git a/ChangeLog b/ChangeLog
index 649844b..48b346d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+1999-01-18 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.d): Fix
+ generation of dependency list to make it work with newer versions
+ of gcc.
+
+1999-01-18 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * Makerules (build-module): New macro, moved from...
+ * elf/Makefile (build-module): ... here.
+ * iconvdata/Makefile (build-module): ... and here.
+
1999-01-20 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/alpha/Versions: Add __atan2 for libm and GLIBC_2.0.
diff --git a/Makerules b/Makerules
index 6bc7961..cf0a6a5 100644
--- a/Makerules
+++ b/Makerules
@@ -369,6 +369,18 @@ $(LINK.o) -shared -Wl,-O1 -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS) \
$(no-whole-archive) $(LDLIBS-$(@F:lib%.so=%).so)
endef
+# This macro is similar to build-shlib but it does not define a soname
+# and it does not depend on the destination name to start with `lib'.
+define build-module
+$(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS) \
+ -B$(csu-objpfx) $(load-map-file) \
+ $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \
+ -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link) \
+ -Wl,--whole-archive \
+ $(filter-out $(map-file) $(+preinit) $(+postinit),$^) \
+ $(no-whole-archive) $(LDLIBS-$(@F:%.so=%).so)
+endef
+
ifndef libc.so-version
# Undefine this because it can't work when we libc.so is unversioned.
static-only-routines =
diff --git a/elf/Makefile b/elf/Makefile
index c46c229..f79a312 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -202,18 +202,6 @@ else
$(objpfx)sprof: $(objpfx)libdl.a
endif
-# This macro is similar to build-shlib but it does not define a soname
-# and it does not depend on the destination name to start with `lib'.
-define build-module
-$(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS) \
- -B$(csu-objpfx) $(load-map-file) \
- $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \
- -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link) \
- -Wl,--whole-archive -Wl,-soname,$(@F) \
- $(filter-out $(map-file) $(+preinit) $(+postinit),$^) \
- $(no-whole-archive) $(LDLIBS-$(@F:%.so=%).so)
-endef
-
modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
testobj1_1
test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names)))
diff --git a/iconvdata/Makefile b/iconvdata/Makefile
index 37fdfd1..984e4c4 100644
--- a/iconvdata/Makefile
+++ b/iconvdata/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+# Copyright (C) 1997, 1998, 1999 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
@@ -115,18 +115,6 @@ distribute := gconv-modules extra-module.mk gap.awk gaptab.awk \
# We build the transformation modules only when we build shared libs.
ifeq (yes,$(build-shared))
-# This macro is similar to build-shlib but it does not define a soname
-# and it does not depend on the destination name to start with `lib'.
-define build-module
-$(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS) \
- -B$(csu-objpfx) $(load-map-file) \
- $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \
- -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link) \
- -Wl,--whole-archive \
- $(filter-out $(map-file) $(+preinit) $(+postinit),$^) \
- $(no-whole-archive) $(LDLIBS-$(@F:%.so=%).so)
-endef
-
# Rule to generate the shared objects.
charmaps = ../localedata/charmaps
ifndef no_deps
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index d6d3525..5357f83 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -23,7 +23,7 @@ install-others += $(inst_includedir)/bits/syscall.h
# Generate the list of SYS_* macros for the system calls (__NR_* macros).
$(objpfx)syscall-%.h $(objpfx)syscall-%.d: ../sysdeps/unix/sysv/linux/sys/syscall.h
- rm -f $(@:.h=.d)
+ rm -f $(@:.h=.d)-t
{ \
echo '/* Generated at libc build time from kernel syscall list. */';\
echo ''; \
@@ -31,12 +31,16 @@ $(objpfx)syscall-%.h $(objpfx)syscall-%.d: ../sysdeps/unix/sysv/linux/sys/syscal
echo '# error "Never use <bits/syscall.h> directly; include <sys/syscall.h> instead."'; \
echo '#endif'; \
echo ''; \
- SUNPRO_DEPENDENCIES='$(@:.h=.d) $(patsubst $(objpfx)%,$$(objpfx)%,\
- $(@:.d=.h) $(@:.h=.d))' \
+ SUNPRO_DEPENDENCIES='$(@:.h=.d)-t $@' \
$(CC) -E -x c $(sysincludes) $< -D_LIBC -dM | \
sed -n 's@^#define __NR_\([^ ]*\) .*$$@#define SYS_\1 __NR_\1@p'; \
} > $(@:.d=.h).new
mv -f $(@:.d=.h).new $(@:.d=.h)
+ sed < $(@:.h=.d)-t > $(@:.h=.d)-t2 \
+ -e 's,$(subst .,\.,$@),$(patsubst $(objpfx)%,$$(objpfx)%,\
+ $(@:.d=.h) $(@:.h=.d)),'
+ rm -f $(@:.h=.d)-t
+ mv -f $(@:.h=.d)-t2 $(@:.h=.d)
$(inst_includedir)/bits/syscall.h: $(objpfx)syscall-list.h $(+force)
$(make-target-directory)