src/build.xml
author Asier Lostalé <asier.lostale@openbravo.com>
Thu, 08 Sep 2016 08:27:39 +0200
changeset 30507 73015cd0c0fa
parent 30503 ee2cadcd63f1
child 32644 f8c3d0a4f7a4
permissions -rw-r--r--
[wildfly] don't include Weld listener in web.xml when building for weld
carlos@0
     1
<?xml version="1.0" encoding="UTF-8" ?>
carlos@0
     2
<!--
carlos@0
     3
 *************************************************************************
carlos@0
     4
 * The contents of this file are subject to the Openbravo Public License 
carlos@0
     5
 * Version 1.1 (the "License"), being the Mozilla Public License 
carlos@0
     6
 * version 1.1  with a permitted attribution clause ; you may not use 
carlos@0
     7
 * this file except in compliance with the License. 
carlos@0
     8
 * You may obtain a copy of the License at  
carlos@0
     9
 * http://www.openbravo.com/legal/license.txt 
carlos@0
    10
 * Software distributed under the License is distributed on an 
carlos@0
    11
 * "AS IS" basis, WITHOUT WARRANTY OF  ANY KIND, either express or 
carlos@0
    12
 * implied. See the License for the specific language governing rights 
carlos@0
    13
 * and  limitations under the License. 
carlos@0
    14
 * The Original Code is Openbravo ERP. 
ggi@6702
    15
 * The Initial Developer of the Original Code is Openbravo SLU 
asier@30503
    16
 * All portions are Copyright (C) 2005-2016 Openbravo SLU 
carlos@0
    17
 * All Rights Reserved. 
ggi@6702
    18
 * Contributor(s): Openbravo S.L.U.
carlos@0
    19
 ************************************************************************
carlos@0
    20
-->
juanpablo@213
    21
juanpablo@213
    22
<!--
ivan@1738
    23
List of methods infside:
juanpablo@213
    24
juanpablo@213
    25
init: creates all the folders.
juanpablo@213
    26
trl.clean: clean the AD_TEXTINTERFACES table
juanpablo@213
    27
clean: delete all folders.
juanpablo@213
    28
sqlc: generates the java from the xsql files.
juanpablo@213
    29
compileSqlc: compiles all the java generated from the xsqls.
juanpablo@213
    30
wad: generates all the files from the mda.
juanpablo@213
    31
postwad: copies the generated files to the base design folder.
juanpablo@213
    32
postsrc: copies the src files to the base design folder and the 
juanpablo@213
    33
         xml and jasper files to the translated designs folders
asier@1929
    34
postsrc.modules: it does the same as postsrc but for module files
juanpablo@213
    35
build.local.context: copies all files to the eclipse base context 
juanpablo@213
    36
                     (WebContent...).
juanpablo@213
    37
compile.src: comiles only the src files.
juanpablo@213
    38
eclipse.compile: generates specified wad files and compiles modified xsql files.
juanpablo@213
    39
eclipse.compile.complete: generates all wad files and compiles all xsql files
juanpablo@213
    40
compile: compiles specified WAD window and src and also translates.
juanpablo@213
    41
compile.complete: compiles all WAD windows and src and also translates.
juanpablo@213
    42
translate: Translate the modified files.
juanpablo@213
    43
compile.translate: Translate the specified extensions files.
juanpablo@213
    44
installWebService: install the web services configuration file.
juanpablo@213
    45
uninstallWebService: uninstall the web services configuration file.
juanpablo@213
    46
copy.files: copy the local files to the context.
juanpablo@213
    47
compile.development: like compile, but also copies the files to the context.
juanpablo@213
    48
compile.complete.development: like compile.complete, but also copies the files 
juanpablo@213
    49
                              to the context.
asier@1929
    50
compile.web: re-builds the web folder.
asier@1929
    51
compile.web.development: like compile.web, but also copies the files to the context.
juanpablo@213
    52
build.war: build a war file in the lib directory.
juanpablo@213
    53
-->
juanpablo@213
    54
carlos@0
    55
<project name="openbravo sources" default="compile" basedir=".">
stefan@2143
    56
martin@2868
    57
  <taskdef name="yuicompress" classname="com.yahoo.platform.yui.compressor.YUICompressTask">
ivan@6262
    58
    <classpath>
ivan@6262
    59
      <pathelement location="${base.lib}/build/yuicompressor-2.4.2.jar" />
ivan@6262
    60
      <pathelement location="${base.lib}/build/ob-rhino-1.6R7.jar" />
ivan@6262
    61
      <pathelement location="${base.lib}/build/YUIAnt.jar" />
ivan@6262
    62
    </classpath>
martin@2868
    63
  </taskdef>
stefan@2143
    64
martin@2868
    65
  <condition property="minimizeJSandCSSbool">
martin@2868
    66
    <istrue value="${minimizeJSandCSS}" />
martin@2868
    67
  </condition>
stefan@2143
    68
martin@2868
    69
  <property name="webTab" value="all" />
martin@2868
    70
  <property name="tab" value="%" />
asier@1929
    71
martin@2868
    72
  <property name="base.translate.structure" value="org/openbravo/erpWindows" />
martin@2868
    73
  <property name="extension" value="html" />
martin@2868
    74
  <property name="src" value="." />
martin@2868
    75
  <property name="tr" value="yes" />
asier@30503
    76
asier@30503
    77
  <condition property="exclude.cdi">
asier@30503
    78
    <equals arg1="wildfly" arg2="${application.server}" />
asier@30503
    79
  </condition>
asier@30503
    80
martin@2868
    81
  <condition property="translation">
martin@2868
    82
    <not>
martin@2868
    83
      <equals arg1="no" arg2="${tr}" />
martin@2868
    84
    </not>
martin@2868
    85
  </condition>
martin@2868
    86
  <target name="init">
martin@2868
    87
    <mkdir dir="${build}" />
martin@2868
    88
    <mkdir dir="${base.design}/design" />
martin@2868
    89
    <mkdir dir="${build.sqlc}" />
martin@2868
    90
    <mkdir dir="${build.sqlc}/src" />
martin@2868
    91
    <mkdir dir="${build.sqlc}/srcAD" />
martin@2868
    92
    <mkdir dir="${build.AD}" />
martin@2868
    93
    <mkdir dir="${build.AD}/org/openbravo/erpWindows" />
martin@2868
    94
    <mkdir dir="${build.AD}/org/openbravo/erpCommon/ad_actionButton" />
martin@2868
    95
    <mkdir dir="${build.AD}/org/openbravo/erpCommon/ad_callouts" />
martin@2868
    96
    <mkdir dir="${build.AD}/org/openbravo/erpCommon/reference" />
martin@2868
    97
    <mkdir dir="${build.docs}" />
martin@2868
    98
  </target>
antonio@5620
    99
  <macrodef name="updatesystemstatus">
antonio@5620
   100
     <attribute name="v" default="NOT SET"/>
antonio@5620
   101
     <sequential>
antonio@5620
   102
       <sql driver="${bbdd.driver}" url="${bbdd.owner.url}" userid="${bbdd.user}" password="${bbdd.password}" onerror="continue" autocommit="true">
antonio@5621
   103
         <classpath> <fileset dir="${base.lib}"> <include name="**/*.jar"> </include> </fileset> </classpath>
