diff --git a/Makefile.am b/Makefile.am
index df9b71becc37c843ce4cf1a38d4257daa007d417..abf8b4c1a963c0ae05edcf85de5947bad231b704 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -53,6 +53,9 @@ EXTRA_DIST = \
 	Kbuild.in \
 	README.EoE
 
+BUILT_SOURCES = \
+	Kbuild
+
 modules:
 	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
 
diff --git a/devices/Kbuild.in b/devices/Kbuild.in
index 7532858f79a3792735c7af3072961eeb1ff51cf5..748a39ddd80635ecafceaa2538bc95aa8afa50fb 100644
--- a/devices/Kbuild.in
+++ b/devices/Kbuild.in
@@ -61,7 +61,7 @@ ifeq (@ENABLE_FORCEDETH@,1)
 endif
 
 ifeq (@ENABLE_E1000@,1)
-    obj-m += e1000/
+	obj-m += e1000/
 endif
 
 ifeq (@ENABLE_R8169@,1)
diff --git a/devices/Makefile.am b/devices/Makefile.am
index 67491eb38c58f75c6e62f9d024f706b0cae820d2..2b2769ab7a45cda698561db6dfe8cd7167d1988f 100644
--- a/devices/Makefile.am
+++ b/devices/Makefile.am
@@ -59,6 +59,9 @@ EXTRA_DIST = \
 	forcedeth-2.6.19-ethercat.c \
 	forcedeth-2.6.19-orig.c
 
+BUILT_SOURCES = \
+	Kbuild
+
 modules:
 	$(MAKE) -C "@abs_top_srcdir@" modules
 
diff --git a/devices/e1000/Kbuild.in b/devices/e1000/Kbuild.in
index 983c3fc5e1f9d37085d6d25e4723720966e43da6..feef444f9925dcfa4feccbb4413552d6812c8963 100644
--- a/devices/e1000/Kbuild.in
+++ b/devices/e1000/Kbuild.in
@@ -42,10 +42,11 @@ REV := $(shell if test -s $(TOPDIR)/svnrevision; then \
 	fi)
 
 ifeq (@ENABLE_E1000@,1)
-	EC_E1000_OBJ := e1000_main-@KERNEL_E1000@-ethercat.o \
-        e1000_hw-@KERNEL_E1000@-ethercat.o \
-        e1000_ethtool-@KERNEL_E1000@-ethercat.o \
-        e1000_param-@KERNEL_E1000@-ethercat.o
+	EC_E1000_OBJ := \
+		e1000_main-@KERNEL_E1000@-ethercat.o \
+		e1000_hw-@KERNEL_E1000@-ethercat.o \
+		e1000_ethtool-@KERNEL_E1000@-ethercat.o \
+		e1000_param-@KERNEL_E1000@-ethercat.o
 	obj-m += ec_e1000.o
 	ec_e1000-objs := $(EC_E1000_OBJ)
 	CFLAGS_e1000_main-@KERNEL_E1000@-ethercat.o = -DSVNREV=$(REV)
diff --git a/devices/e1000/Makefile.am b/devices/e1000/Makefile.am
index 0c36f4e54a5fa1170c8a61a2e87f6c89bc1a7a19..59195fc592b412e9803393511ada12d9099c350f 100644
--- a/devices/e1000/Makefile.am
+++ b/devices/e1000/Makefile.am
@@ -105,6 +105,9 @@ EXTRA_DIST = \
 	e1000_param-2.6.24-ethercat.c \
 	e1000_param-2.6.24-orig.c
 
+BUILT_SOURCES = \
+	Kbuild
+
 modules:
 	$(MAKE) -C "@abs_top_srcdir@" modules
 
diff --git a/examples/mini/Makefile.am b/examples/mini/Makefile.am
index 6926b4f788fe070c030ceedebd51c729d39bb2e8..8d2a4cb4baf6283582364e6296ff66d8fdb486f0 100644
--- a/examples/mini/Makefile.am
+++ b/examples/mini/Makefile.am
@@ -39,15 +39,17 @@ EXTRA_DIST = \
 	Kbuild.in \
 	mini.c
 
-all:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
-
-clean-local:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+BUILT_SOURCES = \
+	Kbuild
 
-install-data-local: modules_install
+modules:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
 
 modules_install:
+	mkdir -p $(DESTDIR)$(LINUX_MOD_PATH)
 	cp $(srcdir)/ec_mini.ko $(DESTDIR)$(LINUX_MOD_PATH)
 
+clean-local:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+
 #------------------------------------------------------------------------------
diff --git a/examples/msr/Kbuild.in b/examples/msr/Kbuild.in
index 3854a247d04eb6788d07071e5d8e7cc84db21ce2..63255613e07b6d024654c6c541722d5ab0b0b6e2 100644
--- a/examples/msr/Kbuild.in
+++ b/examples/msr/Kbuild.in
@@ -37,22 +37,25 @@ MODULE := ec_msr_sample
 
 obj-m := $(MODULE).o
 
