bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU Mach's build system (partly) reworked


From: Thomas Schwinge
Subject: Re: GNU Mach's build system (partly) reworked
Date: Sun, 29 Jan 2006 12:31:43 -0500
User-agent: Mutt/1.5.6+20040907i

On Sun, Jan 29, 2006 at 12:39:57PM +0100, Alfred M. Szmidt wrote:
>    2006-01-28  Thomas Schwinge  <tschwinge@gnu.org>
> 
>          * Makefile.in: Various cleanups.  Do not include $(sysdep)/Makefrag
>          anymore.  Move shared and system dependent stuff out of this file.
>          Include Makerules.
> 
> This says nothing about what actually changed.  `Did stuff.' would be
> equally descriptive.

No.

> When someone will search for the `%.migsh_d'
> target in the ChangeLog they will not be able to figure out what
> happened to it.

Agreed.  I enhanced the ChangeLog.


> You removed libexecdir (and maybe some other variables), why?  Doing
> something like `--prefix=$(libexecdir)/foo' is always OK.  All
> variables that can be substituted should be listed.  The variables
> also get partially expanded, so that is one more reason to list all of
> them ($(libexecdir) ==> $(exec_prefix)/libexec).

I can't follow you here.  You mean running
`make prefix=\$\(libexecdir\)/foo install' or what?  What should that be
useful for?  And wouldn't that in fact yield a endless recursion?
`$(libexecdir)/foo' -> `$(exec_prefix)/libexec/foo'
-> `$(prefix)/libexec/foo' -> `$(libexecdir)/foo/foo' -> ...

I only left in those installation-related variables that are actually
used: prefix, exec_prefix, bootdir and includedir.  I don't see the need
for any others, but perhaps I'm overlooking something?


>   +top_builddir = @top_builddir@../
> 
> The following is equally effective (or should be): top_builddir = ..

Yes, as long as we don't let the build system create Makefiles in
subdirectories, which we don't at the moment.  Changed.


>   +   ln -sfn $(systype) $(includedir)/mach/machine
> 
> While you're cleaning up, you could also replace ln with $(LN)

I found an even better solution (not for the one above, though): let
`config.status' create those links.


>   +include $(top_builddir)Makerules
> 
> That is unsafe, add a directory seperator inbetween.

Why is it unsafe?

`top_builddir' is the relative path from the current build directory to
to top build directory.  So it's either empty or `../' or `../../' or
similar.  I can add a slash if people are happy then.


Thanks for the feedback.

Any feedback from others or any reservations w.r.t. that patch?


The updated and augmented (e.g. `i386/linux/') follows.


2006-01-29  Thomas Schwinge  <tschwinge@gnu.org>

        * Makefile.in: Various cleanups.
        (mach/machine, mach_machine): Targets removed.
        Do not include $(sysdep)/Makefrag anymore.
        (all, check, clean, distclean, mostlyclean, maintainer-clean, install)
        (install-headers, install-kernel): Recurse into the system dependend
        subdirectory.
        (check): Add a basic test using `mbchk'.
        (clean, distclean): Be more explicit in what to delete.
        ($(systype)/%): New target.
        (kernel.o): Incorporate the system dependend archive.
        ($(installed-sysdep-headers-names)): Moved into the system dependend
        Makefile.
        (install-headers, mkheaderdirs): Don't care for the system dependend
        header files.
        (%.symc, %.symc.o, %.h, %_user.c, %_interface.h, %_server.c): Targets
        moved into Makerules.
        Inclusion of dependency files: Likewise.
        (%.migs_d, %.migu_d, %.migsh_d, %.miguh_d, make-deps, %.d): Likewise.
        Include Makerules.
        * Makerules.in: New file, mainly based on Makefile.in.
        * configure.in: Check for cpp, ranlib, ar and mbchk.
        Do not explicitly substitute LDFLAGS.
        Care for the `mach/machine' symbolic link.
        Add Makerules as a config file.
        * i386/Makefile.in: Various cleanups.
        Merge i386/Makefrag and the system dependent stuff from Makefile.in
        into this file.
        (all, check, install, install-headers, install-kernel): Recurse into
        the system dependend subdirectory.
        (sysdep.o): transformed to the new target sysdep.a.
        (linux/linux.o): Target removed.
        (clean, distclean): Be more explicit in what to delete.
        (linux/%): New target.
        (install-headers): Install the system dependend header files.
        (mkheaderdirs): New target.
        Include the top-level Makerules.
        * i386/Makefrag: Removed.
        * i386/Makerules.in: New file.
        * i386/configure.in: Synchronize AC_INIT to the top-level definition.
        Do not check for ld and make.
        Add Makerules as a config file.
        * i386/linux/Makefile.in: Various cleanups.
        Replace `linux-objs' with `objfiles'.
        (check, install, install-headers, install-kernel): New empty targets.
        Inclusion of dependency files removed and instead...
        Include the top-level Makerules.
        * i386/linux/Makerules.in: New file.
        * i386/linux/configure.ac: Synchronize AC_INIT to the top-level
        definition.
        Do not check for gcc and ld.
        Do not explicitly substitute LDFLAGS.
        Add Makerules as a config file.
        * linux/configure.in: Synchronize AC_INIT to the top-level definition.
        Do not create directories using a dummy file.
        * linux/dummy.in: File removed.
        
        * ddb/db_access.h: Include <machine/vm_param.h> instead of
        "vm_param.h".
        * kern/bootstrap.c: Likewise.
        * kern/thread.c: Likewise.
        * vm/vm_kern.c: Likewise.
        * vm/vm_object.c: Likewise.
        * vm/vm_resident.c: Likewise.

diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/Makefile.in gnumach-1-branch.build_system/Makefile.in
--- gnumach-1-branch/Makefile.in        2006-01-29 15:12:00.000000000 +0100
+++ gnumach-1-branch.build_system/Makefile.in   2006-01-29 18:10:30.000000000 
+0100
@@ -1,5 +1,5 @@
 # Makefile for Mach 4 kernel directory
-# Copyright 1997, 1999, 2004 Free Software Foundation, Inc.
+# Copyright 1997, 1999, 2004, 2006 Free Software Foundation, Inc.
 #
 # Permission to use, copy, modify and distribute this software and its
 # documentation is hereby granted, provided that both the copyright
@@ -12,24 +12,29 @@
 # LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
 # USE OF THIS SOFTWARE.
 
-
 
+#
+# configure's findings.
+#
 
-# Variables from `configure'.
-srcdir=@srcdir@
-systype=@systype@
-prefix=@prefix@
+srcdir = @srcdir@
 version = @PACKAGE_VERSION@
 
-exec_prefix=$(prefix)
+systype = @systype@
 
