buildscript { repositories { mavenCentral() } dependencies { classpath group: 'org.gradlefx', name: 'gradlefx', version: '1.2.0' } } repositories { ivy { name 'Apache Flex' artifactPattern 'http://archive.apache.org/dist/flex/[revision]/binaries/[module]-[revision]-bin.[ext]' } ivy { name 'Player Globals' ivyPattern 'https://mrcomputer1.github.io/scratch-modding/resources/playerglobal-ivy/[module][revision].[ext]' artifactPattern 'https://raw.githubusercontent.com/nexussays/playerglobal/fef560243029214656d83fc673be0267a1ea0816/[revision]/[module].[ext]' } } apply plugin: org.gradlefx.plugins.GradleFxPlugin ext.getCommitID = { repository -> def dirty = "git status --porcelain --ignore-submodules=dirty".execute(null, file(repository)).text.trim() ? "-dirty" : "" def revision = "git rev-parse --short HEAD".execute(null, file(repository)).text.trim() return revision ? revision + dirty : 'unknown' } def commonDir = ext.commonDir def target = hasProperty('target') ? target : '11.6' println "Target is: $target" def config = new ConfigSlurper(target).parse(file("${commonDir}/config.groovy").toURL()) type = 'mobile' version = '1.0-SNAPSHOT' frameworkLinkage = 'none' buildDir = "${buildDir}/${target}" // GradleFX does an out-of-date check on the whole build dir output = config.get('output') playerVersion = config.get('playerVersion') def scratchFlashCommitID = getCommitID(commonDir) println "Commit ID for scratch-flash is: ${scratchFlashCommitID}" dependencies { flexSDK group: 'org.apache', name: 'apache-flex-sdk', version: '4.15.0', ext: 'zip' external group: 'macromedia.com', name: 'playerglobal', version: playerVersion, ext: 'swc' merged files( "${commonDir}/libs/as3corelib.swc", "${commonDir}/libs/blooddy_crypto.swc", "${commonDir}/libs/grabcut.swc" ) } sdkAutoInstall { showPrompts = false } additionalCompilerOptions = [ "-library-path+=libs/framework.swc", // in the SDK's frameworks directory "-library-path+=libs/osmf.swc", // in the SDK's frameworks directory "-target-player=${playerVersion}", "-default-size=800,600", "-define+=SCRATCH::revision,'${scratchFlashCommitID}'", "-advanced-telemetry", ] additionalCompilerOptions += config.get('additionalCompilerOptions') task wrapper(type: Wrapper) { gradleVersion = '2.5' }