2014-08-01 07:47:39 -04:00
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2016-09-17 02:53:14 -04:00
<project name= "filebot" default= "fatjar" xmlns:ivy= "antlib:org.apache.ivy.ant" xmlns:cmp= "antlib:org.apache.ant.compress" >
2014-08-01 07:47:39 -04:00
<property file= "profile.properties" />
2016-04-03 16:51:03 -04:00
<property file= "source/net/filebot/Settings.properties" />
2016-04-03 16:11:52 -04:00
2014-08-01 07:47:39 -04:00
<property name= "title" value= "${application.name}" />
<property name= "version" value= "${application.version}" />
<tstamp >
2016-01-30 15:07:06 -05:00
<format property= "tstamp.date" pattern= "yyyy-MM-dd" />
</tstamp>
<tstamp >
<format property= "tstamp.year" pattern= "yyyy" />
2014-08-01 07:47:39 -04:00
</tstamp>
<!-- define source dirs -->
<property name= "dir.source" location= "${basedir}/source" />
<property name= "dir.build" location= "${basedir}/build" />
<property name= "dir.dist" location= "${basedir}/dist" />
<property name= "dir.lib" location= "${basedir}/lib" />
<property name= "dir.website" location= "${basedir}/website" />
<property name= "dir.installer" location= "${basedir}/installer" />
<!-- define output paths -->
<property name= "path.fatjar" location= "${dir.dist}/${title}_${version}.jar" />
2016-09-20 02:40:38 -04:00
<property name= "basedir.cache" location= "${basedir}/cache" />
<property name= "dir.cache" location= "${basedir.cache}/${title}_${version}" />
2014-08-01 07:47:39 -04:00
<property name= "basedir.release" location= "${basedir}/release" />
<property name= "dir.release" location= "${basedir.release}/${title}_${version}" />
2016-09-19 04:03:56 -04:00
<!-- target JRE -->
<property name= "jre.major" value= "8" />
<property name= "jre.build" value= "102" />
2016-09-17 02:53:14 -04:00
2014-08-01 07:47:39 -04:00
2015-05-18 03:03:05 -04:00
<target name= "resolve" description= "Retrieve dependencies with Apache Ivy" >
<delete dir= "${dir.lib}/ivy" />
<ivy:retrieve pattern= "${dir.lib}/ivy/[type]/[artifact].[ext]" />
2016-03-23 10:57:52 -04:00
<antcall target= "resolve-import-native" >
<param name= "arch" value= "mac-x86_64" />
<param name= "arch.jna" value= "darwin" />
<param name= "arch.7zj" value= "Mac-x86_64" />
</antcall>
<antcall target= "resolve-import-native" >
<param name= "arch" value= "win32-x64" />
<param name= "arch.jna" value= "win32-x86-64" />
<param name= "arch.7zj" value= "Windows-amd64" />
</antcall>
<antcall target= "resolve-import-native" >
<param name= "arch" value= "win32-x86" />
<param name= "arch.jna" value= "win32-x86/" />
<param name= "arch.7zj" value= "Windows-x86" />
</antcall>
<antcall target= "resolve-import-native" >
<param name= "arch" value= "linux-amd64" />
<param name= "arch.jna" value= "linux-x86-64" />
<param name= "arch.7zj" value= "Linux-amd64" />
</antcall>
<antcall target= "resolve-import-native" >
<param name= "arch" value= "linux-i686" />
<param name= "arch.jna" value= "linux-x86" />
<param name= "arch.7zj" value= "Linux-i386" />
</antcall>
<antcall target= "resolve-import-native" >
<param name= "arch" value= "linux-arm" />
<param name= "arch.jna" value= "linux-arm" />
<param name= "arch.7zj" value= "Linux-arm" />
</antcall>
</target>
<target name= "resolve-import-native" >
<unzip src= "${dir.lib}/ivy/jar/jna.jar" dest= "${dir.lib}/native/${arch}" overwrite= "yes" >
<patternset >
<include name= "**/${arch.jna}/*.dll" />
<include name= "**/${arch.jna}/*.so" />
<include name= "**/${arch.jna}/*.jnilib" />
</patternset>
<chainedmapper >
<flattenmapper />
<compositemapper >
<globmapper from= "*.jnilib" to= "*.dylib" />
<identitymapper />
</compositemapper>
</chainedmapper>
</unzip>
<unzip src= "${dir.lib}/ivy/jar/sevenzipjbinding-all-platforms.jar" dest= "${dir.lib}/native/${arch}" overwrite= "yes" >
<patternset >
<include name= "**/${arch.7zj}/*.dll" />
<include name= "**/${arch.7zj}/*.so" />
<include name= "**/${arch.7zj}/*.dylib" />
</patternset>
<chainedmapper >
<flattenmapper />
<compositemapper >
<globmapper from= "lib*.dll" to= "*.dll" />
<identitymapper />
</compositemapper>
</chainedmapper>
</unzip>
2015-05-18 03:03:05 -04:00
</target>
2014-08-01 07:47:39 -04:00
<target name= "jar" depends= "build" >
<!-- main jar -->
<jar destfile= "${dir.dist}/filebot.jar" >
2016-05-12 10:15:19 -04:00
<fileset dir= "${dir.build}" />
2014-08-01 07:47:39 -04:00
<manifest >
2016-04-21 07:57:01 -04:00
<attribute name= "Build-Date" value= "${tstamp.date}" />
<attribute name= "Build-Revision" value= "${revision}" />
2014-08-01 07:47:39 -04:00
<attribute name= "Application-Name" value= "${title}" />
<attribute name= "Application-Version" value= "${version}" />
<attribute name= "Main-Class" value= "net.filebot.Main" />
</manifest>
</jar>
<!-- source as zip -->
2016-09-17 02:53:14 -04:00
<zip destfile= "${dir.dist}/${title}-${version}-src.zip" >
2014-08-01 07:47:39 -04:00
<fileset dir= "source" />
</zip>
</target>
2016-08-13 12:17:06 -04:00
<target name= "fatjar" depends= "jar" description= "Build executable jar" >
2016-10-24 13:48:59 -04:00
<jar destfile= "${path.fatjar}" filesetmanifest= "merge" duplicate= "fail" index= "yes" compress= "no" >
2014-08-01 07:47:39 -04:00
<!-- include main jar -->
<zipfileset src= "${dir.dist}/filebot.jar" />
<!-- include libs -->
2015-11-04 03:53:52 -05:00
<zipfileset src= "${dir.lib}/ivy/bundle/json-io.jar" >
2014-08-01 07:47:39 -04:00
<include name= "com/cedarsoftware/util/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/glazedlists_java15.jar" >
2014-08-01 07:47:39 -04:00
<include name= "ca/odell/glazedlists/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/miglayout-core.jar" >
2014-08-01 07:47:39 -04:00
<include name= "net/miginfocom/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/miglayout-swing.jar" >
2014-08-01 07:47:39 -04:00
<include name= "net/miginfocom/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/rsyntaxtextarea.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/fife/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/jars/simmetrics.jar" >
2014-08-06 08:03:16 -04:00
<include name= "uk/ac/shef/wit/simmetrics/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/jars/xmlrpc.jar" >
2014-08-01 07:47:39 -04:00
<include name= "redstone/xmlrpc/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/bundle/args4j.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/kohsuke/args4j/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/xz.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/tukaani/xz/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ehcache.jar" >
2014-08-01 07:47:39 -04:00
<include name= "META-INF/services/**" />
<include name= "net/sf/ehcache/**" />
<include name= "org/terracotta/**" />
<include name= "ehcache-failsafe.xml" />
<include name= "build-info.properties" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/slf4j-api.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/slf4j/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/slf4j-jdk14.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/slf4j/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/commons-io.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/commons/io/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/icu4j.jar" >
2014-08-06 08:03:16 -04:00
<include name= "com/ibm/icu/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/jars/jacksum.jar" >
2014-08-06 08:03:16 -04:00
<include name= "jonelo/jacksum/adapt/**" />
<include name= "jonelo/jacksum/algorithm/**" />
<include name= "jonelo/sugar/util/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/groovy-all.jar" >
2014-08-01 07:47:39 -04:00
<include name= "groovy*/**" />
<include name= "org/codehaus/groovy/**" />
<include name= "META-INF/dgminfo" />
<include name= "META-INF/services/**" />
<include name= "META-INF/*.properties" />
<!-- filebot already includes it's own extension modules -->
<exclude name= "META-INF/services/org.codehaus.groovy.runtime.ExtensionModule" />
</zipfileset>
2015-10-16 12:44:54 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/sevenzipjbinding.jar" >
2014-08-06 08:03:16 -04:00
<include name= "net/sf/sevenzipjbinding/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
2015-05-18 04:39:05 -04:00
<zipfileset src= "${dir.lib}/jars/ObjCBridge.jar" >
2015-05-18 04:29:04 -04:00
<include name= "ca/weblite/**" />
2014-08-06 08:03:16 -04:00
<include name= "com/sun/jna/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
2015-06-04 06:21:47 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/commons-vfs2.jar" >
2015-06-04 06:12:56 -04:00
<include name= "org/apache/commons/vfs2/**" />
</zipfileset>
2015-06-04 06:21:47 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/commons-logging.jar" >
2015-06-04 06:12:56 -04:00
<include name= "org/apache/commons/logging/**" />
</zipfileset>
2015-06-04 06:21:47 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/junrar.jar" >
2015-06-04 06:12:56 -04:00
<include name= "com/github/junrar/**" />
</zipfileset>
2016-01-31 11:13:04 -05:00
<zipfileset src= "${dir.lib}/ivy/jar/language-detector.jar" >
2016-01-31 11:22:36 -05:00
<include name= "be/frma/langguess/**" />
<include name= "com/cybozu/labs/langdetect/**" />
<include name= "com/optimaize/langdetect/**" />
2016-01-31 11:13:04 -05:00
<include name= "languages/**" />
</zipfileset>
<zipfileset src= "${dir.lib}/ivy/bundle/guava.jar" >
<include name= "com/google/**" />
</zipfileset>
2016-02-06 07:23:59 -05:00
<zipfileset src= "${dir.lib}/ivy/jar/streamex.jar" >
<include name= "one/util/streamex/**" />
</zipfileset>
2016-05-08 02:54:56 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/controlsfx.jar" >
<include name= "org/controlsfx/dialog/**" />
<include name= "impl/org/controlsfx/i18n/**" />
<include name= "controlsfx.properties" />
</zipfileset>
2014-08-06 08:03:16 -04:00
<!-- include classes and native libraries -->
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/jna.jar" >
2014-08-06 08:03:16 -04:00
<include name= "com/sun/jna/**" />
</zipfileset>
2015-11-05 13:02:55 -05:00
<zipfileset src= "${dir.lib}/ivy/jar/jna-platform.jar" >
<include name= "com/sun/jna/platform/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
2014-08-06 08:03:16 -04:00
<!-- libraries used in external scripts -->
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/jsoup.jar" >
2014-08-06 08:03:16 -04:00
<include name= "org/jsoup/**" />
2014-08-01 07:47:39 -04:00
</zipfileset>
<!-- Ivy for @Grapes automatic dependency management -->
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ivy.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/ivy/**" />
</zipfileset>
<!-- AntBuilder including dependencies for ant - javamail, ant - commons - net and ant - jsch -->
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ant.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/tools/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ant-launcher.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/tools/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ant-commons-net.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/tools/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ant-jsch.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/tools/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/ant-javamail.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/tools/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/commons-net.jar" >
2014-08-01 07:47:39 -04:00
<include name= "org/apache/commons/net/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/jsch.jar" >
2014-08-01 07:47:39 -04:00
<include name= "com/jcraft/jsch/**" />
</zipfileset>
2015-05-18 03:44:04 -04:00
<zipfileset src= "${dir.lib}/ivy/jar/mail.jar" >
2014-08-01 07:47:39 -04:00
<include name= "javax/mail/**" />
<include name= "com/sun/mail/**" />
<include name= "META-INF/*mail*" />
</zipfileset>
</jar>
</target>
2016-09-19 04:32:49 -04:00
<target name= "appbundle" description= "Build Mac application bundle" depends= "revision" >
2016-09-16 11:38:56 -04:00
<bundleapp minimumsystemversion= "10.8" jvmrequired= "1.8" outputdirectory= "${dir.dist}" executablename= "purchase.sh" hidedockicon= "true" name= "${application.name}" displayname= "${title} ${version}" version= "${revision}" shortversion= "${version}" identifier= "net.filebot.app" mainclassname= "net.filebot.Main" icon= "${dir.installer}/appbundle/filebot.icns" copyright= "${tstamp.year} Reinhard Pointner" applicationcategory= "public.app-category.utilities" highresolutioncapable= "true" supportsautomaticgraphicsswitching= "true" debug= "true" >
2014-08-01 07:47:39 -04:00
<classpath file= "${path.fatjar}" />
<librarypath dir= "${dir.lib}/native/mac-x86_64" />
2016-09-19 02:17:09 -04:00
<librarypath dir= "${dir.installer}/appbundle/MacOS" />
2014-10-10 16:14:59 -04:00
<arch name= "x86_64" />
2015-05-10 03:29:54 -04:00
<option value= "-Dnet.filebot.UserFiles.fileChooser=COCOA" />
2014-08-01 07:47:39 -04:00
<option value= "-Dapplication.deployment=app" />
<option value= "-Dapplication.update=auto" />
<option value= "-Dunixfs=false" />
<option value= "-DuseExtendedFileAttributes=true" />
<option value= "-DuseCreationDate=false" />
<option value= "-Djava.net.useSystemProxies=true" />
<option value= "-Dsun.net.client.defaultConnectTimeout=10000" />
<option value= "-Dsun.net.client.defaultReadTimeout=60000" />
<option value= "-Dfile.encoding=UTF-8" />
2014-08-01 13:41:31 -04:00
<option value= "-Djna.nosys=true" />
2014-08-01 07:47:39 -04:00
<option value= "-Djna.library.path=$APP_ROOT/Contents/MacOS" />
<option value= "-Djava.library.path=$APP_ROOT/Contents/MacOS" />
<option value= "-Dnet.filebot.AcoustID.fpcalc=$APP_ROOT/Contents/MacOS/fpcalc" />
<option value= "-Xdock:name=${title}" />
<option value= "-Xdock:icon=Contents/Resources/filebot.icns" />
<option value= "-Dapple.laf.useScreenMenuBar=true" />
2016-03-19 14:00:25 -04:00
2016-03-19 16:38:57 -04:00
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.movie" name= "Video file" />
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.audio" name= "Audio file" />
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.folder" name= "Media folder" />
2014-08-01 07:47:39 -04:00
</bundleapp>
2015-05-22 02:37:43 -04:00
<!-- application bundle folder as .tar -->
2016-09-17 02:53:14 -04:00
<cmp:xz destfile= "${dir.dist}/${title}_${version}-darwin.tar.xz" >
<cmp:tar format= "gnu" encoding= "utf-8" >
<cmp:tarfileset dir= "${dir.dist}" includes= "${application.name}.app/**" excludes= "**/MacOS/**" />
<cmp:tarfileset dir= "${dir.dist}" includes= "${application.name}.app/**/**.dylib" />
<cmp:tarfileset dir= "${dir.dist}" includes= "${application.name}.app/**/fpcalc" filemode= "755" />
2016-09-19 02:17:09 -04:00
<cmp:tarfileset dir= "${dir.dist}" includes= "${application.name}.app/**/**.sh" filemode= "755" />
2016-09-17 02:53:14 -04:00
</cmp:tar>
</cmp:xz>
2014-08-01 07:47:39 -04:00
</target>
2015-12-14 04:21:31 -05:00
<target name= "appbundle-maspkg-core" >
<antcall target= "appbundle-maspkg" >
<param name= "application.name" value= "FileBot" />
<param name= "application.executable" value= "FileBot" />
<param name= "application.identifier" value= "net.filebot.FileBot" />
<param name= "application.icon" value= "${dir.installer}/appbundle/filebot.icns" />
2016-01-22 05:06:37 -05:00
<param name= "application.cert.appbundle" value= "3rd Party Mac Developer Application: Point Planck Limited" />
<param name= "application.cert.installer" value= "3rd Party Mac Developer Installer: Point Planck Limited" />
2016-05-03 15:06:58 -04:00
<!-- MAS does not allow subtitle apps -->
2016-03-19 14:49:48 -04:00
<param name= "application.mode" value= "Rename|Episodes|SFV|Filter|List" />
2016-05-03 15:06:58 -04:00
<!-- libjfxwebkit.dylib cannot be deployed on the MAS due to deprecated dependencies -->
2016-05-03 15:49:14 -04:00
<param name= "application.help" value= "ask" />
2015-12-14 04:21:31 -05:00
</antcall>
2014-08-01 07:47:39 -04:00
</target>
2016-01-22 05:06:35 -05:00
2015-12-14 04:21:31 -05:00
<target name= "appbundle-maspkg-subtitles" >
<antcall target= "appbundle-maspkg" >
2016-01-14 02:24:24 -05:00
<param name= "application.name" value= "FileBot Subtitles" />
2016-01-22 05:49:03 -05:00
<param name= "application.executable" value= "FileBotSubtitles" />
2015-12-14 04:21:31 -05:00
<param name= "application.identifier" value= "net.filebot.subtitles" />
<param name= "application.icon" value= "${dir.installer}/appbundle/subtitles.icns" />
2016-01-22 05:38:07 -05:00
<param name= "application.cert.appbundle" value= "Developer ID Application: Point Planck Limited" />
<param name= "application.cert.installer" value= "Developer ID Installer: Point Planck Limited" />
2015-12-14 04:58:56 -05:00
<param name= "application.mode" value= "Subtitles" />
<param name= "application.help" value= "skip" />
2015-12-14 04:21:31 -05:00
</antcall>
</target>
2014-08-01 07:47:39 -04:00
2015-12-12 07:06:13 -05:00
2016-09-19 04:32:49 -04:00
<target name= "appbundle-maspkg" depends= "revision" >
2015-12-14 04:28:36 -05:00
<property name= "path.app" value= "${application.name}.app" />
2016-04-20 12:57:03 -04:00
<property name= "path.pkg" value= "${application.executable}_${version}_r${revision}.pkg" />
2015-12-14 04:21:31 -05:00
2016-09-19 04:03:56 -04:00
<property name= "jre.version" value= "jdk1.${jre.major}.0_${jre.build}.jdk" />
2015-12-12 07:06:13 -05:00
<property name= "jre.path" value= "/Library/Java/JavaVirtualMachines/${jre.version}/Contents/Home" />
2016-09-22 09:03:49 -04:00
<bundleapp minimumsystemversion= "10.8" jvmrequired= "1.8" outputdirectory= "${dir.dist}" executablename= "${application.executable}AppLauncher" name= "${application.name}" displayname= "${application.name}" version= "${revision}" shortversion= "${version}" identifier= "${application.identifier}" mainclassname= "net.filebot.Main" icon= "${application.icon}" copyright= "${tstamp.year} Point Planck Limited" applicationcategory= "public.app-category.utilities" highresolutioncapable= "true" supportsautomaticgraphicsswitching= "true" debug= "true" >
2015-12-12 07:06:13 -05:00
<classpath file= "${path.fatjar}" />
<librarypath dir= "${dir.lib}/native/mac-x86_64" />
2016-09-19 02:17:09 -04:00
<librarypath dir= "${dir.installer}/appbundle/MacOS" excludes= "purchase.sh" />
2015-12-12 07:06:13 -05:00
<arch name= "x86_64" />
<runtime dir= "${jre.path}" />
2015-12-14 04:47:29 -05:00
<argument value= "--mode" />
<argument value= "${application.mode}" />
2015-12-12 07:06:13 -05:00
<!-- WORKING_DIR is sandbox data folder -->
<option value= "-Dapplication.dir=./Library/Application Support/User Data" />
<option value= "-Dapplication.cache=./Library/Caches/ehcache.disk.store" />
<option value= "-Djava.io.tmpdir=./Library/Caches/java.io.tmpdir" />
<option value= "-Dnet.filebot.UserFiles.fileChooser=COCOA" />
2015-12-14 04:21:31 -05:00
<option value= "-Dapplication.name=${application.name}" />
2015-12-14 04:58:56 -05:00
<option value= "-Dapplication.help=${application.help}" />
2015-12-12 07:06:13 -05:00
<option value= "-Dapplication.deployment=mas" />
<option value= "-Dapplication.update=skip" />
<option value= "-Dunixfs=false" />
<option value= "-DuseExtendedFileAttributes=true" />
<option value= "-DuseCreationDate=false" />
<option value= "-Djava.net.useSystemProxies=true" />
<option value= "-Dsun.net.client.defaultConnectTimeout=10000" />
<option value= "-Dsun.net.client.defaultReadTimeout=60000" />
<option value= "-Dfile.encoding=UTF-8" />
<option value= "-Djna.nosys=true" />
<option value= "-Djna.nounpack=true" />
<option value= "-Djna.boot.library.name=jnidispatch" />
<option value= "-Djna.boot.library.path=$APP_ROOT/Contents/MacOS" />
<option value= "-Djna.library.path=$APP_ROOT/Contents/MacOS" />
<option value= "-Djava.library.path=$APP_ROOT/Contents/MacOS" />
<option value= "-Dnet.filebot.AcoustID.fpcalc=$APP_ROOT/Contents/MacOS/fpcalc" />
<option value= "-Dapple.laf.useScreenMenuBar=true" />
2016-03-19 14:45:08 -04:00
2016-03-19 16:38:57 -04:00
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.movie" name= "Video file" />
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.audio" name= "Audio file" />
<bundledocument role= "viewer" handlerRank= "none" contentTypes= "public.folder" name= "Media folder" />
2015-12-12 07:06:13 -05:00
</bundleapp>
<!-- fix code signing and submission issues -->
2016-09-22 09:33:08 -04:00
<delete verbose= "yes" includeEmptyDirs= "yes" >
2015-12-14 04:21:31 -05:00
<fileset dir= "${dir.dist}/${path.app}/Contents/PlugIns" >
2015-12-12 07:06:13 -05:00
<include name= "**/libjfxmedia_qtkit.dylib" />
2016-05-03 14:55:52 -04:00
<include name= "**/libjfxwebkit.dylib" />
2015-12-12 07:06:13 -05:00
<include name= "**/Contents/Info.plist" />
<include name= "**/Contents/MacOS/libjli.dylib" />
</fileset>
2016-09-22 09:33:08 -04:00
<fileset dir= "${dir.dist}/${path.app}/Contents/Resources" >
<exclude name= "en.lproj/**" />
<exclude name= "*.icns" />
</fileset>
2015-12-12 07:06:13 -05:00
</delete>
2015-12-14 04:21:31 -05:00
<copy verbose= "yes" failonerror= "yes" overwrite= "yes" file= "/Library/Java/JavaVirtualMachines/${jre.version}/Contents/Info.plist" tofile= "${dir.dist}/${path.app}/Contents/PlugIns/${jre.version}/Contents/Info.plist" />
<copy verbose= "yes" failonerror= "yes" overwrite= "yes" file= "/Library/Java/JavaVirtualMachines/${jre.version}/Contents/MacOS/libjli.dylib" tofile= "${dir.dist}/${path.app}/Contents/PlugIns/${jre.version}/Contents/MacOS/libjli.dylib" />
2015-12-12 07:06:13 -05:00
<!-- fix permissions -->
2016-09-19 02:17:09 -04:00
<chmod verbose= "yes" dir= "${dir.dist}" includes= "**/fpcalc" perm= "+x" />
<chmod verbose= "yes" dir= "${dir.dist}" includes= "**/*.sh" perm= "+x" />
2015-12-14 04:21:31 -05:00
<chmod verbose= "yes" dir= "${dir.dist}/${path.app}/Contents/PlugIns" perm= "+rw" />
2015-12-12 07:06:13 -05:00
<!-- JRE sign all jars, dylibs and executables -->
2016-01-22 05:06:37 -05:00
<property name= "codesign.opts" value= "--verbose=4 --force --sign '${application.cert.appbundle}'" />
2015-12-12 07:06:13 -05:00
<property name= "codesign.entitlements" value= "--entitlements '${dir.installer}/appbundle/FileBot.entitlements'" />
<property name= "codesign.entitlements.inherit" value= "--entitlements '${dir.installer}/appbundle/inherit.entitlements'" />
<apply executable= "codesign" >
<arg line= "${codesign.opts} ${codesign.entitlements.inherit}" />
<srcfile />
2015-12-14 04:21:31 -05:00
<fileset dir= "${dir.dist}/${path.app}/Contents/PlugIns" >
2015-12-12 07:06:13 -05:00
<include name= "**/jspawnhelper" />
<include name= "**/*.dylib" />
<include name= "**/*.jar" />
</fileset>
</apply>
<!-- sign cmdline tool first -->
2015-12-14 04:21:31 -05:00
<exec dir= "${dir.dist}/${path.app}" executable= "codesign" >
2015-12-12 07:06:13 -05:00
<arg line= "${codesign.opts} ${codesign.entitlements.inherit} Contents/MacOS/fpcalc" />
</exec>
<!-- APP sign all jars, dylibs and executables -->
<apply executable= "codesign" >
<arg line= "${codesign.opts} ${codesign.entitlements}" />
<srcfile />
2015-12-14 04:21:31 -05:00
<fileset dir= "${dir.dist}/${path.app}/Contents" >
2015-12-12 07:06:13 -05:00
<include name= "MacOS/*.dylib" />
2016-09-19 02:23:05 -04:00
<include name= "MacOS/*.sh" />
2015-12-12 07:06:13 -05:00
<include name= "Java/*.jar" />
</fileset>
</apply>
<!-- sign app with entitlements -->
<exec dir= "${dir.dist}" executable= "codesign" >
2015-12-14 04:21:31 -05:00
<arg line= "${codesign.opts} ${codesign.entitlements} '${path.app}/Contents/PlugIns/${jre.version}'" />
2015-12-12 07:06:13 -05:00
</exec>
<exec dir= "${dir.dist}" executable= "codesign" >
2015-12-14 04:21:31 -05:00
<arg line= "${codesign.opts} ${codesign.entitlements} '${path.app}'" />
2015-12-12 07:06:13 -05:00
</exec>
<!-- verify signature & build pkg -->
<exec dir= "${dir.dist}" executable= "codesign" failonerror= "on" >
2015-12-14 04:21:31 -05:00
<arg line= "--verify '${path.app}/Contents/PlugIns/${jre.version}'" />
2015-12-12 07:06:13 -05:00
</exec>
<exec dir= "${dir.dist}" executable= "codesign" failonerror= "on" >
2015-12-14 04:21:31 -05:00
<arg line= "--verify '${path.app}'" />
2015-12-12 07:06:13 -05:00
</exec>
<exec dir= "${dir.dist}" executable= "productbuild" failonerror= "on" >
2016-01-22 05:06:37 -05:00
<arg line= "--component '${path.app}' /Applications --sign '${application.cert.installer}' ${path.pkg}" />
2015-12-12 07:06:13 -05:00
</exec>
2016-09-19 05:09:47 -04:00
<!-- store as release build -->
2015-12-12 07:06:13 -05:00
<copy todir= "${dir.release}" file= "${dir.dist}/${path.pkg}" verbose= "yes" />
</target>
2016-09-19 04:32:49 -04:00
<target name= "snap" depends= "revision" >
2016-08-05 13:37:16 -04:00
<copy tofile= "${dir.dist}/snappy/filebot/FileBot.jar" file= "${path.fatjar}" />
<copy todir= "${dir.dist}/snappy/filebot/lib/amd64" >
2016-08-05 13:41:07 -04:00
<fileset dir= "${dir.lib}/native/linux-amd64" excludes= "fpcalc, libmediainfo.so, libzen.so" />
2016-08-05 13:37:16 -04:00
</copy>
2016-08-05 13:10:36 -04:00
<!-- copy files and resolve ant variables -->
<copy todir= "${dir.dist}/snappy" overwrite= "yes" encoding= "UTF-8" verbose= "true" >
<fileset dir= "${dir.installer}/snappy" />
<filterset begintoken= "@{" endtoken= "}" >
<propertyset >
<propertyref builtin= "all" />
</propertyset>
</filterset>
</copy>
2016-08-05 13:37:16 -04:00
<chmod perm= "+x" file= "${dir.dist}/snappy/filebot/filebot.sh" verbose= "yes" />
2016-08-05 13:10:36 -04:00
2016-09-19 03:41:40 -04:00
<exec executable= "snapcraft" dir= "${dir.dist}/snappy" failonerror= "yes" >
2016-08-05 13:10:36 -04:00
<arg line= "snap" />
</exec>
</target>
2016-09-19 04:32:49 -04:00
<target name= "deb" description= "Build Debian Linux packages" depends= "revision" >
2014-08-01 07:47:39 -04:00
<antcall target= "deb-arch" >
2014-10-07 13:33:04 -04:00
<param name= "arch" value= "i686" />
<!-- arch i686 not allowed by deb specification, must be i386 for 32 - bit x86 systems -->
<param name= "deb.arch" value= "i386" />
2014-08-01 07:47:39 -04:00
</antcall>
<antcall target= "deb-arch" >
<param name= "arch" value= "amd64" />
2014-10-07 13:33:04 -04:00
<param name= "deb.arch" value= "amd64" />
2014-08-01 07:47:39 -04:00
</antcall>
</target>
2015-05-22 02:37:43 -04:00
2014-08-01 07:47:39 -04:00
<target name= "deb-arch" >
2014-10-07 14:00:48 -04:00
<!-- stage created .deb files in a temporary folder -->
<property name= "deb.staging" location= "${dir.dist}/deb" />
<mkdir dir= "${deb.staging}" />
2015-05-11 14:20:32 -04:00
<deb debfilenameproperty= "staging.file.deb" todir= "${deb.staging}" package= "filebot" version= "${version}" architecture= "${deb.arch}" section= "misc" homepage= "http://www.filebot.net/" priority= "optional" postinst= "${dir.installer}/deb/postinst.sh" prerm= "${dir.installer}/deb/prerm.sh" >
2015-05-22 02:37:43 -04:00
<maintainer name= "Reinhard Pointner" email= "maintainer@filebot.net" />
2014-08-01 07:47:39 -04:00
<description synopsis= "The ultimate TV and Movie Renamer" > FileBot is the ultimate tool for renaming your movies, tv shows or anime and even downloading subtitles. It's smart, streamlined for simplicity and just works. Putting the super-efficient UI aside, it's also got a full-featured command-line interface and scripting engine for all sorts of automation. Anything is possible.</description>
<tarfileset fullpath= "usr/share/filebot/FileBot.jar" file= "${path.fatjar}" />
<tarfileset prefix= "usr/share/filebot" dir= "${dir.lib}/native/linux-${arch}" includes= "*.so" />
<tarfileset prefix= "usr/share/filebot" file= "${dir.lib}/native/linux-${arch}/fpcalc" filemode= "755" />
<tarfileset prefix= "usr/share/filebot" file= "${dir.installer}/icons/icon.svg" />
<tarfileset prefix= "usr/share/filebot/bin" file= "${dir.installer}/deb/filebot.sh" filemode= "755" />
<tarfileset prefix= "usr/share/applications" file= "${dir.installer}/deb/FileBot.desktop" />
</deb>
2014-10-24 13:40:09 -04:00
<move tofile= "${dir.dist}/filebot_${version}_${deb.arch}.deb" file= "${staging.file.deb}" overwrite= "no" failonerror= "yes" />
2014-10-07 14:00:48 -04:00
<delete dir= "${deb.staging}" />
2014-08-01 07:47:39 -04:00
</target>
2016-09-19 04:32:49 -04:00
<target name= "ipkg" description= "Build embedded Linux packages" depends= "revision" >
2014-08-01 07:47:39 -04:00
<!-- stage created .deb files in a temporary folder -->
<property name= "ipkg.staging" location= "${dir.dist}/deb-ipkg" />
<mkdir dir= "${ipkg.staging}" />
2015-05-11 14:20:32 -04:00
<deb debfilenameproperty= "staging.file.deb" todir= "${ipkg.staging}" package= "filebot" version= "${version}" architecture= "noarch" section= "misc" homepage= "http://www.filebot.net/" priority= "optional" postinst= "${dir.installer}/ipkg/postinst.sh" prerm= "${dir.installer}/ipkg/prerm.sh" >
2015-05-22 02:37:43 -04:00
<maintainer name= "Reinhard Pointner" email= "maintainer@filebot.net" />
2014-08-01 07:47:39 -04:00
<description synopsis= "The ultimate TV and Movie Renamer" > FileBot is the ultimate tool for renaming your movies, tv shows or anime and even downloading subtitles. It's smart, streamlined for simplicity and just works. Putting the super-efficient UI aside, it's also got a full-featured command-line interface and scripting engine for all sorts of automation. Anything is possible.</description>
<tarfileset fullpath= "opt/share/filebot/FileBot.jar" file= "${path.fatjar}" />
<tarfileset prefix= "opt/share/filebot/bin" file= "${dir.installer}/ipkg/filebot.sh" filemode= "755" />
</deb>
2015-04-05 03:15:43 -04:00
<move tofile= "${dir.dist}/filebot_${version}_noarch.ipk" file= "${staging.file.deb}" overwrite= "no" failonerror= "yes" />
2014-08-01 07:47:39 -04:00
<delete dir= "${ipkg.staging}" />
</target>
2016-09-19 04:32:49 -04:00
<target name= "appx" description= "Build Windows 10 package" depends= "revision" >
2016-09-19 03:41:40 -04:00
<copy tofile= "${dir.dist}/appx/FileBot.jar" file= "${path.fatjar}" />
<copy todir= "${dir.dist}/appx" >
<fileset dir= "${dir.installer}/appx" includes= "*.exe, *.ini, *.png" />
<fileset dir= "${dir.lib}/native/win32-x64" />
2016-09-19 04:50:10 -04:00
</copy>
<copy todir= "${dir.dist}/appx/jre" >
2016-09-19 04:03:56 -04:00
<tarfileset >
<gzipresource >
2016-09-20 02:40:38 -04:00
<file file= "${basedir.cache}/jre-${jre.major}u${jre.build}-windows-x64.tar.gz" />
2016-09-19 04:03:56 -04:00
</gzipresource>
</tarfileset>
2016-09-19 04:50:10 -04:00
<cutdirsmapper dirs= "1" />
2016-09-19 03:41:40 -04:00
</copy>
<!-- copy files and resolve ant variables -->
<copy todir= "${dir.dist}/appx" overwrite= "yes" encoding= "UTF-8" verbose= "true" >
<fileset dir= "${dir.installer}/appx" includes= "AppxManifest.xml" />
<filterset begintoken= "@{" endtoken= "}" >
<propertyset >
<propertyref builtin= "all" />
</propertyset>
</filterset>
</copy>
<exec executable= "makeappx" dir= "${dir.dist}" failonerror= "yes" >
2016-09-19 14:57:57 -04:00
<arg line= "pack /d appx /p ${title}_${version}_r${revision}.appx" />
2016-09-19 03:41:40 -04:00
</exec>
</target>
2016-09-19 04:32:49 -04:00
<target name= "msi" description= "Build Windows Installer packages" depends= "revision" >
2014-08-01 07:47:39 -04:00
<antcall target= "msi-arch" >
<param name= "arch" value= "x86" />
</antcall>
<antcall target= "msi-arch" >
<param name= "arch" value= "x64" />
</antcall>
2016-09-17 03:19:34 -04:00
2016-09-19 03:41:40 -04:00
<apply executable= "signtool" dir= "${dir.installer}/msi" parallel= "true" failonerror= "true" >
2016-09-17 03:19:34 -04:00
<arg line= "sign /fd SHA256 /t http://time.certum.pl/ /v /a" />
2016-09-17 03:21:31 -04:00
<srcfile />
2016-09-17 03:19:34 -04:00
<fileset dir= "${dir.dist}" includes= "*.msi" />
</apply>
2014-08-01 07:47:39 -04:00
</target>
2015-04-05 03:15:43 -04:00
2014-08-01 07:47:39 -04:00
<target name= "msi-arch" >
<property name= "jnidispatch" location= "${dir.lib}/native/win32-${arch}/jnidispatch.dll" />
<property name= "mediainfo" location= "${dir.lib}/native/win32-${arch}/MediaInfo.dll" />
<property name= "lib7z_binding" location= "${dir.lib}/native/win32-${arch}/7-Zip-JBinding.dll" />
<property name= "fpcalc_path" location= "${dir.lib}/native/win32-${arch}/fpcalc.exe" />
2016-09-17 02:53:14 -04:00
<property name= "installer" location= "${dir.dist}/${title}_${version}_${arch}.msi" />
2014-08-01 07:47:39 -04:00
2016-09-19 03:41:40 -04:00
<exec executable= "candle" dir= "${dir.installer}/msi" failonerror= "true" >
2016-09-23 11:57:47 -04:00
<arg line= "filebot-wix.xml -out ${dir.dist}/msi.wixobj -darch=${arch} -dreleaseversion=${version} -dfatjar=${path.fatjar} -djnidispatch=${jnidispatch} -dmediainfo=${mediainfo} -dlib7z_binding=${lib7z_binding} -dfpcalc_path=${fpcalc_path}" />
2014-08-01 07:47:39 -04:00
</exec>
2016-09-19 03:41:40 -04:00
<exec executable= "light" dir= "${dir.installer}/msi" failonerror= "true" >
2014-08-01 07:47:39 -04:00
<arg line= "${dir.dist}/msi.wixobj -sval -ext WixUIExtension -out ${installer}" />
</exec>
</target>
2016-09-19 04:32:49 -04:00
<target name= "portable" description= "Build portable package" depends= "revision" >
2014-08-01 07:47:39 -04:00
<mkdir dir= "${dir.dist}/portable" />
<copy file= "${path.fatjar}" tofile= "${dir.dist}/portable/FileBot.jar" />
<copy todir= "${dir.dist}/portable" >
<fileset dir= "${dir.installer}/portable" includes= "*.exe, *.ini, *.cmd, *.sh" />
</copy>
2016-09-17 02:53:14 -04:00
<cmp:xz destfile= "${dir.dist}/${title}_${version}-portable.tar.xz" >
<cmp:tar format= "gnu" encoding= "utf-8" >
<cmp:tarfileset dir= "${dir.dist}/portable" includes= "*.jar, *.exe, *.ini, *.cmd" />
<cmp:tarfileset dir= "${dir.dist}/portable" includes= "*.sh" filemode= "755" />
</cmp:tar>
</cmp:xz>
2014-08-01 07:47:39 -04:00
</target>
2016-09-19 04:32:49 -04:00
<target name= "spk" description= "Build Synology NAS package" depends= "revision" >
2016-10-24 18:08:39 -04:00
<spk destdir= "${dir.dist}" name= "filebot" version= "${version}" arch= "noarch" compression= "xz" >
2014-08-01 07:47:39 -04:00
<info name= "displayname" value= "FileBot" />
<info name= "description" value= "FileBot is the ultimate tool for organizing and renaming your movies, TV shows or anime, as well as downloading subtitles and artwork. It's smart and just works." />
2015-11-20 11:31:02 -05:00
<info name= "maintainer" value= "FileBot" />
2015-05-20 05:52:11 -04:00
<info name= "maintainer_url" value= "http://www.filebot.net/" />
2014-08-01 07:47:39 -04:00
<info name= "distributor" value= "FileBot" />
<info name= "distributor_url" value= "http://www.filebot.net/" />
2016-09-29 07:00:58 -04:00
<info name= "support_url" value= "http://www.filebot.net/syno/support.html" />
2014-08-01 07:47:39 -04:00
<info name= "helpurl" value= "http://www.filebot.net/cli.html" />
2016-10-25 15:55:57 -04:00
<info name= "firmware" value= "6.0" />
2015-05-16 00:52:25 -04:00
<info name= "startable" value= "no" />
<info name= "silent_install" value= "yes" />
<info name= "silent_uninstall" value= "yes" />
<info name= "silent_upgrade" value= "yes" />
<info name= "thirdparty" value= "yes" />
2016-09-29 07:00:58 -04:00
2016-09-29 07:37:23 -04:00
<!-- Dependencies are troublesome for some users because they cannot be skipped or ignored (i.e. DSM does not support optional or recommended dependencies) -->
2016-09-29 07:00:58 -04:00
<!-- <info name="start_dep_services" value="ssh" /> -->
<!-- <info name="install_dep_packages" value="oracle - java" /> -->
2014-08-01 07:47:39 -04:00
<icon size= "72" file= "${dir.installer}/icons/icon72.png" />
2015-05-03 11:57:56 -04:00
<icon size= "256" file= "${dir.installer}/icons/icon256.png" />
2015-05-05 09:48:16 -04:00
2014-08-01 07:47:39 -04:00
<scripts dir= "${dir.installer}/spk/scripts" filemode= "755" />
2015-05-16 01:35:51 -04:00
<package dir= "${dir.installer}/spk/package" includes= "*.sh" filemode= "755" />
<package file= "${path.fatjar}" fullpath= "FileBot.jar" />
2015-11-07 08:33:42 -05:00
<codesign secring= "${dir.installer}/gpg/secring.gpg" keyid= "${gpg.key}" password= "${gpg.pwd}" />
2014-08-01 07:47:39 -04:00
</spk>
</target>
2016-08-13 12:11:37 -04:00
<target name= "build" depends= "revision" >
2014-08-01 07:47:39 -04:00
<!-- compile -->
2016-05-12 09:45:42 -04:00
<javac srcdir= "${dir.source}" destdir= "${dir.build}" target= "1.8" source= "1.8" encoding= "utf-8" debug= "true" debuglevel= "lines,vars,source" includeAntRuntime= "false" >
2014-08-01 07:47:39 -04:00
<classpath >
2014-10-09 09:37:15 -04:00
<fileset dir= "${dir.lib}" includes= "**/*.jar" />
2014-08-01 07:47:39 -04:00
</classpath>
</javac>
<!-- copy resources -->
<copy todir= "${dir.build}" >
<fileset dir= "${dir.source}" >
<exclude name= "**/*.java" />
</fileset>
</copy>
<!-- update application properties -->
2015-06-02 07:46:12 -04:00
<replace dir= "${dir.build}" encoding= "UTF-8" summary= "yes" >
2014-08-01 07:47:39 -04:00
<include name= "**/*.properties" />
2016-04-20 12:57:03 -04:00
<replacefilter token= "@{revision}" value= "${revision}" />
2014-08-01 07:47:39 -04:00
<replacefilter token= "@{version}" value= "${version}" />
</replace>
</target>
2016-08-05 12:35:35 -04:00
<target name= "clean" description= "Delete build folders" >
2014-08-01 07:47:39 -04:00
<delete dir= "${dir.dist}" />
<delete dir= "${dir.build}" />
</target>
2016-09-19 05:09:47 -04:00
<target name= "revision" depends= "init" >
2016-04-20 12:57:03 -04:00
<exec executable= "git" outputproperty= "revision" failonerror= "true" >
<arg line= "rev-list --count master" />
</exec>
<echo > Revision: ${revision}</echo>
2014-08-01 07:47:39 -04:00
</target>
2016-09-19 05:09:47 -04:00
<target name= "init" >
<mkdir dir= "${dir.build}" />
<mkdir dir= "${dir.dist}" />
<mkdir dir= "${dir.release}" />
2016-09-20 02:40:38 -04:00
<mkdir dir= "${dir.cache}" />
2016-09-19 05:09:47 -04:00
2016-09-19 04:32:49 -04:00
<path id= "lib.classpath" >
<fileset dir= "${dir.lib}" includes= "**/*.jar" excludes= "**/*-jdk14.jar" />
</path>
<taskdef uri= "antlib:org.apache.ant.compress" resource= "org/apache/ant/compress/antlib.xml" classpathref= "lib.classpath" />
<taskdef resource= "net/filebot/ant/spk/antlib.xml" classpathref= "lib.classpath" />
<taskdef resource= "com/googlecode/ant_deb_task/antlib.xml" classpathref= "lib.classpath" />
<taskdef name= "bundleapp" classname= "com.oracle.appbundler.AppBundlerTask" classpathref= "lib.classpath" />
</target>
2016-08-13 12:11:37 -04:00
<target name= "stage-release" depends= "fatjar, portable, spk, ipkg, deb, msi, appbundle" >
2016-09-19 05:09:47 -04:00
<!-- ensure clean release dir -->
2014-08-01 07:47:39 -04:00
<delete dir= "${dir.release}" />
<mkdir dir= "${dir.release}" />
<!-- prepare release packages -->
<copy todir= "${dir.release}" preservelastmodified= "yes" verbose= "yes" >
<path path= "${path.fatjar}" />
<fileset dir= "${dir.dist}" >
2016-09-17 02:53:14 -04:00
<include name= "*.tar.xz" />
<include name= "*.msi" />
2014-08-01 07:47:39 -04:00
<include name= "*.deb" />
<include name= "*.ipk" />
<include name= "*.spk" />
</fileset>
</copy>
2015-06-15 15:25:17 -04:00
2016-09-20 02:40:38 -04:00
<checksum algorithm= "SHA-256" pattern= "{0} {1}" todir= "${dir.cache}" fileext= ".sha256" >
2015-06-15 15:25:17 -04:00
<fileset dir= "${dir.release}" />
</checksum>
2015-11-14 14:25:06 -05:00
<concat destfile= "${dir.release}/README.md" overwrite= "true" eol= "unix" outputencoding= "UTF-8" >
2015-10-22 01:59:42 -04:00
<fileset file= "${dir.installer}/ant/digest.header.md" />
2016-09-20 02:40:38 -04:00
<fileset dir= "${dir.cache}" includes= "*.sha256" />
2015-10-22 01:59:42 -04:00
<fileset file= "${dir.installer}/ant/digest.footer.md" />
2015-06-15 15:25:17 -04:00
</concat>
2014-08-01 07:47:39 -04:00
</target>
2016-08-05 12:35:35 -04:00
<target name= "deploy-release" depends= "stage-release" description= "Upload release files to SourceForge.net FRS" >
2016-04-03 16:11:52 -04:00
<scp todir= "${deploy.release}" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" >
2015-11-14 14:25:06 -05:00
<!-- make sure to upload README.md first -->
<fileset dir= "${basedir.release}" includes= "**/README.md" >
2016-01-30 15:07:06 -05:00
<date datetime= "${tstamp.date}" pattern= "yyyy-MM-dd" when= "after" />
2015-11-14 14:25:06 -05:00
</fileset>
</scp>
2016-04-03 16:11:52 -04:00
<scp todir= "${deploy.release}" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" >
2014-08-01 07:47:39 -04:00
<!-- upload starting with parent folders so scp will create the release folder for us -->
2015-11-14 14:25:06 -05:00
<fileset dir= "${basedir.release}" excludes= "**/README.md" >
2016-01-30 15:07:06 -05:00
<date datetime= "${tstamp.date}" pattern= "yyyy-MM-dd" when= "after" />
2014-08-01 07:47:39 -04:00
</fileset>
</scp>
</target>
2016-10-19 01:57:42 -04:00
<target name= "deploy-website" description= "Upload website resources" depends= "init" >
2016-10-19 01:41:04 -04:00
<!-- copy image resources -->
<copy todir= "${dir.dist}/website/resources" preservelastmodified= "yes" verbose= "yes" flatten= "true" >
2016-10-19 01:43:08 -04:00
<fileset dir= "${dir.source}/net/filebot/resources" >
<include name= "*.png" />
2016-10-19 01:41:04 -04:00
</fileset>
</copy>
2015-05-10 03:29:54 -04:00
<!-- copy static website resources -->
2015-06-05 03:35:50 -04:00
<copy todir= "${dir.dist}/website" preservelastmodified= "yes" verbose= "yes" >
2014-08-01 07:47:39 -04:00
<fileset dir= "${dir.website}" >
2016-04-03 00:41:20 -04:00
<include name= ".htaccess" />
2015-05-10 03:29:54 -04:00
<include name= "*.html" />
<include name= "*.php" />
2014-08-01 07:47:39 -04:00
<include name= "*.json" />
<include name= "*.xml" />
<include name= "*.css" />
<include name= "*.js" />
<include name= "*.png" />
<include name= "*.ico" />
2014-10-07 11:16:46 -04:00
<include name= "*.txt" />
2016-04-03 00:51:39 -04:00
<include name= "syno/**" />
2014-12-22 11:10:07 -05:00
<include name= "images/**" />
<include name= "screenshots/**" />
2015-05-09 05:56:35 -04:00
<include name= "getting-started/**" />
2014-08-01 07:47:39 -04:00
</fileset>
</copy>
2015-05-16 00:52:25 -04:00
2015-05-10 03:29:54 -04:00
<!-- copy files and resolve ant variables -->
<copy todir= "${dir.dist}/website" overwrite= "yes" encoding= "UTF-8" verbose= "true" >
<fileset dir= "${dir.website}" >
<include name= "*.html" />
<include name= "*.php" />
</fileset>
<filterset begintoken= "@{" endtoken= "}" >
<propertyset >
<propertyref builtin= "all" />
</propertyset>
</filterset>
</copy>
2014-08-01 07:47:39 -04:00
2016-04-03 00:41:20 -04:00
<!-- upload -->
2016-04-03 16:11:52 -04:00
<scp todir= "${deploy.website}" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" >
2016-04-03 00:41:20 -04:00
<fileset dir= "${dir.dist}/website" >
<modified >
2016-09-20 02:40:38 -04:00
<param name= "cache.cachefile" value= "${basedir.cache}/scp.cache" />
2016-04-03 00:41:20 -04:00
</modified>
</fileset>
</scp>
</target>
2016-04-03 00:43:45 -04:00
<target name= "deploy-synology" description= "Update Synology Package Source" >
2016-04-03 00:51:39 -04:00
<mkdir dir= "${dir.dist}/website/syno" />
2016-04-03 00:41:20 -04:00
2015-10-06 14:37:27 -04:00
<!-- merge all filebot related packages into a single package source file -->
2015-05-20 05:52:11 -04:00
<package-source file= "${dir.dist}/website/syno/index.json" >
<keyring file= "${dir.installer}/gpg/FileBot.pub" />
2015-12-09 11:42:54 -05:00
<spk file= "${dir.release}/filebot-${version}-noarch.spk" >
<info name= "link" value= "http://downloads.sourceforge.net/project/filebot/filebot/FileBot_${version}/filebot-${version}-noarch.spk" />
2015-05-20 15:41:18 -04:00
<thumbnail url= "http://app.filebot.net/syno/filebot-thumbnail.png" />
<snapshot url= "http://app.filebot.net/syno/filebot-snapshot.png" />
2015-05-20 05:52:11 -04:00
</spk>
2015-12-09 11:42:54 -05:00
<source url= "https://raw.githubusercontent.com/filebot/filebot-node/master/spksrc.json" />
<source url= "https://raw.githubusercontent.com/rednoah/java-installer/master/spksrc.json" />
2015-12-09 18:30:12 -05:00
<source url= "https://raw.githubusercontent.com/rednoah/ant-installer/master/spksrc.json" />
2015-05-20 05:52:11 -04:00
</package-source>
2014-08-01 07:47:39 -04:00
<!-- upload -->
2016-04-03 16:11:52 -04:00
<scp todir= "${deploy.website}/syno" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" >
2016-04-03 00:51:39 -04:00
<fileset dir= "${dir.dist}/website/syno" >
<include name= "*.json" />
</fileset>
2014-08-01 07:47:39 -04:00
</scp>
</target>
2016-04-03 00:41:20 -04:00
<target name= "deploy-chocolatey" description= "Update Chocolatey Package Source" >
2015-06-02 07:52:45 -04:00
<!-- prepare sha1 checksums -->
2016-09-17 02:53:14 -04:00
<checksum property= "x86.msi.sha256" file= "${dir.release}/${title}_${version}_x86.msi" algorithm= "SHA-256" />
<checksum property= "x64.msi.sha256" file= "${dir.release}/${title}_${version}_x64.msi" algorithm= "SHA-256" />
2015-06-02 07:46:12 -04:00
2014-08-01 07:47:39 -04:00
<!-- replace variables for new release -->
2015-06-02 07:52:45 -04:00
<copy todir= "${dir.dist}/chocolatey" overwrite= "yes" encoding= "UTF-8" verbose= "true" >
<fileset dir= "${dir.installer}/chocolatey" >
<include name= "**/*.ps1" />
<include name= "**/*.nuspec" />
</fileset>
2015-06-02 07:46:06 -04:00
<filterset begintoken= "@{" endtoken= "}" >
<propertyset >
<propertyref builtin= "all" />
</propertyset>
</filterset>
2015-06-02 07:52:45 -04:00
</copy>
2014-08-01 07:47:39 -04:00
2015-06-02 07:52:45 -04:00
<!-- chocolatey pack and push -->
2016-09-19 03:41:40 -04:00
<exec executable= "chocolatey" dir= "${dir.dist}\chocolatey" failonerror= "true" >
2015-06-02 07:46:06 -04:00
<arg value= "pack" />
2014-08-01 07:47:39 -04:00
</exec>
2016-09-19 03:41:40 -04:00
<exec executable= "chocolatey" dir= "${dir.dist}\chocolatey" failonerror= "true" >
2015-06-02 07:46:06 -04:00
<arg value= "push" />
<arg value= "${dir.dist}\chocolatey\filebot.${version}.nupkg" />
2014-08-01 07:47:39 -04:00
</exec>
</target>
2016-10-19 01:57:42 -04:00
<target name= "upload-data" description= "Upload data files" depends= "init" >
2016-04-03 16:11:52 -04:00
<scp todir= "${deploy.website}" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" >
2014-08-01 07:47:39 -04:00
<fileset dir= "${dir.website}" >
<include name= "data/*.txt" />
<include name= "data/*.xz" />
2016-05-26 15:07:05 -04:00
<modified >
2016-09-20 02:40:38 -04:00
<param name= "cache.cachefile" value= "${basedir.cache}/scp.cache" />
2016-05-26 15:07:05 -04:00
</modified>
2014-08-01 07:47:39 -04:00
</fileset>
</scp>
</target>
2016-08-13 12:11:37 -04:00
<target name= "deploy-beta-jar" depends= "fatjar" description= "Build and deploy the latest jar" >
2016-10-24 15:19:59 -04:00
<cmp:xz srcfile= "${path.fatjar}" destfile= "${path.fatjar}.xz" />
2016-10-24 13:48:59 -04:00
<scp file= "${path.fatjar}.xz" remoteTofile= "${deploy.release}/HEAD/filebot-r${revision}.jar.xz" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" />
<scp file= "${path.fatjar}.xz" remoteTofile= "${deploy.release}/HEAD/FileBot.jar.xz" trust= "yes" verbose= "true" sftp= "true" keyfile= "${deploy.keyfile}" />
2014-08-01 07:47:39 -04:00
</target>
2016-08-05 12:35:35 -04:00
<target name= "deploy-beta-release" description= "Build and deploy the latest release files" >
2016-04-03 00:41:20 -04:00
<input addproperty= "mark" message= "Mark:" />
2014-08-01 07:47:39 -04:00
<antcall target= "deploy-release" >
<param name= "dir.release" location= "${basedir.release}/HEAD/${title}_${version}_${mark}" />
2016-09-20 02:40:38 -04:00
<param name= "dir.cache" location= "${basedir.cache}/HEAD/${title}_${version}_${mark}" />
2014-08-01 07:47:39 -04:00
</antcall>
</target>
</project>