-bootdir=$(exec_prefix)/boot
-includedir=$(prefix)/include
-libexecdir=$(exec_prefix)/libexec
-bindir=$(exec_prefix)/bin
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+bootdir = $(exec_prefix)/boot
+includedir = @includedir@
+
+
+#
+# Default target
+#
 
-sysdep = $(srcdir)/$(systype)
+all:
 
+
 # Detect if the user wants KDB
 ifeq ($(findstring -DMACH_KDB,@DEFS@),-DMACH_KDB)
 enable_kdb=yes
@@ -44,21 +49,6 @@
 enable_kmsg=no
 endif
 
-# Programs found by configure.
-AWK = @AWK@
-INSTALL = @INSTALL@
-CC = @CC@
-LD = @LD@
-NM = @NM@
-MIG = @MIG@
-
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-CFLAGS = @CFLAGS@
-
-all:
-
 # All the possible architectures
 all-archs = i386 linux
 
@@ -171,8 +161,7 @@
 debian-files = changelog control copyright README.Debian rules postinst prerm
 
 
-# Object files that go into the kernel image.  (This will be augmented by the
-# machine dependent Makefile fragment.)
+# Object files that go into the kernel image.
 
 # Basic kernel source for Mach
 objfiles := $(subst .c,.o,$(ipc-cfiles) $(kern-cfiles) \
@@ -246,54 +235,41 @@
 vpath %.cli $(srcdir)/vm $(srcdir)/device
 vpath %.srv $(srcdir)/device $(srcdir)/ipc $(srcdir)/kern
 
-
-# We need this symlink in place before we start compiling,
-# so <mach/machine/foo.h> headers can be found.
-before-compile = mach/machine
-mach/machine: mach_machine
-       test -d $(@D) || mkdir $(@D)
-       rm -f $@
-       ln -s ../mach_machine mach/machine
-mach_machine:
-       rm -f $@
-       ln -s $(srcdir)/$(systype)/include/mach/$(systype) mach_machine
 
-
-
 #
-# Compilation flags
+# Rules.
 #
 
-DEFINES += -DMACH -DCMU -DMACH_KERNEL -DKERNEL @DEFS@
-INCLUDES += -I. -I$(srcdir) -I$(srcdir)/include \
-       -I$(srcdir)/bogus -I$(srcdir)/util -I$(srcdir)/kern -I$(srcdir)/device
-
-
-include $(sysdep)/Makefrag
-
-CPPFLAGS += -nostdinc $(DEFINES) $(INCLUDES)
-
-MIGFLAGS += $(CPPFLAGS)
-
-
-# Standard targets
-
 all: kernel
+       $(MAKE) -C $(systype) $@
+
+# Better than nothing...
+check: kernel
+       $(MBCHK) $<
+       $(MAKE) -C $(systype) $@
 
 clean:
-       rm -f *.o *.d kernel
+       $(MAKE) -C $(systype) $@
+       rm -f clib-routines.o kernel.o kernel kernel-undef kernel-undef-bad
+       rm -f $(objfiles) $(subst .o,.d,$(objfiles))
        rm -f *.symc *.symc.o *_user.c *_server.c *.h
        rm -f *.migs_d *.migsh_d *.migu_d *.miguh_d
 
 distclean: clean
-       rm -f config.status config.cache config.log Makefile driverlist
+       $(MAKE) -C $(systype) $@
+       rm -f Makefile Makerules version.c doc/Makefile machine mach/machine
+       rm -f config.status config.log
 
 mostlyclean: distclean
+       $(MAKE) -C $(systype) $@
 
 maintainer-clean: mostlyclean
+       $(MAKE) -C $(systype) $@
        rm -f $(srcdir)/configure $(all-archs-configures)
 
-check:
+$(systype)/%: FORCE
+       $(MAKE) -C $(systype) $(@F)
+FORCE:
 
 
 #
@@ -309,8 +285,9 @@
 #kernel.a: $(objfiles)
 #      @rm -f $@
 #      $(AR) cq $@ $^
-kernel.o: $(objfiles) # kernel.a
-       $(LD) -r -o $@ $^
+kernel.o: $(objfiles) $(systype)/sysdep.a # kernel.a
+       $(LD) -r -o $@ $(kernel-objfiles-prepend) \
+         $(filter-out $(kernel-objfiles-prepend),$^)
 kernel-undef: kernel.o
        $(NM) -u $< | sed 's/  *U  *//;s/^_*//' | sort -u > $@
 kernel-undef-bad: kernel-undef Makefile
@@ -322,32 +299,30 @@
              -o $@ \
              `sed 's/^/-Wl,-u,/' $<` -x c /dev/null -lc
 kernel: kernel.o clib-routines.o
-       $(LD) $(LDFLAGS) -o $@ $^
-
+       $(LD) $(LDFLAGS) $(LDFLAGS-$@) -o $@ $^
 
 
 #
 # Installation
 #
+
 installed-headers-names = $(addprefix $(includedir)/,$(installed-headers))
-installed-sysdep-headers-names = $(addprefix 
$(includedir)/,$($(systype)-installed-headers))
 install: install-headers install-kernel
+       make -C $(systype) $@
 
 $(installed-headers-names): $(includedir)/%: $(srcdir)/include/%
        $(INSTALL_DATA) $< $@
 
-$(installed-sysdep-headers-names): $(includedir)/%: $(sysdep)/include/%
-       $(INSTALL_DATA) $< $@
-
-install-headers: mkheaderdirs $(installed-headers-names) 
$(installed-sysdep-headers-names)
-       ln -sf $(systype) $(includedir)/mach/machine
+install-headers: mkheaderdirs $(installed-headers-names)
+       ln -sfn $(systype) $(includedir)/mach/machine
+       make -C $(systype) $@
 
 install-kernel: kernel mkkerneldirs
        $(INSTALL_PROGRAM) kernel $(bootdir)/gnumach
+       make -C $(systype) $@
 
 mkheaderdirs:
-       mkdir -p $(includedir) $(includedir)/device $(includedir)/mach \
-               $(includedir)/mach/$(systype) $(includedir)/mach/exec
+       mkdir -p $(includedir) $(includedir)/device $(includedir)/mach/exec
 
 mkkerneldirs:
        mkdir -p $(bootdir)
@@ -397,7 +372,6 @@
        rm -rf gnumach-$(version)
 
 
-
 #
 # Autoconf support
 #
@@ -407,7 +381,7 @@
        cd $(srcdir) && autoheader
 
 Makefile: $(srcdir)/Makefile.in config.status
-       ./config.status
+       ./config.status $@
 config.h: stamp-configh ;
 stamp-configh: $(srcdir)/config.h.in config.status
        ./config.status
@@ -420,80 +394,8 @@
 vpath configure $(srcdir)
 
 
-
-#
-# How to do some things
-#
-
-# Building foo.h from foo.sym:
-%.symc: %.sym $(srcdir)/gensym.awk
-       $(AWK) -f $(word 2,$^) $< > $@
-%.symc.o: %.symc $(before-compile)
-       $(CC) -S $(CPPFLAGS) $(CFLAGS) $(CPPFLAGS-$@) -x c -o $@ $<
-%.h: %.symc.o
-       sed <$< -e 's/^[^*].*$$//' | \
-               sed -e 's/^[*]/#define/' -e 's/mAgIc[^-0-9]*//' >$@
-
-# Building from foo.cli
-%.h %_user.c: %.cli $(before-compile)
-       $(MIG) $(MIGFLAGS) -header $*.h -user $*_user.c -server /dev/null $<
-
-# Building from foo.srv
-%_interface.h %_server.c: %.srv $(before-compile)
-       $(MIG) $(MIGFLAGS) -sheader $*_interface.h -server $*_server.c \
-                          -header /dev/null -user /dev/null $<
-
 #
-# Dependency generation
+# Makerules
 #
 
-# Include dependency files
-ifneq ($(no_deps),t)
-
-# For each file generated by MiG we need a .d file.
-servers = $(filter %_server.o,$(objfiles))
--include $(subst _server.o,.migs_d,$(servers)) /dev/null
--include $(subst _server.o,.migsh_d,$(servers)) /dev/null
-
-# vm_user.o fits the pattern, but is not actually a MiG-related file.
-users = $(filter-out vm_user.o,$(filter %_user.o,$(objfiles)))
--include $(subst _user.o,.migu_d,$(users)) /dev/null
--include $(subst _user.o,.miguh_d,$(users)) /dev/null
-
-# For each .o file we need a .d file.
--include $(subst .o,.d,$(filter %.o,$(objfiles))) /dev/null
-
-endif
-
-# Here is how to make those dependency files
-
-%.migs_d: %.srv $(before-compile)
-       (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
-       sed -e 's/[^:]*:/$(@:.migs_d=_server.c) $@:/' > $@)
-
-%.migu_d: %.cli $(before-compile)
-       (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
-       sed -e 's/[^:]*:/$(@:.migu_d=_user.c) $@:/' > $@)
-
-%.migsh_d: %.migs_d
-       sed -e 's/_server\.c /_interface.h /' -e 's/migs_d/migsh_d/' < $< > $@
-
-%.miguh_d: %.migu_d
-       sed -e 's/_user\.c /.h /' -e 's/migu_d/miguh_d/' < $< > $@
-
-# Generic rule for $(CC) based compilation for making dependencies
-define make-deps
-set -e; $(CC) $(CFLAGS) $(CPPFLAGS) -M -MG $< | \
-       sed > $@.new -e 's/$*\.o:/$*.o $@:/'
-mv -f $@.new $@
-endef
-
-%.d: %.c $(before-compile); $(make-deps)
-%.d: %.S $(before-compile); $(make-deps)
-
-# .s files don't go through the preprocessor, so we do this
-# This rule must come *after* the genuine ones above, so that
-# make doesn't build a .s file and then make an empty dependency
-# list.
-%.d: %.s
-       echo '$*.o: $<' > $@
+include Makerules
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/Makerules.in gnumach-1-branch.build_system/Makerules.in
--- gnumach-1-branch/Makerules.in       1970-01-01 01:00:00.000000000 +0100
+++ gnumach-1-branch.build_system/Makerules.in  2006-01-29 16:06:19.000000000 
+0100
@@ -0,0 +1,161 @@
+# Makerules
+# Copyright 2006 Free Software Foundation, Inc.
+#
+# Permission to use, copy, modify and distribute this software and its
+# documentation is hereby granted, provided that both the copyright
+# notice and this permission notice appear in all copies of the
+# software, derivative works or modified versions, and any portions
+# thereof, and that both notices appear in supporting documentation.
+#
+# THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
+# "AS IS" CONDITION.  THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
+# LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
+# USE OF THIS SOFTWARE.
+
+
+#
+# configure's findings.
+#
+
+systype = @systype@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+
+AR = @AR@
+AWK = @AWK@
+CC = @CC@
+CPP = @CPP@
+LD = @LD@
+MBCHK = @MBCHK@
+MIG = @MIG@
+NM = @NM@
+RANLIB = @RANLIB@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+
+CFLAGS-common = @CFLAGS@
+CPPFLAGS-common = @CPPFLAGS@
+DEFS-common = @DEFS@
+LDFLAGS-common = @LDFLAGS@
+
+
+#
+# System dependent Makerules
+#
+
+include $(abs_top_builddir)/$(systype)/Makerules
+
+
+#
+# Compilation flags
+#
+
+DEFS += $(DEFS-common)
+
+DEFINES += $(DEFS) -DMACH -DCMU -DMACH_KERNEL -DKERNEL
+
+INCLUDES += -I$(abs_top_builddir) -I$(abs_top_srcdir) \
+       -I$(abs_top_srcdir)/include -I$(abs_top_srcdir)/$(systype) \
+       -I$(abs_top_srcdir)/$(systype)/include/mach/sa \
+       -I$(abs_top_srcdir)/bogus -I$(abs_top_srcdir)/util \
+       -I$(abs_top_srcdir)/kern -I$(abs_top_srcdir)/device
+
+CPPFLAGS += -nostdinc $(DEFINES) $(INCLUDES) $(CPPFLAGS-common)
+
+MIGFLAGS += $(CPPFLAGS)
+
+CFLAGS += $(CFLAGS-common)
+
+LDFLAGS += $(LDFLAGS-common)
+
+# Assemble .S files correctly
+ASFLAGS += -DASSEMBLER
+
+
+#
+# How to do some things
+#
+
+# Building foo.h from foo.sym:
+%.symc: %.sym $(abs_top_srcdir)/gensym.awk
+       $(AWK) -f $(word 2,$^) $< > $@
+%.symc.o: %.symc
+       $(CC) -S $(CPPFLAGS) $(CFLAGS) $(CPPFLAGS-$@) -x c -o $@ $<
+%.h: %.symc.o
+       sed <$< -e 's/^[^*].*$$//' | \
+               sed -e 's/^[*]/#define/' -e 's/mAgIc[^-0-9]*//' >$@
+
+# Building from foo.cli
+%.h %_user.c: %.cli
+       $(MIG) $(MIGFLAGS) -header $*.h -user $*_user.c -server /dev/null $<
+
+# Building from foo.srv
+%_interface.h %_server.c: %.srv
+       $(MIG) $(MIGFLAGS) -sheader $*_interface.h -server $*_server.c \
+                          -header /dev/null -user /dev/null $<
+
+#
+# Dependency generation
+#
+
+# Include dependency files
+ifneq ($(no_deps),t)
+
+# For each file generated by MiG we need a .d file.
+servers = $(filter %_server.o,$(objfiles))
+-include $(subst _server.o,.migs_d,$(servers)) /dev/null
+-include $(subst _server.o,.migsh_d,$(servers)) /dev/null
+
+# vm_user.o fits the pattern, but is not actually a MiG-related file.
+users = $(filter-out vm_user.o,$(filter %_user.o,$(objfiles)))
+-include $(subst _user.o,.migu_d,$(users)) /dev/null
+-include $(subst _user.o,.miguh_d,$(users)) /dev/null
+
+# For each .o file we need a .d file.
+-include $(subst .o,.d,$(filter %.o,$(objfiles))) /dev/null
+
+endif
+
+# Here is how to make those dependency files
+
+%.migs_d: %.srv
+       (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
+       sed -e 's/[^:]*:/$(@:.migs_d=_server.c) $@:/' > $@)
+
+%.migu_d: %.cli
+       (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
+       sed -e 's/[^:]*:/$(@:.migu_d=_user.c) $@:/' > $@)
+
+%.migsh_d: %.migs_d
+       sed -e 's/_server\.c /_interface.h /' -e 's/migs_d/migsh_d/' < $< > $@
+
+%.miguh_d: %.migu_d
+       sed -e 's/_user\.c /.h /' -e 's/migu_d/miguh_d/' < $< > $@
+
+# Generic rule for $(CC) based compilation for making dependencies
+define make-deps
+set -e; $(CC) $(CFLAGS) $(CPPFLAGS) -M -MG $< | \
+       sed > $@.new -e 's/$*\.o:/$*.o $@:/'
+mv -f $@.new $@
+endef
+
+%.d: %.c; $(make-deps)
+%.d: %.S; $(make-deps)
+
+# .s files don't go through the preprocessor, so we do this
+# This rule must come *after* the genuine ones above, so that
+# make doesn't build a .s file and then make an empty dependency
+# list.
+%.d: %.s
+       echo '$*.o: $<' > $@
+
+
+#
+# Autoconf support
+#
+
+$(top_builddir)Makerules $(abs_top_builddir)/Makerules: \
+  $(abs_top_srcdir)/Makerules.in $(abs_top_builddir)/config.status
+       cd $(abs_top_builddir) && ./config.status $(@F)
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/configure.in gnumach-1-branch.build_system/configure.in
--- gnumach-1-branch/configure.in       2006-01-29 15:12:00.000000000 +0100
+++ gnumach-1-branch.build_system/configure.in  2006-01-29 14:57:49.000000000 
+0100
@@ -1,5 +1,5 @@
 dnl Configure script for GNU Mach.
-dnl Copyright 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
+dnl Copyright 1997, 1998, 1999, 2004, 2006 Free Software Foundation, Inc.
 
 dnl Permission to use, copy, modify and distribute this software and its
 dnl documentation is hereby granted, provided that both the copyright
@@ -53,15 +53,22 @@
 AC_PROG_INSTALL
 AC_PROG_AWK
 AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_RANLIB
 
+AC_CHECK_TOOL([AR], [ar])
 AC_CHECK_TOOL([LD], [ld])
-AC_SUBST([LDFLAGS])
 AC_CHECK_TOOL([NM], [nm])
 
 AC_CHECK_TOOL([MIG], [mig], [mig])
 
-# Set up `machine' link in build directory for easier header file location.
-AC_CONFIG_LINKS([machine:${systype}/${systype}])
+AC_CHECK_PROG([MBCHK], [mbchk], [mbchk], :)
+
+# Set up `machine' and `mach/machine' links in the build directory for easier
+# header file location.
+AC_CONFIG_LINKS([machine:${systype}/${systype}
+                mach/machine:${systype}/include/mach/${systype}])
+
 
 AC_CONFIG_SUBDIRS([linux])
 
@@ -71,5 +78,5 @@
   AC_CONFIG_SUBDIRS([i386])
 fi
 
-AC_CONFIG_FILES([Makefile version.c doc/Makefile])
+AC_CONFIG_FILES([Makefile Makerules version.c doc/Makefile])
 AC_OUTPUT
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/ddb/db_access.h gnumach-1-branch.build_system/ddb/db_access.h
--- gnumach-1-branch/ddb/db_access.h    2006-01-29 15:12:00.000000000 +0100
+++ gnumach-1-branch.build_system/ddb/db_access.h       2006-01-27 
14:59:43.000000000 +0100
@@ -33,7 +33,7 @@
 #include <mach/boolean.h>
 #include <machine/db_machdep.h>
 #include <ddb/db_task_thread.h>
-#include "vm_param.h"
+#include <machine/vm_param.h>
 
 /* implementation dependent access capability */
 #define        DB_ACCESS_KERNEL        0       /* only kernel space */
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/Makefile.in gnumach-1-branch.build_system/i386/Makefile.in
--- gnumach-1-branch/i386/Makefile.in   2006-01-29 15:12:00.000000000 +0100
+++ gnumach-1-branch.build_system/i386/Makefile.in      2006-01-29 
18:11:07.000000000 +0100
@@ -1,5 +1,48 @@
 # Makefile for i386
-# Copyright 1999 Free Software Foundation, Inc.
+# Copyright 1999, 2006 Free Software Foundation, Inc.
+#
+# Permission to use, copy, modify and distribute this software and its
+# documentation is hereby granted, provided that both the copyright
+# notice and this permission notice appear in all copies of the
+# software, derivative works or modified versions, and any portions
+# thereof, and that both notices appear in supporting documentation.
+#
+# THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
+# "AS IS" CONDITION.  THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
+# LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
+# USE OF THIS SOFTWARE.
+
+
+#
+# configure's findings.
+#
+
+srcdir = @srcdir@
+
+prefix = @prefix@
+includedir = @includedir@
+
+top_srcdir = /..
+top_builddir = ../
+
+
+#
+# Default target
+#
+
+all:
+
+
+# Detect if the user wants LPR
+ifeq ($(findstring -DMACH_LPR,@DEFS@),-DMACH_LPR)
+enable_lpr=yes
+else
+enable_lpr=no
+endif
+
+
+# i386 Mach makefile fragment
+# Copyright 1997, 1999 Free Software Foundation, Inc.
 #
 # Permission to use, copy, modify and distribute this software and its
 # documentation is hereby granted, provided that both the copyright
@@ -13,57 +56,146 @@
 # USE OF THIS SOFTWARE.
 
 
+# Source files for any i386 kernel
+i386at-files = autoconf.c blit.c conf.c cons_conf.c fd.c rtc.c \
+       i386at_ds_routines.c immc.c int_init.c iopl.c kd.c kd_event.c \
+       kd_mouse.c kd_queue.c model_dep.c phys_mem_grab_page.c pic_isa.c
+i386-files = ast_check.c db_disasm.c db_interface.c db_trace.c debug_i386.c \
+       fpe_linkage.c fpu.c gdt.c hardclock.c idt.c io_emulate.c io_map.c \
+       iopb.c ktss.c kttd_interface.c ldt.c loose_ends.c mp_desc.c pcb.c \
+       phys.c pic.c pit.c seg.c trap.c user_ldt.c
+intel-files = pmap.c read_fault.c
+
+# Assembler source
+i386at-Sfiles = boothdr.S interrupt.S kdasm.S
+i386-Sfiles = cswitch.S debug_trace.S idt_inittab.S locore.S spl.S
+
+# Account for them in the image
+objfiles += $(subst .c,.o,$(i386at-files) $(i386-files) $(intel-files)) \
+           $(subst .S,.o,$(i386at-Sfiles) $(i386-Sfiles))
+vpath %.c $(srcdir)/i386at $(srcdir)/i386 $(srcdir)/intel
+vpath %.S $(srcdir)/i386at $(srcdir)/i386
+
+# Files from the generic source that we want
+objfiles += busses.o cirbuf.o
+# Hm.
+vpath busses.c $(top_srcdir)/chips
+vpath cirbuf.c $(top_srcdir)/device
+
+# Mig-generated
+objfiles += mach_i386_server.o
+
+# This file is only needed for KDB support.  It'll be discarded at linking if
+# it's not needed.
+objfiles += _setjmp.o
+
+# XXX: In i386, com is always enabled.
+objfiles += com.o
+
+# This file is only needed for LPR support.
+ifeq ($(enable_lpr),yes)
+objfiles += lpr.o
+endif
+
 
 
-# Variables from `configure'.
-srcdir=@srcdir@
+# Where to find some things
+vpath i386asm.sym $(srcdir)/i386
+vpath mach_i386.srv $(srcdir)/i386
+
+# Our include files are here; make sure they PRECEDE the generic ones.
+INCLUDES := -I. -I$(srcdir)/i386at -I$(srcdir)/i386 \
+       -I$(srcdir)/include -I$(srcdir)/include/mach/sa \
+       -I$(srcdir)/bogus -I$(srcdir) $(INCLUDES)
 
-# Programs found by configure.
-LD = @LD@
-MAKE = @MAKE@
+
+#
+# Rules.
+#
 
-# Rules. There are few rules because Makefrag does most things in i386.
-all: sysdep.o
+all: sysdep.a
+       $(MAKE) -C linux $@
 
-sysdep.o: linux/linux.o $(srcdir)/configure
+# `boothdr.o' is special.
+sysdep.a: $(objfiles) linux/linux.o
        rm -f $@
-       $(LD) -r -o $@ linux/linux.o
+       $(AR) cr $@ $(filter-out boothdr.o,$^)
+       $(RANLIB) $@
 
-linux/linux.o: FORCE
-       cd linux && $(MAKE) all
-FORCE:
+check:
+       $(MAKE) -C linux $@
 
 clean:
-       rm -f sysdep.o
-       cd linux && $(MAKE) clean
+       $(MAKE) -C linux $@
+       rm -f sysdep.a
+       rm -f $(objfiles) $(subst .o,.d,$(objfiles))
+       rm -f *.symc *.symc.o *_user.c *_server.c *.h
+       rm -f *.migs_d *.migsh_d *.migu_d *.miguh_d
 
 distclean: clean
-       cd linux && $(MAKE) distclean
-       rm -f config.status config.log Makefile
+       $(MAKE) -C linux $@
+       rm -f Makefile Makerules
+       rm -f config.status config.log
 
 mostlyclean: distclean
-       cd linux && $(MAKE) mostlyclean
+       $(MAKE) -C linux $@
 
 maintainer-clean: mostlyclean
+       $(MAKE) -C linux $@
        rm -f $(srcdir)/configure
-       cd linux && $(MAKE) maintainer-clean
 
-install-headers:
+linux/%: FORCE
+       $(MAKE) -C linux $(@F)
+FORCE:
+
+
+#
+# Installation
+#
+
+install:
+       make -C linux $@
+
+installed-headers = $(addprefix mach/i386/, \
+       asm.h boolean.h disk.h eflags.h exception.h fp_reg.h ioccom.h \
+       kern_return.h mach_i386.defs mach_i386_types.h machine_types.defs \
+       multiboot.h rpc.h syscall_sw.h thread_status.h trap.h vm_param.h \
+       vm_types.h)
+
+installed-headers-names = $(addprefix $(includedir)/,$(installed-headers))
+$(installed-headers-names): $(includedir)/%: $(srcdir)/include/%
+       $(INSTALL_DATA) $< $@
+
+install-headers: mkheaderdirs $(installed-headers-names)
+       ln -sfn $(systype) $(includedir)/mach/machine
+       make -C linux $@
+
 install-kernel:
+       make -C linux $@
 
+mkheaderdirs:
+       mkdir -p $(includedir)/mach/$(systype)
 
 
-
+#
 # Autoconf support
+#
 
 $(srcdir)/configure: configure.in
        cd $(srcdir) && autoconf
 
 Makefile: Makefile.in config.status
-       ./config.status
+       ./config.status $@
 
 config.status: configure
        ./config.status --recheck
 
 vpath %.in $(srcdir)
 vpath configure $(srcdir)
+
+
+#
+# Makerules
+#
+
+include $(top_builddir)Makerules
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/Makefrag gnumach-1-branch.build_system/i386/Makefrag
--- gnumach-1-branch/i386/Makefrag      2006-01-29 15:10:42.000000000 +0100
+++ gnumach-1-branch.build_system/i386/Makefrag 1970-01-01 01:00:00.000000000 
+0100
@@ -1,131 +0,0 @@
-# i386 Mach makefile fragment
-# Copyright 1997, 1999 Free Software Foundation, Inc.
-#
-# Permission to use, copy, modify and distribute this software and its
-# documentation is hereby granted, provided that both the copyright
-# notice and this permission notice appear in all copies of the
-# software, derivative works or modified versions, and any portions
-# thereof, and that both notices appear in supporting documentation.
-#
-# THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
-# "AS IS" CONDITION.  THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
-# LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
-# USE OF THIS SOFTWARE.
-
-
-# Some of the i386-specific code checks for these.
-DEFINES += -DCONTINUATIONS -D__ELF__ -Di386 -DLINUX_DEV
-
-# Source files for any i386 kernel
-i386at-files = autoconf.c blit.c conf.c cons_conf.c fd.c rtc.c \
-       i386at_ds_routines.c immc.c int_init.c iopl.c kd.c kd_event.c \
-       kd_mouse.c kd_queue.c model_dep.c phys_mem_grab_page.c pic_isa.c
-i386-files = ast_check.c db_disasm.c db_interface.c db_trace.c debug_i386.c \
-       fpe_linkage.c fpu.c gdt.c hardclock.c idt.c io_emulate.c io_map.c \
-       iopb.c ktss.c kttd_interface.c ldt.c loose_ends.c mp_desc.c pcb.c \
-       phys.c pic.c pit.c seg.c trap.c user_ldt.c
-intel-files = pmap.c read_fault.c
-
-# Assembler source
-i386at-Sfiles = boothdr.S interrupt.S kdasm.S
-i386-Sfiles = cswitch.S debug_trace.S idt_inittab.S locore.S spl.S
-
-# Account for them in the image
-objfiles += $(subst .c,.o,$(i386at-files) $(i386-files) $(intel-files)) \
-           $(subst .S,.o,$(i386at-Sfiles) $(i386-Sfiles))
-vpath %.c $(sysdep)/i386at $(sysdep)/i386 $(sysdep)/intel
-vpath %.S $(sysdep)/i386at $(sysdep)/i386
-
-# Files from the generic source that we want
-objfiles += busses.o cirbuf.o
-vpath busses.c $(srcdir)/chips
-
-# Mig-generated
-objfiles += mach_i386_server.o
-
-# This file is only needed for KDB support.
-ifeq ($(enable_kdb),yes)
-objfiles += _setjmp.o
-endif
-
-# XXX: In i386, com is always enabled.
-objfiles += com.o
-
-# This file is only needed for LPR support.
-ifeq ($(findstring -DMACH_LPR,@DEFS@),-DMACH_LPR)
-objfiles += lpr.o
-endif
-
-# We link the device drivers together into this file in a separate Make
-# run, because the Linux-related code sometimes re-uses filenames.  Arrange
-# to have that Makefile used to generate and clean and otherwise deal with
-# those filenames.
-
-objfiles += i386/sysdep.o
-i386/sysdep.o: FORCE
-       cd i386 && $(MAKE) all
-FORCE:
-
-clean: i386-clean
-i386-clean:
-       cd i386 && $(MAKE) clean
-
-distclean: i386-distclean
-i386-distclean:
-       cd i386 && $(MAKE) distclean
-
-mostlyclean: i386-mostlyclean
-i386-mostlyclean:
-       cd i386 && $(MAKE) mostlyclean
-
-maintainerclean: i386-maintainerclean
-i386-maitainerclean:
-       cd i386 && $(MAKE) maintainer-clean
-
-
-
-
-
-# Where to find some things
-vpath i386asm.sym $(sysdep)/i386
-vpath mach_i386.srv $(sysdep)/i386
-
-# Make sure boothdr.o is at the very front
-objfiles := boothdr.o $(filter-out boothdr.o,$(objfiles))
-
-# Our include files are here; make sure they PRECEDE the generic ones.
-INCLUDES := -I$(sysdep)/i386at -I$(sysdep)/i386 \
-       -I$(sysdep)/include -I$(sysdep)/include/mach/sa \
-       -I$(sysdep)/bogus -I$(sysdep) \
-       $(INCLUDES)
-
-# arrange suitable load address
-LDFLAGS += -Ttext 100000
-
-# Assemble .S files correctly
-ASFLAGS += -DASSEMBLER
-
-boothdr.o: i386asm.h
-
-
-# Header files we install
-
-install-headers: i386-install-headers
-i386-install-headers:
-       cd i386 && $(MAKE) install-headers
-
-install-kernel: i386-install-kernel
-i386-install-kernel:
-       cd $(systype) && $(MAKE) install-kernel
-
-# We have our own version of this file
-installed-headers := $(filter-out mach/proc_ops.h,$(installed-headers))
-
-i386-installed-headers= \
-               $(addprefix mach/i386/,asm.h boolean.h \
-               disk.h eflags.h exception.h \
-               fp_reg.h ioccom.h kern_return.h mach_i386.defs \
-               mach_i386_types.h machine_types.defs multiboot.h \
-               rpc.h syscall_sw.h \
-               thread_status.h trap.h vm_param.h \
-               vm_types.h)
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/Makerules.in 
gnumach-1-branch.build_system/i386/Makerules.in
--- gnumach-1-branch/i386/Makerules.in  1970-01-01 01:00:00.000000000 +0100
+++ gnumach-1-branch.build_system/i386/Makerules.in     2006-01-29 
14:04:27.000000000 +0100
@@ -0,0 +1,49 @@
+# i386/Makerules
+# Copyright 2006 Free Software Foundation, Inc.
+#
+# Permission to use, copy, modify and distribute this software and its
+# documentation is hereby granted, provided that both the copyright
+# notice and this permission notice appear in all copies of the
+# software, derivative works or modified versions, and any portions
+# thereof, and that both notices appear in supporting documentation.
+#
+# THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
+# "AS IS" CONDITION.  THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
+# LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
+# USE OF THIS SOFTWARE.
+
+
+#
+# configure's findings.
+#
+
+DEFS-$(systype) = @DEFS@
+
+
+#
+# Glue code dependent Makerules
+#
+
+include $(abs_top_builddir)/$(systype)/linux/Makerules
+
+
+# Some of the i386-specific code checks for these.
+DEFINES += -DCONTINUATIONS -D__ELF__ -Di386 $(DEFS-$(systype))
+
+# Arrange for a suitable load address.
+LDFLAGS-kernel += -Ttext 100000
+
+# `boothdr.o' has to be at the beginning.
+kernel-objfiles-prepend = $(systype)/boothdr.o
+
+kernel.o: $(kernel-objfiles-prepend)
+
+
+#
+# Autoconf support
+#
+
+$(abs_top_builddir)/$(systype)/Makerules: \
+  $(abs_top_srcdir)/$(systype)/Makerules.in \
+  $(abs_top_builddir)/$(systype)/config.status
+       cd $(abs_top_builddir)/$(systype) && ./config.status $(@F)
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/configure.in 
gnumach-1-branch.build_system/i386/configure.in
--- gnumach-1-branch/i386/configure.in  2006-01-29 15:12:00.000000000 +0100
+++ gnumach-1-branch.build_system/i386/configure.in     2006-01-29 
13:58:09.000000000 +0100
@@ -1,5 +1,5 @@
 dnl Configure script for i386
-dnl Copyright 1999, 2004 Free Software Foundation, Inc.
+dnl Copyright 1999, 2004, 2006 Free Software Foundation, Inc.
 
 dnl Permission to use, copy, modify and distribute this software and its
 dnl documentation is hereby granted, provided that both the copyright
@@ -15,7 +15,7 @@
 
 m4_include([../version.m4])
 
-AC_INIT([PACKAGE], [VERSION])
+AC_INIT([PACKAGE], [VERSION], [bug-hurd@gnu.org], [gnumach])
 AC_CONFIG_SRCDIR([i386/i386asm.sym])
 AC_PREREQ(2.57)
 
@@ -26,13 +26,7 @@
 AS_HELP_STRING([--enable-lpr], [enable use of lpr device]),
 [test "x$enableval" = xno || AC_DEFINE([MACH_LPR], [], [enable mach lpr])])
 