-$(MODULE)-objs := msr_sample.o \
-                        rt_lib/msr-core/msr_lists.o \
-                        rt_lib/msr-core/msr_main.o \
-                        rt_lib/msr-core/msr_charbuf.o \
-                        rt_lib/msr-core/msr_reg.o \
-                        rt_lib/msr-core/msr_interpreter.o \
-                        rt_lib/msr-core/msr_messages.o \
-                        rt_lib/msr-core/msr_proc.o \
-                        rt_lib/msr-core/msr_error_reg.o \
-                        rt_lib/msr-utils/msr_utils.o \
-                        rt_lib/msr-utils/msr_time.o \
-                        rt_lib/msr-math/msr_base64.o \
-                        rt_lib/msr-math/msr_hex_bin.o \
-                        libm.o
+$(MODULE)-objs := \
+	msr_sample.o \
+	rt_lib/msr-core/msr_lists.o \
+	rt_lib/msr-core/msr_main.o \
+	rt_lib/msr-core/msr_charbuf.o \
+	rt_lib/msr-core/msr_reg.o \
+	rt_lib/msr-core/msr_interpreter.o \
+	rt_lib/msr-core/msr_messages.o \
+	rt_lib/msr-core/msr_proc.o \
+	rt_lib/msr-core/msr_error_reg.o \
+	rt_lib/msr-utils/msr_utils.o \
+	rt_lib/msr-utils/msr_time.o \
+	rt_lib/msr-math/msr_base64.o \
+	rt_lib/msr-math/msr_hex_bin.o \
+	libm.o
 
-EXTRA_CFLAGS := -I@MSR_DIR@/include -I@RTAI_DIR@/include \
-                -D_SIMULATION -mhard-float
+EXTRA_CFLAGS := \
+	-I@MSR_DIR@/include \
+	-I@RTAI_DIR@/include \
+	-D_SIMULATION -mhard-float
 
 #------------------------------------------------------------------------------
diff --git a/examples/msr/Makefile.am b/examples/msr/Makefile.am
index 3cb164e6b47d5411c9eaca8685a7d321eb62cdc3..13d661b6b1fa913de48c6a1298097cc147de1b12 100644
--- a/examples/msr/Makefile.am
+++ b/examples/msr/Makefile.am
@@ -38,15 +38,17 @@ EXTRA_DIST = \
 	msrserv.pl \
 	init.sh
 
-all:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
-
-clean-local:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+BUILT_SOURCES = \
+	Kbuild
 
-install-data-local: modules_install
+modules:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
 
 modules_install:
+	mkdir -p $(DESTDIR)$(LINUX_MOD_PATH)
 	cp $(srcdir)/ec_msr_sample.ko $(DESTDIR)$(LINUX_MOD_PATH)
 
+clean-local:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+
 #------------------------------------------------------------------------------
diff --git a/examples/rtai/Makefile.am b/examples/rtai/Makefile.am
index 730d07808be8c2fb02ed82ed43a7e1ecb8861384..f2d8e4954f7da43d9e11dd8714d7ed550b1f3753 100644
--- a/examples/rtai/Makefile.am
+++ b/examples/rtai/Makefile.am
@@ -37,15 +37,17 @@ EXTRA_DIST = \
 	Kbuild.in \
 	rtai_sample.c
 
-all:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
-
-clean-local:
-	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+BUILT_SOURCES = \
+	Kbuild
 
-install-data-local: modules_install
+modules:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules
 
 modules_install:
+	mkdir -p $(DESTDIR)$(LINUX_MOD_PATH)
 	cp $(srcdir)/ec_rtai_sample.ko $(DESTDIR)$(LINUX_MOD_PATH)
 
+clean-local:
+	$(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean
+
 #------------------------------------------------------------------------------
diff --git a/master/Kbuild.in b/master/Kbuild.in
index 09b1b6d513434e70fda38caeaa725c7f3b66bff5..3efe0c05409932f4c1f61b3d4a27f2457ab4f042 100644
--- a/master/Kbuild.in
+++ b/master/Kbuild.in
@@ -37,31 +37,31 @@ obj-m := ec_master.o
 
 ec_master-objs := \
 	cdev.o \
-    datagram.o \
-    device.o \
-    domain.o \
-    fmmu_config.o \
-    fsm_change.o \
-    fsm_coe.o \
-    fsm_coe_map.o \
-    fsm_master.o \
-    fsm_pdo_assign.o \
-    fsm_pdo_mapping.o \
-    fsm_sii.o \
-    fsm_slave_config.o \
-    fsm_slave_scan.o \
-    mailbox.o \
-    master.o \
-    module.o \
-    pdo.o \
-    pdo_entry.o \
-    pdo_list.o \
-    sdo.o \
-    sdo_entry.o \
-    sdo_request.o \
-    slave.o \
-    slave_config.o \
-    sync.o \
+	datagram.o \
+	device.o \
+	domain.o \
+	fmmu_config.o \
+	fsm_change.o \
+	fsm_coe.o \
+	fsm_coe_map.o \
+	fsm_master.o \
+	fsm_pdo_assign.o \
+	fsm_pdo_mapping.o \
+	fsm_sii.o \
+	fsm_slave_config.o \
+	fsm_slave_scan.o \
+	mailbox.o \
+	master.o \
+	module.o \
+	pdo.o \
+	pdo_entry.o \
+	pdo_list.o \
+	sdo.o \
+	sdo_entry.o \
+	sdo_request.o \
+	slave.o \
+	slave_config.o \
+	sync.o \
 	sync_config.o
 
 ifeq (@ENABLE_EOE@,1)
diff --git a/master/Makefile.am b/master/Makefile.am
index 1ccc63b39853610aad5800a23e2af765cdb6bfe2..44f87eef2a8a7868d83de088bcdaff492ab8ba51 100644
--- a/master/Makefile.am
+++ b/master/Makefile.am
@@ -66,6 +66,9 @@ EXTRA_DIST = \
 	sync.c sync.h \
 	sync_config.c sync_config.h
 
+BUILT_SOURCES = \
+	Kbuild
+
 modules:
 	$(MAKE) -C "@abs_top_srcdir@" modules