antonio@5621
   104
         <transaction> UPDATE ad_system_info SET system_status='@{v}' ;
antonio@5621
   105
                       DELETE FROM ad_error_log where system_status=(select system_status from ad_system_info)
antonio@5621
   106
         </transaction>
antonio@5620
   107
       </sql>
antonio@5620
   108
     </sequential>
antonio@5620
   109
  </macrodef>
carlos@0
   110
martin@2868
   111
  <target name="validate.database">
martin@2868
   112
    <taskdef name="validateDatabase" classname="org.openbravo.service.system.SystemValidationTask">
martin@2868
   113
      <classpath refid="project.class.path" />
martin@2868
   114
    </taskdef>
martin@5458
   115
    <validateDatabase userId="0" adminMode="true" propertiesFile="${base.config}/Openbravo.properties" type="database" />
martin@2868
   116
  </target>
carlos@0
   117
martin@2868
   118
  <target name="validate.modules">
martin@2868
   119
    <taskdef name="validateModules" classname="org.openbravo.service.system.SystemValidationTask">
martin@2868
   120
      <classpath refid="project.class.path" />
martin@2868
   121
    </taskdef>
asier@5709
   122
    <validateModules userId="0" adminMode="true" propertiesFile="${base.config}/Openbravo.properties" type="module" moduleJavaPackage="${module}"/>
martin@2868
   123
  </target>
antonio@18802
   124
martin@2868
   125
  <target name="trl.clean" if="translation">
martin@2868
   126
    <java classname="org.openbravo.translate.Translate" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
asier@3980
   127
      <arg line="clean '${base.config}/Openbravo.properties'" />
martin@2868
   128
      <classpath refid="project.class.path" />
antonio@7592
   129
      <syspropertyset>
antonio@7592
   130
         <propertyref name="java.security.egd" />
antonio@7592
   131
      </syspropertyset>
martin@2868
   132
    </java>
martin@2868
   133
  </target>
asier@5937
   134
  
asier@5937
   135
  <target name="trl.remove.unused" if="translation">
asier@5937
   136
    <java classname="org.openbravo.translate.Translate" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
asier@5937
   137
      <arg line="remove '${base.config}/Openbravo.properties'" />
asier@5937
   138
      <classpath refid="project.class.path" />
antonio@7592
   139
      <syspropertyset>
antonio@7592
   140
         <propertyref name="java.security.egd" />
antonio@7592
   141
      </syspropertyset>
asier@5937
   142
    </java>
asier@5937
   143
  </target>
martin@2346
   144
martin@2868
   145
  <target name="clean" depends="trl.clean">
martin@2868
   146
    <property name="complete" value="true" />
martin@2868
   147
    <delete includeEmptyDirs="true" failonerror="false">
martin@2868
   148
      <fileset dir="${base.design}" />
martin@2868
   149
      <fileset dir="${build}" />
martin@2868
   150
      <fileset dir="${build.docs}" />
martin@2868
   151
      <fileset dir="${build.AD}" />
martin@2868
   152
      <fileset dir="${build.sqlc}" />
martin@2868
   153
      <fileset dir="${base.context}">
martin@2868
   154
        <exclude name=".svn" />
martin@2868
   155
        <exclude name="META-INF/MANIFEST.MF" />
juanpablo@3236
   156
        <exclude name="**/.keep" />
martin@2868
   157
      </fileset>
martin@2868
   158
    </delete>
martin@2868
   159
  </target>
carlos@0
   160
antonio@7539
   161
  <target name="compile.apply.module" depends="init">
antonio@7545
   162
    <mkdir dir="${build.apply.module}" />
antonio@7539
   163
    <java classname="org.openbravo.data.Sqlc" fork="yes" jvm="${env.JAVA_HOME}/bin/java" maxmemory="${build.maxmemory}" failonerror="true">
antonio@7539
   164
      <arg line="'${base.config}'/Openbravo.properties .xsql . '${build.sqlc}'/src" />
stefan@15451
   165
      <jvmarg value="-Dsqlc.listOfFiles=ApplyModule_data.xsql,PInstanceProcess_data.xsql,Translation_data.xsql,MessageBD_data.xsql"/>
antonio@7539
   166
      <classpath refid="project.class.path" />
antonio@7592
   167
      <syspropertyset>
antonio@7592
   168
         <propertyref name="java.security.egd" />
antonio@7592
   169
      </syspropertyset>
antonio@7539
   170
    </java>
stefan@11995
   171
    <javac includes="org/openbravo/erpCommon/modules/ApplyModuleTask.java" destdir="${build.apply.module}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on" verbose="false" nowarn="${friendlyWarnings}" includeantruntime="false" >
antonio@7539
   172
      <src path="${base.src}"/>
antonio@7539
   173
      <src path="../build/javasqlc/src"/>
antonio@7545
   174
      <src path="../src-gen"/>
antonio@7547
   175
      <classpath refid="apply.module.compile.classpath" />
antonio@7539
   176
    </javac>
antonio@7539
   177
  </target>
antonio@7539
   178
  
stefan@12082
   179
  <target name="sqlc">
asier@3189
   180
    <java classname="org.openbravo.data.Sqlc" fork="yes" jvm="${env.JAVA_HOME}/bin/java" maxmemory="${build.maxmemory}" failonerror="true">
martin@2868
   181
      <arg line="'${base.config}'/Openbravo.properties .xsql . '${build.sqlc}'/src" />
martin@2868
   182
      <classpath refid="project.class.path" />
antonio@7592
   183
      <syspropertyset>
antonio@7592
   184
         <propertyref name="java.security.egd" />
antonio@7592
   185
      </syspropertyset>
martin@2868
   186
    </java>
asier@3189
   187
    <java classname="org.openbravo.data.Sqlc" fork="yes" jvm="${env.JAVA_HOME}/bin/java" maxmemory="${build.maxmemory}" failonerror="true">
martin@2868
   188
      <arg line="'${base.config}'/Openbravo.properties .xsql '${base.modules}' '${build.sqlc}'/src */src" />
stefan@5227
   189
      <jvmarg value="-Dsqlc.queryExecutionStrategy=traditional"/>
martin@2868
   190
      <classpath refid="project.class.path" />
antonio@7592
   191
      <syspropertyset>
antonio@7592
   192
         <propertyref name="java.security.egd" />
antonio@7592
   193
      </syspropertyset>
martin@2868
   194
    </java>
martin@2868
   195
    <copy file="${base.src}/buildAD.xml" tofile="${build.AD}/build.xml" />
martin@2868
   196
    <copy file="${base.src}/log4j.lcf" tofile="${build.AD}/log4j.lcf" />
martin@2868
   197
    <ant dir="${build.AD}" target="buildAD" inheritAll="true" inheritRefs="true" />
martin@2868
   198
  </target>
carlos@0
   199
martin@2868
   200
  <target name="clean.src.gen">
martin@2868
   201
    <delete includeEmptyDirs="true" failonerror="false">
juanpablo@3236
   202
      <fileset dir="${base.src.gen}" >
juanpablo@3236
   203
        <exclude name="**/.keep" />
juanpablo@3236
   204
      </fileset>
martin@2868
   205
    </delete>
martin@2868
   206
  </target>
martin@2868
   207
stefan@20720
   208
  <target name="export.sample.data.old" description="Exports Sample Data">