-#
-# Programs
-#
-AC_CHECK_TOOL([LD], [ld])
-AC_CHECK_TOOL([MAKE], [make])
-
 AC_CONFIG_SUBDIRS([linux])
 
-AC_CONFIG_FILES([Makefile])
+AC_CONFIG_FILES([Makefile Makerules])
 AC_OUTPUT
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/linux/Makefile.in 
gnumach-1-branch.build_system/i386/linux/Makefile.in
--- gnumach-1-branch/i386/linux/Makefile.in     2006-01-29 15:12:00.000000000 
+0100
+++ gnumach-1-branch.build_system/i386/linux/Makefile.in        2006-01-29 
18:11:31.000000000 +0100
@@ -15,18 +15,21 @@
 
 # Variables from `configure'.
 srcdir=@srcdir@
+
 systype=@systype@
 device_drivers=@device_drivers@
 
+top_builddir = ../../
 sysdep=$(srcdir)/..
 linuxdir=../../linux
 linuxsrcdir=$(srcdir)/$(linuxdir)
 
-# Programs found by configure.
-CC = @CC@
-LD = @LD@
+
+#
+# Default target
+#
 
-CFLAGS = @CFLAGS@
+all:
 
 
 
@@ -97,22 +100,21 @@
                $(linux-net-files) $(linux-pci-files) $(linux-scsi-files)
 
 # These are always used.
