mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-08-25 00:29:34 +07:00
1223 lines
46 KiB
XML
1223 lines
46 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<project name="IDEA Build" default="all_dist" basedir=".">
|
|
|
|
<taskdef name="javac2" classname="com.intellij.ant.Javac2"/>
|
|
|
|
<property file="version.properties"/>
|
|
<property file="build.properties"/>
|
|
|
|
<target name="next-build-prepare">
|
|
<condition property="build.completed">
|
|
<equals arg1="${build.status}" arg2="completed"/>
|
|
</condition>
|
|
</target>
|
|
|
|
<target name="next-build" depends="next-build-prepare" if="build.completed">
|
|
<echo message="next-build: Increment build number if previous build was completed"/>
|
|
|
|
<propertyfile file="version.properties">
|
|
<entry key="build.number" type="int" default="0" operation="+" value="1"/>
|
|
</propertyfile>
|
|
<propertyfile file="version.properties">
|
|
<entry key="build.status" value="none"/>
|
|
</propertyfile>
|
|
|
|
<cvs command="ci -m 'New version' version.properties" failonerror="false" />
|
|
|
|
<property file="version.properties"/>
|
|
</target>
|
|
|
|
<!-- set global properties for this build -->
|
|
<property name="build.compiler" value="modern" />
|
|
|
|
<property name="vcs.user.name" value="${idea.user.name}" />
|
|
<property name="vcs.user.password" value="${idea.user.password}" />
|
|
|
|
<!-- This property is used to copy dist to shared directory -->
|
|
<property name="dist.shared" value="${basedir}/../../builds"/>
|
|
|
|
<!--shortcuts-->
|
|
<property name="idea.build.path" value="${basedir}/temp" />
|
|
<property name="idea.build.lib" value="${basedir}/lib" />
|
|
<property name="idea.build.conf" value="${basedir}/conf" />
|
|
|
|
<property name="idea.build.plugins" value="${idea.build.path}/plugins" />
|
|
<property name="idea.build.classes.scrambled" value="${idea.build.path}/scrambled" />
|
|
|
|
<property name="idea.dist.path" value="${basedir}/out" />
|
|
<property name="idea.dist.logs" value="${idea.dist.path}/logs" />
|
|
|
|
<property name="tarball.root" value="idea-${build.number}"/>
|
|
|
|
<!-- Install Anywhere -->
|
|
<property name="idea.ia.data.path" value="${basedir}/../../IawData"/>
|
|
<property name="idea.ia.icons.path" value="${idea.ia.data.path}/icons"/>
|
|
<property name="idea.ia.build.path" value="${idea.ia.data.path}/build"/>
|
|
|
|
<property name="starteam.root.folder" value="/idea"/>
|
|
|
|
<property name="idea.project.name" value="Aurora" />
|
|
<property name="cvs.module.name" value="${idea.project.name}" />
|
|
<property name="help.project.name" value="AriadnaHelp" />
|
|
|
|
<property name="idea.project.path" value="${idea.build.path}/${idea.project.name}" />
|
|
<property name="idea.project.classes" value="${idea.project.path}/classes" />
|
|
<property name="idea.project.lib" value="${idea.project.path}/lib" />
|
|
|
|
<property name="idea.project.plugins" value="${idea.project.path}/plugins" />
|
|
|
|
<property name="idea.project.plugins.uiDesigner" value="${idea.project.path}/plugins/uiDesigner" />
|
|
<property name="idea.project.plugins.uiDesigner.src" value="${idea.project.plugins.uiDesigner}/source" />
|
|
<property name="idea.project.plugins.uiDesigner.forms" value="${idea.project.plugins.uiDesigner}/forms_rt_classes" />
|
|
<property name="idea.project.plugins.uiDesigner.scrambled" value="${idea.project.plugins.uiDesigner}/scrambled" />
|
|
|
|
<property name="idea.project.plugins.cvs2" value="${idea.project.path}/plugins/cvs2" />
|
|
<property name="idea.project.plugins.cvs2.src" value="${idea.project.plugins.cvs2}/source" />
|
|
<property name="idea.project.plugins.cvs2.javacvs" value="${idea.project.plugins.cvs2}/javacvs-src" />
|
|
<property name="idea.project.plugins.cvs2.smartcvs" value="${idea.project.plugins.cvs2}/smartcvs-src" />
|
|
<property name="idea.project.plugins.cvs2.metainf" value="${idea.project.plugins.cvs2}/META-INF" />
|
|
<property name="idea.project.plugins.cvs2.scrambled" value="${idea.project.plugins.cvs2.src}/scrambled" />
|
|
|
|
<property name="idea.project.src" value="${idea.project.path}/source" />
|
|
<property name="idea.project.src.runtime" value="${idea.project.path}/runtimesource"/>
|
|
<property name="idea.project.classes.runtime" value="${idea.project.src.runtime}/classes"/>
|
|
<property name="idea.project.help" value="${idea.project.path}/help" />
|
|
<property name="idea.project.license" value="${idea.project.path}/license"/>
|
|
<property name="idea.project.icons" value="${idea.project.path}/icons" />
|
|
<property name="idea.project.icons.build" value="${idea.project.path}/build/images/idea"/>
|
|
<property name="idea.project.resources" value="${idea.project.path}/resources" />
|
|
<property name="idea.project.bin" value="${idea.project.path}/bin" />
|
|
<property name="idea.project.doc" value="${idea.project.path}/doc" />
|
|
|
|
<property name="aspects.runtime.src" value="${idea.project.path}/rtaspectsource" />
|
|
<property name="aspects.runtime.classes" value="${aspects.runtime.src}/classes" />
|
|
|
|
<property name="idea.openapi.doc" value="${idea.project.doc}/openapi/javadoc" />
|
|
<property name="idea.openapi.src" value="${idea.build.path}/openapisrc" />
|
|
<property name="idea.openapi.classes" value="${idea.build.path}/openapiclasses" />
|
|
<property name="idea.openapi.stub" value="${idea.build.path}/openapistub"/>
|
|
|
|
<taskdef name="java118compiler" classname="Java118CompilerAntTask" classpath="${idea.build.lib}/118Compiler.zip"/>
|
|
|
|
<!--tasks-->
|
|
|
|
<target name="checkout-prepare" unless="vcs.label">
|
|
<tstamp>
|
|
<format property="nowstamp" pattern="yyyyMMddHHmmss" locale="en"/>
|
|
</tstamp>
|
|
<property name="vcs.label" value="Build_${build.number}_${nowstamp}"/>
|
|
|
|
<cvs
|
|
command="rtag ${vcs.label}"
|
|
package="${cvs.module.name}"
|
|
failonerror="true"/>
|
|
|
|
<!-- Checkout alternative CVS2 sources -->
|
|
<cvs
|
|
cvsroot="${alt.cvs.root}"
|
|
command="rtag ${vcs.label}"
|
|
package="${alt.cvs.project.1}"/>
|
|
|
|
<cvs
|
|
cvsroot="${alt.cvs.root}"
|
|
command="rtag ${vcs.label}"
|
|
package="${alt.cvs.project.2}"/>
|
|
<!-- CVS2 end -->
|
|
<!--
|
|
<exec executable="${starteam.executable}" failonerror="true">
|
|
<arg value="label"/>
|
|
<arg value="-p"/>
|
|
<arg value="${vcs.user.name}:${vcs.user.password}@Main:49201/${help.project.name}/${help.project.name}"/>
|
|
<arg value="-x"/>
|
|
<arg value="-stop"/>
|
|
<arg value="-nl"/>
|
|
<arg value="${vcs.label}"/>
|
|
</exec>
|
|
-->
|
|
</target>
|
|
|
|
<target name="checkout" depends="checkout-prepare">
|
|
<echo message="Use label : ${vcs.label}"/>
|
|
|
|
<cvs
|
|
command="export -r ${vcs.label}"
|
|
package="${cvs.module.name}"
|
|
dest="${idea.build.path}"
|
|
failonerror="true"/>
|
|
|
|
<!-- CVS2 -->
|
|
|
|
<cvs
|
|
cvsroot="${alt.cvs.root}"
|
|
command="export -r ${vcs.label}"
|
|
package="${alt.cvs.project.1}"
|
|
dest="${idea.project.plugins.cvs2}"
|
|
failonerror="true"/>
|
|
|
|
<cvs
|
|
cvsroot="${alt.cvs.root}"
|
|
command="export -r ${vcs.label}"
|
|
package="${alt.cvs.project.2}"
|
|
dest="${idea.project.plugins.cvs2}"
|
|
failonerror="true"/>
|
|
<!-- CVS2 end-->
|
|
|
|
<tstamp>
|
|
<format property="nowstamp" pattern="yyyyMMddHHmmss" locale="en"/>
|
|
</tstamp>
|
|
<!--
|
|
<stcheckout
|
|
URL="Main:49201/${help.project.name}/${help.project.name}"
|
|
username="${vcs.user.name}"
|
|
password="${vcs.user.password}"
|
|
rootstarteamfolder="${starteam.root.folder}"
|
|
rootlocalfolder="${idea.project.help}/idea"
|
|
label="${vcs.label}"
|
|
forced="true"
|
|
deleteuncontrolled="false"
|
|
/>
|
|
-->
|
|
</target>
|
|
|
|
<target name="prepare">
|
|
<echo message="Building #${build.number}"/>
|
|
<mkdir dir="${idea.dist.path}" />
|
|
<mkdir dir="${idea.dist.logs}" />
|
|
<mkdir dir="${idea.build.path}" />
|
|
|
|
<antcall target="checkout"/>
|
|
|
|
<!--exclude Fabrique sources from build-->
|
|
<delete failonerror="false">
|
|
<fileset dir="${idea.project.path}/Fabrique" includes="**/*.*" />
|
|
</delete>
|
|
|
|
<mkdir dir="${idea.project.classes}" />
|
|
<mkdir dir="${idea.build.plugins}" />
|
|
<mkdir dir="${idea.build.classes.scrambled}" />
|
|
<mkdir dir="${idea.openapi.doc}" />
|
|
<mkdir dir="${idea.openapi.classes}" />
|
|
<fixcrlf srcdir="${idea.project.bin}" eol="lf" eof="remove" includes="**/*.sh" />
|
|
</target>
|
|
|
|
<target name="help-index">
|
|
<property name="help.dir" value="${idea.project.path}/help/idea"/>
|
|
|
|
<copy file="${idea.project.path}/build/help/ignore.txt" todir="${help.dir}"/>
|
|
<java
|
|
classname="com.intellij.internalUtilities.helpIndex.HelpIndexConfBuilder"
|
|
fork="yes"
|
|
dir="${help.dir}"
|
|
failonerror="true">
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
<!--<jvmarg value="-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar"/>-->
|
|
<classpath>
|
|
<pathelement location="${idea.project.classes}"/>
|
|
</classpath>
|
|
</java>
|
|
|
|
<java
|
|
classname="com.sun.java.help.search.Indexer"
|
|
fork="yes"
|
|
dir="${help.dir}"
|
|
failonerror="true">
|
|
<classpath>
|
|
<pathelement location="${idea.project.path}/build/help/jhall.jar"/>
|
|
</classpath>
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
<arg value="-c"/>
|
|
<arg value="indexgen.conf"/>
|
|
</java>
|
|
<delete file="${help.dir}/ignore.txt"/>
|
|
<delete file="${help.dir}/indexgen.conf"/>
|
|
</target>
|
|
|
|
<target name="compile">
|
|
<!-- compile aspects -->
|
|
<ant dir="${idea.project.src}/com/intellij/aspects" />
|
|
|
|
<antcall target="build-runtimesource-122"/>
|
|
|
|
<mkdir dir="${aspects.runtime.classes}"/>
|
|
|
|
<javac2
|
|
destdir="${aspects.runtime.classes}"
|
|
debug="on"
|
|
source="1.4"
|
|
includeAntRuntime="no">
|
|
<src path="${aspects.runtime.src}"/>
|
|
</javac2>
|
|
|
|
<move todir="${idea.project.classes}">
|
|
<fileset dir="${idea.project.classes}/main"/>
|
|
</move>
|
|
|
|
<javac2
|
|
destdir="${idea.project.classes}"
|
|
debug="on"
|
|
source="1.5"
|
|
fork="true"
|
|
includeAntRuntime="no">
|
|
<compilerarg value="-J-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar" />
|
|
<compilerarg value="-J-Xmx256m"/>
|
|
<src path="${idea.project.src}"/>
|
|
<src path="${idea.project.plugins.uiDesigner.src}"/>
|
|
<src path="${idea.project.plugins.cvs2.javacvs}"/>
|
|
<src path="${idea.project.plugins.cvs2.smartcvs}"/>
|
|
<src path="${idea.project.plugins.cvs2.src}"/>
|
|
<exclude name="**/CreateModuleCommand.java"/>
|
|
<bootclasspath>
|
|
<pathelement location="${idea.project.lib}/generics/collect.jar" />
|
|
<pathelement location="${idea.jdk.home}/jre/lib/rt.jar" />
|
|
</bootclasspath>
|
|
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar" />
|
|
<exclude name="**/collect.jar"/>
|
|
<exclude name="**/gjc-rt.jar"/>
|
|
</fileset>
|
|
<!-- <pathelement location="${idea.project.lib}/rt/generics/2.0/collect.jar"/>-->
|
|
<pathelement location="${idea.project.classes}"/>
|
|
<pathelement location="${aspects.runtime.classes}" />
|
|
<pathelement location="${idea.build.lib}/javac2.jar"/> <!--needed for form compiler-->
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_compiler.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_runtime.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/j2ee.jar"/>
|
|
<pathelement location="${idea.build.path}/idea_rt.jar"/>
|
|
<pathelement location="${idea.jdk.home}/lib/tools.jar" />
|
|
</classpath>
|
|
</javac2>
|
|
<!--delete GLUE integration classes!-->
|
|
<delete>
|
|
<fileset dir="${idea.project.classes}/com/intellij/glue" includes="**/*.*" />
|
|
</delete>
|
|
</target>
|
|
|
|
<target name="generate-rgs">
|
|
<copy todir="${idea.project.classes}" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.resources}" />
|
|
</copy>
|
|
|
|
<copy todir="${idea.project.classes}" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.src}">
|
|
<exclude name="**/*.java"/>
|
|
<exclude name="**/test/"/>
|
|
</fileset>
|
|
<fileset dir="${idea.project.plugins.uiDesigner.src}">
|
|
<exclude name="**/*.java"/>
|
|
<exclude name="**/test/"/>
|
|
</fileset>
|
|
|
|
</copy>
|
|
|
|
<java
|
|
classname="com.intellij.internalUtilities.generateRGS.GenerateRGS"
|
|
fork="yes"
|
|
dir="${idea.project.bin}"
|
|
failonerror="true" >
|
|
<!-- source path-->
|
|
<arg value="${idea.project.src},${idea.project.plugins.cvs2.src},${idea.project.plugins.uiDesigner.src}" />
|
|
<!-- defaults path -->
|
|
<arg value="${idea.project.resources}" />
|
|
<!-- lib path -->
|
|
<arg value="${idea.project.lib}" />
|
|
<!-- input file -->
|
|
<arg value="${idea.build.conf}/script.zkm.stub" />
|
|
<!-- output file -->
|
|
<arg value="${idea.build.path}/script.zkm" />
|
|
<!-- output format -->
|
|
<arg value="ZELIX_KLASSMASTER" />
|
|
|
|
<!--<jvmarg value="-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar"/>-->
|
|
<jvmarg value="-Didea.plugins.load=false"/>
|
|
<jvmarg value="-Xdebug"/>
|
|
<jvmarg value="-Xnoagent"/>
|
|
<jvmarg value="-Djava.compiler=NONE"/>
|
|
<jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5200"/>
|
|
<jvmarg value="-mx200m" />
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar" />
|
|
<exclude name="**/collect.jar"/>
|
|
<exclude name="**/gjc-rt.jar"/>
|
|
</fileset>
|
|
<pathelement location="${idea.jdk.home}/lib/tools.jar"/>
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_compiler.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_runtime.jar"/>
|
|
<pathelement location="${idea.project.lib}/jdom.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/j2ee.jar"/>
|
|
<pathelement location="${idea.project.classes}" />
|
|
<pathelement location="${idea.project.icons}" />
|
|
</classpath>
|
|
</java>
|
|
|
|
<replace dir="${idea.build.path}" includes="**/script.zkm" token="__CLASSES__" value="${idea.project.classes}" />
|
|
<replace dir="${idea.build.path}" includes="**/script.zkm" token="__SCRAMBLED_CLASSES__" value="${idea.build.classes.scrambled}" />
|
|
</target>
|
|
|
|
<target name="scramble">
|
|
<java
|
|
classname="ZKM"
|
|
fork="yes"
|
|
failonerror="true">
|
|
<jvmarg value="-mx400m" />
|
|
<arg value="${idea.build.path}/script.zkm" />
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar" />
|
|
</fileset>
|
|
<pathelement location="${aspects.runtime.classes}" />
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_compiler.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/jasper_runtime.jar"/>
|
|
<pathelement location="${idea.project.lib}/rt/j2ee.jar"/>
|
|
<pathelement location="${idea.build.path}/idea_rt.jar"/>
|
|
<pathelement location="${idea.build.lib}/ZKM.jar" />
|
|
<pathelement location="${idea.jdk.home}/lib/tools.jar" />
|
|
</classpath>
|
|
</java>
|
|
<move file="ChangeLog.txt" tofile="${idea.dist.logs}/zkm${build.number}.log" />
|
|
<move file="ZKM_log.txt" tofile="${idea.dist.logs}/ZKM_log_${build.number}.txt" />
|
|
<!--<move file="ZKM_O.ser" tofile="${idea.dist.logs}/${build.number}/ZKM_O.ser" /> -->
|
|
</target>
|
|
|
|
<target name="copy-resources">
|
|
<tstamp/>
|
|
<replace dir="${idea.project.resources}/idea" includes="**/ApplicationInfo.xml" token="__BUILD_NUMBER__" value="${build.number}" />
|
|
<replace dir="${idea.project.resources}/idea" includes="**/ApplicationInfo.xml" token="__BUILD_DATE__" value="${DSTAMP}" />
|
|
|
|
<!--copy resources to main version-->
|
|
<copy todir="${idea.project.classes}" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.src}">
|
|
<exclude name="**/test/"/>
|
|
<exclude name="**/*.java"/>
|
|
<exclude name="**/*.aj"/>
|
|
<exclude name="**/*.template"/>
|
|
<exclude name="**/*.psi"/>
|
|
<exclude name="**/*.g"/>
|
|
<exclude name="**/*.diff"/>
|
|
<exclude name="**/*.txt"/>
|
|
<exclude name="**/*.log"/>
|
|
<exclude name="**/*.form"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${idea.project.classes}" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.resources}" />
|
|
</copy>
|
|
|
|
<!-- copy defaults to scrambled version -->
|
|
<copy todir="${idea.build.classes.scrambled}" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.src}">
|
|
<exclude name="**/test/"/>
|
|
<exclude name="**/*.java"/>
|
|
<exclude name="**/*.aj"/>
|
|
<exclude name="**/*.template"/>
|
|
<exclude name="**/*.psi"/>
|
|
<exclude name="**/*.g"/>
|
|
<exclude name="**/*.diff"/>
|
|
<exclude name="**/*.txt"/>
|
|
<exclude name="**/*.log"/>
|
|
<exclude name="**/*.form"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<delete>
|
|
<fileset dir="${idea.build.classes.scrambled}" includes="**/*.xxx" />
|
|
</delete>
|
|
|
|
<!--create mangled version of defaults-->
|
|
<java
|
|
classname="com.intellij.internalUtilities.generateRGS.ResourceMangler"
|
|
fork="yes"
|
|
dir="${idea.project.resources}"
|
|
failonerror="true">
|
|
<arg value="${idea.dist.logs}/zkm${build.number}.log" />
|
|
<arg value="${idea.project.resources}" />
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
|
|
<!--<jvmarg value="-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar"/>-->
|
|
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar" />
|
|
</fileset>
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.classes}" />
|
|
</classpath>
|
|
</java>
|
|
|
|
<copy todir="${idea.dist.logs}/${build.number}">
|
|
<fileset dir="${idea.project.resources}" includes="*_mangled.xml" />
|
|
</copy>
|
|
|
|
<!--copy defaults with XOR -->
|
|
<java
|
|
classname="CopyDefaults"
|
|
fork="yes"
|
|
dir="${idea.project.resources}"
|
|
failonerror="true" >
|
|
<arg value="${idea.project.resources}" />
|
|
<arg value="${idea.build.classes.scrambled}" />
|
|
<arg value="3425" />
|
|
<classpath>
|
|
<pathelement location="${idea.build.lib}" />
|
|
</classpath>
|
|
</java>
|
|
|
|
</target>
|
|
|
|
<target name="openapi">
|
|
<mkdir dir="${idea.openapi.classes}/com/intellij/openapi" />
|
|
<copy todir="${idea.openapi.classes}/com/intellij/openapi" includeEmptyDirs="no">
|
|
<fileset dir="${idea.build.classes.scrambled}/com/intellij/openapi" />
|
|
</copy>
|
|
<java
|
|
classname="DirectorySynchronizer"
|
|
fork="yes"
|
|
failonerror="true">
|
|
<arg value="${idea.openapi.src}/com/intellij/openapi" />
|
|
<arg value="${idea.openapi.classes}/com/intellij/openapi" />
|
|
<classpath>
|
|
<pathelement location="${idea.build.lib}" />
|
|
</classpath>
|
|
</java>
|
|
|
|
<javadoc
|
|
packagenames="com.intellij.openapi.*"
|
|
sourcepath="${idea.openapi.src}"
|
|
defaultexcludes="yes"
|
|
destdir="${idea.openapi.doc}"
|
|
author="false"
|
|
version="true"
|
|
use="true"
|
|
windowtitle="IntelliJ IDEA Open API"/>
|
|
|
|
<!-- Generate openapi stub -->
|
|
<mkdir dir="${idea.openapi.stub}/com/intellij/openapi"/>
|
|
<copy todir="${idea.openapi.stub}/com/intellij/openapi" includeemptydirs="no">
|
|
<fileset dir="${idea.openapi.src}/com/intellij/openapi"/>
|
|
</copy>
|
|
|
|
<java
|
|
classname="com.intellij.internalUtilities.stripper.Main"
|
|
fork="yes"
|
|
dir="${idea.project.bin}"
|
|
failonerror="true">
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
<arg value="com.intellij.openapi"/>
|
|
<arg value="${idea.openapi.stub}"/>
|
|
<jvmarg value="-mx200m"/>
|
|
|
|
<!--<jvmarg value="-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar"/>-->
|
|
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar"/>
|
|
</fileset>
|
|
<fileset dir="${idea.project.lib}/rt">
|
|
<include name="*.jar"/>
|
|
</fileset>
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.classes}"/>
|
|
<pathelement location="${idea.project.icons}"/>
|
|
</classpath>
|
|
</java>
|
|
|
|
<zip
|
|
zipfile="${idea.build.path}/openapi_stub.zip"
|
|
basedir="${idea.openapi.stub}"
|
|
compress="true"/>
|
|
|
|
<copy
|
|
file="${idea.project.resources}/idea/ActionManager.xml"
|
|
tofile="${idea.project.doc}/openapi/ActionManager.xml" />
|
|
|
|
<java
|
|
classname="com.intellij.internalUtilities.generateRGS.ClassNameStripper"
|
|
fork="yes"
|
|
dir="${idea.project.resources}"
|
|
failonerror="true">
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
<arg value="${idea.project.doc}/openapi/ActionManager.xml" />
|
|
|
|
<!--<jvmarg value="-Xbootclasspath/p:${idea.project.lib}/generics/gjc-rt.jar"/>-->
|
|
|
|
<classpath>
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="*.jar" />
|
|
</fileset>
|
|
<pathelement location="${idea.project.lib}/dev/mockweblogic.jar"/>
|
|
<pathelement location="${idea.project.classes}" />
|
|
</classpath>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="jar">
|
|
<jar
|
|
jarfile="${idea.build.path}/idea_unscrambled.jar"
|
|
basedir="${idea.project.classes}"
|
|
compress="false" >
|
|
</jar>
|
|
<mkdir dir="${idea.dist.path}/unscrambled" />
|
|
<mkdir dir="${idea.dist.path}/unscrambled/${build.number}" />
|
|
<copy
|
|
file="${idea.build.path}/idea_unscrambled.jar"
|
|
tofile="${idea.dist.path}/unscrambled/${build.number}/idea.jar" />
|
|
<delete file="${idea.build.path}/idea_unscrambled.jar" />
|
|
|
|
<!--
|
|
<move todir="${idea.project.plugins.cvs2.scrambled}/com/intellij/cvsSupport2">
|
|
<fileset dir="${idea.build.classes.scrambled}/com/intellij/cvsSupport2"/>
|
|
</move>
|
|
-->
|
|
|
|
<copy todir="${idea.project.plugins.cvs2.scrambled}/META-INF">
|
|
<fileset dir="${idea.project.plugins.cvs2.metainf}"/>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.classes.scrambled}">
|
|
<fileset dir="${idea.project.classes}">
|
|
<include name="**/*.xml"/>
|
|
<include name="*.xml"/>
|
|
<include name="**/icons/*.*"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<jar
|
|
jarfile="${idea.build.path}/idea.jar"
|
|
basedir="${idea.build.classes.scrambled}"
|
|
compress="false" >
|
|
<exclude name="**/componentSets/*.xml"/>
|
|
<exclude name="**/idea/*.xml"/>
|
|
<exclude name="**/uiDesigner.Palette.xml"/>
|
|
<exclude name="**/parserGenTemplates/"/>
|
|
<exclude name="**/uiDesigner/"/>
|
|
<exclude name="**/internalUtilities/"/>
|
|
<exclude name="**/ClassTemplateManager.xml"/>
|
|
<exclude name="**/DebuggerSettings.xml"/>
|
|
<exclude name="**/DefaultCodeStyleSchemes.xml"/>
|
|
<exclude name="**/DefaultColorSchemesManager.xml"/>
|
|
<exclude name="**/defaultFileTypes.xml"/>
|
|
<exclude name="**/IdeaTestComponents.xml"/>
|
|
</jar>
|
|
|
|
<jar
|
|
jarfile="${idea.build.path}/cvsIntegration.jar"
|
|
basedir="${idea.project.plugins.cvs2.scrambled}"
|
|
compress="false" />
|
|
|
|
<jar
|
|
jarfile="${idea.build.path}/aspect_rt.jar"
|
|
basedir="${aspects.runtime.classes}"
|
|
compress="false" />
|
|
|
|
<copy todir="${idea.project.plugins.uiDesigner.scrambled}/META-INF">
|
|
<fileset dir="${idea.project.plugins.uiDesigner}/META-INF"/>
|
|
</copy>
|
|
<copy todir="${idea.project.plugins.uiDesigner.scrambled}/com/intellij/uiDesigner">
|
|
<fileset dir="${idea.build.classes.scrambled}/com/intellij/uiDesigner"/>
|
|
</copy>
|
|
<copy todir="${idea.project.plugins.uiDesigner.scrambled}">
|
|
<fileset dir="${idea.project.plugins.uiDesigner.src}">
|
|
<include name="*.xml"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<!-- build uiDesigner jars -->
|
|
<!-- build forms_rt.jar -->
|
|
<jar basedir="${idea.project.plugins.uiDesigner.scrambled}"
|
|
jarfile="${idea.project.plugins.uiDesigner}/forms_rt.jar">
|
|
<include name="**/core/*.class"/>
|
|
</jar>
|
|
|
|
<mkdir dir="${idea.project.plugins.uiDesigner.scrambled}/fileTemplates"/>
|
|
|
|
<copy todir="${idea.project.plugins.uiDesigner.scrambled}/fileTemplates" includeEmptyDirs="no">
|
|
<fileset dir="${idea.project.plugins.uiDesigner.src}/fileTemplates">
|
|
<include name="**/*.ft"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<!-- build uiDesigner.jar -->
|
|
<jar basedir="${idea.project.plugins.uiDesigner.scrambled}"
|
|
jarfile="${idea.project.plugins.uiDesigner}/uiDesigner.jar">
|
|
<include name="**/*"/>
|
|
<exclude name="**/core/"/>
|
|
</jar>
|
|
|
|
|
|
<mkdir dir="${idea.dist.path}/source" />
|
|
<zip
|
|
zipfile="${idea.dist.path}/source/src${build.number}.zip"
|
|
compress="true" >
|
|
<fileset dir="${idea.project.src}"/>
|
|
<fileset dir="${idea.project.src.runtime}"/>
|
|
<fileset dir="${idea.project.plugins.uiDesigner.src}"/>
|
|
<fileset dir="${idea.project.plugins.cvs2.javacvs}"/>
|
|
<fileset dir="${idea.project.plugins.cvs2.smartcvs}"/>
|
|
<fileset dir="${idea.project.plugins.cvs2.src}"/>
|
|
</zip>
|
|
|
|
<copy todir="${idea.dist.path}/source">
|
|
<fileset dir="${idea.build.conf}/prj"/>
|
|
</copy>
|
|
<replace file="${idea.dist.path}/source/source.iml" token="@@@" value="${build.number}" />
|
|
<rename src="${idea.dist.path}/source/source.iml" dest="${idea.dist.path}/source/${build.number}.iml"/>
|
|
<rename src="${idea.dist.path}/source/source.ipr" dest="${idea.dist.path}/source/${build.number}.ipr"/>
|
|
|
|
<zip
|
|
zipfile="${idea.dist.path}/source/defaults${build.number}.zip"
|
|
basedir="${idea.project.resources}"
|
|
compress="true" />
|
|
|
|
<jar jarfile="${idea.build.path}/openapi.jar"
|
|
basedir="${idea.openapi.classes}"
|
|
compress="false" />
|
|
</target>
|
|
|
|
<target name="prepare-dist-folders">
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}"/>
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}/license"/>
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}/plugins"/>
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}/doc"/>
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}/help"/>
|
|
|
|
<copy file="${idea.build.conf}/log.xml"
|
|
tofile="${idea.build.path}/dist.${dist.os}/bin/log.xml"/>
|
|
|
|
<mkdir dir="${idea.build.path}/dist.${dist.os}/help/idea/tips"/>
|
|
<copy todir="${idea.build.path}/dist.${dist.os}/help/idea/tips">
|
|
<fileset dir="${idea.project.help}/idea/tips"/>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.${dist.os}/doc">
|
|
<fileset dir="${idea.project.doc}">
|
|
<include name="**"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy
|
|
file="${idea.build.path}/openapi_stub.zip"
|
|
todir="${idea.build.path}/dist.${dist.os}/doc"/>
|
|
|
|
<copy
|
|
todir="${idea.build.path}/dist.${dist.os}/lib"
|
|
includeemptydirs="false">
|
|
<fileset dir="${idea.project.lib}"
|
|
includesfile="${idea.project.lib}/required_for_dist.txt"/>
|
|
|
|
|
|
<fileset dir="${idea.build.path}">
|
|
<include name="idea.jar"/>
|
|
<include name="idea_rt.jar"/>
|
|
<include name="aspect_rt.jar"/>
|
|
<include name="openapi.jar"/>
|
|
</fileset>
|
|
|
|
<fileset dir="${idea.project.plugins.uiDesigner}">
|
|
<include name="forms_rt.jar"/>
|
|
</fileset>
|
|
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.${dist.os}/lib/rt">
|
|
<fileset dir="${idea.project.lib}/rt"
|
|
includesfile="${idea.project.lib}/rt/required_for_dist.txt"/>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.${dist.os}">
|
|
<fileset dir="${idea.project.path}">
|
|
<include name="Changes.txt"/>
|
|
<include name="Readme.txt"/>
|
|
<include name="KnownIssues.txt"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.${dist.os}/license">
|
|
<fileset dir="${idea.project.license}">
|
|
<include name="**"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<echo message="${build.number}"
|
|
file="${idea.build.path}/dist.${dist.os}/build.txt"/>
|
|
|
|
<zip
|
|
zipfile="${idea.build.path}/dist.${dist.os}/lib/icons.jar"
|
|
basedir="${idea.project.icons}" includes="**/*.*" compress="false"/>
|
|
</target>
|
|
|
|
<target
|
|
name="plugins-dist"
|
|
description="Make plugins dists">
|
|
<antcall target="deploy-plugin-starteam-integration">
|
|
<param name="distribution.dir" value="${idea.build.path}/dist.${dist.os}/plugins"/>
|
|
</antcall>
|
|
|
|
<antcall target="deploy-plugin-tomcat-integration">
|
|
<param name="distribution.dir" value="${idea.build.path}/dist.${dist.os}/plugins"/>
|
|
</antcall>
|
|
|
|
<antcall target="deploy-plugin-cvs-integration">
|
|
<param name="distribution.dir" value="${idea.build.path}/dist.${dist.os}/plugins"/>
|
|
</antcall>
|
|
|
|
<antcall target="deploy-plugin-uiDesigner">
|
|
<param name="distribution.dir" value="${idea.build.path}/dist.${dist.os}/plugins"/>
|
|
</antcall>
|
|
</target>
|
|
|
|
<target name="prepare-dist">
|
|
<antcall target="prepare-dist-folders">
|
|
<param name="dist.os" value="all"/>
|
|
</antcall>
|
|
<antcall target="plugins-build"/>
|
|
|
|
<!-- copy UI Designer plugin files -->
|
|
<mkdir dir="${idea.build.plugins}/uiDesigner/lib"/>
|
|
<copy todir="${idea.build.plugins}/uiDesigner/lib" file="${idea.project.plugins.uiDesigner}/forms_rt.jar"/>
|
|
<copy todir="${idea.build.plugins}/uiDesigner/lib" file="${idea.project.plugins.uiDesigner}/uiDesigner.jar"/>
|
|
|
|
<antcall target="plugins-dist">
|
|
<param name="dist.os" value="all"/>
|
|
</antcall>
|
|
|
|
<mkdir dir="${idea.build.path}/dist.all/lib1"/>
|
|
<copy todir="${idea.build.path}/dist.all/lib1">
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="JNIWrap.jar"/>
|
|
</fileset>
|
|
</copy>
|
|
|
|
<copy file="${idea.project.plugins.uiDesigner}/forms_rt.jar" todir="${idea.build.path}/dist.all/lib1"/>
|
|
<move file="${idea.build.path}/dist.all/lib/idea.jar" todir="${idea.build.path}/dist.all/lib1"/>
|
|
<move file="${idea.build.path}/dist.all/lib/jdom.jar" todir="${idea.build.path}/dist.all/lib1"/>
|
|
<move file="${idea.build.path}/dist.all/lib/log4j.jar" todir="${idea.build.path}/dist.all/lib1"/>
|
|
|
|
<copy todir="${idea.build.path}/dist.all/bin">
|
|
<fileset dir="${idea.project.bin}"/>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.all/bin/icons">
|
|
<fileset dir="${idea.project.icons.build}"/>
|
|
</copy>
|
|
|
|
<mkdir dir="${idea.build.path}/dist.all/log"/>
|
|
|
|
<antcall target="build-installer-utils-122"/>
|
|
|
|
<copy file="${idea.build.path}/installer.jar" todir="${idea.build.path}/dist.all"/>
|
|
|
|
<copy todir="${idea.build.path}/dist.all">
|
|
<fileset dir="${idea.project.path}/build/exe"/>
|
|
</copy>
|
|
|
|
<echo
|
|
append="true"
|
|
file="${idea.build.path}/dist.all/log/install.ini"
|
|
message="fixdirs=doc:help:lib:plugins:license"/>
|
|
<echo
|
|
append="true"
|
|
file="${idea.build.path}/dist.all/log/idea_install_custom.log"
|
|
message="Install log file"/>
|
|
|
|
<mkdir dir="${idea.build.path}/dist.all/formac/idea.app/Contents"/>
|
|
<mkdir dir="${idea.build.path}/dist.all/formac/idea.app/Contents/MacOS"/>
|
|
<copy
|
|
file="${idea.project.path}/build/mac/Info.plist"
|
|
todir="${idea.build.path}/dist.all/formac/idea.app/Contents"/>
|
|
|
|
<copy
|
|
file="${idea.project.path}/build/mac/idea"
|
|
todir="${idea.build.path}/dist.all/formac/idea.app/Contents/MacOS"/>
|
|
</target>
|
|
|
|
<target name="build-installer-utils-122">
|
|
<!-- prepare -->
|
|
<mkdir dir="${idea.build.path}/installer_utils"/>
|
|
<exec
|
|
dir="${idea.project.path}/build/installer"
|
|
executable="cmd.exe"
|
|
failonerror="true">
|
|
<arg line="/c dir /b /s /a-d source > ${idea.build.path}/installer_utils_dir.txt"/>
|
|
</exec>
|
|
|
|
<!-- compile -->
|
|
<exec executable="${idea.jdk.12.javac}" failonerror="true">
|
|
<arg value="-classpath"/>
|
|
<arg value="${idea.project.path}/build/installer/lib/IAClasses.zip"/>
|
|
<arg value="-sourcepath"/>
|
|
<arg value="${idea.project.path}/build/installer/source"/>
|
|
<arg value="-d"/>
|
|
<arg value="${idea.build.path}/installer_utils"/>
|
|
<arg value="@${idea.build.path}/installer_utils_dir.txt"/>
|
|
</exec>
|
|
|
|
<!-- jar -->
|
|
<copy
|
|
file="${idea.project.path}/license/IDEA_license.txt"
|
|
todir="${idea.build.path}/installer_utils"/>
|
|
|
|
<copy
|
|
file="${idea.project.path}/Readme.txt"
|
|
tofile="${idea.build.path}/installer_utils/IDEA_readme.txt"/>
|
|
|
|
<echo
|
|
append="true"
|
|
file="${idea.build.path}/installer_utils/ideacustomcode.ini"
|
|
message="fixdirs=doc:help:lib:plugins:license"/>
|
|
<echo
|
|
file="${idea.build.path}/installer_utils/com/intellij/build.txt"
|
|
message="buildNumber=${build.number}"/>
|
|
|
|
<jar
|
|
basedir="${idea.build.path}/installer_utils"
|
|
destfile="${idea.build.path}/installer.jar"/>
|
|
</target>
|
|
|
|
<target
|
|
name="dist-win"
|
|
depends="jar,prepare-dist"
|
|
description="Make Windows distributions">
|
|
<antcall target="prepare-dist-folders">
|
|
<param name="dist.os" value="win"/>
|
|
</antcall>
|
|
|
|
<antcall target="plugins-dist">
|
|
<param name="dist.os" value="win"/>
|
|
</antcall>
|
|
|
|
<copy todir="${idea.build.path}/dist.win/lib">
|
|
<fileset dir="${idea.project.lib}">
|
|
<include name="JNIWrap.jar" />
|
|
</fileset>
|
|
</copy>
|
|
|
|
<copy todir="${idea.build.path}/dist.win/bin">
|
|
<fileset dir="${idea.project.bin}">
|
|
<exclude name="*.sh"/>
|
|
<exclude name="*.so"/>
|
|
<exclude name="*.license"/>
|
|
</fileset>
|
|
<fileset dir="${idea.project.icons.build}">
|
|
<include name="idea.ico"/>
|
|
<include name="inspection.ico"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="dist-unix" depends="jar, prepare-dist">
|
|
<antcall target="prepare-dist-folders">
|
|
<param name="dist.os" value="unix"/>
|
|
</antcall>
|
|
|
|
<antcall target="plugins-dist">
|
|
<param name="dist.os" value="unix"/>
|
|
</antcall>
|
|
|
|
<copy todir="${idea.build.path}/dist.unix/bin" includeemptydirs="false" >
|
|
<fileset dir="${idea.project.bin}">
|
|
<exclude name="jikes/**/*.*"/>
|
|
<exclude name="*.license" />
|
|
<exclude name="*.bat" />
|
|
<exclude name="*.dll" />
|
|
<exclude name="*.pif" />
|
|
<exclude name="*.lic" />
|
|
</fileset>
|
|
<fileset dir="${idea.project.icons.build}">
|
|
<include name="idea*.png"/>
|
|
<include name="inspection*.png"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy file="${idea.project.path}/Install.txt" todir="${idea.build.path}/dist.unix"/>
|
|
</target>
|
|
|
|
<target
|
|
name="tar-unix"
|
|
depends="dist-unix"
|
|
description="Makes a tar.gz files with a Unix distribution">
|
|
<mkdir dir="${idea.dist.path}/${build.number}/unix" />
|
|
|
|
<mkdir dir="${idea.build.path}/for_tar/${tarball.root}"/>
|
|
<copy todir="${idea.build.path}/for_tar/${tarball.root}">
|
|
<fileset dir="${idea.build.path}/dist.unix"/>
|
|
</copy>
|
|
<tar tarfile="${idea.dist.path}/${build.number}/unix/idea${build.number}.tar">
|
|
<tarfileset dir="${idea.build.path}/for_tar/${tarball.root}/.." mode="750">
|
|
<include name="${tarball.root}/bin/*.sh"/>
|
|
</tarfileset>
|
|
<tarfileset dir="${idea.build.path}/for_tar/${tarball.root}/..">
|
|
<include name="${tarball.root}/**"/>
|
|
<exclude name="${tarball.root}/bin/*.sh"/>
|
|
</tarfileset>
|
|
</tar>
|
|
<gzip
|
|
src="${idea.dist.path}/${build.number}/unix/idea${build.number}.tar"
|
|
zipfile="${idea.dist.path}/${build.number}/unix/idea${build.number}.tar.gz" />
|
|
<delete file="${idea.dist.path}/${build.number}/unix/idea${build.number}.tar"/>
|
|
<copy file="${idea.project.path}/jres/vm.tar.Z"
|
|
tofile="${idea.dist.path}/${build.number}/unix/idea${build.number}-linux_jre.tar.gz"/>
|
|
|
|
<!-- make a full tar.gz -->
|
|
<gunzip src="${idea.project.path}/jres/vm.tar.Z" dest="${idea.build.path}/for_tar/${tarball.root}/vm.tar"/>
|
|
<untar src="${idea.build.path}/for_tar/${tarball.root}/vm.tar"
|
|
dest="${idea.build.path}/for_tar/${tarball.root}/"/>
|
|
<delete file="${idea.build.path}/for_tar/${tarball.root}/vm.tar"/>
|
|
|
|
<copy
|
|
file="${idea.build.path}/for_tar/${tarball.root}/jre/lib/i386/libjsig.so"
|
|
todir="${idea.build.path}/for_tar/${tarball.root}/jre/lib/i386/client" overwrite="yes"/>
|
|
<copy
|
|
file="${idea.build.path}/for_tar/${tarball.root}/jre/lib/i386/libjsig.so"
|
|
todir="${idea.build.path}/for_tar/${tarball.root}/jre/lib/i386/server" overwrite="yes"/>
|
|
<copy
|
|
file="${idea.project.path}/build/Install-Linux-tar.txt"
|
|
tofile="${idea.build.path}/for_tar/${tarball.root}/Install-Linux.txt"/>
|
|
|
|
<tar tarfile="${idea.dist.path}/${build.number}/unix/idea${build.number}-full.tar">
|
|
<tarfileset dir="${idea.build.path}/for_tar" mode="750">
|
|
<include name="${tarball.root}/jre/bin/*.*"/>
|
|
</tarfileset>
|
|
<tarfileset dir="${idea.build.path}/for_tar" mode="750">
|
|
<include name="${tarball.root}/bin/*.sh"/>
|
|
<exclude name="${tarball.root}/jre/bin/*.*"/>
|
|
</tarfileset>
|
|
<tarfileset dir="${idea.build.path}/for_tar" mode="644">
|
|
<include name="${tarball.root}/**"/>
|
|
<exclude name="${tarball.root}/bin/*.sh"/>
|
|
<exclude name="${tarball.root}/jre/bin/*.*"/>
|
|
</tarfileset>
|
|
</tar>
|
|
<gzip
|
|
src="${idea.dist.path}/${build.number}/unix/idea${build.number}-full.tar"
|
|
zipfile="${idea.dist.path}/${build.number}/unix/idea${build.number}-full.tar.gz"/>
|
|
<delete file="${idea.dist.path}/${build.number}/unix/idea${build.number}-full.tar"/>
|
|
</target>
|
|
|
|
<target name="run-installer">
|
|
<copy todir="${idea.ia.icons.path}"
|
|
file="${idea.project.path}/icons/idea_logo.png"/>
|
|
<copy todir="${idea.ia.build.path}/images/">
|
|
<fileset dir="${idea.project.path}/build/images/"/>
|
|
</copy>
|
|
<copy todir="${idea.ia.build.path}/temp/dist.all">
|
|
<fileset dir="${idea.build.path}/dist.all"/>
|
|
</copy>
|
|
<copy todir="${idea.ia.build.path}/temp/dist.win">
|
|
<fileset dir="${idea.build.path}/dist.win"/>
|
|
</copy>
|
|
<copy
|
|
file="${idea.build.conf}/idea_all_vm14.iap_xml"
|
|
tofile="${idea.build.path}/idea_all_vm14.iap_xml" overwrite="true"/>
|
|
|
|
<java
|
|
classname="com.intellij.internalUtilities.buildutils.ReplaceInFiles"
|
|
fork="yes"
|
|
failonerror="true">
|
|
<classpath>
|
|
<pathelement location="${idea.project.classes}"/>
|
|
</classpath>
|
|
<jvmarg value="-Didea.home.path=${idea.project.path}"/>
|
|
<arg line="${idea.build.path}/idea_all_vm14.iap_xml"/>
|
|
<arg line="IntelliJ-IDEA-@@@"/>
|
|
<arg line="IntelliJ-IDEA-${build.number}"/>
|
|
<arg line="4"/>
|
|
|
|
</java>
|
|
|
|
<exec
|
|
executable="${ia.build.executable}"
|
|
output="build.ia.all_vm14"
|
|
failonerror="true">
|
|
<arg line="${idea.build.path}/idea_all_vm14.iap_xml"/>
|
|
</exec>
|
|
|
|
<copy
|
|
file="${idea.build.path}/idea_all_vm14_Build_Output/Web_Installers/InstData/Windows/VM/install.exe"
|
|
tofile="${idea.dist.path}/${build.number}/windows/idea${build.number}.exe"/>
|
|
<copy
|
|
file="${idea.build.path}/idea_all_vm14_Build_Output/Web_Installers/InstData/Linux/VM/install.bin"
|
|
tofile="${idea.dist.path}/${build.number}/unix/idea${build.number}.bin"/>
|
|
|
|
<mkdir dir="${idea.build.path}/idea_all_vm14_Build_Output/Web_Installers/InstData/MacOSX/"/>
|
|
<copy
|
|
file="${idea.build.path}/idea_all_vm14_Build_Output/Web_Installers/InstData/MacOSX/install.zip"
|
|
tofile="${idea.dist.path}/${build.number}/MacOSX/idea${build.number}.sit"/>
|
|
</target>
|
|
|
|
<target
|
|
name="zip-win"
|
|
depends="dist-win"
|
|
description="Makes a zip files with a Windows distribution">
|
|
|
|
<mkdir dir="${idea.dist.path}/${build.number}/windows" />
|
|
<zip
|
|
zipfile="${idea.dist.path}/${build.number}/windows/idea${build.number}.zip"
|
|
basedir="${idea.build.path}/dist.win" />
|
|
<copy
|
|
file="${idea.project.path}/jres/jre.zip"
|
|
tofile="${idea.dist.path}/${build.number}/windows/idea${build.number}-jre.zip"/>
|
|
|
|
<mkdir dir="${idea.dist.path}/${build.number}/windows/temp"/>
|
|
<unzip src="${idea.project.path}/jres/jre.zip" dest="${idea.dist.path}/${build.number}/windows/temp"/>
|
|
<zip
|
|
zipfile="${idea.dist.path}/${build.number}/windows/idea${build.number}-full.zip"
|
|
basedir="${idea.build.path}/dist.win"
|
|
update="true">
|
|
<fileset dir="${idea.project.path}/build">
|
|
<include name="Install-Windows-zip.txt"/>
|
|
<include name="exe/ipr.reg"/>
|
|
</fileset>
|
|
<fileset dir="${idea.dist.path}/${build.number}/windows/temp"/>
|
|
</zip>
|
|
<delete dir="${idea.dist.path}/${build.number}/windows/temp"/>
|
|
</target>
|
|
|
|
<target
|
|
name="all_dist"
|
|
description="Make a complete build">
|
|
<property file="version.properties"/>
|
|
|
|
<antcall target="clean"/>
|
|
<antcall target="prepare"/>
|
|
<antcall target="compile"/>
|
|
<antcall target="after-compile"/>
|
|
|
|
<antcall target="copy-dist"/>
|
|
<antcall target="build-completed"/>
|
|
|
|
</target>
|
|
|
|
<target name="after-compile" depends="help-index, generate-rgs, scramble, copy-resources, openapi, build-dists"/>
|
|
|
|
<target name="build-dists" depends="zip-win, tar-unix, run-installer"/>
|
|
|
|
<target name="clean">
|
|
<delete dir="${idea.build.path}" failonerror="false"/>
|
|
<delete dir="${idea.ia.build.path}" failonerror="false"/>
|
|
<delete dir="${idea.ia.icons.path}" failonerror="false"/>
|
|
</target>
|
|
|
|
<target name="deploy-plugin-tomcat-integration"> <!--depends="build-plugin-tomcat-integration" causes build-plugin-tomcat-integration to execute 3 times -->
|
|
<!-- params are: distribution.dir -->
|
|
<mkdir dir="${distribution.dir}/tomcatIntegration/lib"/>
|
|
<mkdir dir="${distribution.dir}/tomcatIntegration/docs"/>
|
|
<copy todir="${distribution.dir}/tomcatIntegration/lib">
|
|
<fileset dir="${idea.build.plugins}/tomcatIntegration/lib"/>
|
|
</copy>
|
|
<copy todir="${distribution.dir}/tomcatIntegration/docs">
|
|
<fileset dir="${idea.build.plugins}/tomcatIntegration/docs"/>
|
|
</copy>
|
|
<copy file="${idea.build.plugins}/tomcatIntegration/src/src.zip" todir="${distribution.dir}/tomcatIntegration"/>
|
|
</target>
|
|
|
|
<target name="deploy-plugin-starteam-integration">
|
|
<mkdir dir="${distribution.dir}/starteamIntegration/lib"/>
|
|
<mkdir dir="${distribution.dir}/starteamIntegration/docs"/>
|
|
<copy todir="${distribution.dir}/starteamIntegration/lib">
|
|
<fileset dir="${idea.build.plugins}/starteamIntegration/lib"/>
|
|
</copy>
|
|
<copy todir="${distribution.dir}/starteamIntegration/docs">
|
|
<fileset dir="${idea.build.plugins}/starteamIntegration/docs"/>
|
|
</copy>
|
|
<copy file="${idea.build.plugins}/starteamIntegration/src/src.zip" todir="${distribution.dir}/starteamIntegration"/>
|
|
</target>
|
|
|
|
<target name="deploy-plugin-cvs-integration">
|
|
<!-- params are: distribution.dir -->
|
|
<mkdir dir="${distribution.dir}/cvsIntegration/lib"/>
|
|
<mkdir dir="${distribution.dir}/cvsIntegration/docs"/>
|
|
<copy todir="${distribution.dir}/cvsIntegration/lib">
|
|
<fileset dir="${idea.build.plugins}/cvsIntegration/lib"/>
|
|
</copy>
|
|
<copy todir="${distribution.dir}/cvsIntegration/docs">
|
|
<fileset dir="${idea.build.plugins}/cvsIntegration/docs"/>
|
|
</copy>
|
|
<!-- <copy file="${idea.build.plugins}/cvsIntegration/src/src.zip" todir="${distribution.dir}/cvsIntegration"/> -->
|
|
</target>
|
|
|
|
<target name="deploy-plugin-uiDesigner">
|
|
<!-- params are: distribution.dir -->
|
|
<mkdir dir="${distribution.dir}/uiDesigner/lib"/>
|
|
<copy todir="${distribution.dir}/uiDesigner">
|
|
<fileset dir="${idea.build.plugins}/uiDesigner"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="plugins-build">
|
|
<!-- build tomcat integration plugin -->
|
|
<ant
|
|
antfile="${idea.project.plugins}/tomcatIntegration/build.xml"
|
|
target="mkdist"
|
|
dir="${idea.project.plugins}/tomcatIntegration"
|
|
inheritall="false"
|
|
inheritrefs="false">
|
|
<property name="dir.idea.lib.path" value="${idea.build.path}/dist.all/lib"/>
|
|
<property name="dir.jdk.lib.path" value="${idea.jdk.home}/lib"/>
|
|
<property name="dir.dest.path" value="${idea.build.plugins}/tomcatIntegration"/>
|
|
</ant>
|
|
|
|
<!-- build starteam integratin plugin -->
|
|
<ant
|
|
antfile="${idea.project.plugins}/starteam/build.xml"
|
|
target="mkdist"
|
|
dir="${idea.project.plugins}/starteam"
|
|
inheritall="false"
|
|
inheritrefs="false">
|
|
<property name="dir.idea.lib.path" value="${idea.build.path}/dist.all/lib"/>
|
|
<property name="dir.jdk.lib.path" value="${idea.jdk.home}/lib"/>
|
|
<property name="dir.dest.path" value="${idea.build.plugins}/starteamIntegration"/>
|
|
</ant>
|
|
|
|
<!-- build cvs integration plugin -->
|
|
<mkdir dir="${idea.build.plugins}/cvsIntegration/lib"/>
|
|
<copy todir="${idea.build.plugins}/cvsIntegration/lib" file="${idea.build.path}/cvsIntegration.jar"/>
|
|
<mkdir dir="${idea.build.plugins}/cvsIntegration/docs"/>
|
|
|
|
</target>
|
|
|
|
<target name="build-runtimesource-122" >
|
|
<property environment="env"/>
|
|
<java118compiler
|
|
srcdir="${idea.project.src.runtime}"
|
|
outdir="${idea.project.classes.runtime}"
|
|
javacpath="${idea.jdk.12.javac}"
|
|
libraries="${idea.jdk.12.home}\jre\lib\rt.jar;${idea.jdk.12.home}\lib\tools.jar;${idea.project.lib}\junit.jar;${idea.project.lib}\ant.jar;${idea.project.lib}\rt\jasper-compiler.jar;${idea.project.lib}\rt\jasper-runtime.jar;${idea.project.lib}\rt\jasper-xml.jar;${idea.project.lib}\xerces.jar;${idea.project.lib}\servlet.jar;${idea.project.lib}\bcel.jar;${idea.project.lib}\JNIWrap.jar"/>
|
|
|
|
<jar jarfile="${idea.build.path}/idea_rt.jar" basedir="${idea.project.classes.runtime}" compress="false"/>
|
|
</target>
|
|
|
|
<target name="copy-dist">
|
|
<copy todir="${deploy.dist.path}" overwrite="true">
|
|
<fileset dir="${idea.dist.path}"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="build-completed">
|
|
<mail from="build@intellij.com" tolist="idea-developers@intellij.net"
|
|
mailhost="mail"
|
|
subject="Build ${build.number} is ready, it's available at \\MAIN\Dist\..."/>
|
|
<propertyfile file="version.properties">
|
|
<entry key="build.status" value="completed"/>
|
|
</propertyfile>
|
|
<cvs command="ci -m 'Build completed' version.properties" failonerror="false" />
|
|
|
|
</target>
|
|
|
|
<target name="build-failed" unless="silent">
|
|
<mail from="build@intellij.com" tolist="stathik@intellij.net"
|
|
mailhost="mail"
|
|
subject="Build ${build.number} failed. Log available here: \\build-unit\Work\Aurora\build\log\build.log"/>
|
|
<propertyfile file="version.properties">
|
|
<entry key="build.status" value="failed"/>
|
|
</propertyfile>
|
|
<cvs command="ci -m 'Build failed' version.properties" failonerror="false" />
|
|
|
|
</target>
|
|
|
|
</project>
|