Commit graph

8198 commits

Author SHA1 Message Date
arch1t3cht
592bd993d7 Remove iconv's stdbool.h
This was breaking things (libass) and doesn't seem to be
needed any more.
2023-12-02 18:08:36 +01:00
arch1t3cht
df9d442102 Fix AviSynth paths for portable build (again) 2023-12-02 17:26:00 +01:00
arch1t3cht
ce557d98e4 Use crash_writer_minidump on Windows
This was done in Aegisub/Aegisub.
2023-12-02 17:21:11 +01:00
arch1t3cht
18d088c479 Fix hunspell include and wrap 2023-11-24 20:53:07 +01:00
arch1t3cht
4576ac0638 luajit: Remove checkdef for SSE
This isn't actually set in luajit's Makefile. Maybe it was at some
point in the past, but there's no trace of it now.

Fixes arch1t3cht/Aegisub#98 .
2023-11-21 21:19:06 +01:00
arch1t3cht
24c8144e91 meson: luajit: Set correct LUAJIT_TARGET for buildvm
On native builds this is derived automatically, but on cross builds
it needs to be set explicitly.
2023-11-06 22:44:18 +01:00
arch1t3cht
1ba7979ff4 meson: luajit: Remove unused readline dependency 2023-11-06 22:44:03 +01:00
arch1t3cht
d728ce0e78 meson: Don't run tests on cross builds
This can be made into an option or whatever when cross builds that
can/need to run tests show up, but for now this is enough.
2023-11-06 22:12:30 +01:00
arch1t3cht
45fdaecd72 ci: Install setuptools
After Python 3.12 released, meson doesn't seem to like the python
installed by actions/setup-python any more.
2023-10-18 23:29:20 +02:00
arch1t3cht
fabc6e436f osx: Sign executable and libraries after bundling 2023-10-17 18:26:49 +02:00
arch1t3cht
07c4f26a8e ci: Install nasm for Ubuntu AppImage build
Ubuntu doesn't have ffmpeg 6.0 yet, but we want to bundle ffms2 master
since the distro version still has seeking issues. Compiling the ffmpeg
wrap needs nasm.
2023-10-14 00:51:32 +02:00
arch1t3cht
b8f4c98c4c Move iconv include to charset_conv.h
On newer mac sdks iconv_t is defined differently, so it's harder to
just have a typedef for it.
2023-10-13 23:52:26 +02:00
arch1t3cht
9bc3cad79e Add remaining dasm flags in luajit wrap
This now matches the makefile. Also stop hardcoding the flags
for MSVC, since cc.get_define seems to work properly there now.
2023-10-13 23:26:01 +02:00
arch1t3cht
4e6af75db4 Add proper endianness flag for dasm in luajit wrap
Fixes luajit almost completely breaking on aarch64 and probably
other non-x86 architectures.
2023-10-12 23:04:22 +02:00
arch1t3cht
49139f0a22 Fix OSX library wrangling when libs use @rpath or @loader_path
Fixes arch1t3cht/Aegisub#77
2023-09-12 16:16:40 +02:00
arch1t3cht
d10ffebe35 Fix dictionary download on mac when osx-bundle is run more than once 2023-09-12 14:57:42 +02:00
arch1t3cht
4a97bb0dd2 meson: Update luajit wrap for luajit's rolling releases 2023-09-10 14:04:04 +02:00
sepro
0f897ba0eb Add nasm fallback url 2023-08-09 18:03:11 +02:00
arch1t3cht
0b7ea58cd6 meson: Add libresrc headers as dependencies
These are included in the Aegisub source files, so they need to be
generated before compiling.
2023-08-01 14:07:56 +02:00
0tkl
0fd12795da fix typo in meson wrap file 2023-07-18 16:01:59 +02:00
arch1t3cht
6754ff8775 installer: Update paths to Avisynth libraries 2023-07-16 19:51:05 +02:00
arch1t3cht
f3d6eea3b9 Fix AppImage build on CI 2023-05-29 14:43:34 +02:00
arch1t3cht
165cb14879 Add AppImage build on linux
This consists of a meson option that
- sets a flag to make Aegisub read paths relative to the executable
- makes meson set up the symlinks like AppRun and .DirIcon as following
  the AppDir format