martin@2868
   209
    <taskdef name="exportsampledata" classname="org.openbravo.service.db.ExportReferenceDataTask">
martin@2868
   210
      <classpath refid="project.class.path" />
martin@2868
   211
    </taskdef>
martin@2868
   212
    <echo message="Exporting sample reference data" />
juanpablo@9537
   213
    <exportsampledata userId="0" adminMode="true" propertiesFile="${base.config}/Openbravo.properties" clients="F&amp;B International Group" />
stefan@10410
   214
    <exportsampledata userId="0" adminMode="true" propertiesFile="${base.config}/Openbravo.properties" clients="QA Testing" />
martin@2868
   215
  </target>
martin@2868
   216
stefan@20720
   217
  <target name="import.sample.data.old" description="Import Sample Data" depends="generate.entities">
martin@2868
   218
    <taskdef name="importsampledata" classname="org.openbravo.service.db.ImportReferenceDataTask">
martin@2868
   219
      <classpath refid="project.class.path" />
martin@2868
   220
    </taskdef>
martin@2868
   221
    <echo message="Importing sample reference data" />
antonio@8355
   222
    <importsampledata userId="0" adminMode="true" propertiesFile="${base.config}/Openbravo.properties" disableCheckReferencedOrganizations="${disableCheckReferencedOrganizations}"/>
martin@2868
   223
    <ant dir="${base.db}" target="database.postupdate.${bbdd.rdbms}" inheritAll="true" inheritRefs="true" />
martin@2868
   224
  </target>
asier@1929
   225
stefan@11851
   226
  <!-- full generate.entities -> clean + .quick -->
stefan@11851
   227
  <target name="generate.entities" depends="clean.src.gen,generate.entities.quick" />
martin@2830
   228
martin@2868
   229
  <!-- 
martin@2830
   230
		Generates entities only when the application dictionary has changed.
martin@2830
   231
		Difference with the generate.entities is that it does not clean the src-gen directory. The standard
martin@2830
   232
		GenerateEntitiesTask always checks if the AD was changed before regenerating. The check is to compare
martin@2830
   233
		the modified time of the generated sources with the updated time of the Application Dictionary. If there
martin@2830
   234
		is a source older than the last updated time of the Application Dictionary then the sources need to be regenerated.		
martin@2830
   235
	-->
martin@2868
   236
  <target name="generate.entities.quick" depends="compile.src.gen">
stefan@11851
   237
    <java classname="org.openbravo.base.gen.GenerateEntitiesTask" fork="yes" jvm="${env.JAVA_HOME}/bin/java" maxmemory="${build.maxmemory}" failonerror="true">
stefan@11851
   238
      <arg line="'${base.src}' '${friendlyWarnings}'" />
stefan@11851
   239
      <classpath refid="project.class.path" />
antonio@7592
   240
      <syspropertyset>
antonio@7592
   241
         <propertyref name="java.security.egd" />
antonio@7592
   242
      </syspropertyset>
stefan@11851
   243
    </java>
stefan@11851
   244
      <!--
stefan@11851
   245
        see issue: https://issues.openbravo.com/view.php?id=9331
stefan@11851
   246
        Custom columns in standard tables should support a reference to a table in the module
stefan@11851
   247
        if this occurs then possible the following javac has to be enabled instead of the two javacs below
stefan@11851
   248
      <javac srcdir="${base.src}:${base.src.gen}" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on">
stefan@11851
   249
        <classpath refid="project.class.path" />      
stefan@11851
   250
      </javac>
stefan@11851
   251
      -->
stefan@11995
   252
      <javac srcdir="${base.src}:${base.src.gen}" includes="org/openbravo/model/**,org/openbravo/base/structure/**,org/openbravo/dal/**,org/openbravo/service/dataset/**" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on" includeantruntime="false">
stefan@11851
   253
        <classpath refid="project.class.path" />      
stefan@11851
   254
      </javac>
stefan@11995
   255
      <javac srcdir="${base.src.gen}" excludes="org/openbravo/model/**,org/openbravo/base/structure/**,org/openbravo/dal/**,org/openbravo/service/dataset/**" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on" includeantruntime="false">
stefan@11851
   256
        <classpath refid="project.class.path" />
stefan@11851
   257
      </javac>
stefan@11851
   258
  </target>
martin@4106
   259
stefan@11851
   260
  <!-- build-internal forking helper -->
stefan@11851
   261
  <target name="generate.entities.quick.forked" depends="compile.src.gen">
stefan@11852
   262
    <taskdef name="workflow" classpathref="project.class.path" classname="org.openbravo.base.gen.GenerateEntitiesTask" />
stefan@11851
   263
    <workflow friendlyWarnings="${friendlyWarnings}" srcGenPath="${base.src.gen}" propertiesFile="${base.config}/Openbravo.properties" />
asier@24247
   264
  </target> 
priya@6948
   265
antonio@16458
   266
  <path id="my-src-dirs">
antonio@16458
   267
    <pathelement path="${basedir}" />
antonio@16458
   268
    <pathelement path="${build.sqlc}/src" />
antonio@16458
   269
    <pathelement path="${build.sqlc}/srcAD" />
antonio@16458
   270
    <dirset dir="${base.modules}">
stefan@17945
   271
      <include name="*/src" />
antonio@16458
   272
    </dirset>
antonio@16458
   273
  </path>
antonio@16458
   274
 
martin@2868
   275
  <target name="compileSqlc" depends="sqlc">
antonio@16458
   276
    <javac excludes="*/src-wad/**,*/src-util/**,**/org/openbravo/erpWindows/**" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" nowarn="${friendlyWarnings}" includeantruntime="false">
antonio@16458
   277
      <src refid="my-src-dirs"/>
antonio@16458
   278
      <classpath refid="project.class.path" />
antonio@16458
   279
    </javac>
antonio@16458
   280
antonio@16458
   281
    <javac srcdir="${build.sqlc}/srcAD" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" nowarn="${friendlyWarnings}" includeantruntime="false">
asier@2967
   282
      <classpath refid="project.class.path" />
asier@2967
   283
    </javac>
antonio@6986
   284
stefan@11995
   285
    <javac srcdir="${build.AD}" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" nowarn="${friendlyWarnings}" includeantruntime="false">
martin@2868
   286
      <classpath refid="project.class.path" />
martin@2868
   287
    </javac>
asier@4277
   288
  	<antcall target="calculate.version"/>
martin@2868
   289
  </target>
antonio@5595
   290
asier@4277
   291
	<target name="calculate.version" depends="init">
asier@4277
   292
	  <condition property="revision.from.file">
asier@4277
   293
		<and>
asier@4277
   294
		  <not>
asier@4277
   295
		 	<isset property="hg.id"/>
asier@4277
   296
		  </not>
asier@4277
   297
		  <available file="${basedir}/config/instance.revision"/>
asier@4277
   298
	    </and>
asier@4277
   299
	  </condition>
guillermo@15752
   300
	  <condition property="revision.not.found">
guillermo@15752
   301
		<and>
guillermo@15752
   302
		  <not>
guillermo@15752
   303
		 	<isset property="hg.id"/>
guillermo@15752
   304
		  </not>
guillermo@15752
   305
		  <not>
guillermo@15752
   306
		  	<available file="${basedir}/config/instance.revision"/>
