adopt to winsock
[melted] / docs / install.txt
1 Installation Documentation
2
3 Copyright (C) 2004-2009 Ushodaya Enterprises Limited
4 Author: Charles Yates <charles.yates@pandora.be>
5 Last Revision: 2009-05-15
6
7
8 INSTALL
9 -------
10
11         This document provides a description of the MLT Melted project installation
12         and organisation.
13
14
15 Directories
16 -----------
17
18         The directory heirarchy is defined as follows:
19
20         + docs                  - Location of all documentation
21         + src                   - All project source is provided here
22             + melted            - The server implementation (*)
23             + mvcp              - Client API to access the server
24             + mvcp-console      - A simple console (protocol level) example (*)
25             + mvcp-client       - A terminal-based example client (*)
26             + modules           - All services are defined here
27                 + mvcp          - MVCP consumer
28             + melted++          - C++ classes for melted and mvcp
29
30         Additional subdirectories may be nested below those shown and should be
31         documented in their parent.
32
33         (*) Contains GPL dependencies or code.
34
35
36 Dependencies
37 ------------
38
39         Melted is dependent on:
40
41         * The MLT framework library
42         * a C99 compliant C compiler
43         * posix threading
44         * standard posix libraries
45
46
47 Configuration
48 -------------
49
50         Configuration is triggered from the top level directory via a 
51         ./configure script.
52
53         Each source bearing subdirectory shown above have their own configure
54         script which are called automatically from the top level.
55
56         Typically, new modules can be introduced without modification to the 
57         configure script and arguments are accepted and passed through to all 
58         subdirectories.
59
60         More information on usage is found by running:
61
62             ./configure --help
63
64         NB: This script must be run to register new services after a CVS checkout
65         or subsequent update.
66
67         
68 Compilation
69 -----------
70
71         Makefiles are generated during configuration and these are based on
72         a per directory template which must be provided by the developer.
73
74
75 Installation
76 ------------
77
78         The install is triggered by running make install from the top level
79         directory.
80         
81         Mvcp produces a single shared object which is installed in 
82         $prefix/lib/ and public header which are installed in 
83         $prefix/include/mlt/mvcp.
84
85         Melted produces a single exectuable which is installed in
86         $prefix/bin/, a library in $prefix/lib and associated header files in
87         $prefix/include/mlt/melted.
88
89         The modules produce a shared object per module. These are installed 
90         in $prefix/lib/mlt/modules. It is at the discretion of the module to 
91         install additional support files in $prefix/share/mlt. 
92         
93         To allow the development of external components, pkg-config config files 
94         are generated and installed in $prefix/lib/pkgconfig.
95
96         After install, only those modules listed are usable by the server. No
97         module is loaded unless explicitly requested via server configuration
98         or usage.