Wanneer ik MSVC (willekeurige moderne versie) gebruik, dan is er de mogelijkheid om een workspace aan te maken met daarin meerdere projecten, welke allemaal apart te bouwen zijn en een serie executables en/of bibliotheken oplevert. Deze projecten kunnen mbv mappen ingedeeld worden zodat er een mooie directorystructuur ontstaat.
Dit wil ik ook met Eclipse en de CDT plugin, maar tot nu toe kom ik niet verder dan dit:
Dit is natuurlijk "pseudo-xml".
Alle projecten hangen dus op het eerste niveau onder de workspace. Maar dat is niet wat ik wil. Wat ik wel heel graag wil is dit, of iets vergelijkbaars:
Nu is het in het eerste voorbeeld niet zo heel erg om alles op het eerste knooppunt van de hiërarchie te houden, maar in de echte situatie (dit is natuurlijk maar een simpel voorbeeld) zijn er minstens dertig plugins (dll's) die er nog eens extra bijkomen, waardoor ik het overzicht helemaal kwijtraak.
De plugins wil ik ook graag indelen in mappen omdat er nog meer plugins bij zullen komen.
Ik zou kunnen overstappen op zelfgeschreven makefiles, maar dat doe ik liever niet omdat:
• ik het veel te belangrijk vind om de extra opties te behouden van de managed make builder
• het hele managed/standard make-spul in CDT 4.0 overhoop is gegooid
Wat is nou eigenlijk het probleem? Simpel: er kunnen geen mappen worden aangemaakt onder de workspace. Eclipse wil daar alleen projecten in hebben.
Is er misschien nog een andere mogelijkheid om te doen wat ik wil zoals in het tweede voorbeeld? Of ben ik echt eeuwig verdoemd tot het plaatsen van alle projecten in een lange oneindige workspace zonder enige vorm van structuur waardoor mijn programmeerleven een dikke zonsverduistering over zich heen zal krijgen omdat ik door de projecten de code niet meer zie...
Dit wil ik ook met Eclipse en de CDT plugin, maar tot nu toe kom ik niet verder dan dit:
XML:
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
| <workspace> <project:hoofdprogramma> <map:source/> <map:include/> </project:hoofdprogramma> <project:bibliotheek1> <map:source/> <map:include/> </project:bibliotheek1> <project:bibliotheek2> <map:source/> <map:include/> </project:bibliotheek2> <project:plugin1> <map:source/> <map:include/> </project:plugin1> <project:plugin[n]> <map:source/> <map:include/> </project:plugin[n]> <...> </workspace> |
Dit is natuurlijk "pseudo-xml".
Alle projecten hangen dus op het eerste niveau onder de workspace. Maar dat is niet wat ik wil. Wat ik wel heel graag wil is dit, of iets vergelijkbaars:
XML:
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
| <workspace> <project:hoofdprogramma> <map:source/> <map:include/> </project:hoofdprogramma> <folder:statische_bibliotheken> <project:bibliotheek1> <map:source/> <map:include/> </project:bibliotheek1> <project:bibliotheek2> <map:source/> <map:include/> </project:bibliotheek2> </folder:statische_bibliotheken> <folder:plugins> <project:plugin[n]> <map:source/> <map:include/> </project:plugin[n]> <...> </folder:plugins> </workspace> |
Nu is het in het eerste voorbeeld niet zo heel erg om alles op het eerste knooppunt van de hiërarchie te houden, maar in de echte situatie (dit is natuurlijk maar een simpel voorbeeld) zijn er minstens dertig plugins (dll's) die er nog eens extra bijkomen, waardoor ik het overzicht helemaal kwijtraak.
De plugins wil ik ook graag indelen in mappen omdat er nog meer plugins bij zullen komen.
Ik zou kunnen overstappen op zelfgeschreven makefiles, maar dat doe ik liever niet omdat:
• ik het veel te belangrijk vind om de extra opties te behouden van de managed make builder
• het hele managed/standard make-spul in CDT 4.0 overhoop is gegooid
Wat is nou eigenlijk het probleem? Simpel: er kunnen geen mappen worden aangemaakt onder de workspace. Eclipse wil daar alleen projecten in hebben.
Is er misschien nog een andere mogelijkheid om te doen wat ik wil zoals in het tweede voorbeeld? Of ben ik echt eeuwig verdoemd tot het plaatsen van alle projecten in een lange oneindige workspace zonder enige vorm van structuur waardoor mijn programmeerleven een dikke zonsverduistering over zich heen zal krijgen omdat ik door de projecten de code niet meer zie...