guillermo@15752
   307
		  </not>
guillermo@15752
   308
	    </and>
guillermo@15752
   309
	  </condition>
asier@4277
   310
	  <antcall inheritall="true" target="calculate.instance.version"/>
asier@4277
   311
	</target>
guillermo@15752
   312
	<target name="calculate.instance.version" depends="calculate.version.from.hg, calculate.version.from.file, cannot.find.version">
asier@4277
   313
	    <sql driver="${bbdd.driver}" url="${bbdd.owner.url}" userid="${bbdd.user}" password="${bbdd.password}" delimiter="/">
asier@4277
   314
	      <classpath>
asier@4277
   315
	        <fileset dir="${base.lib}">
asier@4277
   316
	          <include name="**/*.jar">
asier@4277
   317
	          </include>
asier@4277
   318
	        </fileset>
asier@4277
   319
	      </classpath>
asier@4277
   320
	      <transaction>
asier@4277
   321
		        UPDATE AD_MODULE 
asier@4277
   322
	      	       SET VERSION_ID='${instance.version}'
asier@4277
   323
                 WHERE AD_MODULE_ID='0'
asier@4277
   324
		      </transaction>
asier@4277
   325
	    </sql>
asier@4277
   326
	</target>
asier@4277
   327
	<target name="calculate.version.from.hg" if="is.hg">
asier@4277
   328
	  <property name="instance.version" value="${hg.id}"/>
asier@4277
   329
	</target>
asier@4277
   330
	<target name="calculate.version.from.file" if="revision.from.file">
guillermo@15752
   331
	  <loadfile property="instance.version" srcfile="${basedir}/config/instance.revision"/>
guillermo@15752
   332
	</target>
guillermo@15752
   333
	<target name="cannot.find.version" if="revision.not.found">
guillermo@15752
   334
	  <property name="instance.version" value=" - "/>
asier@4277
   335
	</target>
martin@2346
   336
martin@2868
   337
  <target name="compile.src.gen" depends="init">
stefan@11995
   338
    <javac srcdir="${basedir}" includes="org/openbravo/base/exception/**,org/openbravo/base/gen/**,org/openbravo/base/expression/**,org/openbravo/base/provider/**,org/openbravo/base/model/**,org/openbravo/base/session/**,org/openbravo/base/validation/**,org/openbravo/base/util/**" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on" includeantruntime="false">
martin@2868
   339
      <classpath refid="project.class.path" />
martin@2868
   340
    </javac>
martin@2868
   341
    <copy todir="${build}">
martin@2868
   342
      <fileset dir="${basedir}" includes="**/*.hbm.xml" />
martin@2868
   343
    </copy>
martin@2868
   344
    <copy todir="${build}">
martin@2868
   345
      <fileset dir="${basedir}" includes="**/*.properties" />
martin@2868
   346
    </copy>
martin@6163
   347
    
martin@6163
   348
    <!-- also compile the domaintypes in modules -->
stefan@11995
   349
    <javac srcdir="${basedir}/../" includes="modules/*/src/**/model/domaintype/**/*.java" destdir="${build}"  fork="true" deprecation="on" encoding="UTF-8" debug="true" debuglevel="lines,vars,source" includeantruntime="false">
martin@6163
   350
      <classpath refid="project.class.path" />
martin@6163
   351
    </javac>
martin@6163
   352
    
martin@6163
   353
    <!-- copy all configuration files in modules to the output path also -->
martin@6163
   354
    <copy todir="${build}" encoding="UTF-8">
martin@6163
   355
      <fileset dir="${base.modules}">
martin@6163
   356
          <include name="*/src/**/*" />
martin@6163
   357
          <exclude name="*/src/**/*.java" />
martin@6163
   358
          <exclude name="*/src/**/*.xsql" />
martin@6163
   359
      </fileset>
martin@6163
   360
      <mapper type="regexp" from="(.*\${file.separator}src)(.*)" to="\2" />
martin@6163
   361
    </copy>
martin@2868
   362
  </target>
martin@2346
   363
asier@5532
   364
  <target name="wadvalidation">
asier@5535
   365
    <taskdef name="WADValidation" classname="org.openbravo.wad.validation.WADValidatorTask">
asier@5532
   366
            <classpath refid="project.class.path" />
asier@5532
   367
          </taskdef>
asier@5532
   368
        
asier@5532
   369
        <WADValidation propertiesFile="${base.config}/Openbravo.properties"
asier@5532
   370
                       modules="${module}"
antonio@5700
   371
                       stoponerror="${stopOnWadError}"
antonio@5700
   372
                       friendlyWarnings="${friendlyWarnings}"/>
asier@5532
   373
  </target>
asier@5532
   374
  
asier@5532
   375
  <target name="wad" depends="init, wadvalidation">
asier@5265
   376
    <java classname="org.openbravo.wad.Wad" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}" failonerror="true">
asier@30507
   377
      <arg line="'${base.config}' '${tab}' '${build.AD}/org/openbravo/erpWindows' '${build.AD}/org/openbravo/erpCommon' '${build.sqlc}/src' '${webTab}' '${build.AD}/org/openbravo/erpCommon/ad_actionButton' '${base.design}' '${base.translate.structure}' 'dummyValueUnused' '..' '${attach.path}' '${web.url}' '${base.src}' '${complete}' '${module}' 'noquick' '${wad.generateAllClassic250Windows}' '${exclude.cdi}'" />
stefan@9230
   378
      <classpath refid="wad.class.path" />
antonio@7592
   379
      <syspropertyset>
antonio@7592
   380
         <propertyref name="java.security.egd" />
antonio@7592
   381
      </syspropertyset>
martin@2868
   382
    </java>
martin@2868
   383
    <antcall target="postwad" inheritall="true" inheritrefs="true" />
martin@2868
   384
  </target>
martin@2346
   385
asier@5532
   386
  <target name="wad.quick" depends="init, wadvalidation">
martin@2868
   387
    <java classname="org.openbravo.wad.Wad" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
asier@30507
   388
      <arg line="'${base.config}' '${tab}' '${build.AD}/org/openbravo/erpWindows' '${build.AD}/org/openbravo/erpCommon' '${build.sqlc}/src' '${webTab}' '${build.AD}/org/openbravo/erpCommon/ad_actionButton' '${base.design}' '${base.translate.structure}' 'dummyValueUnused' '..' '${attach.path}' '${web.url}' '${base.src}' '${complete}' '${module}' 'quick' '${wad.generateAllClassic250Windows}' '${exclude.cdi}'" />
stefan@9230
   389
      <classpath refid="wad.class.path" />
antonio@7592
   390
      <syspropertyset>
antonio@7592
   391
         <propertyref name="java.security.egd" />
antonio@7592
   392
      </syspropertyset>
martin@2868
   393
    </java>
martin@2868
   394
    <antcall target="postwad" inheritall="true" inheritrefs="true" />
martin@2868
   395
  </target>
asier@1929
   396
martin@2868
   397
  <target name="postsrc" depends="postsrc.modules">
antonio@5620
   398
martin@2868
   399
    <copy todir="${build}">
martin@2868
   400
      <fileset dir="${basedir}" includes="**/*.properties" />
martin@2868
   401
    </copy>
martin@2868
   402
    <copy todir="${build}">
martin@2868
   403
      <fileset dir="${basedir}" includes="**/*.xslt" />