and a CI workflow that builds with this option, installs to an AppDir
directory, and bundles it as an AppImage.

Modified from arch1t3cht/Aegisub#12 .

Co-authored-by: Fred Brennan <copypaste@kittens.ph>
2023-04-21 16:23:01 +02:00
arch1t3cht
8633e2c4ae mac: Statically link ffms2
This is to make sure we're building the git version that fixes the
PAFF seeking regression and contains the workarounds for VPX/AV1.
2023-03-28 08:39:04 +02:00
arch1t3cht
883a1b2a73 installer and ci: Throw more errors on failure
This makes it easier to notice when installer generation failed.
2023-03-24 20:30:17 +01:00
arch1t3cht
0d5063bf79 Ship en_US hunspell dictionaries on Windows and OSX
For now, this uses the same OpenOffice dictionaries that were used in
previous official releases, downloaded from
https://sourceforge.net/projects/openofficeorg.mirror/files/contrib/dictionaries/
In the future this could be updated to some newer dictionary like
SCOWL's.

Fixes arch1t3cht/Aegisub#21.
2023-03-24 20:30:17 +01:00
arch1t3cht
60897b2327 meson: Set NDEBUG on release builds
The old MSVC build system also set this:
6f546951b4/build/standard-settings.props (L62)
2023-01-26 21:04:04 +01:00
arch1t3cht
8fc301fad4 ci: Use GITHUB_TOKEN if available 2023-01-12 13:36:39 +01:00
arch1t3cht
d08726606f meson: Also add regen dependencies for bitmaps 2023-01-10 21:47:29 +01:00
arch1t3cht
6d83aa9101 Update CI actions versions 2022-12-01 21:36:09 +01:00
arch1t3cht
3fedc88641 Include strings.rc as resource file on Windows
This was included here:
6f546951b4/build/Aegisub/Aegisub.vcxproj.filters (L1094)
in the MSVC build.
2022-08-28 01:38:41 +02:00
arch1t3cht
fb7f4bdd9a installer: Bump VCRedist to 17 (2015 - 2022)
The windows-latest platform in the CI already uses VS2022, so let's bump
the VCRedist to match.
2022-08-28 00:36:51 +02:00
arch1t3cht
7721ae689f Fix Avisynth paths for portable build
Also apply the change in 75db50b to the portable build.
The .mo files, on the other hand, already work as they are.
2022-08-26 15:17:59 +02:00
arch1t3cht
1772dd17ae Use std::this_thread everywhere
The previous logic wouldn't compile on linux using clang.

