| <?xml version="1.0" encoding="UTF-8"?> |
| |
| <!-- |
| Copyright 2007 ZXing authors |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <project name="core" default="build"> |
| |
| <property file="../build.properties"/> |
| |
| <path id="javame-compile-bootclasspath"> |
| <fileset dir="${WTK-home}/lib"> |
| <include name="cldcapi11.jar"/> |
| </fileset> |
| </path> |
| <property name="javame-compile-bootclasspath-path" refid="javame-compile-bootclasspath"/> |
| |
| <target name="init"> |
| <tstamp/> |
| </target> |
| |
| <target name="compile" depends="init"> |
| <mkdir dir="build"/> |
| <javac srcdir="src" |
| destdir="build" |
| source="1.2" |
| target="1.2" |
| bootclasspath="${javame-compile-bootclasspath-path}" |
| optimize="true" |
| debug="${generate-debug}" |
| deprecation="true" |
| fork="true"/> |
| <jar jarfile="core.jar" basedir="build"> |
| <!-- These entries allow core.jar to function as an OSGi bundle, and also specifices |
| additional attributes for compatibility with BugLabs's BUG platform. |
| Thanks to David Albert for this change. --> |
| <manifest> |
| <attribute name="Bundle-Name" value="ZXing"/> |
| <attribute name="Bundle-Vendor" value="ZXing Project"/> |
| <attribute name="Bundle-SymbolicName" value="ZXing"/> |
| <attribute name="Bundle-Version" value="${version}"/> |
| <attribute name="Export-Package" value="com.google.zxing,com.google.zxing.common,com.google.zxing.client.result"/> |
| <attribute name="Bug-Bundle-Type" value="Application"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="build" depends="clean"> |
| <antcall target="compile"> |
| <param name="generate-debug" value="true"/> |
| </antcall> |
| </target> |
| |
| <target name="build-no-debug" depends="clean"> |
| <antcall target="compile"> |
| <param name="generate-debug" value="false"/> |
| </antcall> |
| </target> |
| |
| <!-- This target really supports the Android client, where we can't as easily build |
| an optimized .apk directly, and need an optimized library. We have to strip debug info |
| above to appease dex --> |
| <target name="build-optimized" depends="build-no-debug"> |
| <move file="core.jar" tofile="temp.jar"/> |
| <java jar="${WTK-home}/bin/proguard.jar" fork="true" failonerror="true"> |
| <jvmarg value="-Dmaximum.inlined.code.length=32"/> |
| <arg value="-injars temp.jar"/> |
| <arg value="-outjars core.jar"/> |
| <arg value="-libraryjars ${WTK-home}/lib/cldcapi11.jar"/> |
| <arg value="-keepattributes Exceptions,InnerClasses,Signature,!LocalVariableTable,!LocalVariableTypeTable"/> |
| <arg value="-keep public class com.google.zxing.* { public protected *; }"/> |
| <arg value="-keep public class com.google.zxing.client.result.* { public protected *; }"/> |
| <arg value="-keep public class com.google.zxing.common.* { public protected *; }"/> |
| <arg value="-dontshrink"/> |
| <arg value="-dontobfuscate"/> |
| <arg value="-optimizationpasses 7"/> |
| <arg value="-verbose"/> |
| </java> |
| <delete file="temp.jar"/> |
| </target> |
| |
| <target name="dump"> |
| <java jar="${WTK-home}/bin/proguard.jar" fork="true"> |
| <arg value="-injars core.jar"/> |
| <arg value="-libraryjars ${WTK-home}/lib/cldcapi11.jar"/> |
| <arg value="-dontshrink"/> |
| <arg value="-dontobfuscate"/> |
| <arg value="-dontoptimize"/> |
| <arg value="-dump dump.txt"/> |
| </java> |
| </target> |
| |
| <target name="build-test" depends="init,build"> |
| <fail message="Please build 'javase' first"> |
| <condition> |
| <not> |
| <available file="../javase/javase.jar" type="file"/> |
| </not> |
| </condition> |
| </fail> |
| <mkdir dir="build-test"/> |
| <javac srcdir="test/src" |
| destdir="build-test" |
| debug="true" |
| deprecation="true"> |
| <classpath> |
| <pathelement location="core.jar"/> |
| <pathelement location="../javase/javase.jar"/> |
| <pathelement location="lib/junit.jar"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="test-blackbox" depends="build-test"> |
| <junit printsummary="on" haltonfailure="on" haltonerror="on" fork="true" dir="."> |
| <formatter type="plain" usefile="false"/> |
| <classpath> |
| <pathelement location="core.jar"/> |
| <pathelement location="build-test"/> |
| <pathelement location="../javase/javase.jar"/> |
| <pathelement location="lib/junit.jar"/> |
| </classpath> |
| <assertions> |
| <enable/> |
| </assertions> |
| <batchtest> |
| <fileset dir="test/src"> |
| <include name="**/*BlackBox*TestCase.java"/> |
| <exclude name="com/google/zxing/common/AbstractBlackBoxTestCase.java"/> |
| <exclude name="com/google/zxing/common/AbstractNegativeBlackBoxTestCase.java"/> |
| </fileset> |
| </batchtest> |
| </junit> |
| </target> |
| |
| <target name="test-unit" depends="build-test"> |
| <junit printsummary="on" haltonfailure="on" haltonerror="on" fork="true" dir="."> |
| <formatter type="plain" usefile="false"/> |
| <classpath> |
| <pathelement location="core.jar"/> |
| <pathelement location="build-test"/> |
| <pathelement location="../javase/javase.jar"/> |
| <pathelement location="lib/junit.jar"/> |
| </classpath> |
| <assertions> |
| <enable/> |
| </assertions> |
| <batchtest> |
| <fileset dir="test/src"> |
| <exclude name="**/*BlackBox*TestCase.java"/> |
| </fileset> |
| </batchtest> |
| </junit> |
| </target> |
| |
| <target name="test" depends="test-unit,test-blackbox"/> |
| |
| <target name="clean"> |
| <delete dir="build"/> |
| <delete dir="build-test"/> |
| <delete file="core.jar"/> |
| </target> |
| |
| </project> |