-linux-objs := $(subst .c,.o, $(linux-c-files) $(linux-pci-files)) genhd.o
-linux-objs += $(subst .S,.o, $(linux-asm-files))
+objfiles := $(subst .c,.o, $(linux-c-files) $(linux-pci-files)) genhd.o
+objfiles += $(subst .S,.o, $(linux-asm-files))
 
 # These files need special flags for compilation; each one will
 # have a variable like wd7000.c-linux-flags with those flags.
-CFLAGS += $($(<F)-linux-flags)
-ASFLAGS += $($(<F)-linux-flags)
-
-CPPFLAGS = -DMACH -DCMU -DMACH_KERNEL -DKERNEL -DLINUX_DEV \
-       -DCONTINUATIONS -D__ELF__ -Di386 \
+CFLAGS = $($(<F)-linux-flags)
+ASFLAGS = $($(<F)-linux-flags)
+INCLUDES = \
        -I. -I.. -I$(srcdir)/.. -I../.. -I$(srcdir)/../.. \
        -I$(srcdir)/../../include -I$(srcdir)/../../bogus \
        -I$(srcdir)/../../util -I$(srcdir)/../../kern \
        -I$(srcdir)/../../device -I$(sysdep)/i386at -I$(sysdep)/i386 \
        -I$(sysdep)/include -I$(sysdep)/include/mach/sa -I$(sysdep)/bogus \
