Patchwork drivers/mtd: remove makefile subdirectory processing redundancies

login
register
mail settings
Submitter Kyle Spaans
Date Aug. 4, 2010, 12:58 a.m.
Message ID <20100804005804.GA11770@taurine.csclub.uwaterloo.ca>
Download mbox | patch
Permalink /patch/60815/
State New
Headers show

Comments

Kyle Spaans - Aug. 4, 2010, 12:58 a.m.
Remove redundant config checks when the subdirectory's Makefile is already
conditionally processed. Add more conditional processing when the subdirectory
can be selected/deselected as a whole.

Signed-off-by: Kyle Spaans <kspaans@uwaterloo.ca>
---
 drivers/mtd/Makefile         |    6 +++++-
 drivers/mtd/lpddr/Makefile   |    2 +-
 drivers/mtd/nand/Makefile    |    2 +-
 drivers/mtd/onenand/Makefile |    4 ++--
 drivers/mtd/tests/Makefile   |   16 ++++++++--------
 drivers/mtd/ubi/Makefile     |    2 +-
 6 files changed, 18 insertions(+), 14 deletions(-)
Artem Bityutskiy - Aug. 24, 2010, 8:17 a.m.
On Tue, 2010-08-03 at 20:58 -0400, Kyle Spaans wrote:
> Remove redundant config checks when the subdirectory's Makefile is already
> conditionally processed. Add more conditional processing when the subdirectory
> can be selected/deselected as a whole.
> 
> Signed-off-by: Kyle Spaans <kspaans@uwaterloo.ca>

Sorry, bad luck. I get the following with your patch, but without your
patch my compilation is fine. Forgot to compile-test? :-)

