diff --git a/README.md b/README.md index e173ae9e7..f009c4235 100644 --- a/README.md +++ b/README.md @@ -16,12 +16,16 @@ Prerequisites: 2. The June 2010 DirectX SDK (the final release before DirectSound was dropped) 3. Python 3 4. Meson +5. CMake +6. Powershell execution policy set to Unrestricted -There are a few optional dependencies: +There are a few optional dependencies that must be installed and on your PATH: 1. msgfmt, to build the translations 2. WinRAR, to build the portable installer 3. InnoSetup, to build the regular installer +4. 7zip, to build the regular installer +5. Moonscript, to build the regular installer All other dependencies are either stored in the repository or are included as submodules. @@ -35,7 +39,7 @@ You should now have a binary at `src/aegisub.exe`. Installer: -You can generate the installer with `ninja win-installer` after a successful build. This assumes you have InnoSetup present on your `PATH` and a working internet connection. +You can generate the installer with `ninja win-installer` after a successful build. This assumes a working internet connection and installation of the optional dependencies. ### OS X diff --git a/packages/meson.build b/packages/meson.build index 41676bfb2..d2298cd27 100644 --- a/packages/meson.build +++ b/packages/meson.build @@ -1,6 +1,9 @@ conf_pkg = configuration_data() if host_machine.system() == 'windows' + installer_setup = find_program(meson.source_root() / 'tools/win-installer-setup.ps1', ) + run_target('win-installer', + command: [installer_setup, meson.build_root(), meson.source_root()]) elif host_machine.system() == 'darwin' # temporary hack until version.sh generates this properly run_command('cp', meson.source_root() / 'tools' / 'osx-bundle.sed', meson.build_root()) diff --git a/packages/win_installer/aegisub3.iss b/packages/win_installer/aegisub3.iss index 4ca458efc..61960ad36 100644 --- a/packages/win_installer/aegisub3.iss +++ b/packages/win_installer/aegisub3.iss @@ -1,37 +1,3 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - #define ARCH 64 #include "fragment_setupbase.iss" @@ -88,4 +54,3 @@ begin False); end; end; - diff --git a/packages/win_installer/aegisub_depctrl.iss b/packages/win_installer/aegisub_depctrl.iss index 069eac029..0cc857265 100644 --- a/packages/win_installer/aegisub_depctrl.iss +++ b/packages/win_installer/aegisub_depctrl.iss @@ -1,3 +1,5 @@ #define DEPCTRL +;#define UNOFFICIAL_LANGUAGES +;#define ENABLE_TRANSLATIONS #include "aegisub3.iss" diff --git a/packages/win_installer/dictionaries/fragment_dictbase.iss b/packages/win_installer/dictionaries/fragment_dictbase.iss index 5d694f98c..6f07dcc37 100644 --- a/packages/win_installer/dictionaries/fragment_dictbase.iss +++ b/packages/win_installer/dictionaries/fragment_dictbase.iss @@ -1,37 +1,3 @@ -; Copyright (c) 2011, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - [Setup] AppID={{24BC8B57-716C-444F-B46B-A3349B9164C5} AppName=Aegisub @@ -75,7 +41,6 @@ WelcomeLabel2=This will install {#LANGNAME} dictionaries for Aegisub 3.0 on your DestDir: {tmp}; Flags: dontcopy; Source: welcome.bmp DestDir: {tmp}; Flags: dontcopy; Source: aegisub.bmp - [Code] #include "..\fragment_shell_code.iss" #include "..\fragment_beautify_code.iss" diff --git a/packages/win_installer/dictionaries/fragment_stddict.iss b/packages/win_installer/dictionaries/fragment_stddict.iss index 7b7ee1924..acad697be 100644 --- a/packages/win_installer/dictionaries/fragment_stddict.iss +++ b/packages/win_installer/dictionaries/fragment_stddict.iss @@ -1,44 +1,9 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - #include "fragment_dictbase.iss" [Setup] OutputBaseFilename=Aegisub-3.0-dict-{#LANGCODE} VersionInfoDescription=Aegisub 3.0 {#LANGNAME} dictionary - [Files] Source: src\dictionaries\{#LANGCODE}.aff; DestDir: {app}\dictionaries; Flags: ignoreversion; Components: dic/{#LANGCODE} Source: src\dictionaries\{#LANGCODE}.dic; DestDir: {app}\dictionaries; Flags: ignoreversion; Components: dic/{#LANGCODE} @@ -54,4 +19,3 @@ Name: dic/{#LANGCODE}; Description: {#LANGNAME} dictionary; Types: full Name: th; Description: Thesaurus; Types: full Name: th/{#LANGCODE}; Description: {#LANGNAME} thesaurus; Types: full #endif - diff --git a/packages/win_installer/fragment_associations.iss b/packages/win_installer/fragment_associations.iss index 113b42dce..15567fb61 100644 --- a/packages/win_installer/fragment_associations.iss +++ b/packages/win_installer/fragment_associations.iss @@ -1,37 +1,3 @@ -; Copyright (c) 2007-2011, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - [Files] DestDir: {commontemplates}; Source: template.ass; DestName: Aegisub.ass diff --git a/packages/win_installer/fragment_automation.iss b/packages/win_installer/fragment_automation.iss index 4b224aad7..c754c4752 100644 --- a/packages/win_installer/fragment_automation.iss +++ b/packages/win_installer/fragment_automation.iss @@ -1,79 +1,48 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - ; This file declares all installables related to Aegisub Automation [Files] -DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled -DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\karaoke-auto-leadin.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled -DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled -DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled -DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\strip-tags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled +DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled +DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\karaoke-auto-leadin.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled +DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled +DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled +DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\strip-tags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled -DestDir: {app}\automation\demos; Source: ..\..\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos -DestDir: {app}\automation\demos; Source: ..\..\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos +DestDir: {app}\automation\demos; Source: {#SOURCE_ROOT}\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos +DestDir: {app}\automation\demos; Source: {#SOURCE_ROOT}\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -DestDir: {app}\automation\include; Source: ..\..\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main +DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main -; DepCtrl #ifdef DEPCTRL -DestDir: {userappdata}\Aegisub\automation\include\l0; Source: vendor\DependencyControl\modules\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl -DestDir: {userappdata}\Aegisub\automation\autoload; Source: vendor\DependencyControl\macros\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl -DestDir: {userappdata}\Aegisub\automation\include; Source: vendor\Yutils\src\Yutils.lua; Flags: ignoreversion; Components: macros\modules\yutils -DestDir: {userappdata}\Aegisub\automation\include; Source: vendor\ffi-experiments\luajson\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\luajson -DestDir: {userappdata}\Aegisub\automation\include\requireffi; Source: vendor\ffi-experiments\requireffi\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +; DepCtrl +DestDir: {userappdata}\Aegisub\automation\include\l0; Source: {#DEPS_DIR}\DependencyControl\modules\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\autoload; Source: {#DEPS_DIR}\DependencyControl\macros\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include; Source: {#DEPS_DIR}\Yutils\src\Yutils.lua; Flags: ignoreversion; Components: macros\modules\yutils +DestDir: {userappdata}\Aegisub\automation\include; Source: {#DEPS_DIR}\luajson\lua\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\luajson -DestDir: {userappdata}\Aegisub\automation\include; Source: vendor\ffi-experiments\BadMutex\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl -DestDir: {userappdata}\Aegisub\automation\include; Source: vendor\ffi-experiments\PreciseTimer\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl -DestDir: {userappdata}\Aegisub\automation\include; Source: vendor\ffi-experiments\DownloadManager\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\requireffi; Source: {#DEPS_DIR}\ffi-experiments\build\requireffi\requireffi.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\BM\BadMutex; Source: {#DEPS_DIR}\ffi-experiments\build\bad-mutex\BadMutex.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\BM; Source: {#DEPS_DIR}\ffi-experiments\build\bad-mutex\BadMutex.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\PT\PreciseTimer; Source: {#DEPS_DIR}\ffi-experiments\build\precise-timer\PreciseTimer.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\PT; Source: {#DEPS_DIR}\ffi-experiments\build\precise-timer\PreciseTimer.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\DM\DownloadManager; Source: {#DEPS_DIR}\ffi-experiments\build\download-manager\DownloadManager.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl +DestDir: {userappdata}\Aegisub\automation\include\DM; Source: {#DEPS_DIR}\ffi-experiments\build\download-manager\DownloadManager.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl [Dirs] Name: {userappdata}\Aegisub\automation\test\DepUnit\automation; Components: macros\modules\depctrl; diff --git a/packages/win_installer/fragment_beautify_code.iss b/packages/win_installer/fragment_beautify_code.iss index 25552ecdd..9e7155b91 100644 --- a/packages/win_installer/fragment_beautify_code.iss +++ b/packages/win_installer/fragment_beautify_code.iss @@ -1,41 +1,4 @@ [Code] -(* -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; -*) - - function SHAutoComplete(hWnd: Integer; dwFlags: DWORD): Integer; external 'SHAutoComplete@shlwapi.dll stdcall delayload'; const @@ -81,4 +44,3 @@ begin Log('Could not add autocomplete to dir edit box'); end; end; - diff --git a/packages/win_installer/fragment_codecs.iss b/packages/win_installer/fragment_codecs.iss index 5951f8ddd..06e73b037 100644 --- a/packages/win_installer/fragment_codecs.iss +++ b/packages/win_installer/fragment_codecs.iss @@ -1,41 +1,7 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - [Files] ; Avisynth -DestDir: {app}; Source: vendor\AvisynthPlus64\devil.dll; Flags: ignoreversion; Components: main -DestDir: {app}; Source: vendor\AvisynthPlus64\avisynth.dll; Flags: ignoreversion; Components: main -DestDir: {app}; Source: vendor\AvisynthPlus64\DirectShowSource.dll; Flags: ignoreversion; Components: main +DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\system\DevIL.dll; Flags: ignoreversion; Components: main +DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\AviSynth.dll; Flags: ignoreversion; Components: main +DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\plugins\DirectShowSource.dll; Flags: ignoreversion; Components: main ; VSFilter -DestDir: {app}\csri; Source: vendor\xy-vsfilter\xy-vsfilter-aegisub64.dll; Flags: ignoreversion; Components: main +DestDir: {app}\csri; Source: {#DEPS_DIR}\VSFilter\x64\VSFilter.dll; Flags: ignoreversion; Components: main diff --git a/packages/win_installer/fragment_mainprogram.iss b/packages/win_installer/fragment_mainprogram.iss index 0eed59a86..003efde7d 100644 --- a/packages/win_installer/fragment_mainprogram.iss +++ b/packages/win_installer/fragment_mainprogram.iss @@ -1,37 +1,3 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - [Components] Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed Name: "macros"; Description: "Automation Scripts"; Types: full @@ -53,8 +19,8 @@ Name: "checkforupdates"; Description: "{cm:CheckForUpdates}"; GroupDescription: [Files] ; main -DestDir: {app}; Source: ..\..\bin\aegisub{#ARCH}.exe; Flags: ignoreversion; Components: main -DestDir: {app}; Source: license.txt; Flags: ignoreversion; Components: main +DestDir: {app}; Source: "{#BUILD_ROOT}\src\aegisub.exe"; Flags: ignoreversion; Components: main +DestDir: {app}; Source: "{#INSTALLER_DIR}\license.txt"; Flags: ignoreversion; Components: main [Icons] Name: {commonprograms}\Aegisub; Filename: {app}\aegisub{#ARCH}.exe; WorkingDir: {app}; IconIndex: 0; Tasks: startmenuicon; Comment: Create and edit subtitle files diff --git a/packages/win_installer/fragment_migrate_code.iss b/packages/win_installer/fragment_migrate_code.iss index 7be07c916..ff655154f 100644 --- a/packages/win_installer/fragment_migrate_code.iss +++ b/packages/win_installer/fragment_migrate_code.iss @@ -1,41 +1,4 @@ [Code] -(* -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; -*) - - var HasLegacyVersion: Boolean; LegacyStartMenuFolder: string; @@ -390,9 +353,3 @@ begin CleanUpOldVersion; end; end; - - - - - - diff --git a/packages/win_installer/fragment_runtimes.iss b/packages/win_installer/fragment_runtimes.iss index 8d7f56436..ae71daf74 100644 --- a/packages/win_installer/fragment_runtimes.iss +++ b/packages/win_installer/fragment_runtimes.iss @@ -1,47 +1,7 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - ; This file implements checking for and installing runtime libraries for Aegisub [Files] -DestDir: {tmp}; Source: src\vcredist_{#ARCH}.exe; Flags: nocompression deleteafterinstall -;Source: src\redist\{#ARCH}\Microsoft.VC140.CRT\msvcp140.dll; DestDir: {app}; Flags: ignoreversion -;Source: src\redist\{#ARCH}\Microsoft.VC140.CRT\concrt140.dll; DestDir: {app}; Flags: ignoreversion -;Source: src\redist\{#ARCH}\Microsoft.VC140.CRT\vccorlib140.dll; DestDir: {app}; Flags: ignoreversion -;Source: src\redist\{#ARCH}\Microsoft.VC140.CRT\vcruntime140.dll; DestDir: {app}; Flags: ignoreversion -;Source: src\redist\{#ARCH}\Microsoft.VC140.MFC\mfc140u.dll; DestDir: {app}; Flags: ignoreversion -;Source: src\redist\{#ARCH}\Microsoft.VC140.MFC\mfcm140u.dll; DestDir: {app}; Flags: ignoreversion +DestDir: {tmp}; Source: "{#DEPS_DIR}\VC_redist\VC_redist.x{#ARCH}.exe"; Flags: nocompression deleteafterinstall [Run] Filename: {tmp}\vcredist_{#ARCH}.exe; StatusMsg: {cm:InstallRuntime}; Parameters: "/install /quiet /norestart" diff --git a/packages/win_installer/fragment_setupbase.iss b/packages/win_installer/fragment_setupbase.iss index 8935e256c..168c5f88b 100644 --- a/packages/win_installer/fragment_setupbase.iss +++ b/packages/win_installer/fragment_setupbase.iss @@ -1,40 +1,10 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - -#include "../../build/git_version.h" - #define CURRENT_YEAR GetDateTimeString('yyyy', '', ''); +#define BUILD_ROOT GetEnv('BUILD_ROOT') +#define SOURCE_ROOT GetEnv('SOURCE_ROOT') +#define INSTALLER_DIR SOURCE_ROOT + "\packages\win_installer" +#define DEPS_DIR BUILD_ROOT + "\installer-deps" + +#include BUILD_ROOT + "\git_version.h" [Setup] AppName=Aegisub @@ -47,10 +17,10 @@ AppCopyright=2005-{#CURRENT_YEAR} The Aegisub Team VersionInfoVersion={#INSTALLER_VERSION} DefaultGroupName=Aegisub AllowNoIcons=true -OutputDir=output +OutputDir={#BUILD_ROOT} Compression=lzma/ultra64 SolidCompression=true -MinVersion=0,5.0 +MinVersion=6.1sp1 ShowLanguageDialog=yes LanguageDetectionMethod=none DisableProgramGroupPage=yes @@ -61,51 +31,54 @@ UsePreviousTasks=no UninstallDisplayIcon={app}\aegisub{#ARCH}.exe ; Default to a large welcome bitmap, suitable for large fonts ; The normal fonts version is selected by code below -WizardImageFile=welcome-large.bmp -WizardSmallImageFile=aegisub-large.bmp +WizardImageFile={#INSTALLER_DIR}\welcome-large.bmp +WizardSmallImageFile={#INSTALLER_DIR}\aegisub-large.bmp OutputBaseFilename=Aegisub-{#BUILD_GIT_VERSION_STRING}-{#ARCH} VersionInfoDescription=Aegisub {#BUILD_GIT_VERSION_STRING} {#ARCH}-bit [Languages] Name: "en"; MessagesFile: "compiler:Default.isl" -Name: "bg"; MessagesFile: "compiler:Languages\Bulgarian.isl" Name: "ca"; MessagesFile: "compiler:Languages\Catalan.isl" Name: "cz"; MessagesFile: "compiler:Languages\Czech.isl" Name: "da"; MessagesFile: "compiler:Languages\Danish.isl" Name: "de"; MessagesFile: "compiler:Languages\German.isl" -Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" Name: "es"; MessagesFile: "compiler:Languages\Spanish.isl" -Name: "eu"; MessagesFile: "compiler:Languages\Basque.isl" Name: "fi"; MessagesFile: "compiler:Languages\Finnish.isl" Name: "fr_FR"; MessagesFile: "compiler:Languages\French.isl" -Name: "gl"; MessagesFile: "compiler:Languages\Galician.isl" -Name: "hu"; MessagesFile: "compiler:Languages\Hungarian.isl" -Name: "id"; MessagesFile: "compiler:Languages\Indonesian.isl" Name: "it"; MessagesFile: "compiler:Languages\Italian.isl" Name: "ja"; MessagesFile: "compiler:Languages\Japanese.isl" -Name: "ko"; MessagesFile: "compiler:Languages\Korean.isl" -Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl" Name: "pl"; MessagesFile: "compiler:Languages\Polish.isl" Name: "pt_BR"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl" Name: "pt_PT"; MessagesFile: "compiler:Languages\Portuguese.isl" Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl" -Name: "sr_RS"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl" -Name: "sr_RS_latin"; MessagesFile: "compiler:Languages\SerbianLatin.isl" Name: "uk_UA"; MessagesFile: "compiler:Languages\Ukrainian.isl" -Name: "zh_CN"; MessagesFile: "compiler:Languages\ChineseSimplified.isl" -Name: "zh_TW"; MessagesFile: "compiler:Languages\ChineseTraditional.isl" +#ifdef UNOFFICIAL_LANGUAGES +; These languages are not shipped with InnoSetup by default and would need to be fetched from https://jrsoftware.org/files/istrans/ +;Name: "bg"; MessagesFile: "compiler:Languages\Bulgarian.isl" +;Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" +;Name: "eu"; MessagesFile: "compiler:Languages\Basque.isl" +;Name: "gl"; MessagesFile: "compiler:Languages\Galician.isl" +;Name: "hu"; MessagesFile: "compiler:Languages\Hungarian.isl" +;Name: "id"; MessagesFile: "compiler:Languages\Indonesian.isl" +;Name: "ko"; MessagesFile: "compiler:Languages\Korean.isl" +;Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl" +;Name: "sr_RS"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl" +;Name: "sr_RS_latin"; MessagesFile: "compiler:Languages\SerbianLatin.isl" +;Name: "zh_CN"; MessagesFile: "compiler:Languages\ChineseSimplified.isl" +;Name: "zh_TW"; MessagesFile: "compiler:Languages\ChineseTraditional.isl" +#endif [Files] ; small bitmaps (used by beautify code) -DestDir: {tmp}; Flags: dontcopy; Source: welcome.bmp -DestDir: {tmp}; Flags: dontcopy; Source: aegisub.bmp +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\welcome.bmp +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\aegisub.bmp ; uninstall data (used by migration code) -DestDir: {tmp}; Flags: dontcopy; Source: legacy_filelist.txt -DestDir: {tmp}; Flags: dontcopy; Source: legacy_dirlist.txt -DestDir: {tmp}; Flags: dontcopy; Source: legacy_locales.txt -DestDir: {tmp}; Flags: dontcopy; Source: legacy_shortcutlist.txt -DestDir: {tmp}; Flags: dontcopy; Source: old_filelist.txt -DestDir: {tmp}; Flags: dontcopy; Source: old_dirlist.txt -DestDir: {tmp}; Flags: dontcopy; Source: old_locales.txt -DestDir: {tmp}; Flags: dontcopy; Source: old_shortcutlist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_filelist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_dirlist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_locales.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_shortcutlist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_filelist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_dirlist.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_locales.txt +DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_shortcutlist.txt diff --git a/packages/win_installer/fragment_shell_code.iss b/packages/win_installer/fragment_shell_code.iss index 259d45a06..53cea58a9 100644 --- a/packages/win_installer/fragment_shell_code.iss +++ b/packages/win_installer/fragment_shell_code.iss @@ -1,40 +1,4 @@ [Code] -(* -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; -*) - // IShellLink interface and CLSID taken from sample const MAX_PATH = 260; @@ -121,4 +85,3 @@ begin Result := ''; end; end; - diff --git a/packages/win_installer/fragment_spelling.iss b/packages/win_installer/fragment_spelling.iss index 1ce979d8f..331f3eb29 100644 --- a/packages/win_installer/fragment_spelling.iss +++ b/packages/win_installer/fragment_spelling.iss @@ -1,41 +1,5 @@ -; Copyright (c) 2007-2011, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - - ; This file declares all installables related to spell checking and thesaurii in Aegisub [Files] -Source: src\dictionaries\en_US.aff; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion -Source: src\dictionaries\en_US.dic; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion - +Source: {#DEPS_DIR}\dictionaries\en_US.aff; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion +Source: {#DEPS_DIR}\dictionaries\en_US.dic; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion diff --git a/packages/win_installer/fragment_strings.iss b/packages/win_installer/fragment_strings.iss index f558865da..f572d8618 100644 --- a/packages/win_installer/fragment_strings.iss +++ b/packages/win_installer/fragment_strings.iss @@ -1,44 +1,57 @@ [CustomMessages] InstallRuntime=Installing runtime libraries... +pt_PT.InstallRuntime=A instalar livrarias de runtime... +uk_UA.InstallRuntime=Встановлюю бібліотеки реального часу... +#ifdef UNOFFICIAL_LANGUAGES el.InstallRuntime=Εγκατάσταση βιβλιοθηκών... eu.InstallRuntime=Runtime liburutegiak ezartzen... id.InstallRuntime=Memasang runtime libraries... -pt_PT.InstallRuntime=A instalar livrarias de runtime... -uk_UA.InstallRuntime=Встановлюю бібліотеки реального часу... zh_CN.InstallRuntime=正在安装运行库…… zh_TW.InstallRuntime=正在安裝運行庫…… +#endif + StartMenuIcon=Create a start menu icon +pt_PT.StartMenuIcon=Criar ícone no menu iniciar +uk_UA.StartMenuIcon=Створити піктограму в меню Запустити +#ifdef UNOFFICIAL_LANGUAGES el.StartMenuIcon=Δημιουργία εικονιδίου στο μενού έναρξης eu.StartMenuIcon=Sortu hasiera menuko ikur bat id.StartMenuIcon=Buat ikon di menu awal -pt_PT.StartMenuIcon=Criar ícone no menu iniciar -uk_UA.StartMenuIcon=Створити піктограму в меню Запустити zh_CN.StartMenuIcon=创建开始菜单图标 zh_TW.StartMenuIcon=創建開始功能表圖示 +#endif + CheckForUpdates=Automatically check for new versions of Aegisub +pt_PT.CheckForUpdates=Verifica automaticamente a existência de novas versões do Aegisub +uk_UA.CheckForUpdates=Автоматично перевіряти Aegisub на нові версії +#ifdef UNOFFICIAL_LANGUAGES el.CheckForUpdates=Αυτόματος έλεγχος για καινούριες εκδόσεις του Aegisub eu.CheckForUpdates=Berezgaitasunez egiaztatu Aegisub-ren bertsio berririk dagoen id.CheckForUpdates=Otomatis cek versi terbaru Aegisub -pt_PT.CheckForUpdates=Verifica automaticamente a existência de novas versões do Aegisub -uk_UA.CheckForUpdates=Автоматично перевіряти Aegisub на нові версії zh_CN.CheckForUpdates=自动检查Aegisub的新版本 zh_TW.CheckForUpdates=自動檢查Aegisub的新版本 +#endif + UpdatesGroup=Update Checker: +pt_PT.UpdatesGroup=Verificar Actualizações: +uk_UA.UpdatesGroup=Модуль Перевірки на Оновлення: +#ifdef UNOFFICIAL_LANGUAGES el.UpdatesGroup=Έλεγχος Ενημερώσεων: eu.UpdatesGroup=Eguneraketa Egiaztatzailea: id.UpdatesGroup=Pemeriksa Pembaharuan -pt_PT.UpdatesGroup=Verificar Actualizações: -uk_UA.UpdatesGroup=Модуль Перевірки на Оновлення: zh_CN.UpdatesGroup=自动更新: zh_TW.UpdatesGroup=自動更新: +#endif ; Replacement for License page, no need to bother the user with legal mumbo-jumbo [Messages] WelcomeLabel2=This will install Aegisub {#BUILD_GIT_VERSION_STRING} on your computer.%n%nAegisub is covered by the GNU General Public License version 2. This means you may use the application for any purpose without charge, but that no warranties of any kind are given either.%n%nSee the Aegisub website for information on obtaining the source code. +pt_PT.WelcomeLabel2=Irá ser instalado no seu computador a versão {#BUILD_GIT_VERSION_STRING} do Aegisub.%n%nO Aegisub está protegido sob a Licença Pública Geral GNU (GPL version 2). O que significa que poderá fazer uso da aplicação para qualquer propósito, sem que seja cobrado, mas não serão dadas quaisquer tipos de garantias.%n%nVeja a página do Aegisub para mais informações sobre como obter o código-fonte. +uk_UA.WelcomeLabel2=Зараз буде встанвлено Aegisub {#BUILD_GIT_VERSION_STRING} на ваш комп'ютер.%n%nAegisub захищено універсальною громадською ліцензією GNU, версія 2. Це означає, що ви можете використосувати цю програму для будь яких цілей безкоштовно, але, в будь-якому випадку, ми не даємо жодних гарантій.%n%nДивіться сайт Aegisub для інформації щодо отримання вихідного коду. +#ifdef UNOFFICIAL_LANGUAGES el.WelcomeLabel2=Αυτό θα εγκαταστήσει το Aegisub {#BUILD_GIT_VERSION_STRING} στον υπολογιστή σας.%n%nΤο Aegisub καλύπτεται από τον άδεια GNU General Public License version 2. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε την εφαρμογή για κάθε σκοπό χωρίς χρέωση, αλλά δεν υπάρχουν εγγυήσεις καμίας φύσης.%n%nΔείτε την ιστοσελίδα του Aegisub για πληροφορίες σχετικά με την απόκτηση του πηγαίου κώδικα. eu.WelcomeLabel2=Honek Aegisub {#BUILD_GIT_VERSION_STRING} ezarriko du zure ordenagailuan.%n%nAegisub GNU Baimen Publiko Orokorra 2. bertsioa Baimenak estalia dago. Honek esanahi du aplikazio hau edozein asmotarako erabili dezakezula ordaindu behar izan gabe, baina ez da inolako berme motarik ematen.%n%nIkusi Aegisub webgunea iturburu kodea lortzeko argibideetarako. id.WelcomeLabel2=Ini akan memasang Aegisub {#BUILD_GIT_VERSION_STRING} di komputer Anda.%n%nAegisub dilindungi oleh Lisensi Publik Umum GNU versi 2. Artinya Anda bisa menggunakan aplikasi ini untuk tujuan apa pun tanpad dipungut biaya, tapi tidak ada jaminan yang bisa diberikan.%n%nLihat laman situs Aegisub untuk memperoleh informasi sumber kode. -pt_PT.WelcomeLabel2=Irá ser instalado no seu computador a versão {#BUILD_GIT_VERSION_STRING} do Aegisub.%n%nO Aegisub está protegido sob a Licença Pública Geral GNU (GPL version 2). O que significa que poderá fazer uso da aplicação para qualquer propósito, sem que seja cobrado, mas não serão dadas quaisquer tipos de garantias.%n%nVeja a página do Aegisub para mais informações sobre como obter o código-fonte. -uk_UA.WelcomeLabel2=Зараз буде встанвлено Aegisub {#BUILD_GIT_VERSION_STRING} на ваш комп'ютер.%n%nAegisub захищено універсальною громадською ліцензією GNU, версія 2. Це означає, що ви можете використосувати цю програму для будь яких цілей безкоштовно, але, в будь-якому випадку, ми не даємо жодних гарантій.%n%nДивіться сайт Aegisub для інформації щодо отримання вихідного коду. zh_CN.WelcomeLabel2=将会在您的电脑上安装Aegisub {#BUILD_GIT_VERSION_STRING} 。%n%n Aegisub适用于GNU通用公共许可证第二版(GPLv2),这意味着您可以将该应用程序用于任何目的而不需要支付费用,但同时也不会得到任何形式的担保。%n%n您可以到Aegisub官网获取源代码信息。 zh_TW.WelcomeLabel2=將會在您的電腦上安裝Aegisub {#BUILD_GIT_VERSION_STRING} 。%n%n Aegisub適用於GNU通用公共許可證第二版(GPLv2),這意味著您可以將該應用程式用於任何目的而不需要支付費用,但同時也不會得到任何形式的擔保。%n%n您可以到Aegisub官網獲取原始程式碼資訊。 +#endif diff --git a/packages/win_installer/fragment_translations.iss b/packages/win_installer/fragment_translations.iss index 08d6a5ca5..2e6098711 100644 --- a/packages/win_installer/fragment_translations.iss +++ b/packages/win_installer/fragment_translations.iss @@ -1,98 +1,64 @@ -; Copyright (c) 2007-2009, Niels Martin Hansen -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://www.aegisub.org/ -; Contact: mailto:nielsm@indvikleren.dk -; - - -; This file declares everything related to installable translations of Aegisub +; This file declares everything related to installable translations of Aegisub [Files] ; localization (commented out ones are out of date; some don't have wxstd.mo) -Source: ..\..\po\ar.mo; DestDir: {app}\locale\ar; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +#ifdef ENABLE_TRANSLATIONS +Source: {#BUILD_ROOT}\po\ar.mo; DestDir: {app}\locale\ar; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-ar.mo; DestDir: {app}\locale\ar; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\bg.mo; DestDir: {app}\locale\bg; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\bg.mo; DestDir: {app}\locale\bg; DestName: aegisub.mo; Flags: ignoreversion; Components: translations ; Missing wxstd for Bulgarian -Source: ..\..\po\ca.mo; DestDir: {app}\locale\ca; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\ca.mo; DestDir: {app}\locale\ca; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-ca.mo; DestDir: {app}\locale\ca; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\cs.mo; DestDir: {app}\locale\cs; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\cs.mo; DestDir: {app}\locale\cs; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-cs.mo; DestDir: {app}\locale\cs; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\da.mo; DestDir: {app}\locale\da; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\da.mo; DestDir: {app}\locale\da; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-da.mo; DestDir: {app}\locale\da; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\de.mo; DestDir: {app}\locale\de; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\de.mo; DestDir: {app}\locale\de; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-de.mo; DestDir: {app}\locale\de; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\el.mo; DestDir: {app}\locale\el; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\el.mo; DestDir: {app}\locale\el; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-el.mo; DestDir: {app}\locale\el; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\es.mo; DestDir: {app}\locale\es; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\es.mo; DestDir: {app}\locale\es; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-es.mo; DestDir: {app}\locale\es; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\eu.mo; DestDir: {app}\locale\eu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\eu.mo; DestDir: {app}\locale\eu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-eu.mo; DestDir: {app}\locale\eu; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\fa.mo; DestDir: {app}\locale\fa; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\fa.mo; DestDir: {app}\locale\fa; DestName: aegisub.mo; Flags: ignoreversion; Components: translations ; Farsi wxstd missing ;Source: src\mo\wxstd-fa.mo; DestDir: {app}\locale\fa; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\fi.mo; DestDir: {app}\locale\fi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\fi.mo; DestDir: {app}\locale\fi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-fi.mo; DestDir: {app}\locale\fi; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\fr_FR.mo; DestDir: {app}\locale\fr_FR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\fr_FR.mo; DestDir: {app}\locale\fr_FR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-fr.mo; DestDir: {app}\locale\fr_FR; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\gl.mo; DestDir: {app}\locale\gl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\gl.mo; DestDir: {app}\locale\gl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-gl_ES.mo; DestDir: {app}\locale\gl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\hu.mo; DestDir: {app}\locale\hu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\hu.mo; DestDir: {app}\locale\hu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-hu.mo; DestDir: {app}\locale\hu; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\id.mo; DestDir: {app}\locale\id; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\id.mo; DestDir: {app}\locale\id; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-id.mo; DestDir: {app}\locale\id; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\it.mo; DestDir: {app}\locale\it; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\it.mo; DestDir: {app}\locale\it; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-it.mo; DestDir: {app}\locale\it; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\ja.mo; DestDir: {app}\locale\ja; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\ja.mo; DestDir: {app}\locale\ja; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-ja.mo; DestDir: {app}\locale\ja; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\ko.mo; DestDir: {app}\locale\ko; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\ko.mo; DestDir: {app}\locale\ko; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-ko_KR.mo; DestDir: {app}\locale\ko; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\nl.mo; DestDir: {app}\locale\nl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\nl.mo; DestDir: {app}\locale\nl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-nl.mo; DestDir: {app}\locale\nl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\pl.mo; DestDir: {app}\locale\pl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\pl.mo; DestDir: {app}\locale\pl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-pl.mo; DestDir: {app}\locale\pl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\pt_PT.mo; DestDir: {app}\locale\pt_PT; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\pt_PT.mo; DestDir: {app}\locale\pt_PT; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-pt.mo; DestDir: {app}\locale\pt_PT; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\ru.mo; DestDir: {app}\locale\ru; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\ru.mo; DestDir: {app}\locale\ru; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-ru.mo; DestDir: {app}\locale\ru; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\sr_RS.mo; DestDir: {app}\locale\sr_RS; DestName: aegisub.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\sr_RS@latin.mo; DestDir: {app}\locale\sr_RS@latin; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\sr_RS.mo; DestDir: {app}\locale\sr_RS; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\sr_RS@latin.mo; DestDir: {app}\locale\sr_RS@latin; DestName: aegisub.mo; Flags: ignoreversion; Components: translations ; Missing wxstd for Serbian -Source: ..\..\po\uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\vi.mo; DestDir: {app}\locale\vi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\vi.mo; DestDir: {app}\locale\vi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-vi.mo; DestDir: {app}\locale\vi; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: wxstd.mo; Flags: ignoreversion; Components: translations -Source: ..\..\po\zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: aegisub.mo; Flags: ignoreversion; Components: translations +Source: {#BUILD_ROOT}\po\zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: aegisub.mo; Flags: ignoreversion; Components: translations Source: src\mo\wxstd-zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: wxstd.mo; Flags: ignoreversion; Components: translations - +#endif diff --git a/packages/win_installer/license.txt b/packages/win_installer/license.txt index 732874e53..d78767c5c 100644 --- a/packages/win_installer/license.txt +++ b/packages/win_installer/license.txt @@ -1,4 +1,4 @@ -Copyright (c) 2005-2014, the Aegisub Team. +Copyright (c) 2005-2020, the Aegisub Team. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/tools/version.ps1 b/tools/version.ps1 index f02e47dc6..13e51b4f2 100644 --- a/tools/version.ps1 +++ b/tools/version.ps1 @@ -63,7 +63,7 @@ if ($exactGitTag -match $semVerMatch) { if ($tag -match $semVerMatch) {# $version['TAGGED_RELEASE'] = $false $version['RESOURCE_BASE_VERSION'] = $Matches[1..3] + $gitRevision - $version['INSTALLER_VERSION'] = ($Matches[1..3] -join '.') + "-" + $gitBranch + $version['INSTALLER_VERSION'] = ($Matches[1..3] -join '.') break; } } diff --git a/tools/win-installer-setup.ps1 b/tools/win-installer-setup.ps1 new file mode 100644 index 000000000..42ee0cc42 --- /dev/null +++ b/tools/win-installer-setup.ps1 @@ -0,0 +1,80 @@ +#!/usr/bin/env powershell + +param ( + [Parameter(Position = 0)] + [string]$BuildRoot, + [Parameter(Position = 1)] + [string]$SourceRoot +) + +$InstallerDir = Join-Path $SourceRoot "packages\win_installer" | Resolve-Path +$DepsDir = Join-Path $BuildRoot "installer-deps" +if (!(Test-Path $DepsDir)) { + New-Item -ItemType Directory -Path $DepsDir +} + +$Env:BUILD_ROOT = $BuildRoot +$Env:SOURCE_ROOT = $SourceRoot + +Set-Location $DepsDir + +# DepCtrl +if (!(Test-Path DependencyControl)) { + git clone https://github.com/TypesettingTools/DependencyControl.git +} + +# YUtils +if (!(Test-Path YUtils)) { + git clone https://github.com/TypesettingTools/YUtils.git +} + +# luajson +if (!(Test-Path luajson)) { + git clone https://github.com/harningt/luajson.git +} + +# Avisynth +if (!(Test-Path AviSynthPlus64)) { + $avsReleases = Invoke-WebRequest "https://api.github.com/repos/AviSynth/AviSynthPlus/releases/latest" -UseBasicParsing | ConvertFrom-Json + $avsUrl = $avsReleases.assets[0].browser_download_url + Invoke-WebRequest $avsUrl -OutFile AviSynthPlus.7z -UseBasicParsing + 7z x AviSynthPlus.7z + Rename-Item (Get-ChildItem -Filter "AviSynthPlus_*" -Directory) AviSynthPlus64 + Remove-Item AviSynthPlus.7z +} + +# VSFilter +if (!(Test-Path VSFilter)) { + $vsFilterDir = New-Item -ItemType Directory VSFilter + Set-Location $vsFilterDir + $vsFilterReleases = Invoke-WebRequest "https://api.github.com/repos/pinterf/xy-VSFilter/releases/latest" -UseBasicParsing | ConvertFrom-Json + $vsFilterUrl = $vsFilterReleases.assets[0].browser_download_url + Invoke-WebRequest $vsFilterUrl -OutFile VSFilter.7z -UseBasicParsing + 7z x VSFilter.7z + Remove-Item VSFilter.7z + Set-Location $DepsDir +} + +# ffi-experiments +if (!(Test-Path ffi-experiments)) { + Get-Command "moonc" # check to ensure Moonscript is present + git clone https://github.com/TypesettingTools/ffi-experiments.git + Set-Location ffi-experiments + meson build -Ddefault_library=static + meson compile -C build + Set-Location $DepsDir +} + +# VC++ redistributable +if (!(Test-Path VC_redist)) { + $redistDir = New-Item -ItemType Directory VC_redist + Invoke-WebRequest https://aka.ms/vs/16/release/VC_redist.x64.exe -OutFile "$redistDir\VC_redist.x64.exe" -UseBasicParsing +} + +# TODO dictionaries + +# TODO localization + +# Invoke InnoSetup +$IssUrl = Join-Path $InstallerDir "aegisub_depctrl.iss" +iscc $IssUrl