-       -I$(sysdep) -Wall
+       -I$(sysdep)
+CPPFLAGS = -Wall
 
 # These flags are:
 # Instead of Mach's KERNEL, Linux uses __KERNEL__.  Whee.
@@ -174,7 +176,7 @@
 no_deps=t
 endif
 
-linux-objs += $(sort $(device_drivers))
+objfiles += $(sort $(device_drivers))
 
 
 
@@ -197,16 +199,22 @@
 # Create a linuxdev object file.
 all: linux.o
 
-linux.o: $(linux-objs) $(srcdir)/configure
+linux.o: $(objfiles) $(srcdir)/configure
        rm -f $@
-       $(LD) -r -o $@ $(linux-objs)
+       $(LD) -r -o $@ $(objfiles)
+
+check:
+
+install install-headers install-kernel:
 
 clean:
-       rm -f $(linux-objs) linux.o
+       rm -f linux.o
+       rm -f linux-flags
+       rm -f $(objfiles) $(subst .o,.d,$(objfiles))
 
 distclean: clean
-       rm -f $(linuxdir)/src/include/asm $(linuxdir)/dev/include/asm
-       rm -f config.status config.log Makefile device-drivers.h
+       rm -f Makefile Makerules device-drivers.h
+       rm -f config.status config.log
 
 mostlyclean: distclean
 
