Age | Commit message (Collapse) | Author |
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
V4L/DVB tree keeps backward compatibility with vanilla 2.6.x kernels.
However, if some API changes happens on 2.6.x.y, this wouldn't be
handled.
This patch improves the compatibility capabilities of the tree by
allowing customized scripts to be added on make_config_compat.pl.
So, when generating config-compat.h, some compat checks can be done
against the kernel tree.
The practical effect is allowing compilation on 2.6.17.x trees, used by
several distros, where some changes on netdevice.h affects dvb-net,
stopping its compilation.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Everytime a build is started, the build system creates links to every
single source file from the v4l directory. This patch changes the
command used, to one that is about 15x faster. When building just one
file, the creating the links could take the majority of the total build
time.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
If Module.symvers is kept around, modpost will think symbols from
previous builds are still defined when in the current build they are not.
This leads to undefined symbol warnings getting masked.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
It took three core maintainers, over four years of work, eight new i2c
modules, eleven new V4L2 ioctls, three new DVB video ioctls, a Sliced
VBI API, a new MPEG encoder API, an enhanced DVB video MPEG decoding
API, major YUV/OSD contributions from Ian and John, web/wiki/svn/trac
support from Axel Thimm, (hardware) support from Hauppauge, support and
assistance from the v4l-dvb people and the many, many users of ivtv to
finally make it possible to merge this driver into the kernel.
Thank you all!
Signed-off-by: Kevin Thayer <nufan_wfk@yahoo.com>
Signed-off-by: Chris Kennedy <c@groovy.org>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: John P Harvey <john.p.harvey@btinternet.com>
Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Add -include linux/version.h to the cflags. Now code can have backward
compatibility test without including compat.h first.
Linux headers included from compat.h are removed, so that code will get
the same headers when compiling in v4l-dvb as it does in the kernel.
Many drivers have compat.h moved to the end of their include list, as
this lets compat.h do things it can't do at the beginning. Such as test
of something is defined to include compat code, or to put a wrapper
around a function without changing the function's name.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
The kernel's config settings from autoconf.h are overridden by the file
config-compat.h, which is included from compat.h. Code compiled before
compat.h is included will see the kernel's settings, while code compiled
after will see v4l-dvb's version of the settings. This has caused hard
to track down bugs on more than one occasion.
Always including compat.h first will not work, as some of the
compatibility code requires that certain kernel headers be included first
in order to work correctly.
This patch makes config-compat.h be included second (after the kernel's
autoconf.h) for every file by using a gcc "-include" command line option,
the same way the kernel autoconf.h file is included. This should
eliminate the problem of config-compat.h not being included in the right
spot.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
make menuconfig used to need to build two kernel configuration programs,
mconf and lxdialog. In 2.6.19-rc1, this was changed so there no longer
was a separate lxdialog binary, it was integrated into mconf.
This adapts the v4l-dvb Makefile to check for lxdialog/Makefile, if it's
not present then no lxdialog binary needs to be built. The rules and
dependencies on lxdialog will be omitted from the v4l-dvb Makefile in
that case.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Darren Salt <linux@youmustbejoking.demon.co.uk>
Signed-off-by: Darren Salt <linux@youmustbejoking.demon.co.uk>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
linux/config.h has been deprecated for some time and is now gone. Switch
to using linux/autoconf.h, which is where the config defines have been
since at least 2.4 anyway.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
ivtvdriver.org is no longer working... but www.ivtvdriver.org still works.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
v4l/Makefile not only calls the kernel Makefile to do the module
building, but it is in turn included by the kernel Makefile. This means
_all_ the rules in v4l/Makefile get used by the kernel Makefile when it
tries to build the modules. Some of these rules, for files like .config,
Kconfig, .version, confuse the kernel building process. The kernel make
thinks, "I need to remake _my_ Kconfig file because my .version file is
out of date." But that rule was never supposed to be used by the kernel,
it is just for v4l!
This is fixed by putting $(obj) in front of all these files' rules. That
way the kernel will never think the rules refer to its files and try to
use them.
Really, this whole business of having the kernel Makefile include
v4l/Makefile is rather complex. It might be a good idea to create
v4l/Kbuild, which the kernel will use in preference to v4l/Makefile, so
that we don't have to worry about v4l/Makefile getting used in two
different contexts.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Create a symlink, v4l/oss, that points back to the v4l directory. This
way code that includes "oss/something.h" will find the header files it
wants (which has been linked to from v4l). The link will be created only
if it doesn't exist and deleted by distclean.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Both .config and Kconfig are created at the same time by the same
program, make_kconfig.pl. make does not understand the concept of
a program which creates two targets and cannot handle this properly.
Everything works with this patch, but in some cases make -j will run
make_kconfig.pl twice at the same time. This works, one script will just
overwrite the output of the other, but it looks bad. Without make -j,
everything works as it should and make_kconfig.pl isn't run more than it
needs to be.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
links is a phony target, so it is always remade. The config targets
don't need the source links, so there is no need for them to have links
as a depenedency.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
The make_makefile.pl script is re-written. The old one was nasty. This
one will correctly handle Makefile lines that are continued with a
backslash. It will also generate a dependency list of the Makefile used
to create Makefile.media. This way if any change, Makefile.media will be
automatically re-made by make.
The whole business where make_makefile.pl would call make_kconfig.pl is
removed.
The underlying logic of the main Makefile is completely changed. Make
has a feature where it will make sure any included files are up-to-date,
and then restart itself if any were updated. We now take advantage of
this feature.
Detect when make is building only targets which do not need include files
like .myconfig or Makefile.media, and don't include them in those cases.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Add the ability to the make_kconfig.pl script to create a file
named ".kconfig.dep" which can be included in a Makefile and defines the
dependencies of the v4l/Kconfig file. That is, all the individual
Kconfig files that were used to make it.
Added a rule to v4l/Makefile to remake Kconfig when needed, and include
.kconfig.deps to get Kconfig's dependencies. Adjust the config targets
so that they depend on Kconfig, rather than including the commands to
create Kconfig in the config targets' scripts. The config targets no
longer depend on .version, as they don't need it themselves. Rather,
it's Kconfig that needs .version, so it's made one of Kconfig's
dependencies.
Add Kconfig as a dependency to .myconfig, it should be there since the
make_myconfig.pl script uses Kconfig.
Now if you change any of the Kconfig files, the v4l/Kconfig file will
automatically get remade. This will in turn cause .myconfig to be
re-made, and any new options will appear in .myconfig (turned off).
Ideally this should trigger some kind of oldconfig system to update
.config.
Fix the .version rule so that instead of re-creating .version every time,
it is only created when it didn't already exist. Since Kconfig depends
on .version, it was getting re-created every time too. If .version
existed, it would just get re-created to the same thing anyway.
Stop echoing the echo srcdir command itself and don't echo anything if
SRCDIR is blank.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Now, make will compile also the audio drivers at the tree.
By default, they will not be installed. A new option were
added to install those files:
make sound-install
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
This will allow generating periodic snapshots of the tree.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Also, fixes a trouble with make 3.81 introduced by the latest patch.
make 3.81 doesn't work fine with something like:
'foo'\
It should be, instead:
'foo' \
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Use a (make 3.81 safe!) in-line perl script to generate config-compat.h
from .myconfig. The output will be more like the Kernel's output:
Options set to 'm' will define CONFIG_WHATEVER_MODULE to 1, rather than
define CONFIG_WHATEVER to m.
Options set to 'y' to be defined to 1 instead of y.
Options that are off will be #undef'ed, rather that omitted, so that they
will override the settings from the kernel autoconf.h file.
The last change will fix a problem where certain options, like CinergyT2
tuning and AV7110 firmware, wouldn't work properly if they were on in the
kernel but off for v4l-dvb Hg.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
On make 3.81, backslash isn't removed anymore when inside of a single
quotted string. This makes make release to fail, since perl won't understand
the backslash.
This patch just make all script into one line. Bad to understand, but, at least,
it will work fine with both GNU make 3.80 and make 3.81.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Building system now looks kernel config.h and autoconf.h files,
seeking for the compiled options at kernel. If something is missing,
it will disable compilation for that driver, printing a warning message.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
There were a circular dependency at scripts/make_makefile.pl that were
affecting mostly building with GNU make 3.81.
Also, scripts/make_noconfig.pl is, in fact, building .myconfig file, so,
better to name it as make_myconfig.pl.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
distclean was not cleaning the v4l/.myconfig file, or the symlinks made
for the lxdialog program. This caused problems especially if you were
switching between different kernel versions for testing.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Fix missing $() on variable name in dvb/ttpci/Makefile, prevented AV7110
firmware from building.
Remove unnecessary and problematic defines in cflags from v4l/Makefile,
they conflict with the kernel's autoconf.h and are are overridden by
v4l/config-compat.h anyway.
Fix AV7110 firmware dependencies so that parallel builds work correctly.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
insmod.sh were a hack, were somebody should check all dependencies
for each module. Several dependencies were mising, and, to keep it
updated for 178 modules is really hard.
rmmod.pl is a "smart" script: it does:
1) Check, for each found module on v4l, the correct order for each
module;
2) Check any dependencies for out-of-tree modules;
3) rmmod/insmod at the correct order;
4) It have a table with the suggested debug parameter for each module.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Since v4l-dvb now uses the kernel's config system, it needs certain kernel
binaries like qconf, mconf, and lxdialog to run the config targets. The
kernel's Makefile is not kind enough to give us a target to just build these
programs. What this patch does is introduce a new makefile,
Makefile.kernel, which includes the kernel's top-level Makefile. Then adds
some new "v4l-*" targets which just build the kernel config programs.
The main v4l Makefile is patched to add the necessary kernel conf programs
as dependencies to their respective config targets. Rules to build the
kernel conf programs are added which invoke a sub-make with the new
Makefile.kernel. These rules are only invoked when the kernel conf programs
needed don't yet exist. If they already exist, no write access to the
kernel source tree is needed.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
When building in-kernel, compile-time build options are passed into the
compiler using '#include <linux/config.h>' . This file #include's
<linux/autoconf.h> , which is created on the fly by the kbuild system.
However, this does not work correctly when building from the mercurial
repository, since the kernel is built indepentently of v4l/.myconfig
This creates a "config-compat.h", which will be #include'd by compat.h
and will emulate <linux/config.h> for the local build.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Now, with make DIR=<foo>, it is possible to compile V4L/DVB with a
non-installed dir. This will allow better checking on compatibility issues
(especially for -git tree)
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Makefile.media requires first .version. Fixed.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
This patch moves the 'make install' and 'make rminstall' rules into the
central Makefile. This allows for us to assign dependencies to these rules,
so that modules built as a reult of a tree-merge don't have to be installed
separately.
Now, instead of doing 'make install && make ivtv-install', the simple
command, 'make install' will call the sub-install rules and take care
of the entire task.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Included a INSTALL file
make help shows the INSTALL file
added make release to force compiling against a specified version
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Now, make will first check for the presense of *conf and lxconfig.
if already found at kernel tree, it will use without recompiling.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Now, make_kconfig.sh will check for boolean/tristate config
vars and handle it properly.
Also, make allyesconfig/allmodconfig will use make_kconfig.sh
to generate .myconfig instead of conf -m. This way, make all will
not require priviledges at kernel tree.
write access to kernel tree is still required for make menuconfig/
make xconfig/make qconfig.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
The EXTRA_CFLAGS complile-time options are determined by kbuild.
CONFIG_VIDEO_ADV_DEBUG is set in drivers/media/video/[Makefile|Kconfig].
Setting this flag in the local Makefile is redundant.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
The EXTRA_CFLAGS complile-time options for pvrusb2 are determined by kbuild,
and are set in drivers/media/video/pvrusb2/[Makefile|Kconfig]. Setting
these flags in the local Makefile is redundant.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
This patch adds v4l makefile capabilities to build kernel config required
files to allow make menuconfig/xconfig/gconfig to work. After this patch,
menu support is more smooth.
Of course, root privileges are required to build those stuff.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
The merged ivtv build functionality was lost in the new build configuration.
This patch restores the build and install functionality for both ivtv and
cx88-ivtv.
make ivtv enable merged ivtv build
make cx88-ivtv enable cx88-ivtv emulation mode for cx88-blackbird
make ivtv-up update ivtv sources using subversion
make ivtv-install install modules
make ivtv-rminstall remove modules
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
Now, "make clean" only removes the intermediate files and keeps
the .config avoiding need to reconfigure all stuff.
To cleanup all config, "make distclean" is provided.
Thanks-to: C.Y.M <syphir@syphir.sytes.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|