Build the RCP by default
[deliverable/tracecompass.git] / README.md
1 Eclipse Trace Compass
2 =====================
3
4 This source tree contains the source code for the Trace Compass plugins for
5 Eclipse.
6
7 The plugins are categorized as follows:
8
9 analysis/ | Generic extensions to the base framework
10 btf/ | Best Trace Format (BTF) integration
11 common/ | Generic utilities that can be used by other plugins
12 ctf/ | Common Trace Format (CTF) reader library
13 doc/ | Documentation and code examples
14 gdbtrace/ | Support for reading and viewing GDB traces
15 lttng/ | LTTng integration
16 pcap/ | libpcap integration
17 rcp/ | Code specific to the RCP version
18 releng/ | Releng-related plugins
19 statesystem/ | State System library
20 tmf/ | Core framework
21
22 See the `components.svg` file for a diagram showing the dependencies between the
23 different components.
24
25
26 Setting up the development environment
27 --------------------------------------
28
29 To set up the environment to build Trace Compass from within Eclipse, see this
30 wiki page:
31 <http://wiki.eclipse.org/Trace_Compass/Development_Environment_Setup>
32
33
34 Compiling manually
35 ------------------
36
37 To build the project manually using Maven, simply run the following command from
38 the top-level directory:
39
40 mvn clean install
41
42 The default command will compile and run the unit tests. Running the tests can
43 take some time, to skip them you can append `-Dmaven.test.skip=true` to the
44 `mvn` command:
45
46 mvn clean install -Dmaven.test.skip=true
47
48 Stand-alone application (RCP) packages will be placed in
49 `rcp/org.eclipse.tracecompass.rcp.product/target/products`.
50
51 The p2 update site, used for installation as plugins inside Eclipse, will be
52 placed in `releng/org.eclipse.tracecompass.releng-site/target/repository`.
53
54
55 Maven profiles and properties
56 -----------------------------
57
58 The following Maven profiles and properties are defined in
59 the build system. You can set them by using `-P[profile name]` and
60 `-D[property name]=[value]` in `mvn` commands.
61
62 * `-Dtarget-platform=[target]`
63
64 Defines which target to use. This is used to build against various versions of
65 the Eclipse platform. Available ones are in
66 `releng/org.eclipse.tracecompass.target`. The default is usually the latest
67 stable platform. To use the staging target for example, use
68 `-Dtarget-platform=tracecompass-eStaging`.
69
70 * `-Pctf-grammar`
71
72 Re-compiles the CTF grammar files. This should be enabled if you modify the
73 `.g` files in the `ctf.parser` plugin.
74
75 * `-P -build-rcp`
76
77 Disables the "build-rcp" profile to skip building the RCP archives.
78
79 * `-Prun-custom-test-suite`
80
81 Runs a test suite present in `releng/org.eclipse.tracecompass.alltests`. The
82 test suite to run has to be defined by `-DcustomTestSuite=[name]`, for example
83 `-DcustomTestSuite=RunAllCoreTests`.
84
85 * `-Pdeploy-rcp`
86
87 Mainly for use on build servers. Copies the generated RCP archives, as well as
88 the RCP-specific update site, to the paths specified by
89 `-DrcpDestination=/absolute/path/to/destination` and
90 `-DrcpSiteDestination=/absolute/path/to/destination`, respectively.
91 Must be used with `-Pbuild-rcp`!
92
93 * `-Pdeploy-update-site`
94
95 Mainly for use on build servers. Copies the standard update site (for the
96 Eclipse plugin installation) to the destination specified by
97 `-DsiteDestination=/absolute/path/to/destination`.
98
99 * `-Psign-update-site`
100
101 Mainly for use on build servers. Signs all the generated update sites using
102 the Eclipse signing server.
103
104 * `-Pdeploy-doc`
105
106 Mainly for use on build servers. Copies the generated HTML documentation to
107 the destination specified by `-DdocDestination=/absolute/path/to/destination`.
108 Some directories may need to already exist at the destination (or Maven will
109 throw related errors).
110
This page took 0.034837 seconds and 6 git commands to generate.