tmf: extract operation for creating an experiment
[deliverable/tracecompass.git] / README.md
CommitLineData
4c7ca017
AM
1Eclipse Trace Compass
2=====================
3
4This source tree contains the source code for the Trace Compass plugins for
5Eclipse.
6
7The plugins are categorized as follows:
8
634e7ffd
AM
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
22See the `components.svg` file for a diagram showing the dependencies between the
23different components.
4c7ca017
AM
24
25
26Setting up the development environment
27--------------------------------------
28
29To set up the environment to build Trace Compass from within Eclipse, see this
30wiki page:
31<http://wiki.eclipse.org/Trace_Compass/Development_Environment_Setup>
32
33
34Compiling manually
35------------------
36
e38f4d76 37To build the project manually using Maven, simply run the following command from
4c7ca017
AM
38the top-level directory:
39
40 mvn clean install
41
42The default command will compile and run the unit tests. Running the tests can
43take 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
e38f4d76
AM
48Stand-alone application (RCP) packages will be placed in
49`rcp/org.eclipse.tracecompass.rcp.product/target/products`.
4c7ca017 50
e38f4d76
AM
51The p2 update site, used for installation as plugins inside Eclipse, will be
52placed in `releng/org.eclipse.tracecompass.releng-site/target/repository`.
424f59c4
AM
53
54
55Maven profiles and properties
56-----------------------------
57
1bee0535 58The following Maven profiles and properties are defined in
424f59c4
AM
59the build system. You can set them by using `-P[profile name]` and
60`-D[property name]=[value]` in `mvn` commands.
61
1bee0535
AM
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
424f59c4
AM
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
e38f4d76 75* `-P -build-rcp`
424f59c4 76
e38f4d76 77 Disables the "build-rcp" profile to skip building the RCP archives.
424f59c4 78
59e6f2ce
AM
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
b0d2c558 83 `-DcustomTestSuite=RunAllPerfTests`.
59e6f2ce 84
424f59c4
AM
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`
4c7ca017 100
424f59c4
AM
101 Mainly for use on build servers. Signs all the generated update sites using
102 the Eclipse signing server.
4c7ca017 103
424f59c4 104* `-Pdeploy-doc`
4c7ca017 105
424f59c4
AM
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).
4c7ca017 110
This page took 0.040869 seconds and 5 git commands to generate.