| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You 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. |
| --> |
| <!-- You may freely edit this file. See harness/README in the NetBeans platform --> |
| <!-- for some information on what you could do (e.g. targets to override). --> |
| <!-- If you delete this file and reopen the project it will be recreated. --> |
| <project name="cmdline" basedir="."> |
| <description>Builds the module suite cmdline.</description> |
| |
| <condition property="nbplatform.default.netbeans.dest.dir" value="${NETBEANS_PLATFORM}"> |
| <isset property="NETBEANS_PLATFORM" /> |
| </condition> |
| |
| <condition property="nbplatform.default.harness.dir" value="${NETBEANS_PLATFORM}/harness"> |
| <isset property="NETBEANS_PLATFORM" /> |
| </condition> |
| |
| <import file="nbproject/build-impl.xml"/> |
| <!-- <import file="../suite-common.xml"/>--> |
| |
| <!-- copied (and adjusted) from suite.xml: --> |
| <target name="test" depends="build" description="Runs tests for all modules in the suite."> |
| <sortsuitemodules unsortedmodules="${modules}" sortedmodulesproperty="modules.test.sorted" sorttests="true"/> |
| <subant target="test" buildpath="${modules.test.sorted}" inheritrefs="false" inheritall="false"> |
| <property name="cluster.path.evaluated" value="${cluster.path.evaluated}"/> <!-- Just for speed of pre-7.0 projects --> |
| <property name="harness.taskdefs.done" value="${harness.taskdefs.done}"/> <!-- optimization --> |
| </subant> |
| </target> |
| |
| <target name="build-source-dist"> |
| <mkdir dir="build" /> |
| <zip file="build/apache-netbeans-jackpot-${version}.zip"> |
| <zipfileset dir="." excludes="**/build/" prefix="jackpot"/> |
| <zipfileset dir=".." includes="LICENSE" fullpath="jackpot/LICENSE"/> |
| <zipfileset dir=".." includes="NOTICE" fullpath="jackpot/NOTICE"/> |
| </zip> |
| </target> |
| |
| <target name="build-and-test"> |
| <property name="version" value="13.0" /> |
| <condition property="jackpot.root" value="${basedir}" else="${basedir}/.."> |
| <available file="${basedir}/LICENSE" /> |
| </condition> |
| <ant dir="${basedir}" inheritAll="false" inheritRefs="false"> |
| <property name="nbplatform.default.harness.dir" value="${NETBEANS_PLATFORM}/harness" /> |
| <property name="nbplatform.default.netbeans.dest.dir" value="${NETBEANS_PLATFORM}" /> |
| <property name="jackpot.root" location="${jackpot.root}" /> |
| <target name="clean" /> |
| <target name="build" /> |
| <target name="test" /> |
| </ant> |
| <ant dir="${basedir}" inheritAll="false" inheritRefs="false"> |
| <property name="nbplatform.default.harness.dir" value="${NETBEANS_PLATFORM}/harness" /> |
| <property name="nbplatform.default.netbeans.dest.dir" value="${NETBEANS_PLATFORM}" /> |
| <property name="test.nbjdk.home" value="${JDK11}" /> |
| <property name="jackpot.root" location="${jackpot.root}" /> |
| <target name="test" /> |
| </ant> |
| <ant dir="${basedir}" inheritAll="false" inheritRefs="false"> |
| <property name="nbplatform.default.harness.dir" value="${NETBEANS_PLATFORM}/harness" /> |
| <property name="nbplatform.default.netbeans.dest.dir" value="${NETBEANS_PLATFORM}" /> |
| <property name="test.nbjdk.home" value="${JDK17}" /> |
| <property name="jackpot.root" location="${jackpot.root}" /> |
| <target name="test" /> |
| </ant> |
| <ant dir="${basedir}/tool" target="create-standalone-tool" inheritAll="false" inheritRefs="false"> |
| <property name="nbplatform.default.harness.dir" value="${NETBEANS_PLATFORM}/harness" /> |
| <property name="nbplatform.default.netbeans.dest.dir" value="${NETBEANS_PLATFORM}" /> |
| <property name="continue.after.failing.tests" value="false" /> |
| <property name="jackpot.root" location="${jackpot.root}" /> |
| </ant> |
| <property environment="env"/> |
| <exec executable="build/test/scripted/run" dir="tool" failonerror="true"> |
| </exec> |
| <exec executable="build/test/scripted/run" dir="tool" failonerror="true"> |
| <env key="JAVA_HOME" path="${JDK11}" /> |
| <env key="PATH" path="${JDK11}/bin:${env.PATH}" /> |
| </exec> |
| <exec executable="build/test/scripted/run" dir="tool" failonerror="true"> |
| <env key="JAVA_HOME" path="${JDK17}" /> |
| <env key="PATH" path="${JDK17}/bin:${env.PATH}" /> |
| </exec> |
| <echo>Installing tool to the local maven repository:</echo> |
| <exec dir="." executable="mvn" failonerror="true"> |
| <arg line="install:install-file -Dfile=tool/build/jackpot/jackpot.jar -DgroupId=org.apache.netbeans.modules.jackpot30 -DartifactId=tool -Dversion=${version} -Dpackaging=jar -DpomFile=tool/scripts/pom.xml" /> |
| </exec> |
| <echo>Building maven plugin:</echo> |
| <exec dir="maven" executable="mvn" failonerror="true"> |
| <arg line="-Dversion=${version} install -DskipTests" /> |
| </exec> |
| <echo>Run plugin tests:</echo> |
| <exec dir="maven" executable="mvn" failonerror="true"> |
| <arg line="-Dmaven.executable=mvn -Djackpot.plugin.version=${version} test" /> |
| </exec> |
| <property name="build.maven.repo" location="build/.m2" /> |
| <mkdir dir="${build.maven.repo}" /> |
| <echo>Installing tool to the target maven repository:</echo> |
| <exec dir="maven" executable="mvn" failonerror="true"> |
| <arg line="deploy:deploy-file -Dfile=${basedir}/tool/build/jackpot/jackpot.jar -Djavadoc=${basedir}/tool/build/jackpot-javadoc.zip -Dsources=${basedir}/tool/build/jackpot-sources.zip -DgroupId=org.apache.netbeans.modules.jackpot30 -DartifactId=tool -Dversion=${version} -Dpackaging=jar -DgeneratePom=true -DaltDeploymentRepository=temp::default::file://${build.maven.repo} -Durl=file://${build.maven.repo}" /> |
| </exec> |
| <echo>Installing plugin to the target maven repository:</echo> |
| <exec dir="maven" executable="mvn" failonerror="true"> |
| <arg line="-DskipTests -DaltDeploymentRepository=temp::default::file://${build.maven.repo} deploy" /> |
| </exec> |
| <zip destfile="build/.m2.zip"> |
| <zipfileset dir="${build.maven.repo}/" /> |
| <zipfileset dir="tool/scripts" includes="LICENSE-bin-tool.txt" fullpath="LICENSE" /> |
| <zipfileset dir="tool/scripts" includes="NOTICE-bin-tool.txt" fullpath="NOTICE" /> |
| </zip> |
| </target> |
| |
| <target name="rat"> |
| <mkdir dir="build" /> |
| <get src="https://search.maven.org/remotecontent?filepath=org/apache/rat/apache-rat/0.12/apache-rat-0.12.jar" |
| dest="build/apache-rat-0.12.jar" |
| skipexisting="true" /> |
| |
| <taskdef uri="antlib:org.apache.rat.anttasks" resource="org/apache/rat/anttasks/antlib.xml"> |
| <classpath> |
| <pathelement location="build/apache-rat-0.12.jar"/> |
| </classpath> |
| </taskdef> |
| |
| <fileset dir="${basedir}" id="rat.files"> |
| <excludesfile name="rat-exclusions.txt" /> |
| </fileset> |
| |
| <rat:report xmlns:rat="antlib:org.apache.rat.anttasks" reportfile="build/rat-report.txt"> |
| <rat:fullTextMatcher licenseFamilyCategory="AL" licenseFamilyName="Apache License 2.0 Short header"> |
| Licensed to the Apache Software Foundation (ASF) under one or more contributor |
| license agreements; and to You under the Apache License, Version 2.0. |
| </rat:fullTextMatcher> |
| <rat:approvedLicense familyName="Apache License 2.0 Short header"/> |
| |
| <resources refid="rat.files" /> |
| </rat:report> |
| |
| <resourcecount property="rat.content.elements"> |
| <fileset file="build/rat-report.txt"> |
| <and> |
| <contains text="Binaries: 0" /> |
| <contains text="Archives: 0" /> |
| <contains text="0 Unknown Licenses" /> |
| </and> |
| </fileset> |
| </resourcecount> |
| |
| <condition property="rat.failed"> |
| <not> |
| <equals arg1="${rat.content.elements}" arg2="1" /> |
| </not> |
| </condition> |
| |
| <fail if="${rat.failed}">RAT failed.</fail> |
| </target> |
| </project> |