martin@2868
   404
    </copy>
martin@2868
   405
    <copy todir="${build}">
martin@2868
   406
      <fileset dir="${basedir}" includes="**/*.hbm.xml" />
martin@2868
   407
    </copy>
asier@19912
   408
    <copy todir="${build}">
asier@19912
   409
      <fileset dir="${basedir}" includes="**/*.ftl" />
asier@19912
   410
    </copy>
martin@2868
   411
    <copy todir="${base.design}/design">
martin@2868
   412
      <fileset dir="${basedir}" includes="**/*.xml" />
martin@2868
   413
    </copy>
martin@2868
   414
    <copy todir="${base.design}/design">
martin@2868
   415
      <fileset dir="${basedir}" includes="**/*.fo" />
martin@2868
   416
    </copy>
martin@2868
   417
    <copy todir="${base.design}/design">
martin@2868
   418
      <fileset dir="${basedir}" includes="**/*.html" />
martin@2868
   419
    </copy>
martin@2868
   420
    <copy todir="${base.design}/design">
martin@2868
   421
      <fileset dir="${basedir}" includes="**/*.srpt" />
martin@2868
   422
    </copy>
martin@2868
   423
    <copy todir="${base.design}/design">
martin@2868
   424
      <fileset dir="${basedir}" includes="**/*.jrxml" />
martin@2868
   425
    </copy>
martin@2868
   426
    <copy todir="${base.design}/design">
martin@2868
   427
      <fileset dir="${basedir}" includes="**/*.jasper" />
martin@2868
   428
    </copy>
martin@2868
   429
    <copy todir="${build}">
martin@2868
   430
      <fileset file="${base.config}/quartz.properties" />
martin@2868
   431
    </copy>
asier@8385
   432
    <copy todir="${base.design}/design/org/openbravo/erpCommon/obps" file="${basedir}/org/openbravo/erpCommon/obps/licenseRestrictions"/>
martin@2868
   433
    <antcall target="build.local.context" inheritAll="true" inheritrefs="true" />
martin@2868
   434
  </target>
asier@1929
   435
martin@2868
   436
  <target name="postsrc.modules">
martin@2868
   437
    <copy todir="${base.design}/design">
martin@2868
   438
      <fileset dir="${base.modules}">
martin@2868
   439
        <include name="*/src/**/*.xml" />
martin@2868
   440
        <include name="*/src/**/*.fo" />
martin@2868
   441
        <include name="*/src/**/*.html" />
martin@2868
   442
        <include name="*/src/**/*.srpt" />
martin@2868
   443
        <include name="*/src/**/*.jrxml" />
martin@2868
   444
        <include name="*/src/**/*.jasper" />
martin@2868
   445
      </fileset>
martin@2868
   446
      <mapper type="regexp" from="(.*\${file.separator}src)(.*)" to="\2" />
martin@2868
   447
    </copy>
martin@6160
   448
    <copy todir="${build}">
martin@6160
   449
      <fileset dir="${base.modules}">
martin@6160
   450
        <include name="*/src/**" />
martin@6160
   451
        <exclude name="*/src/**/*.java" />
martin@6160
   452
      </fileset>
martin@6160
   453
      <mapper type="regexp" from="(.*\${file.separator}src)(.*)" to="\2" />
martin@6160
   454
    </copy>
martin@2868
   455
  </target>
asier@1929
   456
martin@2868
   457
  <!-- FIXME: These tasks is only for development and testing purposes, remove it afterwards-->
stefan@12082
   458
  <target name="sqlcmod">
asier@3189
   459
    <java classname="org.openbravo.data.Sqlc" fork="yes" jvm="${env.JAVA_HOME}/bin/java" maxmemory="${build.maxmemory}" failonerror="true">
martin@2868
   460
      <arg line="'${base.config}'/Openbravo.properties .xsql '${base.modules}' '${build.sqlc}'/src */src" />
martin@2868
   461
      <classpath refid="project.class.path" />
antonio@7592
   462
      <syspropertyset>
antonio@7592
   463
         <propertyref name="java.security.egd" />
antonio@7592
   464
      </syspropertyset>
martin@2868
   465
    </java>
martin@2868
   466
  </target>
asier@1929
   467
martin@2868
   468
  <target name="compileSqlcmod" depends="sqlcmod">
stefan@11995
   469
    <javac srcdir="${build.sqlc}/src:${base.modules}" destdir="${build}" encoding="UTF-8" fork="true" memorymaximumsize="${build.maxmemory}" debug="true" debuglevel="lines,vars,source" deprecation="on" includeantruntime="false">
martin@2868
   470
      <classpath refid="project.class.path" />
antonio@7592
   471
      <syspropertyset>
antonio@7592
   472
         <propertyref name="java.security.egd" />
antonio@7592
   473
      </syspropertyset>
martin@2868
   474
    </javac>
martin@2868
   475
  </target>
martin@2868
   476
  <target name="postsrcmod">
martin@2868
   477
    <copy todir="${base.design}/design">
martin@2868
   478
      <fileset dir="${base.modules}" includes="*/src/**/*.html" />
martin@2868
   479
      <mapper type="regexp" from="(.*\${file.separator}src)(.*)" to="\2" />
martin@2868
   480
    </copy>
martin@2868
   481
  </target>
asier@1929
   482
martin@2868
   483
  <!-- end of auxiliar tasks-->
martin@2346
   484
martin@2868
   485
  <target name="build.local.context">
martin@2868
   486
    <copy todir="${base.context}" encoding="UTF-8">
ivan@10243
   487
      <fileset file="${basedir}/index.jsp" />
martin@2868
   488
    </copy>
martin@2868
   489
    <copy todir="${base.context}/WEB-INF" encoding="UTF-8">
martin@2868
   490
      <fileset file="${build.sqlc}/src/web.xml" />
martin@2868
   491
      <fileset dir="${base.config}">
martin@2868
   492
        <exclude name="**/eclipse/**" />
martin@2868
   493
        <exclude name="**/setup-properties**" />
martin@2868
   494
        <exclude name="*.template" />
asier@2974
   495
        <exclude name="checksums"/>
martin@2868
   496
      </fileset>
martin@2868
   497
    </copy>
martin@2868
   498
    <copy todir="${base.context}/WEB-INF" encoding="UTF-8">
martin@2868
   499
      <fileset dir="${base.modules}">
martin@2868
   500
        <include name="*/config/**" />
martin@2868
   501
        <exclude name="*.template" />
martin@2868
   502
      </fileset>
martin@2868
   503
      <mapper type="regexp" from="(.*\${file.separator}config)(.*)" to="\2" />
martin@2868
   504
    </copy>
martin@2868
   505
    <copy todir="${base.context}/WEB-INF/lib" encoding="UTF-8">
martin@2868
   506
      <fileset dir="${base.lib}/runtime">
martin@2868
   507
        <exclude name="openbravo-wad.jar" />
martin@2868
   508
        <exclude name="openbravo-trl.jar" />
martin@2868
   509
        <exclude name="*.war" />
martin@2868
   510
      </fileset>
martin@2868
   511
      <fileset dir="${base.db}/lib">
martin@2868
   512
        <include name="*" />
martin@2868
   513
      </fileset>
martin@2868
   514
    </copy>
martin@2346
   515
