Difference between revisions of "Hacker Guide/VLC source tree"

From VideoLAN Wiki
Jump to navigation Jump to search
m
m (applied some polish)
Line 1: Line 1:
This page lists the directories in the source tree of VLC to give an overview of the code.  Because VLC has evolved with not so much accumulation in mind, when a new coder looks at the code, s/he is terrified by the abundance of directories. This page was prepared to remedy that situation.
+
This page lists the directories in the source tree of VLC to give an overview of the code.  Because VLC has evolved with not so much accumulation in mind, when a new coder looks at the code, s/he is terrified by the abundance of directories. This page was prepared to remedy that situation.
  
 
The directories are listed in alphabetical order, with an overview of their contents on the right.
 
The directories are listed in alphabetical order, with an overview of their contents on the right.
Line 15: Line 15:
 
|-
 
|-
 
|extras
 
|extras
| See the table on this same page
+
| See below
 
|-
 
|-
 
|include                
 
|include                
|Header files for vlc
+
|Header files for VLC
 
|-
 
|-
 
|libs                
 
|libs                
|Containts the loader (win32 dmo codec loading on Linux) and a SRTP library
+
|Contains the loader (win32 dmo codec loading on Linux) and a SRTP library
 
|-
 
|-
 
|lxdialog                
 
|lxdialog                
Line 30: Line 30:
 
|-
 
|-
 
|modules
 
|modules
|The most important directory with src/. See [[Modules source tree]].
+
|The most important directory besides src/. ''See [[Modules source tree]].''
 
|-
 
|-
 
|po
 
|po
Line 42: Line 42:
 
|-
 
|-
 
|src
 
|src
|The most important directory with modules/. See [[src source tree]]
+
|The most important directory besides modules/. ''See [[src source tree]].''
 
|-
 
|-
 
|test
 
|test
Line 49: Line 49:
 
|}
 
|}
  
 +
== Contents of extras ==
 
{| class="wikitable"
 
{| class="wikitable"
 
| extras/analyser
 
| extras/analyser
| contains some code style editor (vim, emacs) macro and some vlagrind suppressions
+
| contains some code style editor (vim, emacs) macro and some valgrind suppressions
 
|-
 
|-
 
| extras/buildsystem
 
| extras/buildsystem
Line 57: Line 58:
 
|-
 
|-
 
| extras/contrib
 
| extras/contrib
| for required libraries (contains Makefiles to automatically download and compile (or cross-compile) and patch those. Please first attempt to get the development headers precompiled for your distribution.
+
| for required libraries (contains Makefiles to automatically download and compile (or cross-compile) and patch those). Please first attempt to get the development headers precompiled for your distribution.
 
|-
 
|-
 
| extras/deprecated
 
| extras/deprecated
Line 63: Line 64:
 
|-
 
|-
 
| extras/misc
 
| extras/misc
| contains files that don't fit in the other categories
+
| contains files that don't fit into any other category
 
|-
 
|-
 
| extras/package
 
| extras/package

Revision as of 11:20, 7 February 2008

This page lists the directories in the source tree of VLC to give an overview of the code. Because VLC has evolved with not so much accumulation in mind, when a new coder looks at the code, s/he is terrified by the abundance of directories. This page was prepared to remedy that situation.

The directories are listed in alphabetical order, with an overview of their contents on the right.

Directory Name Directory Explanation
bindings Java, CIL and Python bindings
doc Documentation (not up-to-date)
extras See below
include Header files for VLC
libs Contains the loader (win32 dmo codec loading on Linux) and a SRTP library
lxdialog Make menuconfig files
m4 Macro files needed for automake and autoconf
modules The most important directory besides src/. See Modules source tree.
po i18n files
projects Projects based on libvlc, Mozilla plugin, ActiveX plugin and MacOS FrameWork
share icons, scripts to make VLC the default player etc.
src The most important directory besides modules/. See src source tree.
test scripts to see if everything is OK

Contents of extras

extras/analyser contains some code style editor (vim, emacs) macro and some valgrind suppressions
extras/buildsystem contains alternative buildsystems
extras/contrib for required libraries (contains Makefiles to automatically download and compile (or cross-compile) and patch those). Please first attempt to get the development headers precompiled for your distribution.
extras/deprecated contains deprecated files
extras/misc contains files that don't fit into any other category
extras/package contains distribution specific files such as ipkg, different rpm spec files, win32 and Mac OS X installation files.