[dedekind@eru l2-mtd-2.6]$ make
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CHK     include/linux/version.h
make[2]: `scripts/unifdef' is up to date.
Kernel: arch/x86/boot/bzImage is ready  (#7)
  Building modules, stage 2.
  MODPOST 251 modules
ERROR: "ubi_open_volume" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_leb_map" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_open_volume_nm" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_leb_change" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_leb_write" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_get_device_info" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_leb_read" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_leb_unmap" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_close_volume" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_get_volume_info" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_open_volume_path" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_sync" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_is_mapped" [fs/ubifs/ubifs.ko] undefined!
ERROR: "ubi_register_volume_notifier" [drivers/mtd/ubi/gluebi.ko]
undefined!
ERROR: "ubi_leb_read" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_leb_write" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_leb_erase" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_leb_unmap" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_open_volume" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_close_volume" [drivers/mtd/ubi/gluebi.ko] undefined!
ERROR: "ubi_unregister_volume_notifier" [drivers/mtd/ubi/gluebi.ko]
undefined!
ERROR: "onenand_scan" [drivers/mtd/onenand/onenand_sim.ko] undefined!
ERROR: "flexonenand_region" [drivers/mtd/onenand/onenand_sim.ko]
undefined!
ERROR: "onenand_addr" [drivers/mtd/onenand/onenand_sim.ko] undefined!
ERROR: "onenand_release" [drivers/mtd/onenand/onenand_sim.ko] undefined!
ERROR: "onenand_scan" [drivers/mtd/onenand/generic.ko] undefined!
ERROR: "onenand_release" [drivers/mtd/onenand/generic.ko] undefined!
ERROR: "nand_scan_tail" [drivers/mtd/nand/sm_common.ko] undefined!
ERROR: "nand_scan_ident" [drivers/mtd/nand/sm_common.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/r852.ko] undefined!
ERROR: "nand_scan" [drivers/mtd/nand/plat_nand.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/plat_nand.ko] undefined!
ERROR: "nand_default_bbt" [drivers/mtd/nand/nandsim.ko] undefined!
ERROR: "nand_scan" [drivers/mtd/nand/nandsim.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/nandsim.ko] undefined!
ERROR: "nand_scan" [drivers/mtd/nand/diskonchip.ko] undefined!
ERROR: "nand_scan_bbt" [drivers/mtd/nand/diskonchip.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/diskonchip.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/denali.ko] undefined!
ERROR: "nand_scan_tail" [drivers/mtd/nand/denali.ko] undefined!
ERROR: "nand_scan_ident" [drivers/mtd/nand/denali.ko] undefined!
ERROR: "nand_release" [drivers/mtd/nand/cafe_nand.ko] undefined!
ERROR: "nand_scan_tail" [drivers/mtd/nand/cafe_nand.ko] undefined!
ERROR: "nand_scan_ident" [drivers/mtd/nand/cafe_nand.ko] undefined!
ERROR: "nand_wait_ready" [drivers/mtd/nand/cafe_nand.ko] undefined!
ERROR: "lpddr_cmdset" [drivers/mtd/lpddr/qinfo_probe.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

Patch

diff --git a/drivers/mtd/Makefile b/drivers/mtd/Makefile
index 760abc5..3bf50bd 100644
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -30,6 +30,10 @@  obj-$(CONFIG_MTD_OOPS)		+= mtdoops.o
 nftl-objs		:= nftlcore.o nftlmount.o
 inftl-objs		:= inftlcore.o inftlmount.o
 
-obj-y		+= chips/ lpddr/ maps/ devices/ nand/ onenand/ tests/
+obj-y		+= chips/ maps/ devices/
 
+obj-$(CONFIG_MTD_TESTS)		+= tests/
+obj-$(CONFIG_MTD_LPDDR)		+= lpddr/
+obj-$(CONFIG_MTD_NAND)		+= nand/
+obj-$(CONFIG_MTD_ONENAND)	+= onenand/
 obj-$(CONFIG_MTD_UBI)		+= ubi/
diff --git a/drivers/mtd/lpddr/Makefile b/drivers/mtd/lpddr/Makefile
index da48e46..0e9be65 100644
--- a/drivers/mtd/lpddr/Makefile
+++ b/drivers/mtd/lpddr/Makefile
@@ -3,4 +3,4 @@ 
 #
 
 obj-$(CONFIG_MTD_QINFO_PROBE)	+= qinfo_probe.o
-obj-$(CONFIG_MTD_LPDDR)	+= lpddr_cmds.o
+obj-y				+= lpddr_cmds.o
diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile
index e8ab884..8fe5869 100644
--- a/drivers/mtd/nand/Makefile
+++ b/drivers/mtd/nand/Makefile
@@ -2,7 +2,7 @@ 
 # linux/drivers/nand/Makefile
 #
 
-obj-$(CONFIG_MTD_NAND)			+= nand.o
+obj-y					+= nand.o
 obj-$(CONFIG_MTD_NAND_ECC)		+= nand_ecc.o
 obj-$(CONFIG_MTD_NAND_IDS)		+= nand_ids.o
 obj-$(CONFIG_MTD_SM_COMMON) 		+= sm_common.o
diff --git a/drivers/mtd/onenand/Makefile b/drivers/mtd/onenand/Makefile
index 2b7884c..f6a8495 100644
--- a/drivers/mtd/onenand/Makefile
+++ b/drivers/mtd/onenand/Makefile
@@ -3,12 +3,12 @@ 
 #
 
 # Core functionality.
-obj-$(CONFIG_MTD_ONENAND)		+= onenand.o
+obj-y					+= onenand.o
 
 # Board specific.
 obj-$(CONFIG_MTD_ONENAND_GENERIC)	+= generic.o
 obj-$(CONFIG_MTD_ONENAND_OMAP2)		+= omap2.o
-obj-$(CONFIG_MTD_ONENAND_SAMSUNG)       += samsung.o
+obj-$(CONFIG_MTD_ONENAND_SAMSUNG)	+= samsung.o
 
 # Simulator
 obj-$(CONFIG_MTD_ONENAND_SIM)		+= onenand_sim.o
diff --git a/drivers/mtd/tests/Makefile b/drivers/mtd/tests/Makefile
index b44dcab..14adc55 100644
--- a/drivers/mtd/tests/Makefile
+++ b/drivers/mtd/tests/Makefile
@@ -1,8 +1,8 @@ 
-obj-$(CONFIG_MTD_TESTS) += mtd_oobtest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_pagetest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_readtest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_speedtest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_stresstest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_subpagetest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_torturetest.o
-obj-$(CONFIG_MTD_TESTS) += mtd_nandecctest.o
+obj-y += mtd_oobtest.o
+obj-y += mtd_pagetest.o
+obj-y += mtd_readtest.o
+obj-y += mtd_speedtest.o
+obj-y += mtd_stresstest.o
+obj-y += mtd_subpagetest.o
+obj-y += mtd_torturetest.o
+obj-y += mtd_nandecctest.o
diff --git a/drivers/mtd/ubi/Makefile b/drivers/mtd/ubi/Makefile
index c9302a5..caf0316 100644
--- a/drivers/mtd/ubi/Makefile
+++ b/drivers/mtd/ubi/Makefile
@@ -1,4 +1,4 @@ 
-obj-$(CONFIG_MTD_UBI) += ubi.o
+obj-y += ubi.o
 
 ubi-y += vtbl.o vmt.o upd.o build.o cdev.o kapi.o eba.o io.o wl.o scan.o
 ubi-y += misc.o