mirror of
https://github.com/mitb-archive/filebot
synced 2025-03-09 22:09:47 -04:00
Refactor MSI build (heat, candle, light, F*CK THIS SHIT)
This commit is contained in:
parent
95f8d08575
commit
28cc439bfc
46
build.xml
46
build.xml
@ -644,12 +644,11 @@
|
||||
</target>
|
||||
|
||||
|
||||
<target name="msi" description="Build Windows Installer packages" depends="revision">
|
||||
<target name="msi" description="Build Windows Installer packages" depends="">
|
||||
<antcall target="msi-arch">
|
||||
<param name="arch" value="x64" />
|
||||
</antcall>
|
||||
<antcall target="msi-arch">
|
||||
<param name="arch" value="x86" />
|
||||
<param name="arch.env" value="AMD64" />
|
||||
<param name="arch.jre" value="x64" />
|
||||
</antcall>
|
||||
</target>
|
||||
|
||||
@ -657,24 +656,51 @@
|
||||
<target name="msi-arch">
|
||||
<property name="dir.staging" location="${dir.dist}/msi/${arch}" />
|
||||
|
||||
<exec executable="powershell" dir="${dir.cache}" failonerror="yes">
|
||||
<env key="PROCESSOR_ARCHITECTURE" value="${arch.env}" />
|
||||
<arg line="get-java" />
|
||||
</exec>
|
||||
<untar src="${dir.cache}/jre-${jre.version}_windows-${arch.jre}_bin.tar.gz" dest="${dir.staging}/jre" compression="gzip">
|
||||
<patternset>
|
||||
<exclude name="**/dtplugin/**" />
|
||||
<exclude name="**/plugin2/**" />
|
||||
<exclude name="**/jfxwebkit.dll" />
|
||||
</patternset>
|
||||
<cutdirsmapper dirs="1" />
|
||||
</untar>
|
||||
|
||||
<copy todir="${dir.staging}/jar">
|
||||
<fileset dir="${dir.dist}/lib" includes="*.jar" />
|
||||
</copy>
|
||||
<copy todir="${dir.staging}/lib">
|
||||
<fileset dir="${dir.lib}/native/win32-${arch}" />
|
||||
</copy>
|
||||
|
||||
<exec executable="heat" dir="${dir.staging}" failonerror="true">
|
||||
<arg line="dir . -v -srd -gg -dr ApplicationBase -cg ApplicationBase -template fragment -sreg -sfrag -scom -out base.wxs" />
|
||||
</exec>
|
||||
<exec executable="candle" dir="${dir.staging}" failonerror="true">
|
||||
<arg line="base.wxs -out base.wixobj" />
|
||||
</exec>
|
||||
|
||||
|
||||
|
||||
<copy todir="${dir.staging}">
|
||||
<fileset dir="${dir.installer}/msi" includes="*.exe, *.rtf, *.bmp" />
|
||||
</copy>
|
||||
<copy todir="${dir.staging}">
|
||||
<fileset dir="${dir.lib}/native/win32-${arch}" />
|
||||
</copy>
|
||||
<copy todir="${dir.staging}">
|
||||
<fileset dir="${dir.installer}/icons" includes="*.ico" />
|
||||
</copy>
|
||||
<copy-replace todir="${dir.staging}">
|
||||
<fileset dir="${dir.installer}/msi" includes="*.wix, *.ini, *.properties" />
|
||||
<fileset dir="${dir.installer}/msi" includes="*.wix, *.ini" />
|
||||
</copy-replace>
|
||||
|
||||
|
||||
<exec executable="candle" dir="${dir.staging}" failonerror="true">
|
||||
<arg line="filebot.wix -out msi.wixobj" />
|
||||
<arg line="filebot.wix -out filebot.wixobj" />
|
||||
</exec>
|
||||
<exec executable="light" dir="${dir.staging}" failonerror="true">
|
||||
<arg line="msi.wixobj -sval -ext WixUIExtension -out ${dir.dist}/${release}_${arch}.msi" />
|
||||
<arg line="filebot.wixobj base.wixobj -sval -ext WixUIExtension -out ${dir.dist}/${release}_${arch}.msi" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
|
@ -16,20 +16,17 @@
|
||||
-DuseCreationDate=false
|
||||
|
||||
# look for executables in the application folder
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\fpcalc.exe"
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\lib\fpcalc.exe"
|
||||
|
||||
# look for native libraries in the application folder
|
||||
-Djna.library.path="%EXEDIR%"
|
||||
-Djna.boot.library.path="%EXEDIR%"
|
||||
-Djava.library.path="%EXEDIR%"
|
||||
-Djna.library.path="%EXEDIR%\lib"
|
||||
-Djna.boot.library.path="%EXEDIR%\lib"
|
||||
-Djava.library.path="%EXEDIR%\lib"
|
||||
|
||||
# make sure to use the bundled JNA library
|
||||
-Djna.nosys=true
|
||||
-Djna.nounpack=true
|
||||
|
||||
# reduce default logging
|
||||
-Djava.util.logging.config.file="%EXEDIR%\logging.properties"
|
||||
|
||||
# support JAVA_OPTS environment variable
|
||||
%JAVA_OPTS%
|
||||
|
||||
|
@ -16,20 +16,17 @@
|
||||
-DuseCreationDate=false
|
||||
|
||||
# look for executables in the application folder
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\fpcalc.exe"
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\lib\fpcalc.exe"
|
||||
|
||||
# look for native libraries in the application folder
|
||||
-Djna.library.path="%EXEDIR%"
|
||||
-Djna.boot.library.path="%EXEDIR%"
|
||||
-Djava.library.path="%EXEDIR%"
|
||||
-Djna.library.path="%EXEDIR%\lib"
|
||||
-Djna.boot.library.path="%EXEDIR%\lib"
|
||||
-Djava.library.path="%EXEDIR%\lib"
|
||||
|
||||
# make sure to use the bundled JNA library
|
||||
-Djna.nosys=true
|
||||
-Djna.nounpack=true
|
||||
|
||||
# reduce default logging
|
||||
-Djava.util.logging.config.file="%EXEDIR%\logging.properties"
|
||||
|
||||
# support JAVA_OPTS environment variable
|
||||
%JAVA_OPTS%
|
||||
|
||||
|
@ -20,20 +20,17 @@
|
||||
-DuseCreationDate=false
|
||||
|
||||
# look for executables in the application folder
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\fpcalc.exe"
|
||||
-Dnet.filebot.AcoustID.fpcalc="%EXEDIR%\lib\fpcalc.exe"
|
||||
|
||||
# look for native libraries in the application folder
|
||||
-Djna.library.path="%EXEDIR%"
|
||||
-Djna.boot.library.path="%EXEDIR%"
|
||||
-Djava.library.path="%EXEDIR%"
|
||||
-Djna.library.path="%EXEDIR%\lib"
|
||||
-Djna.boot.library.path="%EXEDIR%\lib"
|
||||
-Djava.library.path="%EXEDIR%\lib"
|
||||
|
||||
# make sure to use the bundled JNA library
|
||||
-Djna.nosys=true
|
||||
-Djna.nounpack=true
|
||||
|
||||
# reduce default logging
|
||||
-Djava.util.logging.config.file="%EXEDIR%\logging.properties"
|
||||
|
||||
# use Java implementation for extracting archives
|
||||
-Dnet.filebot.Archive.extractor="ApacheVFS"
|
||||
|
||||
|
@ -40,30 +40,25 @@
|
||||
<ShortcutProperty Key="System.AppUserModel.ID" Value="@{application.name}" />
|
||||
</Shortcut>
|
||||
</File>
|
||||
|
||||
<File Id='filebot.platform.launcher.exe' Name='filebot.platform.launcher.exe' Source='filebot.platform.launcher.exe'>
|
||||
<Shortcut Id="shortcut.menu.filebot.platform" Directory="ProgramMenuDir" Name="FileBot (platform)" Description="Launch FileBot with platform-independent configuration" WorkingDirectory='INSTALLDIR' Icon="icon.ico" IconIndex="0" Advertise="no" />
|
||||
</File>
|
||||
|
||||
<File Id='filebot.exe' Name='filebot.exe' Source='filebot.exe'>
|
||||
<Shortcut Id="shortcut.menu.filebot.cmd" Directory="ProgramMenuDir" Name="FileBot (console)" Description="Launch FileBot with debug logging" WorkingDirectory='INSTALLDIR' />
|
||||
</File>
|
||||
|
||||
<File Id='filebot.launcher.l4j.ini' Name='filebot.launcher.l4j.ini' Source='filebot.launcher.l4j.ini' />
|
||||
<File Id='filebot.platform.launcher.l4j.ini' Name='filebot.platform.launcher.l4j.ini' Source='filebot.platform.launcher.l4j.ini' />
|
||||
<File Id='filebot.l4j.ini' Name='filebot.l4j.ini' Source='filebot.l4j.ini' />
|
||||
|
||||
<Environment Id="PATH" Name="PATH" Value="[INSTALLDIR]" Action="set" Part="last" Permanent="no" System="yes" />
|
||||
|
||||
<Shortcut Id="shortcut.uninstall" Directory="ProgramMenuDir" Name="Uninstall FileBot" Description="Uninstall FileBot" Icon="icon.ico" Target="[SystemFolder]msiexec.exe" Arguments="/x [ProductCode]" Advertise="no" />
|
||||
</Component>
|
||||
|
||||
<Component Id='ApplicationStubCmd' Guid='D2B1A845-3B5C-4B59-B0D0-A4E80C173220' Win64="$(var.Win64)">
|
||||
<File Id='filebot.exe' Name='filebot.exe' Source='filebot.exe' KeyPath='yes'>
|
||||
<Shortcut Id="shortcut.menu.filebot.cmd" Directory="ProgramMenuDir" Name="FileBot (console)" Description="Launch FileBot with debug logging" WorkingDirectory='INSTALLDIR' />
|
||||
</File>
|
||||
<File Id='filebot.l4j.ini' Name='filebot.l4j.ini' Source='filebot.l4j.ini' />
|
||||
<Environment Id="PATH" Name="PATH" Value="[INSTALLDIR]" Action="set" Part="last" Permanent="no" System="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id='ApplicationBase' Guid='9E365344-A00C-45DE-A2A4-266412C3D06E' Win64="$(var.Win64)">
|
||||
<File Id='FileBot.jar' Name='FileBot.jar' Source='@{path.fatjar}' KeyPath='yes' />
|
||||
<File Id='logging.properties' Name='logging.properties' Source='logging.properties' />
|
||||
<File Id='jnidispatch.dll' Name='jnidispatch.dll' Source='jnidispatch.dll' />
|
||||
<File Id='MediaInfo.dll' Name='MediaInfo.dll' Source='MediaInfo.dll' />
|
||||
<File Id='lib7_Zip_JBinding.dll' Name='7-Zip-JBinding.dll' Source='7-Zip-JBinding.dll' />
|
||||
<File Id='fpcalc.exe' Name='fpcalc.exe' Source='fpcalc.exe' />
|
||||
</Component>
|
||||
<Directory Id="ApplicationBase" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
@ -81,9 +76,8 @@
|
||||
|
||||
|
||||
<Feature Id='Complete' Title='FileBot' Description='The complete package.' Display='expand' ConfigurableDirectory='INSTALLDIR' Level='1'>
|
||||
<ComponentGroupRef Id='ApplicationBase' />
|
||||
<ComponentRef Id='ApplicationStub' />
|
||||
<ComponentRef Id='ApplicationStubCmd' />
|
||||
<ComponentRef Id='ApplicationBase' />
|
||||
<ComponentRef Id='ProgramMenuDir' />
|
||||
</Feature>
|
||||
|
||||
|
@ -1,12 +0,0 @@
|
||||
# Default global handler
|
||||
handlers= java.util.logging.ConsoleHandler
|
||||
|
||||
# Default global logging level
|
||||
.level= WARNING
|
||||
|
||||
# Limit messages that printed on the console to WARNING and above
|
||||
java.util.logging.ConsoleHandler.level = WARNING
|
||||
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
|
||||
|
||||
# Suppress WindowsPreferences logging
|
||||
java.util.prefs.level = SEVERE
|
@ -1 +0,0 @@
|
||||
signtool sign /fd SHA256 /t http://time.certum.pl/ /v /a *.exe ../portable/*.exe ../appx/*.exe
|
Loading…
x
Reference in New Issue
Block a user