martin@2868
   516
    <copy todir="${base.context}/WEB-INF/lib" encoding="UTF-8">
martin@2868
   517
      <fileset dir="${base.modules}">
martin@2868
   518
        <include name="*/lib/runtime/**" />
asier@30503
   519
        <exclude if="exclude.cdi" name="org.openbravo.base.weld/lib/runtime/weld*"/>
asier@30503
   520
        <exclude if="exclude.cdi" name="org.openbravo.base.weld/lib/runtime/*api*"/>
asier@30503
   521
        <exclude if="exclude.cdi" name="org.openbravo.base.weld/lib/runtime/javax*"/>
martin@2868
   522
      </fileset>
martin@2868
   523
      <mapper type="regexp" from="(.*\${file.separator}lib\${file.separator}runtime)(.*)" to="\2" />
martin@2868
   524
    </copy>
martin@2868
   525
    <antcall target="build.web.folder" inheritAll="true" inheritrefs="true" />
martin@2868
   526
  </target>
martin@2346
   527
martin@2868
   528
  <target name="build.web.folder">
martin@2868
   529
    <copy todir="${base.context}/web" encoding="UTF-8">
martin@2868
   530
      <fileset dir="${base.web}">
martin@2868
   531
        <include name="*/**" />
martin@2868
   532
        <exclude name="skins/**" />
martin@2868
   533
      </fileset>
martin@2868
   534
    </copy>
asier@2994
   535
    
asier@2994
   536
    <taskdef name="CheckSumCondition" classname="org.openbravo.utils.CheckSumCondition">
asier@2994
   537
        <classpath refid="project.class.path" />
asier@2994
   538
      </taskdef>
asier@2994
   539
    
asier@2994
   540
    <CheckSumCondition obDir="${basedir}/.."
asier@2994
   541
                       type="md5.skins"
asier@2994
   542
                       property="changes.in.md5.skins"/>
asier@2994
   543
    <condition property="do.skins">
asier@2994
   544
      <or>
asier@2994
   545
        <istrue value="${changes.in.md5.skins}" />
asier@2994
   546
        <not>
asier@3013
   547
          <istrue value="${smart.mode}"/>
asier@2994
   548
        </not>
augusto@15962
   549
        <not>
augusto@15962
   550
          <available file="${base.context}/web/skins/rtl" type="dir"/>
augusto@15962
   551
        </not>
augusto@15962
   552
        <not>
augusto@15962
   553
          <available file="${base.context}/web/skins/ltr" type="dir"/>
augusto@15962
   554
        </not>
asier@2994
   555
      </or>
asier@2994
   556
    </condition>
asier@2994
   557
    
asier@2994
   558
    <antcall target="build.web.folder.skins"  inheritAll="true" inheritrefs="true" />
asier@2994
   559
    
asier@2994
   560
    <antcall target="minimizeJSandCSS" inheritAll="true" inheritrefs="true" />
asier@2994
   561
  </target>
asier@2994
   562
    
asier@9013
   563
  
asier@9013
   564
  <target name="build.web.folder.base">
asier@9013
   565
    <mkdir dir="${base.context}/web" />
asier@9013
   566
    <copy todir="${base.context}/web" encoding="UTF-8">
asier@9013
   567
      <fileset dir="${base.modules}">
asier@9013
   568
        <include name="*/web/*/**" />
asier@9013
   569
        <exclude name="*/web/*/skins/**" />
asier@9013
   570
      </fileset>
augusto@16403
   571
      <mapper type="regexp" from="(.*)(\${file.separator}web)(\${file.separator}.*)" to="\3" />
asier@9013
   572
    </copy>
asier@9013
   573
  </target>
martin@2346
   574
asier@2994
   575
  <target name="build.web.folder.skins" if="do.skins">
asier@2994
   576
asier@2994
   577
    <delete includeEmptyDirs="true" dir="${base.context}/web/skins" quiet="yes" />
asier@2994
   578
    <mkdir dir="${base.context}/web" />
martin@2868
   579
    <mkdir dir="${base.context}/web/skins" />
martin@2868
   580
    <mkdir dir="${base.context}/web/skins/ltr" />
martin@2868
   581
    <copy todir="${base.context}/web/skins/ltr" encoding="UTF-8">
martin@2868
   582
      <fileset dir="${base.web}/skins" />
martin@2868
   583
    </copy>
martin@2868
   584
    <mkdir dir="${base.context}/web/skins/rtl" />
martin@2868
   585
    <copy todir="${base.context}/web/skins/rtl" encoding="UTF-8">
martin@2868
   586
      <fileset dir="${base.web}/skins" />
martin@2868
   587
    </copy>
martin@2346
   588
asier@9013
   589
    <antcall target="build.web.folder.base" />
martin@2346
   590
martin@2868
   591
    <copy todir="${base.context}/web/skins/ltr" encoding="UTF-8">
martin@2868
   592
      <fileset dir="${base.modules}">
david@5270
   593
        <include name="*/web/*/skins/**" />
martin@2868
   594
      </fileset>
asier@3604
   595
      <mapper type="regexp" from="(.*)(\${file.separator}web)(.*\${file.separator})(skins\${file.separator})(.*)" to="\3\5" />
martin@2868
   596
    </copy>
carlos@0
   597
martin@2868
   598
    <copy todir="${base.context}/web/skins/rtl" encoding="UTF-8">
martin@2868
   599
      <fileset dir="${base.modules}">
david@5270
   600
        <include name="*/web/*/skins/**" />
martin@2868
   601
      </fileset>
asier@3604
   602
      <mapper type="regexp" from="(.*)(\${file.separator}web)(.*\${file.separator})(skins\${file.separator})(.*)" to="\3\5" />
martin@2868
   603
    </copy>
stefan@2143
   604
martin@2868
   605
    <java classname="org.openbravo.translate.RTLSkin" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
david@3771
   606
      <arg line="${base.context}/web/skins/rtl ${base.context}/web/skins/ltr" />
martin@2868
   607
      <classpath refid="project.class.path" />
martin@2868
   608
    </java>
asier@2994
   609
    
martin@2868
   610
  </target>
juanpablo@131
   611
martin@2868
   612
  <target name="minimizeJSandCSS" description="minimize JS and CSS files" if="minimizeJSandCSSbool">
martin@2868
   613
    <yuicompress linebreak="300" warn="false" munge="yes" preserveallsemicolons="true" outputfolder="${base.context}/web" charset="UTF-8">
martin@2868
   614
      <fileset dir="${base.web}">
martin@2868
   615
        <include name="**/*.js" />
martin@2868
   616
        <include name="**/*.css" />
martin@2868
   617
        <!-- The following scripts break in minification process -->
martin@2868
   618
        <exclude name="**/js/dojo/src/docs.js" />
martin@2868
   619
        <exclude name="**/js/dojo/src/hostenv_jsc.js" />
martin@2868
   620
        <exclude name="**/js/jscalendar/lang/calendar-al.js" />
martin@2868
   621
        <exclude name="**/js/jscalendar/lang/calendar-he-utf8.js" />
martin@2868
   622
        <exclude name="**/js/jscalendar/lang/calendar-hr.js" />
martin@2868
   623
        <!-- dojotoolkit files are already compressd -->
martin@2868
   624
        <exclude name="**/dojotoolkit/**" />
