diff options
-rw-r--r-- | ChangeLog | 24 | ||||
-rw-r--r-- | MakeTAGS | 31 | ||||
-rw-r--r-- | Makeconfig | 12 | ||||
-rw-r--r-- | Makerules | 8 | ||||
-rw-r--r-- | elf/Makefile | 2 | ||||
-rw-r--r-- | gmon/.cvsignore | 5 | ||||
-rw-r--r-- | hurd/hurdexec.c | 14 | ||||
-rw-r--r-- | intl/.cvsignore | 5 | ||||
-rw-r--r-- | mach/Makefile | 2 | ||||
-rw-r--r-- | posix/regex.c | 2 | ||||
-rw-r--r-- | sysdeps/mach/hurd/Makefile | 1 | ||||
-rw-r--r-- | sysvipc/.cvsignore | 5 |
12 files changed, 80 insertions, 31 deletions
@@ -1,5 +1,29 @@ +Tue Oct 10 23:08:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> + + * Makerules (build-shlib): Pass -rpath and -rpath-link options. + (LDFLAGS-c.so): Don't pass -dynamic-linker here. + * Makeconfig (+link): Pass $(sysdep-LDFLAGS). + (link-libc): Pass -rpath and -rpath-link options. + + * MakeTAGS (all-dirs): Omit CVS directories. + Specify vpath directives to find source files in $(all-dirs). + (sources, headers): Append sources and headers from $(all-dist) to + these. + (all-dist): Filter them out of this. + (all-headers, all-sources): Use $(shell find ...) instead of + $(wildcard ...). + + * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): New variable; pass + -rpath-link. + + * hurd/hurdexec.c: Pass poly and dealloc args to __file_exec. + + * elf/Makefile (install-others): Add missing $. + Mon Oct 9 02:54:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> + * mach/Makefile ($(objpfx)errsystems.c): Rule reenabled. + * Makeconfig (config-LDFLAGS): Define to -Wl-dynamic-linker=$(libdir)$(rtld-installed-name). (rtld-installed-name): New variable. @@ -43,7 +43,8 @@ sysdep-dirs := $(addprefix $(sysdep_dir)/,$(sysdirs)) ifndef sysdep_dirs # Find all sysdep directories. -sysdep_dirs := $(shell find $(..)sysdeps -type d ! -name RCS -print) +sysdep_dirs := $(shell find $(..)sysdeps -type d \ + ! -name RCS ! -name CVS -print) endif # Find all sysdep dirs there are, but putting the ones @@ -53,6 +54,11 @@ all-dirs := $(objdir) \ $(source_dirs) \ $(filter-out $(sysdep-dirs),$(sysdep_dirs)) +vpath %.h $(all-dirs) +vpath %.c $(all-dirs) +vpath %.S $(all-dirs) +vpath %.s $(all-dirs) + # Find all the subdirs there are, but putting the ones # we are configured to use first and preserving their order. ifndef subdir @@ -71,18 +77,21 @@ else all-dist = $(distribute) endif +sources += $(filter %.c %.s %.S,$(all-dist)) +headers += $(filter %.h,$(all-dist)) +all-dist := $(filter-out %.h %.c %.s %.S,$(all-dist)) + # All different versions of $(sources), preserving the configured sysdep # directory order. -all-sources = $(wildcard $(foreach file,$(sources),\ - $(file) \ - $(foreach dir,$(all-dirs),\ - $(dir)/$(file) \ - $(dir)/$(file:.c=.S) \ - $(dir)/$(file:.c=.s)))) - -all-headers = $(wildcard $(foreach file,$(headers),\ - $(file) \ - $(foreach dir,$(all-dirs),$(dir)/$(file)))) +all-sources = $(shell find $(all-dirs) -maxdepth 1 \( -name fnord \ + $(foreach file,$(sort $(sources) $(sources:.c=.S) \ + $(sources:.c=.s)),\ + -o -name $(file)) \ + \) -print) + +all-headers = $(shell find $(all-dirs) -maxdepth 1 \( -name fnord \ + $(foreach file,$(headers),-o -name $(file)) \ + \) -print) tags_sources := $(strip $(tags_sources)) @@ -267,10 +267,11 @@ endif # Command for linking programs with the C library. ifndef +link -+link = $(CC) -nostdlib -nostartfiles $(config-LDFLAGS) $(LDFLAGS) -o $@ \ - $(addprefix $(csu-objpfx),start.o $(+preinit)) \ - $(^:$(common-objpfx)libc.a=$(link-libc)) \ - $(addprefix $(csu-objpfx),$(+postinit)) ++link = $(CC) -nostdlib -nostartfiles -o $@ \ + $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) \ + $(addprefix $(csu-objpfx),start.o $(+preinit)) \ + $(^:$(common-objpfx)libc.a=$(link-libc)) \ + $(addprefix $(csu-objpfx),$(+postinit)) endif ifndef config-LDFLAGS ifeq (yes,$(build-shared)) @@ -279,7 +280,8 @@ endif endif ifndef link-libc ifeq (yes,$(build-shared)) -link-libc = -L$(common-objdir) -lc $(gnulib) +link-libc = -Wl,-rpath-link=$(common-objdir) -Wl,-rpath=$(libdir) \ + $(common-objpfx)libc.so $(gnulib) else link-libc = $(common-objpfx)libc.a $(gnulib) $(common-objpfx)libc.a endif @@ -553,10 +553,10 @@ ifeq (yes,$(build-shared)) lib%.so: lib%_pic.a; $(build-shlib) define build-shlib -$(LINK.o) -shared -o $@ -Wl,-soname \ - -Wl,lib$(libprefix)$(@F:lib%.so=%).so$($(@F)-version) \ +$(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS) \ + -Wl,-soname=lib$(libprefix)$(@F:lib%.so=%).so$($(@F)-version) \ $(LDFLAGS.so) $(LDFLAGS-$(@F:lib%.so=%).so) \ - -L$(firstword $(objdir) .) -L$(common-objpfx:%/=%) \ + -Wl,-rpath-link=$(common-objdir) -Wl,-rpath=$(libdir) \ -Wl,--whole-archive $^ $(LDLIBS-$(@F:lib%.so=%).so) endef @@ -565,7 +565,7 @@ endef # since we define our own `.init' section specially. LDFLAGS-c.so = -nostdlib -nostartfiles # Give libc.so an entry point and make it directly runnable itself. -LDFLAGS-c.so += -Wl,-dynamic-linker -Wl,/lib/ld.so -e __libc_print_version +LDFLAGS-c.so += -e __libc_print_version # Use our own special initializer and finalizer files for libc.so. elfobjdir := $(firstword $(objdir) $(..)elf) $(common-objpfx)libc.so: $(elfobjdir)/soinit.so \ diff --git a/elf/Makefile b/elf/Makefile index 203406d..45c2cfe 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -37,7 +37,7 @@ include ../Makeconfig ifeq (yes,$(build-shared)) extra-objs = $(rtld-routines:=.so) soinit.so sofini.so -install-others = $(libdir)(rtld-installed-name) +install-others = $(libdir)$(rtld-installed-name) install-bin = ldd endif diff --git a/gmon/.cvsignore b/gmon/.cvsignore new file mode 100644 index 0000000..c8367a7 --- /dev/null +++ b/gmon/.cvsignore @@ -0,0 +1,5 @@ +*.gz *.Z *.tar *.tgz +=* +TODO COPYING* AUTHORS copyr-* copying.* +glibc-* +distinfo diff --git a/hurd/hurdexec.c b/hurd/hurdexec.c index e18107b..2f38679 100644 --- a/hurd/hurdexec.c +++ b/hurd/hurdexec.c @@ -217,14 +217,14 @@ _hurd_exec (task_t task, file_t file, *pdp++ = dtable[i]; } - err = __file_exec (file, task, + err = __file_exec (file, task, MACH_MSG_TYPE_COPY_SEND, _hurd_exec_flags & EXEC_INHERITED, - args, argslen, env, envlen, - dtable, MACH_MSG_TYPE_COPY_SEND, dtablesize, - ports, MACH_MSG_TYPE_COPY_SEND, _hurd_nports, - ints, INIT_INT_MAX, - please_dealloc, pdp - please_dealloc, - NULL, 0); + args, argslen, 0, env, envlen, 0, + dtable, MACH_MSG_TYPE_COPY_SEND, dtablesize, 0, + ports, MACH_MSG_TYPE_COPY_SEND, _hurd_nports, 0, + ints, INIT_INT_MAX, 0, + please_dealloc, pdp - please_dealloc, 0, + NULL, 0, 0); } /* Release references to the standard ports. */ diff --git a/intl/.cvsignore b/intl/.cvsignore new file mode 100644 index 0000000..c8367a7 --- /dev/null +++ b/intl/.cvsignore @@ -0,0 +1,5 @@ +*.gz *.Z *.tar *.tgz +=* +TODO COPYING* AUTHORS copyr-* copying.* +glibc-* +distinfo diff --git a/mach/Makefile b/mach/Makefile index 4595628..bfabc33 100644 --- a/mach/Makefile +++ b/mach/Makefile @@ -184,7 +184,6 @@ endif # Be sure not to make these with implicit rules from foo.defs. mach.h mach/memory_object.h: ; -ifneq (,) # A gcc bug prevents the generated file from working properly, # so we have one in the distribution for the time being. generated += errsystems.c @@ -192,4 +191,3 @@ $(objpfx)errsystems.c: errsystems.awk err_*.sub \ $(wildcard $(addsuffix /err_*.sub,$(+sysdep_dirs))) gawk -v subsys='$(filter-out $<,$^)' -f $^ > $@.n mv $@.n $@ -endif diff --git a/posix/regex.c b/posix/regex.c index 8b93606..0fd1833 100644 --- a/posix/regex.c +++ b/posix/regex.c @@ -4365,7 +4365,7 @@ re_match_2_internal (bufp, string1, size1, string2, size2, pos, regs, stop) for that group and all inner ones, so that if we fail back to this point, the group's information will be correct. For example, in \(a*\)*\1, we need the preceding group, - and in \(\(a*\)b*\)\2, we need the inner group. */ + and in \(zz\(a*\)b*\)\2, we need the inner group. */ /* We can't use `p' to check ahead because we push a failure point to `p + mcnt' after we do this. */ diff --git a/sysdeps/mach/hurd/Makefile b/sysdeps/mach/hurd/Makefile index a5825ff..c650f5f 100644 --- a/sysdeps/mach/hurd/Makefile +++ b/sysdeps/mach/hurd/Makefile @@ -131,6 +131,7 @@ endif # For the shared library, we don't need to do the linker script machination. # Instead, we specify the required libraries when building the shared object. LDLIBS-c.so = -lmachuser -lhurduser +sysdep-LDFLAGS += -Wl,-rpath-link=$(..)mach:$(..)hurd endif # in-Makerules diff --git a/sysvipc/.cvsignore b/sysvipc/.cvsignore new file mode 100644 index 0000000..c8367a7 --- /dev/null +++ b/sysvipc/.cvsignore @@ -0,0 +1,5 @@ +*.gz *.Z *.tar *.tgz +=* +TODO COPYING* AUTHORS copyr-* copying.* +glibc-* +distinfo |