build scripts: added method to build unpacked distribution

This commit is contained in:
nik
2016-09-13 10:32:40 +03:00
parent 3fb6f23938
commit 86431c33bf
3 changed files with 34 additions and 0 deletions
@@ -72,6 +72,8 @@ abstract class BuildTasks {
abstract void buildUpdaterJar()
abstract void buildUnpackedDistribution(String targetDirectory)
static BuildTasks create(BuildContext context) {
return new BuildTasksImpl(context)
}
@@ -271,6 +271,7 @@ idea.fatal.error.notification=disabled
compileModules(buildContext.productProperties.productLayout.includedPluginModules + distributionJARsBuilder.platformModules)
buildContext.messages.block("Build platform and plugin JARs") {
distributionJARsBuilder.buildJARs()
distributionJARsBuilder.buildAdditionalArtifacts()
}
if (buildContext.productProperties.scrambleMainJar) {
if (buildContext.proprietaryBuildTools.scrambleTool != null) {
@@ -448,6 +449,35 @@ idea.fatal.error.notification=disabled
}
}
@Override
void buildUnpackedDistribution(String targetDirectory) {
def jarsBuilder = new DistributionJARsBuilder(buildContext)
jarsBuilder.buildJARs()
/*
//todo[nik] uncomment this to update os-specific files (e.g. in 'bin' directory) as well
layoutShared()
def propertiesFile = patchIdeaPropertiesFile()
OsSpecificDistributionBuilder builder;
if (SystemInfo.isWindows) {
builder = new WindowsDistributionBuilder(buildContext, buildContext.windowsDistributionCustomizer, propertiesFile)
}
else if (SystemInfo.isLinux) {
builder = new LinuxDistributionBuilder(buildContext, buildContext.linuxDistributionCustomizer, propertiesFile)
}
else if (SystemInfo.isMac) {
builder = new MacDistributionBuilder(buildContext, buildContext.macDistributionCustomizer, propertiesFile)
}
else {
buildContext.messages.error("Update from source isn't supported for '$SystemInfo.OS_NAME'")
return
}
def osSpecificDistPath = builder.copyFilesForOsDistribution()
*/
buildContext.ant.copy(todir: targetDirectory) {
fileset(dir: buildContext.paths.distAll)
}
}
private abstract static class BuildTaskRunnable<V> {
final String taskName
@@ -136,7 +136,9 @@ class DistributionJARsBuilder {
void buildJARs() {
buildLib()
buildPlugins()
}
void buildAdditionalArtifacts() {
def productProperties = buildContext.productProperties
if (productProperties.generateLibrariesLicensesTable) {
buildContext.messages.block("Generate table of licenses for used third-party libraries") {