@@ -214,26 +222,8 @@
        rm -f $(srcdir)/configure
 
 
-
 #
-# Dependency generation
+# Makerules
 #
 
-# Include dependency files
-ifneq ($(no_deps),t)
-
-# For each .o file we need a .d file.
--include $(subst .o,.d,$(filter %.o,$(linux-objs))) /dev/null
-
-endif
-
-# Generic rule for $(CC) based compilation for making dependencies
-define make-deps
-set -e; $(CC) $(CFLAGS) $(CPPFLAGS) -M -MG $< | \
-       sed > $@.new -e 's/$*\.o:/$*.o $@:/'
-mv -f $@.new $@
-endef
-
-%.d: %.c $(before-compile); $(make-deps)
-%.d: %.S $(before-compile); $(make-deps)
-
+include $(top_builddir)Makerules
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/linux/Makerules.in 
gnumach-1-branch.build_system/i386/linux/Makerules.in
--- gnumach-1-branch/i386/linux/Makerules.in    1970-01-01 01:00:00.000000000 
+0100
+++ gnumach-1-branch.build_system/i386/linux/Makerules.in       2006-01-28 
17:38:00.000000000 +0100
@@ -0,0 +1,33 @@
+# i386/linux/Makerules
+# Copyright 2006 Free Software Foundation, Inc.
+#
+# Permission to use, copy, modify and distribute this software and its
+# documentation is hereby granted, provided that both the copyright
+# notice and this permission notice appear in all copies of the
+# software, derivative works or modified versions, and any portions
+# thereof, and that both notices appear in supporting documentation.
+#
+# THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
+# "AS IS" CONDITION.  THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
+# LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
+# USE OF THIS SOFTWARE.
+
+
+#
+# configure's findings.
+#
+
+DEFS-$(systype)-linux = @DEFS@
+
+# The glue code dependend code checks for this.
+DEFINES += -DLINUX_DEV
+
+
+#
+# Autoconf support
+#
+
+$(abs_top_builddir)/$(systype)/linux/Makerules: \
+  $(abs_top_srcdir)/$(systype)/linux/Makerules.in \
+  $(abs_top_builddir)/$(systype)/linux/config.status
+       cd $(abs_top_builddir)/$(systype)/linux && ./config.status $(@F)
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/i386/linux/configure.ac 
gnumach-1-branch.build_system/i386/linux/configure.ac
--- gnumach-1-branch/i386/linux/configure.ac    2006-01-29 15:12:01.000000000 
+0100
+++ gnumach-1-branch.build_system/i386/linux/configure.ac       2006-01-29 
14:50:34.000000000 +0100
@@ -14,7 +14,7 @@
 
 m4_include([../../version.m4])
 
