pom.xml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>be.uantwerpen.ansymo.semanticadaptation</groupId>
  6. <artifactId>parent</artifactId>
  7. <version>1.0.0-SNAPSHOT</version>
  8. <packaging>pom</packaging>
  9. <name>Semantics Adaptation Root
  10. </name>
  11. <!-- the mavenization is based on this approach https://github.com/xtext/maven-xtext-example -->
  12. <modules>
  13. <module>be.uantwerpen.ansymo.semanticadaptation.testframework</module>
  14. <module>be.uantwerpen.ansymo.semanticadaptation</module>
  15. <module>be.uantwerpen.ansymo.semanticadaptation.tests</module>
  16. <module>be.uantwerpen.ansymo.semanticadaptation.ide</module>
  17. <module>be.uantwerpen.ansymo.semanticadaptation.ui</module>
  18. <module>be.uantwerpen.ansymo.semanticadaptation.cg.cpp</module>
  19. <module>be.uantwerpen.ansymo.semanticadaptation.cg.cpp.tests</module>
  20. <module>features</module>
  21. <module>repository</module>
  22. </modules>
  23. <properties>
  24. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  25. <xtext.version>2.11.0</xtext.version>
  26. <main.basedir>${project.basedir}</main.basedir>
  27. <tycho.version>1.0.0</tycho.version>
  28. </properties>
  29. <repositories>
  30. <repository>
  31. <id>eclipse</id>
  32. <layout>p2</layout>
  33. <url>http://download.eclipse.org/releases/neon</url>
  34. </repository>
  35. <repository>
  36. <id>Xtext Update Site</id>
  37. <layout>p2</layout>
  38. <!--url>http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/</url-->
  39. <url>http://download.eclipse.org/modeling/tmf/xtext/updates/releases/${xtext.version}/</url>
  40. </repository>
  41. <!--repository>
  42. <id>mvn</id>
  43. <url>http://mvnrepository.com/artifact</url>
  44. </repository-->
  45. </repositories>
  46. <build>
  47. <pluginManagement>
  48. <plugins>
  49. <!-- Enable JavaDoc but dont fail on error. This must be disabled for
  50. the Eclipse project in the IDE -->
  51. <plugin>
  52. <groupId>org.apache.maven.plugins</groupId>
  53. <artifactId>maven-javadoc-plugin</artifactId>
  54. <version>2.9</version>
  55. <executions>
  56. <execution>
  57. <id>attach-javadocs</id>
  58. <goals>
  59. <goal>jar</goal>
  60. </goals>
  61. </execution>
  62. </executions>
  63. <configuration>
  64. <failOnError>false</failOnError>
  65. <quiet>true</quiet>
  66. </configuration>
  67. </plugin>
  68. <!-- Configure the compiler for all Overture Projects -->
  69. <plugin>
  70. <groupId>org.apache.maven.plugins</groupId>
  71. <artifactId>maven-compiler-plugin</artifactId>
  72. <version>3.5.1</version>
  73. <configuration>
  74. <source>1.8</source>
  75. <target>1.8</target>
  76. </configuration>
  77. </plugin>
  78. <plugin>
  79. <groupId>org.apache.maven.plugins</groupId>
  80. <artifactId>maven-surefire-plugin</artifactId>
  81. <version>2.13</version>
  82. <configuration>
  83. </configuration>
  84. </plugin>
  85. <!-- xtend-maven-plugin is in pluginManagement instead of in plugins
  86. so that it doesn't run before the exec-maven-plugin's *.mwe2 gen; this way
  87. we can list it after. -->
  88. <plugin>
  89. <groupId>org.eclipse.xtend</groupId>
  90. <artifactId>xtend-maven-plugin</artifactId>
  91. <version>${xtext.version}</version>
  92. <executions>
  93. <execution>
  94. <goals>
  95. <goal>compile</goal>
  96. <goal>xtend-install-debug-info</goal>
  97. <goal>testCompile</goal>
  98. <goal>xtend-test-install-debug-info</goal>
  99. </goals>
  100. </execution>
  101. </executions>
  102. <configuration>
  103. <xtendAsPrimaryDebugSource>true</xtendAsPrimaryDebugSource>
  104. <!--outputDirectory>${project.build.directory}/xtend-gen/main</outputDirectory-->
  105. <testOutputDirectory>${project.build.directory}/xtend-gen/test</testOutputDirectory>
  106. <writeTraceFiles>true</writeTraceFiles>
  107. <outputDirectory>xtend-gen</outputDirectory>
  108. </configuration>
  109. </plugin>
  110. <plugin>
  111. <groupId>org.apache.maven.plugins</groupId>
  112. <artifactId>maven-clean-plugin</artifactId>
  113. <version>2.5</version>
  114. <executions>
  115. <execution>
  116. <id>gen-clean</id>
  117. <goals>
  118. <goal>clean</goal>
  119. </goals>
  120. <configuration>
  121. <filesets>
  122. <fileset>
  123. <directory>${basedir}/xtend-gen</directory>
  124. </fileset>
  125. </filesets>
  126. </configuration>
  127. </execution>
  128. </executions>
  129. </plugin>
  130. <plugin>
  131. <groupId>org.eclipse.tycho</groupId>
  132. <artifactId>tycho-maven-plugin</artifactId>
  133. <version>${tycho.version}</version>
  134. </plugin>
  135. <plugin>
  136. <groupId>org.eclipse.tycho</groupId>
  137. <artifactId>target-platform-configuration</artifactId>
  138. <version>${tycho.version}</version>
  139. </plugin>
  140. <plugin>
  141. <groupId>org.eclipse.tycho</groupId>
  142. <artifactId>tycho-p2-director-plugin</artifactId>
  143. <version>${tycho.version}</version>
  144. </plugin>
  145. <plugin>
  146. <groupId>org.eclipse.tycho</groupId>
  147. <artifactId>tycho-packaging-plugin</artifactId>
  148. <version>${tycho.version}</version>
  149. <configuration>
  150. <archive>
  151. <addMavenDescriptor>false</addMavenDescriptor>
  152. </archive>
  153. </configuration>
  154. </plugin>
  155. <!-- Use the below to update the version numbers of the poms,
  156. manifests, and feature.xml files with the commandline:
  157. $ mvn -Dtycho.mode=maven tycho-versions:set-version -DnewVersion=2.0.2
  158. Don't commit the changes to the export-packages lines in
  159. the manifests, though.
  160. -->
  161. <plugin>
  162. <groupId>org.eclipse.tycho</groupId>
  163. <artifactId>tycho-versions-plugin</artifactId>
  164. <version>${tycho.version}</version>
  165. </plugin>
  166. <plugin>
  167. <groupId>org.eclipse.m2e</groupId>
  168. <artifactId>lifecycle-mapping</artifactId>
  169. <version>1.0.0</version>
  170. <configuration>
  171. <lifecycleMappingMetadata>
  172. <pluginExecutions>
  173. <pluginExecution>
  174. <pluginExecutionFilter>
  175. <groupId>org.apache.maven.plugins</groupId>
  176. <artifactId>maven-dependency-plugin</artifactId>
  177. <versionRange>[1.0.0,)</versionRange>
  178. <goals>
  179. <goal>copy-dependencies</goal>
  180. </goals>
  181. </pluginExecutionFilter>
  182. <action>
  183. <ignore />
  184. </action>
  185. </pluginExecution>
  186. </pluginExecutions>
  187. </lifecycleMappingMetadata>
  188. </configuration>
  189. </plugin>
  190. </plugins>
  191. </pluginManagement>
  192. <plugins>
  193. <plugin>
  194. <groupId>org.eclipse.tycho</groupId>
  195. <artifactId>tycho-maven-plugin</artifactId>
  196. <extensions>true</extensions>
  197. </plugin>
  198. <plugin>
  199. <groupId>org.eclipse.tycho</groupId>
  200. <artifactId>target-platform-configuration</artifactId>
  201. </plugin>
  202. <plugin>
  203. <groupId>org.apache.maven.plugins</groupId>
  204. <artifactId>maven-javadoc-plugin</artifactId>
  205. <configuration>
  206. <skip>true</skip>
  207. </configuration>
  208. </plugin>
  209. </plugins>
  210. </build>
  211. <profiles>
  212. <!-- These next five profiles will autodetect which OS maven is
  213. being executed on and then build the matching version of
  214. Overture for that OS. -jwc/23Jan2014
  215. -->
  216. <profile>
  217. <id>win</id>
  218. <activation>
  219. <activeByDefault>false</activeByDefault>
  220. <os>
  221. <family>windows</family>
  222. <arch>x86</arch>
  223. </os>
  224. </activation>
  225. <build>
  226. <plugins>
  227. <plugin>
  228. <groupId>org.eclipse.tycho</groupId>
  229. <artifactId>target-platform-configuration</artifactId>
  230. <configuration>
  231. <environments>
  232. <environment>
  233. <os>win32</os>
  234. <ws>win32</ws>
  235. <arch>x86</arch>
  236. </environment>
  237. </environments>
  238. </configuration>
  239. </plugin>
  240. </plugins>
  241. </build>
  242. </profile>
  243. <profile>
  244. <id>win64</id>
  245. <activation>
  246. <activeByDefault>false</activeByDefault>
  247. <os>
  248. <family>windows</family>
  249. <arch>amd64</arch>
  250. </os>
  251. </activation>
  252. <build>
  253. <plugins>
  254. <plugin>
  255. <groupId>org.eclipse.tycho</groupId>
  256. <artifactId>target-platform-configuration</artifactId>
  257. <configuration>
  258. <environments>
  259. <environment>
  260. <os>win32</os>
  261. <ws>win32</ws>
  262. <arch>x86_64</arch>
  263. </environment>
  264. </environments>
  265. </configuration>
  266. </plugin>
  267. </plugins>
  268. </build>
  269. </profile>
  270. <profile>
  271. <id>mac</id>
  272. <activation>
  273. <activeByDefault>false</activeByDefault>
  274. <os>
  275. <family>mac</family>
  276. </os>
  277. </activation>
  278. <build>
  279. <plugins>
  280. <plugin>
  281. <groupId>org.eclipse.tycho</groupId>
  282. <artifactId>target-platform-configuration</artifactId>
  283. <configuration>
  284. <environments>
  285. <environment>
  286. <os>macosx</os>
  287. <ws>cocoa</ws>
  288. <arch>x86_64</arch>
  289. </environment>
  290. </environments>
  291. </configuration>
  292. </plugin>
  293. <plugin>
  294. <groupId>org.eclipse.tycho</groupId>
  295. <artifactId>tycho-p2-repository-plugin</artifactId>
  296. <version>${tycho.version}</version>
  297. <configuration>
  298. <includeAllDependencies>true</includeAllDependencies>
  299. <profileProperties>
  300. <macosx-bundled>true</macosx-bundled>
  301. </profileProperties>
  302. </configuration>
  303. </plugin>
  304. </plugins>
  305. </build>
  306. </profile>
  307. <profile>
  308. <id>linux</id>
  309. <activation>
  310. <activeByDefault>false</activeByDefault>
  311. <os>
  312. <family>unix</family>
  313. <name>linux</name>
  314. <arch>x86</arch>
  315. </os>
  316. </activation>
  317. <build>
  318. <plugins>
  319. <plugin>
  320. <groupId>org.eclipse.tycho</groupId>
  321. <artifactId>target-platform-configuration</artifactId>
  322. <configuration>
  323. <environments>
  324. <environment>
  325. <os>linux</os>
  326. <ws>gtk</ws>
  327. <arch>x86</arch>
  328. </environment>
  329. </environments>
  330. </configuration>
  331. </plugin>
  332. </plugins>
  333. </build>
  334. </profile>
  335. <profile>
  336. <id>linux64</id>
  337. <activation>
  338. <activeByDefault>false</activeByDefault>
  339. <os>
  340. <family>unix</family>
  341. <name>linux</name>
  342. <arch>amd64</arch>
  343. </os>
  344. </activation>
  345. <build>
  346. <plugins>
  347. <plugin>
  348. <groupId>org.eclipse.tycho</groupId>
  349. <artifactId>target-platform-configuration</artifactId>
  350. <configuration>
  351. <environments>
  352. <environment>
  353. <os>linux</os>
  354. <ws>gtk</ws>
  355. <arch>x86</arch>
  356. </environment>
  357. <environment>
  358. <os>linux</os>
  359. <ws>gtk</ws>
  360. <arch>x86_64</arch>
  361. </environment>
  362. </environments>
  363. </configuration>
  364. </plugin>
  365. </plugins>
  366. </build>
  367. </profile>
  368. <!-- Use this profile to build Overture for all platforms, but you
  369. may need to add -P\!linux (or whichever os) to disable the
  370. autodetected profile (per above), otherwise the autodetected
  371. profile may take precedence over the command-line specified
  372. profile. -jwc/23Jan2014
  373. -->
  374. <profile>
  375. <id>all-platforms</id>
  376. <build>
  377. <plugins>
  378. <plugin>
  379. <groupId>org.eclipse.tycho</groupId>
  380. <artifactId>target-platform-configuration</artifactId>
  381. <configuration>
  382. <environments>
  383. <environment>
  384. <os>win32</os>
  385. <ws>win32</ws>
  386. <arch>x86</arch>
  387. </environment>
  388. <environment>
  389. <os>win32</os>
  390. <ws>win32</ws>
  391. <arch>x86_64</arch>
  392. </environment>
  393. <environment>
  394. <os>linux</os>
  395. <ws>gtk</ws>
  396. <arch>x86</arch>
  397. </environment>
  398. <environment>
  399. <os>linux</os>
  400. <ws>gtk</ws>
  401. <arch>x86_64</arch>
  402. </environment>
  403. <environment>
  404. <os>macosx</os>
  405. <ws>cocoa</ws>
  406. <arch>x86_64</arch>
  407. </environment>
  408. </environments>
  409. </configuration>
  410. </plugin>
  411. </plugins>
  412. </build>
  413. </profile>
  414. </profiles>
  415. </project>