diff options
author | Roland McGrath <roland@gnu.org> | 1996-05-12 16:38:08 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1996-05-12 16:38:08 +0000 |
commit | aa1075ea2f140dc7b2eec04199935b47111229db (patch) | |
tree | 30f0fe1cd77a1e4bcd999dff97eb61e4fc11166b /mach/Makefile | |
parent | d617ac4ee5563f36c6046729b324f78562b0f1e7 (diff) | |
download | glibc-aa1075ea2f140dc7b2eec04199935b47111229db.tar.gz |
Sun May 12 11:16:58 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too.
(%_server.[ch] rule): Don't depend on %.defs; use #include to get
installed .defs file.
* stdio-common/vfprintf.c (flockfile, funlockfile): Define to
nothing for stdio. Fix fUNlockfile -> funlockfile for libio.
* stdio-common/vfscanf.c: Likewise.
Sat May 11 13:43:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h.
* mach/Machrules (%.ir rule): Don't produce deps for imports.
* elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn.
* Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version).
[!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect
these targets and install dep on $(libdir)/libc.so with this.
* hurd/Makefile: Removed all rules and defns for using code from Hurd
sources and installing headers from there.
* sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we
set it. In Mach error matching clause, only match if FILENAME is
still the same value.
* sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile;
$(mach-srcdir) no longer exists.
(hurd-srcdir): Variable removed.
(includes): Don't append -I$(hurd-srcdir).
(last-includes): Variable removed.
Remove vpath specs using $(hurd-srcdir).
(mach-errno-h): New canned sequence.
($(common-objpfx)errnos.d): New target, generated included makefile
to determine absolute file names of Mach headers to search for error
codes and set variable mach-errnos-deps.
($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead
of prior explicit list.
(generated): Add errnos.d, stamp-errnos.
* mach/Machrules (some-if-rtn): New variable and target; compute deps
of some if routine and make all if routines depend on that .d file
instead of static list of .h files.
* mach/Makefile (mach/mach_interface.defs,
mach/memory_object_user.defs): Targets removed.
($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend
directly on Mach sources.
* sysdeps/mach/Makefile (mach-srcdir): Variable removed.
(includes): Don't append -I$(mach-srcdir).
Remove vpath specs using $(mach-srcdir).
* hurd/Makefile (server-interfaces): Add faultexc.
(sig): Remove it from here.
(fault%.[ch]): Rule removed.
(MIGFLAGS-faultexc): New variable.
* hurd/faultexc.defs: New file.
* mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig.
(%_server.[ch] rule): Likewise.
* mach/Makefile: Removed all rules and defns for using code from Mach
sources and installing headers from there.
* Makeconfig [$(build-shared)=yes] (link-libc): Append
$(libc.so-version) to libc.so.
* mach/Machrules (%.ustamp rule): Don't depend on %.defs.
(%.udeps): New rule parallel to that one, generating included
makefiles with -M output from `#include <%.defs>'.
* Makerules (sed-remove-objpfx): Remove space before \ at eol.
Diffstat (limited to 'mach/Makefile')
-rw-r--r-- | mach/Makefile | 68 |
1 files changed, 8 insertions, 60 deletions
diff --git a/mach/Makefile b/mach/Makefile index 747a6bfead..c4665c204c 100644 --- a/mach/Makefile +++ b/mach/Makefile @@ -57,57 +57,21 @@ distribute += Machrules syscalls.awk shortcut.awk \ # Clear any environment value. generated = -# Get the proper definition of `mach-srcdir'. -include ../sysdeps/mach/Makefile - -# Use and install the Mach header files directly out of the Mach kernel source. - -# Find the MiG defs files in the kernel source. -vpath %.defs $(mach-srcdir) - -# Install all .h and .defs files we find in some of the kernel's source -# directories and their subdirectories (in MK82, max one level deep). -mach-src-headers := $(wildcard $(foreach dir,mach device mach_debug \ - $(base-machine),\ - $(addprefix $(mach-srcdir)/$(dir)/,\ - *.defs *.h \ - */*.defs */*.h))) -# Exclude mach/machine/*. A symlink will be installed for mach/machine. -# Exclude $(headers) for Mach files we have our own versions of. -mach-headers = $(filter-out mach/machine/% $(headers),\ - $(mach-src-headers:$(mach-srcdir)/%=%)) -# Rename Mach's sys/version.h to mach/version.h. -mach-headers := $(patsubst sys/version.h,mach/version.h,$(mach-headers)) - -# Don't distribute the Mach headers; they are in the Mach distribution. -dont_distribute = $(mach-headers) - -# DO NOT try to remake these in any way!!! -$(addprefix $(mach-srcdir)/,$(mach-headers)) : ; -install-others += $(addprefix $(includedir)/,$(mach-headers)) -$(includedir)/%: $(mach-srcdir)/%; $(do-install) - -# Make symlinks for machine and mach/machine in the include directory. -install-others += $(includedir)/mach/machine $(includedir)/machine -$(includedir)/mach/machine $(includedir)/machine: $(common-objpfx)config.make - -rm -f $@ - cd $(@D); ln -s $(base-machine) $(@F) - -# Install Mach's <sys/version.h> as <mach/version.h>. -install-others += $(includedir)/mach/version.h -$(includedir)/mach/version.h: $(mach-srcdir)/sys/version.h; $(do-install) - # Define mach-syscalls and sysno-*. ifndef no_deps ifndef inhibit_mach_syscalls include $(objpfx)mach-syscalls.mk endif endif -$(objpfx)mach-syscalls.mk: mach/syscall_sw.h syscalls.awk +$(objpfx)mach-syscalls.mk: syscalls.awk Makefile # Go kludges!!! - sed -n -e '/Unix server implement them/,$$d' \ - -e 's/^kernel_trap(\(.*\),\([-0-9]*\),\([0-9]*\))$$/\1 \2 \3/p'\ - < $< | awk -f $(word 2,$^) > $@-new + echo '#include <mach/syscall_sw.h>' | \ + DEPENDENCIES_OUTPUT='$@-dep $@' \ + $(CC) $(CPPFLAGS) -E -x c-header - \ + -D_MACH_`echo $(base-machine) | tr a-z A-Z`_SYSCALL_SW_H_=1 | \ + sed -n -e 's/^kernel_trap(\(.*\),\([-0-9]*\),\([0-9]*\))$$/\1 \2 \3/p'\ + | awk -f $< > $@-new + cat $@-dep >> $@-new; rm -f $@-dep mv $@-new $@ generated += mach-syscalls.mk @@ -170,22 +134,6 @@ include Machrules include ../Rules -# There is already a mach.h, so mach.defs generates mach_interface.h. -$(objpfx)mach/mach_interface.defs: $(mach-srcdir)/mach/mach.defs - ln $< $@ || cp $< $@ -# There is already a memory_object.h, -# so memory_object.defs generates memory_object_user.h. -$(objpfx)mach/memory_object_user.defs: $(mach-srcdir)/mach/memory_object.defs - ln $< $@ || cp $< $@ - -ifdef objdir -vpath mach/mach_interface.defs $(objdir) -vpath mach/memory_object_user.defs $(objdir) -endif - -# Be sure not to make these with implicit rules from foo.defs. -mach.h mach/memory_object.h: ; - # A gcc bug prevents the generated file from working properly, # so we have one in the distribution for the time being. generated += errsystems.c |