Skip to content
Snippets Groups Projects
Select Git revision
  • a03e28859b4a1c25d5eb62d0f053c30d7c9cb2f0
  • master default protected
2 results

HEAD

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    build.gradle 3.61 KiB
    apply plugin: 'java'
    apply plugin: 'eclipse'
    apply plugin: 'maven'
    
    sourceCompatibility = '1.7'
    
    project.version = '3.2.0'
    project.group = 'de.hhu.stups'
    project.archivesBaseName = 'rodin-eventb-ast'
    
    sourceSets {
        main {
            java {
                srcDir 'src'
            }
        }
    }
    
    ant.properties["org.eventb.core.ast.home"] = "."
    ant.importBuild 'tom/tom-task.xml'
    
    task tom() << {
      ant.tom(config: 'tools/tom-2.8/Tom.xml',
              classpath: ant.references['tom.classpath'],
              srcdir: 'src',
              destdir: 'src',
              options: "-I ./tom",
              pretty: 'true',
              optimize: 'true') {
                  include(name: '**/*.t')
              }
    
      def plugin_code = """
      package org.eventb.internal.core.ast;
    
      public class ASTPlugin {
    
      public static String PLUGIN_ID = "who.cares";
      public static void log(Object who, Object cares) {}
    
      }"""
    
      File f = file('src/org/eventb/internal/core/ast/ASTPlugin.java')
      f.delete()
      f << plugin_code
    
    }
    
    task patch() << {
      def patch_content = """diff --git a/src/org/eventb/internal/core/parser/SubParsers.java b/src/org/eventb/internal/core/parser/SubParsers.java
      index e71bf08..0977da1 100644
      --- a/src/org/eventb/internal/core/parser/SubParsers.java
      +++ b/src/org/eventb/internal/core/parser/SubParsers.java
      @@ -492,7 +492,7 @@ public class SubParsers {
    
       	};
    
      -	public static class BoundIdentDeclSubParser extends ValuedNudParser<BoundIdentDecl> {
      +	public static class BoundIdentDeclSubParser extends ValuedNudParser<org.eventb.core.ast.BoundIdentDecl> {
    
       		@Override
       		protected int getKind(AbstractGrammar grammar) {
    """
      File p = file("SubParsers.patch")
      p.delete();
      p << patch_content
      ant.patch(patchfile: 'SubParsers.patch', originalfile: 'src/org/eventb/internal/core/parser/SubParsers.java', failonerror:'true' )
    }
    
    
    compileJava {
      dependsOn << 'tom'
    }
    
    clean{
        delete "src/org/eventb/internal/core/typecheck/TypeUnifier.java"
    }
    
    if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword')) {
    
    println "Configured upload task"
    
    apply plugin: 'signing'
    
    task javadocJar(type: Jar) {
        classifier = 'javadoc'
        from javadoc
    }
    
    task sourcesJar(type: Jar) {
        classifier = 'sources'
        from sourceSets.main.allSource
    }
    
    artifacts {
        archives javadocJar, sourcesJar
    }
    
    signing {
        sign configurations.archives
    }
    
    uploadArchives {
      repositories {
        mavenDeployer {
          beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
    
          repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
            authentication(userName: ossrhUsername, password: ossrhPassword)
          }
    
          snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
            authentication(userName: ossrhUsername, password: ossrhPassword)
          }
    
          pom.project {
            name 'Rodin EventB AST'
            packaging 'jar'
            // optionally artifactId can be defined here
            description 'The AST library extracted from the Rodin Platform.'
            url 'https://github.com/hhu-stups/rodin-ast'
    
            licenses {
              license {
                name 'Eclipse Public License, V 1.0'
                url 'https://www.eclipse.org/legal/epl-v10.html'
              }
            }
    
            scm {
              connection 'scm:git:git://github.com/hhu-stups/rodin-ast.git'
              developerConnection 'scm:git:git@github.com:hhu-stups/rodin-ast.git'
              url 'https://github.com/hhu-stups/rodin-ast'
            }
    
    
            developers {
              developer {
                id 'bendisposto'
                name 'Jens Bendisposto'
                email 'jens@bendisposto.de'
              }
            }
          }
        }
      }
    }
    }