-AC_INIT([PACKAGE], [VERSION])
+AC_INIT([PACKAGE], [VERSION], [bug-hurd@gnu.org], [gnumach])
 AC_CONFIG_SRCDIR([dev/include/linux/autoconf.h])
 AC_PREREQ(2.57)
 
@@ -44,12 +44,6 @@
 
 hurd_SYSTYPE
 
-AC_CHECK_TOOL([CC], [gcc])
-AC_PROG_CC
-
-AC_CHECK_TOOL([LD], [ld])
-AC_SUBST([LDFLAGS])
-
 
 dnl Aliases have to come first.
 
@@ -229,5 +223,5 @@
 linux_DRIVER([tlan], [TLAN], [tlan], [net])
 linux_DRIVER([viarhine], [VIA_RHINE], [via-rhine], [net])
 
-AC_CONFIG_FILES([Makefile])
+AC_CONFIG_FILES([Makefile Makerules])
 AC_OUTPUT
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/kern/bootstrap.c gnumach-1-branch.build_system/kern/bootstrap.c
--- gnumach-1-branch/kern/bootstrap.c   2006-01-29 15:12:01.000000000 +0100
+++ gnumach-1-branch.build_system/kern/bootstrap.c      2006-01-27 
15:37:10.000000000 +0100
@@ -34,7 +34,7 @@
 
 #include <mach/port.h>
 #include <mach/message.h>
