patch-2.2.19 linux/drivers/isdn/Makefile
Next file: linux/drivers/isdn/Rules.make
Previous file: linux/drivers/isdn/Config.in
Back to the patch index
Back to the overall index
- Lines: 196
- Date:
Sun Mar 25 11:37:31 2001
- Orig file:
v2.2.18/drivers/isdn/Makefile
- Orig date:
Sun Mar 25 11:13:06 2001
diff -u --new-file --recursive --exclude-from /usr/src/exclude v2.2.18/drivers/isdn/Makefile linux/drivers/isdn/Makefile
@@ -1,141 +1,56 @@
-SUB_DIRS :=
-MOD_SUB_DIRS :=
-ALL_SUB_DIRS := icn pcbit hisax avmb1 act2000 eicon divert
-
-L_OBJS :=
-LX_OBJS :=
-M_OBJS :=
-MX_OBJS :=
-O_OBJS :=
-OX_OBJS :=
-L_TARGET :=
-O_TARGET :=
-
-ifeq ($(CONFIG_ISDN),y)
- L_TARGET := isdn.a
- L_OBJS += isdn_net.o isdn_tty.o isdn_cards.o isdn_v110.o
- LX_OBJS += isdn_common.o
- ifdef CONFIG_ISDN_PPP
- L_OBJS += isdn_ppp.o
- endif
- ifdef CONFIG_ISDN_X25
- L_OBJS += isdn_x25iface.o
- L_OBJS += isdn_concap.o
- endif
- ifdef CONFIG_ISDN_AUDIO
- L_OBJS += isdn_audio.o
- ifdef CONFIG_ISDN_TTY_FAX
- L_OBJS += isdn_ttyfax.o
- endif
- endif
-else
- ifeq ($(CONFIG_ISDN),m)
- M_OBJS += isdn.o
- O_TARGET += isdn.o
- O_OBJS += isdn_net.o isdn_tty.o isdn_v110.o
- OX_OBJS += isdn_common.o
- ifdef CONFIG_ISDN_PPP
- O_OBJS += isdn_ppp.o
- M_OBJS += isdn_bsdcomp.o
- endif
- ifdef CONFIG_ISDN_X25
- O_OBJS += isdn_x25iface.o
- O_OBJS += isdn_concap.o
- endif
- ifdef CONFIG_ISDN_AUDIO
- O_OBJS += isdn_audio.o
- ifdef CONFIG_ISDN_TTY_FAX
- O_OBJS += isdn_ttyfax.o
- endif
- endif
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DIVERSION),y)
- ifeq ($(CONFIG_MODULES),y)
- MOD_SUB_DIRS += divert
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_HISAX),y)
- L_OBJS += hisax/hisax.o
- SUB_DIRS += hisax
- MOD_SUB_DIRS += hisax
-else
- ifeq ($(CONFIG_ISDN_DRV_HISAX),m)
- MOD_SUB_DIRS += hisax
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_ICN),y)
- L_OBJS += icn/icn_obj.o
- SUB_DIRS += icn
- MOD_SUB_DIRS += icn
-else
- ifeq ($(CONFIG_ISDN_DRV_ICN),m)
- MOD_SUB_DIRS += icn
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_PCBIT),y)
- L_OBJS += pcbit/pcbit.o
- SUB_DIRS += pcbit
- MOD_SUB_DIRS += pcbit
-else
- ifeq ($(CONFIG_ISDN_DRV_PCBIT),m)
- MOD_SUB_DIRS += pcbit
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_SC),y)
- L_OBJS += sc/sc.o
- SUB_DIRS += sc
- MOD_SUB_DIRS += sc
-else
- ifeq ($(CONFIG_ISDN_DRV_SC),m)
- MOD_SUB_DIRS += sc
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_AVMB1),y)
- L_OBJS += avmb1/avmb1.o
- SUB_DIRS += avmb1
- MOD_SUB_DIRS += avmb1
-else
- ifeq ($(CONFIG_ISDN_DRV_AVMB1),m)
- MOD_SUB_DIRS += avmb1
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_LOOP),y)
- L_OBJS += isdnloop/isdnloop.o
- SUB_DIRS += isdnloop
- MOD_SUB_DIRS += isdnloop
-else
- ifeq ($(CONFIG_ISDN_DRV_LOOP),m)
- MOD_SUB_DIRS += isdnloop
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_ACT2000),y)
- L_OBJS += act2000/act2000.o
- SUB_DIRS += act2000
- MOD_SUB_DIRS += act2000
-else
- ifeq ($(CONFIG_ISDN_DRV_ACT2000),m)
- MOD_SUB_DIRS += act2000
- endif
-endif
-
-ifeq ($(CONFIG_ISDN_DRV_EICON),y)
- L_OBJS += eicon/eicon.o
- SUB_DIRS += eicon
- MOD_SUB_DIRS += eicon
-else
- ifeq ($(CONFIG_ISDN_DRV_EICON),m)
- MOD_SUB_DIRS += eicon
- endif
-endif
+# Makefile for the kernel ISDN subsystem and device drivers.
-include $(TOPDIR)/Rules.make
+# The target object and module list name.
+O_TARGET := isdn.a
+
+# Objects that export symbols.
+
+export-objs := isdn_common.o
+
+# Multipart objects.
+
+list-multi := isdn.o
+isdn-objs := isdn_net.o isdn_tty.o isdn_v110.o isdn_common.o
+
+# Optional parts of multipart objects.
+
+isdn-objs-$(CONFIG_ISDN_PPP) += isdn_ppp.o
+isdn-objs-$(CONFIG_ISDN_X25) += isdn_concap.o isdn_x25iface.o
+isdn-objs-$(CONFIG_ISDN_AUDIO) += isdn_audio.o
+isdn-objs-$(CONFIG_ISDN_TTY_FAX) += isdn_ttyfax.o
+isdn-objs-$(CONFIG_ISDN_WITH_ABC) += isdn_dwabc.o
+
+isdn-objs += $(isdn-objs-y)
+
+# Ordering constraints: isdn.o first, rest doesn't matter
+
+# Each configuration option enables a list of files.
+
+obj-$(CONFIG_ISDN) += isdn.o
+obj-$(CONFIG_ISDN_PPP_BSDCOMP) += isdn_bsdcomp.o
+
+# Object files in subdirectories
+
+mod-subdirs := avmb1 eicon
+subdir-$(CONFIG_ISDN_DIVERSION) += divert
+subdir-$(CONFIG_ISDN_DRV_HISAX) += hisax
+subdir-$(CONFIG_ISDN_DRV_ICN) += icn
+subdir-$(CONFIG_ISDN_DRV_PCBIT) += pcbit
+subdir-$(CONFIG_ISDN_DRV_SC) += sc
+subdir-$(CONFIG_ISDN_CAPI) += avmb1
+subdir-$(CONFIG_ISDN_DRV_LOOP) += isdnloop
+subdir-$(CONFIG_ISDN_DRV_ACT2000) += act2000
+subdir-$(CONFIG_ISDN_DRV_EICON) += eicon
+subdir-$(CONFIG_HYSDN) += hysdn
+
+obj-y += $(addsuffix /vmlinux-obj.o, $(subdir-y))
+
+# The global Rules.make.
+
+include $(TOPDIR)/drivers/isdn/Rules.make
+
+# Link rules for multi-part drivers.
+
+isdn.o: $(isdn-objs)
+ $(LD) -r -o $@ $(isdn-objs)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)