With the meson build requiring c++14, there's no need for platform
specific code. Really, the entire agi::util::sleep_for function could be
removed entirely, but I'll keep the patch minimal for now.
2022-07-27 15:20:03 +02:00
arch1t3cht
86354050f3 meson: Use depend_files for files in respack manifest 2022-07-10 23:00:52 +02:00
arch1t3cht
142605cf41 meson: Add files in manifest as respack.py input
This makes meson detect changes to files like default_config.json
and rebuild libresrc.cpp when necessary.
2022-07-04 22:22:01 +02:00
arch1t3cht
5bde34ff3e macos: attempt to fix the installer build
Try and fix an issue when a symlink would link to a path with the same
basename, without actually having a mac system available to test.
2022-07-02 19:58:43 -07:00
arch1t3cht
2bf4f17e58 ci: Don't abort if one of the matrix runs fails 2022-07-02 19:58:43 -07:00
arch1t3cht
cfd93ce81b meson: Use latest git version for ffms2
This is to include the fix for FFMS/ffms2#394 .
2022-07-02 19:58:43 -07:00
arch1t3cht
6e811ef6a7 Fix compile error on linux 2022-07-02 19:58:43 -07:00
arch1t3cht
9fef97a5bb installer: update paths to mo files
Meson's i18n module changed its output paths here:
487d45c1e5
2022-07-02 19:58:43 -07:00
arch1t3cht
75db50b6ed installer: update paths to Avisynth libaries
The folder structure of the release archives changed with
AviSynth+ 3.7.1.
2022-07-02 19:58:43 -07:00
TRAMBO
4776ca9dd1
Fix errors when automation scripts being loaded and os.execute not working (#156)
* fix errors when automation scripts being loaded and os.execute not working

* Update unicode-monkeypatch.lua
2022-06-08 08:36:49 -07:00
Oneric
e5dee3fbe2 meson: bump ffmpeg wrap
meson-4.4 contains a fix regarding the prefix kwarg
with newer Meson versions not present in the 4.3 branch.
2022-06-08 01:10:11 -07:00
Oneric
85ce9663a6 Pass storage size to libass to fix rendering
Since ASS rendering depends on the storage size of the video libass
needs to know about it to render the subtitles correctly. If it isn't
told about the storage size libass uses the value from PlayRes{X,Y} as
a guess, but this isn't always correct.
With Aegisub currently always rendering at storage resolution
this ends up the same as the frame size.
2022-06-08 01:10:11 -07:00
Oleg Oshmyan
f21d8a3607 meson: use OpenAL.framework on macOS
It is not picked up by the existing dependency() check because its
version is unknown to Meson, which fails the version constraint.
Besides, dependency('openal') seems to try "openal.framework",
which may or may not work on case-sensitive file systems.
2021-11-10 20:12:21 -07:00
Oleg Oshmyan
1d01f8adc8 meson: allow unconstrained dependency version to be "unknown"
And allow for compound version constraints in the future.
2021-11-10 20:12:21 -07:00
Oleg Oshmyan
18503946d5 meson: don't check disabled dependencies at all
Don't search for the dependency and set up fallback
only to throw it away if the option is disabled.
This is a waste, and this gives the user the illusion
that the request to disable the feature was ignored.
2021-11-10 20:12:21 -07:00
woclass
e58e4a9149
Fix Mac dmg build (#138)
* [mac/build] update build steps

* [macos] bundle app

* [macos] build dmg

* [ci] setup macOS CI

* [i18n] TODO: rm WX locale files

* [deps] set main branch to main

* Fix osx-fix-libs.py

Create symbolic links, to make libicu happy
Rewrite the script in python3, as python2 is deprecated

* Add write permission before install_name_tool when doing osx-bundle

Fix wangqr/Aegisub#39

* Handle @loader_path in libboost on macOS

See wangqr/Aegisub#39

* [tools/mac] use python3

* [ci/mac] install & using system deps

* [ci/win] don't build fribidi:docs

* [ci/mac]  trying openal-soft

* [ci/mac] use pulseaudio in CI

* [ci/win] only run aeg's test

* [ci/win] fix CI

* [ci/win] fix CI: not use dict `{}`

* [ci] run ci

* [ci/win] don't build docs

* [ci/win] remove args tail newline

* [ci/win] false->disabled

* Use md title format

Co-authored-by: Ryan Lucia <ryan@luciaonline.net>

* Recover file permissions.

* [ci/win] disable fontconfig

Co-Authored-By: Ryan Lucia <ryan@luciaonline.net>

* [ci/win] disable libass:fontconfig

Co-authored-by: wangqr <wangqr@wangqr.tk>
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
2021-10-12 03:37:49 -04:00
woclass
0dffcec461
Fix meson warning (#126)
* [git] ignore IDE setting, Meson subprojects

* [win_installer] rename *.mo -> *.gmo

* [win_installer] only add aeg translations

* [win_installer] split aeg/wx translations

* [win_installer] gen & pack translations

* [git] ignore hunspell source dir

* [git] ignore uchardet source dir

* [test] Generate the test executable

run with `meson test`

* [test] add tools to remove test data files

`unset.bat FULL_PATH`

* [test] set to correct Error type

* [test] Set Source character sets to UTF-8 for MSVC

* [test] move test data files to build_root

* [meson/wxWidgets] fix warning: deprecated feature `cmake_options`

* [meson] fix warning:  msvc does not support C++11

* [meson/fribidi] add original meson.build file

* [meson/fribidi] merge pr-151

https://github.com/fribidi/fribidi/pull/151
"meson: add fribidi_static_cargs to extra_cflags"

* [meson/fribidi] fix DEPRECATION

"Library fribidi was passed to the "libraries" keyword argument of a previous call to generate() method instead of first positional argument."

* [git]  rm IDE dir

* [meson] remove old flags

* [meson] fixed in upstream
2021-05-24 09:47:34 -04:00