summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-09-14 16:21:53 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-14 16:21:53 -0300
commitf7eb0f58685eeff5c650e8f56f04064954fff087 (patch)
treee7b15f340be99930a27881ccf6aebb9dcd3e2cf6
parent8cdbcfff94841040078b0f53189040cd4861eb2f (diff)
downloadmediapointer-dvb-s2-f7eb0f58685eeff5c650e8f56f04064954fff087.tar.gz
mediapointer-dvb-s2-f7eb0f58685eeff5c650e8f56f04064954fff087.tar.bz2
build: Don't copy data for staging builds
From: Mauro Carvalho Chehab <mchehab@redhat.com> Having to copy all changes at staging Kconfig and Makefile's are unmaintainable. Instead, auto-generate Makefiles via script. In the case of Kconfig, however, since we may have broken drivers, it is better to just include the staging Kconfig sources at the proper places. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--v4l/Kconfig.staging90
-rw-r--r--v4l/Makefile1
-rw-r--r--v4l/Makefile.staging64
-rwxr-xr-xv4l/scripts/make_makefile.pl18
4 files changed, 22 insertions, 151 deletions
diff --git a/v4l/Kconfig.staging b/v4l/Kconfig.staging
index da0a041af..d17556202 100644
--- a/v4l/Kconfig.staging
+++ b/v4l/Kconfig.staging
@@ -31,92 +31,12 @@ config STAGING_BROKEN
Say N here, except if you will be fixing the drivers
compilation.
-config VIDEO_GO7007
- tristate "Go 7007 support"
- depends on VIDEO_DEV && PCI && I2C && INPUT
- depends on SND
- select VIDEOBUF_DMA_SG
- select VIDEO_IR
- select VIDEO_TUNER
- select VIDEO_TVEEPROM
- select SND_PCM
- select CRC32
- default N
- ---help---
- This is a video4linux driver for some wierd device...
-
- To compile this driver as a module, choose M here: the
- module will be called go7007.
-
-config VIDEO_GO7007_USB
- tristate "Go 7007 USB support"
- depends on VIDEO_GO7007 && USB
- default N
- ---help---
- This is a video4linux driver for some wierd device...
-
- To compile this driver as a module, choose M here: the
- module will be called go7007-usb.
-
-config VIDEO_GO7007_USB_S2250_BOARD
- tristate "Sensoray 2250/2251 support"
- depends on VIDEO_GO7007_USB && DVB_USB
- default N
- ---help---
- This is a video4linux driver for the Sensoray 2250/2251 device
-
- To compile this driver as a module, choose M here: the
- module will be called s2250.
-
-config VIDEO_CX25821
- tristate "Conexant cx25821 support"
- depends on DVB_CORE && VIDEO_DEV && PCI && I2C && INPUT
- select I2C_ALGOBIT
- select VIDEO_BTCX
- select VIDEO_TVEEPROM
- select VIDEO_IR
- select VIDEOBUF_DVB
- select VIDEOBUF_DMA_SG
- select VIDEO_CX25840
- select VIDEO_CX2341X
- ---help---
- This is a video4linux driver for Conexant 25821 based
- TV cards.
-
- To compile this driver as a module, choose M here: the
- module will be called cx25821
-
-config VIDEO_CX25821_ALSA
- tristate "Conexant 25821 DMA audio support"
- depends on VIDEO_CX25821 && SND && EXPERIMENTAL
- select SND_PCM
- ---help---
- This is a video4linux driver for direct (DMA) audio on
- Conexant 25821 based capture cards using ALSA.
-
- It only works with boards with function 01 enabled.
- To check if your board supports, use lspci -n.
- If supported, you should see 14f1:8801 or 14f1:8811
- PCI device.
-
- To compile this driver as a module, choose M here: the
- module will be called cx25821-alsa.
-
-config VIDEO_TM6000
- tristate "TV Master TM5600/6000 driver"
- select VIDEO_V4L2
- select TUNER_XC2028
- select VIDEO_USB_ISOC
- select VIDEOBUF_VMALLOC
- depends on STAGING_BROKEN
- help
- Support for TM5600/TM6000 USB Device
-
- Since these cards have no MPEG decoder onboard, they transmit
- only compressed MPEG data over the usb bus, so you need
- an external software decoder to watch TV on your computer.
+source "../linux/drivers/staging/go7007/Kconfig"
+source "../linux/drivers/staging/cx25821/Kconfig"
- Say Y if you own such a device and want to use it.
+if STAGING_BROKEN
+source "../linux/drivers/staging/tm6000/Kconfig"
+endif
endmenu
diff --git a/v4l/Makefile b/v4l/Makefile
index 5f9e2f193..42618efa6 100644
--- a/v4l/Makefile
+++ b/v4l/Makefile
@@ -111,7 +111,6 @@ endif
ifeq ($(makefile-media),1)
-include $(obj)/Makefile.media
-include $(obj)/Makefile.sound
--include $(obj)/Makefile.staging
endif
-include $(obj)/.kconfig.dep
diff --git a/v4l/Makefile.staging b/v4l/Makefile.staging
deleted file mode 100644
index 0c60fbb1a..000000000
--- a/v4l/Makefile.staging
+++ /dev/null
@@ -1,64 +0,0 @@
-# From drivers/staging/go7007/Makefile
-
-#obj-m += go7007.o go7007-usb.o snd-go7007.o wis-saa7115.o wis-tw9903.o \
- wis-uda1342.o wis-sony-tuner.o wis-saa7113.o wis-ov7640.o \
- wis-tw2804.o
-
-
-obj-$(CONFIG_VIDEO_GO7007) += go7007.o
-obj-$(CONFIG_VIDEO_GO7007_USB) += go7007-usb.o
-obj-$(CONFIG_VIDEO_GO7007_USB_S2250_BOARD) += s2250.o
-
-go7007-objs += go7007-v4l2.o go7007-driver.o go7007-i2c.o go7007-fw.o \
- snd-go7007.o wis-saa7113.o
-
-s2250-objs += s2250-board.o s2250-loader.o
-
-# Uncompile when the saa7134 patches get into upstream
-#ifneq ($(CONFIG_VIDEO_SAA7134),)
-#obj-$(CONFIG_VIDEO_SAA7134) += saa7134-go7007.o
-#EXTRA_CFLAGS += -Idrivers/media/video/saa7134
-#endif
-
-ifneq ($(CONFIG_VIDEO_GO7007_USB_S2250_BOARD),)
-EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-usb
-endif
-
-EXTRA_CFLAGS += -Idrivers/staging/saa7134
-EXTRA_CFLAGS += -Idrivers/media/dvb/frontends
-EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core
-
-KDIRA := /lib/modules/$(KERNELRELEASE)/kernel
-
-staging-install install-staging::
- @dir="drivers/staging/go7007"; \
- files='go7007.ko go7007-usb.ko s2250.ko'; \
- echo -e "\nInstalling $(KDIRA)/$$dir files:"; \
- install -d $(KDIRA)/$$dir; \
- for i in $$files;do if [ -e $$i ]; then echo -n "$$i "; \
- install -m 644 -c $$i $(KDIRA)/$$dir; fi; done; echo;
-
-# From drivers/staging/cx25821/Makefile
-
-cx25821-objs := cx25821-core.o cx25821-cards.o cx25821-i2c.o cx25821-gpio.o \
- cx25821-medusa-video.o cx25821-video.o cx25821-video0.o cx25821-video1.o \
- cx25821-video2.o cx25821-video3.o cx25821-video4.o cx25821-video5.o \
- cx25821-video6.o cx25821-video7.o cx25821-vidups9.o cx25821-vidups10.o \
- cx25821-audups11.o cx25821-video-upstream.o cx25821-video-upstream-ch2.o \
- cx25821-audio-upstream.o cx25821-videoioctl.o
-
-obj-$(CONFIG_VIDEO_CX25821) += cx25821.o
-obj-$(CONFIG_VIDEO_CX25821_ALSA) += cx25821-alsa.o
-
-EXTRA_CFLAGS += -Idrivers/media/video
-
-EXTRA_CFLAGS += $(extra-cflags-y) $(extra-cflags-m)
-
-# From drivers/staging/tm6000/Makefile
-
-tm6000-objs := tm6000-cards.o \
- tm6000-core.o \
- tm6000-i2c.o \
- tm6000-video.o
-
-obj-$(CONFIG_VIDEO_TM6000) += tm6000.o
diff --git a/v4l/scripts/make_makefile.pl b/v4l/scripts/make_makefile.pl
index 35ab7dddf..b49f960d1 100755
--- a/v4l/scripts/make_makefile.pl
+++ b/v4l/scripts/make_makefile.pl
@@ -1,5 +1,6 @@
#!/usr/bin/perl
use FileHandle;
+use File::Find;
my %instdir = ();
@@ -185,11 +186,23 @@ sub removeubuntu()
print OUT " fi\n";
}
+sub parse_dir()
+{
+ my $file = $File::Find::name;
+
+ return if (!($file =~ /Makefile$/));
+ open_makefile($file);
+}
+
+##############################################################################
+
getobsolete();
open OUT, '>Makefile.media' or die 'Unable to write Makefile.media';
open_makefile('../linux/drivers/media/Makefile');
+find({wanted => \&parse_dir, no_chdir => 1}, '../linux/drivers/staging');
+
# Creating Install rule
print OUT "media-install::\n";
@@ -234,9 +247,12 @@ while ( my ($dir, $files) = each(%instdir) ) {
print OUT " rm \$(DESTDIR)\$(KDIR26)/$dir/\$\$i.gz; fi; done; echo;\n\n";
}
+my $mediadeps = join(" \\\n", map("\t../linux/drivers/media/$_/Makefile", keys %instdir));
+$mediadeps =~ s,\.\./linux/drivers/media/\.\.,..,g;
+
# Print dependencies of Makefile.media
print OUT "Makefile.media: ../linux/drivers/media/Makefile \\\n";
print OUT "\tobsolete.txt \\\n";
-print OUT join(" \\\n", map("\t../linux/drivers/media/$_/Makefile", keys %instdir));
+print OUT $mediadeps;
print OUT "\n";
close OUT;