martin@2868
   625
        <!-- from old dojo, only compress main file -->
martin@2868
   626
        <exclude name="**/dojo/**" />
martin@2868
   627
        <include name="js/dojo/dojo.js" />
martin@2868
   628
      </fileset>
martin@2868
   629
    </yuicompress>
martin@2868
   630
  </target>
david@1883
   631
martin@2868
   632
  <target name="postwad">
martin@2868
   633
    <copy todir="${base.design}/design">
martin@2868
   634
      <fileset dir="${build.AD}" includes="**/*.xml" />
martin@2868
   635
    </copy>
martin@2868
   636
    <copy todir="${base.design}/design">
martin@2868
   637
      <fileset dir="${build.AD}" includes="**/*.fo" />
martin@2868
   638
    </copy>
martin@2868
   639
    <copy todir="${base.design}/design">
martin@2868
   640
      <fileset dir="${build.AD}" includes="**/*.html" />
martin@2868
   641
    </copy>
martin@2868
   642
    <copy todir="${base.design}/design">
martin@2868
   643
      <fileset dir="${build.AD}" includes="**/*.srpt" />
martin@2868
   644
    </copy>
martin@2868
   645
    <copy todir="${base.design}/design">
martin@2868
   646
      <fileset dir="${build.AD}" includes="**/*.jrxml" />
martin@2868
   647
    </copy>
martin@2868
   648
    <copy todir="${base.design}/design">
martin@2868
   649
      <fileset dir="${build.AD}" includes="**/*.jasper" />
martin@2868
   650
    </copy>
martin@2868
   651
  </target>
martin@2346
   652
carlos@0
   653
asier@5937
   654
  <target name="eclipse.compile.complete" depends="clean,generate.entities,wad,sqlc,postsrc,translate, trl.remove.unused">
martin@2868
   655
    <antcall target="update.build.timestamp" />
martin@2868
   656
  </target>
martin@2868
   657
martin@2868
   658
  <target name="eclipse.compile" depends="wad,sqlc, postsrc, translate">
martin@2868
   659
  </target>
martin@2868
   660
martin@2868
   661
  <target name="compile.src" depends="compileSqlc, postsrc, copy.files">
martin@2868
   662
  </target>
martin@2868
   663
asier@5937
   664
  <target name="compile.complete" depends="clean,generate.entities,wad,compileSqlc,postsrc,translate, trl.remove.unused">
martin@2868
   665
    <antcall target="update.build.timestamp" />
martin@2868
   666
  </target>
martin@2868
   667
martin@2868
   668
asier@3013
   669
  <target name="smartbuild.new.wad" if="new.wad">
martin@2868
   670
    <antcall inheritall="true" inheritrefs="true" target="wad" />
asier@2854
   671
    <taskdef name="updateWADmd5" classname="org.openbravo.utils.WADCheckSumTask">
asier@2854
   672
      <classpath refid="project.class.path" />
asier@2854
   673
    </taskdef>
martin@2868
   674
    <updateWADmd5 obDir="${basedir}/.." />
martin@2868
   675
  </target>
asier@2854
   676
asier@3013
   677
  <target name="smartbuild.no.new.wad" unless="new.wad">
martin@2868
   678
    <antcall inheritall="true" inheritrefs="true" target="wad.quick" />
asier@2974
   679
  </target>
asier@2974
   680
asier@3013
   681
  <target name="smartbuild">
asier@3013
   682
    <antcall inheritall="true" inheritrefs="true" target="smartbuild.new.wad" />
asier@3013
   683
    <antcall inheritall="true" inheritrefs="true" target="smartbuild.no.new.wad" />
martin@2868
   684
    <antcall inheritall="true" inheritrefs="true" target="compileSqlc" />
martin@2868
   685
    <antcall inheritall="true" inheritrefs="true" target="postsrc" />
asier@9013
   686
    <antcall inheritall="true" inheritrefs="true" target="build.web.folder.base" />
martin@2868
   687
    <antcall inheritall="true" inheritrefs="true" target="translate" />
martin@2868
   688
    <antcall inheritall="true" inheritrefs="true" target="update.build.timestamp" />
martin@2868
   689
  </target>
carlos@0
   690
martin@2868
   691
  <target name="translate" if="translation">
martin@2868
   692
    <antcall inheritall="true" inheritrefs="true" target="compile.translate">
martin@2868
   693
      <param name="extension" value="html" />
martin@2868
   694
    </antcall>
martin@2868
   695
    <antcall inheritall="true" inheritrefs="true" target="compile.translate">
martin@2868
   696
      <param name="extension" value="fo" />
martin@2868
   697
    </antcall>
martin@2868
   698
    <antcall inheritall="true" inheritrefs="true" target="compile.translate">
martin@2868
   699
      <param name="extension" value="srpt" />
martin@2868
   700
    </antcall>
martin@2868
   701
    <antcall inheritall="true" inheritrefs="true" target="compile.translate">
martin@2868
   702
      <param name="extension" value="jrxml" />
martin@2868
   703
    </antcall>
martin@2868
   704
    <antcall inheritall="true" inheritrefs="true" target="translate.modules" />
martin@2868
   705
  </target>
carlos@0
   706
martin@2868
   707
  <target name="compile" depends="wad,compileSqlc, postsrc, translate">
martin@2868
   708
  </target>
asier@1929
   709
martin@2868
   710
  <target name="translate.modules" if="translation">
martin@2868
   711
    <antcall inheritall="true" inheritrefs="true" target="compile.translate.modules">
martin@2868
   712
      <param name="extension" value="html" />
martin@2868
   713
    </antcall>
martin@2868
   714
    <antcall inheritall="true" inheritrefs="true" target="compile.translate.modules">
martin@2868
   715
      <param name="extension" value="fo" />
martin@2868
   716
    </antcall>
martin@2868
   717
    <antcall inheritall="true" inheritrefs="true" target="compile.translate.modules">
martin@2868
   718
      <param name="extension" value="srpt" />
martin@2868
   719
    </antcall>
martin@2868
   720
    <antcall inheritall="true" inheritrefs="true" target="compile.translate.modules">
martin@2868
   721
      <param name="extension" value="jrxml" />
martin@2868
   722
    </antcall>
martin@2868
   723
  </target>
asier@1929
   724
martin@2868
   725
  <target name="compile.translate.modules">
martin@2868
   726
    <java classname="org.openbravo.translate.Translate" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
asier@3980
   727
      <arg line="'${base.config}/Openbravo.properties' ${extension} '${base.modules}' '*/src'" />
martin@2868
   728
      <classpath refid="project.class.path" />
antonio@7592
   729
      <syspropertyset>
antonio@7592
   730
         <propertyref name="java.security.egd" />
antonio@7592
   731
      </syspropertyset>
martin@2868
   732
    </java>
martin@2868
   733
  </target>
carlos@0
   734
martin@2868
   735
  <target name="installWebService" depends="init" if="wsdd">
asier@4307
   736
    <taskdef name="wsAdmin" classname="org.openbravo.erpCommon.utility.WebServiceAdmin">
martin@2868
   737
      <classpath refid="project.class.path" />
asier@4307
   738
    </taskdef>
asier@4307
   739
    <wsAdmin axisServlet="${context.url}/servlet/AxisServlet"
asier@4307
   740
             baseDir="${source.path}"