-#include "vm_param.h"
+#include <machine/vm_param.h>
 #include <ipc/ipc_port.h>
 #include <kern/host.h>
 #include <kern/task.h>
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/kern/thread.c gnumach-1-branch.build_system/kern/thread.c
--- gnumach-1-branch/kern/thread.c      2006-01-29 15:12:01.000000000 +0100
+++ gnumach-1-branch.build_system/kern/thread.c 2006-01-27 15:37:20.000000000 
+0100
@@ -46,7 +46,7 @@
 #include <mach/thread_special_ports.h>
 #include <mach/thread_status.h>
 #include <mach/time_value.h>
-#include "vm_param.h"
+#include <machine/vm_param.h>
 #include <kern/ast.h>
 #include <kern/counters.h>
 #include <kern/ipc_tt.h>
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/linux/configure.in 
gnumach-1-branch.build_system/linux/configure.in
--- gnumach-1-branch/linux/configure.in 2006-01-29 15:12:01.000000000 +0100
+++ gnumach-1-branch.build_system/linux/configure.in    2006-01-29 
14:10:05.000000000 +0100
@@ -1,5 +1,5 @@
 dnl Configure script for linux code snarfed into GNU Mach.
-dnl Copyright 1999, 2004 Free Software Foundation, Inc.
+dnl Copyright 1999, 2004, 2006 Free Software Foundation, Inc.
 
 dnl Permission to use, copy, modify and distribute this software and its
 dnl documentation is hereby granted, provided that both the copyright
@@ -14,7 +14,7 @@
 
 m4_include([../version.m4])
 
-AC_INIT([PACKAGE],[VERSION])
+AC_INIT([PACKAGE], [VERSION], [bug-hurd@gnu.org], [gnumach])
 AC_CONFIG_SRCDIR([src/include/linux/version.h])
 AC_PREREQ(2.57)
 
@@ -25,10 +25,4 @@
 AC_CONFIG_LINKS([src/include/asm:src/include/asm-${systype}
                 dev/include/asm:dev/include/asm-${systype}])
 
-dnl We need to write these bogus output files to make autoconf create
-dnl the directories where the directory symlinks need to go.
-AC_CONFIG_FILES([src/.dummy:dummy.in
-                dev/.dummy:dummy.in
-                src/include/.dummy:dummy.in
-                dev/include/.dummy:dummy.in])
 AC_OUTPUT
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/linux/dummy.in gnumach-1-branch.build_system/linux/dummy.in
--- gnumach-1-branch/linux/dummy.in     2006-01-29 15:10:45.000000000 +0100
+++ gnumach-1-branch.build_system/linux/dummy.in        1970-01-01 
01:00:00.000000000 +0100
@@ -1 +0,0 @@
-This is a pointless file that exists to get configure to create a directory.
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/vm/vm_kern.c gnumach-1-branch.build_system/vm/vm_kern.c
--- gnumach-1-branch/vm/vm_kern.c       2006-01-29 15:12:01.000000000 +0100
+++ gnumach-1-branch.build_system/vm/vm_kern.c  2006-01-27 15:37:28.000000000 
+0100
@@ -35,7 +35,7 @@
  */
 
 #include <mach/kern_return.h>
-#include "vm_param.h"
+#include <machine/vm_param.h>
 #include <kern/assert.h>
 #include <kern/lock.h>
 #include <kern/thread.h>
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/vm/vm_object.c gnumach-1-branch.build_system/vm/vm_object.c
--- gnumach-1-branch/vm/vm_object.c     2006-01-29 15:12:02.000000000 +0100
+++ gnumach-1-branch.build_system/vm/vm_object.c        2006-01-27 
15:37:58.000000000 +0100
@@ -43,7 +43,7 @@
 #include <mach/memory_object.h>
 #include "memory_object_default.h"
 #include "memory_object_user.h"
-#include "vm_param.h"
+#include <machine/vm_param.h>
 #include <ipc/ipc_port.h>
 #include <ipc/ipc_space.h>
 #include <kern/assert.h>
diff -x configure -x autom4te.cache -x '*~' -x CVS -Nru 
gnumach-1-branch/vm/vm_resident.c gnumach-1-branch.build_system/vm/vm_resident.c
--- gnumach-1-branch/vm/vm_resident.c   2006-01-29 15:12:02.000000000 +0100
+++ gnumach-1-branch.build_system/vm/vm_resident.c      2006-01-27 
15:38:11.000000000 +0100
@@ -40,7 +40,7 @@
 #include <kern/task.h>
 #include <kern/thread.h>
 #include <mach/vm_statistics.h>
-#include "vm_param.h"
+#include <machine/vm_param.h>
 #include <kern/xpr.h>
 #include <kern/zalloc.h>
 #include <vm/pmap.h>


Regards,
 Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]