Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
84 lines (57 sloc) 2.89 KB
Hacking vlc
- Read this file
- Read the information present on
You will need the following tools if you plan to use the GIT version of vlc:
- Autoconf version 2.60 or later
- Automake version 1.9 or later
- gettext version 0.16.1 or later
- pkg-config
- libgcrypt 1.2 (or compatible)
After retrieving the GIT tree, you need to run the bootstrap script to
generate all the files needed to build vlc. You can then run configure.
Run ./configure --help for a description of the available options.
If you do not have the correct version of these tools, or if they are
simply not available for the operating system you plan to develop on,
you can check out a GIT tree on an OS that provides these tools (such
as a recent Linux distribution), run bootstrap, and then copy the whole
tree to your retarded OS.
There is a possibility that, at some point, automake might segfault. The
reason is unsufficient stack size, and can be easily fixed with the
`ulimit` command (or an equivalent) available in most shells. For instance
on bash 2.0, the following command solves the automake crash on Mac OS X :
ulimit -s 20000
The bootstrap sequence
The bootstrap script does the following actions:
- parse for all Makefiles in the modules/ directory that need
to be generated, and look for available modules in the corresponding file. A module "foo" exists if there is a file in
the modules/ directory which defines SOURCES_foo.
- create an m4/private.m4 from, generating m4 macros that will
be needed by
- create a file for each file found in modules/ .
- run autopoint (previously gettextize) to provide build system support
for internationalization.
- run the usual aclocal, autoheader, automake and autoconf, which create
the various files from the corresponding and the
configure script from
- fix a few files in the vlc repository that may have been altered.
How to add a module
To add a module to the repository, just add its sources to a
file. If you add a new directory you will need to create a new,
inside that directory. Do not forget to add a corresponding
Makefile line at the end of for this new file.
To have the module built, you need to add a call to VLC_ADD_PLUGIN or
VLC_ADD_BUILTINS to with your new module name as argument.
Look at other modules for guidelines on how to add build and linkage options.
After changing you will always need to rerun bootstrap and
VLC keeps a cache of its modules (in ~/.cache/vlc/ on Linux), so you'll have to
delete it (or use vlc --reset-plugins-cache). Then use vlc -vvv --color --list
to check that your plugin is seen by VLC.