| <?xml version="1.0"?> |
| <project name="Apache Santuario" default="help" basedir="."> |
| |
| <!-- G L O B A L P R O P E R T I E S --> |
| <!-- Product name and version properties --> |
| <property name="product.Name" value="Apache XML Security for Java"/> |
| <property name="product.name" value="xml-security"/> |
| <property name="product.shortname" value="xmlsec"/> |
| |
| <property name="product.version.major" value="1"/> |
| <property name="product.version.minor" value="5"/> |
| <property name="product.version.level" value="9"/> |
| <property name='product.version.qualifier' value='-SNAPSHOT'/> |
| <property name="product.version" |
| value="${product.version.major}.${product.version.minor}.${product.version.level}${product.version.qualifier}"/> |
| <property name="product_version" |
| value="${product.version.major}_${product.version.minor}_${product.version.level}${product.version.qualifier}"/> |
| <property name="year" value="2000-2015"/> |
| <property name="copyright" |
| value="Copyright © ${year} Apache XML Project. All Rights Reserved."/> |
| |
| <!-- directory properties --> |
| <property name="dir.src" value="${basedir}/src/main/java" /> |
| <property name="dir.src.test" value="${basedir}/src/test/java" /> |
| <property name="dir.src.samples" value="${basedir}/samples" /> |
| <property name="dir.libs" value="${basedir}/libs" /> |
| <property name="dir.build" value="${basedir}/build" /> |
| <property name="dir.build.bin" value="${dir.build}/classes" /> |
| <property name="dir.build.libs" value="${dir.build}/libs" /> |
| <property name="dir.build.test" value="${dir.build}/test" /> |
| <property name="dir.build.samples" value="${dir.build}/samples" /> |
| <property name="dir.build.docs" value="${dir.build}/docs" /> |
| <property name="dir.build.docs.xml" value="${dir.build.docs}/xml" /> |
| <property name="dir.build.docs.html" value="${dir.build.docs}/html" /> |
| <property name="dir.build.src" value="${dir.build}/src" /> |
| <property name="dir.build.dist" value="${dir.build}/dist" /> |
| <property name="dir.build.srcdist" value="${dir.build.dist}/src/${product.name}-${product_version}"/> |
| <property name="dir.build.bindist" value="${dir.build.dist}/bin/${product.name}-${product_version}"/> |
| <property name="dir.build.junit.xml" value="${dir.build.docs.xml}/junit" /> |
| <property name="dir.build.junit.html" value="${dir.build.docs.html}/junit" /> |
| <property name="dir.build.javadoc" value="${dir.build.docs.html}/javadoc" /> |
| <property name="dir.build.coverage" value="${dir.build.docs.html}/coverage" /> |
| <property name="dir.manifest" value="${dir.build.bin}/META-INF"/> |
| |
| <!-- library properties --> |
| <property name="lib.logging" value="${dir.libs}/commons-logging-1.1.1.jar" /> |
| <property name="lib.log4j" value="${dir.libs}/log4j-1.2.16.jar" /> |
| <property name="lib.xalan.1" value="${dir.libs}/xalan-2.7.2.jar" /> |
| <property name="lib.xalan.2" value="${dir.libs}/serializer-2.7.2.jar" /> |
| <property name="lib.xalan.3" value="${dir.libs}/xml-apis-1.3.04.jar" /> |
| <property name="lib.xerces.1" value="${dir.libs}/xercesImpl-2.9.1.jar" /> |
| <property name="lib.jce" value="${dir.libs}/${jce.provider.prefix}-${jce.provider.jar}" /> |
| <property name="lib.junit" value="${dir.libs}/junit-4.8.2.jar" /> |
| <property name="lib.clover" value="${dir.libs}/clover.jar" /> |
| |
| <!-- Apache Santuario libraries (for bin distribution) --> |
| <property name="lib.xmlsec" value="${dir.libs}/xmlsec-${product.version}.jar" /> |
| <property name="lib.xmlsec.samples" value="${dir.libs}/xmlsecSamples-${product.version}.jar"/> |
| <property name="lib.xmlsec.tests" value="${dir.libs}/xmlsecTests-${product.version}.jar" /> |
| |
| <!-- JAR properties --> |
| <property name="jar.library" value="${dir.build}/xmlsec-${product.version}.jar" /> |
| <property name="jar.samples" value="${dir.build}/xmlsecSamples-${product.version}.jar" /> |
| <property name="jar.tests" value="${dir.build}/xmlsecTests-${product.version}.jar" /> |
| <property name="jar.manifest" value="${dir.manifest}/MANIFEST.MF"/> |
| |
| |
| <!-- build variable properties --> |
| |
| <!-- T A S K D E F S --> |
| <taskdef resource="clovertasks"/> |
| |
| <!-- C O N D I T I O N A L P R O P E R T I E S --> |
| <target name="do.build.src" > |
| <!-- global properties applies here --> |
| </target > |
| |
| <!-- P A T H S --> |
| <path id="id.classpath.xalan" > |
| <pathelement location="${lib.xalan.1}" /> |
| <pathelement location="${lib.xalan.2}" /> |
| <pathelement location="${lib.xalan.3}" /> |
| </path > |
| <path id="id.classpath.xerces" > |
| <pathelement location="${lib.xerces.1}" /> |
| </path > |
| <path id="id.classpath.logging" > |
| <pathelement location="${lib.logging}" /> |
| <pathelement location="${lib.log4j}" /> |
| </path > |
| <path id="id.classpath.common" > |
| <path refid="id.classpath.xalan" /> |
| <path refid="id.classpath.xerces" /> |
| <path refid="id.classpath.logging" /> |
| </path > |
| <path id="id.classpath.crypt" > |
| <pathelement location="${lib.jce}" /> |
| </path > |
| <path id="id.classpath.coverage" > |
| <pathelement location="${lib.clover}" /> |
| </path > |
| <path id="id.classpath.sig" > |
| </path > |
| <path id="id.classpath" > |
| <path refid="id.classpath.common" /> |
| <path refid="id.classpath.crypt" /> |
| <path refid="id.classpath.sig" /> |
| <!--path refid="id.classpath.coverage" /--> |
| </path > |
| <path id="id.classpath.test" > |
| <path refid="id.classpath" /> |
| <pathelement path="${lib.junit}"/> |
| <pathelement location="${dir.build.bin}" /> |
| <pathelement location="${dir.build.test}" /> |
| <path refid="id.classpath.coverage" /> |
| <pathelement location="${lib.xmlsec}" /> |
| <pathelement location="${lib.xmlsec.samples}" /> |
| <pathelement location="${lib.xmlsec.tests}" /> |
| </path> |
| <path id="id.classpath.samples" > |
| <path refid="id.classpath" /> |
| <pathelement location="${dir.build.bin}" /> |
| <pathelement location="${dir.build.test}" /> |
| <pathelement location="${dir.build.samples}" /> |
| <pathelement location="${lib.xmlsec}" /> |
| <pathelement location="${lib.xmlsec.samples}" /> |
| <pathelement location="${lib.xmlsec.tests}" /> |
| </path> |
| |
| <!-- P A T T E R N S E T S --> |
| <patternset id="id.patternset.distFiles"> |
| <include name="build.xml"/> |
| <include name="pom.xml"/> |
| <include name="LICENSE"/> |
| <include name="NOTICE"/> |
| </patternset> |
| |
| <patternset id="id.patternset.srcFiles"> |
| <include name="src/**/*"/> |
| </patternset> |
| |
| <patternset id="id.patternset.sampleFiles"> |
| <include name="samples/**/*"/> |
| </patternset> |
| |
| <!-- T A R G E T S --> |
| |
| <!-- Welcome screen --> |
| |
| <target name="init"> |
| <echo message=""/> |
| <echo message="-------------------------------------------------------------------"/> |
| <echo message="--------- ${product.Name} v${product.version} [${year}] -----------"/> |
| <echo message="-------------------------------------------------------------------"/> |
| <echo message="Building with ${ant.version}"/> |
| <echo message="Java ${java.version} located at ${java.home} "/> |
| <echo message="-------------------------------------------------------------------"/> |
| <echo message=""/> |
| </target> |
| |
| <!-- environment targets --> |
| <!-- set up --> |
| <target name="env.mk.dirs" depends="init" unless="has.dirs" > |
| <mkdir dir="${dir.build}" /> |
| <mkdir dir="${dir.build.bin}" /> |
| <mkdir dir="${dir.build.docs}" /> |
| <mkdir dir="${dir.build.test}" /> |
| <mkdir dir="${dir.build.libs}" /> |
| <mkdir dir="${dir.build.dist}" /> |
| <mkdir dir="${dir.build.samples}" /> |
| <property name="has.dirs" value="true" /> |
| </target > |
| |
| <!-- tear down --> |
| <target depends="init" name="env.rm.dirs" > |
| <delete dir="${dir.build}" /> |
| </target > |
| |
| <target depends="init" name="env.rm.files" > |
| <delete file="signature.xml"/> |
| <delete file="axisSignature.xml"/> |
| <delete file="encryptedInfo.xml"/> |
| <delete file="decryptedInfo.xml"/> |
| <delete file="kek"/> |
| <delete> |
| <fileset dir="." includes="merlin16*.html,merlins*.xml" /> |
| </delete> |
| </target > |
| |
| <target depends="init" name="with.clover" > |
| <clover-setup initstring="clover-db/coverage.db" > |
| <fileset dir="${dir.src}" > |
| <include name="**/*.java" /> |
| <exclude name="**/*Exception.java" /> |
| </fileset > |
| </clover-setup > |
| </target > |
| |
| <!-- check targets --> |
| |
| <target name="do.check.bindist"> |
| <condition property="is.bin.dist"> |
| <and> |
| <available file="${lib.xmlsec}" /> |
| <available file="${lib.xmlsec.samples}" /> |
| <available file="${lib.xmlsec.tests}" /> |
| <not> |
| <available type="dir" file="src" /> |
| </not> |
| </and> |
| </condition> |
| </target> |
| |
| |
| <!-- B U I L D T A R G E T S --> |
| <property environment="env"/> |
| <!-- source --> |
| <target name="build.src" |
| depends="do.build.src,env.mk.dirs,do.check.bindist" |
| unless="is.bin.dist"> |
| <javac target="1.5" source="1.5" srcdir="${dir.src}" |
| destdir="${dir.build.bin}" |
| debug="${build.compile.debug}" |
| includeAntRuntime="false"> |
| <compilerarg value="-XDignore.symbol.file" /> |
| <classpath refid="id.classpath" /> |
| <include name="**/org/apache/xml/security/**/*.java" /> |
| <include name="**/javax/xml/crypto/**/*.java" /> |
| <include name="**/org/apache/jcp/xml/dsig/internal/**/*.java" /> |
| </javac > |
| |
| <copy todir="${dir.build.bin}" > |
| <fileset dir="${dir.src}" |
| includes="**/org/apache/xml/security/resource/*, |
| **/org/apache/xml/security/resource/schema/*"/> |
| </copy > |
| </target > |
| |
| <!-- tests --> |
| <target name="build.test" |
| depends="build.src" |
| unless="is.bin.dist"> |
| <javac target="1.5" source="1.5" srcdir="${dir.src.test}" |
| destdir="${dir.build.test}" |
| debug="${build.compile.debug}" |
| includeAntRuntime="false"> |
| <classpath refid="id.classpath.test" /> |
| <include name="**/org/apache/xml/security/**/*.java" /> |
| <include name="**/javax/xml/crypto/**/*.java" /> |
| </javac> |
| <copy todir="${dir.build.test}"> |
| <fileset dir="${dir.src.test}" includes="**/*.properties"/> |
| <fileset dir="${dir.src.test}" includes="**/*.xml"/> |
| <fileset dir="${dir.src.test}" includes="**/*.zip"/> |
| </copy> |
| </target> |
| |
| <!-- samples --> |
| <target name="build.samples" |
| depends="build.src" |
| unless="is.bin.dist"> |
| <javac target="1.5" source="1.5" srcdir="${dir.src.samples}" |
| destdir="${dir.build.samples}" |
| debug="${build.compile.debug}" |
| includeAntRuntime="false"> |
| <classpath refid="id.classpath.samples"/> |
| </javac> |
| <copy todir="${dir.build.samples}/data"> |
| <fileset dir="${dir.src.samples}/data" includes="**/*.xml"/> |
| <fileset dir="${dir.src.samples}/data" includes="**/*.zip"/> |
| </copy> |
| </target> |
| |
| |
| <!-- T E S T T A R G E T S --> |
| <!-- big test --> |
| <target name="test" depends="build.jar" |
| description="Starts all Junit tests"> |
| <delete dir="${dir.build.junit.xml}"/> |
| <delete dir="${dir.build.junit.html}"/> |
| <mkdir dir="${dir.build.junit.xml}"/> |
| <mkdir dir="${dir.build.junit.html}"/> |
| <!-- The unit tests include so-called interoperability tests against |
| cryptographic values generated using software from other vendors. |
| This package includes many of these vectors, but not the ones from |
| the IBM alphaWorks XML Security Suite. They are not included because |
| IBM even has these signatures under copyright. |
| If you want to test against IBM, download xss4j from |
| |
| http://www.alphaworks.ibm.com/tech/xmlsecuritysuite |
| |
| and put the files into the |
| |
| src/test/resources/com/ibm/xss4j-20030127/ |
| |
| directory. If the file enveloped-rsa.sig is found in that directory, |
| IBM is 'magically' included in the test ;-)) |
| --> |
| <available file="src/test/resources/com/ibm/xss4j-20030127/enveloped-rsa.sig" property="ibm.available"/> |
| <junit filtertrace="true" fork="true" printsummary="on" |
| failureproperty="build.test.failed"> |
| <jvmarg value="-Djava.compiler=NONE"/> |
| <sysproperty key="basedir" value="${basedir}"/> |
| <sysproperty key="proxyHost" value="${proxy.host}"/> |
| <sysproperty key="proxyPort" value="${proxy.port}"/> |
| <sysproperty key="java.util.logging.config.file" |
| value="${basedir}/logging.properties"/> |
| <sysproperty key="product.version" value="${product.version}"/> |
| <classpath refid="id.classpath.test"/> |
| <formatter type="xml"/> |
| <!-- Also put output to screen --> |
| <formatter type="plain" usefile="false"/> |
| <batchtest fork="yes" todir="${dir.build.junit.xml}"> |
| <fileset dir="${dir.src.test}"> |
| <include name="org/apache/xml/security/**/*Test.java"/> |
| </fileset> |
| </batchtest> |
| <test if="ibm.available" name="org.apache.xml.security.test.interop.IBMTest" todir="${dir.build.junit.xml}"/> |
| </junit> |
| <junitreport todir="${dir.build.junit.xml}"> |
| <fileset dir="${dir.build.junit.xml}"> |
| <include name="TEST-*.xml"/> |
| </fileset> |
| <report format="frames" todir="${dir.build.junit.html}"/> |
| </junitreport> |
| <fail if="build.test.failed" message="Unit Tests Failed"/> |
| </target> |
| |
| <!-- Test JSR 105/XML DSig API --> |
| <target name="test_jsr105" depends="build.jar" |
| description="Runs JSR 105 interop and unit tests"> |
| <delete dir="${dir.build.junit.xml}"/> |
| <delete dir="${dir.build.junit.html}"/> |
| <mkdir dir="${dir.build.junit.xml}"/> |
| <mkdir dir="${dir.build.junit.html}"/> |
| <junit filtertrace="true" fork="true" printsummary="on" |
| failureproperty="build.test.failed"> |
| <sysproperty key="basedir" value="${basedir}"/> |
| <sysproperty key="proxyHost" value="${proxy.host}"/> |
| <sysproperty key="proxyPort" value="${proxy.port}"/> |
| <sysproperty key="java.util.logging.config.file" value="${basedir}/logging.properties"/> |
| <classpath refid="id.classpath.test"/> |
| <formatter type="xml"/> |
| <!-- Also put output to screen --> |
| <formatter type="plain" usefile="false"/> |
| <batchtest fork="yes" todir="${dir.build.junit.xml}"> |
| <fileset dir="${dir.src.test}"> |
| <include name="javax/xml/crypto/**/*Test.java"/> |
| </fileset> |
| </batchtest> |
| </junit> |
| <junitreport todir="${dir.build.junit.xml}"> |
| <fileset dir="${dir.build.junit.xml}"> |
| <include name="TEST-*.xml"/> |
| </fileset> |
| <report format="frames" todir="${dir.build.junit.html}"/> |
| </junitreport> |
| <fail if="build.test.failed" message="Unit Tests Failed"/> |
| </target> |
| |
| <!-- Run all the tests --> |
| <target name="all-tests" depends="test,test_jsr105" |
| description="Runs all the test targets"> |
| </target> |
| |
| <!-- XML Encryption Samples --> |
| <target name="encrypt" |
| depends="build.samples" |
| description="encrypts xml data"> |
| <delete file="build/encryptedInfo.xml"/> |
| <delete file="build/kek"/> |
| <java classname="org.apache.xml.security.samples.encryption.Encrypter" |
| failonerror="true" |
| fork="yes" |
| taskname="Encrypter"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target name="decrypt" |
| depends="build.samples" |
| description="decrypts xml data"> |
| <delete file="build/decryptedInfo.xml"/> |
| <java classname="org.apache.xml.security.samples.encryption.Decrypter" |
| failonerror="true" |
| fork="yes" |
| taskname="Decrypter"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target name="encryptAndDecrypt" |
| depends="encrypt, decrypt" |
| description="encrypts and decrypts an element's contents" /> |
| |
| <!-- Signature Samples --> |
| |
| <target name="sign" |
| depends="build.samples" |
| description="creates a signature" > |
| <delete file="build/signature.xml"/> |
| <java classname="org.apache.xml.security.samples.signature.CreateSignature" |
| failonerror="true" |
| fork="yes" |
| taskname="CreateSignature"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target name="verify" |
| depends="build.samples" |
| description="verifies a signature"> |
| <java classname="org.apache.xml.security.samples.signature.VerifySignature" |
| failonerror="true" |
| fork="yes" |
| taskname="VerifySignature"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target name="signAndVerify" |
| depends="sign, verify" |
| description="creates and verifies a signature" /> |
| |
| <!-- Axis Signature Samples --> |
| |
| <target name="axis-sign" |
| depends="build.samples" |
| description="axis sign sample"> |
| <echo message="Running org.apache.xml.security.samples.AxisSigner"/> |
| <java classname="org.apache.xml.security.samples.AxisSigner" |
| failonerror="true" fork="yes" taskname="SignAxis"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target name="axis-verify" |
| depends="build.samples" |
| description="axis verify sample"> |
| <echo message="Running org.apache.xml.security.samples.AxisVerifier"/> |
| <java classname="org.apache.xml.security.samples.AxisVerifier" |
| failonerror="true" |
| fork="yes" |
| taskname="VerifyAxis"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <target depends="axis-sign, axis-verify" name="AxisSignAndVerify"/> |
| |
| <!-- Mega Samples --> |
| <target name="mega-sample" |
| depends="build.samples"> |
| <echo message="Now I'll try to verify merlins example fifteen-HMAC"/> |
| <java classname="org.apache.xml.security.samples.signature.VerifyMerlinsExamplesFifteen" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Now I'll try to verify merlins example sixteen"/> |
| <java classname="org.apache.xml.security.samples.signature.VerifyMerlinsExamplesSixteen" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Now I'll try to verify merlins example twenty three"/> |
| <java classname="org.apache.xml.security.samples.signature.VerifyMerlinsExamplesTwentyThree" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Now I'll create a signature in signature.xml and verify it"/> |
| <java classname="org.apache.xml.security.samples.signature.CreateSignature" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| <java classname="org.apache.xml.security.samples.signature.VerifySignature" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Now I'll create a signature like merlin-16 but without XSLT"/> |
| <java classname="org.apache.xml.security.samples.signature.CreateMerlinsExampleSixteen" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Please look into log.txt, merlinsSixteenRecreated.xml and signature.xml"/> |
| |
| |
| <echo message=""/> |
| <echo message="Now I'll create a signature like merlin-23 but without XSLT"/> |
| <java classname="org.apache.xml.security.samples.signature.CreateMerlinsExampleTwentyThree" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| |
| <echo message=""/> |
| <echo message="Please look into log.txt, merlinsTwentyThreeRecreated.xml and signature.xml"/> |
| </target> |
| |
| <target name="createEnvelope" |
| depends="build.samples"> |
| <java classname="org.apache.xml.security.samples.signature.CreateEnvelopingSignature" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <!-- JSR 105 Samples --> |
| <target name="jsr105-samples" |
| depends="build.samples"> |
| <echo message="Generating a detached signature"/> |
| <java classname="javax.xml.crypto.dsig.samples.GenDetached" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| <sysproperty key="proxyHost" value="${proxy.host}"/> |
| <sysproperty key="proxyPort" value="${proxy.port}"/> |
| </java> |
| <echo message="Generating an enveloped signature"/> |
| <java classname="javax.xml.crypto.dsig.samples.GenEnveloped" |
| fork="yes"> |
| <arg value="${dir.src.samples}/javax/xml/crypto/dsig/samples/envelope.xml"/> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| <echo message="Generating an enveloping signature"/> |
| <java classname="javax.xml.crypto.dsig.samples.GenEnveloping" |
| fork="yes"> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| <echo message="Validating a signature"/> |
| <java classname="javax.xml.crypto.dsig.samples.Validate" |
| fork="yes"> |
| <arg value="${dir.src.samples}/javax/xml/crypto/dsig/samples/envelopedSignature.xml"/> |
| <classpath refid="id.classpath.samples"/> |
| </java> |
| </target> |
| |
| <!-- D I S T R I B U T I O N T A R G E T S --> |
| <!-- distribution targets --> |
| |
| <target name="build.dist" |
| depends="build.srcdist,build.bindist" /> |
| |
| <target name="build.srcdist" |
| description="Creates the source distribution" > |
| |
| <mkdir dir="${dir.build.srcdist}"/> |
| |
| <copy todir="${dir.build.srcdist}"> |
| <fileset dir="."> |
| <patternset refid="id.patternset.distFiles"/> |
| <patternset refid="id.patternset.srcFiles"/> |
| <patternset refid="id.patternset.sampleFiles"/> |
| |
| <include name="ant/**/*"/> |
| </fileset> |
| </copy> |
| |
| <mkdir description="create an empty libs dir" |
| dir="${dir.build.srcdist}/libs"/> |
| |
| <zip basedir="${dir.build.dist}/src" |
| zipfile="${dir.build}/${product.name}-src-${product_version}.zip"/> |
| </target> |
| |
| <target name="build.bindist" |
| depends="build.src,build.docs" |
| description="Creates the binary distribution"> |
| |
| <mkdir dir="${dir.build.bindist}"/> |
| |
| <copy todir="${dir.build.bindist}"> |
| <fileset dir="."> |
| <patternset refid="id.patternset.distFiles"/> |
| <patternset refid="id.patternset.srcFiles"/> |
| <patternset refid="id.patternset.sampleFiles"/> |
| |
| <include name="ant/**/*"/> |
| </fileset> |
| </copy> |
| |
| <mkdir dir="${dir.build.bindist}/libs"/> |
| |
| <copy file="${lib.xerces.1}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy file="${lib.xalan.1}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy file="${lib.xalan.2}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy file="${lib.xalan.3}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy file="${lib.logging}" |
| todir="${dir.build.bindist}/libs"/> |
| |
| <copy description="copy xmlsec JAR" |
| file="${jar.library}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy description="copy xmlsec sample JAR" |
| file="${jar.samples}" |
| todir="${dir.build.bindist}/libs"/> |
| <copy description="copy xmlsec test JAR" |
| file="${jar.tests}" |
| todir="${dir.build.bindist}/libs"/> |
| |
| <mkdir dir="${dir.build.bindist}/doc"/> |
| <mkdir dir="${dir.build.bindist}/doc/Java/api" /> |
| <copy todir="${dir.build.bindist}/doc/Java/api"> |
| <fileset dir="${dir.build.docs.html}/javadoc"/> |
| </copy> |
| |
| <zip basedir="${dir.build.dist}/bin" |
| zipfile="${dir.build}/${product.name}-bin-${product_version}.zip"/> |
| </target> |
| |
| |
| <!-- M I S C E L A N E O U S T A R G E T S --> |
| |
| <!-- documentation --> |
| <target name="build.docs"> |
| <mkdir dir="${dir.build.javadoc}"/> |
| <javadoc classpathref="id.classpath" |
| destdir="${dir.build.javadoc}"> |
| <packageset dir="${dir.src}"> |
| <include name="org/apache/xml/security/**"/> |
| <include name="javax/xml/crypto/**"/> |
| </packageset> |
| <group title="JSR 105 Packages" packages="javax.xml.crypto*"/> |
| <group title="XMLSec Packages" packages="org.apache.xml.security*"/> |
| </javadoc> |
| </target> |
| |
| <target name="clover.report.html" depends="with.clover"> |
| <clover-report> |
| <current outfile="${dir.build.coverage}" |
| title="Apache XML-Security coverage"> |
| <fileset dir="${dir.src}"> |
| <include name="**/*.java"/> |
| <exclude name="**/*Exception.java" /> |
| </fileset> |
| <format type="html"/> |
| </current> |
| </clover-report> |
| </target> |
| |
| <!-- jars --> |
| <target name="manifest"> |
| <tstamp/> |
| <mkdir dir="${dir.manifest}"/> |
| <copy file="${basedir}/LICENSE" tofile="${dir.manifest}/LICENSE.txt"/> |
| <copy file="${basedir}/NOTICE" tofile="${dir.manifest}/NOTICE.txt"/> |
| <manifest file="${jar.manifest}" mode="replace"> |
| <attribute name="Built-By" value="${user.name}"/> |
| <section name="${product.shortname}"> |
| <attribute name="Implementation-Title" |
| value="${product.Name}"/> |
| <attribute name="Implementation-Version" |
| value="${product.version} ${TODAY}"/> |
| <attribute name="Implementation-Vendor" |
| value="Apache Software Foundation"/> |
| </section> |
| </manifest> |
| </target> |
| |
| <target name="build.jar" |
| depends="manifest,build.src,build.test,build.samples"> |
| |
| <!-- Main Library --> |
| <jar basedir="${dir.build.bin}" |
| excludes="org/apache/xml/security/temp/**" |
| includes="org/apache/**, javax/xml/crypto/**" |
| destfile="${jar.library}" |
| manifest="${jar.manifest}"> |
| <metainf file="${dir.manifest}/*.txt"/> |
| </jar> |
| |
| <!-- Samples --> |
| <jar basedir="${dir.build.samples}" |
| excludes="org/apache/xml/security/temp/**" |
| includes="org/apache/**, javax/xml/crypto/**" |
| destfile="${jar.samples}" |
| manifest="${jar.manifest}"> |
| <metainf file="${dir.manifest}/*.txt"/> |
| </jar> |
| |
| <!-- Tests --> |
| <jar basedir="${dir.build.test}" |
| excludes="org/apache/xml/security/temp/**" |
| includes="org/apache/**, javax/xml/crypto/**" |
| destfile="${jar.tests}" |
| manifest="${jar.manifest}"> |
| <metainf file="${dir.manifest}/*.txt"/> |
| </jar> |
| </target> |
| |
| <target name="build.src.jar" |
| depends="manifest,build.src"> |
| |
| <jar basedir="${dir.build.bin}" |
| excludes="org/apache/xml/security/temp/**" |
| includes="**/LICENSE, **/NOTICE, org/apache/**, javax/xml/crypto/**, *.txt" |
| jarfile="${jar.library}" |
| manifest="${jar.manifest}"/> |
| </target> |
| |
| <!-- archive targets --> |
| <target name="build.arch" |
| depends="env.mk.dirs" > |
| </target > |
| |
| <!-- aliases --> |
| <target name="build.all" depends="env.mk.dirs,build.src,build.docs,build.test,build.samples,build.jar,build.arch" /> |
| |
| <target name="compile" depends="build.src" /> |
| <target name="docs" depends="build.docs" /> |
| <target name="javadoc" depends="build.docs" /> |
| <target name="jar" depends="build.jar" /> |
| <target name="dist" depends="build.dist" /> |
| <target name="clean" depends="env.rm.dirs,env.rm.files"/> |
| <target name="gump" depends="clean, docs, jar, test"/> |
| <target name="clover" depends="clean, with.clover, test, clover.report.html" /> |
| |
| <!-- maintenance targets --> |
| |
| <!-- help targets --> |
| <target depends="init" name="help" > |
| <echo message="synopsis: ant [target]" /> |
| <echo message="targets:" /> |
| <echo message="compile - builds xml-security source" /> |
| <echo message="docs - creates java documentation" /> |
| <echo message="jar - creates a jar file, containing the built source" /> |
| <echo message="dist - creates a distribution" /> |
| <echo message=" (see ant help.dist for more information)" /> |
| <echo message="clean - resets the build environment" /> |
| <echo message="test - performs a series of tests" /> |
| <echo message=" (see ant help.test for more information)" /> |
| <echo message="help - displays this help message (default)" /> |
| <echo message=""/> |
| <echo message="See also help.samples for help on building samples"/> |
| </target > |
| <target depends="init" name="help.dist" > |
| <echo message="dist:" /> |
| <echo message="this target will:" /> |
| <echo message="1. build the source files," /> |
| <echo message="2. create the appropriate java documentation," /> |
| <echo message="3. create distribution jars," /> |
| <echo message="4. copy the license, copies source and" /> |
| <echo message="5. creates distribution archives" /> |
| </target > |
| |
| <target depends="init" name="help.test" > |
| <echo message="test - runs all unit and interop tests" /> |
| <echo message="test_exc_c14n - runs the exclusive c14n tests" /> |
| <echo message="test_xenc - does all encryption related tests" /> |
| <echo message="clover - generates clover coverage reports" /> |
| </target > |
| |
| <target depends="init" name="help.samples" > |
| <echo message=""/> |
| <echo message="------------- Signature Samples ----------------"/> |
| <echo message=""/> |
| <echo message="sign - runs CreateSignature sample"/> |
| <echo message="verify - runs signature verification sample"/> |
| <echo message="signAndVerify - runs sign and then verify"/> |
| <echo message="axis-sign - runs axis signing sample"/> |
| <echo message="axis-verify - runs axis verification sample"/> |
| <echo message="AxisSignAndVerify - runs axis sign and verify"/> |
| <echo message="createEnvelope - runs enveloping signature sample"/> |
| <echo message="mega-sample - runs all big signature samples"/> |
| <echo message=""/> |
| <echo message="------------- Encryption Samples ----------------"/> |
| <echo message=""/> |
| <echo message="encrypt - run encryption sample" /> |
| <echo message="decrypt - run decryption sample" /> |
| <echo message="encryptAndDecrypt - run encryption sample" /> |
| </target> |
| |
| </project> |