asier@4307
   741
             action="deploy"/>
martin@2868
   742
  </target>
carlos@0
   743
asier@4307
   744
  <target name="uninstallWebService" depends="init">
asier@4307
   745
    <taskdef name="wsAdmin" classname="org.openbravo.erpCommon.utility.WebServiceAdmin">
asier@4307
   746
      <classpath refid="project.class.path" />
asier@4307
   747
    </taskdef>
asier@4307
   748
    <wsAdmin axisServlet="${context.url}/servlet/AxisServlet"
asier@4307
   749
             baseDir="${source.path}"
asier@4307
   750
             action="undeploy"/>
asier@4307
   751
  </target>
carlos@0
   752
martin@2868
   753
  <target name="compile.translate">
martin@2868
   754
    <java classname="org.openbravo.translate.Translate" jvm="${env.JAVA_HOME}/bin/java" fork="yes" maxmemory="${build.maxmemory}">
asier@3980
   755
      <arg line="'${base.config}/Openbravo.properties' ${extension} '${basedir}'" />
martin@2868
   756
      <classpath refid="project.class.path" />
antonio@7592
   757
      <syspropertyset>
antonio@7592
   758
         <propertyref name="java.security.egd" />
antonio@7592
   759
      </syspropertyset>
martin@2868
   760
    </java>
martin@2868
   761
  </target>
carlos@0
   762
stefan@9978
   763
  <!-- Note (see issue 15709 for details):
stefan@9978
   764
       orphan jarfiles are not deleted from the webapp as deployed in tomcat when
stefan@9978
   765
       this rebuild is running inside the rebuild UI (started from MMC). See also the related
stefan@9978
   766
       copy.files.jarsync(.do) task which does this deletion between tomcat stop & start
stefan@9978
   767
   -->
stefan@9978
   768
  <target name="copy.files" depends="copy.files.jarsync.notinrebuildui" if="mode.class">
martin@2868
   769
    <mkdir dir="${jakarta.base}/webapps/${context.name}" />
antonio@7595
   770
    <sync todir="${jakarta.base}/webapps/${context.name}">
antonio@7595
   771
      <preserveintarget>
antonio@7595
   772
        <include name="**/WEB-INF/classes/**"/>
stefan@9052
   773
        <include name="**/WEB-INF/lib/**"/>
antonio@7595
   774
      </preserveintarget>
martin@2868
   775
      <fileset dir="${base.context}" />
antonio@7595
   776
    </sync>
martin@2868
   777
    <mkdir dir="${jakarta.base}/webapps/${context.name}/WEB-INF/classes" />
antonio@7595
   778
    <sync todir="${jakarta.base}/webapps/${context.name}/WEB-INF/classes">
martin@2868
   779
      <fileset dir="${build}" />
antonio@7595
   780
    </sync>
asier@7208
   781
    <mkdir dir="${jakarta.base}/webapps/${context.name}/WEB-INF/lib" />
asier@7208
   782
      <copy todir="${jakarta.base}/webapps/${context.name}/WEB-INF/lib" file="${build.core.lib}/openbravo-core.jar" encoding="UTF-8">
asier@7208
   783
    </copy>
martin@2868
   784
  </target>
ivan@1738
   785
stefan@9978
   786
  <target name="copy.files.jarsync.notinrebuildui" unless="runningInRebuildUI">
stefan@9978
   787
    <antcall target="copy.files.jarsync.do"/>
stefan@9978
   788
  </target>
stefan@9978
   789
stefan@9978
   790
  <!-- sync jar files from WebContent -> deployed webapp & delete orphan jars from webapp
stefan@9978
   791
       as delete orphan is excluded from normal copy.files task -->
stefan@9978
   792
  <target name="copy.files.jarsync.do" if="mode.class">
stefan@9978
   793
    <mkdir dir="${jakarta.base}/webapps/${context.name}/WEB-INF/lib"/>
stefan@9978
   794
    <sync todir="${jakarta.base}/webapps/${context.name}/WEB-INF/lib">
stefan@9978
   795
      <fileset dir="${base.context}/WEB-INF/lib" />
stefan@9978
   796
    </sync>
stefan@9978
   797
  </target>
stefan@9978
   798
martin@2868
   799
  <target name="compile.development" depends="generate.entities, compile, copy.files">
martin@2868
   800
  </target>
asier@1929
   801
martin@2868
   802
  <target name="compile.complete.development" depends="compile.complete, copy.files">
antonio@8136
   803
    <updatesystemstatus v="RB51"/>
martin@2868
   804
  </target>
asier@1929
   805
martin@2868
   806
  <target name="compile.web" depends="build.web.folder">
martin@2868
   807
  </target>
asier@1929
   808
martin@2868
   809
  <target name="compile.web.development" depends="build.web.folder, copy.files">
martin@2868
   810
  </target>
asier@1929
   811
martin@2868
   812
  <target name="build.war">
martin@2868
   813
    <delete failonerror="false" file="${base.lib}/${context.name}.war" />
martin@2868
   814
    <war compress="true" destfile="${base.lib}/${context.name}.war" encoding="UTF-8" webxml="${base.context}/WEB-INF/web.xml">
martin@2868
   815
      <zipfileset dir="${base.context}">
martin@2868
   816
        <exclude name="**/WEB-INF/web.xml" />
martin@2868
   817
      </zipfileset>
martin@2868
   818
      <classes dir="${build}" />
martin@2868
   819
    </war>
antonio@8136
   820
    <updatesystemstatus v="RB51"/>
martin@2868
   821
  </target>
martin@2868
   822
martin@2868
   823
  <target name="generate-wsdd">
martin@2868
   824
    <delete failonerror="false">
martin@2868
   825
      <fileset dir="${base.src}/org/openbravo/services/webservice" includes="**/*" />
martin@2868
   826
    </delete>
martin@2868
   827
martin@2868
   828
    <mkdir dir="${build}" />
asier@7861
   829
     <axis-wsdl2java output="${base.src}" verbose="false" url="http://centralrepository.openbravo.com/openbravo/services/WebService3?wsdl" serverside="true" debug="false">
asier@7861
   830
      <mapping namespace="http://centralrepository.openbravo.com/openbravo/services/WebService3" package="org.openbravo.services.webservice" />
asier@7861
   831
      <mapping namespace="/services/WebService3" package="org.openbravo.services.webservice" />
martin@2868
   832
    </axis-wsdl2java>
martin@2868
   833
  </target>
martin@2868
   834
antonio@3372
   835
  <target name="update.build.timestamp" unless="timestamp">
martin@2868
   836
    <sql driver="${bbdd.driver}" url="${bbdd.owner.url}" userid="${bbdd.user}" password="${bbdd.password}" delimiter="/">
martin@2868
   837
      <classpath>
martin@2868
   838
        <fileset dir="${base.lib}">
martin@2868
   839
          <include name="**/*.jar">
martin@2868
   840
          </include>
martin@2868
   841
        </fileset>
martin@2868
   842
      </classpath>
martin@2868
   843
      <transaction>
asier@2819
   844
	        UPDATE AD_SYSTEM_INFO SET LAST_BUILD=NOW()
asier@2819
   845
	      </transaction>
martin@2868
   846
    </sql>
martin@2868
   847
  </target>
asier@1929
   848
carlos@0
   849
</project>