-
Notifications
You must be signed in to change notification settings - Fork 10
/
README.PACKAGING
110 lines (90 loc) · 3.86 KB
/
README.PACKAGING
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
Packaging `synthclone`
======================
Contents:
1. Install Parts
2. Install Options For Packagers
3. Packaging Recommendations
4. Packaging Scripts
1. Install Parts
----------------
A `synthclone` install can be made up of several common parts:
1. `synthclone` - The application
2. libsynthclone - API implementation for `synthclone`
3. Plugins distributed with `synthclone`, including:
* libsynthclone_hydrogen
* libsynthclone_jack
* libsynthclone_lv2
* libsynthclone_portmedia
* libsynthclone_renoise
* libsynthclone_reverser
* libsynthclone_sampleloader
* libsynthclone_sfz
* libsynthclone_trimmer
* libsynthclone_zonegenerator
4. Header files containing the plugin API interface
5. API documentation, generated by `doxygen`
2. Install Options For Packagers
--------------------------------
`synthclone` is built using the typical UNIX build process (`configure`, `make`,
`make install`). There are several options that you can pass to the configure
script in order to select what will or will not be built, and where each item
will be installed:
$ ./configure --help
Usage: configure [options] [qmake-args]
Options:
-h, --help show this help message and exit
--bin-dir=BINDIR Install directory for synthclone executable
--build-dir=BUILDDIR Build directory
--data-dir=DATADIR Install directory for general data files
--data-root-dir=DATAROOTDIR
Install root for data files
--debug Build a debug executable
--doc-dir=DOCDIR Install directory for synthclone documentation
--exec-prefix=EXECPREFIX
Install prefix for executable data
--include-dir=INCLUDEDIR
Install directory for system header files
--lib-dir=LIBDIR Install directory for synthclone shared library
--make-dir=MAKEDIR Make directory
--plugin-dir=PLUGINDIR
Install directory for synthclone plugins
--prefix=PREFIX Install prefix
--skip-api-docs=SKIPAPIDOCS
Don't build API documentation
--skip-headers=SKIPHEADERS
Don't build API headers
--skip-hydrogen=SKIPHYDROGEN
Don't build the Hydrogen plugin
--skip-jack=SKIPJACK Don't build the JACK plugin
--skip-lv2=SKIPLV2 Don't build the LV2 plugin
--skip-portmedia=SKIPPORTMEDIA
Don't build the PortMedia plugin
--skip-renoise=SKIPRENOISE
Don't build the Renoise plugin
--skip-reverser=SKIPREVERSER
Don't build the reverser plugin
--skip-sample-loader=SKIPSAMPLELOADER
Don't build the sample loader plugin
--skip-sfz=SKIPSFZ Don't build the SFZ plugin
--skip-trimmer=SKIPTRIMMER
Don't build the trimmer plugin
--skip-zone-generator=SKIPZONEGENERATOR
Don't build the zone generator plugin
By default, all items are built.
Arguments of the form '--skip-[name]' are integer arguments. The specified
argument can be skipped by passing any non-zero integer as the argument value.
After building `synthclone`, you may want to set the install path for
`synthclone` to a different location than the 'prefix' for packaging purposes.
To do this, execute:
make install INSTALL_ROOT=/path/to/some/location
You *must* make sure that the path is not a relative path.
3. Package Recommendations
--------------------------
Parts 1-3 should be placed into the main `synthclone` package.
Parts 4-5 should be placed into a development package (e.g. synthclone-devel).
4. Packaging Scripts
--------------------
Simple packaging scripts have been developed that take care of packaging on
the following operating systems:
Debian Linux:
./install/build-debian-packages