Skip to content
Snippets Groups Projects
Commit 7987715c authored by Jens Bendisposto's avatar Jens Bendisposto
Browse files

Merge branch 'feature/ab' into develop

parents 8c984b24 10fbe691
No related branches found
No related tags found
No related merge requests found
Showing
with 446 additions and 8 deletions
apply plugin: 'base'
//--- Defining Tycho POM parts --//
def artifact(artifactId,versionNumber) { """
<groupId>de.prob</groupId>
<artifactId>${artifactId}</artifactId>
<version>${versionNumber}</version>
<packaging>eclipse-plugin</packaging>
""" }
def start() { """<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
"""}
def elder() {"""
<parent>
<groupId>de.prob</groupId>
<artifactId>de.prob.parent</artifactId>
<version>1.0.0.qualifier</version>
<relativePath>../de.prob.parent/pom.xml</relativePath>
</parent>
"""}
def repos() {"""
<repositories>
<!-- configure p2 repository to resolve against -->
<repository>
<id>prob_target</id>
<layout>p2</layout>
<url>http://cobra.cs.uni-duesseldorf.de/prob_dev_target/</url>
</repository>
<repository>
<id>indigo</id>
<layout>p2</layout>
<url>http://download.eclipse.org/releases/indigo/</url>
</repository>
</repositories>
"""}
def end() {"""
</project>
"""}
subprojects {
apply plugin: 'base'
task deploy(){
description = "\tGenerating the Tycho Poms"
versionNumber = 'Version Number Error: check Manifest for Bundle-Version Number'
/* -- In case of changed Manifest File in Eclipse:
*
* Version Numbers of the projects are collected via
* regular expressions in the Manifest.MF File.
* Versionnumber of the projects are equal to their
* Bundle-Version Number
*/
}
task deleteArtifacts(type: Delete) {
delete 'target','pom.xml'
}
}
task deploy(dependsOn: subprojects.deploy)
task install(dependsOn: deploy , type:Exec) {
description = "\tExecutes a 'mvn install' of the parent pom.xml and auto-generates Tycho Poms"
commandLine 'mvn', 'install', '-f', 'de.prob.parent/pom.xml'
}
clean {
dependsOn += subprojects.deleteArtifacts
}
// Build Script can be executed via gradle install
// Pom Generation can be executed via gradle deploy
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: BMotion Studio Editor Plug-in Bundle-Name: BMotion Studio Editor Plug-in
Bundle-SymbolicName: de.bmotionstudio.gef.editor;singleton:=true Bundle-SymbolicName: de.bmotionstudio.gef.editor;singleton:=true
Bundle-Version: 5.3.0 Bundle-Version: 5.3.0.qualifier
Bundle-Activator: de.bmotionstudio.gef.editor.BMotionEditorPlugin Bundle-Activator: de.bmotionstudio.gef.editor.BMotionEditorPlugin
Require-Bundle: org.eclipse.ui;bundle-version="[3.5.0,4.0.0)", Require-Bundle: org.eclipse.ui;bundle-version="[3.5.0,4.0.0)",
org.eclipse.ui.ide;bundle-version="[3.5.0,4.0.0)", org.eclipse.ui.ide;bundle-version="[3.5.0,4.0.0)",
......
deploy <<{
content = new File("de.bmotionstudio.gef.editor/META-INF/MANIFEST.MF").getText("UTF-8")
printFileLine = { if( it ==~ /Bundle-Version.+qualifier/ ){
versionNumber = it.substring(16) // possibile error: cuts off first 16 chars
/* Version Number is taken from Bundle-Version in Manifest.MF
* If there is no Bundle-Version or the versionnumber needs to
* be taken from a different key word, please change the
* regular expression and the substring above
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.bmotionstudio.gef.editor'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << start()+elder()+repos()+artifact(artifactId, versionNumber)+end()
}
\ No newline at end of file
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: BMotion Studio Rodin Integration Bundle-Name: BMotion Studio Rodin Integration
Bundle-SymbolicName: de.bmotionstudio.rodin;singleton:=true Bundle-SymbolicName: de.bmotionstudio.rodin;singleton:=true
Bundle-Version: 1.0.2 Bundle-Version: 1.0.2.qualifier
Fragment-Host: de.bmotionstudio.gef.editor;bundle-version="5.2.1" Fragment-Host: de.bmotionstudio.gef.editor;bundle-version="5.2.1"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: HHU Düsseldorf STUPS Group Bundle-Vendor: HHU Düsseldorf STUPS Group
......
deploy <<{
content = new File("de.bmotionstudio.rodin/META-INF/MANIFEST.MF").getText("UTF-8")
printFileLine = { if( it ==~ /Bundle-Version.+qualifier/ ){
versionNumber = it.substring(16) // possibile error: cuts off first 16 chars
/* Version Number is taken from Bundle-Version in Manifest.MF
* If there is no Bundle-Version or the versionnumber needs to
* be taken from a different key word, please change the
* regular expression and the substring above
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.bmotionstudio.rodin'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << start()+elder()+repos()+artifact(artifactId, versionNumber)+end()
}
\ No newline at end of file
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: ProB Animator Core Bundle-Name: ProB Animator Core
Bundle-SymbolicName: de.prob.core;singleton:=true Bundle-SymbolicName: de.prob.core;singleton:=true
Bundle-Version: 9.2.0 Bundle-Version: 9.2.0.qualifier
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.5.0,4.0.0)", Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.5.0,4.0.0)",
org.rodinp.core;bundle-version="[1.3.1,1.6.0)", org.rodinp.core;bundle-version="[1.3.1,1.6.0)",
org.eventb.core;bundle-version="[2.1.0,2.5.0)" org.eventb.core;bundle-version="[2.1.0,2.5.0)"
......
apply plugin: 'base'
deploy <<{
content = new File("de.prob.core/META-INF/MANIFEST.MF").getText("UTF-8")
printFileLine = { if( it ==~ /Bundle-Version.+qualifier/ ){
versionNumber = it.substring(16) // possibile error: cuts off first 16 chars
/* Version Number is taken from Bundle-Version in Manifest.MF
* If there is no Bundle-Version or the versionnumber needs to
* be taken from a different key word, please change the
* regular expression and the substring above
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.prob.core'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << start()+elder()+repos()+artifact(artifactId, versionNumber)+end()
/*
* old pom.xml files are deleted and replaced by new auto generated Tycho pom.xml files
*/
}
...@@ -5,6 +5,5 @@ bin.includes = META-INF/,\ ...@@ -5,6 +5,5 @@ bin.includes = META-INF/,\
.,\ .,\
lib/probcliparser.jar,\ lib/probcliparser.jar,\
lib/commons-lang-2.4.jar,\ lib/commons-lang-2.4.jar,\
prob/,\ prob/
lib/keyboard.jar
def parentPom() { """
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>de.prob</groupId>
<artifactId>de.prob.parent</artifactId>
<version>1.0.0.qualifier</version>
<packaging>pom</packaging>
<!-- this is the parent POM from which all modules inherit common settings -->
<properties>
<tycho-version>0.14.1</tycho-version>
</properties>
<repositories>
<!-- configure p2 repository to resolve against -->
<repository>
<id>prob_target</id>
<layout>p2</layout>
<url>http://cobra.cs.uni-duesseldorf.de/prob_dev_target/</url>
</repository>
<repository>
<id>indigo</id>
<layout>p2</layout>
<url>http://download.eclipse.org/releases/indigo/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<!-- enable tycho build extension -->
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<version>0.14.1</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
<!-- the modules that should be built together -->
<modules>
<module>../de.prob.core</module>
<module>../de.bmotionstudio.gef.editor</module>
<module>../de.bmotionstudio.rodin</module>
<module>../de.prob.ui</module>
<module>../de.prob.plugin</module>
<!-- <module>../de.prob.feature</module> -->
<module>../de.prob2.feature</module>
<module>../de.prob.repository</module>
</modules>
</project>
"""}
deploy <<{
versionNumber = '1.0.0.qualifier'
artifactId = 'de.prob.parent'
def f = new File(artifactId+'/pom.xml')
f.delete()
f << parentPom()
}
\ No newline at end of file
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: ProB Rodin2 UI Bindings Bundle-Name: ProB Rodin2 UI Bindings
Bundle-SymbolicName: de.prob.plugin;singleton:=true Bundle-SymbolicName: de.prob.plugin;singleton:=true
Bundle-Version: 2.1.3 Bundle-Version: 2.1.3.qualifier
Fragment-Host: de.prob.ui;bundle-version="[7.2.0,7.3.0)" Fragment-Host: de.prob.ui;bundle-version="[7.2.0,7.3.0)"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: HHU Düsseldorf STUPS Group Bundle-Vendor: HHU Düsseldorf STUPS Group
deploy <<{
content = new File("de.prob.plugin/META-INF/MANIFEST.MF").getText("UTF-8")
printFileLine = { if( it ==~ /Bundle-Version.+qualifier/ ){
versionNumber = it.substring(16) // possibile error: cuts off first 16 chars
/* Version Number is taken from Bundle-Version in Manifest.MF
* If there is no Bundle-Version or the versionnumber needs to
* be taken from a different key word, please change the
* regular expression and the substring above
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.prob.plugin'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << start()+elder()+repos()+artifact(artifactId, versionNumber)+end()
}
\ No newline at end of file
def reposi() { """
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>de.prob</groupId>
<artifactId>de.prob.parent</artifactId>
<version>1.0.0.qualifier</version>
<relativePath>../de.prob.parent/pom.xml</relativePath>
</parent>
<groupId>de.prob</groupId>
<artifactId>de.prob.repository</artifactId>
<version>1.0.0.qualifier</version>
<packaging>eclipse-repository</packaging>
</project>
"""}
deploy <<{
versionNumber = '1.0.0.qualifier'
artifactId = 'de.prob.repository'
println artifactId
def f = new File(artifactId+'/pom.xml')
f.delete()
f << reposi()
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<site>
<feature url="features/de.prob2.feature_2.3.0.qualifier.jar" id="de.prob2.feature" version="2.3.0.qualifier">
<category name="de.prob2.category"/>
</feature>
<category-def name="de.prob.category" label="ProB">
<description>
ProB is an animator and model checker for the B-Method. It allows
fully automatic animation of many B specifications, and can be
used to systematically check a specification for errors.
Part of the research and development was conducted within the
EPSRC funded projects ABCD and iMoc, and within the EU funded
project Rodin.
Development is continued under the EU funded project Deploy and
the DFG project Gepavas.
ProB has been successfully used on various industrial specifications
and is now being used within Siemens.
</description>
</category-def>
<category-def name="de.prob2.category" label="ProB Rodin Plugin">
<description>
ProB is an animator and model checker for the B-Method. It allows
fully automatic animation of many B specifications, and can be
used to systematically check a specification for errors.
Part of the research and development was conducted within the
EPSRC funded projects ABCD and iMoc, and within the EU funded
project Rodin.
Development is continued under the EU funded project Deploy and
the DFG project Gepavas.
ProB has been successfully used on various industrial specifications
and is now being used within Siemens.
</description>
</category-def>
</site>
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: ProB Ui Plug-in Bundle-Name: ProB Ui Plug-in
Bundle-SymbolicName: de.prob.ui;singleton:=true Bundle-SymbolicName: de.prob.ui;singleton:=true
Bundle-Version: 7.2.0 Bundle-Version: 7.2.0.qualifier
Require-Bundle: org.eclipse.ui;bundle-version="[3.5.0,4.0.0)", Require-Bundle: org.eclipse.ui;bundle-version="[3.5.0,4.0.0)",
org.eclipse.core.runtime;bundle-version="[3.5.0,4.0.0)", org.eclipse.core.runtime;bundle-version="[3.5.0,4.0.0)",
org.eclipse.core.resources;bundle-version="[3.5.0,4.0.0)", org.eclipse.core.resources;bundle-version="[3.5.0,4.0.0)",
......
deploy <<{
content = new File("de.prob.ui/META-INF/MANIFEST.MF").getText("UTF-8")
printFileLine = { if( it ==~ /Bundle-Version.+qualifier/ ){
versionNumber = it.substring(16) // possibile error: cuts off first 16 chars
/* Version Number is taken from Bundle-Version in Manifest.MF
* If there is no Bundle-Version or the versionnumber needs to
* be taken from a different key word, please change the
* regular expression and the substring above
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.prob.ui'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << start()+elder()+repos()+artifact(artifactId, versionNumber)+end()
}
\ No newline at end of file
def feature(artifactId, versionNumber) { """
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>de.prob</groupId>
<artifactId>de.prob.parent</artifactId>
<version>1.0.0.qualifier</version>
<relativePath>../de.prob.parent/pom.xml</relativePath>
</parent>
<groupId>de.prob</groupId>
<artifactId>${artifactId}</artifactId>
<version>${versionNumber}</version>
<packaging>eclipse-feature</packaging>
</project>
"""}
deploy <<{
content = new File("de.prob2.feature/feature.xml").getText("UTF-8")
printFileLine = { if( it ==~ /.+version.+qualifier.+/ ){
versionNumber = it.substring(15,it.size()-1)
// possibile error: cuts off first 15 chars and leaves out last '"'
/* Version Number is taken from Feature.xml
* feature.xml is searched for version="version.qualifier"
* first 15 chars and last '"' are cut off
*/
}
}
content.eachLine( printFileLine )
artifactId = 'de.prob2.feature'
println artifactId
println "\t"+versionNumber
def f = new File(artifactId+'/pom.xml')
f.delete()
f << feature(artifactId, versionNumber)
}
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<feature <feature
id="de.prob2.feature" id="de.prob2.feature"
label="ProB for Rodin2" label="ProB for Rodin2"
version="2.3.0" version="2.3.0.qualifier"
provider-name="HHU Düsseldorf STUPS Group"> provider-name="HHU Düsseldorf STUPS Group">
<description url="http://www.stups.uni-duesseldorf.de/ProB"> <description url="http://www.stups.uni-duesseldorf.de/ProB">
......
include 'de.prob.parent', 'de.prob.core', 'de.bmotionstudio.gef.editor' ,'de.bmotionstudio.rodin', 'de.prob.feature', 'de.prob.plugin', 'de.prob.repository', 'de.prob.ui', 'de.prob2.feature'
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment