Newer
Older
<replaceregexp byline="true" file="reports/streaming/cobertura/coverage.xml"
match='filename="net' replace='filename="apps/streaming/java/src/net'/>
<replaceregexp byline="true" file="reports/streaming/cobertura/coverage.xml"
match="<source>./src" replace="<source>apps/streaming/java/src"/>
</target>
<!-- end unit tests -->
<target name="testscripts" >
<exec executable="tests/scripts/checkcerts.sh" failonerror="true" />
<exec executable="tests/scripts/checkpo.sh" failonerror="true" />
<exec executable="tests/scripts/checkutf8.sh" failonerror="true" />
<exec executable="tests/scripts/checkxml.sh" failonerror="true" />
<exec executable="tests/scripts/checkscripts.sh" failonerror="true" />
<target name="testscripts-net" >
<exec executable="tests/scripts/checkremotecerts.sh" failonerror="true" />
</target>
<target name="testscripts-all" depends="testscripts,testscripts-net" />
<target name="bench" depends="jbigi" >
<ant dir="core/java/" target="bench.jar" />
<!-- <target name="syndie" >
<ant dir="apps/syndie/java/" target="standalone" />
<copy file="apps/syndie/java/syndie-standalone.zip" todir="." />
<target name="i2psnark" depends="buildStreaming, buildJetty, buildSystray" >
<ant dir="apps/i2psnark/java" target="standalone" />
<copy file="apps/i2psnark/java/i2psnark-standalone.zip" todir="." />
</target>
<target name="slackpkg">
<ant dir="Slackware/i2p/" target="slackpkg" />
</target>

str4d
committed
<target name="justBOB" depends="builddepSmall, jbigi">
<ant dir="apps/BOB/" target="onejar" />
<copy file="apps/BOB/dist/BOB-one.jar" todir="." />
</target>
<property name="sloccount.report.file" value="sloccount.sc" />
<echo message="Generating sloccount report (this will take awhile)" />
<exec executable="sloccount" failonerror="true">
<arg value="--details"/>
<arg value="--wide"/>

kytv
committed
<arg value="${basedir}"/>
<redirector output="${sloccount.report.file}">
<outputfilterchain>
<linecontainsregexp negate="true">
<regexp pattern="(Warning: |lib/launch4j|_MTN|reports|pkg-temp|licenses|i2p\.fba|gmp-|WEB-INF)" />

kytv
committed
<linecontains negate="true">
<contains value="${sloccount.report.file}" />
</linecontains>
</outputfilterchain>
</redirector>
</exec>
<echo message="sloccount report saved to the file "${sloccount.report.file}"" />
<target name="findbugs" depends="build2, buildUtilityJar">
<echo message="Starting findbugs, this will take a while..." />
<!-- ref: https://github.com/spotbugs/spotbugs/issues/148 -->
<echo message="If this doesn't work with Java 9+. try Java 8" />
<arg value="findbugs"/>
<arg value="-textui"/>
<arg value="-projectName"/>
<arg value="i2p"/>
<arg value="-sortByClass"/>
<arg value="-xml"/>
<arg value="-output"/>
<arg value="build/commons-el.jar:build/jasper-runtime.jar:build/javax.servlet.jar:build/org.mortbay.jetty.jar:build/jrobin.jar:installer/lib/wrapper/all/wrapper.jar:apps/susidns/src/lib/standard.jar:apps/susidns/src/lib/jstl.jar"/>
<arg value="apps/BOB/src/:apps/addressbook/java/src/:apps/i2psnark/java/src/:apps/i2ptunnel/java/src/:apps/ministreaming/java/src/:apps/routerconsole/java/src/:apps/sam/java/src/:apps/streaming/java/src/:apps/susidns/src/java/src/:apps/susimail/src/src/:apps/systray/java/src/:core/java/src/:router/java/src/:installer/java/src"/>
<!-- start of the files to be analyzed -->
<arg value="build/BOB.jar"/>
<arg value="build/i2p.jar"/>
<arg value="build/i2psnark.jar"/>
<arg value="build/i2psnark.war"/>
<arg value="build/i2ptunnel.jar"/>
<arg value="build/i2ptunnel.war"/>
<arg value="build/imagegen.war"/>
<arg value="build/mstreaming.jar"/>
<arg value="build/router.jar/"/>
<arg value="build/desktopgui.jar"/>
<arg value="build/routerconsole.jar"/>
<arg value="build/routerconsole.war"/>
<arg value="build/sam.jar"/>
<arg value="build/streaming.jar"/>
<arg value="build/susidns.war"/>
<arg value="build/susimail.war"/>
<arg value="build/systray.jar"/>
<arg value="build/utility.jar"/>
<echo message="Findbugs output stored in i2p.fba" />
<echo message="Now run: findbugs i2p.fba" />
<!-- this is the same dependency as pkg, but with updater200 in the middle,
since preppkg puts too much stuff in pkg-temp -->
<!--
<target name="release" depends="distclean, updaterWithJettyFixesAndJbigi , updater200WithJettyFixes, preppkg, installer, getReleaseNumber" >
<target name="release" depends="verifyReleaseBuildNumbers, -pre-release, distclean, testscripts, updaterWithJettyAndJbigiRepack, updater200WithJettyAndJbigi, delete-j6-update, installer-nowindows, delete-nonwindows, installer-windows">
<target name="release" depends="verifyReleaseBuildNumbers, -pre-release, distclean, testscripts, updaterWithJettyAndGeoIPRepack, updater200WithJettyAndGeoIP, delete-j6-update, installer-nowindows, delete-nonwindows, installer-windows">
-->
<target name="release" depends="verifyReleaseBuildNumbers, -pre-release, distclean, testscripts, updaterWithJettyRepack, updater200WithJetty, delete-j6-update, installer-nowindows, delete-nonwindows, installer-windows">
<copy file="i2pupdate.zip" tofile="i2pupdate_${release.number}.zip" />
<copy file="i2pinstall_${full.version}.jar" tofile="i2pinstall_${release.number}.jar" />
<copy file="i2pinstall_${full.version}_windows.exe" tofile="i2pinstall_${release.number}_windows.exe" />
<!-- remove these, we don't build them anymore -->
<delete file="i2pupdate.sud" />
<delete file="i2pupdate.su2" />
<!-- make this a lot easier by putting release.privkey.su3=/path/to/su3keystore.ks in override.properties -->
<su3sign infile="i2pupdate200.zip" sigtype="ROUTER" outfile="i2pupdate.su3" su3.ver="${release.number}" />
<!-- this will use the monotonerc file in the current workspace -->
<echo message="Checking out fresh copy into ../i2p-${release.number} for tarballing:" />
<!-- w: is the revision of the current workspace -->
<arg value="-r" />
<arg value="w:" />
<arg value="../i2p-${release.number}/" />
</exec>
<arg value="cjf" />
<arg value="i2psource_${release.number}.tar.bz2" />
<arg value="-C" />
<arg value=".." />
<arg value="--exclude" />
<arg value="i2p-${release.number}/" />
</exec>
<echo message="Sign the files:" />
<input message="Enter GPG key ID (e.g. 0x12345678) for signing:" addproperty="release.gpg.keyid" />
<fail message="You must enter a key ID." >
<condition>
<equals arg1="${release.gpg.keyid}" arg2=""/>
</condition>
</fail>
<!-- the gpgsign macro sets the permission of signed files and the sigs themselves to 444 -->
<gpgsign file="i2pinstall_${release.number}_windows.exe" />
<gpgsign file="i2pinstall_${release.number}.jar" />
<gpgsign file="i2psource_${release.number}.tar.bz2" />
<gpgsign file="i2pupdate_${release.number}.zip" />
<chmod perm="444" type="file">
<fileset dir="${basedir}">
<include name="i2pupdate.su3" />
</fileset>
</chmod>
<arg value="i2pinstall_${release.number}_windows.exe" />
<arg value="i2pinstall_${release.number}.jar" />
<arg value="i2psource_${release.number}.tar.bz2" />
<arg value="i2pupdate_${release.number}.zip" />
<arg value="i2pinstall_${release.number}_windows.exe.sig" />
<arg value="i2pinstall_${release.number}.jar.sig" />
<arg value="i2psource_${release.number}.tar.bz2.sig" />
<arg value="i2pupdate_${release.number}.zip.sig" />
</exec>
<echo message="SHA256 sums:" />
<sha256sum file="i2pinstall_${release.number}_windows.exe" />
<sha256sum file="i2pinstall_${release.number}.jar" />
<sha256sum file="i2psource_${release.number}.tar.bz2" />
<sha256sum file="i2pupdate_${release.number}.zip" />
<sha256sum file="i2pupdate.su3" />
<mktorrent file="i2pupdate-${release.number}.su3" />
<echo message="Don't forget to mtn tag w: i2p-${release.number}" />
<echo message="... and mtn cert t:i2p-${release.number} branch i2p.i2p.release" />
<target name="mavenCentral.deps" depends="buildRouter, buildStreaming">
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
<ant dir="core/java/">
<target name="javadocJar" />
<target name="sourcesJar" />
</ant>
<ant dir="router/java/">
<target name="javadocJar" />
<target name="sourcesJar" />
</ant>
<ant dir="apps/ministreaming/java/">
<target name="javadocJar" />
<target name="sourcesJar" />
</ant>
<ant dir="apps/streaming/java/">
<target name="javadocJar" />
<target name="sourcesJar" />
</ant>
<ant dir="apps/jetty/">
<target name="servletJar" />
<target name="servletJavadocJar" />
<target name="servletSourcesJar" />
</ant>
</target>
<target name="mavenCentral" depends="verifyReleaseBuildNumbers, -pre-release, distclean, testscripts, mavenCentral.deps">
<mkdir dir="./pkg-mavencentral" />
<!-- Libraries -->
<copy file="build/i2p.jar" tofile="pkg-mavencentral/i2p-${release.number}.jar" />
<copy file="build/router.jar" tofile="pkg-mavencentral/router-${release.number}.jar" />
<copy file="build/mstreaming.jar" tofile="pkg-mavencentral/mstreaming-${release.number}.jar" />
<copy file="build/streaming.jar" tofile="pkg-mavencentral/streaming-${release.number}.jar" />
<copy file="apps/jetty/build/servlet-i2p-${release.number}.jar" todir="pkg-mavencentral/" />
<!-- JavaDocs -->
<copy file="core/java/build/i2p-${release.number}-javadoc.jar" todir="pkg-mavencentral/" />
<copy file="router/java/build/router-${release.number}-javadoc.jar" todir="pkg-mavencentral/" />
<copy file="apps/ministreaming/java/build/mstreaming-${release.number}-javadoc.jar" todir="pkg-mavencentral/" />
<copy file="apps/streaming/java/build/streaming-${release.number}-javadoc.jar" todir="pkg-mavencentral/" />
<copy file="apps/jetty/build/servlet-i2p-${release.number}-javadoc.jar" todir="pkg-mavencentral/" />
<!-- Sources -->
<copy file="core/java/build/i2p-${release.number}-sources.jar" todir="pkg-mavencentral/" />
<copy file="router/java/build/router-${release.number}-sources.jar" todir="pkg-mavencentral/" />
<copy file="apps/ministreaming/java/build/mstreaming-${release.number}-sources.jar" todir="pkg-mavencentral/" />
<copy file="apps/streaming/java/build/streaming-${release.number}-sources.jar" todir="pkg-mavencentral/" />
<copy file="apps/jetty/build/servlet-i2p-${release.number}-sources.jar" todir="pkg-mavencentral/" />
<!-- POMs -->
<artifact:pom id="i2ppom" groupId="net.i2p" artifactId="i2p" version="${release.number}"
name="I2P Core"
description="The core I2P APIs"
url="https://geti2p.net/">
<license name="Public Domain" url="http://en.wikipedia.org/wiki/Public_domain" />
<developer name="zzz" organization="I2P" organizationUrl="https://geti2p.net/" />
<developer name="str4d" email="str4d@i2pmail.org" organization="I2P" organizationUrl="https://geti2p.net/"/>
<scm connection="scm:git:git@github.com:i2p/i2p.i2p.git"
developerConnection="scm:git:git@github.com:i2p/i2p.i2p.git"
url="git@github.com:i2p/i2p.i2p.git" />
</artifact:pom>
<artifact:pom id="routerpom" groupId="net.i2p" artifactId="router" version="${release.number}"
name="I2P Router"
description="The I2P router"
url="https://geti2p.net/">
<license name="Public Domain" url="http://en.wikipedia.org/wiki/Public_domain" />
<developer name="zzz" organization="I2P" organizationUrl="https://geti2p.net/" />
<developer name="str4d" email="str4d@i2pmail.org" organization="I2P" organizationUrl="https://geti2p.net/"/>
<scm connection="scm:git:git@github.com:i2p/i2p.i2p.git"
developerConnection="scm:git:git@github.com:i2p/i2p.i2p.git"
url="git@github.com:i2p/i2p.i2p.git" />
<dependency groupId="net.i2p" artifactId="i2p" version="${release.number}" />
</artifact:pom>
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
<artifact:pom id="mstreamingpom" groupId="net.i2p.client" artifactId="mstreaming" version="${release.number}"
name="I2P Ministreaming"
description="API, interfaces, and factory for a TCP-like set of sockets for communicating over I2P."
url="https://geti2p.net/en/docs/api/streaming">
<license name="Public Domain" url="http://en.wikipedia.org/wiki/Public_domain" />
<developer name="zzz" organization="I2P" organizationUrl="https://geti2p.net/" />
<developer name="str4d" email="str4d@i2pmail.org" organization="I2P" organizationUrl="https://geti2p.net/" />
<scm connection="scm:git:git@github.com:i2p/i2p.i2p.git"
developerConnection="scm:git:git@github.com:i2p/i2p.i2p.git"
url="git@github.com:i2p/i2p.i2p.git" />
<dependency groupId="net.i2p" artifactId="i2p" version="${release.number}" />
</artifact:pom>
<artifact:pom id="streamingpom" groupId="net.i2p.client" artifactId="streaming" version="${release.number}"
name="I2P Streaming"
description="Implementation of a TCP-like set of sockets for communicating over I2P."
url="https://geti2p.net/en/docs/api/streaming">
<license name="Public Domain" url="http://en.wikipedia.org/wiki/Public_domain" />
<developer name="zzz" organization="I2P" organizationUrl="https://geti2p.net/" />
<developer name="str4d" email="str4d@i2pmail.org" organization="I2P" organizationUrl="https://geti2p.net/" />
<scm connection="scm:git:git@github.com:i2p/i2p.i2p.git"
developerConnection="scm:git:git@github.com:i2p/i2p.i2p.git"
url="git@github.com:i2p/i2p.i2p.git" />
<dependency groupId="net.i2p" artifactId="i2p" version="${release.number}" />
<dependency groupId="net.i2p.client" artifactId="mstreaming" version="${release.number}" />
</artifact:pom>
<artifact:pom id="servletpom" groupId="net.i2p" artifactId="servlet-i2p" version="${release.number}"
name="I2P Servlet classes"
description="Various servlet classes provided to plugins by Java I2P."
url="https://geti2p.net/">
<license name="Public Domain" url="http://en.wikipedia.org/wiki/Public_domain" />
<developer name="zzz" organization="I2P" organizationUrl="https://geti2p.net/" />
<developer name="str4d" email="str4d@i2pmail.org" organization="I2P" organizationUrl="https://geti2p.net/" />
<scm connection="scm:git:git@github.com:i2p/i2p.i2p.git"
developerConnection="scm:git:git@github.com:i2p/i2p.i2p.git"
url="git@github.com:i2p/i2p.i2p.git" />
<dependency groupId="net.i2p" artifactId="i2p" version="${release.number}" />
<dependency groupId="org.apache.tomcat" artifactId="tomcat-servlet-api" version="8.0.33" />
</artifact:pom>
<artifact:writepom pomRefId="i2ppom" file="pkg-mavencentral/i2p-${release.number}.pom"/>
<artifact:writepom pomRefId="routerpom" file="pkg-mavencentral/router-${release.number}.pom"/>
<artifact:writepom pomRefId="mstreamingpom" file="pkg-mavencentral/mstreaming-${release.number}.pom" />
<artifact:writepom pomRefId="streamingpom" file="pkg-mavencentral/streaming-${release.number}.pom" />
<artifact:writepom pomRefId="servletpom" file="pkg-mavencentral/servlet-i2p-${release.number}.pom" />
<!-- Signatures -->
<echo message="Sign the files:" />
<input message="Enter GPG key ID (e.g. 0x12345678) for signing:" addproperty="release.gpg.keyid" />
<fail message="You must enter a key ID." >
<condition>
<equals arg1="${release.gpg.keyid}" arg2=""/>
</condition>
</fail>
<!-- the gpgsign macro sets the permission of signed files and the sigs themselves to 444 -->
<gpgsignasc file="pkg-mavencentral/i2p-${release.number}.jar" />
<gpgsignasc file="pkg-mavencentral/i2p-${release.number}.pom" />
<gpgsignasc file="pkg-mavencentral/i2p-${release.number}-javadoc.jar" />
<gpgsignasc file="pkg-mavencentral/i2p-${release.number}-sources.jar" />
<gpgsignasc file="pkg-mavencentral/router-${release.number}.jar" />
<gpgsignasc file="pkg-mavencentral/router-${release.number}.pom" />
<gpgsignasc file="pkg-mavencentral/router-${release.number}-javadoc.jar" />
<gpgsignasc file="pkg-mavencentral/router-${release.number}-sources.jar" />
<gpgsignasc file="pkg-mavencentral/mstreaming-${release.number}.jar" />
<gpgsignasc file="pkg-mavencentral/mstreaming-${release.number}.pom" />
<gpgsignasc file="pkg-mavencentral/mstreaming-${release.number}-javadoc.jar" />
<gpgsignasc file="pkg-mavencentral/mstreaming-${release.number}-sources.jar" />
<gpgsignasc file="pkg-mavencentral/streaming-${release.number}.jar" />
<gpgsignasc file="pkg-mavencentral/streaming-${release.number}.pom" />
<gpgsignasc file="pkg-mavencentral/streaming-${release.number}-javadoc.jar" />
<gpgsignasc file="pkg-mavencentral/streaming-${release.number}-sources.jar" />
<gpgsignasc file="pkg-mavencentral/servlet-i2p-${release.number}.jar" />
<gpgsignasc file="pkg-mavencentral/servlet-i2p-${release.number}.pom" />
<gpgsignasc file="pkg-mavencentral/servlet-i2p-${release.number}-javadoc.jar" />
<gpgsignasc file="pkg-mavencentral/servlet-i2p-${release.number}-sources.jar" />
<!-- Bundle -->
<jar destfile="mavencentral-i2p.jar">
<fileset dir="./pkg-mavencentral">
<include name="i2p-*" />
</fileset>
</jar>
<jar destfile="mavencentral-router.jar">
<fileset dir="./pkg-mavencentral">
<include name="router-*" />
</fileset>
</jar>
<jar destfile="mavencentral-mstreaming.jar">
<fileset dir="./pkg-mavencentral">
<include name="mstreaming-*" />
</fileset>
</jar>
<jar destfile="mavencentral-streaming.jar">
<fileset dir="./pkg-mavencentral">
<include name="streaming-*" />
</fileset>
</jar>
<jar destfile="mavencentral-servlet-i2p.jar">
<fileset dir="./pkg-mavencentral">
<include name="servlet-i2p-*" />
</fileset>
</jar>
<echo message="Now upload mavencentral-*.jar to Maven Central." />
</target>
<target name="debian" depends="debian-clean, debchange, debian-binary" />
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
<target name="getExtendedVersion" depends="buildProperties, trimMtnRev">
<property name="MtnShortHash" value="unknown" />
<condition property="Extended.Version" value="${full.version}-${MtnShortHash}">
<not>
<or>
<equals arg1="${MtnShortHash}" arg2="" />
<equals arg1="${MtnShortHash}" arg2="unknown" />
</or>
</not>
</condition>
<!-- if not set above we'll set it here -->
<property name="Extended.Version" value="${full.version}" />
</target>
<target name="debchange" depends="getExtendedVersion" unless="noAutoDebchange">
<echo message= "Debian version is ${Extended.Version}-1" />
<exec executable="dch" failonerror="true">
<arg value="-b" />
<arg value="--check-dirname-level" />
<arg value="0" />
<arg value="-v" />
<arg value="${Extended.Version}-1" />
<arg value="Unofficial Debian package built using "ant debian"" />
</exec>
<exec executable="fakeroot" failonerror="true">
<arg value="debian/rules" />
<arg value="patch" />
<arg value="binary" />
<arg value="clean" />
<delete dir=".pc" />
<fileset dir=".." includes="libjbigi*${release.number}*.deb i2p*${release.number}*.deb" />
</move>
<echo message="" />
<echo message="====================" />
<echo message="Packages have been built and moved to ${basedir}" />
<echo message="====================" />
<arg value="debian/rules" />
<arg value="clean" />
<delete dir="./.pc" />
<!-- stretch+, zesty+ -->
<target name="debian-tarball" depends="getExtendedVersion, failIfNoMtn">
<!-- this will use the monotonerc file in the current workspace -->
<property name="debian.tarball.name" value="i2p_${Extended.Version}.orig.tar.bz2" />
<echo message="Checking out fresh copy into ../i2p-${Extended.Version} for tarballing:" />
<delete dir="../i2p-${Extended.Version}" />
<exec executable="mtn" failonerror="true">
<arg value="co" />
<!-- w: is the revision of the current workspace -->
<arg value="-r" />
<arg value="w:" />
<arg value="../i2p-${Extended.Version}" />
</exec>
<delete includeemptydirs="true" quiet="false" failonerror="false">
<fileset dir="../i2p-${Extended.Version}/debian-alt/" />
<fileset dir="../i2p-${Extended.Version}/installer/" includes="*.xml" />
<fileset dir="../i2p-${Extended.Version}/installer/c/" />
<fileset dir="../i2p-${Extended.Version}/installer/doc/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources" includes="checklist.md deletelist.txt install_* geoipv6-extras.csv makegeoip* po4a.config uninstall_* *.bat net.i2p.router.plist.template" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/Start I2P Router.app/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/portable/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/small/" />
<fileset dir="../i2p-${Extended.Version}/Slackware" />
<fileset dir="../i2p-${Extended.Version}/_MTN" />
<fileset dir="../i2p-${Extended.Version}/.idea" />
<fileset dir="../i2p-${Extended.Version}/.tx" />
<file name="../i2p-${Extended.Version}/.mtn-ignore" />
<fileset dir="../i2p-${Extended.Version}/" includes="Docker*" />
<file name="../i2p-${Extended.Version}/Makefile.gcj" />
<fileset dir="../i2p-${Extended.Version}/docs" />
<fileset dir="../i2p-${Extended.Version}/launchers" />
<file name="../i2p-${Extended.Version}/.travis.yml" />
<file name="../i2p-${Extended.Version}/.gitignore" />
<!-- gradle files -->
<fileset dir="../i2p-${Extended.Version}/" includes="**/build.gradle" />
<fileset dir="../i2p-${Extended.Version}/gradle" />
<file name="../i2p-${Extended.Version}/gradlew" />
<file name="../i2p-${Extended.Version}/gradlew.bat" />
<file name="../i2p-${Extended.Version}/gradle.properties" />
<file name="../i2p-${Extended.Version}/settings.gradle" />
<!-- gettext-base -->
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/gettext" />
<!-- libhttpclient-java and libhttpcore-java -->
<fileset dir="../i2p-${Extended.Version}/core/java/src/org/apache/http" />
<file name="../i2p-${Extended.Version}/installer/resources/geoip.txt" />
<file name="../i2p-${Extended.Version}/installer/resources/geoipv6.dat.gz" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/jetty-distribution-${jetty.ver}" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/apache-tomcat-${tomcat.ver}" />
<!-- libjstl1.1-java or glassfish-javaee or libtaglibs-standard -->
<!-- libjakarta-taglibs-standard-java or glassfish-javaee or libtaglibs-standard -->
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/standard.jar" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/icons/flags" />
</delete>
<tar longfile="gnu" destfile="../${debian.tarball.name}" compression="bzip2">
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${Extended.Version}">
<include name="**/**" />
<exclude name="debian/**"/>
</tarfileset>
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${Extended.Version}" filemode="755">
<exclude name="debian/**" />
<include name="**/*.sh" />
<!-- same as debian-release-tarball but with bundled jetty
- We add a 'p' to the release name and tarball since the source package is different;
- Launchpad does not allow different source packages with the same name.
-->
<target name="precise-release-tarball" depends="getExtendedVersion, failIfNoMtn">
<property name="debian.tarball.name" value="i2p_${release.number}p.orig.tar.bz2" />
<echo message="Checking out fresh copy into ../i2p-${Extended.Version} for tarballing:" />
<delete dir="../i2p-${Extended.Version}" />
<exec executable="mtn" failonerror="true">
<arg value="co" />
<!-- w: is the revision of the current workspace -->
<arg value="-r" />
<arg value="w:" />
<arg value="../i2p-${Extended.Version}" />
</exec>
<delete includeemptydirs="true" quiet="false" failonerror="false">
<fileset dir="../i2p-${Extended.Version}/debian-alt/" />
<fileset dir="../i2p-${Extended.Version}/installer/" includes="*.xml" />
<fileset dir="../i2p-${Extended.Version}/installer/c/" />
<fileset dir="../i2p-${Extended.Version}/installer/doc/" />
<fileset dir="../i2p-${Extended.Version}/installer/lib/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources" includes="checklist.md deletelist.txt install_* geoipv6-extras.csv makegeoip* po4a.config uninstall_* *.bat net.i2p.router.plist.template" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/Start I2P Router.app/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/portable/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/small/" />
<fileset dir="../i2p-${Extended.Version}/Slackware" />
<fileset dir="../i2p-${Extended.Version}/_MTN" />
<fileset dir="../i2p-${Extended.Version}/.idea" />
<fileset dir="../i2p-${Extended.Version}/.tx" />
<file name="../i2p-${Extended.Version}/.mtn-ignore" />
<fileset dir="../i2p-${Extended.Version}/" includes="Docker*" />
<file name="../i2p-${Extended.Version}/Makefile.gcj" />
<fileset dir="../i2p-${Extended.Version}/docs" />
<fileset dir="../i2p-${Extended.Version}/launchers" />
<file name="../i2p-${Extended.Version}/.travis.yml" />
<file name="../i2p-${Extended.Version}/.gitignore" />
<!-- gradle files -->
<fileset dir="../i2p-${Extended.Version}/" includes="**/build.gradle" />
<fileset dir="../i2p-${Extended.Version}/gradle" />
<file name="../i2p-${Extended.Version}/gradlew" />
<file name="../i2p-${Extended.Version}/gradlew.bat" />
<file name="../i2p-${Extended.Version}/gradle.properties" />
<file name="../i2p-${Extended.Version}/settings.gradle" />
<!-- gettext-base -->
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/gettext" />
<!-- libgetopt-java -->
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/getopt" />
<!-- libhttpclient-java and libhttpcore-java -->
<!--
<fileset dir="../i2p-${Extended.Version}/core/java/src/org/apache/http" />
-->
<!-- geoip-database -->
<file name="../i2p-${Extended.Version}/installer/resources/geoip.txt" />
<file name="../i2p-${Extended.Version}/installer/resources/geoipv6.dat.gz" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/jetty-distribution-${jetty.ver}" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/apache-tomcat-${tomcat.ver}" />
-->
<!-- libjstl1.1-java or glassfish-javaee -->
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/jstl.jar" />
<!-- libjakarta-taglibs-standard-java or glassfish-javaee -->
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/standard.jar" />
<!-- famfamfam-flag-png is in trusty but not precise, so leave them in the source package for both -->
<!-- anything added above, add in debian-release-tarball also -->
</delete>
<tar longfile="gnu" destfile="../${debian.tarball.name}" compression="bzip2">
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${Extended.Version}">
<include name="**/**" />
<exclude name="debian/**"/>
<exclude name="**/*.sh"/>
<!-- anything added above, add in debian-release-tarball also -->
</tarfileset>
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${Extended.Version}" filemode="755">
<exclude name="debian/**" />
<include name="**/*.sh" />
</tarfileset>
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
<!-- xenial/yakkety only -->
<!-- same as debian-release-tarball but with bundled jstl.jar
(there's no libtaglibs-standard-* packages)
- We add a 'x' to the release name and tarball since the source package is different;
- Launchpad does not allow different source packages with the same name.
-->
<target name="xenial-release-tarball" depends="getExtendedVersion, failIfNoMtn">
<property name="debian.tarball.name" value="i2p_${release.number}x.orig.tar.bz2" />
<echo message="Checking out fresh copy into ../i2p-${Extended.Version} for tarballing:" />
<delete dir="../i2p-${Extended.Version}" />
<exec executable="mtn" failonerror="true">
<arg value="co" />
<!-- w: is the revision of the current workspace -->
<arg value="-r" />
<arg value="w:" />
<arg value="-b" />
<arg value="i2p.i2p" />
<arg value="../i2p-${Extended.Version}" />
</exec>
<delete includeemptydirs="true" quiet="false" failonerror="false">
<fileset dir="../i2p-${Extended.Version}/debian-alt/" />
<fileset dir="../i2p-${Extended.Version}/installer/" includes="*.xml" />
<fileset dir="../i2p-${Extended.Version}/installer/c/" />
<fileset dir="../i2p-${Extended.Version}/installer/doc/" />
<fileset dir="../i2p-${Extended.Version}/installer/lib/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources" includes="checklist.md deletelist.txt install_* geoipv6-extras.csv makegeoip* po4a.config uninstall_* *.bat net.i2p.router.plist.template" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/Start I2P Router.app/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/portable/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/small/" />
<fileset dir="../i2p-${Extended.Version}/Slackware" />
<fileset dir="../i2p-${Extended.Version}/_MTN" />
<fileset dir="../i2p-${Extended.Version}/.idea" />
<fileset dir="../i2p-${Extended.Version}/.tx" />
<file name="../i2p-${Extended.Version}/.mtn-ignore" />
<fileset dir="../i2p-${Extended.Version}/" includes="Docker*" />
<file name="../i2p-${Extended.Version}/Makefile.gcj" />
<fileset dir="../i2p-${Extended.Version}/docs" />
<fileset dir="../i2p-${Extended.Version}/launchers" />
<file name="../i2p-${Extended.Version}/.travis.yml" />
<file name="../i2p-${Extended.Version}/.gitignore" />
<!-- gradle files -->
<fileset dir="../i2p-${Extended.Version}/" includes="**/build.gradle" />
<fileset dir="../i2p-${Extended.Version}/gradle" />
<file name="../i2p-${Extended.Version}/gradlew" />
<file name="../i2p-${Extended.Version}/gradlew.bat" />
<file name="../i2p-${Extended.Version}/gradle.properties" />
<file name="../i2p-${Extended.Version}/settings.gradle" />
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/gettext" />
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/getopt" />
<!--
<fileset dir="../i2p-${Extended.Version}/core/java/src/org/apache/http" />
-->
<file name="../i2p-${Extended.Version}/installer/resources/geoip.txt" />
<file name="../i2p-${Extended.Version}/installer/resources/geoipv6.dat.gz" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/jetty-distribution-${jetty.ver}" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/apache-tomcat-${tomcat.ver}" />
<!--
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/jstl.jar" />
-->
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/standard.jar" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/icons/flags" />
<!-- anything added above, add in debian-tarball also -->
</delete>
<tar longfile="gnu" destfile="../${debian.tarball.name}" compression="bzip2">
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${release.number}">
<include name="**/**" />
<exclude name="debian/**"/>
<exclude name="**/*.sh"/>
<!-- anything added above, add in debian-tarball also -->
</tarfileset>
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${release.number}" filemode="755">
<exclude name="debian/**" />
<include name="**/*.sh" />
</tarfileset>
</tar>
</target>
<!-- stretch+, zesty+ -->
<!-- same as debian-tarball but with a release tar.bz2 file name and tar prefix -->
<target name="debian-release-tarball" depends="getExtendedVersion, failIfNoMtn">
<property name="debian.tarball.name" value="i2p_${release.number}.orig.tar.bz2" />
<echo message="Checking out fresh copy into ../i2p-${Extended.Version} for tarballing:" />
<delete dir="../i2p-${Extended.Version}" />
<exec executable="mtn" failonerror="true">
<arg value="co" />
<!-- w: is the revision of the current workspace -->
<arg value="-r" />
<arg value="w:" />
<arg value="../i2p-${Extended.Version}" />
</exec>
<delete includeemptydirs="true" quiet="false" failonerror="false">
<fileset dir="../i2p-${Extended.Version}/debian-alt/" />
<fileset dir="../i2p-${Extended.Version}/installer/" includes="*.xml" />
<fileset dir="../i2p-${Extended.Version}/installer/c/" />
<fileset dir="../i2p-${Extended.Version}/installer/doc/" />
<fileset dir="../i2p-${Extended.Version}/installer/lib/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources" includes="checklist.md deletelist.txt install_* geoipv6-extras.csv makegeoip* po4a.config uninstall_* *.bat net.i2p.router.plist.template" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/Start I2P Router.app/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/portable/" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/small/" />
<fileset dir="../i2p-${Extended.Version}/Slackware" />
<fileset dir="../i2p-${Extended.Version}/_MTN" />
<fileset dir="../i2p-${Extended.Version}/.idea" />
<fileset dir="../i2p-${Extended.Version}/.tx" />
<file name="../i2p-${Extended.Version}/.mtn-ignore" />
<fileset dir="../i2p-${Extended.Version}/" includes="Docker*" />
<file name="../i2p-${Extended.Version}/Makefile.gcj" />
<fileset dir="../i2p-${Extended.Version}/docs" />
<fileset dir="../i2p-${Extended.Version}/launchers" />
<file name="../i2p-${Extended.Version}/.travis.yml" />
<file name="../i2p-${Extended.Version}/.gitignore" />
<!-- gradle files -->
<fileset dir="../i2p-${Extended.Version}/" includes="**/build.gradle" />
<fileset dir="../i2p-${Extended.Version}/gradle" />
<file name="../i2p-${Extended.Version}/gradlew" />
<file name="../i2p-${Extended.Version}/gradlew.bat" />
<file name="../i2p-${Extended.Version}/gradle.properties" />
<file name="../i2p-${Extended.Version}/settings.gradle" />
<fileset dir="../i2p-${Extended.Version}/core/java/src/gnu/gettext" />
<fileset dir="../i2p-${Extended.Version}/core/java/src/org/apache/http" />
<file name="../i2p-${Extended.Version}/installer/resources/geoip.txt" />
<file name="../i2p-${Extended.Version}/installer/resources/geoipv6.dat.gz" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/jetty-distribution-${jetty.ver}" />
<fileset dir="../i2p-${Extended.Version}/apps/jetty/apache-tomcat-${tomcat.ver}" />
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/jstl.jar" />
<file name="../i2p-${Extended.Version}/apps/susidns/src/lib/standard.jar" />
<fileset dir="../i2p-${Extended.Version}/installer/resources/icons/flags" />
</delete>
<tar longfile="gnu" destfile="../${debian.tarball.name}" compression="bzip2">
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${release.number}">
<include name="**/**" />
<exclude name="debian/**"/>
<exclude name="**/*.sh"/>
</tarfileset>
<tarfileset dir="../i2p-${Extended.Version}" prefix="/i2p-${release.number}" filemode="755">
<exclude name="debian/**" />
<include name="**/*.sh" />
</tarfileset>
</tar>
</target>
<exec executable="quilt" failonerror="true">
<arg value="-a" />
<arg value="push" />
</exec>
<echo message="====================" />
</target>
<target name="debian-unpatch" depends="buildProperties">
<exec executable="quilt" failonerror="false">
<arg value="-a" />
<arg value="pop" />
<exec dir="debian" executable="./makerepo.sh" failonerror="true"/>
<!-- the following are appened to help build barebone portable version,
none of the above is modified for this purpose -->
<target name = "pkg-portable-clean">
<delete dir="build/" />
<delete>
<fileset dir="." includes="portable-**.zip**" />
</delete>
</target>
<!-- build a portable archive -->
<!-- *0* Since we simply pack all files in folder "build/" into our archieve,
we need to make sure its small, with NO redundent jars or wars.
thus cleaning is required before each build-->
<target name="buildSmallOnly" depends="pkg-portable-clean,buildSmall"/>
<!-- *1* preparing the jars by OS dependent de-bloating -->
<target name="preppkg-portable-win32-jbigi" depends="buildSmallOnly, jbigi-windows-only" />
<target name="preppkg-portable-linux-jbigi" depends="buildSmallOnly, jbigi-linux-only" />
<target name="preppkg-portable-basic" >
<!-- non OS dependent configurations only, dont add *nux/win stuff here -->
<fileset dir="installer/resources/portable/configs/" />
</copy>
<copy file="installer/resources/blocklist.txt" todir="pkg-temp/" />
<copy file="installer/resources/hosts.txt" todir="pkg-temp/" />
<copy file="installer/resources/readme.license.txt" todir="pkg-temp/" />
<mkdir dir="pkg-temp/addressbook" />
<copy file="apps/addressbook/subscriptions.txt" todir="pkg-temp/addressbook/" />
<copy file="apps/addressbook/myhosts.txt" todir="pkg-temp/addressbook/" />
<!-- config.txt is in installer/resources/portable -->
<copy file="installer/resources/initialNews/initialNews.xml" tofile="pkg-temp/docs/news.xml" overwrite="true" />
<copy file="installer/resources/readme/readme.html" tofile="pkg-temp/docs/readme.html" />
<copy file="installer/resources/startconsole.html" todir="pkg-temp/docs/" />
<copy file="installer/resources/start.ico" todir="pkg-temp/docs/" />
<copy file="installer/resources/console.ico" todir="pkg-temp/docs/" />
<!-- HTTP Header files, english only,
if you need a different lang do it in a seperate target -->
<fileset dir="installer/resources/proxy/" includes="**-header.ht" />
</copy>
<!-- Theme light only -->
<copy todir="pkg-temp/docs/themes/console/light/" overwrite="true" >
<fileset dir="installer/resources/themes/console/light/" includes="**.css" />
</copy>
<copy file="installer/resources/themes/console/light/console_big.css" todir="portable/docs/themes/console/light/" />
<copy todir="pkg-temp/docs/themes/console/images/" >
<fileset dir="installer/resources/themes/console/images/" />
</copy>
<copy todir="pkg-temp/docs/icons" >
<fileset dir="installer/resources/icons" />
<mkdir dir="pkg-temp/webapps" />
<copy todir="pkg-temp/webapps/">
<fileset dir="build/" includes="**.war" />
</copy>
<mkdir dir="pkg-temp/lib" />
<copy todir ="pkg-temp/lib/" >
<fileset dir="build/" includes="**.jar" />
</copy>
<!-- 3rd party jars from apps/ -->
<!-- jrobin - without jobin , you lost graph and get a lot error entry in logs -->
</target>
<!-- *3* os dependent procedure/commands -->
<target name = "preppkg-portable-win32" depends="preppkg-portable-win32-jbigi,preppkg-portable-basic">
<!--wrapper - dont even think about it. i2p cosumes appreantly more mem without it on win32-->
<copy file="installer/lib/wrapper/win32/wrapper.dll" todir="pkg-temp/lib" />
<copy file="installer/lib/wrapper/all/wrapper.jar" todir="pkg-temp/lib" />
<copy file="installer/lib/wrapper/win32/I2Psvc.exe" tofile="pkg-temp/i2psvc.ex_" />
<!-- copy the unpack/start batchfiles -->
<copy todir="pkg-temp">
<fileset dir="installer/resources/portable/win32/" />
</copy>
</target>
<!-- *4* command for windows package -->
<target name = "pkg-portable-win32" depends="preppkg-portable-win32, pack200" >
<!-- i need the portable\ folder in .zip so basedir is set to . -->
<move file="pkg-temp" tofile="portable"/>
<zip destfile="portable-win32.zip" basedir="." level="9" includes="portable\**" />
<checksum file="portable-win32.zip" forceOverwrite="yes"/>
<move file="portable" tofile="pkg-temp"/>
</target>