CMake » History » Version 1
Jessica Mack, 06/09/2015 07:15 PM
1 | 1 | Jessica Mack | h1. CMake |
---|---|---|---|
2 | |||
3 | h3. Summary |
||
4 | |||
5 | I'm not sure if this is worth a separate blueprint, but, maybe as part |
||
6 | of some sort of general tools or processes session, I would like to |
||
7 | discuss the possibility of switching our build system to CMake. There |
||
8 | is a preliminary branch from The Linux Box on GitHub [1] and a thread |
||
9 | on ceph-devel on this topic [2]. |
||
10 | The numbers presented in [2] are a bit misleading, since AFAICT not |
||
11 | everything was built, and, as mentioned in that thread, we could |
||
12 | probably get some of the speedup by not building two versions of |
||
13 | everything with the existing autotools system, but, at least to me, |
||
14 | speed is not the only issue. libtool is a huge PITA as it breaks the |
||
15 | ability to export source trees to VMs which leads to bloated VM images, |
||
16 | not to mention the need to compile everything separately for each VM. |
||
17 | CMake is also better supported by IDEs, which would benefit people who |
||
18 | use them, IMHO has a better language and somewhat easier to work with. |
||
19 | What I'm looking to get out of this is to gather opinions, see if |
||
20 | people would be open to this, and perhaps discuss some of the details, |
||
21 | e.g. gitbuilders, the oldest platform that needs to be supported, etc. |
||
22 | [1] https://github.com/linuxbox2/linuxbox-ceph/commits/cmake |
||
23 | [2] http://thread.gmane.org/gmane.comp.file-systems.ceph.devel/17836/ |
||
24 | |||
25 | h3. Owners |
||
26 | |||
27 | * Name (Affiliation) |
||
28 | * Name (Affiliation) |
||
29 | * Name |
||
30 | |||
31 | h3. Interested Parties |
||
32 | |||
33 | * Ilya Dryomov (Inktank) |
||
34 | * Noah Watkins |
||
35 | * Dan Mick |
||
36 | * Loic Dachary <loic@dachary.org> |
||
37 | |||
38 | h3. Current Status |
||
39 | |||
40 | h3. Detailed Description |
||
41 | |||
42 | h3. Work items |
||
43 | |||
44 | h3. Coding tasks |
||
45 | |||
46 | # Task 1 |
||
47 | # Task 2 |
||
48 | # Task 3 |
||
49 | |||
50 | h3. Build / release tasks |
||
51 | |||
52 | # Task 1 |
||
53 | # Task 2 |
||
54 | # Task 3 |
||
55 | |||
56 | h3. Documentation tasks |
||
57 | # Task 1 |
||
58 | # Task 2 |
||
59 | # Task 3 |
||
60 | |||
61 | h3. Deprecation tasks |
||
62 | |||
63 | # Task 1 |
||
64 | # Task 2 |
||
65 | # Task 3 |