Makefile changes: attempted conversion to new format

From: Rich Baum (baumr1@coral.indstate.edu)
Date: Sat Jul 15 2000 - 11:07:34 EST


I've noticed that the format of Makefiles has been changed. I was
wondering if help was needed to change all makefiles to the new
format. I've tried converting one so far. Take a look at my patch
and see if I'm on the right track or if I should mess with converting
any other Makefiles. If someone is already working on this let me
know.

Here is the patch:

diff -ru linux-2.4.0test4/drivers/block/paride/Makefile linux-
rpb/drivers/block/paride/Makefile
--- linux-2.4.0test4/drivers/block/paride/Makefile Tue Dec 22
11:29:00 1998
+++ linux-rpb/drivers/block/paride/Makefile Sat Jul 15 10:18:01 2000
@@ -19,166 +19,60 @@
 MI_OBJS :=
 MIX_OBJS :=
 
-ifeq ($(CONFIG_PARIDE),y)
- LX_OBJS += paride.o
-else
- ifeq ($(CONFIG_PARIDE),m)
- MX_OBJS += paride.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_PD),y)
- LX_OBJS += pd.o
-else
- ifeq ($(CONFIG_PARIDE_PD),m)
- M_OBJS += pd.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_PCD),y)
- LX_OBJS += pcd.o
-else
- ifeq ($(CONFIG_PARIDE_PCD),m)
- M_OBJS += pcd.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_PF),y)
- LX_OBJS += pf.o
-else
- ifeq ($(CONFIG_PARIDE_PF),m)
- M_OBJS += pf.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_PT),y)
- LX_OBJS += pt.o
-else
- ifeq ($(CONFIG_PARIDE_PT),m)
- M_OBJS += pt.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_PG),y)
- LX_OBJS += pg.o
-else
- ifeq ($(CONFIG_PARIDE_PG),m)
- M_OBJS += pg.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_ATEN),y)
- LX_OBJS += aten.o
-else
- ifeq ($(CONFIG_PARIDE_ATEN),m)
- M_OBJS += aten.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_BPCK),y)
- LX_OBJS += bpck.o
-else
- ifeq ($(CONFIG_PARIDE_BPCK),m)
- M_OBJS += bpck.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_COMM),y)
- LX_OBJS += comm.o
-else
- ifeq ($(CONFIG_PARIDE_COMM),m)
- M_OBJS += comm.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_DSTR),y)
- LX_OBJS += dstr.o
-else
- ifeq ($(CONFIG_PARIDE_DSTR),m)
- M_OBJS += dstr.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_KBIC),y)
- LX_OBJS += kbic.o
-else
- ifeq ($(CONFIG_PARIDE_KBIC),m)
- M_OBJS += kbic.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_EPAT),y)
- LX_OBJS += epat.o
-else
- ifeq ($(CONFIG_PARIDE_EPAT),m)
- M_OBJS += epat.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_EPIA),y)
- LX_OBJS += epia.o
-else
- ifeq ($(CONFIG_PARIDE_EPIA),m)
- M_OBJS += epia.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_FIT2),y)
- LX_OBJS += fit2.o
-else
- ifeq ($(CONFIG_PARIDE_FIT2),m)
- M_OBJS += fit2.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_FIT3),y)
- LX_OBJS += fit3.o
-else
- ifeq ($(CONFIG_PARIDE_FIT3),m)
- M_OBJS += fit3.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_FRPW),y)
- LX_OBJS += frpw.o
-else
- ifeq ($(CONFIG_PARIDE_FRPW),m)
- M_OBJS += frpw.o
- endif
-endif
-
-
-ifeq ($(CONFIG_PARIDE_FRIQ),y)
- LX_OBJS += friq.o
-else
- ifeq ($(CONFIG_PARIDE_FRIQ),m)
- M_OBJS += friq.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_ON20),y)
- LX_OBJS += on20.o
-else
- ifeq ($(CONFIG_PARIDE_ON20),m)
- M_OBJS += on20.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_ON26),y)
- LX_OBJS += on26.o
-else
- ifeq ($(CONFIG_PARIDE_ON26),m)
- M_OBJS += on26.o
- endif
-endif
-
-ifeq ($(CONFIG_PARIDE_KTTI),y)
- LX_OBJS += ktti.o
-else
- ifeq ($(CONFIG_PARIDE_KTTI),m)
- M_OBJS += ktti.o
- endif
-endif
+# Object file lists.
+
+obj-y :=
+obj-m :=
+obj-n :=
+obj- :=
+
+export-objs :=
+list-multi :=
+
+obj-$(CONFIG_PARIDE) += paride.o
+obj-$(CONFIG_PARIDE_PD) += pd.o
+obj-$(CONFIG_PARIDE_PCD) += pcd.o
+obj-$(CONFIG_PARIDE_PF) += pf.o
+obj-$(CONFIG_PARIDE_PT) += pt.o
+obj-$(CONFIG_PARIDE_PG) += pg.o
+obj-$(CONFIG_PARIDE_ATEN) += aten.o
+obj-$(CONFIG_PARIDE_BPCK) += bpck.o
+obj-$(CONFIG_PARIDE_COMM) += comm.o
+obj-$(CONFIG_PARIDE_DSTR) += dstr.o
+obj-$(CONFIG_PARIDE_KBIC) += kbic.o
+obj-$(CONFIG_PARIDE_EPAT) += epat.o
+obj-$(CONFIG_PARIDE_EPIA) += epia.o
+obj-$(CONFIG_PARIDE_FIT2) += fit2.o
+obj-$(CONFIG_PARIDE_FIT3) += fit3.o
+obj-$(CONFIG_PARIDE_FRPW) += frpw.o
+obj-$(CONFIG_PARIDE_FRIQ) += friq.o
+obj-$(CONFIG_PARIDE_ON20) += on20.o
+obj-$(CONFIG_PARIDE_ON26) += on26.o
+obj-$(CONFIG_PARIDE_KTTI) += ktti.0
+
+# Extract lists of the multi-part drivers.
+# The 'int-*' lists are the intermediate files used to build the multis.
+
+multi-y := $(filter $(list-multi), $(obj-y))
+multi-m := $(filter $(listimulti), $(obj-m))
+int-y := $(sort $(foreach m, $(multi-y), $($(basename $(m))-
objs)))
+int-m := $(sort $(foreach m, $(multi-m), $($(basename $(m))-
objs)))
+
+# Files that are both resident and modulare: remove from modular.
+
+obj-m := $(filter-out $(obj-y), $(obj-m))
+int-m := $(filter-out $(int-y), $(int-m))
+
+# Take multi-part drivers out of obj-y and put components in.
+
+obj-y := $(filter-out $(list-multi), $(obj-y)) $(int-y)
+
+# Translate to Rules.make lists.
+
+O_OBJS := $(filter-out $(export-objs), $(obj-y))
+OX_OBJS := $(filter $(export-objs), $(obj-y))
+M_OBJS := $(sort $(filter-out $(export-objs), $(obj-m)))
+MX_OBJS := $(sort $(filter $(export-objs), $(obj-m)))
 
 include $(TOPDIR)/Rules.make

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Jul 15 2000 - 21:00:22 EST