Compare commits

...

1871 Commits

Author SHA1 Message Date
odrling fa669a94e6
use older macos-12 runner
latest/14 fails and builds for arm64
also GA skipped 13 for macos-latest for some reason
2024-04-02 18:59:41 +02:00
odrling dd14bb326f
fix version.sh when building from a git worktree
In a git worktree .git is a regular file that contains a reference to
its git directory
2024-04-02 18:44:59 +02:00
odrling 463f886a58
add missing includes
my gentoo ebuild seems to die on these includes... unlike a manual build
2024-04-02 18:44:59 +02:00
odrling b2e6af62eb
copy all automation scripts to install dir 2024-04-02 18:44:59 +02:00
odrling 724df479c5
add automation scripts back 2024-04-02 18:44:59 +02:00
odrling fc5277492c
force git directory in version.sh 2024-04-02 18:44:59 +02:00
odrling 3e0d4bcdab
osx-fix-libs: log link path 2024-04-02 18:44:59 +02:00
odrling 1ea0faa59f
osx-fix-libs: fix relative symlinks with same name 2024-04-02 18:44:58 +02:00
odrling 89bae8640c
force dependency on libresrc 2024-04-02 18:44:58 +02:00
odrling 13ee9cc20b
don't delay audio on matroska files 2024-04-02 18:44:58 +02:00
odrling 39da678257
add option to disable tests 2024-04-02 18:44:58 +02:00
odrling 9ef7feab55
fix vfr nonzero start time test 2024-04-02 18:44:58 +02:00
odrling e69fd3e96f
[style] increase default font size 2024-04-02 18:44:58 +02:00
odrling ce97291a1b
[Karaoke] disable drag timing
disables "Left-click drag moves end marker"
2024-04-02 18:44:58 +02:00
odrling fc54f0a1a8
[style] change default style 2024-04-02 18:44:58 +02:00
odrling f0c20ea8e5
[Karaoke] Autocommit and autofocus 2024-04-02 18:44:57 +02:00
Vincent Wong 654dbcf2cf
Audio/timing: minor style, comment
A bit more clarification of code logic. Follow predominant if/else style
2024-04-02 18:44:57 +02:00
Vincent Wong 0761654486
Audio/Timing: implement tap-to-time
Tap-to-time provides the user the ability to tap to the lyrics/syllables
of the song in order to time lines or karaoke. It consists of these
extra UI interactions:

- **Indicator**: tap marker: a designated marker that can be moved to
  the current audio position; indicated in:
  - the audio display by a green arrow underneath a marker
  - the karaoke display by a green-colored syllable
- **Control**: tap marker: the tap marker can be changed by selecting
  syllables on audio display in karaoke mode, or clicking the markers on
  audio display in dialogue mode
- **Control**: ctrl-right-click audio display: starts playing the audio
  from that exact position until the end of the file
- **Option**: Timing/Tap To Time: enables the tap marker indicator and
  commands
- **Button**: time_opt_tap_to_time: toggles the Timing/Tap To Time option
- **Button**: time_tap_connect (hotkey I): a command that:
  - moves the tap marker's position to the current playing audio
    position
  - sets the next marker to be the tap marker
  - if the tap marker is already the last marker AND BOTH autocommit AND
    next-line-on-commit is ON, will move onto the next line
  - if moved on to the next line, also sets the start marker to the current
    audio position, so the two lines are connected, and moves to the
    next tap marker (essentially reinvoking time_tap_connect once)
- **Button**: time_tap_no_connect (hotkey O): similar to
  time_tap_connect, except it will not set the next line's start
  position even if moved to the next line

Expected workflow:
1) User loads song lyrics
2) User splits each line into syllables
3) User turns on tap-to-time, autocommit, and next-line-on-commit
4) User plays audio from beginning, tapping time_tap_connect to each
syllable, occasionally tapping time_tap_no_connect when a break between
lines is desired
5) If user messes up a line, they can set the tap marker to where they
want to restart from, and ctrl-right-click to start the audio a few
seconds before it
6) Syllables can be split/merged at will, and adjustments to timing can
be done using normal karaoke timing controls
2024-04-02 18:44:57 +02:00
Vincent Wong 166fabcfd2
AudioTimingControllerKaraoke: move timing correction above MoveMarker
Having the timing correction in MoveMarker is extremely surprising
behavior if any other part of the code uses MoveMarker expecting it to
work correctly as advertised
2024-04-02 18:44:57 +02:00
Vincent Wong 3f0ec2c102
audio_timing: add missing param comment for OnLeftClick
Missing the alt_click param in comment
2024-04-02 18:44:57 +02:00
odrling 010f538efa
normalize timecodes for every formats except matroska 2024-04-02 18:44:57 +02:00
odrling 8348c1e0f5
shift video instead of subtitles
This is probably wrong in some cases. This is probably what we want with
matroska files.
2024-04-02 18:44:57 +02:00
odrling 8c3d6c06ad
fix mks file parsing 2024-04-02 18:44:56 +02:00
odrling e824932423
fix sub timing in mkv files with video delay
Some matroska files have audio start at timestamp 0 and video later.
In this case mkvtoolnix seems to use the first block of the first
cluster to the audio track (I would assume this is only an
implementation detail and not really from the matroska specs. And also
could happen in other cases without the video being delayed, but that's
not the point). Aegisub used to read this first block and use its
timestamp as the starting point of the video track.

With this commit, Aegisub tries to read all the blocks until it can read
the first timestamp of the video track and use it for the subtitles'
timestamps. Audio tracks don't seem to be impacted by these changes.
2024-04-02 18:44:56 +02:00
Pierre Jeanjean 93398de478
Fix charset detection and conversion issues 2024-04-02 18:44:53 +02:00
arch1t3cht aa68c2e66b Merge branches 'misc' and 'bugfixes' into feature 2024-03-20 14:39:37 +01:00
Ryan Lucia 4b20bc7df0 ci: try to workaround github actions bug 2024-03-20 14:39:24 +01:00
moi15moi 7543060f1d Rework Windows font collector (arch1t3cht/Aegisub#107)
[src\meson.build] Add DirectWrite has dependency

[src\font_file_lister_gdi] Rework GDI FontCollector to use DirectWrite

This replaces all the logic of using the Windows registry to obtain the font path by using DirectWrite. The goal is simply to improve the quality of the code. This doesn't change any functionality

[src\meson.build] Remove Uniscribe has dependency

Uniscribe was only used for the FontCollector. Since we now use DirectWrite, we don't need it anymore.

[src\dialog_fonts_collector] Catch exceptions that FontCollector may raise

On Windows, the initialization of the FontCollector can raise an exception

[src\font_file_lister] Document the exception that GdiFontFileLister can throw

[src\font_file_lister_gdi] Correct possible memory leak when an error occur

Fix error caused by AddFontResource on Windows 10 or higher

[meson.build] Replace add_project_arguments with conf.set for HAVE_DWRITE_3

[src\dialog_fonts_collector] Update message error and optimisation

[src\font_file_lister_gdi] Correct documentation typo

[src\font_file_lister_gdi] Cosmetic nit - Initialize hfont in one line

[src\font_file_lister_gdi] Cosmetic nit - Remove if statements brace

[src\font_file_lister_gdi] Replace WCHAR param of normalizeFilePathCase to std::wstring

[src\font_file_lister_gdi] Replace WCHAR by std::wstring

[src\font_file_lister_gdi] Use IDWriteFontFace::GetSimulations to detect fake_italic/fake_bold

See this comment: https://github.com/arch1t3cht/Aegisub/pull/107#issuecomment-1975229652

[src\font_file_lister_gdi] If Win7/8 has Win 10 SDK on compile time, correctly verify if font has character(s)

With the Visual Studio 2019 toolchain on Windows 7, it installs the Windows 10 SDK by default. Because of this, ``HAVE_DWRITE_3`` is true, so the ``QueryInterface`` always fails. Now, if the ``QueryInterface`` fails, we try to verify if the font has characters with a Windows Vista SP2 compatible code.

[src\font_file_lister_gdi] Support facename that contains only whitespace AND truncated facename

Problem 1:
Previously, if a user wrote "\fn   ", it would return the font Arial, which is not what we want. This is because when we request EnumFontFamiliesEx with whitespace or an empty lfFaceName, it will enumerate all the installed fonts.

Solution 1:
To resolve this issue, let's implement a solution similar to libass to determine if the selected facename exists: 649a7c2e1f/libass/ass_directwrite.c (L737-L747)

Problem 2:
GDI truncates font names to 31 characters. See: https://github.com/libass/libass/issues/459
However, since I changed the method to determine if a facename exists, I ensured that we still support this "feature".

To test this, I used the font in: https://github.com/libass/libass/issues/710

[src\font_file_lister_gdi] Add a FIXME comment regarding the utilization of std::wstring over WCHAR

[src\font_file_lister_gdi] Add FIXME comment about charset
2024-03-20 14:38:45 +01:00
arch1t3cht 897ca32c26 Allow setting Encoding=-1 in style editor 2024-03-19 23:32:12 +01:00
arch1t3cht cd2e894634 Merge branches 'bestsource', 'vapoursynth' and 'bugfixes' into feature 2024-03-08 01:54:29 +01:00
arch1t3cht 4f8cb846cc bestsource: Bump to R1 2024-03-08 01:54:14 +01:00
arch1t3cht 86295a8d36 Install gettext on Windows CI
Apparently this is no longer installed by default.
2024-03-08 01:40:38 +01:00
arch1t3cht bf8bbb60d6 vapoursynth: Switch from bestaudiosource to BestSource
BestSource now had its first official release, so this is possible now.
2024-03-07 21:46:59 +01:00
arch1t3cht e2e3906d15 Merge branch 'vapoursynth' into feature 2024-02-27 20:40:47 +01:00
arch1t3cht deb0f19b1b vapoursynth: Ensure vscache directory is created
Match the other video providers for consistency.
2024-02-27 20:39:41 +01:00
petzku abff2365d3 vapoursynth: Recursively create directories 2024-02-27 20:36:21 +01:00
arch1t3cht dcca721543 Merge branches 'lua_api' and 'misc' into feature 2024-02-20 15:04:04 +01:00
arch1t3cht f52b699493 lua: Add function to get raw frame data
This can be useful when scripts want to read the entire frame
and pass it on somewhere else (say, write it to a file or use some
library function on it).
2024-02-20 15:02:59 +01:00
arch1t3cht 1515c77438 Fix widths of time columns for fonts with proportional figures
This still breaks when the 0 digit is narrower than some other
digit, but that's unlikely and the current behavior now matches
the original behavior when all times are < 10h.

Fixes arch1t3cht/Aegisub#111 .
2024-02-19 14:22:27 +01:00
arch1t3cht 63bbdc32d3 lua: Make frame:getPixel return three values
This is what users will want in the majority of cases, and switching
to this makes using this function much easier.

However, this does break backwards compatibility. Luckily to my
knowledge this function is not actually used in any existing published
script (all scripts using get_frame just use getPixelFormatted instead)
so the damage shouldn't be too large. But this is also why I'd rather
rip off the band-aid of breaking backwards compatibility now than later.
2024-02-18 02:34:18 +01:00
arch1t3cht c11f17b9e6 lua: Correct refcount handling in get_frame
When destroying a frame handle, the previous logic would copy the
shared_ptr in the userdata and then free it twice (once explicitly
and once at the end of the function), which is actually UB, even
if if worked fine so far. This commit now ensures that it's the
actual userdata's shared_ptr that's freed in the gc function.
2024-02-18 02:34:18 +01:00
arch1t3cht 48855787a1 lua: Fix FrameDestroy function name 2024-02-18 02:34:18 +01:00
arch1t3cht ba9f48a0e5 Merge branch 'misc' into feature 2024-02-08 21:26:04 +01:00
arch1t3cht eaf09b2850 Fix widths of time columns for times >10h
An unfortunate consequence of this is that the grid widths have to
be computed on every change to line timing, which will probably
have an impact on timing performance when autocommit is enabled.
It's probably not a huge impact but it's worth keeping an eye on.
2024-02-08 21:22:35 +01:00
arch1t3cht e67fe10c4b Merge branch 'misc' into feature 2024-02-08 20:43:59 +01:00
Oneric 8fcb7c61e8 Stop truncating parsed times to <10h
All current renderers and muxers have no issues with longer timestamps.
However, classic VSFilter keeping track of time with a 32-bit int,
leads to a more meaningful limit at 596h, so enforce that instead.

Since the stringification code for SRT and ASS (but not SMPTE) relied on
hours being single digit, replace them with a simple format string.

GUI inputs are still limited to <10h, but at least
pre-existing timestamps no longer get mangled.
2024-02-08 20:43:32 +01:00
arch1t3cht 069cd48cac Merge branch 'bugfixes' into feature 2024-01-20 00:13:37 +01:00
arch1t3cht 7e24a5f3a5 Fix compilation error for assdraw command
This broke on wxWidgets master.
Really this command could just be removed entirely but I'll keep it
around for now.
2024-01-20 00:12:43 +01:00
arch1t3cht 6af7c6bddf Merge branches 'workarounds' and 'bestsource' into feature 2023-12-27 06:53:22 +01:00
0tkl 167b4add50 bestsource: Update ffmpeg API usage for keyframes 2023-12-27 06:52:56 +01:00
0tkl 29c8054b50 Update ffmpeg wrap to 6.1 2023-12-27 06:50:37 +01:00
arch1t3cht b0c77beef6 Merge branch 'bugfixes' into feature 2023-12-26 16:54:47 +01:00
arch1t3cht 8650e12364 Download hunspell dictionaries from GH repo
Since the download from SourceForge frequently fails,
the English dictionaries are now hosted in a TypesettingTools
repository.
2023-12-26 16:53:32 +01:00
arch1t3cht eca52e4166 Merge branch 'workarounds' into feature 2023-12-26 16:20:07 +01:00
arch1t3cht 8e60a46c01 Work around double buffering issue in wx master
See https://github.com/wxWidgets/wxWidgets/issues/23585 .
This patch reverts commit fb4f0b590c42a66263debf926617c00b157c9a in
wxWidgets.
2023-12-26 16:16:12 +01:00
arch1t3cht 1eea4ca69c Remove stray BOM in dav1d patch 2023-12-26 16:15:39 +01:00
arch1t3cht 7f928e8d6d Merge branch 'bugfixes' into feature 2023-12-02 18:08:47 +01:00
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 160cf46b98 Merge branch 'bugfixes' into feature 2023-12-02 17:27:55 +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 786f082673 Merge branch 'workarounds' into feature 2023-11-24 23:10:07 +01:00
arch1t3cht ffb95f1375 Bump wxWidgets wrap back down to 3.1.4
Fixes arch1t3cht/Aegisub#99 .
Of course one day icon scaling should be sorted out properly,
but for now let's just revert.
2023-11-24 23:08:49 +01:00
arch1t3cht 8947e20dbb Merge branch 'bugfixes' into feature 2023-11-24 21:02:09 +01:00
arch1t3cht 18d088c479 Fix hunspell include and wrap 2023-11-24 20:53:07 +01:00
arch1t3cht 20caaabc07 Merge branch 'vapoursynth' into feature 2023-11-23 11:32:41 +01:00
arch1t3cht 928a2d4c6c vapoursynth: Fix lwindex parsing when video is not the first stream
SubKt my beloved...
This was broken in 0d281af269 and is fixed
in a more robust way in this commit.
2023-11-23 10:00:11 +01:00
arch1t3cht 07fa563fa6 vapoursynth: Ignore __aegi_timecodes on single-frame clips
The vfr class (understandably) does not like timecode lists with only
one element, so the current default script breaks when opening images.
So to not bloat the default script too much we just ignore
__aegi_timecodes in the provider in these cases.
2023-11-23 09:40:04 +01:00
arch1t3cht 5ceaa45f3a Merge branch 'bugfixes' into feature 2023-11-21 21:20:52 +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 693959801f ci: Add manual trigger option 2023-11-15 19:04:50 +01:00
arch1t3cht 752a14cc25 Merge branch 'bugfixes' into feature 2023-11-06 22:45: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 fd753c58a5 Merge branch 'vapoursynth' into feature 2023-11-03 02:27:20 +01:00
Setsugennoao 568597bddc vapoursynth: Fix VSScript DLL loading
We do this by first trying to fetch its location from the registry, then PATH
2023-11-03 02:24:46 +01:00
arch1t3cht 95500b84fd Merge branch 'vapoursynth' into feature 2023-11-01 20:35:21 +01:00
arch1t3cht 0d281af269 vapoursynth: Fix lwindex parsing for files with multiple video streams 2023-11-01 20:32:32 +01:00
arch1t3cht fac664ad10 Merge branch 'workarounds' into feature 2023-10-27 16:41:40 +02:00
arch1t3cht 6dda04da9f Revert "Parially revert fffb138b8175b4838b6a063863756b7c6b2db547"
This reverts commit c487dd2bdb.

Revert the commit that
partially reverted fffb138b81 ...
It turns out that this very much did break IME input, so reverting
this for now. This does make Aegisub use private symbols in wx again,
but the CI builds build wx from the wrap now. Still, this is why
this is on the workarounds branch. If this breaks for too many
people this could either go behind a meson option or be fixed in
some better magical way that I have yet to find.

Fixes arch1t3cht/Aegisub#90
Fixes arch1t3cht/Aegisub#91
2023-10-27 16:40:21 +02:00
arch1t3cht dd303b1c9d Merge branch 'misc' into feature 2023-10-25 20:20:55 +02:00
arch1t3cht 2ac3bdf870 Allow reading compressed subtitles from mkv
The error handling inside of read_subtitles is a bit clumsy here,
but it's probably the best we can get without bigger refactors.
2023-10-25 20:20:04 +02:00
arch1t3cht 795dffc072 Merge branch 'bugfixes' into feature 2023-10-18 23:30:11 +02: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 4a939d1954 Merge branches 'vapoursynth' and 'fixes' into feature 2023-10-18 21:22:54 +02:00
arch1t3cht 47b10e5ffc Fix progress dialog when switching from indeterminate to setting progress 2023-10-18 21:21:37 +02:00
arch1t3cht 2dbee37ad8 vapoursynth: Copy aegisub_vs.py to build folder for testing 2023-10-18 14:51:28 +02:00
arch1t3cht a1b3e0d9f1 vapoursynth: Allow scripts to control the progress dialog
This happens via VapourSynth's message logger.
Also add wrapper functions for this to aegisub_vs.py and add progress
updates everywhere - both to improve UX and to help with debugging for
when scripts get stuck somewhere.
2023-10-18 14:51:28 +02:00
arch1t3cht 79b3f4ccb0 vapoursynth: Add option to enable/disable user plugin loading
On Windows, plugins are shipped with Aegisub now and loaded from
aegisub_vs.py, so user plugins installed out of Aegisub are more
likely to just interfere with that (like when the user has an
old version of libvslsmashsource installed).
So this option defaults to off on Windows, but to on everywhere else
since VS plugins aren't shipped with Aegisub there.

Note that this option only disables autoloading of user plugins.
VapourSynth loads system plugins no matter what.
2023-10-18 13:31:47 +02:00
arch1t3cht 4ebdc2b82c Merge branches 'bugfixes', 'video_provider_rework' and 'avisynth' into feature 2023-10-17 18:31:11 +02:00
arch1t3cht fabc6e436f osx: Sign executable and libraries after bundling 2023-10-17 18:26:49 +02:00
arch1t3cht 858f4acf35 avisynth: Decrease refcount again when constructor fails
Proper fix to the issue that f5a730fa45
was trying to fix.

Fixes arch1t3cht/Aegisub#61 .
2023-10-15 23:08:39 +02:00
arch1t3cht a9eed184c2 Revert "avisynth: Only increase refcount when fully initialized"
This reverts commit f5a730fa45.
2023-10-15 22:58:23 +02:00
arch1t3cht dd3016a89d Further fixes to audio/video provider selection
- Fix selection not aborting when the preferred provider returns null
- Fix the default video provider being "ffmpegsource" (lowercase)
  instead of "FFmpegSource", which would trip up provider selection
- More generally, make sure the preferred video provider actually exists
  and fall back to the default (FFmpegSource) if not.

Fixes arch1t3cht/Aegisub#23 .
Fixes arch1t3cht/Aegisub#61 .
Fixes arch1t3cht/Aegisub#83 .
2023-10-15 22:27:21 +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 b3eb182259 Merge branch 'bugfixes' into feature 2023-10-13 23:56:15 +02:00
arch1t3cht ee247419b6 Merge branch 'workarounds' into feature 2023-10-13 23:55:52 +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 c67ba9f70c Update ffmpeg wrap to 6.0 following ffms2 updates
Also bump libdav1d and turn the wrap patches into diffs. This requires
bumping the minimum meson version to 0.63, but meson 1.0 is available
pretty much everywhere now so this should be fine.
2023-10-13 23:46:11 +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 82b7e96cea Merge branches 'bugfixes' and 'fixes' into feature 2023-10-13 00:36:09 +02:00
arch1t3cht a631bf192c lua: Fix dialog dropdowns that are empty by default on Mac 2023-10-13 00:32:36 +02:00
arch1t3cht ad92ccf01a Fix cleantags with \k tags with noninteger durations
Fixes arch1t3cht/Aegisub#92 .
2023-10-13 00:26:26 +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 61ec2bc3e7 Merge branch 'fixes' into feature 2023-09-17 18:49:10 +02:00
arch1t3cht edae653584 Deduplicate automation autoload path, for real this time
Replaces the incorrect fix in 642251b
Fixes arch1t3cht/Aegisub#15
2023-09-17 18:47:42 +02:00
arch1t3cht 8fb8e90006 Merge branches 'bugfixes' and 'workarounds' into feature 2023-09-12 16:18:00 +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 9acb673457 Also add Dark Mode option on OSX
While it's not actually exposed there, it's used internally in various
GUI code.
2023-09-12 14:55:21 +02:00
arch1t3cht 1fde843630 Merge branches 'fixes' and 'bugfixes' into feature 2023-09-10 14:04:30 +02:00
arch1t3cht 4a97bb0dd2 meson: Update luajit wrap for luajit's rolling releases 2023-09-10 14:04:04 +02:00
Alex James 4f67db8dd7 libaegisub: Avoid calling iconv_close(iconv_invalid)
IsConversionSupported unconditionally calls iconv_close on the
descriptor returned by iconv_open. This may result in crashes if
iconv_open returns iconv_invalid.
2023-09-07 19:38:59 +02:00
arch1t3cht 41ef3fa56a vapoursynth: Remove old and incorrect docstring sentence 2023-09-05 00:21:11 +02:00
arch1t3cht 11fece4c03 Merge branch 'vapoursynth' into feature 2023-08-15 16:05:01 +02:00
arch1t3cht b2ee8ac036 vapoursynth: Make loading error messages a bit more helpful 2023-08-15 16:04:53 +02:00
arch1t3cht a867f0cc30 Merge branch 'workarounds' into feature 2023-08-09 18:30:51 +02:00
arch1t3cht 418514456e Disable sunken or raised borders for dark mode
Co-authored-by: arch1t3cht <arch1t3cht@gmail.com>
2023-08-09 18:29:04 +02:00
sepro 061a860e2e Add option to enable experimental dark mode 2023-08-09 18:07:52 +02:00
sepro 5944d7999c Add option to build on wxWidgets master 2023-08-09 18:07:13 +02:00
sepro 0f897ba0eb Add nasm fallback url 2023-08-09 18:03:11 +02:00
arch1t3cht 4659bb2802 Merge branch 'bugfixes' into feature 2023-08-09 18:02:46 +02:00
sepro 0637bcdc7f Add nasm fallback url 2023-08-09 18:01:09 +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
arch1t3cht 239d585512 Merge branches 'vapoursynth' and 'fixes' into feature 2023-07-31 23:55:51 +02:00
arch1t3cht c61f149a37 Merge branch 'fixes' into feature 2023-07-31 23:48:14 +02:00
arch1t3cht 47c923d4ed unicode-monkeypatch: use tostring() in io.open error handling
msg can be nil, which would previously error out when trying to print it.
2023-07-31 23:41:43 +02:00
arch1t3cht 263c2b9189 vapoursynth: Make askyesno method configurable
In particular, don't always import tkinter.messagebox since not all
Python distributions include tkinter.
2023-07-29 20:08:54 +02:00
arch1t3cht 66127f8c40 Merge branch 'bugfixes' into feature 2023-07-18 16:02:24 +02:00
0tkl 0fd12795da fix typo in meson wrap file 2023-07-18 16:01:59 +02:00
arch1t3cht a957af9a12 Merge branch 'bugfixes' into feature 2023-07-16 19:51:16 +02:00
arch1t3cht 6754ff8775 installer: Update paths to Avisynth libraries 2023-07-16 19:51:05 +02:00
arch1t3cht f9be4a854f Merge branches 'workarounds' and 'video_provider_rework' into feature 2023-07-16 17:57:09 +02:00
arch1t3cht d97c16cb7c Disable icu subproject in harfbuzz
Harfbuzz updated its ICU detection, which now picks up our subproject,
but isn't actually compatible with it.
2023-07-16 17:56:23 +02:00
arch1t3cht d3325eef6c Revert "meson: revert icu detection in harfbuzz"
This reverts commit 36a18e5ba3.
2023-07-16 17:55:32 +02:00
arch1t3cht dbe30b4da5 Revert "Point Yutils to fixed fork"
This reverts commit 12a5050365.
2023-07-16 17:55:19 +02:00
arch1t3cht 02567c2265 Rework the audio/video provider system
This became necessary now that more providers were added. Providers can
be proritized for certain file types (e.g. .vpy files will always be
opened with VapourSynth), and when the default provider fails on a file,
the user will be notified and be asked to pick an alternative provider.
2023-07-16 17:52:21 +02:00
arch1t3cht 7ca8b4c008 Merge branch 'misc' into feature 2023-07-14 00:06:52 +02:00
arch1t3cht 644a4ca9f7 Allow fractional frame rates in dummy video
The validation code for the dummy video dialog is kind of dirty but I've
had this lying around for months and just want to get it done...
2023-07-14 00:05:46 +02:00
arch1t3cht 96123cb6da Merge branch 'xa2-ds' into feature 2023-07-12 02:52:58 +02:00
arch1t3cht 42c71c4775 Add XAudio2 redistributable DLL for older Windows versions
The CI builds link against XAudio2_9, which isn't available on Windows 8
and lower. As a quick and dirty workaround, this commit ships the
XAudio2 redistributable on those older Windows versions. Simply renaming
the redistributable to XAudio2_9.dll isn't strictly allowed by the
documentation, but it works and is probably an acceptable hack to
support an outdated operating system...

Fixes arch1t3cht/Aegisub#16 .
2023-07-12 02:49:09 +02:00
arch1t3cht 0479b310e8 Merge branch 'video_panning_option' into feature 2023-06-27 02:15:54 +02:00
arch1t3cht 3f017bc29c video zoom: Add pan_reset command to video context menu 2023-06-27 02:15:18 +02:00
arch1t3cht eb6f31c077 Merge branch 'lua_api' into feature 2023-06-21 21:31:03 +02:00
arch1t3cht e483c5e48f lua: Fix crash after 79050df
Replacing all uses of LuaToAssEntry with LuaToTrackedAssEntry
also replaced its use in LuaParseKaraokeData, which would cause a double
free when canceling a script after calling parse_karaoke_data.
2023-06-21 21:29:23 +02:00
arch1t3cht 9e8ac83998 Merge branches 'vapoursynth' and 'info' into feature 2023-06-11 01:22:14 +02:00
arch1t3cht 1f6684823c vapoursynth: Add "ask" mode for get_keyframe 2023-06-11 01:22:06 +02:00
arch1t3cht fd401f059a README: Clarify where to find builds and some other updates 2023-06-10 02:08:45 +02:00
arch1t3cht d06a31968d vapoursynth: Add buttons to set default scripts to default 2023-06-08 18:41:12 +02:00
arch1t3cht 7bc18fec26 Merge branch 'folding' into feature 2023-06-01 23:35:39 +02:00
arch1t3cht b41f6bde71 Don't immediately delete unused extradata entries
Instead, count how many consecutive times the entry has been found to be
unused and delete it once that count exceeds a limit. This will prevent
excessive reallocating of extradata ID's in applications like folding.
2023-06-01 23:35:26 +02:00
arch1t3cht 58d6ab520b folding: Also update counterpart for fold operations
This wasn't necessary before since the internal representation of
folds is be checked for consistency after each commit, but after the
switch to extradata fold operations would leave the extradata in an
invalid state. This isn't technically a problem, but it does leave more
extradata entries lying around than necessary, and it can trip up
automation scripts that aren't prepared for inconsistent fold state.
2023-06-01 23:01:32 +02:00
arch1t3cht 58c0130d81 Fix default hotkeys commands for splitting lines
These commands were revamped in 0ef9963 but the default hotkeys were
never updated. The hotkeys were automatically migrated, but resetting
the settings back to defaults would still set invalid settings.
2023-05-30 01:45:53 +02:00
arch1t3cht dba4f4924e Merge branches 'lua_api' and 'bugfixes' into feature 2023-05-29 14:52:31 +02:00
arch1t3cht f3d6eea3b9 Fix AppImage build on CI 2023-05-29 14:43:34 +02:00
wangqr 055c87cd21 Reallocate static ranges for wxMenuItem
Previously different menus may use conflict ids in range 10000~.

Fix TypesettingTools/Aegisub#53
See also Aegisub/Aegisub#131
2023-05-25 23:13:05 +02:00
arch1t3cht 42f7e53e92 lua: Don't check_stack in LuaCheckStack destructor
This would cause an assertion failure in functions like lua_for_each
when the given closure throws an error and thus leaves some  values on
the stack. This can make Aegisub crash entirely instead of just catching
and reporting the error. Instead, these stack_checks can be done
manually.
2023-05-22 09:23:22 +02:00
arch1t3cht 79050dfdfb lua: Fix memory leak on aegisub.cancel() 2023-05-21 20:26:33 +02:00
arch1t3cht 64b92a95ac folding: Simplify fold operation code 2023-05-19 18:45:40 +02:00
arch1t3cht 5e51c59e8e Merge branch 'vector_clip_actions' into feature 2023-05-18 23:40:56 +02:00
arch1t3cht c8f8e8ac42 visual tools: Add setting for shape handle size 2023-05-18 23:39:00 +02:00
arch1t3cht 4365b16524 Merge branch 'pr_at_po-de' into feature 2023-05-01 17:33:48 +02:00
arch1t3cht b150b6bfc7 po/de: Add missing space 2023-05-01 17:08:33 +02:00
Oneric a6cf70ba59 po/make_pot: also update PO files
While meson already provides the aegisub-update-po target
for this exact purpose, it insists on also running meson’s
aegisub-pot target first, leading to missing translation strings.
2023-04-30 18:09:48 +02:00
Ananji Peixoto da Costa 0e9dd4b311 po/pt_BR: fix antes/depois confusion
pt_PT already uses the correct translation.
Cherry-picked-from: d771fb21af
2023-04-30 17:56:05 +02:00
Oneric 2f4258a8b4 po/de: add some trivial translations 2023-04-30 17:56:05 +02:00
Oneric 5b66d473d2 po/de: fix a few errors
Implements suggestions by arch1t3cht.
2023-04-30 17:56:05 +02:00
Oneric da9842b70c po/de: import German translation from wangqr’s fork
This fixes a bunch of misspellings, borked C format strings and
increases translation coverage from 1288/1612 to 1516/1612
where still missing strings mostly don’t exists in wangqr’s build.

Original commit:
98abe53b15
2023-04-30 17:56:05 +02:00
Oneric 6b3cb7ec63 po: regenerate pot and po files
Using make_pot.sh and
  msgmerge --no-fuzzy-matching --sort-by-file $i.po aegisub.pot
since meson’s aegisub-pot target are still not covering all
translatable strings yet.
2023-04-30 17:56:05 +02:00
Oneric bc3358fcfe po/make_pot: increase portability across shells
Base POSIX leaves the handling of backslahes in the operand
implementation defined. The XSI extension specifies several
escape sequences, like e.g. \n, which shall be transformed
upon printing.
Current make_pot.sh expects XSI behaviour and indeed e.g.
dash’s echo builtin implements this. echo builtins of other common
shells such as bash however, do not (by default). Avoid this portability
pitfall by just using printf at all relevant places. See:
  https://pubs.opengroup.org/onlinepubs/9699919799/utilities/echo.html
  https://pubs.opengroup.org/onlinepubs/9699919799/utilities/printf.html

This also allows us to stop substituting each backslash with four
backslashes before piping to maybe_append. This substituion existed
to safely pass backslahes through maybe_append’s two layers of echo.

Also improve quoting. For consistency prefer single-quote quoting over
shell backslash escapes. QUote the unguarded *.lua to ensure it will
continue to work if there happen to be any lua files in the scripts
working directory.

This supersedes commits from wangqr/Aegisub which adjusted quoting and
echo usage to work with different shells. This is more throughout and
doesn't introduce semi-broken intermediate states.
  0fbcaea871
  4aee271d03
  940181c7bc
(Note the second commit actually didn't manage to achieve the intended
portability, since several echo usages remained and it forgot to adjust
the backslash substitution, which was then fixed in the third commit.)
2023-04-30 17:46:20 +02:00
Oneric f417f6f1ad po/Make_pot: replace xmlstarelet+jq with gettext
gettext can deal with AppData (and other XML files)
since version 0.19.6 (2015). We already depend on gettext anyway so
let’s utilise this, to get rid of two build dependencies and simplify
the extraction logic.
This depends on the removal of underscore prefixes
as done in a prior commit.

After this the developer name "Aegisub Group"
is now also treated as a translateable string.
2023-04-30 17:40:55 +02:00
Oneric 6d9901ee3c po/make_pot: use gettext to process desktop file
gettext understands desktop files since 0.19 (2014),
so there’s no need for custom grep logic. This change
matches meson’s i18n which also uses gettext for this.

As a side efffect of this some long strings now get
broken into multiple lines (cosmetic only) and some
blank line gaps are normalised by gettext.

Cherry picks: 0e29c8d0e4
With fixups from: e98b7292f1
2023-04-30 17:38:28 +02:00
Oneric afa290ecfb po/make_pot: don't silently omit strings if utilities are missing
Instead abort the script on any errors, which
also helps detecting other unexpected errors.

Adopts parts of: 940181c7bc
  and 4aee271d03
2023-04-30 17:10:27 +02:00
Oneric 87d810254c po/make_pot: sort lua files in POT
find may output matching files in any order.
To avoid unnecessary changes between regeneration
sort its output. For C++ sources xgettext’s --sort-by-file
already has an equivalent effect. All other files are already
statically listed in a fixed order.

Adopts part of: 4aee271d03
2023-04-30 17:10:27 +02:00
Oneric 5c00368e85 build: consider all translation keywords for C++
And document which aprts are still missing.
The keyword list is are copied from make_pot.sh.
Sorting by file helps keeping future PO(T) update diffs small'ish
and is also done in wangqr’s PO-file update procedure. (POT file
generation also sorts, but by preapplying `LC_ALL=C sort` to the
file list instead of using xgettext’s sorting option.)

Without this, meson’s aegisub-pot missed the majority of translatable
strings from C++ sources. While this brings the target much closerto
make_pot.sh, the remaining strings aren't straigthforward to integrate
unfortunately. At the time of writing meson has no support for iss files
and make_pot.sh uses custom logic to select only specific strings
from Lua and JSON files.

Even after this commit, POT updates should
thus still continue to use make_pot.sh.
2023-04-30 17:10:24 +02:00
Oneric 8c35b1d642 Integrate appdata.xml into meson build
It used to be genrated and installed by the old custom build system,
but apparently got lost in switching to meson.

Rename to .in.in instead of .template.in, since i18n otherwise gets
utterly confused failing to recognise the file type and both erroring
out with "no ITS rules found" during merge_file and failing to extract
any translatable strings.
Also drop underscores which were previously processed by intltool.

This doesn't yet automatically replace the release version and date
in the appdata file, but neither did the old build.

Note: while this slightly improves the situation, meson’s aegisub-pot
target is still missing many strings. make_pot.sh should be used.
2023-04-30 03:09:56 +02:00
Oneric 2b33e45f23 Update links in appdata.xml 2023-04-30 03:09:56 +02:00
Oneric 66efa84eed Integrate desktop file translation into meson
meson’s i18n module get’s confused by .template and fails
to extract translatable strings, thus rename to in.in.

Note: while this slightly improves the situation, meson’s aegisub-pot
target is still missing many strings. make_pot.sh should be used.
2023-04-30 03:09:56 +02:00
Oneric 429455263f Fix generation and translation of desktop file
a91c4f70c3 switched processing of the
desktop file from intltool to gettext-backed i18n.merge_file and dropped
leading underscores which used to be processed by intltool.

However, this commit omitted dropping the underscore from Keywords,
resulting in this field being stripped from the installed version.

Furthermore, make_pot.sh was broken since it too relied on the
underscore meaning POT regeneration will now remove the desktop files
strings from translation files.
Since it was not added to po/POTFILES meson’s native aegisub-pot target
also doesn't add desktop file strings to the translation pool. Though,
this target still misses a lot of other strings as well and shouldn't be
used yet anyway.

This commit removes leftover underscores and reintegrates desktop file
strings into both make_pot.sh. Integration into aegisub-pot is done in a
follow-up commit.
2023-04-30 03:09:56 +02:00
arch1t3cht db0e79323f Merge branch 'vapoursynth' into feature 2023-04-29 21:28:36 +02:00
arch1t3cht 3d278547fe vapoursynth: Add Mac support 2023-04-29 21:24:14 +02:00
arch1t3cht ff20805ae6 Merge branch 'vector_clip_actions' into feature 2023-04-29 01:16:08 +02:00
arch1t3cht 20cc0b8077 perspective tool: Support drawings
This will not work in more complex cases like lines containing both text
and drawings, but it's correct in simpler ones.
2023-04-29 01:11:38 +02:00
arch1t3cht 9c2d6169c6 perspective tool: Fix uninitialized variable 2023-04-29 01:11:15 +02:00
arch1t3cht 82dffcb9f9 Disallow negative spacing in style editor again
Since it turns out that this is not supported by the renderer anyway,
see arch1t3cht/Aegisub#48 .
2023-04-27 16:02:26 +02:00
arch1t3cht 00e241d74b Merge branches 'video_panning_option' and 'bestsource' into feature 2023-04-23 15:39:41 +02:00
arch1t3cht 0c057ebddb bestsource: Unify some messages with ffms2's 2023-04-23 15:39:11 +02:00
arch1t3cht 0f13a75a42 video zoom: Fix reset command capitalization 2023-04-21 22:59:02 +02:00
arch1t3cht 18fd966bd9 Merge branch 'bugfixes' into feature 2023-04-21 16:38:55 +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 43d65b906b Also detect fonts used in drawings in font collector 2023-04-07 18:49:09 +02:00
arch1t3cht 26a5f00c8a Merge branch 'bugfixes' into feature 2023-03-28 08:40:58 +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 1de8d04a43 Merge branches 'bugfixes' and 'vapoursynth' into feature 2023-03-24 20:31:07 +01: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
LightArrowsEXE 178551071e make_keyframes: Set default format to GRAY8
This will allow clips with non-standard resolutions to be downscaled without any concerns.
2023-03-24 01:01:29 +01:00
arch1t3cht 9a7314015f vapoursynth: Unify capitalization 2023-03-24 01:01:29 +01:00
arch1t3cht af9d659c93 vapoursynth: Add try_get_keyframes function to aegisub_vs.py 2023-03-24 01:01:29 +01:00
LightArrowsEXE 84d67c73b0 make_keyframes: Set default format to GRAY8
This will allow clips with non-standard resolutions to be downscaled without any concerns.
2023-03-16 15:14:08 +01:00
arch1t3cht 256ddab369 vapoursynth: Ship plugins on windows and add ensure_plugin function 2023-03-16 02:26:10 +01:00
arch1t3cht 61b8a16cd8 vapoursynth: Unify capitalization 2023-03-16 02:26:10 +01:00
arch1t3cht 041e9fc70c vapoursynth: Add try_get_keyframes function to aegisub_vs.py 2023-03-16 02:26:10 +01:00
arch1t3cht e7e56ef5e0 Fix validation for perspective/lock_outer 2023-03-04 13:32:55 +01:00
arch1t3cht 5050bad8ac lua: Scroll large dialogs automatically 2023-03-04 12:52:46 +01:00
arch1t3cht d2c46f5dca bestsource: Forward error messages 2023-02-28 15:17:11 +01:00
arch1t3cht 798262ff1c Merge branch 'fixes' into feature 2023-02-25 12:33:15 +01:00
arch1t3cht 15d215f36d lua: Interact with clipboard on main gui thread
Fixes arch1t3cht/Aegisub#22 .
2023-02-25 12:31:27 +01:00
arch1t3cht fde3dd0dbf Merge branch 'fixes' into feature 2023-02-25 02:24:28 +01:00
arch1t3cht 7f52346f06 lua: Handle file dialogs completely on main gui thread
wx doesn't seem to like the dialogs being created on some other worker
thread, which makes file dialogs opened by lua scripts crash in various
ways on Linux. Doing everything on the main thread hopefully fixes this.

Fixes TypesettingTools/Aegisub#51 .
2023-02-25 02:22:13 +01:00
arch1t3cht 6f073c6a31 Merge branch 'vapoursynth' into feature 2023-02-24 01:42:58 +01:00
arch1t3cht 1f2eaaf6e4 vapoursynth: Show logged messages in progress window 2023-02-24 01:42:30 +01:00
arch1t3cht 097a0f45be vapoursynth: Remove file access checks
These are broken in some edge cases, such as smb mounts on Windows.
Paired with d96fc1f70d.
2023-02-24 01:42:30 +01:00
arch1t3cht 628d740108 vapoursynth: Add status dialog when running script 2023-02-24 01:42:30 +01:00
arch1t3cht ad38400ab9 vapoursynth: Improve default scripts and add utility functions
Add a utility library that wraps LWLibavSource and can parse its .lwi
file to obtain timecodes and keyframes. It also contains a function to
generate and save keyframes using WWXD or Scxvid. Update the default
scripts to use these functions.
2023-02-24 01:42:30 +01:00
arch1t3cht b5a646de66 Merge branch 'vapoursynth' (early part) into feature 2023-02-24 00:30:21 +01:00
arch1t3cht 8b605c8fb5 Merge branches 'workarounds', 'bestsource', 'misc', 'info', 'wangqr_gui', 'fixes' and 'avisynth' into feature 2023-02-24 00:29:28 +01:00
wangqr bf240c9770 Add Apply button to select lines dialog
Allow modifying selection without closing dialog.

Fix wangqr/Aegisub#49
2023-02-24 00:13:22 +01:00
wangqr c7d757b91e Save state of "show original"
Fix wangqr/Aegisub#41
2023-02-24 00:11:12 +01:00
arch1t3cht e425ce4d9e vapoursynth: Allow __aegi_timecodes to be a path to a timecodes file 2023-02-23 23:55:00 +01:00
arch1t3cht 29ba61e55d vapoursynth: Allow __aegi_keyframes to be a path to a keyframes file 2023-02-23 23:55:00 +01:00
arch1t3cht 384fc69208 vapoursynth: Allow script to supply timecodes, keyframes, and audio flag
These are read from the __aegi_timecodes, __aegi_keyframes, and
__aegi_hasaudio variables respectively.
2023-02-23 23:54:56 +01:00
arch1t3cht e994934e24 Link ffmpeg with dav1d to enable AV1 support.
The patched meson.build for dav1d just changes the include_directories
from 'include/dav1d' to 'include' and, while we're at it, removes the
pkg_config stuff to avoid a deprecation warning.

AV1 decoding is pretty broken in upstream ffms2, so point the wrap to a
fork that has some hack patches for it. BestSource works fine out of the
box, though.
2023-02-20 17:16:23 +01:00
arch1t3cht d399e44061 bestsource: Always get exact duration
Fixes arch1t3cht/Aegisub#27.
2023-02-13 17:05:05 +01:00
arch1t3cht 7485ae46a1 bestsource: Fix timecode computation
(derp.)

Fixes arch1t3cht/Aegisub#27.
2023-02-13 13:34:08 +01:00
arch1t3cht 1734f00d8a Don't assume a max length in fs::ShortName 2023-02-12 15:05:21 +01:00
arch1t3cht 6874419564 Make touch pad scroll in the subtitle grid smoother 2023-02-10 00:55:44 +01:00
arch1t3cht 9a9cc66b27 README: Add required vapoursynth plugins for default script 2023-02-09 12:50:49 +01:00
arch1t3cht d7e7c3a7f0 Set longPathAware in manifest 2023-02-09 02:36:39 +01:00
arch1t3cht 464c4f9f4e Add manifest as regen dependency 2023-02-09 02:36:39 +01:00
arch1t3cht 6704a8e57d avisynth: Remove file access checks
These are broken in some edge cases, such as smb mounts on Windows.
Paired with d96fc1f70d.
2023-02-08 17:41:31 +01:00
arch1t3cht d96fc1f70d Don't try other providers after FileNotFound error
Otherwise this can cause confusing error messages from unrelated
providers when simply opening an invalid path.
2023-02-08 17:37:44 +01:00
wangqr e4f0a9a510 Fix initial state of AudioTimingControllerDialogue
It should not be in alt-dragging mode by default.

Fix TypesettingTools/Aegisub#32
2023-02-08 00:50:48 +01:00
arch1t3cht c348f8582a vapoursynth: Add a preferred cache directory and clean it when necessary 2023-02-05 02:32:57 +01:00
arch1t3cht 32aaf6372c vapoursynth: Set path variables and import path in python 2023-02-05 02:28:06 +01:00
arch1t3cht 15f4da61d3 bestsource: Clean index cache when necessary 2023-01-31 02:47:02 +01:00
arch1t3cht 5dfa94d22d Fix missing comma in videoList
... ever wondered why you can't drag .webm files into Aegisub?
This is why.
2023-01-31 02:06:54 +01:00
arch1t3cht e2fb3a7e43 bestsource: Pin wrap
This is to fix upstream not compiling against ffmpeg 4.4 anymore.
2023-01-30 17:22:43 +01:00
arch1t3cht 66c90b7ed8 vfr: Ensure nonzero denominator 2023-01-30 01:56:52 +01:00
arch1t3cht 88867d402c vapoursynth: Default to 25fps when no clip fps set
This matches the behavior of the FFMS video provider.
2023-01-30 01:55:22 +01:00
arch1t3cht 79a0655eb8 Merge branch 'folding' into feature 2023-01-27 02:55:50 +01:00
arch1t3cht 57572e5686 Merge branch 'vector_clip_actions' into feature 2023-01-26 23:34:27 +01:00
arch1t3cht a632f5f7ee Revert "Merge branch 'vector_clip_actions' into feature"
This reverts commit bd4e79fdf9, reversing
changes made to 9d4a67b523.
2023-01-26 23:34:14 +01:00
arch1t3cht c6b901dfbe Merge branches 'bugfixes', 'workarounds', 'fixes', 'gui', 'xa2-ds', 'avisynth', 'vapoursynth' and 'video_panning_option' into feature 2023-01-26 23:12:07 +01:00
arch1t3cht 86dfadb852 Merge branch 'misc' into feature 2023-01-26 23:11:37 +01:00
arch1t3cht cd8169bdf2 Merge branch 'cibuilds' into feature 2023-01-26 23:05:17 +01:00
arch1t3cht 0485c1aaf0 ci: Run on every push
There's no monthly time limit anymore, so there's no harm in just
building on feature.
2023-01-26 23:02:49 +01:00
arch1t3cht 12a5050365 Point Yutils to fixed fork 2023-01-26 23:02:11 +01:00
arch1t3cht d860c710c0 Throw shit at the wall until it builds with boost 1.81
This is nothing more than duct tape, do not pull.
In the long run boost::filesystem should just be replaced with
std::filesystem (as done in tgoyne/Aegisub:cmake), but this would
complicate the history and cause merge conflicts for a bunch of pulls.
Hence this horrible temporary solution.
2023-01-26 22:56:53 +01:00
arch1t3cht 0d16753d0a Patch ffmpeg wrap to make it find the zlib subproject 2023-01-26 22:56:53 +01:00
arch1t3cht 5c065dc74e Revert "Patch ffmpeg wrap to compile with simd extensions"
Support for these has been added upstream now.
This reverts commit 77cc1a6b22.
2023-01-26 22:56:53 +01:00
arch1t3cht 5dd001388b Revert "ffmpeg wrap: pin version"
This reverts commit 74d75a568e.
2023-01-26 22:56:53 +01:00
arch1t3cht f6954ab903 Point ffi-experiments to fixed fork 2023-01-26 22:56:53 +01:00
arch1t3cht 36a18e5ba3 meson: revert icu detection in harfbuzz 2023-01-26 22:56:53 +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 642251b2dd Deduplicate automation autoload path
Fixes TypesettingTools/Aegisub#168
Fixes arch1t3cht/Aegisub#15
2023-01-26 20:52:20 +01:00
arch1t3cht 36e5275418 visual tools: Add perspective tool 2023-01-25 23:24:11 +01:00
arch1t3cht 352e41f19b video zoom: Fix zoom when script_res != video_res 2023-01-20 00:18:51 +01:00
arch1t3cht 4c2b47d5de visual tools: Fix grid in RotateXY tool
Fix the grid scaling when the video is not at 100% zoom, and scale the
grid with \fscx / \fscy .
2023-01-14 14:20:24 +01:00
arch1t3cht ddfd4501f0 visual tools: Add more tag get functions
Add getters for alignment, outline, shadow, font size, and the raw
extents of the text. Also handle overriding \xbord and \ybord correctly.
2023-01-14 14:18:04 +01:00
arch1t3cht 9cfc72bd83 visual tools: Add RemoveOverride function 2023-01-14 14:16:05 +01:00
arch1t3cht 8b142a05e5 visual tools: Add EndDrag and EndHold hooks 2023-01-14 14:14:42 +01:00
arch1t3cht bfdf01df9a visual tools: Add general interface for setting subtools 2023-01-14 13:56:21 +01:00
arch1t3cht f5a730fa45 avisynth: Only increase refcount when fully initialized
When Avisynth is not installed or not functional, this would otherwise
cause a crash when trying to initialize Avisynth more than once, since
after the first time the refcount would have been incrased anyway.
2023-01-14 00:13:47 +01:00
arch1t3cht 0d0ed49546 vapoursynth: Only set loaded when fully initialized 2023-01-13 23:52:27 +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 c0f337a992 Allow '+' and 'E' in numbers when tokenizing drawings 2023-01-07 14:42:52 +01:00
arch1t3cht 74b9353038 Allow higher decimal precision in style editor
Also, allow negative fsp.
This doesn't change the behaviour of the SpinCtrl increment/decrement
buttons, just the precision that can manually be set. Small values of
fsp can be useful as a hack to disable all ligatures. Precise values of
fscx/fscy can be useful to compensate for anamorphic resolutions. The
other fields were made more precise for consistency.
2023-01-07 14:42:52 +01:00
arch1t3cht 15cca59679 Validate wxVariant type in hotkey CommandRenderer
This fixes a crash on Windows when double-clicking the draggable
separator between the column headers "Command" and "Description" in the
hotkey configuration dialog.
2023-01-02 15:29:00 +01:00
arch1t3cht 1bd426f69a folding: Switch to extradata for storage
This makes the internal juggling of fold data even more complicated, but
it has a number of advantages:
- Folds will preserved even when opening the file with Aegisub builds
  that don't know about folding.
- Folds will be preserved by automation scripts that re-insert every
  line.
- Folds do not break when adding or deleting lines in a text editor or
  some other editor, as long as the lines involving folds aren't
  touched.
- In particular, merging changes using tools like git will not break
  folds.
- Copy/pasting folds also keeps the folds to some extent. This is
  impossible to solve in full generality, but simple cases like
  cut/pasting a folded section somewhere else work, as long as the file
  isn't saved in between.
- This will give automation scripts full access to folding without
  needing to set up any additional API functions.
2023-01-02 02:40:19 +01:00
arch1t3cht 3b02a199f0 vapoursynth: Fix default argument for color range
Unlike the other arguments for the resize function, "range_in" does not
use the same format as in the frame props. A frame prop _Range=1 means
limited, while an argument range_in=1 means full range.
2023-01-02 02:13:04 +01:00
arch1t3cht abe2a81c99 folding: Fix crash when clicking fold column header 2022-12-11 18:53:36 +01:00
arch1t3cht 6d83aa9101 Update CI actions versions 2022-12-01 21:36:09 +01:00
arch1t3cht 74d75a568e ffmpeg wrap: pin version 2022-11-30 22:58:08 +01:00
arch1t3cht 3b7cb30e1f Raise size limit of dummy video in config dialog
This is to facilitate some tricks with tracing rendered subtitles in
programs like GIMP with higher accuracy. Use at your own risk.
2022-11-30 22:35:27 +01:00
arch1t3cht cba8d3644f Remove "Video Panning" option
It's probably stable enough at this point, and hiding it behind an
option just creates more confusion than it prevents.
2022-11-17 17:29:18 +01:00
arch1t3cht b3b4b96238 Fix HDD audio cache provider when channels > 1 2022-11-15 18:31:19 +01:00
arch1t3cht c0edbb2710 Fix syntax highlighting with empty clip 2022-11-09 09:36:45 +01:00
arch1t3cht c8ff1bc960 Clear column width cache after updating grid style
Fixes arch1t3cht/Aegisub#11
2022-11-08 00:49:42 +01:00
arch1t3cht fca902b0a1 CI-Build 2022-11-04 2022-11-04 00:48:42 +01:00
arch1t3cht bd4e79fdf9 Merge branch 'vector_clip_actions' into feature 2022-11-04 00:46:15 +01:00
arch1t3cht b1a9867f16 Visual perspective tool: First functioning version 2022-11-04 00:45:32 +01:00
arch1t3cht 277d1e15cd CI-Build 2022-11-02 2022-11-03 00:03:36 +01:00
arch1t3cht 9d4a67b523 Merge branches 'info', 'video_panning_option', 'fixes', 'misc', 'vapoursynth' and 'wangqr_gui' into feature 2022-11-03 00:03:23 +01:00
arch1t3cht 7ddfef7517 Add syntax highlighting for drawings and vector clips
The highlighting distinguishes drawing commands from coordinates, and
colors x and y coordinates in different colors to make coordinates
easier to visually parse. Furthermore, in cubic Bezier curves, it
underlines the coordinates which corresponds to endpoints of the curves.
2022-11-02 23:58:01 +01:00
arch1t3cht b7f3e19e00 vapoursynth: Don't update script colorspace if colorspace unknown
Aegisub will automatically override the YCbCr Matrix field of the
current file's Script Properties with the video's reported color space.
The FFMS2 provider guesses a color space for all videos, but we don't
do this for Vapoursynth. Thus, we now disable this overriding whenever
the colorspace isn't known.
2022-11-02 23:51:15 +01:00
arch1t3cht a3b131a312 vapoursynth: Reset locale after initializing
On Windows, Python changes the application's locale upon being called,
which will break wxwidgets, causing various assertion error dialogs or
even crashes (for example when interacting with any sort of float edit
control). Saving the locale and restoring it afterwards seems to be
the only really possible way to remedy this.
2022-11-02 23:51:10 +01:00
arch1t3cht 399042e9e9 Revert "fix"
This was a test commit I never meant to push...

This reverts commit cc9d13d21a.
2022-11-02 23:48:59 +01:00
arch1t3cht 4edd619229 README: Typo fix 2022-11-02 23:08:36 +01:00
arch1t3cht 28db5d31ce video zoom: Fix crash on windows when making detached video too small 2022-11-02 23:07:55 +01:00
arch1t3cht 6cc22750c1 Revert "video zoom: Fix crash on windows when making detached video too small"
This reverts commit b38493ee68.
2022-11-02 23:07:03 +01:00
arch1t3cht 2ee6f6e904 Fix overscan mask being half as thick as it should be
The percent values used for the overscan masks follow the BBC's
guidelines, as in
https://en.wikipedia.org/wiki/Overscan#Overscan_amounts .
However, these measure the per-side width as opposed to the total
percentage of width/height being cut off. Thus, they should not be
divided by two when drawing the mask.
2022-11-02 21:57:57 +01:00
arch1t3cht 04ccc15fd4 Fix overscan mask with DPI scaling 2022-11-02 21:57:57 +01:00
arch1t3cht a0d381019f README: wangqr_gui and some general info 2022-11-02 19:50:25 +01:00
arch1t3cht 245cc68afa Fix FrameAtTime computation for CFR
The new formula is just the inverse function of the CFR part of
the TimeAtFrame function.

To see how the previous implementation was faulty, see either the added
tests, or
- In Aegisub, open a dummy video with a frame rate of 23.976
- Make a subtitle event with start time 04:44.41
- Double-click the line to (supposedly) seek to its first frame
- This will seek one frame earlier than it should, and the event will
  not be displayed on the resulting frame.
2022-11-02 02:19:38 +01:00
arch1t3cht 3583e57ddc vapoursynth: use exact fraction for frame rate 2022-11-02 02:18:52 +01:00
arch1t3cht 962295cf1e vapoursynth: Fix offset in audio block's first frame 2022-11-02 02:18:52 +01:00
arch1t3cht a5aa4eca29 vapoursynth: Properly pass through script errors 2022-11-02 02:18:52 +01:00
arch1t3cht 231706239f CI-Build 2022-10-11 2022-10-11 19:09:43 +02:00
arch1t3cht 2bcf0c7555 Merge branch 'video_panning_option' into feature 2022-10-11 18:55:11 +02:00
arch1t3cht b38493ee68 video zoom: Fix crash on windows when making detached video too small 2022-10-11 18:54:55 +02:00
arch1t3cht 0e89f32cfb video zoom: Fix detached video with DPI scaling 2022-10-11 18:31:46 +02:00
arch1t3cht 17831ca0f4 video zoom: Fix visual tools with DPI scaling 2022-10-11 15:15:40 +02:00
arch1t3cht b8b85eb580 Merge branch 'wangqr_gui' into feature 2022-10-10 01:43:27 +02:00
IbarakiKasen 049c1c08d1 Fix wxFlexGridSizer flex grow
Fix wangqr/Aegisub#143
2022-10-10 01:17:35 +02:00
wangqr e69c4e9a86 Expand all widgets in SubsEditBox to get a consistent height 2022-10-10 01:17:35 +02:00
wangqr 53cc316e6f Expand layer SpinCtrl a little
to compensate wxMac bug with GetSizeFromText
2022-10-10 01:17:35 +02:00
wangqr d55922d3cf Don't shrink the size of layer SpinCtrl on GTK3 2022-10-10 01:17:35 +02:00
wangqr 7fe4382d38 Remove hardcoded height of the slider
Before this the slider is only partially displayed
2022-10-10 01:17:35 +02:00
wangqr ed15252d69 Add workaround for wrong initial wxTextCtrl size in about dialog
See https://trac.wxwidgets.org/ticket/18507

Fix wangqr/Aegisub#19
2022-10-10 01:17:35 +02:00
wangqr af7cbb7730 Set the height of sub box to the same as secondary_editor
The secondary_editor is a wxTextCtrl, whose height is calculated from 2 rows of text. Using this height gives better consistency on screens with different DPIs, instead of using hard coded value like 50px
2022-10-10 01:17:35 +02:00
wangqr 0e0e04c943 Set the height of sub box back to 50px
Revert the change made in ad15c53fb1.
As a temporary solution for wangqr/Aegisub#4.
2022-10-10 01:17:35 +02:00
wangqr 6cb1a49943 Fix High DPI issue on GTK
* Use icon size in the config
2022-10-10 01:17:35 +02:00
wangqr 5f3757525a Add DPI awareness
* Removed most hard coded wxSize
* Sub edit box now have DPI aware icons

Co-authored-by: sepro <4618135+seproDev@users.noreply.github.com>
2022-10-10 01:17:34 +02:00
sepro e2ef1eb77f windows: enable DPI awareness in manifest 2022-10-10 01:17:34 +02:00
arch1t3cht cc9d13d21a fix 2022-10-10 01:17:34 +02:00
sepro 1469f1499b meson: apply custom manifest on windows
Co-authored-by: arch1t3cht <arch1t3cht@gmail.com>
2022-10-09 01:30:39 +02:00
arch1t3cht 2f31bfc565 CI-Build 2022-09-27 2022-09-27 23:50:14 +02:00
arch1t3cht ccc5f44a5f Merge branches 'info', 'bugfixes', 'workarounds', 'fixes', 'folding', 'bestsource', 'avisynth' and 'vapoursynth' into feature 2022-09-27 23:37:18 +02:00
arch1t3cht 40a9344d44 vapoursynth: Check if file exists before creating provider
Since FileNotFound exceptions don't abort the provider search, opening
an invalid path would show errors such as "vapoursynth not found" when
VapourSynth wasn't installed, even if VapourSynth wasn't selected as the
default video provider.
2022-09-27 23:17:54 +02:00
arch1t3cht febce3ecdc vapoursynth: Add configurable default script
This default script will be executed to load any file whose file name
extension is not .py or .vpy .

The gui code for setting the default script is still a bit wonky as it
doesn't fit the rest of the preferences pages nicely, but it works for
now.
2022-09-27 23:14:30 +02:00
arch1t3cht fe77a1a0b8 avisynth: Check if file exists before creating provider
Since FileNotFound exceptions don't abort the provider search, opening
an invalid path would show errors such as "avisynth not found" when
Avisynth wasn't installed, even if Avisynth wasn't selected as the video
provider.
2022-09-27 22:59:01 +02:00
arch1t3cht 961b3dfbee README: workarounds branch 2022-09-27 22:40:04 +02:00
arch1t3cht 22fb4c6e8c Move luabins back to vendor
Workaround for TypesettingTools/Aegisub#162
2022-09-27 16:54:15 +02:00
arch1t3cht 38efde92e3 folding: Fix selections jumping around 2022-09-14 11:31:50 +02:00
arch1t3cht a394aefd1a Fix crash when cancelling automation scripts
When cancelling an automation macro from the progress dialog, the dialog
throws a UserCancelException. If the macro still runs to the end
afterwards (instead of calling aegisub.cancel or causing an exception),
the two return values are left on the stack. This causes assertion errors
due to check_stack when those are enabled.
2022-09-13 22:41:18 +02:00
arch1t3cht 7ea1d650a9 bestsource: Fixes to fps and colorspace conversion
Some of these got lost in the process before.
For now, default to 709 if the colorspace is unkown. More detailed
colorspace guessing can be added in the future.
2022-08-29 11:11:05 +02: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 0dddddf96b CI-Build 2022-08-23 2022-08-23 20:21:29 +02:00
arch1t3cht bb16cdf7fe Merge branches 'folding', 'misc' and 'bestsource' into feature 2022-08-23 20:16:55 +02:00
arch1t3cht 9ea7808a30 bestsource: Mark video provider as slow
Looks like this wasn't clear enough, so let's make it clear to users
that BestVideoSource should only be used if absolutely necessary.
2022-08-23 20:13:45 +02:00
arch1t3cht 6b43e643cb Merge branch 'wangqr_time_video' into feature 2022-08-23 19:59:24 +02:00
arch1t3cht c7c874acc4 Add commands to reload audio or video
This is mostly useful for reloading Avisyth or VapourSynth scripts.
2022-08-23 19:53:40 +02:00
arch1t3cht b2fbc84335 AlignToVideo: Reexport the new icon files
Some metadata of these files was triggering the assertion errors in #6 .
Reexporting the icons using ffmpeg fixed this.

Fixes #6 .
2022-08-23 19:30:41 +02:00
arch1t3cht c8d4df1355 Add option to sort subtitles by text 2022-08-23 16:11:23 +02:00
arch1t3cht 9b920c7892 folding: Always write fold data to file 2022-08-23 15:55:26 +02:00
arch1t3cht ec23330b09 CI-Build 2022-08-22 2022-08-23 04:54:35 +02:00
arch1t3cht 2e78b9cfde Merge branch 'video_panning_option' into feature 2022-08-23 04:51:41 +02:00
arch1t3cht 98d476102e video zoom: Fix aspect ratio forcing
Do this by partially reverting the changes to UpdateSize in favor of
just multiplying by videoZoomValue *after* setting all the window sizes.
2022-08-23 04:48:33 +02:00
arch1t3cht 1d1a1d2ad7 CI-Build 2022-08-22 2022-08-22 02:26:38 +02:00
arch1t3cht 1dbd3b3cc7 Merge branches 'fixes' and 'ffmpeg_build' into feature 2022-08-22 02:26:03 +02:00
arch1t3cht 77cc1a6b22 Patch ffmpeg wrap to compile with simd extensions
This is very hacky and only intended to get these extensions working on
the Windows CI builds.
2022-08-22 02:25:25 +02:00
arch1t3cht 5a0bfdd775 Remove unnecessary flags in SelectedChoices dialog
These alignment flags would cause an assertion error
"Horizontal alignment flags are ignored in horizontal sizers"
when opening the dialog (mainly when importing styles from another
script).
As the assertion error says, the flags are ignored anyway, so they're
safe to remove.
2022-08-21 02:31:33 +02:00
arch1t3cht 7f7f5c8385 Merge branch 'misc' into feature 2022-08-19 21:18:48 +02:00
arch1t3cht 732c5c7654 Copy subitles: Fix wxBitmap usage
UseAlpha turned out to be unnecessary and doesn't even exist in some
wxWidgets ports.
2022-08-19 21:17:29 +02:00
arch1t3cht b52d1d0973 CI-Build 2022-08-19 v2 2022-08-19 02:35:05 +02:00
arch1t3cht 3b8cc6deb1 Merge branches 'misc', 'xa2-ds' and 'info' into feature 2022-08-19 02:31:59 +02:00
arch1t3cht 918c1e23a3 README: misc branch and compile instructions 2022-08-19 02:28:27 +02:00
arch1t3cht aadf6b32b9 Add option to copy or save subtitles with transparent background 2022-08-19 01:46:19 +02:00
arch1t3cht 819d90e9b0 Stereo playback on Linux audio players
After the audio provider rework, adjust the audio players to not
use the int16 mono downmixed audio unless necessary. Furthermore,
the pulseaudio-based player now controls the volume directly through
pulseaudio instead of by modifying the buffer. This also reduces latency
when changing the volume.

The entire set of GetAudio functions is quite messy now. After wangqr's
audio rework, it was split into GetAudio and GetInt16MonoAudio
functions, but now volume scaling is also necessary. Really, this should
go back to a type constructor based system with audio players being
allowed to choose what properties out of mono / 16 bytes / int samples /
volume they need.
2022-08-18 22:48:40 +02:00
arch1t3cht 34d339c187 CI-Build 2022-08-18 2022-08-18 18:12:06 +02:00
arch1t3cht 8169f0c6dc Merge branch 'xa2-ds' into feature 2022-08-18 18:10:26 +02:00
arch1t3cht 144860eb59 Remove format assertion after audio rework 2022-08-18 18:09:32 +02:00
arch1t3cht 00ee2b1ab8 CI-Build 2022-08-16 v2 2022-08-17 03:12:56 +02:00
arch1t3cht 50fb12d433 Merge branches 'fixes' and 'info' into feature 2022-08-17 03:09:39 +02:00
arch1t3cht 1e958cd1a1 Typo fix 2022-08-17 02:59:15 +02:00
arch1t3cht b697ad6ca0 Remove access checks in windows fs operations
These were giving false negatives on samba shares, which broke the font
collector. Windows also recommends to not use access checks in these
cases, and instead just see if the operations succeeds or not.
2022-08-17 02:54:09 +02:00
arch1t3cht 860a090de8 CI-Build 2022-08-16 2022-08-16 21:10:03 +02:00
arch1t3cht 3e5b985c7b Merge branch 'info' into feature 2022-08-16 21:04:46 +02:00
arch1t3cht e7e87f5584 Merge branch 'xa2-ds' into feature 2022-08-16 21:04:44 +02:00
arch1t3cht 0b8f5ad8fa XAudio PR: Revert some changes and fix on linux
Mostly synchronizing with the updates made to the ffmpeg audio provider
and removing the CMakeLists.txt
2022-08-16 21:03:59 +02:00
arch1t3cht afbd626e40 README: New audio+video interfaces 2022-08-16 20:54:49 +02:00
arch1t3cht 17d827c88a Merge branch 'misc_dc' into feature 2022-08-16 19:59:42 +02:00
arch1t3cht 6cdf360e76 Add downmix option on OSX
This fixes wangqr's commit dabd9f that adds an option to enable or
disable downmixing
2022-08-16 19:58:11 +02:00
arch1t3cht 24ac0647ac Merge branch 'vapoursynth' into feature 2022-08-16 19:57:22 +02:00
arch1t3cht ff43f3d601 vapoursynth: Add audio source 2022-08-16 19:22:54 +02:00
arch1t3cht 4a5a212f35 bestsource: Switch to GetPackedAudio()
After vapoursynth/bestsource#7 , BestSource now has a function to
get the packed audio instead, so we just use that directly.
2022-08-16 19:22:54 +02:00
arch1t3cht 3f298bf03a Add vapoursynth video provider 2022-08-16 19:22:54 +02:00
arch1t3cht 6af0b41f47 bestsource: Add audio provider 2022-08-16 19:22:54 +02:00
arch1t3cht 70fd08aabe bestsource: Expose some options 2022-08-16 19:22:54 +02:00
arch1t3cht e41647c78c bestsource: Detect audio and color space 2022-08-16 19:22:54 +02:00
arch1t3cht 4c6e3527d4 bestsource: Switch to manual sws_scale
This was to work with ffmpeg 4.4, but it also saves one frame copy
operation. It does, however, lose the slice threading.
2022-08-16 19:22:54 +02:00
arch1t3cht e4261faf73 bestsource: Add jannson wrap 2022-08-16 19:22:54 +02:00
arch1t3cht 33b9a6e395 Add bestsource video provider
Co-authored-by: Asada shinon <joshwoo71@gmail.com>
2022-08-16 19:22:54 +02:00
arch1t3cht 44888d9b70 Merge branch 'color_picker_fix2' into feature 2022-08-16 16:09:13 +02:00
arch1t3cht 25bd040494 Fix color picker option 2022-08-16 16:07:25 +02:00
arch1t3cht 64ecc490be Merge branch 'fixes' into feature 2022-08-16 15:51:37 +02:00
arch1t3cht fb24bcda6d Delete CMakeLists
The file was mistakenly added when pulling wangqr's "time to video"
feature. I fixed the branch, but instead of merging the whole branch
again, let's just delete the file here.
2022-08-15 21:23:42 +02:00
wangqr d75e49653a Fix syntax error in e2ea84541f 2022-08-15 21:01:09 +02:00
Oneric 57841a0a34 AlignToVideo: Handle tolerance = 0 correctly
Checking if the diff is '>' instead of '>=' will always fail if
tolerance=0, even if the colours are identical. This will cause the line
to get a startime greter than its end time, which is not desireable.

Rounding errors and limits of floating type precision might still affect
the comparison. An additional sanity check before calculation is added
to ensure the selected position and colour match within tolerance.
This allows us to refactor the search code to never check the starting
frame and guanrantees valid timings with start<end even with
rounding errors.
2022-08-15 21:01:09 +02:00
Oneric f1cfd480c4 AlignToVideo: Improve rgb->lab precision 2022-08-15 21:01:09 +02:00
Oneric 2300988613 dialog_align: Remove point at the end of the tooltips
No other tooltips end with points, even if they're a sentence.These
ones aren't even sentences.
Also updates all *.po files accordingly, with an hacked in
POT-Creation-Date due to issues with make_pot.sh.
2022-08-15 21:01:09 +02:00
wangqr b2ba1feb28 Submit "align to video" on double click
Fix wangqr/Aegisub#34
2022-08-15 21:01:09 +02:00
wangqr 60dcc35830 Remove the trailing period in help text of time/align
Fix wangqr/Aegisub#7
2022-08-15 21:01:09 +02:00
wangqr 2b3df72c75 Fix missing config option for Align on macOS 2022-08-15 21:01:09 +02:00
wangqr 37380658bb Fix errors in AlignToVideo
* Call TimeAtFrame with correct parameter
* Fix syntax error
2022-08-15 21:01:09 +02:00
Charlie Jiang cc8e857849 Merge remote-tracking branch 'origind-dev/master'
Add align to video function
2022-08-15 21:01:09 +02:00
arch1t3cht 9ebe154964 Fix width of lua float edits
Float edits with a spinner are by default sized to fit their full
min-max range of possible values, so this makes min and max default to 0
and 100 (like it'd done internally in wx) instead of -DOUBLE_MAX and
DOUBLE_MAX.

Note that this does change the behavior of lua dialogs, but does not
contradict existing documentation or specification. It should only
affect scripts who either disobey the specification by specifying only
one value out of max/min, or scripts displaying these large float edits
by specifing a step, but no max or min.
2022-08-14 16:24:50 +02:00
arch1t3cht 3fb2eacf95 CI-Build 2022-08-13 2022-08-13 23:04:01 +02:00
arch1t3cht 53466be0ca Merge branch 'avisynth' into feature 2022-08-13 23:03:33 +02:00
arch1t3cht ad443dd118 avisynth: Properly destruct the IScriptEnvironment
Starting with AVISYNTH_INTERFACE_VERSION=5, this is how script
environments should be deleted. The previous code was causing crashes
when unloading AviSynth in certain scenarios, such as when failing to
open a file due to an incorrect path.
2022-08-13 22:53:58 +02:00
arch1t3cht 95bd0edbdd Merge branch 'lua_api' into feature 2022-08-13 21:00:21 +02:00
arch1t3cht 0376c56a95 Lua docs: Typo fix 2022-08-13 21:00:13 +02:00
arch1t3cht ce1b3a0158 avisynth: Validate downmix option
Because... let's maybe not let users make Aegisub call arbitrary
symbols in avisynth.dll/so just by editing the config.json.
2022-08-13 01:06:24 +02:00
arch1t3cht fe285678a3 avisynth: Allow compilation on Linux
Co-authored-by: wangqr <wangqr@wangqr.tk>
2022-08-13 01:06:24 +02:00
Ristellise 6906b6e5d7 [Shinon] Enable Directsound2 player to use more than 1 channel audio.
- DS2 Player has a similar structure to XAudio, so I don't see any reason why not to enable 1 channel+ audio.
 - Haven't tried with 5.1 channel sources but I believe it should be the same as 2 channel (As in, Directsound will downmix the audio to 2 channel)
 - Moved the volume setting to using the player directly and from some quick audio tests, -10000 is too soft. I tried with -5000 instead which seems to be alright.
2022-08-11 12:28:35 +08:00
Ristellise 994e50048a Finish up XAudio with a round of bugfixes 2022-08-10 21:23:56 +08:00
Ristellise fd28458ed8 Implement wangqr Audio Changes:
- To allow for XAudio2 to work properly, we need to rework how does provider work since they only are used to be able to take in mono audio.
 - Other providers have been dumbed down to accept single channel audio since originally aegisub only accepted 1 channel audio.
 - meson.build has been modified to accommodate for xaudio, as we currently don't accept redistributable forms of xaudio, we need to work around the WinNT version.
 - There has been 1 more fix to res.rc to allow for compiling on non tagged releases.
2022-08-10 21:09:41 +08:00
Ristellise 3dfea0c315 Add XAudio2 2022-08-10 16:31:02 +08:00
arch1t3cht 80e8ad0103 Merge branch 'folding' into feature 2022-08-08 16:40:24 +02:00
arch1t3cht 663112ba03 folding: Don't drop folds starting at the very first line 2022-08-08 16:38:43 +02:00
arch1t3cht 31271676b3 CI-Build 2022-08-07 2022-08-08 02:21:40 +02:00
arch1t3cht 17d50d49ef Merge branch 'lua_api' into feature 2022-08-08 02:19:40 +02:00
wangqr e2a49b3313 Avisynth audio provider: add option to allow no downmix 2022-08-08 01:38:20 +02:00
wangqr 691ab820b8 Handle exceptions from AviSynthWrapper ctor 2022-08-08 01:38:01 +02:00
sepro 8e1cc6228e Add automation function to get frame 2022-08-08 01:30:15 +02:00
arch1t3cht bde149fd30 lua: Function returning if the file is modified 2022-08-08 01:00:08 +02:00
arch1t3cht 4e8c02d38f CI-Build 2022-08-01 2022-08-01 23:24:30 +02:00
arch1t3cht e8493975e2 Merge branch 'lua_api' into feature 2022-08-01 23:24:16 +02:00
arch1t3cht 64ba5b1e36 Merge branch 'info' into feature 2022-08-01 22:15:34 +02:00
arch1t3cht 8dbf6a4fb7 README: lua_api, wangqr_time_video, and the zlib linker bug 2022-08-01 22:15:22 +02:00
arch1t3cht 69d79ac0cf Merge branch 'wangqr_time_video' into feature 2022-08-01 22:09:29 +02:00
arch1t3cht 84d90ce80b Merge branch 'video_panning_option' into feature 2022-08-01 21:56:24 +02:00
wangqr c232ef6bb6 Fix syntax error in e2ea84541f 2022-08-01 21:43:26 +02:00
Oneric 61c6303a14 AlignToVideo: Handle tolerance = 0 correctly
Checking if the diff is '>' instead of '>=' will always fail if
tolerance=0, even if the colours are identical. This will cause the line
to get a startime greter than its end time, which is not desireable.

Rounding errors and limits of floating type precision might still affect
the comparison. An additional sanity check before calculation is added
to ensure the selected position and colour match within tolerance.
This allows us to refactor the search code to never check the starting
frame and guanrantees valid timings with start<end even with
rounding errors.
2022-08-01 21:43:26 +02:00
Oneric 7a729532b4 AlignToVideo: Improve rgb->lab precision 2022-08-01 21:43:26 +02:00
Oneric e098342f54 dialog_align: Remove point at the end of the tooltips
No other tooltips end with points, even if they're a sentence.These
ones aren't even sentences.
Also updates all *.po files accordingly, with an hacked in
POT-Creation-Date due to issues with make_pot.sh.
2022-08-01 21:43:24 +02:00
wangqr b5e7bbc5ad Submit "align to video" on double click
Fix wangqr/Aegisub#34
2022-08-01 21:43:17 +02:00
wangqr 42248eabad Remove the trailing period in help text of time/align
Fix wangqr/Aegisub#7
2022-08-01 21:43:17 +02:00
wangqr 68166c7581 Fix missing config option for Align on macOS 2022-08-01 21:43:17 +02:00
wangqr c71e140c41 Fix errors in AlignToVideo
* Call TimeAtFrame with correct parameter
* Fix syntax error
2022-08-01 21:43:17 +02:00
Charlie Jiang 3dcab8b9bd Merge remote-tracking branch 'origind-dev/master'
Add align to video function
2022-08-01 21:43:15 +02:00
arch1t3cht c07a648270 Add options to commit or reverse video zoom 2022-08-01 21:21:24 +02:00
arch1t3cht fa33b07c7f Add option toggling behaviour of Ctrl+Zoom 2022-08-01 21:00:53 +02:00
arch1t3cht feab1a5663 Add documentation for text selection api 2022-08-01 20:48:15 +02:00
arch1t3cht b61f8946c1 Merge branch 'folding' into feature 2022-08-01 20:06:24 +02:00
arch1t3cht fd1a92d627 Folding: Fix default hotkeys 2022-08-01 20:05:55 +02:00
arch1t3cht c0fa794e45 Lua: Functions to set text selection and cursor
Putting this logic for delaying changes in the TextSelectionController
isn't the cleanest, but all attempts at saving this state somewhere in
the Lua API instead turned out even worse. Also, the logic for inverted
selections probably does belong in there.
2022-08-01 19:56:53 +02:00
arch1t3cht 4a928674cd Merge branch 'folding' into feature 2022-07-31 21:31:44 +02:00
arch1t3cht 7c92e6bbd6 Folding: Dont error on missing _foldinfo 2022-07-31 21:31:34 +02:00
arch1t3cht d0c8ffd1af CI-Build 2022-07-30 2022-07-30 13:47:56 +02:00
arch1t3cht 4b9c50a702 Merge branch 'vector_clip_actions' into feature 2022-07-30 13:46:04 +02:00
arch1t3cht af009c4ce7 Make line tool the default vector clip tool again 2022-07-30 13:45:49 +02:00
arch1t3cht 32dda63971 Merge branch 'misc_dc' into feature 2022-07-30 13:07:42 +02:00
arch1t3cht a6af313cf2 Merge branch 'info' into feature 2022-07-30 13:06:58 +02:00
arch1t3cht a37f84215d Typo fix 2022-07-30 03:36:33 +02:00
arch1t3cht 9177943c76 Update README: ffms2 and misc_dc 2022-07-30 01:51:46 +02:00
Asada shinon ba3a3dc80a Parse mixin lines as template lines 2022-07-30 00:57:15 +02:00
arch1t3cht aeaab655eb Fix segfault when stereo downmixing 2022-07-30 00:45:49 +02:00
Ristellise f06e42a82e [Shinon] Change Mono Downmixing to Stereo Downmixing 2022-07-29 23:21:55 +02:00
wangqr dabd9f699f Add option to downmix FFMS audio
When enabled, restore FFMS to old behavior, downmixing auduo to S16 mono. This can reduce cache usage.

Fix wangqr/Aegisub#31
2022-07-29 23:18:56 +02:00
Asada shinon d0efa0494a Save vector clips with two decimal places
Co-authored-by: arch1t3cht <arch1t3cht@gmail.com>
2022-07-29 21:50:10 +02:00
Asada shinon 58a6cf4793 Added new hotkey command to reload current font provider. 2022-07-29 20:51:37 +02:00
arch1t3cht 32fc7abd2d Explain the problems with adding new forks 2022-07-27 17:06:32 +02:00
arch1t3cht 58d6fa456e CI-Build 2022-07-27 2022-07-27 15:28:12 +02:00
arch1t3cht 11b5a80618 Merge branch 'folding' into feature 2022-07-27 15:27:04 +02:00
arch1t3cht ca462c2a24 Merge branch 'info' into feature 2022-07-27 15:26:37 +02:00
arch1t3cht 0926f84d0e Merge branch 'spectrum-frequency-mapping' into feature 2022-07-27 15:26:36 +02:00
arch1t3cht 8ca6ec1884 Merge branches 'vector_clip_actions' and 'color_picker_fix2' into feature 2022-07-27 15:26:34 +02:00
arch1t3cht 9cc3fe9e71 Merge branches 'video_panning_option', 'bugfixes' and 'avisynth' into feature 2022-07-27 15:26:33 +02:00
arch1t3cht e65e55833c Fix compilation for older C++ 2022-07-27 15:23:47 +02:00
arch1t3cht 818fcd51f4 Folding: Toggling folds by clicking the indicator 2022-07-27 15:23:47 +02:00
arch1t3cht 2176954aee Folding: Pass fold data through Lua
This way, automation scripts won't nuke the fold data on any lines they
modify.
This is done as userdata for now, so scripts that don't know what
they're doing don't break the folds even further. If scripts get more
access to folds, it should be with a safer and simpler API.
2022-07-27 15:23:47 +02:00
arch1t3cht 56cc1a6873 Add line folding
Line folds are managed using metadata of AssDialogue elements, and
saved in the project properties. They only affect the appearance of the
subtitle grid, and have no impact on other line operations.
2022-07-27 15:23:47 +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 4f9b23ab1f Readme 2022-07-27 02:00:23 +02:00
arch1t3cht 2234068202 Allow vertical audio zoom with Shift+Mouse Wheel 2022-07-26 23:38:27 +02:00
arch1t3cht ff46b860a2 Add option toggling behaviour of Ctrl+Zoom 2022-07-20 14:38:31 +02:00
arch1t3cht 7ea9b95fe0 Clean up pointer code
The previous one was remnant of scrapped code.
2022-07-19 02:45:04 +02:00
arch1t3cht 2c296afdb8 Add option to restrict color picker to window 2022-07-19 02:41:50 +02:00
arch1t3cht 238dbb386d Restrict color picker's screenshot to window
This fixes issues like Aegisub/Aegisub#264 with taking
screenshots on linux, especially with wxgtk3 or wayland.
2022-07-18 20:21:04 +02:00
arch1t3cht eb07b3f9b8 Show hotkeys for vector clip tools
Move the function to generate toolbar tooltips listing hotkeys to the
command class, so it can be used outside of toolbar.cpp .
2022-07-12 16:54:04 +02:00
arch1t3cht 7da4493a0f Use command metadata for vector clip toolbar
This cuts down on the data duplication for the command names and help
texts, at the expense of copying a bit of code from the general toolbar
logic.

Modifying the toolbar Populate() function to also add additional buttons
appears very hard or impossible.
2022-07-12 16:49:22 +02:00
arch1t3cht 10d233d3e2 Add bindable commands for visual vector clip tools 2022-07-12 16:49:22 +02:00
arch1t3cht 77af0c40dc Use public enum for visual clip tool modes 2022-07-12 16:49:22 +02:00
arch1t3cht 86354050f3 meson: Use depend_files for files in respack manifest 2022-07-10 23:00:52 +02:00
arch1t3cht ba0db4da70 Also add Video Pan option on OSX 2022-07-10 22:57:55 +02:00
arch1t3cht 21591b3e88 meson: Use depend_files for files in respack manifest 2022-07-07 10:33:36 +02:00
Eli Schwartz 8336c7d97c meson: use best practices lookup for iconv support
Meson 0.60.0 adds support for an "iconv" dependency that always does the
right thing for you, so that you don't need to think about it. It also
has some side advantages:
- you can do dependency fallback, and --force-fallback-for=iconv works
- it logs one line, not two, and that is "dependency found? yes or no"

Since Aegisub doesn't mandate the use of such new versions of Meson, we
cannot assume the dependency works. Instead, adapt to the version of
Meson being used: on new enough versions of Meson, use the new
dependency, but on older versions of Meson, use the pre-existing logic,
which isn't as nice but has been producing correct results so far.
2022-07-07 00:08:24 -07:00
arch1t3cht e644227e95 avisynth: Remove option to allow ancient versions
- This refers to AviSynth < 2.5.6, which is from before 2005
- With the current setup (using GetAVSLinkage, these versions wouldn't
  work anyway)
- The latest AviSynthPlus is bundled with the installer anyway
2022-07-05 02:01:35 +02:00
arch1t3cht 635503affe 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-05 01:35:08 +02:00
arch1t3cht e240a5fdc2 avisynth: Update headers and fix playback
- Build the latest AviSynth headers using CMake, as proposed in #134
- Add and initialize AVS_Linkage to fix video loading

Video and audio playback now works in most cases, but still crashes for
some files.
2022-07-05 01:12:10 +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 fdcb0ee75f meson: Fix compliation with avisynth enabled
Still crashes when loading a video.
2022-07-03 17:49:46 +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
Sodra 03ffce8a89 Fixing zoom when panning is off 2022-03-02 19:02:21 -08:00
Sodra bb5081189e Fix video panning option. Oops teehee ptep~ 2022-03-02 18:36:38 -08:00
Sodra b332181937 Added option to enable video panning 2022-03-02 18:24:17 -08:00
moex3 36f7e102e2 Revert "Add reset hotkey as Ctrl-R" / Not needed
This reverts commit 3d525d9938790211b02a31a16d716498957891fc.
The default hotkey is not required. People can just add a custom one
from the hotkey settings if they want this.
2022-03-02 15:02:02 -08:00
moex3 0b8586e90d Add reset hotkey as Ctrl-R
I'm not entirely sure, that this is how it's supposed to be added.
This requires editing the already existing hotkey.json file (shows path
in log, if it exists).
Should this also be added to hotkey.cpp?
2022-03-02 15:02:01 -08:00
moex3 14d078fb9f Fix a zooming bug on linux
The preview window would change in width, when the video was being zoomed.
Possibly, because on windows, zooming only calls UpdateSize once, but on
linux, it gets called multiple, like 8 times.
Rounding fixed it.
2022-03-02 15:02:01 -08:00
moex3 09ea0f54d3 Make zooming feel more linear
with a "good enough" implementation
2022-03-02 15:02:00 -08:00
moex3 db6297c8c3 Make zooming center around the cursor position 2022-03-02 15:01:59 -08:00
moex3 4f6836da9c Make video zoom different from preview window zoom 2022-03-02 15:01:59 -08:00
moex3 70ddf3c7f5 Respect min. zoom value when changing pan coords 2022-03-02 15:01:58 -08:00
moex3 d73dfe9c18 Change pan values with the zoom level changes 2022-03-02 15:01:58 -08:00
moex3 808ead65bf Fix crosshair drawing
I'm not sure about that scale_factor, i don't know how to test that
2022-03-02 15:01:57 -08:00
moex3 0ec0f20695 Fix mouse position bug when videoAr > displayAr
Crosshair drawing is broken when videoAr != displayAr
2022-03-02 15:01:56 -08:00
moex3 5f95f76671 Change tab to spaces 2022-03-02 15:01:55 -08:00
moex3 f3d796a3e3 Add menu item for resetting the video pan 2022-03-02 15:01:54 -08:00
moex3 e3949cdaa1 Add video panning 2022-03-02 15:01:48 -08:00
EleonoreMizo bfcd8a3e2c
Merge branch 'master' into spectrum-frequency-mapping 2021-11-29 22:27:26 +01: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
woclass 7e9c7d7aa0
Run tests (#125)
* [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

* [git] remove IDE dir

* [git] ignore gtest subprojects

* [ci] run test in ci

* [meson/test] use more meaningful name

* [test] Add more comments and help msg
2021-05-23 23:33:33 -04:00
Myaamori dfb0a1ca99 meson: don't use deprecated get_pkgconfig_variable 2021-05-23 18:37:36 -04:00
Myaamori 2c927bac32 meson: make --force-fallback-for=luajit work
This option makes the dependency() call resolve to the subproject
which breaks the Lua 5.2 compatibility check.
This change just ignores the result of the dependency() call
if it resolves to the subproject and then re-fetches it
with a subproject() call later.
Alternatively we could explicitly handle the case where dependency()
resolves to the subproject, but that's just extra code for no
observable difference in behaviour.
2021-05-23 18:37:36 -04:00
clr134 28e3e75c44
Polish translation corrections (#130) 2021-05-23 17:33:04 -04:00
Vardë 3c17671ad0
Updates French translation (#121)
* Updates French translation

* Missing spelling mistake

* Additional adjustments

* Improvements (#1)

Co-authored-by: Vardë <Ichunjo@users.noreply.github.com>

Co-authored-by: anne-o-pixel <81879599+anne-o-pixel@users.noreply.github.com>
2021-05-23 04:54:46 -04:00
woclass 52c8fef28c
Generate Win portable.zip (#124)
* [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

* [win_installer\portable] add new target `meson win-portable`

+ meson install copy `include/unicode-monkeypatch.lua`

* [win_installer\portable] make aegisub-portable-64.zip

+ remove WinRAR deps

* [win_installer\portable] using powershell

* [git] upload portable.zip

* [win_installer\portable] rm freetype

* [repo] remove Optional dependencies: WinRAR

* [repo] Update README.md, add cmd to gen zip file

* [repo] use recommended build command

* [git] remove IDE dir

* [ci] add Windows portable installer build step
2021-05-23 04:37:54 -04:00
Yi-Jyun Pan 761194025f meson: luajit: allow to build in ARM64
Meson thought that a ARM64 cpu is aarch64, while
luajit only provided a file for "arm64". Since there is
no difference but the name between aarch64 and arm64, I
choose to bind aarch64 -> arm64.

Signed-off-by: Yi-Jyun Pan <pan93412@gmail.com>
2021-05-23 04:32:54 -04:00
woclass 62c3acb666
Fix localization file generation on Windows (#119)
* [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

* [git] remove IDE dir

* [git] remove unused subprojects
2021-05-23 02:06:10 -04:00
Ryan Lucia aeba7a390e Re-enable MacOS CI 2021-05-22 02:48:27 -04:00
Ryan Lucia a856030078 Switch to new boost tarball hosting 2021-05-21 21:52:18 -04:00
Myaamori 84ac716972 meson: add uchardet port
Meson port instead of using CMake as I ran into issues with the
src directory (where uchardet.h is located) not being appended
to the include path, and on Windows I ran into a Meson issue
where a -D macro definition was being interpreted as a filename.
In the end a Meson port seemed simpler than working out the CMake
issues, as the CMakeLists.txt files were straightforward and easy
to port.

Note that because of the directory structure of the uchardet source
I had to change the include directive from uchardet/uchardet.h
to just uchardet.h. This is actually more in line with the uchardet
pkg-config file, which appends /usr/include/uchardet to the include path.
2021-05-21 21:09:36 -04:00
Myaamori c43e4fba3c meson: add Hunspell port
This moves the visibility logic (HUNSPELL_STATIC/BUILDING_LIBHUNSPELL)
to the build system. Only relevant on Windows.
2021-05-21 21:09:36 -04:00
Myaamori 0f95589d0a meson: Fix Windows artifacts 2021-05-21 21:07:22 -04:00
Myaamori b00f5dd58e meson: add option to specify wxWidgets version 2021-04-09 18:00:01 -04:00
Ryan 696a732840 Add new unicode script to installer 2021-03-27 14:56:04 -04:00
Ryan 7def61d46f Update README for Windows 2021-03-27 14:55:52 -04:00
Myaamori 3dfc553880 Fix faux bold logic in font collector for Fontconfig
Based on libass's logic (a requested weight of over 150 more than
the matching font).
2021-03-27 12:38:50 -04:00
Myaamori 4b2cd7f170 Convert OpenType weight to Fontconfig weight in font collector
Fixes #108
2021-03-27 12:38:50 -04:00
Ryan 7a27ee7823 meson: add -DLUAJIT_UNWIND_EXTERNAL for MacOS/Linux 2021-03-27 12:34:18 -04:00
Ryan 9d1b28f5a7 Delete luajit patch files 2021-03-27 12:34:18 -04:00
Ryan 51494a07d9 lua: run unicode-monkeypatch on Windows when loading scripts 2021-03-27 12:34:18 -04:00
Ryan 8394f1adca Monkeypatch script fixes 2021-03-27 12:34:18 -04:00
Ryan e929e4a75c meson: copy monkeypatch script 2021-03-27 12:34:18 -04:00
Ryan 4648e8cc5b meson: add new luajit string buffer files 2021-03-27 12:34:18 -04:00
Ryan Lucia b7f6ac42e4 Add lua monkeypatch for Unicode support on Windows 2021-03-27 12:34:18 -04:00
Ryan Lucia 84beba20cb meson: fix luajit 64-bit builds
Upstream defines ENDIAN_LE or ENDIAN_BE always, so assume little endian. x86_64 defaulting to x86 seems to just be a mistake
2021-03-27 12:34:18 -04:00
Ryan ef64307ba1 Switch to upstream LuaJIT
This does not yet handle the patching, but should build without issue
2021-03-27 12:34:18 -04:00
Ryan 48c3acd3aa actions: disable MacOS
The LTO change broke this somehow, but disable until I can investigate why
2021-03-27 09:31:10 -04:00
Ryan f5122a3927 meson: copy automation files to build directory
This enables running Moonscript on Windows builds without relying on system files
2021-03-27 09:30:21 -04:00
Ryan d32ef75cba meson: move executable to the root directory 2021-03-27 09:29:37 -04:00
Ryan 1246534b7b Move AddSeparator to VisualTool::SetToolbar
Co-authored-by: wangqr <wangqr@wangqr.tk>
2021-03-27 08:09:11 -04:00
Ryan Lucia c218db6f34 meson: disable LTO by default 2021-03-06 14:57:27 -05:00
petzku 19429b0f6e Fix negative margin handling (closes #104)
Previously, margins were clamped to 0..9999, but negative margins are
well supported by most renderers.  In addition, previously lua
automations automations were able to produce these negative margin
values, and they would be saved correctly. However, re-opening the file
would clamp the values, and they could not be edited in the edit box.

This commit changes the clamping to be -9999..99999, and allows entering
(and editing) negative values in all relevant fields. In addition, this
makes the subtitle edit box margin fields take 5 characters instead of 4
to accommodate negative numbers up to 9999 (also the reason for raising
the upper bound).
2021-03-06 14:29:18 -05:00
Ryan Lucia 8fa0fa352b meson: generate osx-bundle.sed 2021-02-27 21:11:56 -05:00
Ryan Lucia dc3ffa30af actions: stylistic cleanup 2021-02-27 20:21:29 -05:00
Ryan Lucia 43751546f4 spectrum view: allow 32-bit wxBitmap
Required on MacOS
2021-02-22 14:29:14 -05:00
Ryan Lucia 2abb098bd1 meson: improve iconv detection 2021-02-22 14:26:03 -05:00
Myaamori c6f4ea45aa Let search field in Hotkeys menu expand horizontally
On Linux with wx 3.1 it was too small to use by default
2021-01-31 19:34:47 -05:00
Myaamori ca7501c7ed Remove unused alignment flags for combo boxes in resampler
Causes an assertion error with wx 3.1
2021-01-31 19:34:47 -05:00
Ryan Lucia c32c612dc3 meson: set dataroot correctly for osx bundle 2021-01-30 16:22:05 -05:00
Ryan 1fd574f556 win_installer: don't include arch in file name 2021-01-30 12:20:24 -05:00
Ryan b72f02b9f2 meson: reorder nasm download to work with global args 2021-01-30 12:11:34 -05:00
Ryan 248785d7ad meson: apply manifest on windows 2021-01-30 12:02:34 -05:00
Ryan 36b75b827d meson: fix warnings, cleanup 2021-01-30 12:02:18 -05:00
Ryan 73ad926880 meson: define CSRI_NO_EXPORT earlier in setup 2021-01-30 09:12:13 -05:00
Ryan 2cb759a6e2 win_installer: set directory correctly after DepCtrl checkout 2021-01-30 09:11:34 -05:00
Ryan e186fa4627 meson: disable CSRI on non-windows for now 2021-01-30 09:04:22 -05:00
Ryan 1ac52a24d6 meson: disable gdi_fontselect for now
This one continues to be controversial, so for now the plan will be to report issues upstream that come up as a result of this being removed
2021-01-30 08:58:45 -05:00
Ryan 7d9feca578 meson: add CSRI support 2021-01-30 08:57:39 -05:00
Ryan d8c348e897 meson: standardized config defines to set integer 1 2021-01-30 08:56:01 -05:00
Ryan f3958288ac libresrc: put new wxBitmap constructor behind wx version check
Based off https://github.com/Aegisub/Aegisub/pull/175
2021-01-30 07:29:45 -05:00
Ryan 8d8ea166df lua: remove usage of luaL_reg in favor of luaL_Reg
The former was deprecated with 5.1, and removed entirely in later versions and in LuaJIT
2021-01-30 07:25:06 -05:00
Ryan 7640576cc9 meson: use conf object for defines where appropriate 2021-01-30 07:25:03 -05:00
Ryan 8acc8be2ba win_installer: checkout DepCtrl 0.6.3 2021-01-17 09:53:19 -05:00
Ryan 73c54cef99 win_installer: use plain aegisub.exe everywhere 2021-01-17 09:53:01 -05:00
Ryan 1981f4db3e win_installer: fix vc redist name in run section to match source 2021-01-17 09:30:26 -05:00
Ryan bec44eaab8 meson: define P_LOCALE 2021-01-16 13:15:05 -05:00
Ryan b8d1864a07 aegisub: ifdef wxBitmap constructor to scale on MacOS only
Quick fix to unblock the build; need better HiDPI handling across the board
2021-01-16 13:01:51 -05:00
Myaamori b42da504a0
Save unexpanded path in font collector (#79)
Fixes #78
2021-01-16 06:13:37 -05:00
Ryan 35b2ca5532 win_installer: fix paths for Avisynth+ dlls
3.7.0 changed the layout, so just match the new one
2021-01-16 06:02:32 -05:00
Ryan 1384123e2d iconv wrapper: allocate a smaller buffer on the stack 2021-01-16 05:31:08 -05:00
Ryan 8b8f4a3925 meson: bump minimum ffms2 version to 2.22
It's been out for 6 years, so this should be fairly safe. Also fix a build error that somehow snuck in during the merge
2021-01-16 05:31:08 -05:00
Ryan 6660594f64 Update URLs to point at the main repo 2021-01-16 05:31:08 -05:00
Ryan 308ef6cbb0 meson: promote dirent wrap 2021-01-16 05:30:59 -05:00
Ryan d583744b69 Merge in work from TypesettingTools fork 2021-01-16 02:12:31 -05:00
Ryan a2da1616c0 meson: set minimum win version to 7
I think setting it at 8 was accidental? This matches the installer, so we should be consistent throughout
2021-01-16 01:26:19 -05:00
Ryan 25a62f4f12 libass_gdi_fontselect: don't redefine NOMINMAX
It's now defined in the build system itself
2021-01-16 01:24:19 -05:00
Ryan 417ba4ff2d actions: change branch to master 2021-01-10 03:14:12 -05:00
Ryan 2211b7a0a5 README: update for macOS with meson 2021-01-10 03:14:12 -05:00
Ryan 4b1d23e6be actions: add separate debug/release lanes
No debug on Windows because the container isn't powerful enough
2021-01-10 03:14:12 -05:00
Ryan 7f46b687e1 meson: remove libass dirent patch
Handled more properly in libass itself
2021-01-10 03:14:12 -05:00
Ryan 1a5c19c4d7 actions: force LFS 1.8.0 on macOS 2021-01-10 03:14:12 -05:00
Ryan 28bc329678 actions: apt-get update on ubuntu 2021-01-10 03:14:12 -05:00
Ryan a77f7d48df meson: update to reflect fixes in dependencies 2021-01-10 03:14:12 -05:00
Ryan Lucia bc079922c0 actions: Enable OSX CI 2021-01-10 03:14:12 -05:00
Ryan Lucia b51463a5f5 meson: Fix build on OSX 2021-01-10 03:14:12 -05:00
Ryan Lucia c487dd2bdb Parially revert fffb138b81
I haven't checked whether reverting this breaks IME input, and if it doesn't what changed on wx's end. However, this is the commit that uses private symbols, and so reverting it lets us build against upstream wx. Even if this is a loss in functionality, for now it's fine.
2021-01-10 03:14:12 -05:00
Ryan f240c01cbc meson: only manually set _DEBUG on non-windows 2021-01-10 03:14:12 -05:00
Ryan 56581fbce3 actions: invoke win-installer correctly, install innosetup on ci 2021-01-10 03:14:12 -05:00
Ryan 32729800df actions: build as release for Windows CI 2021-01-10 03:14:12 -05:00
Ryan 9211b7b632 win-installer: fix warnings 2021-01-10 03:14:12 -05:00
Ryan 8cf4100c87 meson: fix resource file compilation
This enables video to load correctly in Windows builds
2021-01-10 03:14:12 -05:00
Ryan 106c753782 actions: support installer generation on CI 2021-01-10 03:14:12 -05:00
Ryan a3ec466ff6 meson: fix Windows installer generation
This includes some miscellaneous cleanup to the installer files as well
2021-01-10 03:14:12 -05:00
Ryan 72edb88982 meson: add Avisynth option, compile libass_gdi_fontselect
Sadly, building with Avisynth is still broken.
2021-01-10 03:14:12 -05:00
Ryan Lucia 44fdeb361f actions: upload artifacts 2021-01-10 03:14:12 -05:00
Ryan Lucia 194521e777 meson: set wx subproject buildtype, remove d_vscrt hack 2021-01-10 03:14:12 -05:00
Ryan Lucia 47f7aa879d README: update Windows section to reflect the switch to Meson 2021-01-10 03:14:12 -05:00
Ryan Lucia 89c788a4b3 autotools: remove remaining makefiles 2021-01-10 03:14:12 -05:00
Ryan Lucia c5111b492b actions: force fallback for harfbuzz 2021-01-10 03:14:12 -05:00
Ryan Lucia 4dc65303a1 actions: force default_library=static for freetype 2021-01-10 03:14:12 -05:00
Ryan Lucia cd0eee968f meson: minor subproject cleanup, update gitignore 2021-01-10 03:14:12 -05:00
Ryan Lucia f91f6f0743 meson: pass png=enable to freetype2 to work around bug
See https://savannah.nongnu.org/bugs/?59458
2021-01-10 03:14:12 -05:00
Ryan Lucia 18ccc1d7f0 meson: disable building ffmpeg tests 2021-01-10 03:14:12 -05:00
Ryan Lucia 8a09d00081 actions: enable MSVC 2021-01-10 03:14:12 -05:00
Ryan Lucia 3f1c315dfe meson: force zlib subproject for freetype 2021-01-10 03:14:12 -05:00
Myaamori abec21f4e0 meson: fix wx subproject on Linux 2021-01-10 03:14:12 -05:00
Myaamori aecf09a64d Use wxSizer::RepositionChildren instead of RecalcSizes on wx 3.1.3+ 2021-01-10 03:14:12 -05:00
Myaamori 93b2794c85 Correct wxStyledTextCtrl::StartStyling for wx 3.1 2021-01-10 03:14:12 -05:00
Myaamori 6ff1729303 meson: update/promote libass dependency wraps 2021-01-10 03:14:12 -05:00
Myaamori 8bb8b34fe7 meson: set _DEBUG on all platforms for debug builds 2021-01-10 03:14:12 -05:00
Myaamori 0ea6d36fca meson: don't generate git_version.xml and don't regenerate git_version.h on windows
Also fix incorrect use of return outside function. Fixes #80
2021-01-10 03:14:12 -05:00
Ryan Lucia 17303d3846 actions: add initial ubuntu workflow 2021-01-10 03:14:12 -05:00
Ryan Lucia 7d4c99db5a meson: switch to upstream freetype 2021-01-10 03:14:12 -05:00
Ryan Lucia daa4cc8bbc meson: search for 'system' module with system boost
System was made header-only by 1.74, so we can't check for it in the submodule, but when linking with older system boosts we need to make sure it gets linked in
2021-01-10 03:14:12 -05:00
Ryan Lucia dc3aaa5df0 meson: allow boost fallback under msvc 2021-01-10 03:14:12 -05:00
Ryan Lucia 454c79c8cc Remove travis file 2021-01-10 03:14:12 -05:00
Ryan Lucia 60431862fa meson: allow wx fallback on all platforms 2021-01-10 03:14:12 -05:00
Ryan Lucia 7d0028799f meson: remove old wx_path and icu_path hacks 2021-01-10 03:14:12 -05:00
Ryan Lucia e393509515 meson: default to buildtype debugoptimized 2021-01-10 03:14:12 -05:00
Ryan Lucia e3826cb17e meson: initial attempt to generate Aegisub.app on macOS 2021-01-10 03:14:12 -05:00
Ryan Lucia 8f42f11b11 Convert osx-fix-libs.py to py3 2021-01-10 03:14:12 -05:00
Ryan Lucia 9fd62692af win-installer: auto-populate current year for copyright 2021-01-10 03:14:12 -05:00
Ryan Lucia 2e898c461a win-installer: remove fragment_opengl 2021-01-10 03:14:12 -05:00
Ryan Lucia 0d45c67dcf meson: move all .desktop file work into linux conditional 2021-01-10 03:14:12 -05:00
Ryan Lucia 44af99a163 meson: move luabins to subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia e087728021 gitignore: mass purge, add .DS_STORE 2021-01-10 03:14:12 -05:00
Ryan Lucia 5ec5271eb5 meson: fix source file inclusion in libaegisub on osx 2021-01-10 03:14:12 -05:00
Myaamori 3147f303c8 meson: save git_version.xml to meson build directory in version.ps1 2021-01-10 03:14:12 -05:00
Myaamori d80b8d6de0 meson: use meson-pr branch for libass 2021-01-10 03:14:12 -05:00
Myaamori fa2c35a058 remove build, .nuget, Aegisub.sln 2021-01-10 03:14:12 -05:00
Myaamori 0e51dba59b meson: remove DUALNUM check from LuaJIT 2021-01-10 03:14:12 -05:00
Myaamori 5dff6c9234 update .gitignore 2021-01-10 03:14:12 -05:00
Myaamori 65fc7c0f30 meson: ignore second argument in version.ps1
for compatibility with bf2dca2e4c0
2021-01-10 03:14:12 -05:00
Myaamori b1c2fbdb19 meson: add nasm wrap for Windows 2021-01-10 03:14:12 -05:00
Myaamori 2510ef25c2 meson: patch libass with stub dirent.h
this should probably be handled by the libass meson port at some point
2021-01-10 03:14:12 -05:00
Myaamori 03de8929d4 meson: pin wx version and fix dependencies 2021-01-10 03:14:12 -05:00
Myaamori 441daf5aeb meson: use check_header to check for iconv
iconv is not a standalone library on Linux, so find_library is pointless
2021-01-10 03:14:12 -05:00
Myaamori 0b7e244232 meson: define fallbacks for optional dependencies 2021-01-10 03:14:12 -05:00
Myaamori 51b8248ac8 meson: create git_version.h in build directory in version.sh 2021-01-10 03:14:12 -05:00
Myaamori bb02d3bc5e meson: don't build with C11
C11 breaks the LuaJIT build
2021-01-10 03:14:12 -05:00
Myaamori f9f8b6c4d3 meson: add FFMS2 wrap 2021-01-10 03:14:12 -05:00
Myaamori ce791773f6 meson: add Boost wrap 2021-01-10 03:14:12 -05:00
Myaamori d6ee06eb54 meson: add ICU wrap 2021-01-10 03:14:12 -05:00
Myaamori 64df2d61c7 meson: have iconv subproject override iconv dependency 2021-01-10 03:14:12 -05:00
Myaamori 130339a3d6 meson: set correct flags when compiling LuaJIT on Windows 2021-01-10 03:14:12 -05:00
Myaamori 1fc019447a meson: enable Lua 5.2 compat for both native and host builds 2021-01-10 03:14:12 -05:00
Myaamori f6b74331da meson: update zlib wrapper 2021-01-10 03:14:12 -05:00
line0 2e613f5476 meson: flag aegisub as a GUI app 2021-01-10 03:14:12 -05:00
line0 bfdcbdefad meson: add missing link dependencies on windows 2021-01-10 03:14:12 -05:00
line0 88e24db733 meson: add support for building wxWidgets as a subproject (WIP)
monolithic build only and disabled precompiled headers due to limited cmake support in meson

still missing linker dependencies refs to Windows SDK libs
2021-01-10 03:14:12 -05:00
line0 37230683fb utils: work around missing C++11 char16_t overload in wx string conversion 2021-01-10 03:14:12 -05:00
line0 f039395003 meson: generate git_version header in build root rather than within the source tree
fixes an issue where the windows version of the git version update script generated the header in a place where it couldn't be found by the include in version.cpp
2021-01-10 03:14:12 -05:00
line0 18fe7918f3 meson: make boost honor the global default_library option 2021-01-10 03:14:12 -05:00
line0 23e86bf074 meson: build libiconv as static library 2021-01-10 03:14:12 -05:00
line0 e56ab6c784 meson: define BOOST_USE_WINDOWS_H on Windows
fixes symbol redefinition errors in VS 2019
2021-01-10 03:14:12 -05:00
line0 609d38e605 meson: update dependencies
switch back to official harfbuzz upstream now that meson has landed
2021-01-10 03:14:12 -05:00
line0 b6c0f2d544 meson: don't build fontconfig file lister on windows 2021-01-10 03:14:12 -05:00
line0 b8e2cf83fd fix PCHs on VS2019
* separate PCH for C and C++
* acconf.h now included in PCHs on windows, too
* meson now auto-generates companion source files for PCH headers
2021-01-10 03:14:12 -05:00
FichteFoll a91c4f70c3 Use i18n.merge_file for real
Requires gettext 0.19, which is available on all major linux dists.

Not compatible with autotools chain! (For now, anyway.)
2021-01-10 03:14:12 -05:00
FichteFoll 6343d36169 Add commented i18n.merge_file version
Using that makes use of gettext (and msgfmt) rather than intltool,
which is the proper way but requires a more recent gettext version and
I'm not comfortable adding that dependency for now.

Specifically, it would require updating the autotools chain as well
as the template files are incompatible.

See https://wiki.gnome.org/MigratingFromIntltoolToGettext for more info.
2021-01-10 03:14:12 -05:00
FichteFoll 650954f28e Move language specifications to LINGUAS file
This is required when using i18n.merge_file.
2021-01-10 03:14:12 -05:00
FichteFoll 443dd5146d Properly build aegisub.desktop 2021-01-10 03:14:12 -05:00
Ryan Lucia 9708ca8e5e Add virtual destructor to SignalBase
Quashes a frequent warning
2021-01-10 03:14:12 -05:00
Ryan Lucia 2cb6d5b814 meson: fix up OSX and non-MSVC detection 2021-01-10 03:14:12 -05:00
FichteFoll 9fdf490cff Use git rev-list to determine revision number 2021-01-10 03:14:12 -05:00
FichteFoll 8704f83743 Fix git_version.h generation 2021-01-10 03:14:12 -05:00
Ryan Lucia 5e14a9265b meson: attempt to wrangle dependencies 2021-01-10 03:14:12 -05:00
Ryan Lucia 7befd5e759 gitignore: mass cleaning 2021-01-10 03:14:12 -05:00
Ryan Lucia a853f7c4b0 Windows installer: always include vc+ runtime 2021-01-10 03:14:12 -05:00
Ryan Lucia 57e4f788d0 meson: update subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia 13711128fa meson: remove 'build_' prefix from option 2021-01-10 03:14:12 -05:00
Ryan Lucia 1599858c92 Make version.sh executable 2021-01-10 03:14:12 -05:00
Ryan Lucia 3b2d770d74 Fix PCH usage
Hopefully this time in a way that doesn't ruin life for Unix folks!
2021-01-10 03:14:12 -05:00
Ryan Lucia d2d3168904 meson: allow additional include directories for manually located deps 2021-01-10 03:14:12 -05:00
Ryan Lucia df396b67b2 meson: add Windows-specific project args 2021-01-10 03:14:12 -05:00
Ryan Lucia 2eaf9b0062 meson: fix option name lookup in build file 2021-01-10 03:14:12 -05:00
Ryan Lucia 9e284660b1 meson: add DirectSound detection 2021-01-10 03:14:12 -05:00
Ryan Lucia 9aeaceb6e7 meson: add basic libiconv subproject functionality 2021-01-10 03:14:12 -05:00
Ryan Lucia 631dad170f meson: fix luajit compiler args 2021-01-10 03:14:12 -05:00
Ryan Lucia d3c709a2ea Move iconv to subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia 608d0c9c15 Move hunspell to subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia 609f5be032 Move CSRI to subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia 6ca1d6463a Remove submodules 2021-01-10 03:14:12 -05:00
Ryan Lucia 42bfc53a77 meson: bump c++ version 2021-01-10 03:14:12 -05:00
Ryan Lucia 0be226aa6c meson: add wrapfiles for essential subprojects 2021-01-10 03:14:12 -05:00
Ryan Lucia 506bac365d meson: move luajit to subprojects directory 2021-01-10 03:14:12 -05:00
Ryan Lucia a9dfafd37a meson: fix syntax errors in packages/meson.build 2021-01-10 03:14:12 -05:00
Ryan Lucia 1a133cd567 meson: move version scripts to tools directory 2021-01-10 03:14:12 -05:00
Ryan Lucia c965171663 Remove autotools build system 2021-01-10 03:14:12 -05:00
line0 936b39303d PowerShell version script: work correctly from any cwd; do not error out when version.h doesn't already exist; adjust git_version.h and git_version.xml paths for meson build system 2021-01-10 03:14:12 -05:00
Ryan Lucia 613cef19a0 meson: rename option for optional dependencies 2021-01-10 03:14:12 -05:00
Ryan Lucia 7596a7c5e4 meson: remove 'static' option 2021-01-10 03:14:12 -05:00
Ryan Lucia f361138a4d Switch from combo option to feature where appropriate
Also remove the extra space before colons :)
2021-01-10 03:14:12 -05:00
Ryan Lucia 3b7724aab4 Fix spacing around colons in luajit subproject files 2021-01-10 03:14:12 -05:00
Ryan Lucia ddd6a4f289 Move version generation scripts up a level 2021-01-10 03:14:12 -05:00
Ryan Lucia 83fcab0775 Switch to newer path concatenation syntax 2021-01-10 03:14:12 -05:00
Ryan Lucia cde5778283 Make spacing around colons consistent 2021-01-10 03:14:12 -05:00
Ryan Lucia 68f5843117 Don't require fontconfig on windows 2021-01-10 03:14:12 -05:00
Ryan Lucia 02a2c12cee Enable version.ps1 on windows
version.ps1 itself still has to be modified to support out-of-tree builds
2021-01-10 03:14:12 -05:00
Ryan Lucia c564df55aa Bump Meson version
Build file was using a now-deprecated property
2021-01-10 03:14:12 -05:00
line0 2f13615342 add powershell version of build/version.sh 2021-01-10 03:14:12 -05:00
FichteFoll a6076ed580 Always build git_version.sh 2021-01-10 03:14:12 -05:00
Martin Herkt 2e3a78383f Fix fdo icon install path 2021-01-10 03:14:12 -05:00
Martin Herkt ca3802e82a Meson: respack.lua → respack.py; works out-of-tree 2021-01-10 03:14:12 -05:00
Martin Herkt 48af346e94 Meson: add gettext i18n 2021-01-10 03:14:12 -05:00
Martin Herkt 97b4dfb7f4 Meson: add install rules 2021-01-10 03:14:12 -05:00
Martin Herkt 8905921a2d Initial port of the build system to Meson
Still some TODOs left. Probably only works on Linux for now.
2021-01-10 03:14:12 -05:00
EleonoreMizo f9c8a7f6aa Spectrum display improvement
– Selection of different frequency mappings for the spectrum display,
from linear (current default) to logarithmic.
– Field added in the preference page to select the frequency mapping
– New preference key to remember this setting:
Audio/Renderer/Spectrum/FreqCurve
– Consistent display with high sampling rates (> 48 kHz)
– Fixed time shift with high quality settings
2020-12-15 20:11:58 +01:00
Andrew Neth d0bab1212c
Look for both system fonts and user fonts on Windows (#64)
* Look for both system fonts and user fonts on Windows

* Move repeated font registry reading code to separate function

* Pass the files vector to read_fonts_from_key as a reference

* Allocate a larger filename buffer when necessary while reading fonts from registry
2020-02-08 15:41:03 -05:00
Thomas Goyne 6f546951b4 Use appropriate DPI images in more places on macOS 2019-10-06 12:46:06 -07:00
Thomas Goyne 85f711fccc Adjust the index of the drag subtool button for the addition of the separator 2019-09-28 18:13:44 -07:00
Thomas Goyne 5da48d0f30 Don't call Realize() before setting the toolbar 2019-09-28 18:13:44 -07:00
Thomas Goyne 6ca879938d Always feed the entire file into uchardet when detection is needed
uchardet will report that a file is "ascii" if the first page has no bytes
>127, so we need to actually look at the entire file in case the first higher
byte is later in the file.
2019-09-28 18:13:44 -07:00
Thomas Goyne 8d17a0e88a Assume that files which start with a unicode BOM are valid files of that type 2019-09-28 18:13:44 -07:00
wangqr e1a8ab1c10 fix: infinite recursion when loading video
In 888be0607f some changes have been made to video_display.cpp which causes infinite recursion: the video display enables video/tool/cross tool when running VideoDisplay::Render() for the first time.
But when setting up the tool, the video box size is changed, which calls VideoDisplay::Render() again. So we need to set the tool BEFORE it modifies the box by "AddSeparator".

Fix wangqr/Aegisub#21

Co-authored-by: Charlie Jiang <cqjjjzr@126.com>
2019-09-28 21:13:01 -04:00
wangqr 6d4dd60ce8 Handle video flip and rotate metadata in ffms2
Fix Aegisub/Aegisub#149
2019-09-22 17:41:05 -07:00
wangqr 57ee580c0f Fix lagi_thes unit tests on Windows
The thes file was using \r\n line ends, and \r was not stripped, causing the encoding string has a \r at its end.
Use binary mode and always use \n as line ends.
2019-09-22 17:41:05 -07:00
wangqr 336745cdb2 In Properties dialog, create the button first
So the foucus goes to the OK button on init. This will let wxWidgets correctly handle the initial position of text in wxTextCtrl

Fix wangqr/Aegisub#6
2019-09-22 17:41:02 -07:00
wangqr 10f7458b5f Fix PCM provider bugs 2019-09-22 17:41:02 -07:00
wangqr 1122c0880a Fix failing unit tests on Windows 2019-09-22 17:41:02 -07:00
wangqr dd59fc988a Fix gtest setup.bat on Windows 2019-09-22 17:41:02 -07:00
wangqr 896011f535 Search user fonts in GDI font lister
Windows now allow user install fonts without admin. List HKCU for those fonts.
https://blogs.windows.com/windowsexperience/2018/06/27/announcing-windows-10-insider-preview-build-17704/
2019-09-22 17:41:02 -07:00
wangqr 7a1756a26f In tagless_find_helper only tag before start should be ignored
The search result is irrelevant to which tag we should ignore

Fix wangqr/Aegisub#17
2019-09-22 17:41:02 -07:00
wangqr 6732179a8a Fix wrong memset usage 2019-09-22 17:41:02 -07:00
davste0816 72d0457bc8 Fix Move Down button in Export dialog 2019-09-22 17:41:02 -07:00
davste0816 073c06d812 Add .webm to extension list, add .eac3 as an audio format
Co-Authored-By: FichteFoll <fichtefoll2@googlemail.com>
2019-09-22 17:41:02 -07:00
davste0816 06798f2caf Recognize .opus as an audio format, .h264 .hevc as video formats 2019-09-22 17:41:02 -07:00
wangqr b3f0cb8953 Don't internally reset the selection after collected fonts
This creates an inconsistency between UI and internal mode.

Fix wangqr/Aegisub#10
2019-09-22 17:41:02 -07:00
wangqr 9ed381f498 Remove extra semicolon 2019-09-22 17:41:02 -07:00
wangqr b429645006 visualSubToolBar now use same style as other toolbars
Previously visualSubToolBar has boarder while visualToolBar does not. So the width of the toolbar will change when toggling visualSubToolBar.

Now we remove the boarder so they have the same width. A separator is added at the top of visualToolBar instead to provide visual cue.

Fix wangqr/Aegisub#11
2019-09-22 17:41:02 -07:00
wangqr 0a2a07ba7e Use absolute distance when scrolling audio box with mouse wheel
Instead of 1/3 screen per tick. So the distance of scroll no longer depends on the width of the audio box. Besides, 1/3 is feels to far for me when the audio box is wide.

See wangqr/Aegisub#5
2019-09-22 17:41:02 -07:00
wangqr 716c2eae0d Remove the usage of dummy wxTimerEvent 2019-09-22 17:40:47 -07:00
wangqr bb5090ac3a Detect EBML magic number to skip encoding detection for MKV
MKV loads slow after f733297499
2019-09-22 17:40:46 -07:00
wangqr d7139c40c0 Remove call to wxSizer::CalcMin and wxSizer::RecalcSizes
As they are used internally by Layout and should not be called
directly.
2019-09-22 17:39:43 -07:00
wangqr 73ca9ace1c Change the default fontsize and the list of resolutions
The default fontsize is changed to 48. While it still looks small
on the default 720p video, it is actually bigger than
    20 / 480 * 720 = 30

Here 720p is the default video resolution after 837d5a41d7. Some
common resolutions are also added to the preset list.

Fix wangqr/Aegisub#3
2019-09-22 17:39:43 -07:00
wangqr 38046516b3 Fix FFT first sample location
Fix wangqr/Aegisub#1
2019-09-22 17:39:43 -07:00
wangqr 698c41afef Fix iconv ConversionFailure on long path 2019-09-22 17:39:43 -07:00
Ryan Lucia 293673fef1 Divorce stored TPP lead-in/out values from config
There's no real reason to link these as far as I can tell, and plenty of
valid reasons not to
2019-09-22 17:39:43 -07:00
Ryan Lucia 2411617158 Properly ignore ASS whitespace characters in character counter 2019-09-22 17:39:43 -07:00
Ryan Lucia af5d34cc1d Add configuration options for colors in visual typesetting tools 2019-09-22 17:39:43 -07:00
Ryan Lucia 1ce72a6d6e Update default config to modern standards 2019-09-22 17:39:43 -07:00
Ryan Lucia ebea3905cc Use FFMS2 constant in place of magic number 2019-09-22 17:39:43 -07:00
Ryan Lucia 4f870f9c26 Ignore VS build files
Most files were moved to .vs directory with VS15
2019-09-22 17:39:43 -07:00
Ryan Lucia f2ca259a8b Pass 0 to FFMS_Init
The argument is no longer used, and the docs specify to pass a value of 0 to avoid confusion
2019-09-22 17:39:43 -07:00
Ryan Lucia 04a193de4d Point users at a functional bug tracker 2019-09-22 17:39:43 -07:00
Ryan Lucia 63d267d359 Fix line order when splitting after current frame 2019-09-22 17:39:43 -07:00
Ryan Lucia b2dd50e910 Use proper event for DoubleUpdater
Previously changes weren't recognized because the event bound was for integers
2019-09-22 17:39:43 -07:00
Ryan Lucia 66a3748f97 Remove dead forums link 2019-09-22 17:39:43 -07:00
Ryan Lucia bc649b6063 Make translation assistant skipping whitespace an explicit setting 2019-09-22 17:39:43 -07:00
Ryan Lucia 30286e7035 Remove Force BT.601 option and update color matrix guessing 2019-09-22 17:39:43 -07:00
Ryan Lucia d660f7f2b0 Add support for setting status bar text from Lua 2019-09-22 17:39:43 -07:00
wangqr d0c05fbcde Update about dialog 2019-09-22 17:39:43 -07:00
wangqr 17215edc31 Fix build warnings 2019-09-22 17:39:43 -07:00
wangqr faad82e1ec Fix overflow bound 2019-09-22 17:12:05 -07:00
wangqr 5d4973a5f6 Fix millisecond to centisecond convertion
Fix Aegisub/Aegisub#94
2019-09-22 17:12:05 -07:00
wangqr d89c1ce900 Change some text box size to make it looks better on HiDPI 2019-09-22 17:12:05 -07:00
Thomas Goyne 4897905287 Install autopoint on travis 2019-09-22 16:44:03 -07:00
darealshinji 7c43c757ce don't be too pedantic on the OpenAL checks 2019-09-22 19:35:40 -04:00
scx 547b17fc22 Fix crashing when picking language
Aegisub crashes immediately after selecting any language
from the end of the list (above the 100th position).
This is because it can support no more than 100 languages.
This patch extends this limit up to 1000 languages (locales).

Fixes #131
2019-09-22 19:34:23 -04:00
scx c3c446a8d6 Fixes for Boost 1.69.0 2019-09-22 19:33:36 -04:00
darealshinji 7094bd1e20 Add configure option to enable portable builds on Linux 2019-09-22 19:26:50 -04:00
Yakauleu Uladzislau 565b7cb86e Added Belarusian Localization 2019-09-22 19:23:39 -04:00
scx 0847acc53f Add missing AM_GNU_GETTEXT_VERSION macro
Bug: http://devel.aegisub.org/ticket/1914
2019-09-22 19:22:33 -04:00
scx 67d9fd9aa4 DataBlockCache: Fix crash in cache invalidation (#142)
The original version uses a reverse iterator,
whose .base() is invalid after KillMacroBlock() erases it.
2019-09-22 19:19:56 -04:00
scx cb0af6ca35 Fix crash on right click due to no spell checker
See: #131
2019-09-22 19:17:39 -04:00
scx 0418d0b5be Desktop file: make Keywords translatable 2019-09-22 19:16:23 -04:00
scx eeb3e17b73 Update desktop file
- Add Keywords
 - Add StartupWMClass
 - Update Categories
2019-09-22 19:16:23 -04:00
scx 7ea2c09afa make_pot.sh: Check presence of xmlstarlet and jq 2019-09-22 19:15:36 -04:00
scx c3a4a9122c Integrate AppData file with build system 2019-09-22 19:15:36 -04:00
scx 0a1b93860b Add AppData file template 2019-09-22 19:15:36 -04:00
wangqr 42552e5efb Correctly handle memory free using Lua GC
Instead of manually free. Otherwise return value of `search' may refer to invalid memory.
Fix Aegisub/Aegisub#99
2019-09-22 19:12:23 -04:00
wangqr 3782b906d7 Fix travis-ci build script 2019-09-22 19:12:23 -04:00
Ryan Lucia d9bd7def0b Fix autotools lua detection 2019-09-08 18:36:58 -04:00
Ryan Lucia 5ed4838d00 Convert osx-fix-libs to py3 2019-05-16 18:11:03 -04:00
Ryan Lucia 5005d6d2a2 Set visual tool default feature color correctly
Fixes #50
2019-05-16 18:10:43 -04:00
Ryan Lucia fb02d6855c Fix compilation on Mojave 2019-05-16 17:41:18 -04:00
Ryan Lucia a5228d8d44 Update OSX build instructions
Two notable changes: attempting to forcibly link icu4c no longer works for :reasons:, so you have to manually add it to the pkg-config and compiler/linker search directories. Additionally, homebrew removed build options from most packages as part of https://github.com/Homebrew/homebrew-core/issues/31510, and this includes luajit and boost. The former builds with gc64 by default on HEAD, and the latter with icu4c support by default, so this actually somewhat simplifies things.
2019-05-16 14:46:26 -04:00
davste0816 c2085d139c Fix Move Down button in Export dialog 2019-05-12 11:56:13 -04:00
davste0816 b107077b20 Add .webm to extension list, add .eac3 as an audio format
Co-Authored-By: FichteFoll <fichtefoll2@googlemail.com>
2019-05-12 11:55:48 -04:00
davste0816 0e6b492735 Recognize .opus as an audio format, .h264 .hevc as video formats 2019-05-12 11:55:48 -04:00
Martin Herkt a78f5d2760 DataBlockCache: Fix crash in cache invalidation
Fixes #33
2019-05-03 20:51:23 -04:00
FichteFoll 75fc5f38d7 Adjust boost gil header paths for boost 1.69
boost/gil.hpp was added in 1.68 and boost/gil/gil_all.hpp removed in
1.69.
2019-01-31 19:47:00 -05:00
Ryan Lucia 7853e7abe2 Update libass
Worth noting that this does NOT currently build, thanks to a few lines in libass that are not compatible with vc++. I'll bump the libass commit when MrSmile's pr gets merged and this is remedied. You can apply this commit to remedy that: 5317a8dd89
Also worth noting that while libass switched to nasm, I haven't done so here because it wasn't worth the effort, so I just made a questionable change to the yasm.targets to emulate nasm behavior
2019-01-07 21:48:50 -05:00
Ryan Lucia 7147038e0a Fix luajit build flags
Notably, don't build the dynamic library and enable 5.2 compatibility features
2019-01-07 21:48:50 -05:00
Ryan Lucia 3ba7358bfe Use FFMS2 constant in place of magic number 2019-01-07 21:48:50 -05:00
Ryan Lucia a1ec3767e4 Remove compatibility with old versions of FFMS2
2.22 was released oct 2015, so I think a more recent version is a fairly safe assumption
2019-01-07 21:48:50 -05:00
Ryan Lucia ad52260665 Ensure FFMS always indexes video tracks
Matching historical behavior with DoIndexing, which is assumed throughout the codebase
2019-01-07 21:48:50 -05:00
Ryan Lucia 5a554a586e Excise the hopefully last mention of ASSDraw 2019-01-07 21:48:50 -05:00
Ryan Lucia 826a360b8d Revert to dynamically linking the vc runtime 2019-01-07 21:48:49 -05:00
Ryan Lucia 628962559d Update strip-icu to python 3 2019-01-07 21:48:49 -05:00
Ryan Lucia 129e748abd Update uchardet 2019-01-07 21:48:49 -05:00
Ryan Lucia 9638bfbef4 Update ffmpeg and ffms2 2019-01-07 21:48:49 -05:00
Thomas Goyne f99711aca8 Bump _WIN32_WINNT to Vista 2019-01-07 21:48:49 -05:00
Thomas Goyne 6496414e61 Update freetype2 2019-01-07 21:48:48 -05:00
Thomas Goyne 2cb92a5f74 Bump _WIN32_WINNT to Vista 2018-11-23 09:22:18 -08:00
Thomas Goyne ebc76c8a11 Update ffmpeg and ffms2 2018-11-23 09:22:18 -08:00
Thomas Goyne 6afb851365 Update freetype2 2018-11-23 09:22:18 -08:00
Ryan Lucia 26ccf0b8e5 Divorce stored TPP lead-in/out values from config
There's no real reason to link these as far as I can tell, and plenty of
valid reasons not to
2018-11-17 19:27:25 -05:00
Ryan Lucia 08ebcf4693 Remove assdraw from default toolbar 2018-11-17 17:54:17 -05:00
Ryan Lucia a9eba14df5 Remove assdraw and forums from default menu
Reflects changes previously made to remove those elements from Aegisub
2018-11-17 15:57:48 -05:00
Ryan Lucia 9d579e15ec Add installer vendor folder to gitignore 2018-11-17 15:56:34 -05:00
Ryan Lucia c6d50332e8 Modify organization for installer requirements, minor installer clean-up 2018-10-06 03:57:04 -04:00
Ryan Lucia 6e0706939e More cleanup efforts on the installer scripts
Untested, probably still needs work
2018-10-05 21:16:30 -04:00
line0 e2bd1283c6 add DependencyControl plus requirements to windows installer; also split features in components and drop 32-bit support 2018-10-05 21:15:12 -04:00
Ryan Lucia 2961ea1947 Update VS project to properly locate fribidi headers 2018-10-05 20:56:13 -04:00
Ryan Lucia 5c1566752a Ignore VS build files
Most files were moved to .vs directory with VS15
2018-10-05 17:51:55 -04:00
bkbkb 2ce503ebe7 Fix fribidi download link 2018-09-23 20:20:05 -04:00
darealshinji c3e03f3039 Update config.sub, config.guess, install-sh (#77) 2018-09-23 20:19:33 -04:00
bkbkb 83736b4866 Fix fribidi download link 2018-07-29 21:39:15 -07:00
Thomas Goyne 524c6114a8
Merge pull request #80 from jbeich/boost
Unbreak build against Boost 1.68
2018-07-09 15:06:51 -07:00
Jan Beich d8336d2fed Keep using std::distance after Boost 1.68
src/search_replace_engine.cpp:256:14: error: call to
      'distance' is ambiguous
                                count += distance(
                                         ^~~~~~~~
/usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter =
      boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
distance(_InputIter __first, _InputIter __last)
^
/usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function [with SinglePassIterator =
      boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
        distance(SinglePassIterator first, SinglePassIterator last)
        ^
2018-07-09 20:17:59 +00:00
darealshinji ce658d0709 Update config.sub, config.guess, install-sh (#77) 2018-06-17 11:14:35 -07:00
Ryan Lucia fe0dd3e095 Merge remote-tracking branch 'upstream/master' into tstools 2018-05-31 04:26:15 -04:00
Ryan Lucia 9ce76d3802 Update OSX build instructions
Tested against a fresh copy of 10.13
2018-05-31 04:23:59 -04:00
Ryan Lucia d4e99700d4 Remove ambiguity over distance function call 2018-05-31 04:22:43 -04:00
Ryan Lucia 861a1c1694 Update gitignore to include additional generated luajit files 2018-05-31 04:22:11 -04:00
Marcin Kurczewski a4bde47c5c Fix MRU menus (#48)
Broken in 9bbfdddde0. I don't understand
why the author made such a change, so I left their solution with #ifdef
guard.
2018-05-28 21:24:23 +02:00
Thomas Goyne a32bf7acdc Set ffmpeg's yasm include paths correctly 2018-05-25 22:32:27 +02:00
Thomas Goyne 4fdc5efb69 Explicitly declare DataBlockCache as moveable to make vs17 happy 2018-05-25 22:32:27 +02:00
Thomas Goyne e44f0b92b0 Use absolute paths for the default dependencies paths 2018-05-25 08:27:29 +02:00
Thomas Goyne bbd5a0aadb Fix a typo in install.targets 2018-05-25 08:27:29 +02:00
Thomas Goyne 5cfa896f98 Drop Windows XP support 2018-05-25 08:27:29 +02:00
Thomas Goyne 9c628f1cdf Switch to the vs 2017 toolkit 2018-05-25 08:27:29 +02:00
Ryan Lucia adb7c36be3 Apply and update LuaJIT patches 2018-05-12 03:06:01 -04:00
Ryan Lucia 90586ca588 Update LuaJIT to 2.0.5 2018-05-12 02:58:15 -04:00
Ryan Lucia a621072e7d Add support for WWXD keyframes in qpfile format 2018-05-10 03:28:51 -04:00
Ryan Lucia 747525142a Pass 0 to FFMS_Init
The argument is no longer used, and the docs specify to pass a value of 0 to avoid confusion
2018-05-07 19:24:47 -04:00
Ryan Lucia 869cdcc7a1 Properly ignore ASS whitespace characters in character counter 2018-05-07 18:09:42 -04:00
Ryan Lucia 3eaa56fc18 Point users at a functional bug tracker 2018-05-07 18:09:42 -04:00
Ryan Lucia e516ab6e32 Fix line order when splitting after current frame 2018-05-07 18:09:42 -04:00
Ryan Lucia 4d048e3c90 Add configuration options for colors in visual typesetting tools 2018-05-07 18:09:40 -04:00
Ryan Lucia 50a18c7942 Use proper event for DoubleUpdater
Previously changes weren't recognized because the event bound was for integers
2018-04-30 02:38:14 -04:00
Ryan Lucia dbd7dd8ba1 Remove shitty joke
The default message here is an old joke in extremely poor taste, and best replaced in the config
2018-04-30 02:38:14 -04:00
Ryan Lucia 2f500cd480 Remove dead forums link 2018-04-30 02:38:14 -04:00
Ryan Lucia 95d96f938b Make translation assistant skipping whitespace an explicit setting 2018-04-30 02:38:14 -04:00
Ryan Lucia 3bcc7269be Remove Force BT.601 option and update color matrix guessing 2018-04-30 02:38:14 -04:00
Ryan Lucia 10814a7d0b Add support for setting status bar text from Lua 2018-04-30 02:38:11 -04:00
Ryan Lucia 8cc3a35dd4 Update default config to modern standards 2018-04-29 16:36:21 -04:00
Thomas Goyne 73c5e7a4c2
Merge pull request #60 from sidneys/hotfix/updated-macos-build
FIX: Updated build instructions for macOS 10.12 and XCode 9
2018-04-29 13:03:31 -07:00
Roxas Shadow d893218e50 it.po: fix typo (#59) 2018-04-29 13:00:11 -07:00
computerfan e401baa910 Update Simplified Chinese translation (#55)
Fix some wrong or ambiguous translation.
2018-04-29 12:59:59 -07:00
Alexander Pozdnyakov 315d416753 added missing files (#57) 2018-04-29 12:59:48 -07:00
sidneys b097d3133d fix(updated-macos-build): add missing .m4 macros 2018-03-31 02:58:27 +02:00
sidneys d4461f65be fix(updated-macos-build): prefix icu method calls (icu::BreakIterator, icu::Locale, icu::UnicodeString) 2018-03-31 02:58:27 +02:00
Sidney 40a0fb5910 fix(updated-macos-build): update Homebrew and wxWidgets instructions in README 2018-03-31 02:58:27 +02:00
therealfun f6a2ac08a6 Makefiles: replace the use of subst macro with patsubst (#56)
$(subst .c,.o,...) replaces '.c' with '.o' everywhere in pathnames. For
example, renaming the "Aegisub" folder to "Aegisub.cool" will make the
build system generate "Aegisub.oool/.../.o" objects.

https://www.gnu.org/software/make/manual/make.html#Text-Functions
2018-03-05 09:28:29 -08:00
rr- 4791222ab3 Add support for reading waveform selection in LUA 2018-03-03 12:51:49 -08:00
rr- 21f704f138 Fix joining as karaoke 2018-03-03 12:50:01 -08:00
Rasmus Thomsen 876d59ec22 remove fontconfig submodule
we already remove its folder ( vendor/fontconfig ), so we should remove it from the actual submodule list as well
2018-03-03 12:46:44 -08:00
Ryan Lucia 1b7388683f Document process for updating mooonscript 2018-03-03 12:46:20 -08:00
Ryan Lucia 3c5b61429a Update moonscript version
Current version is from
491f2352a2
2018-03-03 12:46:20 -08:00
Thomas Goyne bc157d9bbc Also stub out the `system` lua module that newer versions of busted use 2018-03-03 12:44:31 -08:00
Rodger Combs 61028916c8 main: fix warning 2018-01-27 11:35:18 -08:00
Rodger Combs 16d57dac79 OpenAL: destroy context when not in use
This prevents the CoreAudio thread from spinning when paused on macOS
2018-01-27 11:34:58 -08:00
Rodger Combs 5a3b7301c6 find/replace: handle enter key in input fields 2018-01-27 11:34:24 -08:00
Rodger Combs a88835e253 find/replace: bring window to front when activated 2018-01-27 11:34:05 -08:00
Rodger Combs 275a35fdeb README: fix outdated brew package names 2018-01-27 11:34:02 -08:00
Thomas Goyne de9290b75b Remove fontconfig from macOS deps 2018-01-27 11:33:23 -08:00
Rodger Combs 1bd25711eb README: document luajit and wxWidgets build procedure on macOS 2018-01-27 11:32:42 -08:00
Rodger Combs 3632ad067d Build: update boost m4 macros 2018-01-27 11:32:27 -08:00
Thomas Goyne 3bc5e8f04f Remove pointless explicit heights for the audio sliders
The containing sizer overrides them instantly, but for whatever reason
supplying them breaks things on macOS.
2017-07-07 16:46:52 -07:00
Thomas Goyne f555ac841c Bump minimum macOS version to 10.8
Recent versions of the SDK have dropped support for <future> when targeting
10.7.
2017-07-04 12:31:55 -07:00
Thomas Goyne 70edb03b2a Fix some audio display rendering quirks on retina OS X 2017-07-04 10:51:08 -07:00
Martin Herkt 8d3ad9ff68 dialog_about: only include build date with credit (#45)
The build date is largely irrelevant and prevents reproducible builds.
Make it optional.
2017-05-22 07:43:30 -07:00
Maxime Gauduin dd67db47cb Fix compilation against icu 59.1 (#46) 2017-05-08 19:01:47 -07:00
Martin Herkt 3594ade719 build: sort wildcard results for repeatable builds (#44) 2017-03-30 10:08:30 -07:00
Eduard Ereza Martínez b859ddbca4 Update Catalan translation (really) 2017-03-25 12:13:24 -07:00
Ryan Lucia 3e2c165852 Properly set colorspace when loading video
FFMS2 originally would automatically attempt to guess the color space
if not manually specified, but this was removed in
7c2e08109d
and Aegisub never adapted to the change
2017-03-25 12:13:10 -07:00
Thomas Goyne 1042226531 Merge pull request #39 from TheFireRed/patch-1
Quick fix
2016-07-30 11:00:50 -07:00
Thomas Goyne 172ccc2b25 Merge pull request #40 from aristotll/master
Fix typo
2016-07-30 10:59:38 -07:00
Thomas Goyne ea27230293 Merge pull request #41 from Ereza/master
Update Catalan translation
2016-07-30 10:59:29 -07:00
Eduard Ereza Martínez 823e181096 Update Catalan translation 2016-07-14 02:08:15 +02:00
Yao 931613381c Fix typo 2016-07-09 16:25:40 +08:00
Álex G.M b5396eb382 Quick fix
Fixed a small mistranslation. Remove = quitar, eliminar ≠ remover
2016-06-26 19:42:57 +02:00
Niels Martin Hansen b118fe7e7a Fix STL header writing (really)
The vsnprintf call must be passed the buffer size, not the target string size. Shortening the string to field length happens in the memcpy.
2016-05-18 21:56:34 +02:00
Thomas Goyne 0e8bc44539 Work around more places where VC++ generates null pointers-to-members 2016-04-09 08:36:50 -07:00
Thomas Goyne 101cd8e1e5 Fix compilation with old versions of ffms2 2016-04-08 13:29:32 -07:00
Thomas Goyne 7a6da26be6 Fix compilation on X11-using platforms 2016-04-08 12:14:28 -07:00
Thomas Goyne dba8f1c062 Use Uniscribe to check glyph coverage of non-BMP characters rather than just skipping them 2016-04-08 11:24:26 -07:00
Thomas Goyne 15adac519d Update to the new indicator API for Scintilla as 3.4 dropped the old one 2016-04-08 11:24:25 -07:00
Thomas Goyne 1aa9215e7f Use FFMS_DoIndexing2 when using a recent version of ffms2
And clean up the audio track selection logic a bit.
2016-04-08 11:24:21 -07:00
Thomas Goyne 95f3f30d53 Remove pointless braces 2016-04-08 11:24:16 -07:00
Thomas Goyne b8fa7e010b Don't init COM for FFMS2
FFMS2 no longer uses COM for anything.
2016-04-08 11:24:14 -07:00
Thomas Goyne 8823476275 Work around bad codegen from VC++2015 update 2 2016-04-08 11:24:11 -07:00
Thomas Goyne 43f5af556d Switch back to GetVersionEx() to avoid depending on the win8 SDK just for VersionHelpers.h 2016-04-08 11:24:07 -07:00
Thomas Goyne 2720d8c0dc Fix OS X compilation 2016-03-18 19:42:32 -07:00
Thomas Goyne 8f019a6e45 Statically link the CRT for Release builds
VS 2015 has made distributing the dynamic CRT awful; the installer is
larger than Aegisub itself and app-local deployment requires an absurd
number of DLLs.
2016-03-13 17:39:10 -07:00
Thomas Goyne d1e5a2674b Statically link ffms2 on Windows
It used to need to be dynamic due to that it was a nightmare to build,
with very specific toolchain requirements, but that's no longer the
case.
2016-03-13 17:38:49 -07:00
Thomas Goyne 9bbfdddde0 Add the standard OS X "Window" menu 2016-03-13 16:33:53 -07:00
Thomas Goyne cac4ba910d Fix more incorrect sizer flags 2016-03-13 16:33:53 -07:00
Thomas Goyne e3ad5ea976 Update wxWidgets to 3.1.0 2016-03-13 16:33:52 -07:00
Thomas Goyne 26fea0e123 Fix skipping over existing spaces when exporting to EBU STL
ac5f40a543 made it so that the N in \N was
skipped, but broke the space case, resulting in two spaces between each
word.

Closes #1887.
2016-03-05 16:35:01 -08:00
Thomas Goyne b2687e893b Fix member variable initialization order 2016-03-05 16:35:01 -08:00
Thomas Goyne b6c1bb146b Add PTHREAD_CFLAGS to LIBS_PTHREAD
As the ax_pthread documentation says you need to do.

Closes #1902. Closes #1911.
2016-03-05 11:23:46 -08:00
Thomas Goyne 893b08a19c Add CFLAGS_PTHREAD/LIBS_PTHREAD to everything needing them
Closes #1903.
2016-03-05 11:23:46 -08:00
Thomas Goyne 0dea29b369 Build with boost 1.60 when using GCC 5 on Travis 2016-03-05 11:23:46 -08:00
Thomas Goyne c3f442aee8 Build with both GCC 4.8 and GCC 5 on Travis 2016-03-05 11:23:46 -08:00
Thomas Goyne 4c15d0ba84 Add support for running respack.lua with system Lua 2016-03-05 10:51:26 -08:00
Thomas Goyne 0ed6dd46fb Add support for using system LuaJIT rather than the bundled copy
Closes #1904.
2016-03-05 10:51:16 -08:00
Thomas Goyne 45315476bd Switch to a maintained fork of universalchardet 2016-02-09 20:29:29 -08:00
Thomas Goyne a315ce6903 Fix assert failure when opening with no args 2016-02-08 06:59:49 -08:00
darealshinji 14a80dbabd Change LIBS_PTHREAD to PTHREAD_LIBS
See https://github.com/tgoyne/aegisub/blob/master/m4macros/ax_pthread.m4#L12
2016-01-12 11:11:09 +01:00
Thomas Goyne 9ed553e5fb Update ax_pthread.m4 to the most recent version
Closes #1901.
2016-01-11 20:52:40 -08:00
Thomas Goyne ad0f702a55 Escape "." corrently in respack.lua
Using \ works in minilua, but not real lua.

Closes #1898.
2016-01-11 20:52:40 -08:00
Thomas Goyne 28eb475fc2 Actually use the list of filenames in AegisubApp::OpenFiles() 2016-01-10 19:47:26 -08:00
Thomas Goyne bb3e0de728 Handle i/o errors when indexing fonts for GDI 2016-01-10 19:47:25 -08:00
Thomas Goyne 3c381b6c55 Handle fonts that are marked as bold but have the same weight as the normal variant 2016-01-02 15:42:26 -08:00
Thomas Goyne 761a121452 Fix the weight of fonts that use 1-10 2016-01-02 15:42:26 -08:00
Thomas Goyne 596332763b Use the Windows Family Name for family name matching 2016-01-02 15:42:26 -08:00
Thomas Goyne e13a39f302 Try to better match GDI's weight penalty 2016-01-02 15:42:26 -08:00
Thomas Goyne b9a56cb870 Prioritize family name matches over postscript name matches 2016-01-02 15:42:25 -08:00
Thomas Goyne 278b7621cf Assume that fonts which CT won't give the OS/2 table for are Regular 2016-01-02 15:42:25 -08:00
Thomas Goyne f2b3b69b3f Read the weight from the OS/2 table rather than asking CoreText
The weights reported by CT are only occasionally correlated with the
OS/2 weights, and GDI uses the latter.
2016-01-02 15:42:25 -08:00
Thomas Goyne 8e6c4ff3ba Don't check for fontconfig in configure on OS X 2016-01-02 15:42:25 -08:00
Thomas Goyne f824d2c56b Remove OS X and Windows support from the fontconfig file lister 2016-01-02 15:42:25 -08:00
Thomas Goyne 6780373a50 Remove fontconfig config files from the OS X package 2016-01-02 15:42:25 -08:00
Thomas Goyne b1cb16c7f8 Do a better job of picking the best match from CoreText 2016-01-02 15:42:25 -08:00
Thomas Goyne d152af1f14 Deduplicate matched paths from CoreText 2016-01-02 15:42:25 -08:00
Thomas Goyne 2527204515 Get the filesystem representation of urls rather than an absolute url 2016-01-02 15:42:25 -08:00
Thomas Goyne 63bb585db6 Enable ARC for the coretext font lister 2016-01-02 15:42:24 -08:00
Thomas Goyne 973f0b09fc Add a basic CoreText-based fonts collector backend 2016-01-02 15:42:24 -08:00
Thomas Goyne f8c3504898 Remove the OS X fontconfig init logic from the libass provider 2016-01-02 15:42:24 -08:00
Thomas Goyne 9b815ac8cc Fix a crash when reattaching video
The window close event propagates up to the detached window's parent, so
the handler for the parent window closing needs to filter it out.
2016-01-02 13:48:00 -08:00
Thomas Goyne 0b2d0d40d5 Ensure that the fonts collector destination label gets wrapped on OS X 2015-12-29 20:12:52 -08:00
Thomas Goyne 4f34784370 Set the initial control state when the fonts collector dialog is opened correctly 2015-12-29 20:12:32 -08:00
Thomas Goyne f481a7f5fb Use the correct upper bound for restoring the font collector modes 2015-12-29 20:12:29 -08:00
Thomas Goyne e8cdfc57a9 Make FcMode an enum class and simplify the data flow 2015-12-29 20:12:24 -08:00
Thomas Goyne fe2925408c Remove fontconfig entirely from the Windows build 2015-12-29 20:08:07 -08:00
Thomas Goyne e5a6abd215 Add a GDI-based font selector for libass
This deliberately doesn't perform any font substitutions as the sort of
people that use libass on Windows tend to perfer to manually pick
fonts with the correctly glyphs.
2015-12-29 20:08:07 -08:00
Thomas Goyne e06385b6d4 Remove unused includes from subtitles_provider_libass.cpp 2015-12-29 20:08:05 -08:00
Thomas Goyne de3bdeb484 Build libass without fontconfig enabled on Windows 2015-12-29 19:56:48 -08:00
Thomas Goyne 15d78ed190 Update to libass 0.13.1 2015-12-29 19:56:38 -08:00
Thomas Goyne 913b8438f3 Fix Windows x64 compilation 2015-12-29 19:55:58 -08:00
Thomas Goyne 3b13260ca1 Use murmur3 to explicitly hash the font index keys
This significantly improves performance by avoiding the need to
construct std::strings of the things to be hashed, eliminating a bunch
of memory allocations and copies.
2015-12-29 12:38:01 -08:00
Thomas Goyne 879661a379 Only index the first kilobyte of font files to speed up indexing 2015-12-29 12:38:00 -08:00
Thomas Goyne 82f250dbbb Fix the checks for fake bold/italic
EnumFontFamiliesEx doesn't actually use the lfItalic andlfWeight fields,
so we have to check separately.
2015-12-29 12:38:00 -08:00
Thomas Goyne ddc5cd155f Add a GDI-based fonts collector backend 2015-12-29 12:38:00 -08:00
Thomas Goyne fa2e3fb38f More cruft to support running busted on Travis 2015-12-22 17:43:25 -08:00
Thomas Goyne afed3dca21 Fix compilation on Linux 2015-12-21 19:57:49 -08:00
Thomas Goyne 26361c5003 Add support for using busted 2.0 to run automation tests
Supply a definition of socket.gettime() to remove the dependency on
LuaSocket, as installing binary deps from luarocks doesn't work with a
custom build of luajit.
2015-12-21 19:48:23 -08:00
Thomas Goyne 3747705a43 Select the OpenGL context when destroying VideoDisplay
This is needed to destroy the correct things when there are multiple
active opengl displays.
2015-12-21 17:46:38 -08:00
Thomas Goyne c8d02de3db Allow coalescing undo over autosaves 2015-12-21 17:46:38 -08:00
Thomas Goyne 52dbb482af Make next_commit_id a member variable rather than a static
Multiple instances of SubsController should not share it.
2015-12-21 17:46:38 -08:00
Thomas Goyne 2032ab8ea3 Handle multiple simultaneous OpenAL audio players in one process 2015-12-21 17:46:38 -08:00
Thomas Goyne 75804da4ea Set the closed marker even on 64-bit OS X 2015-12-21 17:46:38 -08:00
Thomas Goyne 5f89a64f07 Adjust the menu text on OS X to better match the HIG 2015-12-21 17:46:38 -08:00
Thomas Goyne f28e46c2e3 Add a Close command to the file menu on OS X 2015-12-21 17:46:37 -08:00
Thomas Goyne ead12de8b6 Actually close all windows on quit 2015-12-21 17:18:07 -08:00
Thomas Goyne 84b0f1e043 Mostly adopt the standard OS X document-based UI model on OS X 2015-12-21 17:18:04 -08:00
Thomas Goyne 0f17784548 Actually open a new window in the New Window command 2015-12-21 17:17:54 -08:00
Thomas Goyne 8de8724660 Support creating multiple main windows
This is not yet actually exposed in any way in the UI.
2015-12-21 17:17:51 -08:00
Thomas Goyne f5f5439808 Add context-specific path tokens
?video, ?audio, and ?script are not global.
2015-12-21 17:17:48 -08:00
Thomas Goyne 932937c343 Shut up a missing override warning 2015-12-21 17:17:46 -08:00
Thomas Goyne e757618b32 Use an explicit operator bool for Vector2D 2015-12-21 17:17:42 -08:00
Thomas Goyne d253388c8e Perform autosaves on a background thread rather than blocking the UI 2015-12-21 17:17:33 -08:00
Thomas Goyne 44b76d38d2 Switch to app-local deployment of the CRT rather than using the installer
The installer for VS2015 is huge (13 MB compressed for 5.5MB of
installed stuff) and seems to be restarting people's computers without
warning.
2015-12-08 19:14:02 -08:00
Thomas Goyne bebc024fa0 Fix overflow issues with truncated pcm files 2015-11-29 20:11:14 -08:00
Thomas Goyne f811f7e363 Select the "Time" radio on startup 2015-11-29 20:11:14 -08:00
Thomas Goyne 1d00bd834d Fix typo that made the color picker's cursor appear in the wrong place in RGB modes 2015-11-29 20:11:14 -08:00
Thomas Goyne 9112cc8cf9 Fix some invalid sizer flags 2015-11-29 20:11:14 -08:00
Thomas Goyne 4542204b3a Fix undefined behavior in DataBlockCache::SetBlockCount()
Left-shifting negative signed numbers is UB (and pointlessly complex
here anyway).
2015-11-29 20:11:14 -08:00
Thomas Goyne 652a250189 Add an error message for when creating the Lua state fails 2015-11-29 20:11:14 -08:00
Thomas Goyne 263ccbdc23 Fix misalined pointer read in the PCM audio provider 2015-11-29 20:11:14 -08:00
Thomas Goyne 0d72423223 Include a copy of ffversion.h 2015-11-29 20:11:14 -08:00
Thomas Goyne 9fd5bbc552 Update boost.vcxproj.filters to reflect files removed from boost.vcxproj 2015-11-29 20:11:14 -08:00
Thomas Goyne 2fa56abc75 Explicitly add the DirectX SDK dir to the linker paths 2015-11-29 20:11:14 -08:00
Thomas Goyne f7661dbd78 Explicitly default AssAttachment's copy constructor 2015-11-29 20:11:14 -08:00
Thomas Goyne 7eb2504dbb Merge pull request #32 from darealshinji/patch-1
Don't use -fPIC
2015-09-19 17:11:38 +02:00
darealshinji f0258cf2d9 Don't use -fPIC
`-fPIC` is only useful when building shared libraries.
2015-09-18 23:03:50 +02:00
Thomas Goyne 85a820918f Fix a crash when opening a new file when the grid is not scrolled to the top 2015-09-13 18:49:46 +02:00
Thomas Goyne ea43700531 Add LIBS_PTHREAD to repack-thes-dict
Closes https://github.com/Aegisub/Aegisub/pull/28.
2015-09-13 12:12:17 +02:00
Thomas Goyne c49dd8bd96 Ensure luarocks env variables are set for make-automation 2015-09-13 11:54:32 +02:00
Thomas Goyne 85b356407f Reapply OS X/Windows build hacks 2015-09-13 10:02:59 +02:00
darealshinji 736e69ef53 LuaJIT: enable Makefile verbosity with V=1 2015-09-12 13:09:32 +02:00
darealshinji 5c50029074 Aegisub-specific LuaJIT settings 2015-09-12 13:01:34 +02:00
darealshinji 896ede12f3 Apply and update LuaJIT patches 2015-09-12 12:45:23 +02:00
darealshinji 541a9ad590 LuaJIT 2.0.4 2015-09-12 12:38:01 +02:00
Cirrus Wazza 1f7a59afcb Update French translation
Closes #1882.
2015-08-30 16:47:59 -07:00
Thomas Goyne ac2ac9cf06 Merge pull request #30 from CoffeeFlux/master
Fixed typo in README.md
2015-08-15 14:35:21 -07:00
Ryan Lucia a84c9b9a85 Fixed typo 2015-08-14 16:39:32 -04:00
Thomas Goyne 0ea48271d4 Add missing automation files to the portable installer 2015-07-31 11:12:20 -07:00
Thomas Goyne a55bc56a12 Update portable installer to include the vs14 CRT 2015-07-31 11:11:10 -07:00
Thomas Goyne 5c9ce12746 Use SWResample for FFMS2 rather than AVResample
FFmpeg's Opus decoder requires swresample, so just use it for
everything rather than shipping both resamplers.
2015-07-30 19:20:10 -07:00
Thomas Goyne ad1af90e74 Update dependencies to VS14 compatible versions 2015-07-30 19:20:10 -07:00
Thomas Goyne 4366e59353 Update to Visual Studio 2015 2015-07-30 19:20:10 -07:00
Thomas Goyne 017bbe1e59 Delay showing the font indexing dialog for 250ms
Helps avoid ugly flickering when no indexing is required, but fontconfig
is taking a long time to load the cache.
2015-07-28 20:46:02 -07:00
Thomas Goyne 9ae508730d Remove some incorrect and ignored sizer flags 2015-07-28 20:46:02 -07:00
Thomas Goyne d5dde6cff2 Reduce error-handling bloat a bit 2015-07-28 16:22:48 -07:00
Thomas Goyne b0f4c9f1ad Remove agi::vfr::Framerate's explicit swap implementation 2015-07-28 14:30:03 -07:00
Thomas Goyne fefa31eb47 Improve code coverage of tests 2015-07-28 14:30:03 -07:00
Thomas Goyne 4a3b411092 Silence a warning 2015-07-28 14:30:02 -07:00
Thomas Goyne 09b2736103 Mark a bunch of things as overriding virtual functions 2015-07-28 14:30:02 -07:00
Thomas Goyne 7a60ac95ef Always use C++ for AC_AGI_COMPILE 2015-07-27 18:57:08 -07:00
Thomas Goyne d278dcc7a8 Update to a newer version of AX_CHECK_GL that supports OpenBSD
Closes #1875.
2015-07-27 18:19:57 -07:00
Thomas Goyne 096398425a Skip some pointless configure checks on OS X 2015-07-27 18:19:41 -07:00
Thomas Goyne 8f5bfb0cae Make toggle buttons on OS X much more visibly distinct
Closes #1839.
2015-07-27 18:19:41 -07:00
Thomas Goyne f1252d1364 Update Vietnamese translation
loses #1878.
2015-07-27 10:29:23 -07:00
Thomas Goyne b55ad78c23 Update wx setup.h 2015-07-27 10:29:22 -07:00
Thomas Goyne 3c55d4fde4 Fix incorrect results for non-regex skip tags searches
Closes #1865.
2015-07-27 10:29:22 -07:00
Thomas Goyne 74ac2ab1fe Extract some more find/replace logic to libaegisub 2015-07-27 10:29:22 -07:00
Thomas Goyne cad8c80aab Update wxWidgets 2015-05-31 11:49:30 -07:00
Thomas Goyne 97bf5c77c3 Explicitly allow unicode text when pasting 2015-05-31 11:49:29 -07:00
Thomas Goyne 42429d4930 Remove incorrect sizer flags 2015-05-31 11:49:29 -07:00
Thomas Goyne ba9f5a78d4 Include the stack trace for errors in automation validation functions 2015-05-09 13:58:32 -07:00
Thomas Goyne ff874fadf9 Reduce nesting 2015-05-09 13:58:23 -07:00
Thomas Goyne a5c87908e1 Set the new active line correctly after splitting by karaoke 2015-05-09 13:58:15 -07:00
Thomas Goyne 0ccac34cb0 Fix crash when splitting lines by karaoke
Defer the deletion of the old lines until after the commit as is now
done for everything that deletes selected lines.
2015-05-09 13:58:12 -07:00
Thomas Goyne 8c6a3d85ba Update ffms2 project 2015-05-09 12:58:40 -07:00
Thomas Goyne 5afc543a5a Update libass to 0.12.2 2015-05-09 11:28:19 -07:00
Thomas Goyne d2958e6aca Set the Row for dialogue lines added to keep the file non-empty 2015-05-09 11:28:18 -07:00
Thomas Goyne 4d4102fcb3 Update ffms2
Fixes handling of positive audio delay.
2015-05-09 10:54:41 -07:00
Thomas Goyne c013342caa Catch more exceptions in lfs 2015-05-09 10:54:37 -07:00
Thomas Goyne 8cd970eb53 Update moonscript to 0.3.1 2015-05-09 10:54:34 -07:00
Thomas Goyne 7a8fda007d Cancel karaoke templater execution immediately when an error occurs
Closes #1849.
2015-03-01 11:22:50 -08:00
Thomas Goyne 9466c98fd7 Remove trailing whitespace from kara-templater.lua 2015-03-01 11:20:15 -08:00
Thomas Goyne 40ae2cdc35 Fix snapping audio markers when dragging inactive line markers with ctrl
We do need to check if the inactive markers are in the active set when
ctrl-dragging, as otherwise there'll always be a marker 0 pixels away to
snap to. Fortunately when ctrl-dragging all of the the markers involved
are by definition very close together, so it would be very difficult to
have enough markers to check for this to be a performance issue.

Closes #1823.
2015-03-01 11:13:43 -08:00
Thomas Goyne 801a8915d1 Use the untranslated context name for new hotkeys
Closes #1855.
2015-02-28 14:39:06 -08:00
Thomas Goyne d6982426c6 Merge pull request #26 from tophf/rot-angle-fix
Style editor: accept -360..360deg range
2015-02-28 14:28:44 -08:00
Thomas Goyne 2ef500d22c Merge pull request #27 from tophf/attached-font-render-fix
Pass all font attachments to font renderer
2015-02-28 14:28:17 -08:00
9adefaf01e5bf6426d838cd20eae582d2b6ba647 af9fe934c7 Pass all font attachments to font renderer
See #1805.
2015-02-27 01:16:35 +03:00
9adefaf01e5bf6426d838cd20eae582d2b6ba647 4f9713cb20 Style editor: accept -360..360deg range
People tend to use 270deg not knowing|remembering it's equal to -90deg
2015-02-26 22:40:21 +03:00
Thomas Goyne 3554bdc29a Fix failing tests 2015-02-15 12:37:34 -08:00
Thomas Goyne 48d4364eb8 Fix tests compilation on Windows 2015-02-15 12:33:48 -08:00
Thomas Goyne 5cedf16edd Use the custom lua error handler during macro load 2015-02-15 08:19:23 -08:00
Thomas Goyne 878fd4453b Fix whitespace 2015-02-15 08:19:22 -08:00
Thomas Goyne e72ab0eda8 Remove an incorrect error message 2015-02-15 08:19:17 -08:00
Thomas Goyne 879788fe83 Eliminate some gratuitous exceptions 2015-02-15 08:19:10 -08:00
Thomas Goyne 0416188235 Eliminate a pointless menu refresh when opening subtitle files 2015-02-15 08:19:05 -08:00
Thomas Goyne acb9b8adac Reinitialize libass every time the font is changed in the style editor
libass doesn't free any font data it requests until the ass_renderer is
destroyed, so recreate it every time the font is changed to avoid
holding on to extremely large amounts of data when the user quickly
switches between fonts.

Closes #1320.
2015-02-08 09:13:53 -08:00
Thomas Goyne 9f196adc2e Replace boost::tokenizer with agi::Split 2015-02-08 08:11:22 -08:00
Thomas Goyne 5d8aeb8b40 Replace most remaining uses of boost::split with agi::Split 2015-02-08 08:11:14 -08:00
Thomas Goyne 01558bf10d Fix type_name compilation on OS X
Reverts 2986932f31. There are more types
of ints than sizes of ints, so using the stdint types doesn't work.
2015-02-07 14:56:50 -08:00
Thomas Goyne 2269dbcfe0 Reuse previously calculated string widths 2015-02-07 14:56:48 -08:00
Thomas Goyne 427037a552 Reimplement boost::split_iterator to make it less slow
boost::split_iterator type-erases the predicate, which makes it require
a virtual call per character (!) along with a heap allocation. As it
turns out we only ever need one predicate (comparing to a single
character), so replace it with a split_iterator that just does that.
2015-02-07 14:56:27 -08:00
Thomas Goyne d8bd9904d8 Avoid running the extradata parsing regex unnecessarily 2015-02-07 14:56:20 -08:00
Thomas Goyne bddf44ddde Eliminate a bunch of memory allocations when getting column widths 2015-02-01 20:09:40 -08:00
Thomas Goyne 8c1b20e651 Speed up grid painting with many unique effects/actors a bit 2015-02-01 20:09:35 -08:00
Thomas Goyne 79fb5cb3fe Fix crash when deleting the last dialogue line from automation 2015-01-26 19:22:59 -08:00
Thomas Goyne 0080f3ad39 Update libass 2015-01-26 19:22:59 -08:00
Thomas Goyne 7300a1bf2d Remove some redundant .get()s 2015-01-26 19:22:59 -08:00
Niels Martin Hansen def24c25b3 Fix EBU STL writing on non-MSVC runtimes
MSVC 2013 and earlier have the _snprintf() function fill fields
completely, eliding the NUL character, if the printed string is
as long as or longer than the given buffer size. This is not the
case in POSIX snprintf(), it always ensures the string is terminated.
This causes several fields in GSI to become truncated and contain
NUL characters which should not appear there.
2015-01-26 19:19:42 +01:00
Niels Martin Hansen d0296618a6 Sort Automation menu items by display name 2015-01-25 00:35:42 +01:00
Niels Martin Hansen 0f3bca016e Fix bug introduced in 15d26dd 2015-01-23 19:28:40 +01:00
Niels Martin Hansen 88d8573d4c Fix crash when loading a dialogue line missing extradata 2015-01-20 21:22:24 +01:00
Niels Martin Hansen 0f618d94df Enable assembly routines for libass on Windows 2015-01-20 21:22:23 +01:00
Niels Martin Hansen bfa416c583 Build fribidi with standard-malloc flag
Not using this may cause unpredictable crashes in some builds
on some systems. Fribidi's own allocator is not thread safe.
2015-01-20 21:22:21 +01:00
Niels Martin Hansen 2cfa6f14f2 Split Yasm targets into reusable file 2015-01-20 21:22:20 +01:00
Niels Martin Hansen e692759ea1 Change standard-outdirs.props to space indents 2015-01-20 21:22:19 +01:00
Niels Martin Hansen 5e446264a2 Use new task in relative-ObjectFileName target 2015-01-20 21:22:18 +01:00
Niels Martin Hansen 59ab4cd09b Rework InstallHeaders target to be more regular 2015-01-20 21:22:16 +01:00
Niels Martin Hansen 773b60c36c Rework header copy in boost build 2015-01-20 21:22:15 +01:00
Niels Martin Hansen 2986932f31 Fix issues with type_name on Win64 build
Both size_t and unsigned long long are aliases for
unsigned __int64 on Win64, and causes a duplicate definition.
Replacing all the integer type_name definitions with stdint.h
names should avoid this problem.
2015-01-20 21:22:14 +01:00
Niels Martin Hansen b97ea87b4c Fix libass project for FastUptodateCheck 2015-01-20 02:53:47 +01:00
Niels Martin Hansen 76b776d483 Fix libaegisub project for FastUptodateCheck 2015-01-20 02:53:46 +01:00
Niels Martin Hansen 8ca73559bd Fix boost project for FastUptodateCheck 2015-01-20 02:53:44 +01:00
Niels Martin Hansen 9016a61ec4 Fix freetype project for FastUptodateCheck 2015-01-20 02:53:43 +01:00
Niels Martin Hansen 722e979419 Fix luajit project for FastUptodateCheck 2015-01-20 02:53:28 +01:00
Niels Martin Hansen a0bf50dc8a Upgrade all MSBuild projects to v12 tools
Has no real effect, it's what VS 2013 already uses and detailed
logging reveals that the build system doesn't even recognize v4
and assumes v12 anyway.
Might prevent builds with outdated tools.
2015-01-18 03:03:42 +01:00
Niels Martin Hansen 52d4955064 Clean up object dirs for Yasm'd files on Windows 2015-01-14 04:45:45 +01:00
Niels Martin Hansen 5bcfc81df5 Clean up produced object dirs during Windows build
Adds some additional MSBuild magic that chops dir names
from a given base, to avoid making deep, thin hierarchies
of dirs when building especially FFmpeg and libaegisub.
2015-01-14 04:45:02 +01:00
Niels Martin Hansen 719eff39b1 Integrate Yasm assembling better in VC build
By not having it blindly run before the ClCompile target
it won't be checked every time you choose to build a single
file from the IDE. Instead it becomes a separate build stage
of its own.
2015-01-14 03:40:36 +01:00
Niels Martin Hansen a0a6194a26 Partially revert 68781a9
The change in source file paths breaks on some systems
2015-01-14 01:06:42 +01:00
Niels Martin Hansen ebb3811942 Fix #1843 2015-01-14 00:46:02 +01:00
Niels Martin Hansen b4516e4754 Fix #1844, eliminate pointers so typeid behaves
Only the bare type is considered polymorphic/habving a vtable
so therefore applying typeid to a pointer type doesn't behave
as intended.
2015-01-14 00:35:26 +01:00
Niels Martin Hansen f0a5abad01 AssKaraoke can safely take a const AssDialogue* 2015-01-14 00:21:25 +01:00
Niels Martin Hansen 68781a95b2 Log names of files Yasm'd in FFmpeg build 2015-01-14 00:21:24 +01:00
Niels Martin Hansen e9f0999c01 Include seconds in log timestamps on Windows 2015-01-14 00:21:23 +01:00
Niels Martin Hansen a93c51c9ba Avoid having libiconv export symbols on Windows 2015-01-14 00:21:23 +01:00
Niels Martin Hansen ca555359d9 Make dummy audio provider generate non-periodic noise 2015-01-14 00:21:22 +01:00
Thomas Goyne bfe7e4688a Bump wx submodule 2015-01-01 10:24:01 -08:00
Thomas Goyne 0b0eaed049 Also disable unused boost stuff on Windows 2015-01-01 10:24:01 -08:00
Thomas Goyne 6929dcabc1 Move the boost config defines to acconf.h to make the build command lines less gross 2015-01-01 10:24:01 -08:00
Thomas Goyne 069af7cfca Build wx without wxAny 2015-01-01 10:24:01 -08:00
Thomas Goyne 57edbafdda Replace uses of wxThreadEvent with a statically typed event 2015-01-01 10:24:01 -08:00
Thomas Goyne ef4424f5e2 Eliminate implicit std::string <-> wxString conversions
On Windows these don't use UTF-8 and so are broken.
2015-01-01 10:24:00 -08:00
Thomas Goyne 26050bd4e0 Actually use CPPFLAGS_BOOST when building src/aegisub 2015-01-01 10:24:00 -08:00
Thomas Goyne 3c59ea9a0a Remove AegisubApp::HandleEvent
OnExceptionInMainLoop covers the same functionality.
2015-01-01 10:24:00 -08:00
Thomas Goyne 2a33b35f60 Give Pen an out-of-line destructor 2015-01-01 10:24:00 -08:00
Thomas Goyne ab35c41a93 Move AudioDisplayInteractionObject to audio_display.cpp 2015-01-01 10:24:00 -08:00
Thomas Goyne 4502a9893d Make some virtual destructors protected instead 2015-01-01 10:23:59 -08:00
Thomas Goyne b6edf58651 Eliminate some object file bloat 2015-01-01 10:23:59 -08:00
Thomas Goyne affb47776b Build with BOOST_MULTI_INDEX_DISABLE_SERIALIZATION 2015-01-01 10:23:59 -08:00
Thomas Goyne 1d82a75595 Add a missing static 2015-01-01 10:23:59 -08:00
Thomas Goyne 62186e916a Anchor AssAttachment's vtable 2015-01-01 10:23:59 -08:00
Thomas Goyne b29fcd4f89 Add some extern template declarations for stuff with vtables 2014-12-28 20:43:29 -08:00
Thomas Goyne 0e1c566628 Move tool_translation_assistant_insert into the anonymous namespace 2014-12-28 20:31:48 -08:00
Thomas Goyne a7042486c0 Anchor AssStyle's vtable 2014-12-28 20:31:33 -08:00
Thomas Goyne 625bd7a767 Avoid having to include preferences.h in app.cpp 2014-12-28 20:28:33 -08:00
Thomas Goyne e485c469e2 Pull some of OptionValue to a cpp file 2014-12-28 20:21:48 -08:00
Thomas Goyne 5089499e8b Remove Excetipion's virtual destructor 2014-12-28 19:52:42 -08:00
Thomas Goyne 0f324a22f1 Fix a pile of places where abs() was used on floats 2014-12-28 19:30:32 -08:00
Thomas Goyne a6b1639320 Extract some bits that don't need to be templated from templates
Cuts compile time by about 10% and shrinks the final binary a little.
2014-12-28 16:46:38 -08:00
Thomas Goyne 372b9fe115 Eliminate a pointless set that only ever had zero or one entries 2014-12-28 16:46:37 -08:00
Thomas Goyne 5201773a3b Slightly optimize returning strings to lua from ffi functions 2014-12-28 16:46:37 -08:00
Thomas Goyne 010f6c4f79 Debloatify some stuff 2014-12-28 12:30:01 -08:00
Thomas Goyne 76afcdafa1 Eliminate uses of dynamic_cast on everything but GUI widgets 2014-12-28 12:29:54 -08:00
Thomas Goyne 6d74f22e92 Fix the legacy clipboard include 2014-12-25 21:09:06 -08:00
Thomas Goyne c313f32384 Special-case all lines being selected in validate_adjoinable
GetSortedSelection is kinda slow with large selections and all lines
being selected is an easy thing to special-case.
2014-12-24 16:59:11 -08:00
Thomas Goyne 44506eae56 Fix compilation with compilers with non-totally-broken templates 2014-12-24 16:46:51 -08:00
Thomas Goyne 0a18fe6cd3 Fix stack corruption when a script tries to select an invalid line 2014-12-24 16:24:51 -08:00
Thomas Goyne 84bd682e2e Make it harder for automation script to leave no lines selected 2014-12-24 16:12:21 -08:00
Thomas Goyne 15d26dd86f Slightly speed up karaskel.collect_head 2014-12-24 15:10:12 -08:00
Thomas Goyne 1fd44ea8da Add subtitles.script_resolution()
Returns the values from the headers if they're present, or does the
insane Gabest-logic if one or both are missing.
2014-12-24 15:10:12 -08:00
Thomas Goyne c43bf1e822 Limit the range to be painted in the audio display to what is visible 2014-12-21 11:31:21 -08:00
Thomas Goyne 71ee37cd71 Slather around more const 2014-12-21 11:31:17 -08:00
Tom Maneiro 2694332692 Update Spanish translation. Closes #1838. 2014-12-07 15:25:01 -08:00
Thomas Goyne 7fc2b248ad Update dependencies 2014-11-30 15:28:58 -08:00
Thomas Goyne bc7e66971d Merge pull request #24 from line0/installer-updates
Windows Installer updates
2014-11-30 15:28:40 -08:00
line0 4765b6dbc6 fix bad alignment caused by @9242c9fb4703cc70e3f46874b54a08f4381bae0f 2014-11-30 20:11:34 +01:00
line0 9242c9fb47 Windows Installer: use the correct name for the Galician wxstd translation file 2014-11-30 19:56:17 +01:00
line0 83759ec463 Windows Installer: include missing modules
(ffi, lfs, argcheck)
2014-11-30 19:45:15 +01:00
Lasse Liehu f1c177842a Update Finnish translation
Closes #1837.
2014-11-30 09:41:18 -08:00
Thomas Goyne b2a69c693d Update README to no longer say that Update 3 is unsupported 2014-11-23 16:33:03 -08:00
Thomas Goyne 7833b1bcbc Merge pull request #23 from khaledhosny/C2797
Fix build with latest Visual Studio
2014-11-23 16:31:50 -08:00
Khaled Hosny d4057418da Fix build with latest Visual Studio
This fiixes:

error C2797: list initialization inside member initializer list or
non-static data member initializer is not implemented

http://msdn.microsoft.com/en-us/library/dn793970.aspx
2014-11-23 15:30:27 +02:00
Thomas Goyne a9208a592b Update the selection and scroll position after opening subtitles from video 2014-11-22 13:27:06 -08:00
Thomas Goyne 1a4634003f Fix crash on a certain kind of malformed shift times history file 2014-11-22 13:21:58 -08:00
Yuri c2a6c168fb Update Hungarian translation
Closes #1836.
2014-11-22 13:04:02 -08:00
Thomas Goyne 2e7d70edf3 Merge pull request #22 from lachs0r/master
Fix crash in block cache aging
2014-11-11 21:32:46 -08:00
Martin Herkt cf55299017 Fix crash in block cache aging
Bug introduced in e2a11f2d90
2014-11-12 06:21:53 +01:00
Thomas Goyne ea9ee7effa Merge pull request #21 from dwbuiten/srtgoto2
srt: Factor out last goto
2014-11-08 07:59:46 -08:00
Derek Buitenhuis c871aaf153 srt: Factor out last goto
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-11-05 13:56:53 +00:00
Thomas Goyne 3d228536f5 Only update the YCbCr Matrix when resampling if it was actually changed 2014-10-12 15:45:13 -07:00
kotobenko 16a3f38f6d Improve the Ukrainian translation. Closes #1828. 2014-10-12 15:28:53 -07:00
Thomas Goyne ed03cd9735 Fix compilation without fftw3 2014-10-12 15:23:58 -07:00
torque bf1f2ca5c7 Re-rasterize OS X bundle icon.
Rasterized using Inkscape. Fixes the incorrectly blended white fringes
the old icon had at all resolutions below 512x512.

Also includes retina-sized images.
2014-10-12 15:19:56 -07:00
Thomas Goyne 9cd3be4166 Improve the build instructions a bit 2014-09-21 08:23:41 -07:00
Thomas Goyne 66c9872563 Update some out-of-date bits of the README 2014-09-21 08:05:42 -07:00
Thomas Goyne c41e97cec1 Skip the [Aegisub Project Garbage] and [Aegisub Extradata] sections when exporting to ASS 2014-09-20 11:52:44 -07:00
Thomas Goyne 57d66be785 Fix skipping trailing empty segments in re.split 2014-09-20 08:13:49 -07:00
Thomas Goyne 9e6d5d7d9c Optimize Extradata handling a bit 2014-09-06 09:47:29 -07:00
Thomas Goyne 8567d9a573 Use more make_unqiue 2014-08-31 08:11:12 -07:00
Thomas Goyne 9ebb8d7df1 Silence a warning 2014-08-31 08:11:12 -07:00
Thomas Goyne e4368d59e4 Fix loading subtitles extradata from matroska files 2014-08-30 08:11:39 -07:00
Thomas Goyne 158288b66d Merge pull request #19 from darealshinji/patch-1
fix permissions in INSTALL_FLAGS
2014-08-26 14:56:44 -07:00
darealshinji c7dc8664de fix permissions in INSTALL_FLAGS 2014-08-26 08:30:42 +02:00
Thomas Goyne 54a7d43cf1 Use EnumFontFamiliesEx to try to find the correct match when fontconfig gives several options
Fixes collection of ITC Cheltenham, ITC Tiffany, Zurich, Delicious,
Jacoby, Segoe WP, Agilita LT, and a bunch of dumb improperly modified
fonts I have lying around.

Closes #1806.
2014-08-24 16:53:59 -07:00
Thomas Goyne 580386b229 Use FcFontSetSort rather than FcFontSetMatch
For whatever reason FcFontSetMatch sometimes returns something other
than the first result of FcFontSetSort, and every time they different
either FcFontSetMatch is wrong or they're both wrong.

Fixes collection of Adobe Jenson Pro and Arno Pro.
2014-08-24 16:53:54 -07:00
Thomas Goyne 375117c35c Merge pull request #18 from torque/extradata-dedup
Perform extradata deduplication on add.
2014-08-24 16:53:23 -07:00
torque 3c12fc69f3 Perform extradata deduplication on add.
Checks all existing extradata keys and values to ensure that the set
that is being added doesn't already exist.
2014-08-24 12:06:22 -07:00
Thomas Goyne d7fe7e3580 Make SubsController ensure files are non-empty on commit
There have been a bunch of recurring problems with things not handling
zero dialogue lines or zero styles very well, so add one to the file on
commit if needed.

Closes #1814.
2014-08-24 08:02:43 -07:00
Thomas Goyne 9ec4059096 Handle json parsing errors when loading shift times history
Closes #1802.
2014-08-24 07:42:57 -07:00
Thomas Goyne 6159f1587d Update wx
Removes the need for the RTL hacks in BaseGrid as the bugs have been
fixed properly in wx.
2014-08-23 15:56:32 -07:00
Thomas Goyne 416b9809c8 Update boost to 1.56
Closes #1818.
2014-08-16 14:01:58 -07:00
Oleksiy Prytchyn 4958bf3612 Add Ukrainian translation. Closes #1809. 2014-08-11 07:13:18 -07:00
Thomas Goyne 20470ea682 Actually register the SSA subtitle format 2014-08-10 06:52:58 -07:00
Thomas Goyne 5b47758539 Convert the clipboard module to the ffi 2014-07-28 15:52:37 -07:00
Thomas Goyne 97a19d4fe2 Shut up strdup "deprecation" warnings 2014-07-28 15:52:37 -07:00
Thomas Goyne e3c60514cd Add lua argument checker 2014-07-28 12:30:45 -07:00
Thomas Goyne 74a215f642 Convert the re module over to the LuaJIT ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne a01a84fb4f Extract some common ffi API stuff 2014-07-28 12:30:44 -07:00
Thomas Goyne 0cf35894e1 Convert the lfs module to using the ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne 4f08afd808 Convert the unicode lua module over to using the ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne cf252fa91a Add simple type -> type name string compile time reflection stuff
This is needed for passing types to the LuaJIT ffi.
2014-07-28 12:30:44 -07:00
Thomas Goyne 77ecff1cba Eliminate a pointless multimap in the cache cleaner 2014-07-28 12:09:48 -07:00
Thomas Goyne 51b92390b6 Fix a bunch of float <-> double conversion warnings 2014-07-28 12:09:48 -07:00
Thomas Goyne ec407bbd7f Don't use std::min/max in mid()
VC++'s optimizer completely falls down on it for whatever reason.
2014-07-28 12:09:48 -07:00
Thomas Goyne 24b8db522a Remove unused things in block_cache.h 2014-07-28 12:09:47 -07:00
Thomas Goyne e2a11f2d90 Speed up aging the block cache
Keep track of the total size rather than recalculating it every time as
calculating the size actually takes while.
2014-07-28 12:09:47 -07:00
Thomas Goyne 641f1e2e81 Simplify AudioSpectrumCacheBlockFactory a little 2014-07-28 12:09:47 -07:00
Thomas Goyne 7a3110015e Change AudioDisplay::style_ranges to a vector
This is faster in all cases except for repainting a very small part of
the display with a very large number of range transitions and simplifies
the code a bit.
2014-07-28 12:09:47 -07:00
djcj f81736d461 update config.guess and config.sub 2014-07-28 12:08:23 -07:00
djcj 4c09f696d1 add '(Language)' after translated labels as suggested on the forums: http://forum.aegisub.org/viewtopic.php?f=5&t=66925#p91569 2014-07-28 12:08:23 -07:00
Thomas Goyne c9e4cea8ad Fix handling for automation debug formatting errors
One spot was missed when converting stuff over to using error_Tag rather
than lua_error for stack unwinding on errors.
2014-07-26 20:38:56 -07:00
Thomas Goyne eb0cf90433 Ensure the lua state gets closed when running tests
This is required for the gc metamethods to actually get run.
2014-07-23 15:29:55 -07:00
Thomas Goyne de686bdb6f Remove the automation thread priority stuff
It hasn't actually been used for anything for a while, and if a single
normal-priority thread can make your system unresponsive it's time to
upgrade to an OS that's isn't garbage.
2014-07-23 15:29:55 -07:00
Thomas Goyne 0cc941e559 Use wx events for invoking on the main thread on OS X
Dispatching to the main queue with GCD does not work when there is a
modal dialog active.
2014-07-23 15:29:55 -07:00
Thomas Goyne e675cf10da Don't version the executable on Linux
Release branches will continue to use versioned file names, but that
doesn't really make much sense for builds from master.
2014-07-23 15:29:54 -07:00
Thomas Goyne d61a9664c6 Write a BOM at the beginning of subtitles to make unpatched VSFilter happy
Closes #1795.
2014-07-23 15:29:54 -07:00
Thomas Goyne 45b5637e35 Update ffms2 2014-07-23 15:05:58 -07:00
Thomas Goyne d311da75e0 Change LuaJIT's deployment target back to 10.4
Targetting 10.7 makes the error handler segfault, and targetting 10.4
appears to work fine.
2014-07-23 14:53:48 -07:00
Thomas Goyne 97b5163874 Patch os module methods to add Unicode support on Windows 2014-07-15 14:32:54 -07:00
Thomas Goyne 68b824c8ca Patch io.open and io.popen to support Unicode filenames on Windows 2014-07-15 14:32:54 -07:00
Thomas Goyne 584284aa79 Reject vfr timecodes which are all identical 2014-07-15 09:11:40 -07:00
Xabier Aramendi 1835d5e2d8 Update Basque translation
Closes #1791.
2014-07-15 07:15:10 -07:00
Thomas Goyne 897f9d1254 Eliminate some warnings 2014-07-14 10:10:22 -07:00
Thomas Goyne 771525ae6f Make AssFixStylesFilter usable statically
Trivially speeds up ProcFrame as constructing export filters isn't free
due to that it has to look up the translatable strings.
2014-07-14 10:10:22 -07:00
Thomas Goyne 97c59e2630 Fix non-pch compilation 2014-07-14 10:10:22 -07:00
Thomas Goyne 92b8b2851b Don't build the dialogue lexer on every use
Building the lexer takes much longer than actually lexing, and since the
lexer is stateless there's no reason not to just make it static.
2014-07-14 10:10:22 -07:00
Thomas Goyne 706a72d5c1 Eliminate several memory allocations per line when reading thesaurus files 2014-07-14 10:10:21 -07:00
Thomas Goyne 88a089721b Merge pull request #7 from darealshinji/master
Fix compilation with PortAudio enabled
2014-07-12 07:23:57 -07:00
darealshinji 3c772dd649 fix Linux build 2014-07-12 01:31:26 +02:00
Thomas Goyne a9019421f1 Fix memory leak in aegisub.text_extents on Windows
The old object returned by SelectObject has to be made active again
before the DC is destroyed or it doesn't get deleted.
2014-07-11 09:26:59 -07:00
Thomas Goyne 06367d5cd9 Don't convert encoding names to lowercase when writing files
Not only is it unnecessary, but it actively breaks the mapping of
user-friendly encoding names in the Export dialog to the real encoding
names.

Closes #1789.
2014-07-11 09:26:59 -07:00
Thomas Goyne 548fbd814b Fix a use-after-free when a SubsEditCtrl is destroyed while the thesaurus is loading 2014-07-11 09:26:58 -07:00
Thomas Goyne 4dc38447dc Check the return value from lua_open()
It always fails when running under valgrind because valgrind does not
implement mmap functionality that LuaJIT requires.
2014-07-11 09:26:58 -07:00
Thomas Goyne bffbae0ed9 Fix vc++ compilation 2014-07-10 12:55:38 -07:00
Thomas Goyne bf03904fb8 Change the default ffms audio error handling mode to ignore
Truncating the file at the first decoding error seems to cause a lot of
confusion, especially since the UI doesn't mention that it happened
anywhere.
2014-07-10 11:44:57 -07:00
Thomas Goyne 2df4c4c194 Use wxDCFontChanger correctly
Fixes the audio display timeline font changing based on what else is
being painted.
2014-07-10 11:44:56 -07:00
Thomas Goyne a5c2ef273f Add tests for floating point sample conversion 2014-07-10 11:44:56 -07:00
Thomas Goyne 63de3232f7 Add test for channel downmixing 2014-07-10 11:44:56 -07:00
Thomas Goyne f32bdff84a Add tests for the sample doubling converter and make it work correctly 2014-07-10 11:44:56 -07:00
Thomas Goyne 93ad15efb1 Reuse the decoding buffer in the audio converters 2014-07-10 11:44:56 -07:00
Thomas Goyne b9c75d8706 Add tests for the audio bitdepth conversions
And fix some bugs in it, and make it not rely on undefined behavior.
2014-07-10 11:44:56 -07:00
Thomas Goyne 585e9489d9 Move some of the audio provider machinery to libaegisub
And add tests.
2014-07-10 11:44:56 -07:00
Thomas Goyne e942a7f0f7 Fix int overflow when saving audio clips 2014-07-08 16:38:33 -07:00
Thomas Goyne e713f741a4 Make some functions static 2014-07-08 16:38:16 -07:00
Thomas Goyne e60197962a Fix buffer overflow when getting text extents
lfFaceName needs to be null-terminated, so only copy up to 31 characters
into the buffer.
2014-07-08 09:23:19 -07:00
Thomas Goyne 8a5b4ae3a3 Fix keycode mapping for backspace, enter, tab and escape 2014-07-08 09:23:19 -07:00
Thomas Goyne a58ed7343d Add Aegisub's include dirs before the system ones rather than after 2014-07-07 09:42:02 -07:00
Thomas Goyne a11da3350c Save a backup copy of the old hotkey file if migrating from the old format 2014-07-07 09:42:02 -07:00
Thomas Goyne 365c04333c Install the unicode-compatible Lua module loader before loading moonscript
Closes #1760.
2014-07-07 09:23:36 -07:00
Thomas Goyne 6c0752035c Slightly optimize AssDialogue serialization 2014-07-07 08:40:38 -07:00
doplank 3844a1cb80 Update Indonesian translation 2014-07-07 08:40:38 -07:00
Thomas Goyne 5a14b36389 Remove unused test util functions 2014-07-06 19:25:49 -07:00
Thomas Goyne 935c6bc3a7 Store hotkeys in a less dumb format 2014-07-06 19:25:49 -07:00
Thomas Goyne 033baed930 Add simple tests for agi::Split 2014-07-06 19:25:49 -07:00
Thomas Goyne 2757ebd94f Add character counter tests 2014-07-06 19:25:49 -07:00
Thomas Goyne 3b34ed9a77 Move AssTime to libaegisub and add tests 2014-07-06 19:25:49 -07:00
Thomas Goyne ba0e544d70 Swallow spam from coveralls submission 2014-07-06 19:25:49 -07:00
Thomas Goyne 8c7fd37aa9 Clean up the SRT reader/writer a bit 2014-07-06 19:25:49 -07:00
Thomas Goyne 8576c4993f Fix SRT timestamp parsing 2014-07-06 19:25:48 -07:00
Thomas Goyne dd70da35d4 Remove some cruft from the fonts collector 2014-07-06 19:25:48 -07:00
Thomas Goyne e924db1fda Store open dialogs in an unsorted vector
Even if every dialog in the program was open at once, linearly searching
a vector is quite fast enough.
2014-07-06 19:25:48 -07:00
Thomas Goyne f0f836c47b Eliminate a pointless std::map in charset_conv 2014-07-06 19:25:48 -07:00
Thomas Goyne a22dd0f9ca Clean up the json parser a little 2014-07-06 19:25:48 -07:00
Thomas Goyne d9016cc8ea Debloat and slightly speed up the MRU code 2014-07-06 19:25:48 -07:00
Thomas Goyne 518342b919 Make the hotkey code a bit less bloated 2014-07-06 19:25:48 -07:00
Thomas Goyne c0c05e982a Support passing a test filter to make test 2014-07-04 21:14:29 -07:00
Thomas Goyne 7cafee39fc Exclude the Windows-specific files from coveralls 2014-07-04 20:37:36 -07:00
Thomas Goyne df8ad34838 Eliminate pointless runtime datastructures for CalltipProvider
And add some tests and make it actually work correctly.
2014-07-04 20:37:36 -07:00
Thomas Goyne 93522e30a8 Use a static table of tokens for agi::Path
The set of possible tokens is fixed, so using std::map is a bunch of
pointless overhead (that turns out to not even really simplify the
code).
2014-07-04 20:37:36 -07:00
Thomas Goyne 6fab17d860 Add basic tests for lfs 2014-07-04 10:52:38 -07:00
Thomas Goyne 9befa29707 Don't exclude tests dir from coverage information 2014-07-04 08:45:05 -07:00
Thomas Goyne 830b54ec69 Build in debug mode on travis 2014-07-04 08:41:57 -07:00
Thomas Goyne 7dc8dd6075 Install moonscript for busted on travis 2014-07-04 08:41:57 -07:00
Thomas Goyne 771ce976cc Use the boost 1.55 tarball on travis since cloning the repo takes forever 2014-07-04 07:51:56 -07:00
Thomas Goyne 5d92024201 Exclude more stuff from coveralls to cut down on noise 2014-07-04 07:21:55 -07:00
Thomas Goyne 6ce9ce1546 Remove unused helper function 2014-07-03 10:57:53 -07:00
Thomas Goyne 2f0ddb4f32 Improve the line_iterator tests 2014-07-03 10:57:53 -07:00
Thomas Goyne 14969ec2ea Submit code coverage information to Coveralls 2014-07-03 10:57:53 -07:00
Thomas Goyne d56868e820 Fiddle with the dependency info for libresrc to hopefully work better 2014-07-02 18:20:11 -07:00
Thomas Goyne 3832f700c5 Eliminate race condition in fs::Touch test 2014-07-02 18:20:11 -07:00
Thomas Goyne 92958a874b Add travis CI support 2014-07-02 18:20:11 -07:00
Thomas Goyne 3ddafcd34a Disable iconv tests that require on libiconv functionality when not using libiconv 2014-07-02 18:20:10 -07:00
Thomas Goyne c804042978 Fix test compilation with gcc 2014-07-02 18:20:10 -07:00
Thomas Goyne c5bffa9352 Fix failing path test on Linux 2014-07-02 18:20:10 -07:00
Thomas Goyne 1c94439909 Support running setup.sh out-of-tree 2014-07-02 10:55:19 -07:00
Thomas Goyne a084f02a2d Fix a case where the found text would not be selected with find/replace
SubsTextEditCtrl::SetTextTo needs to update the selection via the text
selection controller or the text selection controller will have an
outdated cached state until the UpdateUI event is processed, which
soemtimes resulted in it not actually setting the selection when it
needed to be.
2014-07-01 20:16:17 -07:00
Thomas Goyne abcd2bd61b Modernize the EBU STL writer a bit 2014-07-01 20:16:17 -07:00
电脑迷 ce503a1fb5 Update Chinese translations. Closes #1779. 2014-07-01 12:25:36 -07:00
Thomas Goyne 97a7b74dea Update fontconfig 2014-07-01 12:25:36 -07:00
Thomas Goyne 0f42155ca2 Make all of the syntax highlighter colors customizable
Closes #1782.
2014-07-01 12:25:22 -07:00
Thomas Goyne 71b74a6e86 Remove -D__STDC_FORMAT_MACROS from CXXFLAGS
The inttypes defines are no longer used anywhere due to that agi::Format
doesn't require them.
2014-07-01 12:22:39 -07:00
Thomas Goyne c1a7ba0009 Merge pull request #13 from dwbuiten/goto1
srt: Factor out a goto statement
2014-06-30 13:08:14 -07:00
Derek Buitenhuis 14f9814bba srt: Factor out a goto statement
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-06-30 17:05:30 +01:00
Thomas Goyne e1d56f9294 Update all selected lines when dragging the origin in the rotate tools 2014-06-29 11:42:55 -07:00
Thomas Goyne 5989226422 Fix crash when loading video from drag&drop is cancelled 2014-06-29 11:42:46 -07:00
Thomas Goyne a38793497f Drop support for the DirectX SDK and require the Windows 8 SDK for DirectSound 2014-06-29 10:45:27 -07:00
Thomas Goyne e53b2dab6b Eliminate a string copy for @ fonts in the fonts collector 2014-06-29 10:45:27 -07:00
Thomas Goyne c50d80cf24 Fix enabling/disabling the default script resolution edit boxes in the preferences dialog 2014-06-29 10:45:26 -07:00
Thomas Goyne 3ef728405d Add -DBOOST_SYSTEM_NO_DEPRECATED to Boost's CPPFLAGS 2014-06-29 10:45:26 -07:00
Thomas Goyne dbf144812b Fix failing path tests on OS X 2014-06-29 10:45:26 -07:00
Thomas Goyne 4c88449e4c Make UnknownElement moveable and not copyable
And remove the unused comparison functionality.
2014-06-29 10:45:26 -07:00
Thomas Goyne 4c0e578eda Rewrite the remaining bits of json::Writer 2014-06-29 10:45:26 -07:00
Thomas Goyne bc410a99f6 Change the in-memory storage of options to a sorted vector 2014-06-29 10:01:00 -07:00
Thomas Goyne 13fe4fe9ff Actually load the platform config rather than the default config twice 2014-06-28 19:49:39 -07:00
Thomas Goyne c9608ab610 Remove an exception not used for anything useful 2014-06-28 19:49:39 -07:00
Thomas Goyne b7a8dea753 Remove a pointless static bool 2014-06-28 19:49:39 -07:00
Thomas Goyne 6fec035958 Regenerate aegisub.pot 2014-06-27 11:20:04 -07:00
Thomas Goyne 481f9e42a7 Fix the path to the desktop file in make_pot.sh 2014-06-27 11:20:03 -07:00
Thomas Goyne dab67c6267 Enable the Apply button in the preferences dialog after a color is changed 2014-06-27 11:15:48 -07:00
Thomas Goyne 4accc988b3 Make the main edit box's background color customizable
Closes #1042.
Closes Aegisub/Aegisub#12.
2014-06-27 11:15:48 -07:00
Thomas Goyne ce629c2393 Add the help page for the resolution mismatch dialog 2014-06-27 11:15:48 -07:00
Thomas Goyne 6e40f4f920 Don't automatically select all control handle in the vector clip tool
This was originally done because there was no easy way to select them
all otherwise, but box selection of handles has been supported for a
while now.
2014-06-26 17:24:54 -07:00
Thomas Goyne e48e8cef84 Load files dropped on the window asynchronously 2014-06-26 17:24:54 -07:00
Thomas Goyne 6a3a401f57 Update fontconfig 2014-06-26 16:50:54 -07:00
Thomas Goyne b8f20dfe49 Add a custom stream IO implementation for Freetype
Freetype expects its IO to perform like mmap (i.e. seeking to be free),
but the non-unix implementation uses fseek and fread. This
implementation simply reads the entire file into a buffer, as fonts
generally aren't very big.

Cuts the time to recreate the fontconfig cache on my machine by about
60%.
2014-06-26 16:50:54 -07:00
Thomas Goyne 99cf941edd Trim a bit more out of the ICU data files 2014-06-26 16:50:43 -07:00
Thomas Goyne 03443818f0 Pass UTF-8 paths to hunspell now that it supports them 2014-06-26 16:50:43 -07:00
Thomas Goyne 3c57dda9ac Update to hunspell 1.3.3 2014-06-26 16:50:43 -07:00
Thomas Goyne 41b08628bc Update ffms2 2014-06-24 13:14:21 -07:00
Thomas Goyne 5816af6c01 Disable RTTI for ffms2, hunspell, and universalchardet
They don't actually use it so it's just pointless bloat.
2014-06-24 13:14:21 -07:00
Thomas Goyne 69781f0a88 Enable compression for the 256x256 icon
Bumps 200KB off the executable.
2014-06-24 13:14:20 -07:00
Thomas Goyne 4861287332 Remove the in-repo copy of the fontconfig config files
And just copy them from the fontconfig installation being used.
2014-06-24 09:06:32 -07:00
Thomas Goyne 0153987e02 Eliminate warnings in lpeg 2014-06-24 09:06:32 -07:00
Thomas Goyne 6661c6a808 Fix use-after-frees when opening files from the MRU lists
Pass the paths to open by value to avoid ending up with a dangling
reference to a path stored in the MRU list which has been invalidated by
adding or removing items.

Closes #1777.
2014-06-23 16:40:43 -07:00
Thomas Goyne 4ce1283bbb Fix handling of thesaurus words with only a single suggestion
When there's only one suggestion for a given word the part of speech
appears in the suggested replacement, which needs to be stripped.

Closes #1776.
2014-06-23 16:40:43 -07:00
Thomas Goyne 5ece2e534c Merge pull request #6 from darealshinji/patch-1
fix icons target dir on Linux
2014-06-21 16:23:16 -07:00
darealshinji 5496544984 fix icons target dir on Linux
The /usr/share/icons/hicolor/*x*/ directories contain only subfolders.
2014-06-21 17:05:42 +02:00
Thomas Goyne 961e6dab88 Select the last token when double-clicking past the end of the text in the edit box 2014-06-20 10:45:13 -07:00
Lasse Liehu 790d52b113 Update Finnish translation
Closes #1774.
2014-06-19 09:17:27 -07:00
Thomas Goyne 5f981e40f1 Add dependency on libresrc headers to all of the src objects 2014-06-17 20:48:59 -07:00
Thomas Goyne 68eaab0f43 Convert the build system to non-recursive make
Speeds up a no-op build from 500ms to 60ms and significantly improves
dependency tracking.
2014-06-17 11:37:20 -07:00
Thomas Goyne cb71a3d05d Fix saving audio clips
Actually write all of the samples rather than half of them.
2014-06-15 17:17:15 -07:00
Thomas Goyne 5f9fc95fb4 Always update the rendered subtitles for non-dialogue changes
Closes #1770.
2014-06-15 17:17:15 -07:00
Thomas Goyne 23f6addf35 Close the detached video dialog when video is closed 2014-06-15 17:17:15 -07:00
Thomas Goyne 7780fadfc6 Fix restarting the application after changing the UI language on OS X 2014-06-14 06:51:53 -07:00
Thomas Goyne ebb13d96ec Add the restart helper binary to the application bundle, not the source file 2014-06-14 06:51:53 -07:00
Thomas Goyne 62c28ce0d3 Avoid pointless repaints of the grid when seeking video
Keep track of which lines are displayed on the current video frame so
that video seeks only have to repaint the grid when the set actually
changes. Speeds up video playback on non-fbf stuff by ~15%.
2014-06-12 17:06:25 -07:00
Thomas Goyne 633fa0e4d7 Only repaint the video slider on seek if the thumb will actually move
Cuts CPU usage for playback in totally arbitrary circumstances by about
5%.
2014-06-12 17:06:25 -07:00
Thomas Goyne 4bdccb889c Reuse buffers for video frames
At least on OS X, allocating the buffers is one of the more expensive
parts of video playback, and on an arbitrary 720p H.264 file with simple
subtitles this cuts CPU usage while playing by about 30%.
2014-06-12 17:06:25 -07:00
Thomas Goyne a574d6ac67 Speed up AsyncVideoProvider::UpdateSubtitles a bit
Adding Row to AssDialogue removes the need to loop over the file to find
out what rows changed.
2014-06-12 17:06:25 -07:00
Thomas Goyne 2508dd9c6e Only scroll the grid to the active line if the row has actually changed
Makes it so that undo/redo only scrolls to the active line if it's
different in the two versions of the file.
2014-06-12 17:06:25 -07:00
Thomas Goyne f24a72d8fc De-wxString HelpButton 2014-06-11 12:52:30 -07:00
Thomas Goyne 8e36b69ef1 Update manual URL for 3.2 2014-06-11 12:52:30 -07:00
Thomas Goyne 87f99876c6 Eliminate some repeated iequals 2014-06-11 12:52:30 -07:00
Thomas Goyne 7de5fbac92 Eliminate all remaining places where strings are thrown as exceptions
Closes #916.
2014-06-11 12:52:30 -07:00
Thomas Goyne 789ff25f27 Remove some exceptions not used for much of anything 2014-06-11 12:52:30 -07:00
Thomas Goyne cfd2698b03 Use NSSpellChecker rather than hunspell on OS X
Main benefit is it removes the need to ship 50 MB of dictionaries.
2014-06-11 12:33:09 -07:00
Thomas Goyne 6500b379bd Remove all distfile stuff from the build system
It's unused and out of date.
2014-06-09 17:20:56 -07:00
Thomas Goyne 168cb8d7ef Move the desktop dir under the packages dir 2014-06-09 17:20:56 -07:00
Thomas Goyne b777cae2fe Fix crash on invalid extradata from automation 2014-06-09 17:20:56 -07:00
Thomas Goyne 831fbcd9a0 Fix crash when an extradata entry is used by more than one line 2014-06-09 17:20:56 -07:00
Thomas Goyne ac7161cd08 Revert 50dfa1cd42 for wxGTK
wxGTK has the opposite problem as OS X: GetValue returns the new value,
but the change event has the old value.
2014-06-08 08:00:11 -07:00
Thomas Goyne 056a775751 Set ?dictionary to the correct thing on OS X. Closes #1766. 2014-06-08 08:00:11 -07:00
Thomas Goyne 882e6894ff Use GCD on OS X rather than boost.asio for the thread pool 2014-06-07 08:48:40 -07:00
Thomas Goyne aae82f01e9 Set the margin controls in the style editor to the correct initial values 2014-06-07 08:48:40 -07:00
Thomas Goyne ce29d07113 Remove an entirely pointless GUI-thread-blocking call to GetFrame 2014-06-07 08:48:40 -07:00
Thomas Goyne f38ba33fed Eliminate some pointless rerenders of the video display
If the frame number hasn't changed and none of the currently visible
lines have changed, there's no need to rerender the subtitles and
redisplay the frame. Mostly helps with very slow opengl implementations
where actually painting the video display is expensive, as the rendering
is done on a background thread anyway.
2014-06-07 08:48:39 -07:00
Thomas Goyne 556d655c0b Update ffmpeg, ffms2, libass 2014-06-06 12:08:51 -07:00
Thomas Goyne 5e54a342e4 Fix the Select All button in the import styles dialog 2014-06-06 12:08:41 -07:00
Thomas Goyne ce358c1367 Move global_scripts to options.h
Not the perfect place for it by any means, but that's where the rest of
the application-global stuff is these days and it removed the need for
automation stuff to include main.h (and thus all the wxApp garbage).
2014-06-06 12:08:41 -07:00
Thomas Goyne 07cf50f7d3 Use non-deprecated wxIMPLEMENT_APP 2014-06-06 12:08:40 -07:00
Thomas Goyne 392c9ea35a Catch std::exceptions thrown during startup 2014-06-06 12:08:40 -07:00
Thomas Goyne 62d64e0949 Update wxWidgets 2014-06-05 12:03:56 -07:00
Thomas Goyne 5009e6f497 Add clang PGO files to .gitignore 2014-06-05 12:03:30 -07:00
Thomas Goyne 04efe2edfb Delete osx-run.sh
wxWidgets now supports running from outside application bundles, so it's
no longer needed.
2014-06-05 08:35:50 -07:00
Thomas Goyne 421d5ca52e Add #ifdef __cplusplus to the precompiled headers to make Xcode happy 2014-06-05 08:35:50 -07:00
Thomas Goyne 50dfa1cd42 Fix issues with selected line styles with the keyboard on OS X
Opening the style list dropdown and switching between values with the
arrow keys doesn't update the value returned from ctrl->GetValue() on
OS X, but the event contains the correct value so use that instread.
2014-06-05 08:35:50 -07:00
Thomas Goyne 238110e799 Set minimum widths for the columns of the hotkeys editor on OS X
The OS X implementation makes very poor choices for the default widths
if given the opportunity.
2014-06-05 06:33:03 -07:00
Thomas Goyne fffb138b81 Add IME support on OS X
Closes #1247, #1672, #1695.
2014-06-04 14:29:37 -07:00
Thomas Goyne acdc0e7cba Use less std::set 2014-06-04 14:15:27 -07:00
Thomas Goyne 9133293869 Use less std::bind 2014-06-04 14:15:27 -07:00
Thomas Goyne 745aa8fef0 Use less wxString in HotkeyDataViewModel 2014-06-04 14:15:26 -07:00
Thomas Goyne 970dd96959 Delete unused variable 2014-06-04 14:15:26 -07:00
Thomas Goyne 460b806038 Use non-deprecated wxFONT/wxPEN constants 2014-06-04 14:15:26 -07:00
Thomas Goyne d3484e7382 Get the end time of the last line in a less dumb way 2014-06-04 14:15:26 -07:00
Thomas Goyne f7532ff1ef Actually use the ?dictionary token. Closes #1761. 2014-06-04 14:15:26 -07:00
Thomas Goyne 47303007eb Remove the ?docs token
It's not actually used anywhere and not even set on Windows.
2014-06-04 14:15:26 -07:00
Thomas Goyne 0bf93ec263 Fix a bunch of crashes in the vector clip tool 2014-06-03 10:07:35 -07:00
Thomas Goyne 5fcb287ed0 Fix saving images with subtitles for frames other than the first 2014-06-03 07:21:07 -07:00
Thomas Goyne 4e5b81973b Set the initial audio volume when opening audio 2014-06-03 07:21:07 -07:00
Thomas Goyne e6d7c4547a Fix compilation of the portaudio player 2014-06-03 07:21:07 -07:00
Thomas Goyne b42086fdfd Use the customized default styles for SRT files opened from matroska 2014-06-02 13:02:06 -07:00
Thomas Goyne e061ac8755 Pull even more of the subs load logic into Project
The relative order of the on-file-load logic matters, so signals don't
work very well for it. Doing it all explicitly in Project fixes a bunch
of inconsistent issues related to restoring saved state.

Closes #1759.
2014-06-02 13:02:06 -07:00
Thomas Goyne 3bd6c302c3 Add a bunch of missing project references 2014-06-02 13:02:05 -07:00
Thomas Goyne 9f8a648017 Disable a bunch of ICU stuff we don't use
Bumps ~800KB off the executable (and 100MB off icu.lib).
2014-06-02 13:02:05 -07:00
Thomas Goyne 917913b0ef Flush the clipboard before closing it, not after 2014-06-02 13:02:05 -07:00
Thomas Goyne ff9beb850c Build wx without iostream support 2014-05-31 08:11:32 -07:00
Thomas Goyne 193b30af86 Eliminate a bunch of entirely pointless OptionPage subclasses 2014-05-31 08:11:32 -07:00
Thomas Goyne 76f0afecaf Eliminate pointless wxDialog subclasses
A lot of the wxDialog subclasses don't actually override any virtual
functions, so there's no particular need for them to be subclasses at
all, and wxDialog's vtable is so huge that they actually contribute
measureable to the size of the executable.
2014-05-31 08:11:32 -07:00
Thomas Goyne fb27c98ddd Update wxWidgets 2014-05-30 13:24:58 -07:00
Thomas Goyne 060536824b Kill ScintillaTextCtrl and just always use the UTF-8 methods
Trivially improves performance and reduces the opportunities for wxSTC
to fuck up.
2014-05-30 13:24:38 -07:00
Thomas Goyne e6b495dc1b Enable ffmpeg's png decoder 2014-05-30 13:24:38 -07:00
Thomas Goyne db3452bcde Disable decoders for dumb rarely-used formats which have huge data tables 2014-05-30 13:24:38 -07:00
Thomas Goyne fa68b5ee1a Fix compilation with UTF-8 wxString 2014-05-30 11:53:15 -07:00
Thomas Goyne eebd1dba21 Use iconv rather than std::wstring_convert
libstdc++ 4.8 does not have <codecvt>.
2014-05-30 11:53:15 -07:00
Thomas Goyne 59489b8f8c Extract some of the string formatter implementation to format.cpp 2014-05-30 11:53:15 -07:00
Thomas Goyne 37c02ae127 Replace wxString::Format with agi::format
It's modestly faster, significantly more type-safe, and doesn't assert
when there's too few arguments, which causes problems for plural forms.

Closes #1733.
2014-05-30 11:53:14 -07:00
Thomas Goyne 8d26c66d0f Remove a bunch of unused functionalty from agi::Exception 2014-05-30 11:53:14 -07:00
Thomas Goyne b43788fa7f Replace boost::format with agi::format
boost::format is slow to compile, slow to run, and has an unpleasant
interface.
2014-05-30 08:30:31 -07:00
Thomas Goyne 8ba286c544 Fix moving files to the front of the MRU list 2014-05-30 08:30:31 -07:00
Thomas Goyne 72748d45f7 Fix crash on v1 timecode files with zero override ranges 2014-05-30 08:30:31 -07:00
Thomas Goyne e75fc089d3 Don't error on truncated wave files 2014-05-27 06:42:47 -07:00
Thomas Goyne 59a680e6e1 Fix saving audio clips from lines 2014-05-27 06:42:46 -07:00
Thomas Goyne dfec6b73b7 Use free() on data returned by Hunspell, not delete 2014-05-27 06:42:46 -07:00
Thomas Goyne eec83bb32b Cut down on FileNotFound exceptions thrown on startup 2014-05-27 06:42:46 -07:00
Thomas Goyne d08f4e73b4 Only check for permissions if opening a file fails 2014-05-27 06:42:46 -07:00
Thomas Goyne ac5f40a543 Fix \N handling in EBU STL export 2014-05-27 06:42:46 -07:00
Thomas Goyne 02ca3360ca Handle missing recently used subtitle files better 2014-05-26 09:34:20 -07:00
Thomas Goyne 960dc3723b Don't get the duration from the audio controller on audio open
The audio controller's provider may not have been updated yet.
2014-05-26 09:34:20 -07:00
Thomas Goyne cca97a58f6 Fully initialize the video when it's opened via drag-and-drop 2014-05-26 09:34:20 -07:00
Thomas Goyne 4da1443194 Store connected slots in a vector rather than a map 2014-05-26 09:34:20 -07:00
Thomas Goyne 81b942ea6e Update agi_pre.h 2014-05-26 09:34:20 -07:00
Thomas Goyne 6c685daf98 Ditch boost.circular_buffer
It drags in a ton of crap, is kinda slow at runtime due to using
std::deque, and doesn't actually make the code much simpler than just
using a manual ring buffer.
2014-05-26 09:34:19 -07:00
Thomas Goyne 1f7c47239b Replace timeval junk with std::chrono 2014-05-26 09:34:19 -07:00
Thomas Goyne 650cfcb043 Remove a bunch of unused crap from lagi_pre.h 2014-05-26 09:34:19 -07:00
Thomas Goyne 50f2e550e2 Use std::thread with libc++
boost::thread is only used due to libstdc++ 4.8 missing a bunch of
stuff.
2014-05-26 09:34:19 -07:00
Thomas Goyne 6477ef933b Use std::to_string rather than boost::lexical_cast 2014-05-26 09:34:19 -07:00
Thomas Goyne 41297e5ace Remove non-spirit uses of boost.phoenix
The slightly more concise code is not worth the compilation speed hit.
2014-05-26 09:34:19 -07:00
Thomas Goyne fed99649e9 Cut down on pointless uses of std::list 2014-05-26 09:34:19 -07:00
Thomas Goyne c0d3ecb6c2 Change Spline to a std::vector 2014-05-26 09:34:18 -07:00
Thomas Goyne 8ec9280ecc Change most uses of deques to vectors 2014-05-26 09:34:18 -07:00
Thomas Goyne 20a7ec786f Use initializer lists rather than std::make_pair 2014-05-26 09:34:18 -07:00
Thomas Goyne 4f65f79f1e Remove some pointless std::moves 2014-05-26 09:34:18 -07:00
Thomas Goyne 4598a23485 Fix the paste over dialog 2014-05-24 07:41:17 -07:00
Thomas Goyne b370e1af53 Stop video playback when seeking due to switching active lines 2014-05-24 07:41:17 -07:00
Thomas Goyne d73790805a Fix reloading the video provider after settings changes 2014-05-24 07:41:16 -07:00
Thomas Goyne 9ca61a2fb5 Delete unused stuff in the pulseaudio player 2014-05-24 07:41:16 -07:00
Thomas Goyne 55865d131a Add a missing check for if the video has an audio track 2014-05-23 13:03:10 -07:00
Thomas Goyne 99b46f6a14 Fix restoring video position from saved project info 2014-05-23 13:03:10 -07:00
Thomas Goyne d004fc1856 Improve ALSA playback position reporting
Use std::chrono since it's a nicer API. Use a separate lock for playback
position so that the GUI thread isn't blocked for hundreds of ms while
snd_pcm_drain is waiting, and update the playback position after
decoding audio rather than before to avoid it being significantly wrong
when not using a cache.
2014-05-23 13:03:10 -07:00
Thomas Goyne e36ecbde49 Reuse a decoding buffer for ALSA rather than constantly allocating new ones 2014-05-23 13:03:10 -07:00
Thomas Goyne 1bf6197869 Use std::thread rather than pthreads for AlsaPlayer 2014-05-23 13:03:10 -07:00
Thomas Goyne c2b8892b33 Use unique_ptr in AlsaPlayer 2014-05-23 13:03:10 -07:00
Arslanoglou Georgios b9a683eeb2 Update Greek translation. Closes #1526. 2014-05-23 07:47:27 -07:00
Thomas Goyne 9a3f5ce905 Add a BOM to fragment_strings.iss
InnoSetup doesn't read it as UTF-8 without one.
2014-05-23 07:47:27 -07:00
Thomas Goyne 9d3067ae75 Return absolute paths for files in project_properties() 2014-05-23 07:28:26 -07:00
Thomas Goyne 384f87f399 Use more plural forms for translatable strings 2014-05-23 07:28:25 -07:00
Thomas Goyne 60fd44163e Don't clear project properties on undo/redo 2014-05-23 07:28:25 -07:00
Thomas Goyne 40ac2f9b44 Fix crash when opening video
If video was previously open and the user chooses to resample the script
for the new video, VideoController would try to update the subs for the
now-deleted old provider.
2014-05-23 07:28:25 -07:00
Thomas Goyne e2754bcd90 Make video providers report whether their file has audio tracks
Fixes errors when trying to automatically open audio from dummy video
and improves UX a little by disabling the Open Audio From Video menu
item when there are no audio tracks.
2014-05-23 07:28:25 -07:00
Thomas Goyne 692b354713 Don't compile the FFT code if FFTW is enabled 2014-05-23 07:28:25 -07:00
Thomas Goyne e0b8c21590 Use unique_ptr for AudioWaveformRenderer's decode buffer 2014-05-23 07:28:25 -07:00
Thomas Goyne 09e325a1c3 Clean up unused includes 2014-05-23 07:28:24 -07:00
Thomas Goyne df406d5452 Fix compilation with GCC 2014-05-22 14:58:39 -07:00
Thomas Goyne 2bf23af00a Remove a lot of pointless headers for dialogs
Most of the dialogs in Aegisub have a public interface consisting of a
single function, so there's really no need to expose the actual dialog
classes to the rest of the program. Add dialogs.h with the declarations
of all of those functions (most of which are just ShowFooDialog()), and
kill a million other headers.
2014-05-22 14:58:39 -07:00
Thomas Goyne 49357eec20 Add missing subs_controller.h include for release builds 2014-05-22 09:54:59 -07:00
Thomas Goyne 9ae9da4aab Support loading keyframes and timecodes files via drag-and-drop
Closes #1749.
2014-05-22 09:29:16 -07:00
Thomas Goyne de2e1e23de List the files to be (un)loaded in the Load/Unload files dialog
Updates #880.
2014-05-22 09:29:16 -07:00
Thomas Goyne aa21b3d77d Add aegisub.project_properties()
Returns a table with all of the project metadata junk that used to be in
the script info section of the file.

Closes #1747.
2014-05-22 09:29:16 -07:00
Thomas Goyne 6a8958f287 Delete the Clean Script Info macro
It doesn't actually do anything anymore.
2014-05-22 09:29:15 -07:00
Thomas Goyne 9c7119fdc2 Redesign how project metadata is stored in the file
Remove it from the script info section and put it in its own section
that isn't tracked by undo and make it not stringly typed. Removes the
need for the gross hack where changes are slipped in just before saving
to circumvent the undo system, cuts down on the uses of string literals
to identify fields, and probably improves performance a little.
2014-05-22 09:29:15 -07:00
Thomas Goyne 19e8f19e52 Redesign project file handling
Add a new Project class which is responsible for everything related to
opening and closing audio, video, subtitles, timecodes and keyframes.
This pulls almost everything not directly related to playing audio/video
out of the audio and video controllers, pulls more crap out of
FrameMain, and happens to make things a little simpler in the process.
2014-05-22 09:29:12 -07:00
Thomas Goyne a345b8c4d5 Undelete the script resolution mismatch option from default_config 2014-05-22 06:14:59 -07:00
Thomas Goyne deaf833605 Preserve alpha when resampling style colors 2014-05-22 06:14:56 -07:00
Thomas Goyne 5830fc4225 Don't limit CodecPrivate to 256KB 2014-05-20 09:46:58 -07:00
Thomas Goyne f522d4df8a Update ffms2 2014-05-20 09:46:58 -07:00
Thomas Goyne 5f4d6ad386 Return zero bytes when MatroskaFile asks for data past the end of the file 2014-05-20 09:46:57 -07:00
Thomas Goyne 53f02d33a6 Fix a bunch of warnings when building with gcc on linux 2014-05-20 09:46:57 -07:00
Thomas Goyne 291437eed6 Handle ftruncate failures 2014-05-20 09:46:57 -07:00
Thomas Goyne c2455cccb6 Enable loading audio when opening video by default
Main reason not to do this was that loading audio blocked the UI, which
has now been fixed, and having to separately load audio confuses
beginners.
2014-05-20 09:46:57 -07:00
Daniel Mota 6b8c1ff2b2 Update pt_PT.po 2014-05-19 19:35:34 -07:00
Thomas Goyne 7645b447be Set the correct variable for whether to commit subs after opening video 2014-05-19 19:32:25 -07:00
Thomas Goyne 6edb38501b Update the YCbCr matrix used by the video display when the header is changed 2014-05-19 19:32:25 -07:00
Thomas Goyne ad33fdb109 Add color matrix conversion to the resolution resampler 2014-05-19 19:32:25 -07:00
Thomas Goyne 7a06e08ad0 Use ycbcr_converter in YUV4MPEGVideoProvider 2014-05-19 19:32:25 -07:00
Thomas Goyne cddefd8ed9 Add RGB <-> YCbCr conversion stuff to libaegisub 2014-05-19 19:32:25 -07:00
Thomas Goyne 9774352a77 Fix compilation with gcc 4.8. Closes #1756. 2014-05-19 06:53:44 -07:00
Thomas Goyne a376ed90b9 Insert \\N on shift-enter in the edit box 2014-05-18 07:50:23 -07:00
Thomas Goyne 2cf35b5043 Force-enable native TLS in wxWidgets
It is off by default on Windows due to that it breaks if a wx-using
library is loaded with LoadLibrary on XP, but that is not a use-case we
care about.
2014-05-17 18:32:04 -07:00
Thomas Goyne 402aa509a0 Fix non-pch compilation 2014-05-17 18:01:41 -07:00
Thomas Goyne d0ce26d7df Add an option to resample the script to the resolution mismatch dialog
Closes #1382.
2014-05-17 18:01:41 -07:00
Thomas Goyne 32fae528b0 Don't try to shift line margins that are 0 2014-05-17 18:01:41 -07:00
Thomas Goyne c78db67cba Round negative drawing coordinates correctly 2014-05-17 18:01:41 -07:00
Thomas Goyne 229b6cf63d Fix resampling drawings with AR changes
The shift from margins should be applied only to the line's position,
not to each point in the drawing, and the scale needs to compensate for
that the scale on the style is being changed as well.
2014-05-17 18:01:41 -07:00
Thomas Goyne 0f030c45f3 Make AR-changing resampling more user-friendly
Add modes where the borders to add or remove are automatically
calculated rather than forcing the user to do it manually, and hopefully
make it a bit clearer what exactly will happen.
2014-05-17 18:01:41 -07:00
Thomas Goyne 7e2780f57a Make both source and destination resolution overridable in the resampler 2014-05-17 18:01:40 -07:00
Thomas Goyne 6886436ddc Add YCbCr Matrix to the script properties dialog 2014-05-17 18:01:40 -07:00
电脑迷 207a78fa1e Update Chinese translations. Closes #1755. 2014-05-17 18:01:40 -07:00
Thomas Goyne d5ff5eaf5f Update fontconfig 2014-05-17 18:01:40 -07:00
Thomas Goyne 26cfd3ecbd Add missing check for if the context has been initialized in the crash handler 2014-05-15 12:07:46 -07:00
Thomas Goyne 796f26c008 Ask whether to check for updates in the installer
Gets rid of the last annoying modal dialog on first startup.
2014-05-15 12:07:46 -07:00
Thomas Goyne 1049b2d140 Make the "Create a start menu icon" string translatable 2014-05-15 11:09:42 -07:00
Thomas Goyne 79fd39d6ca Default to the language selected in the installer 2014-05-15 11:09:38 -07:00
Thomas Goyne 79c2634f2b Regenerate aegisub.pot 2014-05-15 10:09:32 -07:00
Thomas Goyne d741c55725 Extract installer strings for translation 2014-05-15 10:09:32 -07:00
Thomas Goyne 0a1660c03b Add version information to the windows executable
Closes #913.
2014-05-15 08:39:09 -07:00
Thomas Goyne 8a49cf1c34 Shove simple getters in AudioTimingControllerDialogue into the class declaration 2014-05-15 07:44:13 -07:00
Thomas Goyne 6f36c75cfd Fix snapping audio markers to markers from other selected lines 2014-05-15 07:31:33 -07:00
Thomas Goyne e593843da7 Significantly speed up marker snapping with large selections 2014-05-14 12:48:59 -07:00
Thomas Goyne fc662e0278 Use INT_MIN as the invalid click position sentinel rather than -1 2014-05-14 12:13:40 -07:00
Thomas Goyne c13b026598 Snap based on all markers being dragged rather than just the mouse position 2014-05-14 12:04:19 -07:00
Thomas Goyne 9168484fc6 Allow clicking anywhere in the audio display for alt-dragging 2014-05-14 08:37:03 -07:00
Thomas Goyne 48acd4aa13 Install libpng headers 2014-05-13 15:35:00 -07:00
Thomas Goyne fff59982f4 Clear the clicked marker on right click 2014-05-13 12:44:28 -07:00
Thomas Goyne b7b2ea2d61 Skip building wx files that don't actually define anything 2014-05-13 11:51:22 -07:00
Thomas Goyne 66ba65774a Add custom build system for wxWidgets 2014-05-13 11:02:46 -07:00
Thomas Goyne 843412beb0 Install headers before compiling rather than after 2014-05-13 09:24:40 -07:00
Thomas Goyne 95eb603f8d Link against zlib.lib rather than wxzlib.lib 2014-05-12 17:42:26 -07:00
Thomas Goyne a0efd18f96 Use wx's vendored copy of zlib rather than having a second copy in a submodule 2014-05-12 17:42:26 -07:00
Thomas Goyne 1651446e0f Drag the entire audio selection when Alt is held down
Closes #691.
2014-05-12 12:07:46 -07:00
Thomas Goyne 5da847e1ef Use more NSDMIs 2014-05-12 10:05:36 -07:00
Thomas Goyne 562a2259f5 Check for uses of styles other than "Default" in CanSave rather than customized styles
Customizable default styles makes the latter check awkward to implement,
and the previous logic of comparing against the hardcoded default wrong.
2014-05-12 08:34:28 -07:00
Thomas Goyne bc2f862909 Update wx 2014-05-12 08:04:53 -07:00
Thomas Goyne 164ad33753 Fix RTL painting of the subtitles grid
wx comes very close to just making it work automatically, but it doesn't
translate the origin to the top-right corner and wxBufferedPaintDC
doesn't handle RTL at all, so reimplement it with some hacks.

Closes #1354.
2014-05-12 08:04:24 -07:00
Thomas Goyne 0909d137b0 Mirror toolbar button images for RTL locales
Some of the toolbar buttons are seriously wrong when mirrored and there
doesn't seem to be a way to disable mirroring for the images while using
RTL layout for the toolbar itself, so double-mirror them so that they
end up with their original appearance.

Ideally the button images would be localizable as some of them actually
should be mirrored, but that's probably not worth the work involved.

See #1354.
2014-05-11 07:31:22 -07:00
Thomas Goyne 3d0e2baf4e Force the video display to LTR layout direction
Mirroring the video is not useful or desirable.

See #1354.
2014-05-11 06:59:59 -07:00
Thomas Goyne 645848d0c5 Fix test compilation on Windows 2014-05-10 08:19:59 -07:00
Thomas Goyne 8ff801a645 Update readme 2014-05-10 08:19:59 -07:00
Thomas Goyne 3db69b0a29 Add more missing project dependencies for working parallel builds 2014-05-10 08:19:59 -07:00
Thomas Goyne eb2793f88d Add msbuild build system for FFmpeg
This eliminates the need for a msys environment to build any part of
Aegisub. Also happens to make building FFmpeg much faster (~3 minutes
vs. ~10 minutes for me).
2014-05-10 08:19:59 -07:00
Thomas Goyne 3d8071df7f Update ffmpeg 2014-05-10 06:12:37 -07:00
Thomas Goyne 2c0568090c Add a custom build task for getting the git version info
Eliminates the need to have a copy of git accessible in the msys
build environment and reduces the dependency on msys to just FFmpeg.

Probably trivially faster due to how slow shell scripts are on Windows.
2014-05-10 06:12:37 -07:00
tophf 01dc7f9294 Only process selected lines in the Select Overlaps macro
And skip over commented lines as the description claimed it did already.

Closes #1751.
2014-05-09 10:25:13 -07:00
Thomas Goyne b96edfebcc Remove check for customized styles in SRTSubtitleFormat::CanSave
It doesn't work with customizable default styles.
2014-05-09 09:24:27 -07:00
Thomas Goyne 73d64870af Fix writing files as non-utf-8 2014-05-09 07:00:48 -07:00
Thomas Goyne 94a060a556 Add unicode case conversion functions to the automation module 2014-05-09 07:00:48 -07:00
Thomas Goyne eadf555da3 Pass exceptions in async workers back to the main thread 2014-05-09 07:00:48 -07:00
Thomas Goyne 74e995b915 Disable more wx stuff we don't use 2014-05-08 17:26:27 -07:00
Thomas Goyne 36d9a3c490 Add msbuild build system for fribidi
Thankfully the release tarball comes with pre-built versions of
the generated files.
2014-05-08 15:03:42 -07:00
Thomas Goyne 2e40f2b246 Switch to downloading a release tarball for fribidi 2014-05-08 14:41:38 -07:00
Thomas Goyne 135b61595c Add missing build dependencies on minilua 2014-05-08 13:13:45 -07:00
Thomas Goyne b2c210ffeb Delete old config file for ICU 2014-05-08 12:38:58 -07:00
Thomas Goyne b4d49511be Fix ignoring override blocks for CPS calculations 2014-05-08 12:34:04 -07:00
Thomas Goyne 679b96fdfe Add msbuild build system for ICU 2014-05-08 12:34:04 -07:00
Thomas Goyne d3a4bed994 Port respack to lua
Simplifies the build system a little by cutting down on the number of
helpers that need to be built.
2014-05-08 10:39:18 -07:00
Thomas Goyne 9f8a10b014 Strip a few more MB of unused stuff from ICU's data files 2014-05-07 15:57:48 -07:00
Thomas Goyne 571c9d9b7a Don't hardcode the size of buttons with translatable labels. Closes #1750. 2014-05-07 10:43:01 -07:00
Thomas Goyne 049142f6f6 Make the check for faux bold match libass's logic for when to embolden 2014-05-07 07:13:32 -07:00
Thomas Goyne 8e5d4c48bc Print usage information for faux bold/itatlic warnings 2014-05-07 06:51:35 -07:00
Thomas Goyne 26e7880c8b Fix compilation with non-16-bit wchar_t 2014-05-06 18:31:19 -07:00
Thomas Goyne 77a2c1bb16 Verify that we're actually using a UTF-8 locale and switch to en_US.UTF-8 if not
Should fix #1587 and #1675, but I was never able to reproduce either of
them so maybe not.
2014-05-06 18:16:36 -07:00
Thomas Goyne 432640c045 Use localized language names from ICU rather than English names 2014-05-06 17:32:10 -07:00
Thomas Goyne 86ebd15ffb Update to ICU 53.1 2014-05-06 17:20:13 -07:00
Thomas Goyne 32f5e00bf8 Eliminate a pointless check 2014-05-06 10:32:19 -07:00
Thomas Goyne 50d0744e9c Skip prompting the user for a language on first start if we have a translation for their OS UI language 2014-05-06 10:29:53 -07:00
Thomas Goyne 47b8627ad3 Keep the old subtitles file alive until the new one is fully announced
This fixes crashes from touching dangling references to lines in the old
subtitle file in the handlers for the various signals triggered when a
new file is opened.
2014-05-06 09:36:07 -07:00
Thomas Goyne ca1cf8d9e7 Set the version in the Windows installer automatically 2014-05-06 08:07:57 -07:00
Thomas Goyne ca86b0da33 Actually initialize the initial MatchState in the search replace engine 2014-05-05 18:52:16 -07:00
Thomas Goyne a00e5dc967 Update which style the Edit button edits when the line's style is changed 2014-05-05 18:42:06 -07:00
Thomas Goyne 2674c702d1 Silence incorrect warning 2014-05-05 17:53:14 -07:00
Thomas Goyne 75641141d6 Switch icon creation to additional tasks rather than components 2014-05-05 17:37:07 -07:00
Thomas Goyne 48250db656 Add all of the applicable translations to the installer 2014-05-05 16:51:22 -07:00
Thomas Goyne cfad8ea3d4 Add more old pdbs to the files for the installer to clean up 2014-05-05 16:06:37 -07:00
Thomas Goyne 7e2724c22c Add support for submenus in the automation menu
Split the menu text on /, with each segment before the last used as the
submenu name and the last as the actual menu text.

Closes #852.
2014-05-05 14:27:01 -07:00
Thomas Goyne c5608a4725 Add Comment field to the paste over dialog 2014-05-05 07:01:57 -07:00
Thomas Goyne 26a9e57006 Eliminate an extra commit when using the color picker buttons 2014-05-05 06:28:27 -07:00
Thomas Goyne f261688b11 Don't ignore the contents of override blocks when counting characters for selection preserving 2014-05-05 06:27:37 -07:00
Thomas Goyne 3983719e3f Add an Edit button next to the style list dropdown. Closes #1746. 2014-05-04 12:53:22 -07:00
Thomas Goyne 57f6e9a869 Actually serialize the styles for the subtitle renderers 2014-05-04 11:16:57 -07:00
Thomas Goyne 58603b51a8 Update libass 2014-05-04 10:15:57 -07:00
Niels Martin Hansen e1c575b7a1 MicroDVD import should also use default styles 2014-05-04 13:14:28 +02:00
Niels Martin Hansen 1dc2ae09a0 Forgot OSX default config in 6b827abec0 2014-05-04 13:07:25 +02:00
Niels Martin Hansen 82d7979f04 Pass style catalog names instead of file names to AssFile::LoadDefault 2014-05-04 13:04:48 +02:00
Niels Martin Hansen 79b6ce2583 Move style catalog indexing and naming logic 2014-05-04 13:03:04 +02:00
Niels Martin Hansen cdb6da4b2f Also ignore VS *.sdf lock files (*.opensdf) 2014-05-04 10:37:40 +02:00
Niels Martin Hansen 5a4920c48f Option to change parallel make options for gmake based VS projects
It seems that gmake can livelock in parallel make mode on Windows
in some cases. This provides an escape hatch for those cases.
2014-05-04 10:35:15 +02:00
Niels Martin Hansen 5bb4754e40 Option to disable HAALISOURCE when building FFMS2 on VS
Visual Studio Express does not supply ATL and can't build the Haali-
supplied code in FFMS2, so provide an escape hatch for that.
2014-05-04 09:56:37 +02:00
Thomas Goyne c30ca1a321 Remove progress throttling from ffms indexing 2014-05-03 17:22:38 -07:00
Thomas Goyne d9df9c9e5b Add dummy install target for LuaJit 2014-05-03 17:22:38 -07:00
Thomas Goyne d672e75109 Filter out redundant progress updates sooner
Sending events from background threads to the main thread is somewhat
expensive, so filter out progress updates which don't actually change
the progress on the background thread.
2014-05-03 17:22:38 -07:00
Thomas Goyne 6a1321e1df Move the serialization for the subtitles providers to SubtitlesProvider 2014-05-03 17:22:38 -07:00
Thomas Goyne b40370c93d Grab the copy of vsfilter for the installer from the bin dir 2014-05-03 16:45:32 -07:00
Niels Martin Hansen 451c6751de Preferences page for default style catalogs 2014-05-03 22:23:01 +02:00
Niels Martin Hansen 6b827abec0 Config options for default style catalogs for various formats 2014-05-03 21:08:37 +02:00
Niels Martin Hansen f45f73151e Copy styles from Default catalog to new files 2014-05-03 20:02:52 +02:00
Niels Martin Hansen 3260a5fa1a Update about box 3rd-party library credits 2014-05-03 02:14:12 +02:00
Niels Martin Hansen 94a6b72f1d Add user *.props files to gitignore 2014-05-03 01:15:19 +02:00
Niels Martin Hansen 143de0713b Remove whitespace in MSYS shell environment vars
It seems that whitespace around the paths in the PATH, LIB, INCLUDE env
vars can break in some situations, making the build fail entirely.
Unfortunately this also makes the file harder to read and diff.
2014-05-03 01:08:56 +02:00
Niels Martin Hansen 9c2f12a786 Clearer error messages when audio open fails
The existing chain of errors from all providers can be really confusing,
so instead try to interpret the exception type to add some meaning.
2014-05-03 01:05:09 +02:00
Thomas Goyne 81c72c5fe9 Install lua.hpp when building luajit 2014-05-02 13:16:43 -07:00
Thomas Goyne 2587625af4 Fix non-pch compilation 2014-05-01 13:48:46 -07:00
Thomas Goyne f7f6c2b90b Switch to using csri_open_mem 2014-05-01 13:39:35 -07:00
Thomas Goyne af20d31699 Push the dropping of non-visible lines into the serialization logic
Makes things way less gross and trivially faster.
2014-05-01 13:39:35 -07:00
Thomas Goyne 7a5c92aaee Speed up TextFileWriter a bit
Write the text and the newline separately rather than appending the
newline to the text to eliminate a copy of the text.
2014-05-01 13:39:35 -07:00
Thomas Goyne 4366ece827 Speed up passing subtitles to VSFilter a little
Use temp_file_mapping so that it normally never actually hits the disk
on Windows and use AssSubtitleFormat directly.
2014-04-30 06:29:37 -07:00
Thomas Goyne 1eba2f035c Add a separate SSA subtitle format and move all of the SSA writing stuff there 2014-04-30 06:29:37 -07:00
Thomas Goyne 31af9c575f Extract duplicated ASS writing code from libass provider 2014-04-30 06:29:37 -07:00
Thomas Goyne b24e2c33e0 Update URL for ffms2 2014-04-29 07:24:43 -07:00
Thomas Goyne eca8991dd8 Remove some pointless configure checks 2014-04-29 07:23:02 -07:00
Thomas Goyne a7db164bd3 Fix extra blank lines in configure output 2014-04-29 07:12:04 -07:00
Thomas Goyne 3a64d81c50 Decruftify and fix the boost configure checks 2014-04-28 18:37:43 -07:00
Thomas Goyne 431b096f51 Fix loading modules with UTF-8 BOMs
Ensure MoonScript gets loaded before we install our package loader to
avoid having its package loader used over ours.
2014-04-28 14:19:16 -07:00
Thomas Goyne 606e3f4882 Fix crash on script load errors 2014-04-28 13:36:56 -07:00
Thomas Goyne e3fa270345 Process any pending log text when a progress dialog completes 2014-04-28 11:01:57 -07:00
Thomas Goyne e5f935678e Build LuaJIT in Lua 5.2 mode on Windows as well 2014-04-28 10:58:55 -07:00
Thomas Goyne a5a6d5da86 Restore the BOM-skipping logic to the Lua script reader
And add BOM to one of the test files to verify it works.
2014-04-28 10:21:54 -07:00
Thomas Goyne 8aa3c8761c Unswap the actor and effect columns in the grid 2014-04-28 10:10:33 -07:00
Thomas Goyne 5be69dc7e8 Fix compilation of LuaJIT on x64 Windows 2014-04-28 09:13:09 -07:00
Thomas Goyne aa850688f4 Don't try to open compressed subtitle tracks
Actually supporting them would be even better of course, but at least
don't crash on them.
2014-04-28 08:43:25 -07:00
Thomas Goyne c74045cf20 Use spin controls for numeric fields in the style editor
Closes #1741.
2014-04-28 07:38:33 -07:00
Thomas Goyne 63f4bf1beb Switch from regular Lua to LuaJIT 2014-04-28 07:38:30 -07:00
Thomas Goyne ec4a8c9a26 Fix read from before beginning of stack 2014-04-27 21:23:53 -07:00
Thomas Goyne b4de0b9b82 Fix crash on zero-length lua files 2014-04-27 21:23:52 -07:00
Thomas Goyne 9492192b73 Switch back to building Lua as C
In preparation for switching to LuaJIT, which doesn't support PUC Lua's
thing of using C++ exceptions for lua_error.

Requires replacing all uses of lua_error (and things calling lua_error)
with custom versions that throw an exception instead and adding an
exception -> lua error wrapper at all C++ -> Lua boundaries.
2014-04-27 10:37:23 -07:00
Thomas Goyne e3eb28ffd1 Extract some duplicated table pushing code 2014-04-27 09:15:35 -07:00
Thomas Goyne 689c16deb3 Use lua_createtable where applicable 2014-04-27 09:15:35 -07:00
Thomas Goyne 5cde33c8d5 Reimplement the useful parts of lfs
It doesn't support Unicode on Windows, so replace it with a
reimplementation using boost.filesystem that does, but skip all the
useless junk.
2014-04-26 08:16:39 -07:00
Thomas Goyne 50e27d8247 Shut up warning 2014-04-26 08:16:38 -07:00
Thomas Goyne 2adcc76cf6 Switch automation tests to busted
This requires shuffling a bunch of stuff around to get a CLI lua
executable that uses an automation-like environment, but that's
something that'll be nice to have in the future anyway.

Busted indirectly depends on lfs and we currently can't use external
binary modules, so add a copy of lfs to the repo and build it with
Aegisub.
2014-04-26 08:16:38 -07:00
Thomas Goyne b8af29da0d Move some of the automation machinery to libaegisub 2014-04-25 15:03:18 -07:00
Thomas Goyne 15ae2b0ccc Eliminate a bunch of explicit constructors/destructors
Use explicitly defaulted destructors for base cases when possible,
eliminate aggregate initialization constructors where possible, and push
some more stuff to NSDMIs.
2014-04-25 14:53:24 -07:00
Thomas Goyne a5fdc6795c Fix compilation of automation tests 2014-04-25 14:52:53 -07:00
Thomas Goyne 4cd92ee532 Move stuff only ever used in auto4_lua.cpp to an anonymous namespace there 2014-04-25 09:27:27 -07:00
Thomas Goyne e7734e642d Use nullptr 2014-04-25 08:59:43 -07:00
Thomas Goyne d0603fde88 Don't check for used extradata ids if there are none 2014-04-25 08:59:43 -07:00
Thomas Goyne 882afc5111 Update out-of-date tests 2014-04-25 08:59:42 -07:00
Thomas Goyne b9509289aa Fix test compilation 2014-04-25 08:59:42 -07:00
Thomas Goyne 2de5396f7a Remove luabins project from MinDep and Test targets 2014-04-25 08:59:42 -07:00
Niels Martin Hansen d53c36e67f Merge branch 'extradata'
Conflicts:
	src/ass_parser.cpp
2014-04-25 17:22:15 +02:00
Niels Martin Hansen 5a930cfee3 Forgot to add the luabins project to MSVS solution file 2014-04-25 17:19:39 +02:00
Thomas Goyne d4fbe3040d Preserve the insertion point (but not selection) when switching between lines 2014-04-25 08:00:45 -07:00
Niels Martin Hansen f278c35f3f Dynamically use either inline_string escaping or uuencoding for extradata
Since luabins generates binary data which grows up to 3x by escaping,
it's more efficient to uuencode that instead.
A marker is placed as the first character of the value field, either
'e' for inline_string escaped text, or 'u' for uuencoded binary data.
The key is always inline_string escaped, as it will typically be
human readable.
2014-04-25 16:04:08 +02:00
Niels Martin Hansen bcd41bd986 Windows build system for luabins (untested) 2014-04-25 15:08:54 +02:00
Thomas Goyne 6ee1b8ca52 Update the start sample between blocks in the ram audio provider correctly 2014-04-24 19:08:05 -07:00
Thomas Goyne cef07785d7 Remove a pointless ++ and make stuff const 2014-04-24 18:51:54 -07:00
Niels Martin Hansen 7839e8c983 Fix bug in extradata id list reading 2014-04-25 00:05:32 +02:00
Niels Martin Hansen b2768b7abd Work around boost::format bug
See https://svn.boost.org/trac/boost/ticket/9360
It seems that the %X specifier is ignored if the input value is a char type
and the char is instead output verbatim and not in its integer value.
Casting it to an int works around this.
2014-04-24 23:54:42 +02:00
Niels Martin Hansen 3f08b1d057 Use lua_pushlstring() so strings with embedded NULs also work 2014-04-24 23:49:36 +02:00
Niels Martin Hansen 18f55eaebf Load luabins library into Auto4 Lua environment 2014-04-24 23:01:27 +02:00
Niels Martin Hansen 057a223b38 Integrate luabins into Aegisub's build system
Make it build as C++ so it links properly against the C++-built version
of Lua used in Aegisub too.
2014-04-24 23:01:27 +02:00
Niels Martin Hansen b4801ef1bb Import luabins 831869cdc8c5e7579804e6472a2dc6cbe0b2672b 2014-04-24 23:00:41 +02:00
Thomas Goyne 7161ce167c Use lambdas rather than std::bind(std::ref(Signal)) for signal forwarding 2014-04-23 15:48:39 -07:00
Thomas Goyne 7f289551ae Remove -Wno-variadic-macros from CXXFLAGS
It's no longer nonstandard in C++11.
2014-04-23 15:29:23 -07:00
Thomas Goyne 6fc4c8da14 Move make_unique to its own header file
Rebuilding the entire project after touching util.h gets old fast.
2014-04-23 15:29:23 -07:00
Niels Martin Hansen cf81e91383 Perform extradata garbage collection on save 2014-04-23 22:54:01 +02:00
Niels Martin Hansen 159dfcde39 Add extradata reading/writing to Auto4 Lua 2014-04-23 22:54:01 +02:00
Niels Martin Hansen 040b467090 Add undo support for extradata 2014-04-23 22:54:01 +02:00
Niels Martin Hansen 8076fb2791 Basic storage and loading/saving for extradata 2014-04-23 22:54:01 +02:00
Thomas Goyne c248dc56da Make the visual tool drag handles a little smaller 2014-04-23 07:15:28 -07:00
Thomas Goyne 7b0b74fbb0 Fix off-by-one error in the bounds check for restoring the active line 2014-04-23 06:22:18 -07:00
Thomas Goyne ec6f14eef4 Make double-click in the edit box smarter
Use the syntax highlighting's word splitting to decide what to select so
that double-clicking on \Nword only selects 'word'.
2014-04-22 17:01:22 -07:00
Thomas Goyne b4284efb38 Trigger the audio selection change logic when switching timing controllers
Results in the display seeking to the active line when audio is opened
(if seeking to active line is enabled), and initializes the scrollbar
properly.

Updates #1732.
2014-04-22 16:42:47 -07:00
Thomas Goyne feec511227 Use more make_unique 2014-04-22 16:37:12 -07:00
Thomas Goyne c53e8f6139 Pass around newly created AudioTimingControllers in a unique_ptr 2014-04-22 16:21:53 -07:00
Thomas Goyne f83f8b73a0 Hide the CPS value if it's over 100 2014-04-22 12:35:41 -07:00
Thomas Goyne a30d6121fd Don't block the UI while decoding audio for the caches
Simply zero the memory for audio which hasn't been decoded yet, modify
the audio renderer to avoid caching blocks which aren't ready yet, and
add a progress indiciator to the audio display scrollbar.
2014-04-22 12:34:20 -07:00
Thomas Goyne 7dfd494a46 Update ffms2 2014-04-21 11:11:40 -07:00
Thomas Goyne 1bd3572054 Make the CPS warning thresholds and color customizable 2014-04-21 11:11:40 -07:00
Thomas Goyne 7bc35cecb7 Don't show a CPS value for lines under 100 ms long 2014-04-21 11:11:40 -07:00
Thomas Goyne 543034b96b Change the background color of the CPS column when the value is excessively high 2014-04-21 11:11:40 -07:00
Thomas Goyne a1a289c4c0 Push more of the painting logic into the grid column classes 2014-04-21 11:11:40 -07:00
Thomas Goyne 6e0160d730 Fix ugly extra grid line drawn when the first row is selected 2014-04-20 19:46:03 -07:00
Thomas Goyne 5646c05be7 Draw the active line box on top of the grid columns 2014-04-20 19:39:48 -07:00
Thomas Goyne f14cef7321 Remove pointless vertical alignment logic
The only time it has an effect is when font substitution occurs, and the
end result tends to be worse than doing nothing at all.
2014-04-20 19:32:39 -07:00
电脑迷 e42e6f36e6 Update Chinese translations. Closes #1739. 2014-04-20 07:01:49 -07:00
Thomas Goyne d886a5916d Create the output directory when collecting fonts to a zip 2014-04-20 07:01:49 -07:00
Thomas Goyne 1677e700b2 Add missing error checking for opening the output zip file in the fonts collector 2014-04-20 07:01:49 -07:00
Thomas Goyne 3ed99b5cb2 Make SubsEditBox::PopulateList less pointlessly slow 2014-04-20 07:01:49 -07:00
Thomas Goyne 2387b31cee Rearrange BaseGrid's data members 2014-04-20 07:01:49 -07:00
Thomas Goyne c3e024954c Make frame mode handling in grid columns a little less ugly 2014-04-20 07:01:48 -07:00
Thomas Goyne 6c6f60eb98 Add an option to ignore punctuation for the character counter 2014-04-18 20:11:38 -07:00
Thomas Goyne cff3c0a3df Don't repopulate the actor/effect fields when the active line changes
Speeds up switching lines on a totally arbitrary test file that doesn't
even use very many actors or effects by ~20%.
2014-04-18 20:11:38 -07:00
Thomas Goyne 8aea747b88 Update the character counter synchronously
It's not longer even vaguely in the realm of slow enough to justify
dumping off on a background thread.
2014-04-18 20:11:38 -07:00
Thomas Goyne 2de95818db Use ICU directly for character counting
ICU docs say not to create a new break iterator each time as
boost.locale does, and in fact creating the break iterator is about 90%
of the run time of the character counter, so use ICU directly and cache
the break iterator.
2014-04-18 20:11:38 -07:00
Thomas Goyne af32733797 Move character count stuff to libaegisub 2014-04-18 20:11:38 -07:00
Thomas Goyne bd53302907 Remove unused variable 2014-04-18 14:28:55 -07:00
Thomas Goyne 744717a164 Skip calculating the CPS for lines where it's very unlikely to be meaningful 2014-04-18 14:08:12 -07:00
Thomas Goyne 5143c34d70 Fix right and vertical margin columns 2014-04-18 14:05:31 -07:00
Thomas Goyne 5df871f599 Extract all of the column-specific logic from BaseGrid 2014-04-18 12:17:03 -07:00
Thomas Goyne 909be4494a Use a struct for the cached grid brushes rather than an array+enum 2014-04-18 07:17:38 -07:00
Thomas Goyne d5274b72d4 Cap CPS column at 999 2014-04-18 07:07:03 -07:00
Thomas Goyne 867eaae7a8 Add basic characters-per-second column to the grid 2014-04-17 19:11:35 -07:00
Thomas Goyne 393d1dd269 Fix combine lines commands 2014-04-17 18:08:03 -07:00
Thomas Goyne c93d38cc34 Clean up BaseGrid a little
Eliminate the hardcoded uses of 11 all over the place and cache the
calculation of the header widths.
2014-04-17 18:08:03 -07:00
Thomas Goyne 27c1522622 Use AssDialogue::Row more places 2014-04-17 17:30:06 -07:00
Thomas Goyne e729d38164 Add a warning for faux bold/italic to the fonts collector 2014-04-17 16:07:01 -07:00
Thomas Goyne 1a67ee1fdf Add SelectionController::GetSortedSelection and use it where useful 2014-04-17 14:32:18 -07:00
Thomas Goyne 5721cd1453 Update ffms2 2014-04-17 11:46:28 -07:00
Thomas Goyne df42fdb2d2 Restore the text selection and cursor position on undo 2014-04-17 11:46:28 -07:00
Thomas Goyne 56699e4800 Mark move constructors as noexcept
Or just default them for non-MSVC when possible.
2014-04-17 11:46:28 -07:00
Thomas Goyne 09d0d039e0 Convert signal.h to variadic templates 2014-04-17 11:46:27 -07:00
Thomas Goyne ecdf7c4fc3 Cut the width of the lines for the visual features in half 2014-04-17 11:46:27 -07:00
Thomas Goyne 18d9a43edb Cut the opacity of visual tool features in half 2014-04-17 11:46:27 -07:00
Thomas Goyne 73c2e92655 Clean up VideoBox a little 2014-04-17 11:46:27 -07:00
Thomas Goyne c8033c2ef7 Initialize the charset converter for the thesaurus sooner
Narrows the window of time for a crash-on-exit when the user exits while
a thesaurus is being loaded.
2014-04-16 08:15:31 -07:00
Thomas Goyne 00a3547453 Make find/replace and automation text fields unlimited length
On Windows text fields default to a maximum of 30,000 characters.
2014-04-16 08:11:38 -07:00
Thomas Goyne d07cba4875 Keep the old active line when an automation script changes the selection but not active line 2014-04-16 08:11:38 -07:00
Thomas Goyne 162e119afa Make subs.delete accept a table of rows to delete
Lua has a limit to how many arguments can be pushed onto the stack, so
when deleting very large numbers of lines at once unpacking a table can
fail.
2014-04-16 08:11:38 -07:00
Thomas Goyne c685ae4aea Remove -Wno-long-long from default CXXFLAGS
It's no longer nonstandard in C++11 so there's no default warning for
it.
2014-04-16 08:11:37 -07:00
Thomas Goyne 1d5292fdee Kill config.h and just force-include acconf.h in non-pch builds 2014-04-16 08:11:37 -07:00
Thomas Goyne dcf1270fc4 Ensure boost.locale is initialized with a UTF-8 locale on OS X
This fixes the find/replace dialog stripping non-us-ascii characters
from the file.

See #1587 for the same issue on Windows.
2014-04-15 16:57:45 -07:00
Thomas Goyne 489eca221d Fix compilation with clang 2014-04-15 11:09:25 -07:00
Thomas Goyne a141ef1264 Remove the never-actually-used BASE block type 2014-04-15 11:09:25 -07:00
Thomas Goyne 3528e49286 Make the duration field not completely wrong in frame mode 2014-04-15 11:09:25 -07:00
Thomas Goyne 780c93ed4d Make modifying multiple lines at once less brittle
Only count characters outside of override blocks for the relative
positions to do the edits on each line, which handles the case where the
lines have different lengths of stuff in override blocks but the same
text.
2014-04-15 06:19:12 -07:00
Thomas Goyne 7ed3fbade0 Eliminate some awful in/out arguments 2014-04-15 06:19:12 -07:00
Thomas Goyne 0e04794ffd Make the edit box buttons less dumb with multiple lines selected
Apply the modification at the cursor position to each selected line
rather than just setting all selected lines to the active line's text.
Still doesn't have good results in any nontrivial cases, but it's at
least sometimes useful.
2014-04-14 13:52:14 -07:00
Thomas Goyne 7fc78d40ab Switch from boost::ptr_vector to a vector of unique_ptr
ptr_vector hasn't been updated for C++11, so despite being specifically
designed to store pointers to objects it's less safe and not really any
easier to use than a regular vector of unique_ptrs
2014-04-14 13:52:14 -07:00
Thomas Goyne f53d840520 Unbind the progress dialog's idle handler when it's unneeded 2014-04-06 09:57:01 -07:00
Thomas Goyne 3e4b6a725f Change both selection and active line in SetSelectionAndActive before announcing 2014-04-04 09:01:03 -07:00
Thomas Goyne df762b5b99 Add a checked iterator_to() to AssFile
iterator_to requires that the object be in the list, which is sometimes
not the case when processing a commit which removed the active line or a
selected line. To handle this, add a checked version that returns
Events.end() when it is not in the list rather than crashing.
2014-04-04 09:01:02 -07:00
Thomas Goyne 9c4574ed34 Add a missing word to a help string 2014-04-04 09:01:02 -07:00
Thomas Goyne 54fa37c855 Fix compilation on linux
Closes tgoyne/aegisub#4.
2014-04-03 17:43:41 -07:00
Thomas Goyne b8d67b3d8e Update row numbers after an order-changing commit 2014-04-01 09:19:30 -07:00
Thomas Goyne caf5ac9cd7 Sort the audio display markers
This was accidentally removed in 5d3bc0d. Closes #1731.
2014-04-01 09:19:30 -07:00
Thomas Goyne 4adc7c78fc Remove array indexing from UnknownElement 2014-04-01 09:19:30 -07:00
Thomas Goyne fb79c47cb5 Actually include the dependency files in the tests Makefile 2014-03-31 10:23:36 -07:00
Thomas Goyne 8a520b31af Add a default value for GTEST_ROOT 2014-03-31 10:23:36 -07:00
Thomas Goyne ffb2fd2b9d Remove redundant option not found exception type 2014-03-31 10:23:36 -07:00
Thomas Goyne a050b43621 Define OptionValueMap with using rather than inheritence 2014-03-31 10:23:36 -07:00
Thomas Goyne c59b9d59b8 Clean up OptionValue
Make the vtables less absurdly huge (knocks 100KB off aegisub32.exe),
eliminate some copies of the values when constructing the options, and
use an enum class for the value type.
2014-03-31 10:23:36 -07:00
Thomas Goyne 371f602100 Fix tests compilation 2014-03-31 10:23:36 -07:00
Thomas Goyne fcd0df2e96 Preserve the old selection when an automation script doesn't return a new one 2014-03-31 08:11:43 -07:00
Thomas Goyne 3bbbc56053 Add the line's row number to AssDialogue
The grid needs to be able to map AssDialogue * to a row number, and just
storing it in the AssDialogue is nearly strictly better than a std::map
mapping events to rows. Probably will be of use elsewhere as well.
2014-03-31 08:11:43 -07:00
Thomas Goyne 84c5eb25b3 Actually check lines other than the active line in the spellchecker dialog 2014-03-31 08:11:43 -07:00
Thomas Goyne dbec5ff0bc Fix out-of-bounds read when looking for subtitles in a matroska file with no subtitles 2014-03-28 09:15:09 -07:00
Thomas Goyne c1f968a252 Add filters file for the FFMS2 project 2014-03-28 09:05:36 -07:00
Thomas Goyne 4a46f09d31 Force the final progress of operations to 100%. Closes #1728. 2014-03-27 19:17:24 -07:00
Thomas Goyne f07a2559b8 Update the grid scrollbar after dialogue count changes 2014-03-27 18:49:16 -07:00
Thomas Goyne 1b0c1902d5 Update ffms2 2014-03-27 07:24:14 -07:00
Thomas Goyne ad8d11d87f Don't animate the progress bar when moving backwards 2014-03-27 07:21:55 -07:00
Thomas Goyne cf6e274c49 Fix incorrect capitalization of frame_main.h
Closes tgoyne/aegisub#3.
2014-03-27 06:50:16 -07:00
Thomas Goyne 290cdefd9d Skip building the wx libraries we don't use 2014-03-26 15:13:21 -07:00
Thomas Goyne 736b1d2fa7 Actually enable optimizations for ICU in release builds 2014-03-26 12:34:14 -07:00
Thomas Goyne 2ba88537a8 Pull some global init logic out of FrameMain's constructor 2014-03-26 11:33:33 -07:00
Thomas Goyne 35301df5f7 Remove the (unimplemented) machinery for automation subtitle formats 2014-03-26 11:17:38 -07:00
Thomas Goyne e477005ecd Eliminate some uses of std::bind 2014-03-26 10:38:38 -07:00
Thomas Goyne e5e3bff7f8 Clean up some stuff in menu.cpp 2014-03-26 10:25:24 -07:00
Thomas Goyne 0931194b4f Remove most inclusions of main.h 2014-03-26 10:12:43 -07:00
Thomas Goyne 84ceed7c3c Update ffms2 2014-03-26 10:03:24 -07:00
Thomas Goyne 14d64daf69 Fix crash on empty progress title on OS X 2014-03-26 09:24:47 -07:00
Thomas Goyne 16804f41c9 Delete in-repo copy of intttypes.h since vs2013 has it 2014-03-26 08:25:24 -07:00
Thomas Goyne c4c0f6f125 Kill VideoContext::Get() 2014-03-26 08:23:43 -07:00
Thomas Goyne aa46c49403 Pull some of the context (de)init out of FrameMain
And actually do deinitialize more of the stuff in the context.
2014-03-25 20:04:48 -07:00
Thomas Goyne 821f54a372 Delay showing the font caching dialog until subtitles are actually rendered 2014-03-25 20:04:48 -07:00
Thomas Goyne 39626db787 Eliminate all uses of FrameMain via the global app object 2014-03-25 17:06:48 -07:00
Thomas Goyne e596de03c7 Fix moving the top line of the file down 2014-03-25 17:06:48 -07:00
Thomas Goyne b5a8217fcd Remove pointless wxSafeYield in FrameMain's constructor
This was needed to make the splash screen appear, and was missed when
the splash screen was killed.
2014-03-25 17:06:48 -07:00
Thomas Goyne 523d858374 Extract SelectionController from BaseGrid 2014-03-25 17:06:47 -07:00
Thomas Goyne eb548306e9 Don't skip the first dialogue line in the kanji timer 2014-03-24 12:40:03 -07:00
Thomas Goyne 5214efd553 Fix issues with RecombineOverlaps 2014-03-24 12:40:03 -07:00
Thomas Goyne e71270f0f0 Refactor the rest of the factories 2014-03-24 12:40:03 -07:00
Thomas Goyne dbe9bcfdad Extract some duplicated code 2014-03-24 12:40:03 -07:00
Thomas Goyne 470f85d365 Convert VideoProviderManager to AudioProviderManager's new design 2014-03-24 09:25:26 -07:00
Thomas Goyne 36a71be19f Remove virtual destructor from FFmpegSourceProvider 2014-03-24 06:55:35 -07:00
Thomas Goyne 938025acb1 Redesign AudioProviderFactory
Register functions which create each type of provider rather than the
provider types themselves so that the concrete types don't need to be
publicly exposed, and use a static list of providers rather than
registering them at runtime.
2014-03-24 06:55:35 -07:00
Thomas Goyne 7dd764db6b Remove the option to disable the PCM audio provider 2014-03-23 16:49:03 -07:00
Thomas Goyne 3d76d583e1 Use stdint types in MatroskaParser 2014-03-23 09:01:25 -07:00
Thomas Goyne b1f132ec6f Use a proper auto-deleting temp file for the HD audio cache 2014-03-23 08:14:35 -07:00
Thomas Goyne a63db6b519 Move git submodules to a consistent location within the .git/modules dir 2014-03-21 19:23:47 -07:00
Thomas Goyne 2eb211f5b6 Fix issues with showing the previous inactive line
The "previous" line for the first line was actually the last line of the
file, and the previous line for the second line was ignored entirely.

Closes #1719.
2014-03-21 16:41:22 -07:00
Thomas Goyne 3e9bb94126 Use boost range algorithms in audio_timing_dialogue.cpp 2014-03-21 16:11:56 -07:00
Thomas Goyne 5d3bc0d0d2 Modernize some code in audio_timing_dialogue.cpp 2014-03-21 16:01:24 -07:00
Thomas Goyne 66877105cb Remove old cruft from the precompiled headers 2014-03-21 15:02:12 -07:00
Thomas Goyne 53188cca47 Expunge remaining references to <fstream> and <iostream> 2014-03-21 14:31:48 -07:00
Thomas Goyne db7c8f49cb Kill default_path.json since it was never used for anything 2014-03-21 14:04:17 -07:00
Thomas Goyne e1bc828e44 Don't wrap the default config json blobs in std::strings 2014-03-21 14:02:49 -07:00
Thomas Goyne d615dcb30a Replace all uses of strstream and stringstream with bufferstream
istringstream makes a copy of its input, which is not very nice for
performance. strstream doesn't do bounds checking, which is not very
nice for safety (and is deprecated).
2014-03-21 13:50:28 -07:00
Thomas Goyne d454872c00 Use read_file_mapping for the thesaurus 2014-03-21 13:23:15 -07:00
Thomas Goyne 0268ffd345 Return a const char * from read_file_mapping::read 2014-03-21 13:23:12 -07:00
Thomas Goyne 23ff6dead1 Use read_file_mapping for YUV4MPEGVideoProvider 2014-03-21 10:57:14 -07:00
Thomas Goyne 18e5144977 Remove unused function in line_iterator 2014-03-21 09:47:05 -07:00
Thomas Goyne 220e6d18da Use read_file_mapping in TextFileReader 2014-03-21 09:28:17 -07:00
Thomas Goyne 87501931f6 Don't reset the progress animation timer when receiving redundant progress updates 2014-03-21 08:39:58 -07:00
Thomas Goyne 3d21f00356 Use read_file_mapping for charset detection 2014-03-21 08:06:41 -07:00
Thomas Goyne cb1f04481a Use read_file_mapping for reading attachments 2014-03-21 07:44:22 -07:00
Thomas Goyne 5750a660c2 Open files with FILE_SHARE_READ on Windows 2014-03-21 07:23:44 -07:00
Thomas Goyne ad193f70a9 Use read_file_mapping for reading automation scripts 2014-03-21 07:22:31 -07:00
Thomas Goyne 95008b7dc1 Remove unused variable 2014-03-20 20:26:18 -07:00
Thomas Goyne 58db99cd24 Simplify PCMAudioProvider a bit and pull it fully into the cpp file 2014-03-20 20:26:17 -07:00
Thomas Goyne df177ae869 Fix crash_writer_minidump.cpp's newlines 2014-03-20 20:26:17 -07:00
Thomas Goyne 0c9f39ca25 Use mmap for reading subtitles from Matroska files
Cuts cold-cache read time for an arbitrary 1 GB file read over a network
off a USB 2.0 hard drive from ~70 seconds to ~45 seconds.
2014-03-20 20:26:17 -07:00
Thomas Goyne 00b4d6908f Use read_file_mapping directly in the HD audio provider 2014-03-20 20:26:17 -07:00
Thomas Goyne 6c14c9bee9 Extract the rest of the mmap logic from the PCM provider. Closes #934. 2014-03-20 20:26:17 -07:00
Thomas Goyne 3222275750 Use boost.interprocess's mmap wrapper in the PCM provider 2014-03-20 20:25:44 -07:00
Thomas Goyne 3fa48281b0 Add an error check for trying to interact with expired subtitles objects 2014-03-20 14:13:11 -07:00
Thomas Goyne 8f96e06d0c Remove pdbs from the windows installers 2014-03-20 10:41:12 -07:00
Thomas Goyne aab025c830 Write minidumps on windows rather than just basic stack traces 2014-03-20 10:41:12 -07:00
Thomas Goyne 4b6946dcec Reinitialize the crash error message after the UI language is selected 2014-03-20 10:41:12 -07:00
Thomas Goyne 61b19a17e8 Extract crashlog writing from main.cpp 2014-03-20 10:41:12 -07:00
Thomas Goyne 39823b5d89 Delete the unfinished crash reporter 2014-03-19 08:22:53 -07:00
Thomas Goyne 21cc91cd16 Update ffmpeg, ffms2, libass, wxWidgets 2014-03-18 14:08:33 -07:00
Thomas Goyne feb3b45ced Fix crash on startup when the config file can't be written 2014-03-18 14:03:36 -07:00
Thomas Goyne e74f1dc80e Use enum classes for the selection dialog modes 2014-03-18 13:46:13 -07:00
Thomas Goyne 3ef8fa9ec0 Make a for loop in uuencode less dumb 2014-03-18 13:41:26 -07:00
Thomas Goyne 59e8ec522e Fix Make times continuous 2014-03-16 16:56:36 -07:00
Thomas Goyne 1bd63ce35c Fix crash after inserting lines via subs.insert 2014-03-15 08:31:09 -07:00
Thomas Goyne 96a2a98e39 Update ffms2 2014-03-14 09:01:48 -07:00
Thomas Goyne 7794680c1e Really fix compilation with boost <= 1.55. Closes #1716. 2014-03-14 07:14:13 -07:00
Thomas Goyne b7b8c3d251 Update fontconfig 2014-03-14 07:00:37 -07:00
Thomas Goyne 21d87ff1ca Remove some invalid finals that VC++ was okay with for some reason 2014-03-12 20:32:57 -07:00
Thomas Goyne ea96c6e2ad Make everything final that can be
Apparently gcc does use final for devirtualization.
2014-03-12 19:07:30 -07:00
Thomas Goyne ab39cfe362 Replace rref + const ref overloads with one version taking by value 2014-03-12 18:02:17 -07:00
Thomas Goyne 26c92453b8 Slather on some std::moves when setting the selection 2014-03-12 15:20:37 -07:00
Thomas Goyne 7c2363ee5b Add rref overloads to SetSelectedSet and SetSelectionAndActive 2014-03-12 15:20:34 -07:00
Thomas Goyne 92ae789b46 Eliminate a bunch of pointless copies of the selection set 2014-03-12 14:54:46 -07:00
Thomas Goyne 31979500c4 Update aegisub.pot 2014-03-12 09:41:44 -07:00
Thomas Goyne 4aa79925c1 Update version in make_pot.sh to 3.2 2014-03-12 09:40:40 -07:00
Thomas Goyne 6e12297313 Update string extraction for desktop file 2014-03-12 09:26:19 -07:00
Thomas Goyne 067450e04a Add wxPLURAL to the patterns extracted by make_pot.sh 2014-03-12 09:23:55 -07:00
Thomas Goyne bd15a54ae3 Use proper plural forms for some UI strings 2014-03-12 09:20:46 -07:00
Thomas Goyne 6374cb52e1 Add some missing inter-project dependencies 2014-03-11 13:02:14 -07:00
Thomas Goyne 409eee4510 Install CSRI and iconv headers rather than mucking about with include paths 2014-03-11 12:27:34 -07:00
Thomas Goyne 1745177b6c Fix compilation with non-bleeding edge boost 2014-03-11 12:15:01 -07:00
Thomas Goyne 843e71331f Add in-repo copy of Lua and use it rather than the system copy
Aegisub needs Lua built as C++ (for stack unwinding on errors). No one
packages it like that, so at the moment we can't actually use systme
packages for Lua.

Fixes a bunch of memory leaks on Automation errors.
2014-03-11 12:15:01 -07:00
Thomas Goyne 33a4a056a4 Move everything up a level since the root dir no longer has stuff 2014-03-11 12:14:57 -07:00
Thomas Goyne bdff48f19b Move submodules to aegisub/vendor 2014-03-11 09:17:21 -07:00
Thomas Goyne c97e2031d5 Move all in-repo deps to aegisub/vendor 2014-03-11 08:59:45 -07:00
Thomas Goyne 1b05310e32 Switch libass URL to github 2014-03-11 08:57:26 -07:00
Thomas Goyne 64f51c917f Kill the awkward automatic subtitle format (de)registration 2014-03-09 15:12:40 -07:00
Thomas Goyne e0d34bfb01 Update deps 2014-03-09 15:12:40 -07:00
Thomas Goyne 9a8e0075cb Silence some warnings from boost.crc 2014-03-09 15:12:40 -07:00
Thomas Goyne 8ee3095506 Do disgusting things to make LuaAssFile work
LuaAssFile relied on the lifetime guarantees of intrusive lists (i.e.
you can pretty much do whatever the fuck you want and it'll work out),
but AssInfo objects are no longer owned by an intrusive list. Do awful
things to lazily copy the header section when needed to provide similar
lifetime guarantees.
2014-03-09 15:12:40 -07:00
Thomas Goyne f6463f0fd4 Fix non-pch compilation 2014-03-09 15:12:40 -07:00
Thomas Goyne 7d08dca912 Make AssFile::Attachments a vector 2014-03-09 15:12:40 -07:00
Thomas Goyne bacbd8c2bf Devirtualize AssEntry::GetEntryData 2014-03-09 15:12:40 -07:00
Thomas Goyne 3d35ba894c Move the intrusive list hooks to the concrete entry types 2014-03-09 15:12:40 -07:00
Thomas Goyne cc7595e3c6 Remove AssEntry::Clone 2014-03-09 15:12:39 -07:00
Thomas Goyne 8acce1a9ee Don't return a const std::string from GetData
It has zero benefit and forces an extra copy.
2014-03-09 15:12:39 -07:00
Thomas Goyne e64fd78c51 Change AssFile::Info to a vector 2014-03-09 15:12:39 -07:00
Thomas Goyne b1639c6162 Make the entry lists be of the appropriate type rather than just AssEntry
Eliminates a bajillion dynamic casts.
2014-03-09 15:12:39 -07:00
Thomas Goyne 1506c1ab10 Remove some cruft from TextFileReader 2014-03-09 08:06:23 -07:00
Thomas Goyne 805481315e Split AssFile into separate lists for each section 2014-03-09 08:06:21 -07:00
Thomas Goyne 222b6ee099 Eliminate some duplicated exception handling code 2014-03-07 08:36:33 -08:00
Thomas Goyne 6bf986a63f Flush the clipboard on exit
Apparently flushing immediately after setting the clipboard sometimes
doesn't work.
2014-03-07 08:33:47 -08:00
Thomas Goyne e37e4b8231 Update to moonscript 0.2.5 2014-03-06 19:19:12 -08:00
Thomas Goyne 7d1cd576d1 Match the parser's section order when constructing files for undo 2014-03-05 17:31:40 -08:00
Thomas Goyne cb8b107bd9 Sort the actor and effect fields. Closes #1715. 2014-03-05 17:31:38 -08:00
Thomas Goyne c9582fe7cf Remove the added/removed items arguments from the selection changed signal
They're only used by one thing (the drag visual tool), so calculating
them is pointless overhead most of the time, and it simplifies the
visual tool code much less than it complicates the grid code.
2014-03-05 17:31:36 -08:00
Thomas Goyne c3fb54153f Store selection and active line in undo info and restore them on undo 2014-03-05 17:31:33 -08:00
Thomas Goyne 9ecb54333a Redesign the undo stack
Store the data in vectors rather than AssFiles since even an intrusive
linked list has comically high memory overhead. Cuts memory usage of a
full undo stack with 15k lines by 65 MB for 32-bit and 130 MB for
64-bit. Also roughly halves how long it takes to copy the file for the
undo stack, and makes undo/redo a bit faster.
2014-03-04 20:21:02 -08:00
Thomas Goyne 2a316e5a55 Make BaseGrid::UpdateMaps far less slow 2014-03-04 20:20:51 -08:00
Thomas Goyne 9a347b0b29 Use splice rather than swaps to pop the undo stack 2014-03-04 13:54:34 -08:00
Thomas Goyne ff21670388 Add Release-MinDep solution configuration 2014-03-04 13:54:34 -08:00
Thomas Goyne c02bdbcf9e Adjust the appears of the vector clip control handles
Make them significantly smaller to cover less of the video and fiddle
with the appearance to hopefully make them still visible enough.
2014-03-03 20:08:04 -08:00
Thomas Goyne 0f731bcf13 Cut the opacity of the vector clip tool's lines a bit 2014-03-03 19:04:20 -08:00
Thomas Goyne 1dbe7dd5f9 Return a rgba string for coloralpha lua controls 2014-03-02 07:24:06 -08:00
Thomas Goyne 5029b5286f Update libass 2014-03-02 07:19:12 -08:00
Thomas Goyne 4f2f8ef4cb Make missing boost libraries a configure error. Closes #1707. 2014-03-02 07:16:25 -08:00
Thomas Goyne 261ceaf969 Pass nullptr for the codepage for ass_read_memory
Passing a codepage makes libass convert to UTF-8 even if it's already
UTF-8.
2014-03-02 07:16:23 -08:00
Thomas Goyne 2c4eaa8d45 Remove no-longer-used header variable in ass parser 2014-03-02 07:16:13 -08:00
Thomas Goyne 3c59903420 Work around an incorrect assertion in older versions of boost. Closes #1702. 2014-02-02 09:14:33 -08:00
Thomas Goyne 0523c27393 Set ApplicationCompany for the Aegisub executable
Despite being completely unmentioned in the documentation this appears
to be required to show up in the default programs UI on Windows 8.1.

Closes #1699.
2014-02-02 08:53:29 -08:00
Thomas Goyne 51218d5d57 Add resource strings for file associations
These weren't merged from 2.1.9 with the rest of the file association
code, which results in the installer trying to reference nonexistent
resources and things breaking.

Updates #1699.
2014-02-02 08:53:20 -08:00
Thomas Goyne 3d22784998 Make lines_to_delete a vector 2014-02-01 20:57:30 -08:00
Thomas Goyne 2d259bb27e Make deleterange not do totally incorrect things 2014-02-01 20:57:30 -08:00
Thomas Goyne df3957393c Set extendRow even when active_line doesn't change
After shift-clicking on the grid the row to extend from doesn't equal
the active line, and clicking on the current active line to deselect all
other lines need to update the extend row.
2014-02-01 20:57:30 -08:00
Илиян Илиев db4a0e4c1e Add Bulgarian translation. Closes #1706. 2014-02-01 17:06:51 -08:00
Thomas Goyne ab44e51edc Never ask to change the script resolution when opening dummy video 2014-02-01 16:57:13 -08:00
Thomas Goyne 4dd76012cd Move YCbCr Matrix header setting from subtitle save to video open 2014-02-01 16:56:32 -08:00
Xabier Aramendi 9b75d4e0ab Update Basque translation 2014-02-01 08:33:33 -08:00
Thomas Goyne f8e8c955b7 Add nl.mo to the Windows installer. Closes #1698. 2014-02-01 08:30:55 -08:00
Thomas Goyne 89e3c45bd6 Use less ugly string formatting when resampling resolution 2014-02-01 08:26:12 -08:00
Thomas Goyne d4fb6f91e6 Resample \be and \blur when resampling resolution 2014-02-01 08:25:52 -08:00
Thomas Goyne 6b9c9091fe Bump libass version 2014-01-19 18:35:17 -08:00
Thomas Goyne e4e7457d7d Build libass without iconv support
We only ever feed UTF-8 to it, and it doesn't check whether the input is
UTF-8 before converting.
2014-01-19 18:35:17 -08:00
Thomas Goyne 1cf0100d5a Bump ffmpeg version 2014-01-19 18:35:17 -08:00
Thomas Goyne 00ff8c4b4a Update to ICU 52.1 2014-01-19 18:35:17 -08:00
Thomas Goyne 934431a29e Make respack less dumb 2014-01-19 18:35:17 -08:00
Thomas Goyne b1ffffaa4c Delete unused button bitmaps 2014-01-19 18:35:17 -08:00
Thomas Goyne a7027a6bfa Hide visual tools for commented lines 2014-01-19 18:35:17 -08:00
Thomas Goyne cc829b2322 Build with all icon sizes enabled on Windows. Closes #1692. 2014-01-19 18:35:17 -08:00
Thomas Goyne aa71e9ab9c Merge pull request #9 from computerfan/patch-2
Update Traditional Chinese translation.
2014-01-14 07:27:21 -08:00
computerfan 6f50c58011 Updated Traditional Chinese translation. 2014-01-14 19:29:49 +08:00
Yuri c035c45e53 Update Hungarian translation. Closes #1693. 2014-01-12 14:59:40 -08:00
Thomas Goyne 2de6a8b600 Fix codecvt errors on OS X
When launching Aegisub from Finder (but not via open), using the UTF-8
version of the locale breaks things for whatever reason, but fortunately
it's unneccesary as paths on OS X are always UTF-8 even if the locale
isn't.

Closes #1685.
2014-01-12 14:59:40 -08:00
Thomas Goyne 71cd017f0f Merge pull request #8 from computerfan/patch-1
Update Simplified Chinese translations
2014-01-12 06:10:52 -08:00
computerfan 5f3b4d1d53 Update and modify Chinese translations. 2014-01-12 17:46:45 +08:00
Thomas Goyne 1c07f92d02 Don't modify the "YCbCr Matrix" header when dummy video is opened
Color matching to dummy video makes zero sense, and setting it to None
results in breakage when someone opens dummy video for an already
typeset script.

Closes #1690.
2014-01-11 15:47:28 -08:00
Thomas Goyne cf79e521e4 Fix potential crash when a thesaurus finishes loading 2014-01-11 07:48:27 -08:00
Thomas Goyne 5cfb76fe9a Reenable shift-enter in the translation assistant
Newlines in the text are converted to \N, so no reason not to allow it
there.

Closes #1691.
2014-01-11 07:47:19 -08:00
Thomas Goyne 15280b4561 Delete some old unused stuff 2014-01-11 07:29:07 -08:00
Thomas Goyne 75df295fc0 Rearrage SinkMessage to eliminate padding 2014-01-11 07:29:04 -08:00
Thomas Goyne af544f05af Fix non-pch compilation 2014-01-11 07:28:38 -08:00
Thomas Goyne c19a1c7641 Delete unused copy-and-shift constructor for TimeRange 2014-01-11 07:28:23 -08:00
Tom Maneiro 6617d52178 Update Spanish translation. Closes #1687. 2014-01-06 08:21:48 -08:00
Thomas Goyne 3747d436cc Convert Factory to variadic templates 2014-01-06 08:19:39 -08:00
Thomas Goyne a8492fc02d Fix directory iteration on Vista
FindExInfoBasic was added in Windows 7, not Vista.
2014-01-05 10:04:25 -08:00
Thomas Goyne f71b380f01 Fix compilation with wx built with --enable-stl
--enable-stl replaces the implicit conversion to char/wchar_t* with one
to std::[w]string. This breaks conversions to boost::filesytem::path and
makes some ternaries ambiguous (which GCC helpfully reports as no
conversion existing rather than an ambiguous conversion).
2014-01-05 10:04:23 -08:00
Thomas Goyne 46315d872f Add a better error message when a hotkey is set for an invalid command 2014-01-03 16:56:18 -08:00
Thomas Goyne 40ddfa8e59 Fix typo in help text 2014-01-03 07:42:12 -08:00
صفا الفليج b57f0a9c6d Update arabic translation 2014-01-03 07:42:10 -08:00
Thomas Goyne afd69725fc Build with -dead_strip on OS X
Bumps 3.5 MB off the binary and doesn't seem to break anything.
2014-01-02 16:35:08 -08:00
Thomas Goyne fc63df571b Use -Werror for compiler flag support checks so that they actually work 2014-01-02 16:35:08 -08:00
Thomas Goyne a433a3f5e4 Silence unused local typedef warnings from gcc+boost 2014-01-02 16:35:08 -08:00
Thomas Goyne dce9dbf211 Silence warnings from other people's code 2014-01-02 16:35:08 -08:00
Thomas Goyne 1cbf20f8ab Work around wxGTK issues with time edits
Modifying the contents of a text control after IM processing happens in
the same cycle of the event loop seems to be seriously broken. Work
around this by disabling IM processing for time edits, as it should
never be relevant for them anyway.

Closes #1679. Closes #1680.
2014-01-02 11:47:15 -08:00
Thomas Goyne 5298634721 Fix infinite loop of error messages when an invalid command is displayed in the hotkey editor 2014-01-01 19:20:50 -08:00
Thomas Goyne 1d69efc35e Kill the Update Dependencies project
Move downloading the ICU data file to the ICU project, since that's the
only thing that was left.
2014-01-01 14:27:26 -08:00
Thomas Goyne 5d38a9c585 Also return full paths from aegisub.dialog.save 2014-01-01 11:46:27 -08:00
Thomas Goyne 418e1cad98 Fix some warnings when compiling with gcc 2014-01-01 10:28:10 -08:00
Thomas Goyne d21c33df31 Grab the .mo files for the installed from the po directory
Grabbing them from the package's src directory just adds another step
that needs to be done manually whenever a translation changes.
2014-01-01 09:39:49 -08:00
Thomas Goyne 56701605ff Port BuildTasks to C#
VS Express Edition doesn't support F#.
2014-01-01 09:20:37 -08:00
Thomas Goyne 75ecb0c2a8 Move fftw3 to a git submodule and update to 3.3.3 2014-01-01 07:36:53 -08:00
Thomas Goyne 11581ccd28 Bump copyright years 2014-01-01 07:22:37 -08:00
Thomas Goyne eb839ded82 Fix typo in readme 2014-01-01 07:13:25 -08:00
Thomas Goyne 58f35cd31c Merge pull request #7 from Leinad4Mind/patch-2
Update pt_PT.po due to 3.1.0 changes
2013-12-30 19:55:13 -08:00
Daniel Mota 5832b55d3f Update pt_PT.po due to 3.1.0 changes 2013-12-30 02:49:30 +00:00
Thomas Goyne 20b4515c24 Fix potential use-after-frees on redo
Don't delete the old copy of the file until after the new version is
committed to avoid a use-after-free when code tries to do things with
the active line in a COMMIT_NEW handler, as just trying to avoid doing
that hasn't really worked out.
2013-12-29 11:44:22 -08:00
Thomas Goyne 21b9fe1405 Replace the standard Lua include path entirely on Windows
The default Lua include path is encoded with the local charset rather
than UTF-8. This causes problems when the working directory includes
non-latin-1 characters which are valid in the local charset, as Aegisub
expects the string to be UTF-8. As the default path isn't very useful on
Windows (on other platforms it could potentially include things like
luarocks-installed modules), just clear it.

Closes #1676.
2013-12-27 14:52:01 -08:00
doplank 0a5a26a74d Update Indonesian translation 2013-12-27 09:56:43 -08:00
Thomas Goyne f0d35a1cf3 Retinafy the video display 2013-12-27 09:56:39 -08:00
Thomas Goyne c8368a500b Dynamically switch to the retina toolbar icons as appropriate 2013-12-27 09:29:53 -08:00
Thomas Goyne f4a6d90db4 Use retina icons for the main toolbar if first opened on a retina display 2013-12-27 09:29:53 -08:00
Thomas Goyne b4ed6a3b1a Add 48x48 and 64x64 icons 2013-12-27 09:29:53 -08:00
Thomas Goyne 55ff9bfd50 Simplify HelpButton a little
Switch to flat_map for trivially less memory usage and just use a global
map rather than a heap-allocated map since it's not
(de)initialization-order sensitive.
2013-12-26 17:43:55 -08:00
Thomas Goyne 6ca0349fc8 Simplify icon handling
Eliminate the pointless runtime command name -> icon map and just make
commands responsible for their icons. Don't bother predecoding and
caching icons since it wastes some RAM (~10 MB) and decoding icons takes
a trivial amount of time.

Fix a few places where icons were being set for the wrong command names.
2013-12-26 17:43:50 -08:00
Thomas Goyne 2ef352d365 Add an option to skip all of the slow configure checks
Cuts the total runtime of the configure script from 19 seconds to 5
seconds for me.
2013-12-24 16:34:19 -08:00
Thomas Goyne 6baa096a64 Add configure check to verify that boost was built with ICU support 2013-12-24 16:34:17 -08:00
Thomas Goyne 1645182b5d Add dependency on libaegisub for the tools directory 2013-12-24 12:41:42 -08:00
Thomas Goyne 5202829fbf Add stuff to .gitignore 2013-12-24 12:33:03 -08:00
Thomas Goyne 3e0ef08031 Merge the translations into the desktop file on install. Closes #1109. 2013-12-24 11:03:09 -08:00
Thomas Goyne 615f3b4880 Explicitly link boost.chrono
Boost.thread sometimes fails to link without this.
2013-12-24 10:16:05 -08:00
Thomas Goyne f95f2dcd25 Refactor spellchecker language listing 2013-12-24 09:42:20 -08:00
Thomas Goyne dbf5af1d49 Load the thesaurus dictionary asynchronously 2013-12-24 09:26:29 -08:00
Thomas Goyne 6957cd76a6 Refactor thesaurus language listing a bit 2013-12-24 09:25:45 -08:00
Thomas Goyne 6a193f280e Use a flat_map for the thesaurus index 2013-12-24 09:25:39 -08:00
Thomas Goyne d9a2669389 Add tool to repack thesaurus dictionaries
The standard MyThes dictionaries include words that we don't support
(nearly half the entries in the English dictionary have speaces in them)
which waste space, and they aren't UTF-8 which slows down loading as we
need to convert them.

Knocks a total of 10 MB off the thesaurus dictionaries.
2013-12-24 09:23:49 -08:00
Thomas Goyne c28a02a34d Don't overwrite alpha when using the color picker screen dropper 2013-12-24 09:23:32 -08:00
Thomas Goyne f534205a91 Make line_iterator less slow 2013-12-24 09:23:28 -08:00
Thomas Goyne 45726bea3c Fix loading automation script names from subtitle files 2013-12-23 11:46:52 -08:00
Thomas Goyne 22e4a8bd58 Ignore errors when canonicalizing paths for automation
It's only being done to make the error reporting prettier, so it failing
shouldn't block the loading of the file.
2013-12-23 11:37:20 -08:00
Thomas Goyne 41ce8d7c31 More crash log writing fixes 2013-12-23 10:19:01 -08:00
Thomas Goyne 40da549a56 Set the path to write crash recovery files to correctly 2013-12-23 10:00:24 -08:00
Thomas Goyne 1601c9c68d Handle uncaught exceptions thrown from more places 2013-12-23 09:07:20 -08:00
Thomas Goyne 3d6cbc8c99 Don't spam the user with many dialogs when pasting invalid styles
Just show a single error dialog regardless of the number of styles that
failed to parse.
2013-12-23 07:54:13 -08:00
Thomas Goyne 3c8160f1e3 Preserve the detached video dialog size when changing tools
The relayout to handle the changed subtoolbar size was fitting the
dialog to the size of the video, which was rather undesirable.
2013-12-21 08:25:01 -08:00
Thomas Goyne 32acb6067b Fix the default angle for styles 2013-12-16 20:23:02 -08:00
2415 changed files with 291036 additions and 288709 deletions

234
.github/workflows/ci.yml vendored Normal file
View File

@ -0,0 +1,234 @@
name: Meson CI
on:
push:
branches:
- master
- feature
- cibuilds
pull_request:
branches:
- master
- feature
workflow_dispatch:
jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: false
matrix:
config:
- name: Windows MSVC Release
os: windows-latest
msvc: true
buildtype: release
args: >-
-Ddefault_library=static
--force-fallback-for=zlib,harfbuzz,freetype2,fribidi,libpng
-Dfreetype2:harfbuzz=disabled
-Dharfbuzz:freetype=disabled
-Dharfbuzz:cairo=disabled
-Dharfbuzz:glib=disabled
-Dharfbuzz:gobject=disabled
-Dharfbuzz:tests=disabled
-Dharfbuzz:docs=disabled
-Dharfbuzz:icu=disabled
-Dfribidi:tests=false
-Dfribidi:docs=false
-Dlibass:fontconfig=disabled
-Davisynth=enabled
-Dbestsource=enabled
-Dvapoursynth=enabled
- name: Windows MSVC Release (wx master)
os: windows-latest
msvc: true
buildtype: release
args: >-
-Ddefault_library=static
--force-fallback-for=zlib,harfbuzz,freetype2,fribidi,libpng
-Dfreetype2:harfbuzz=disabled
-Dharfbuzz:freetype=disabled
-Dharfbuzz:cairo=disabled
-Dharfbuzz:glib=disabled
-Dharfbuzz:gobject=disabled
-Dharfbuzz:tests=disabled
-Dharfbuzz:docs=disabled
-Dharfbuzz:icu=disabled
-Dfribidi:tests=false
-Dfribidi:docs=false
-Dlibass:fontconfig=disabled
-Davisynth=enabled
-Dbestsource=enabled
-Dvapoursynth=enabled
-Dwx_version='3.3.0'
#- {
# name: Windows MinGW,
# os: windows-latest,
# msvc: false
#}
- {
name: Ubuntu Debug,
os: ubuntu-latest,
buildtype: debugoptimized,
args: ''
}
- {
name: Ubuntu Release,
os: ubuntu-latest,
buildtype: release,
args: ''
}
- name: Ubuntu AppImage
os: ubuntu-22.04
buildtype: release
appimage: true
# distro ffms is currently broken
args: >-
--prefix=/usr
-Dbuild_appimage=true
-Ddefault_library=static
--force-fallback-for=ffms2
-Davisynth=enabled
-Dbestsource=enabled
-Dvapoursynth=enabled
- {
name: macOS Release,
os: macos-12,
buildtype: release,
args: -Ddefault_library=static -Dbuild_osx_bundle=true -Dlocal_boost=true -Dvapoursynth=enabled --force-fallback-for=ffms2
}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: '0'
- uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Setup Meson
run: |
python -m pip install --upgrade pip setuptools
pip install meson
- name: Setup MSVC
if: matrix.config.os == 'windows-latest' && matrix.config.msvc == true
uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies (Windows)
if: matrix.config.os == 'windows-latest'
run: |
choco install ninja innosetup
$moonscripturl = "https://github.com/leafo/moonscript/releases/download/win32-v0.5.0/moonscript-187bac54ee5a7450013e9c38e005a0e671b76f45.zip"
mkdir moonscript
Invoke-WebRequest -Uri $moonscripturl -OutFile ".\moonscript\moonscript.zip"
pushd moonscript
7z e moonscript.zip
Get-Location | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
popd
$gettexturl = "https://github.com/mlocati/gettext-iconv-windows/releases/download/v0.21-v1.16/gettext0.21-iconv1.16-static-64.zip"
Invoke-WebRequest -Uri $gettexturl -OutFile ".\gettext.zip"
Expand-Archive ".\gettext.zip" -DestinationPath gettext
pushd gettext/bin
Get-Location | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
popd
- name: Install dependencies (MacOS)
if: matrix.config.os == 'macos-12'
run: |
export HOMEBREW_NO_INSTALL_CLEANUP=1
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
# Skip brew update for now, see https://github.com/actions/setup-python/issues/577
# brew update
brew install luarocks ninja
luarocks install luafilesystem 1.8.0
luarocks install moonscript --dev
brew install libass zlib ffms2 fftw hunspell
brew install pulseaudio # NO OpenAL in github CI
- name: Install dependencies (Linux)
if: startsWith(matrix.config.os, 'ubuntu-')
run: |
sudo apt-get update
sudo apt-get install ninja-build build-essential libx11-dev libwxgtk3.0-gtk3-dev libfreetype6-dev pkg-config libfontconfig1-dev libass-dev libasound2-dev libffms2-dev intltool libboost-all-dev libhunspell-dev libuchardet-dev libpulse-dev libopenal-dev libjansson-dev nasm
- name: Configure
run: meson setup build ${{ matrix.config.args }} -Dbuildtype=${{ matrix.config.buildtype }}
- name: Build
run: meson compile -C build
- name: Run test
run: meson test -C build --verbose "gtest main"
# Windows artifacts
- name: Generate Windows installer
if: matrix.config.os == 'windows-latest'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run:
meson compile win-installer -C build
- name: Generate Windows portable installer
if: matrix.config.os == 'windows-latest'
run: cd build && ninja win-portable
- name: Upload artifacts - win_installer
uses: actions/upload-artifact@v3
if: matrix.config.os == 'windows-latest'
with:
name: ${{ matrix.config.name }} - installer
path: build/Aegisub-*.exe
if-no-files-found: error
- name: Upload artifacts - portable.zip
uses: actions/upload-artifact@v3
if: matrix.config.os == 'windows-latest'
with:
name: ${{ matrix.config.name }} - portable
path: build/aegisub-portable-64.zip
# macOS artifacts
- name: Generate macOS installer
if: matrix.config.os == 'macos-12'
run: |
meson compile osx-bundle -C build
meson compile osx-build-dmg -C build
- name: Upload artifacts - macOS dmg
uses: actions/upload-artifact@v3
if: matrix.config.os == 'macos-12'
with:
name: ${{ matrix.config.name }} - installer
path: build/Aegisub-*.dmg
if-no-files-found: error
# Linux artifacts (AppImage)
- name: Generate AppImage
if: matrix.config.appimage
run: |
mkdir -p appimage/appdir
meson install -C build --destdir=../appimage/appdir
cd appimage
sudo apt-get install libfuse2
curl -L "https://github.com/linuxdeploy/linuxdeploy/releases/download/1-alpha-20220822-1/linuxdeploy-x86_64.AppImage" -o linuxdeploy
curl -L "https://github.com/AppImage/AppImageKit/releases/download/13/appimagetool-x86_64.AppImage" -o appimagetool
chmod +x linuxdeploy appimagetool
./linuxdeploy --appdir appdir --desktop-file=appdir/aegisub.desktop
./appimagetool appdir
- name: Upload artifacts - Linux AppImage
uses: actions/upload-artifact@v3
if: matrix.config.appimage
with:
name: ${{ matrix.config.name }}
path: appimage/*.AppImage
if-no-files-found: error

123
.gitignore vendored
View File

@ -1,80 +1,49 @@
*.App
*.[oadi]
*.ass
*.avi
*.bz2
*.cache
*.dep
*.dll
*.dmg
*.exe
*.gch
*.gz
*.idb
*.ilk
*.log
*.manifest
*.mkv
*.mo
*.ncb
*.obj
*.orig
*.patch
*.pch
*.pdb
*.sdf
*.so
*.srt
*.suo
*.swp
*.ts
*.user
*.vsp
*.y4m
*.zip
*~
/tests/data
bin
lib
obj
ipch
automation/vapoursynth/__pycache__
packages/desktop/aegisub.desktop
packages/desktop/aegisub.desktop.template
src/libresrc/bitmap.cpp
src/libresrc/bitmap.h
src/libresrc/default_config.cpp
src/libresrc/default_config.h
src/libresrc/default_config_platform.json
tests/*.json
tests/run
tools/osx-bundle-restart-helper
tools/repack-thes-dict
tools/repack-thes-dict.dSYM
.lvimrc
.syntastic_cpp_config
BuildLog.htm
Makefile.inc
acconf.h
acconf.h.in
aclocal.m4
aegisub/conf.sh
aegisub/desktop/aegisub.desktop
aegisub/libaegisub/libaegisub-3.0.so.3
aegisub/reporter/reporter-3.0
aegisub/src/aegisub
aegisub/src/aegisub-3.0
aegisub/src/libresrc/bitmap.cpp
aegisub/src/libresrc/bitmap.h
aegisub/src/libresrc/default_config.cpp
aegisub/src/libresrc/default_config.h
aegisub/src/libresrc/default_config_platform.json
aegisub/tools/common-respack
aegisub/tools/osx-bundle-restart-helper
aegisub/tools/osx-bundle.sed
autom4te.cache
config.log
config.status
config_windows.h
configure
svn-revision.h
svn_revision
svnmove.txt
git_version.h
git_version.xml
aegisub/tests/data
aegisub/tests/run
aegisub/tests/*.json
# Platform-specific
.DS_Store
/packages
.nuget
/aegisub/include
/deps/fftw
# Meson
build*/
subprojects/avisynth
subprojects/bestsource/
subprojects/boost*/
subprojects/cairo*
subprojects/dav1d
subprojects/ffmpeg
subprojects/ffms2
subprojects/fontconfig*
subprojects/freetype2
subprojects/fribidi
subprojects/glib*
subprojects/googletest-*
subprojects/harfbuzz
subprojects/icu
subprojects/jansson
subprojects/libass
subprojects/libffi*
subprojects/libpng-*
subprojects/luajit
subprojects/nasm-*
subprojects/packagecache
subprojects/proxy-libintl*
subprojects/wxWidgets
subprojects/zlib-*
subprojects/dirent-*
subprojects/hunspell-*
subprojects/uchardet-*
subprojects/vapoursynth

52
.gitmodules vendored
View File

@ -1,52 +0,0 @@
[submodule "deps/fribidi"]
path = deps/fribidi
url = git://anongit.freedesktop.org/fribidi/fribidi
ignore = dirty
[submodule "deps/freetype2"]
path = deps/freetype2
url = git://git.sv.nongnu.org/freetype/freetype2.git
ignore = dirty
[submodule "deps/zlib"]
path = deps/zlib
url = git://github.com/madler/zlib.git
ignore = dirty
[submodule "deps/wxWidgets"]
path = deps/wxWidgets
url = git://github.com/wxWidgets/wxWidgets.git
ignore = dirty
[submodule "deps/googletest"]
path = deps/googletest
url = git://github.com/svn2github/googletest.git
ignore = dirty
[submodule "deps/ffmpeg"]
path = deps/ffmpeg
url = git://source.ffmpeg.org/ffmpeg.git
ignore = dirty
[submodule "deps/ffms2"]
path = deps/ffms2
url = git://github.com/FFMS/ffms2.git
branch = master
ignore = dirty
[submodule "deps/fontconfig"]
path = deps/fontconfig
url = git://github.com/tgoyne/fontconfig.git
branch = msvc
ignore = dirty
[submodule "deps/libass"]
path = deps/libass
url = https://code.google.com/p/libass/
branch = master
[submodule "deps/icu"]
path = deps/icu
url = git://github.com/sillsdev/icu4c.git
branch = trunk
ignore = dirty
[submodule "deps/boost"]
path = deps/boost
url = https://github.com/boostorg/boost.git
ignore = dirty
[submodule "deps/lua"]
path = deps/lua
url = git://github.com/ittner/Lua-experimentation.git
branch = lua51
ignore = dirty

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
</configuration>

View File

@ -1,150 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">$(MSBuildProjectDirectory)\..\</SolutionDir>
<!-- Enable the restore command to run before builds -->
<RestorePackages Condition=" '$(RestorePackages)' == '' ">true</RestorePackages>
<!-- Property that enables building a package from a project -->
<BuildPackage Condition=" '$(BuildPackage)' == '' ">false</BuildPackage>
<!-- Determines if package restore consent is required to restore packages -->
<RequireRestoreConsent Condition=" '$(RequireRestoreConsent)' != 'false' ">false</RequireRestoreConsent>
<!-- Download NuGet.exe if it does not already exist -->
<DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">true</DownloadNuGetExe>
</PropertyGroup>
<ItemGroup Condition=" '$(PackageSources)' == '' ">
<!-- Package sources used to restore packages. By default will used the registered sources under %APPDATA%\NuGet\NuGet.Config -->
<!--
<PackageSource Include="https://nuget.org/api/v2/" />
<PackageSource Include="https://my-nuget-source/nuget/" />
-->
</ItemGroup>
<PropertyGroup Condition=" '$(OS)' == 'Windows_NT'">
<!-- Windows specific commands -->
<NuGetToolsPath>$([System.IO.Path]::Combine($(SolutionDir), ".nuget"))</NuGetToolsPath>
<PackagesConfig>$([System.IO.Path]::Combine($(ProjectDir), "packages.config"))</PackagesConfig>
</PropertyGroup>
<PropertyGroup Condition=" '$(OS)' != 'Windows_NT'">
<!-- We need to launch nuget.exe with the mono command if we're not on windows -->
<NuGetToolsPath>$(SolutionDir).nuget</NuGetToolsPath>
<PackagesConfig>packages.config</PackagesConfig>
</PropertyGroup>
<PropertyGroup>
<!-- NuGet command -->
<NuGetExePath Condition=" '$(NuGetExePath)' == '' ">$(NuGetToolsPath)\nuget.exe</NuGetExePath>
<PackageSources Condition=" $(PackageSources) == '' ">@(PackageSource)</PackageSources>
<NuGetCommand Condition=" '$(OS)' == 'Windows_NT'">"$(NuGetExePath)"</NuGetCommand>
<NuGetCommand Condition=" '$(OS)' != 'Windows_NT' ">mono --runtime=v4.0.30319 $(NuGetExePath)</NuGetCommand>
<PackageOutputDir Condition="$(PackageOutputDir) == ''">$(TargetDir.Trim('\\'))</PackageOutputDir>
<RequireConsentSwitch Condition=" $(RequireRestoreConsent) == 'true' ">-RequireConsent</RequireConsentSwitch>
<!-- Commands -->
<RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch) -solutionDir "$(SolutionDir) "</RestoreCommand>
<BuildCommand>$(NuGetCommand) pack "$(ProjectPath)" -p Configuration=$(Configuration) -o "$(PackageOutputDir)" -symbols</BuildCommand>
<!-- We need to ensure packages are restored prior to assembly resolve -->
<ResolveReferencesDependsOn Condition="$(RestorePackages) == 'true'">
RestorePackages;
$(ResolveReferencesDependsOn);
</ResolveReferencesDependsOn>
<!-- Make the build depend on restore packages -->
<BuildDependsOn Condition="$(BuildPackage) == 'true'">
$(BuildDependsOn);
BuildPackage;
</BuildDependsOn>
</PropertyGroup>
<Target Name="CheckPrerequisites">
<!-- Raise an error if we're unable to locate nuget.exe -->
<Error Condition="'$(DownloadNuGetExe)' != 'true' AND !Exists('$(NuGetExePath)')" Text="Unable to locate '$(NuGetExePath)'" />
<SetEnvironmentVariable EnvKey="VisualStudioVersion" EnvValue="$(VisualStudioVersion)" Condition=" '$(VisualStudioVersion)' != '' AND '$(OS)' == 'Windows_NT' " />
<!--
Take advantage of MsBuild's build dependency tracking to make sure that we only ever download nuget.exe once.
This effectively acts as a lock that makes sure that the download operation will only happen once and all
parallel builds will have to wait for it to complete.
-->
<MsBuild Targets="_DownloadNuGet" Projects="$(MSBuildThisFileFullPath)" Properties="Configuration=NOT_IMPORTANT" />
</Target>
<Target Name="_DownloadNuGet">
<DownloadNuGet OutputFilename="$(NuGetExePath)" Condition=" '$(DownloadNuGetExe)' == 'true' AND !Exists('$(NuGetExePath)')" />
</Target>
<Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
<Exec Command="$(RestoreCommand)"
Condition="'$(OS)' != 'Windows_NT' And Exists('$(PackagesConfig)')" />
<Exec Command="$(RestoreCommand)"
LogStandardErrorAsError="true"
Condition="'$(OS)' == 'Windows_NT' And Exists('$(PackagesConfig)')" />
</Target>
<Target Name="BuildPackage" DependsOnTargets="CheckPrerequisites">
<Exec Command="$(BuildCommand)"
Condition=" '$(OS)' != 'Windows_NT' " />
<Exec Command="$(BuildCommand)"
LogStandardErrorAsError="true"
Condition=" '$(OS)' == 'Windows_NT' " />
</Target>
<UsingTask TaskName="DownloadNuGet" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
<ParameterGroup>
<OutputFilename ParameterType="System.String" Required="true" />
</ParameterGroup>
<Task>
<Reference Include="System.Core" />
<Using Namespace="System" />
<Using Namespace="System.IO" />
<Using Namespace="System.Net" />
<Using Namespace="Microsoft.Build.Framework" />
<Using Namespace="Microsoft.Build.Utilities" />
<Code Type="Fragment" Language="cs">
<![CDATA[
try {
OutputFilename = Path.GetFullPath(OutputFilename);
Log.LogMessage("Downloading latest version of NuGet.exe...");
WebClient webClient = new WebClient();
webClient.DownloadFile("https://nuget.org/nuget.exe", OutputFilename);
return true;
}
catch (Exception ex) {
Log.LogErrorFromException(ex);
return false;
}
]]>
</Code>
</Task>
</UsingTask>
<UsingTask TaskName="SetEnvironmentVariable" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
<ParameterGroup>
<EnvKey ParameterType="System.String" Required="true" />
<EnvValue ParameterType="System.String" Required="true" />
</ParameterGroup>
<Task>
<Using Namespace="System" />
<Code Type="Fragment" Language="cs">
<![CDATA[
try {
Environment.SetEnvironmentVariable(EnvKey, EnvValue, System.EnvironmentVariableTarget.Process);
}
catch {
}
]]>
</Code>
</Task>
</UsingTask>
</Project>

View File

@ -1,398 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Aegisub", "aegisub\build\Aegisub\Aegisub.vcxproj", "{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}"
ProjectSection(ProjectDependencies) = postProject
{15C79E75-F5F6-451D-B870-94ED02AF257E} = {15C79E75-F5F6-451D-B870-94ED02AF257E}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "csrihelper", "aegisub\build\csrihelper\csrihelper.vcxproj", "{C832EAF3-860D-4373-A02C-933626B47A5E}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hunspell", "aegisub\build\hunspell\hunspell.vcxproj", "{CC791693-6B28-40AC-879D-64A6C16468E3}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaegisub", "aegisub\build\libaegisub\libaegisub.vcxproj", "{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libiconv", "aegisub\build\libiconv\libiconv.vcxproj", "{965054D2-44F2-4EB2-9879-051CC3D7EF08}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libresrc", "aegisub\build\libresrc\libresrc.vcxproj", "{BD00D65F-24DA-4784-8860-3B972EA125FC}"
ProjectSection(ProjectDependencies) = postProject
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC} = {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8} = {08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua51", "aegisub\build\lua51\lua51.vcxproj", "{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "respack", "aegisub\build\respack\respack.vcxproj", "{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "universalchardet", "aegisub\build\universalchardet\universalchardet.vcxproj", "{7B56955D-5162-4698-AA5B-47484EDC8783}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fftw", "aegisub\build\fftw\fftw.vcxproj", "{EA3DCC95-2423-4EA0-A508-7A427B4C0594}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "aegisub\build\freetype2\freetype.vcxproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fontconfig", "aegisub\build\fontconfig\fontconfig.vcxproj", "{AD56899E-961B-47B7-BD0F-14D0DA50D141}"
ProjectSection(ProjectDependencies) = postProject
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B} = {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}
EndProjectSection
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "BuildTasks", "aegisub\build\BuildTasks\BuildTasks.fsproj", "{15C79E75-F5F6-451D-B870-94ED02AF257E}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fribidi", "aegisub\build\fribidi\fribidi.vcxproj", "{FB8E8D19-A4D6-4181-943C-282075F49B41}"
ProjectSection(ProjectDependencies) = postProject
{15C79E75-F5F6-451D-B870-94ED02AF257E} = {15C79E75-F5F6-451D-B870-94ED02AF257E}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ffms2", "aegisub\build\ffms2\ffms2.vcxproj", "{AA137613-96A1-4388-8905-71345B4F8F87}"
ProjectSection(ProjectDependencies) = postProject
{F934AB7B-186B-4E96-B20C-A58C38C1B819} = {F934AB7B-186B-4E96-B20C-A58C38C1B819}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ffmpeg", "aegisub\build\ffmpeg\ffmpeg.vcxproj", "{F934AB7B-186B-4E96-B20C-A58C38C1B819}"
ProjectSection(ProjectDependencies) = postProject
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE} = {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "aegisub\build\zlib\zlib.vcxproj", "{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "! Update Dependencies", "aegisub\build\deps\deps.vcxproj", "{472212DF-99E8-4B73-9736-8500616D8A80}"
ProjectSection(ProjectDependencies) = postProject
{15C79E75-F5F6-451D-B870-94ED02AF257E} = {15C79E75-F5F6-451D-B870-94ED02AF257E}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{CEAEFCB9-3759-4D03-8D51-7287D7B7E7DF}"
ProjectSection(SolutionItems) = preProject
.nuget\NuGet.Config = .nuget\NuGet.Config
.nuget\NuGet.exe = .nuget\NuGet.exe
.nuget\NuGet.targets = .nuget\NuGet.targets
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxWidgets", "aegisub\build\wx\wxWidgets.vcxproj", "{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libass", "aegisub\build\libass\libass.vcxproj", "{8804F253-DA67-4CC4-926B-0CD2AEE5778D}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PortableInstaller", "aegisub\build\PortableInstaller\PortableInstaller.vcxproj", "{5B0E9978-E76F-4BBC-8194-228323F59B53}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "aegisub\build\boost\boost.vcxproj", "{A649D828-A399-4D81-ADEF-94CFDBA7847F}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "icu", "aegisub\build\icu\icu.vcxproj", "{F934AB7B-186B-4E96-B20C-A58C38C1B818}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "googletest", "aegisub\build\googletest\googletest.vcxproj", "{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tests", "aegisub\build\tests\tests.vcxproj", "{49766286-2B5D-4177-A860-BD7CE1846EEF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Debug-MinDep|Win32 = Debug-MinDep|Win32
Debug-MinDep|x64 = Debug-MinDep|x64
Debug-Tests|Win32 = Debug-Tests|Win32
Debug-Tests|x64 = Debug-Tests|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug|Win32.ActiveCfg = Debug|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug|Win32.Build.0 = Debug|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug|x64.ActiveCfg = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug|x64.Build.0 = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-MinDep|Win32.Build.0 = Debug|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-MinDep|x64.Build.0 = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-Tests|x64.ActiveCfg = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Debug-Tests|x64.Build.0 = Debug|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release|Win32.ActiveCfg = Release|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release|Win32.Build.0 = Release|Win32
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release|x64.ActiveCfg = Release|x64
{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release|x64.Build.0 = Release|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug|Win32.ActiveCfg = Debug|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug|Win32.Build.0 = Debug|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug|x64.ActiveCfg = Debug|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug|x64.Build.0 = Debug|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Debug-Tests|x64.ActiveCfg = Debug|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Release|Win32.ActiveCfg = Release|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Release|Win32.Build.0 = Release|Win32
{C832EAF3-860D-4373-A02C-933626B47A5E}.Release|x64.ActiveCfg = Release|x64
{C832EAF3-860D-4373-A02C-933626B47A5E}.Release|x64.Build.0 = Release|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug|Win32.ActiveCfg = Debug|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug|Win32.Build.0 = Debug|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug|x64.ActiveCfg = Debug|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug|x64.Build.0 = Debug|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Debug-Tests|x64.ActiveCfg = Debug|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Release|Win32.ActiveCfg = Release|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Release|Win32.Build.0 = Release|Win32
{CC791693-6B28-40AC-879D-64A6C16468E3}.Release|x64.ActiveCfg = Release|x64
{CC791693-6B28-40AC-879D-64A6C16468E3}.Release|x64.Build.0 = Release|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug|Win32.ActiveCfg = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug|Win32.Build.0 = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug|x64.ActiveCfg = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug|x64.Build.0 = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-MinDep|Win32.Build.0 = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-MinDep|x64.Build.0 = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-Tests|Win32.Build.0 = Debug|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-Tests|x64.ActiveCfg = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Debug-Tests|x64.Build.0 = Debug|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release|Win32.ActiveCfg = Release|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release|Win32.Build.0 = Release|Win32
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release|x64.ActiveCfg = Release|x64
{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release|x64.Build.0 = Release|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug|Win32.ActiveCfg = Debug|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug|Win32.Build.0 = Debug|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug|x64.ActiveCfg = Debug|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug|x64.Build.0 = Debug|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Debug-Tests|x64.ActiveCfg = Debug|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release|Win32.ActiveCfg = Release|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release|Win32.Build.0 = Release|Win32
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release|x64.ActiveCfg = Release|x64
{965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release|x64.Build.0 = Release|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug|Win32.ActiveCfg = Debug|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug|Win32.Build.0 = Debug|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug|x64.ActiveCfg = Debug|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug|x64.Build.0 = Debug|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-Tests|x64.ActiveCfg = Debug|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Release|Win32.ActiveCfg = Release|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Release|Win32.Build.0 = Release|Win32
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Release|x64.ActiveCfg = Release|x64
{BD00D65F-24DA-4784-8860-3B972EA125FC}.Release|x64.Build.0 = Release|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug|Win32.ActiveCfg = Debug|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug|Win32.Build.0 = Debug|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug|x64.ActiveCfg = Debug|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug|x64.Build.0 = Debug|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Debug-Tests|x64.ActiveCfg = Debug|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release|Win32.ActiveCfg = Release|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release|Win32.Build.0 = Release|Win32
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release|x64.ActiveCfg = Release|x64
{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release|x64.Build.0 = Release|x64
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug|Win32.ActiveCfg = Debug|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug|Win32.Build.0 = Debug|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug|x64.ActiveCfg = Debug|x64
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug|x64.Build.0 = Debug|x64
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Debug-Tests|x64.ActiveCfg = Debug|x64
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Release|Win32.ActiveCfg = Release|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Release|Win32.Build.0 = Release|Win32
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Release|x64.ActiveCfg = Release|x64
{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}.Release|x64.Build.0 = Release|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug|Win32.ActiveCfg = Debug|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug|Win32.Build.0 = Debug|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug|x64.ActiveCfg = Debug|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug|x64.Build.0 = Debug|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Debug-Tests|x64.ActiveCfg = Debug|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Release|Win32.ActiveCfg = Release|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Release|Win32.Build.0 = Release|Win32
{7B56955D-5162-4698-AA5B-47484EDC8783}.Release|x64.ActiveCfg = Release|x64
{7B56955D-5162-4698-AA5B-47484EDC8783}.Release|x64.Build.0 = Release|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|Win32.ActiveCfg = Debug|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|Win32.Build.0 = Debug|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|x64.ActiveCfg = Debug|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|x64.Build.0 = Debug|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug-Tests|x64.ActiveCfg = Debug|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|Win32.ActiveCfg = Release|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|Win32.Build.0 = Release|Win32
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|x64.ActiveCfg = Release|x64
{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|x64.Build.0 = Release|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.ActiveCfg = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.Build.0 = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.ActiveCfg = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.Build.0 = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug-Tests|x64.ActiveCfg = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.ActiveCfg = Release|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.Build.0 = Release|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.ActiveCfg = Release|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.Build.0 = Release|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug|Win32.ActiveCfg = Debug|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug|Win32.Build.0 = Debug|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug|x64.ActiveCfg = Debug|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug|x64.Build.0 = Debug|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Debug-Tests|x64.ActiveCfg = Debug|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release|Win32.ActiveCfg = Release|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release|Win32.Build.0 = Release|Win32
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release|x64.ActiveCfg = Release|x64
{AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release|x64.Build.0 = Release|x64
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug|Win32.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug|Win32.Build.0 = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug|x64.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug|x64.Build.0 = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug-MinDep|Win32.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug-MinDep|x64.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug-Tests|Win32.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Debug-Tests|x64.ActiveCfg = Debug|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Release|Win32.ActiveCfg = Release|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Release|Win32.Build.0 = Release|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Release|x64.ActiveCfg = Release|Any CPU
{15C79E75-F5F6-451D-B870-94ED02AF257E}.Release|x64.Build.0 = Release|Any CPU
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug|Win32.ActiveCfg = Debug|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug|Win32.Build.0 = Debug|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug|x64.ActiveCfg = Debug|x64
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug|x64.Build.0 = Debug|x64
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Debug-Tests|x64.ActiveCfg = Debug|x64
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Release|Win32.ActiveCfg = Release|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Release|Win32.Build.0 = Release|Win32
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Release|x64.ActiveCfg = Release|x64
{FB8E8D19-A4D6-4181-943C-282075F49B41}.Release|x64.Build.0 = Release|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug|Win32.ActiveCfg = Debug|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug|Win32.Build.0 = Debug|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug|x64.ActiveCfg = Debug|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug|x64.Build.0 = Debug|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Debug-Tests|x64.ActiveCfg = Debug|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Release|Win32.ActiveCfg = Release|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Release|Win32.Build.0 = Release|Win32
{AA137613-96A1-4388-8905-71345B4F8F87}.Release|x64.ActiveCfg = Release|x64
{AA137613-96A1-4388-8905-71345B4F8F87}.Release|x64.Build.0 = Release|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug|Win32.Build.0 = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug|x64.Build.0 = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Debug-Tests|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release|Win32.ActiveCfg = Release|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release|Win32.Build.0 = Release|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release|x64.ActiveCfg = Release|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release|x64.Build.0 = Release|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug|Win32.ActiveCfg = Debug|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug|Win32.Build.0 = Debug|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug|x64.ActiveCfg = Debug|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug|x64.Build.0 = Debug|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Debug-Tests|x64.ActiveCfg = Debug|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release|Win32.ActiveCfg = Release|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release|Win32.Build.0 = Release|Win32
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release|x64.ActiveCfg = Release|x64
{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release|x64.Build.0 = Release|x64
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug|Win32.ActiveCfg = Debug|Win32
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug|x64.ActiveCfg = Debug|x64
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{472212DF-99E8-4B73-9736-8500616D8A80}.Debug-Tests|x64.ActiveCfg = Debug|x64
{472212DF-99E8-4B73-9736-8500616D8A80}.Release|Win32.ActiveCfg = Debug|Win32
{472212DF-99E8-4B73-9736-8500616D8A80}.Release|x64.ActiveCfg = Debug|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug|Win32.ActiveCfg = Debug|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug|Win32.Build.0 = Debug|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug|x64.ActiveCfg = Debug|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug|x64.Build.0 = Debug|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Debug-Tests|x64.ActiveCfg = Debug|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release|Win32.ActiveCfg = Release|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release|Win32.Build.0 = Release|Win32
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release|x64.ActiveCfg = Release|x64
{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release|x64.Build.0 = Release|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug|Win32.ActiveCfg = Debug|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug|Win32.Build.0 = Debug|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug|x64.ActiveCfg = Debug|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug|x64.Build.0 = Debug|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Debug-Tests|x64.ActiveCfg = Debug|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release|Win32.ActiveCfg = Release|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release|Win32.Build.0 = Release|Win32
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release|x64.ActiveCfg = Release|x64
{8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release|x64.Build.0 = Release|x64
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug|Win32.ActiveCfg = Debug|Win32
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug|x64.ActiveCfg = Debug|x64
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Debug-Tests|x64.ActiveCfg = Debug|x64
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Release|Win32.ActiveCfg = Release|Win32
{5B0E9978-E76F-4BBC-8194-228323F59B53}.Release|x64.ActiveCfg = Release|x64
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug|Win32.ActiveCfg = Debug|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug|Win32.Build.0 = Debug|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug|x64.ActiveCfg = Debug|x64
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug|x64.Build.0 = Debug|x64
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Debug-Tests|x64.ActiveCfg = Debug|x64
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release|Win32.ActiveCfg = Release|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release|Win32.Build.0 = Release|Win32
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release|x64.ActiveCfg = Release|x64
{A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release|x64.Build.0 = Release|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug|Win32.Build.0 = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug|x64.Build.0 = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-MinDep|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-MinDep|x64.Build.0 = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-Tests|x64.ActiveCfg = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Debug-Tests|x64.Build.0 = Debug|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|Win32.ActiveCfg = Release|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|Win32.Build.0 = Release|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|x64.ActiveCfg = Release|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|x64.Build.0 = Release|x64
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|Win32.ActiveCfg = Debug|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|Win32.Build.0 = Debug|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|x64.ActiveCfg = Debug|x64
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|x64.Build.0 = Debug|x64
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-Tests|x64.ActiveCfg = Debug|x64
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|Win32.ActiveCfg = Release|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|Win32.Build.0 = Release|Win32
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|x64.ActiveCfg = Release|x64
{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|x64.Build.0 = Release|x64
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug|Win32.ActiveCfg = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug|Win32.Build.0 = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug|x64.ActiveCfg = Debug|x64
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug|x64.Build.0 = Debug|x64
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug-Tests|Win32.Build.0 = Debug|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Debug-Tests|x64.ActiveCfg = Debug|x64
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Release|Win32.ActiveCfg = Release|Win32
{49766286-2B5D-4177-A860-BD7CE1846EEF}.Release|x64.ActiveCfg = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

184
README.md
View File

@ -1,10 +1,113 @@
## arch1t3cht's Aegisub "fork"
Download release builds [here](https://github.com/arch1t3cht/Aegisub/releases), or the latest CI builds [here](https://github.com/arch1t3cht/Aegisub/actions).
The release page also has detailed list of all changes and new features. If you're interested in the technical details or want to compile yourself, read on.
### Don't we have enough Aegisub forks already??
We absolutely do, and I'm aware that adding another one [doesn't sound like](https://xkcd.com/927/) a [good idea on paper](https://cdn.discordapp.com/attachments/425357202963038208/1007103606421459004/unknown.png). However,
- None of the existing forks are completely satisfying at the moment:
- [wangqr's fork](https://github.com/wangqr/Aegisub) is actively maintained, but focussing more on stability. It's missing most of the modern features.
- [AegisubDC](https://github.com/Ristellise/AegisubDC) has the most modern features (in particular video-panning), but is Windows-only and not actively maintained anymore.
- [The TypesettingTools fork](https://github.com/TypesettingTools/Aegisub) is the one that will one day become the upstream version and builds relatively effortlessly on all operating systems, but at the moment it's not moving much. It's the base for this fork, and I hope to one day merge most of these additions into it.
- Only PR'ing the changes in here to various forks would cause even more chaos
- ~~I try to convince myself that this isn't really a "fork" in the traditional sense - one which aims to provide extended support and stability fixes. It's a collection of new feature additions which I built myself, together with some of the most important new features floating around other forks.~~ At this point it's probably too late to still be saying this. Still, the general mission hasn't changed. This fork collects new features and critical bugfixes, but won't be putting extra time into maintenance aspects like cleanup and refactors. Partly, this is also because any big refactors would make it harder to pull these changes into upstream repositories or future forks.
While this is usually also the version of Aegisub I'm currently using, I make no promises on stability. **Don't** use this version if you're just looking for any version of Aegisub - this is mostly intended for typesetting and other advanced usage.
### Organization
Being a collection of different feature additions, this repository consists of a set of branches for different features, so that they can easily be merged into other repositories. The [`feature`](https://github.com/arch1t3cht/Aegisub/tree/feature) branch merges together all the features I deem as currently usable. Due to the structure of the repository, I will be force-pushing to this branch and some of the individual branches very frequently, so they're not ideal for basing further branches on.
The `cibuilds` branch makes some CI builds of snapshots of `feature` at relevant points in time.
### Branch/Feature list
This list is for navigating the repository. Go to the [release page](https://github.com/arch1t3cht/Aegisub/releases) for a more structured changelog.
- [`folding`](https://github.com/arch1t3cht/Aegisub/tree/folding): Add the ability to visually group and collapse lines in the subtitle grid
- [`lua_api`](https://github.com/arch1t3cht/Aegisub/tree/lua_api): Add new functions to the Lua automation API, like controlling the selection or cursor in the text edit box
- [`vector_clip_actions`](https://github.com/arch1t3cht/Aegisub/tree/vector_clip_actions): Make the different modes of the vector clip tool (lines, bezier curves, adding points, etc) bindable to hotkeys
- [`color_picker_fix2`](https://github.com/arch1t3cht/Aegisub/tree/color_picker_fix2): Add an option (under "Interface") to restrict the color picker to the window, which fixes the color picker on Linux in a lot of cases.
- [`avisynth`](https://github.com/arch1t3cht/Aegisub/tree/avisynth): Reenable Avisynth support on Windows and enable Avisynth on Linux
- [`bestsource`](https://github.com/arch1t3cht/Aegisub/tree/bestsource): Add BestSource audio and video source. This source is slower than others by multiple orders of magnitude, but in exchange it can guarantee exact seeking.
- [`vapoursynth`](https://github.com/arch1t3cht/Aegisub/tree/vapoursynth): Add Vapoursynth audio and video source
- [`bugfixes`](https://github.com/arch1t3cht/Aegisub/tree/bugfixes): Various fixes necessary for compilation. Most branches are based on this.
- [`workarounds`](https://github.com/arch1t3cht/Aegisub/tree/workarounds): Same as `bugfixes`, but these are hacky fixes that probably shouldn't be pulled without more work.
- [`fixes`](https://github.com/arch1t3cht/Aegisub/tree/fixes): Miscellaneous bugfixes
- [`misc`](https://github.com/arch1t3cht/Aegisub/tree/misc): Other miscellaneous additions
- [`wangqr_gui`](https://github.com/arch1t3cht/Aegisub/tree/wangqr_gui): Merge wangqr's changes regarding the GUI. In particular, add high-DPI compatibility.
- [`misc_dc`](https://github.com/arch1t3cht/Aegisub/tree/misc_dc): Miscellaneous changes taken from AegisubDC
- [`xa2-ds`](https://github.com/arch1t3cht/Aegisub/tree/xa2-ds): Add XAudio2 backend and allow stereo playback for some other backends, by wangqr and Shinon.
- [`stereo`](https://github.com/arch1t3cht/Aegisub/tree/stereo): Add multi-channel support for the other audio backends where possible.
- [`video_panning_option`](https://github.com/arch1t3cht/Aegisub/tree/video_panning_option): Merge [moex3's video zoom and panning](https://github.com/TypesettingTools/Aegisub/pull/150), with several bugfixes and more options to control zoom behavior
- [`spectrum-frequency-mapping`](https://github.com/arch1t3cht/Aegisub/tree/spectrum-frequency-mapping): Merge EleonoreMizo's [spectrum display improvements](https://github.com/TypesettingTools/Aegisub/pull/94), and also make Shift+Scroll vertically zoom the audio display
- [`wangqr_time_video`](https://github.com/arch1t3cht/Aegisub/tree/wangqr_time_video): Merge wangqr's feature adding a tool for timing subtitles to changes in the video
### Troubleshooting
I'll gladly take any bug reports, but if you encounter an issue, please check first if it occurs only on my fork, or also on [earlier TSTools builds](https://github.com/TypesettingTools/Aegisub/actions).
If it wasn't introduced by my fork, I can still take a look, but I can't promise anything.
You can find me for support on various servers, including the cave and the TSTools server linked below.
#### Aegisub on Linux doesn't recognize my GTK theme
This is probably because you're building with wxgtk2. Building with wxgtk3 fixes this, but causes some problems of its own (notably the broken color picker, occasional crashes when opening file dialogs from automation scripts, and general layouting issues).
The exact way of switching depends on your Linux distribution, but essentially you need to ensure that `wx-config` or the next best variant of it points to wxgtk3. If it points to wxgtk2 by default and deinstalling wxgtk2 isn't an option, you can also temporarily move it out of the path or use a `native-file` in your meson project. Then, fully reconfigure meson using `meson configure --clearcache` and `meson setup --reconfigure`.
#### The video is desynced / Frames don't appear at the right time
This is probably due to the ffms2 seeking bug ([#394](https://github.com/FFMS/ffms2/issues/394)). On Windows, this specific regression shouldn't happen anymore. On Linux, you need to install the latest git version of ffms2 - for example the [`ffms2-git`](https://aur.archlinux.org/packages/ffms2-git) AUR package on Arch linux, or just compile it yourself.
If it's not because of this particular bug, you can also try an alternative video source like LSMASHSource via Avisynth or Vapoursynth, or BestSource.
#### On Windows: Aegisub crashes whenever I open a video
If you're compiling yourself, try adding `--force-fallback-for=zlib` to the meson options.
### Compilation
If you're just looking to install Aegisub, you might want to check out the [releases page](https://github.com/arch1t3cht/Aegisub/releases) or the [CI builds](https://github.com/arch1t3cht/Aegisub/actions) first.
For compilation on Windows, see the TSTools documentation below. Also check the [GitHub workflow](https://github.com/arch1t3cht/Aegisub/blob/cibuilds/.github/workflows/ci.yml) for the project arguments.
On Arch Linux, there is an AUR package called [aegisub-arch1t3cht-git](https://aur.archlinux.org/packages/aegisub-arch1t3cht-git). It's not maintained by me but seems to work.
On other Linux distributions or for manual compilation you can use this package or the [TSTools PKGBUILD](https://aur.archlinux.org/packages/aegisub-ttools-meson-git) as a reference, in particular for installing the necessary dependencies if you don't want to compile them yourself.
If all dependencies are installed:
- Install Meson
- Clone the repository
- In the repository, run `meson setup build --buildtype=release` for the default configuration. See below for further options.
- `cd` to the `build` directory and run `ninja`
- You'll get an `aegisub` binary in the `build` folder. To install it to a system-wide location, run `ninja install`. To install to `/usr` instead of `/usr/local`, pass `--prefix=/usr` when configuring or reconfiguring meson.
- When recompiling after pulling new commits, skip the `meson setup` setup and just immediately run `ninja` from the build directory - even when the build configuration changed.
#### Compilation flags
Some features are not enabled by default. To enable them, pass `-D<feature>=enabled` with the `meson setup` command:
- `-Davisynth=enabled`: Avisynth support
- `-Dbestsource=enabled`: BestSource
- `-Dvapoursynth=enabled`: Vapoursynth support
You can also disable options that are active by default in the same way. Check the file `meson_options.txt` for all options.
To change the options of an existing build directory, run `meson setup --reconfigure <new arguments>` from inside the `build` directory.
### Dependencies
Apart from the dependencies for the TSTools version, there are some additional dependencies. These are cloned and compiled from scratch if not found, but you might want to install binaries instead:
- `jansson`: For BestSource
- `ffmpeg`: Becomes a direct dependency when compiling with BestSource
- `avisynth` (or `avisynthplus`): Optional run-time dependency for the Avisynth source
- `vapoursynth`: Optional run-time dependency for the VapourSynth source
The following VapourSynth plugins are used by the default scripts set in the default configuration:
- [`lsmas`](https://github.com/AkarinVS/L-SMASH-Works): For LWLibavSource
- [`bas`](https://github.com/vapoursynth/bestaudiosource): For BestAudioSource
- [`wwxd`](https://github.com/dubhater/vapoursynth-wwxd) and [`scxvid`](https://github.com/dubhater/vapoursynth-scxvid) (depending on settings): For keyframe generation
# Aegisub
For binaries and general information [see the homepage](http://www.aegisub.org).
The bug tracker can be found at http://devel.aegisub.org.
The bug tracker can be found at https://github.com/Aegisub/Aegisub/issues.
Support is available on [the forums](http://forum.aegisub.org) or [on IRC](irc://irc.rizon.net/aegisub).
Support is available on [Discord](https://discord.com/invite/AZaVyPr) or [IRC](irc://irc.rizon.net/aegisub).
## Building Aegisub
@ -12,37 +115,72 @@ Support is available on [the forums](http://forum.aegisub.org) or [on IRC](irc:/
Prerequisites:
1. Visual Studio 2012. Express edition might work.
2. A recent Windows SDK
3. A recent DirectX SDK
4. A MSYS install with git and c99conv. Note that mingw is not required.
1. Visual Studio (Community edition of any recent version is fine)
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
2. InnoSetup, to build the regular installer
3. 7zip, to build the regular installer
4. Moonscript, to build the regular installer
All other dependencies are either stored in the repository or are included as submodules.
Building:
1. Clone Aegisub's repository recursively to fetch it and all submodules: `git clone --recursive git@github.com:Aegisub/Aegisub.git`
2. Disable autocrlf for ffmpeg, as its build system manages to not support Windows newlines: `cd aegisub/deps/ffmpeg && config --local core.autocrlf && git rm --cached -r . && git reset --hard`
3. Open Aegisub.sln
4. Build the "! Update Dependencies" project
5. Open the properties for the Aegisub project and set the location of MSYS in Configuration Properties > Aegisub > Library paths
6. Build Aegisub
7. Copy the contents of an existing Aegisub install into the aegisub/aegisub/bin directory (not strictly required, but you'll be missing a lot of functionality otherwise).
1. Clone Aegisub's repository: `git clone https://github.com/arch1t3cht/Aegisub.git`
2. From the Visual Studio "x64 Native Tools Command Prompt", generate the build directory: `meson build -Ddefault_library=static` (if building for release, add `--buildtype=release`)
3. Build with `cd build` and `ninja`
There's a pile of other files such as dictionaries, VSFilter and avisynth
You should now have a binary: `aegisub.exe`.
For actual development work you will probably want to mostly use the
"Debug-MinDep" configuration (which disables building most of the projects), as
the dependency checking is pretty slow.
Installer:
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.
You can generate the portable zip with `ninja win-portable` after a successful build.
### OS X
A vaguely recent version of Xcode and the corresponding command-line tools are required.
For personal usage, you can use pip and homebrew to install almost all of Aegisub's dependencies:
pip3 install meson
brew install cmake ninja pkg-config libass boost zlib ffms2 fftw hunspell
export LDFLAGS="-L/usr/local/opt/icu4c/lib"
export CPPFLAGS="-I/usr/local/opt/icu4c/include"
export PKG_CONFIG_PATH="/usr/local/opt/icu4c/lib/pkgconfig"
Once the dependencies are installed, build Aegisub with `meson build && meson compile -C build`.
#### Build dmg
```bash
meson build_static -Ddefault_library=static -Dbuildtype=debugoptimized -Dbuild_osx_bundle=true -Dlocal_boost=true
meson compile -C build_static
meson test -C build_static --verbose
meson compile osx-bundle -C build_static
meson compile osx-build-dmg -C build_static
```
## Updating Moonscript
From within the Moonscript repository, run `bin/moon bin/splat.moon -l moonscript moonscript/ > bin/moonscript.lua`.
Open the newly created `bin/moonscript.lua`, and within it make the following changes:
1. Prepend the final line of the file, `package.preload["moonscript"]()`, with a `return`, producing `return package.preload["moonscript"]()`.
2. Within the function at `package.preload['moonscript.base']`, remove references to `moon_loader`, `insert_loader`, and `remove_loader`. This means removing their declarations, definitions, and entries in the returned table.
3. Within the function at `package.preload['moonscript']`, remove the line `_with_0.insert_loader()`.
The file is now ready for use, to be placed in `automation/include` within the Aegisub repo.
## License
All source files in this repository are licensed under either 3-clause BSD or
ISC licenses. In practice, Aegisub binaries are usually GPL licensed due to the
dependencies.
All files in this repository are licensed under various GPL-compatible BSD-style licenses; see LICENCE and the individual source files for more information.
The official Windows and OS X builds are GPLv2 due to including fftw3.

View File

@ -1,2 +0,0 @@
* To be written.

View File

@ -1,90 +0,0 @@
include Makefile.inc
SUBDIRS += \
universalchardet \
libaegisub \
tools \
src \
automation \
desktop \
po
ifeq (yes, $(ENABLE_REPORTER))
SUBDIRS += reporter
endif
all: ;
ifeq (yes, $(BUILD_DARWIN))
osx-bundle:
$(BIN_SHELL) tools/osx-bundle.sh "$(AEGISUB_COMMAND)" "$(BIN_WX_CONFIG)" DICT_DIR=$(DICT_DIR)
osx-dmg: osx-bundle
codesign -s 'Mac Developer' --deep Aegisub.app || true
$(BIN_SHELL) tools/osx-dmg.sh "$(BUILD_VERSION_STRING)"
osx-tinderbox-bundle:
$(BIN_SHELL) tools/osx-bundle.sh "$(T_BUNDLE)" $(AEGISUB_VERSION_DATA) "$(BIN_WX_CONFIG)" DICT_DIR="$(DICT_DIR)"
osx-tinderbox-dmg:
$(BIN_SHELL) tools/osx-dmg.sh "$(T_DMG)" "$(T_BUNDLE)"
$(BIN_MV) "$(T_DMG).dmg" bundle.dmg
endif
EXTRA_DIST = \
INSTALL \
LICENCE \
README \
acinclude.m4 \
autogen.sh \
configure.in \
acconf.h.in\
configure \
build/git_version.h \
config.log \
config.sub \
config.guess \
install-sh \
Makefile.inc.in \
Makefile.target
# m4macros/
EXTRA_DIST += \
m4macros/ac_agi.m4 \
m4macros/ac_agi_mdcpucfg.m4 \
m4macros/ac_flag.m4 \
m4macros/agi_find_libheader.m4 \
m4macros/ax_check_gl.m4 \
m4macros/ax_lang_compiler_ms.m4 \
m4macros/ax_pthread.m4 \
m4macros/check_gnu_make.m4
# packages/osx_bundle/
EXTRA_DIST += \
packages/osx_bundle/Contents/Info.plist \
packages/osx_bundle/Contents/Resources/*.icns \
packages/osx_bundle/Contents/Resources/etc/fonts/fonts.conf \
packages/osx_bundle/Contents/Resources/etc/fonts/fonts.dtd \
packages/osx_bundle/Contents/Resources/etc/fonts/conf.d/*.conf
# packages/osx_dmg/
EXTRA_DIST += \
packages/osx_dmg/dmg_background.png \
packages/osx_dmg/dmg_set_style.applescript
DISTCLEANFILES += \
acconf.h \
configure \
acconf.h.in~ \
build/git_version.h \
Makefile.inc \
config.log \
acconf.h.in \
config.status \
autom4te.cache \
aclocal.m4 \
include Makefile.target

View File

@ -1,143 +0,0 @@
#########################
# AEGISUB FEATURE SUPPORT
#########################
HAVE_ALSA = @with_alsa@
HAVE_HUNSPELL = @with_hunspell@
HAVE_OPENAL = @with_openal@
HAVE_OSS = @with_oss@
HAVE_PORTAUDIO = @with_portaudio@
HAVE_FFMS2 = @with_ffms2@
HAVE_LIBPULSE = @with_libpulse@
###################
# PLATFORM SETTINGS
###################
BUILD_BSD = @build_bsd@
BUILD_DARWIN = @build_darwin@
BUILD_DEFAULT = @build_default@
BUILD_LINUX = @build_linux@
#######
# FLAGS
#######
CFLAGS = @CFLAGS@
CXXFLAGS = @CXXFLAGS@
CPPFLAGS = @CPPFLAGS@
CFLAGS_DEP = -MD -MP
LIBS = @LIBS@
LDFLAGS = @LDFLAGS@
INSTALL_FLAGS = -m 664
LIB_SHARED_LINK = -shared -Wl,-soname -Wl,$(LIB_SHARED_FULL)
LIB_SHARED_LINK_OSX = -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -compatibility_version $(LIB_VERSION) -current_version $(LIB_VERSION) -Wl,-single_module -mmacosx-version-min=10.7 -install_name ${CURDIR}/$(LIB_SHARED_FULL)
#########
# STRINGS
#########
AEGISUB_COMMAND = @AEGISUB_COMMAND@
AEGISUB_CATALOG = @AEGISUB_CATALOG@
BUILD_DATE = @BUILD_DATE@
PACKAGE_TARNAME = aegisub-@BUILD_GIT_VERSION_STRING@
PACKAGE_DEBUG = @PACKAGE_DEBUG@
BUILD_VERSION_STRING = @BUILD_GIT_VERSION_STRING@
#######
# PATHS
#######
P_PREFIX = @prefix@
prefix = ${P_PREFIX}
P_PREFIX_EXEC = @exec_prefix@
exec_prefix = ${P_PREFIX_EXEC}
P_BINDIR = @bindir@
P_SBINDIR = @sbindir@
P_LIBEXEC = @libexecdir@
P_DATAROOT = @datarootdir@
datarootdir = ${P_DATAROOT}
P_SYSCONF = @sysconfdir@
P_SHAREDSTATE = @sharedstatedir@
P_LOCALSTATE = @localstatedir@
P_INCLUDE = @includedir@
P_LIB = @libdir@
P_LOCALE = @localedir@
P_DESKTOP = @P_DESKTOP@
P_ICON = @P_ICON@
P_DATA = $(P_DATAROOT)/aegisub/
P_DOC = @docdir@
###############
# LIBRARY FLAGS
###############
CFLAGS_WX = @WX_CFLAGS@
CXXFLAGS_WX = @WX_CXXFLAGS@
CPPFLAGS_WX = @WX_CPPFLAGS@
LIBS_WX = @WX_LIBS@ -lz
CPPFLAGS_BOOST = @BOOST_CPPFLAGS@
LIBS_BOOST = @BOOST_LDFLAGS@ @BOOST_ASIO_LIB@ @BOOST_FILESYSTEM_LIB@ @BOOST_LOCALE_LIB@ @BOOST_REGEX_LIB@ @BOOST_SYSTEM_LIB@ @BOOST_THREAD_LIB@
CFLAGS_FFMS2 = @FFMS2_CFLAGS@
CFLAGS_FFTW3 = @FFTW3_CFLAGS@
CFLAGS_FONTCONFIG = @FONTCONFIG_CFLAGS@
CFLAGS_FREETYPE = @FREETYPE_CFLAGS@
CFLAGS_GL = @GL_CFLAGS@
CFLAGS_HUNSPELL = @HUNSPELL_CFLAGS@
CFLAGS_ICONV = @ICONV_CFLAGS@
CFLAGS_ICU = @ICU_I18N_CFLAGS@
CFLAGS_LIBASS = @LIBASS_CFLAGS@
CFLAGS_LIBCURL = @LIBCURL_CFLAGS@
CFLAGS_LUA = @LUA_CFLAGS@
CFLAGS_OPENAL = @OPENAL_CFLAGS@
CFLAGS_OSS = @OSS_CFLAGS@
CFLAGS_PORTAUDIO = @PORTAUDIO_CFLAGS@
CFLAGS_PTHREAD = @PTHREAD_CFLAGS@
CFLAGS_LIBPULSE = @LIBPULSE_CFLAGS@
CFLAGS_UCHARDET = -I../universalchardet
LIBS_ALSA = @ALSA_LIBS@
LIBS_FFMS2 = @FFMS2_LIBS@
LIBS_FFTW3 = @FFTW3_LIBS@
LIBS_FONTCONFIG = @FONTCONFIG_LIBS@
LIBS_FREETYPE = @FREETYPE_LIBS@
LIBS_GL = @GL_LIBS@
LIBS_HUNSPELL = @HUNSPELL_LIBS@
LIBS_ICONV = @ICONV_LIBS@
LIBS_ICU = @ICU_UC_LIBS@ @ICU_I18N_LIBS@
LIBS_LIBASS = @LIBASS_LIBS@
LIBS_LIBCURL = @LIBCURL_LIBS@
LIBS_LIBPULSE = @LIBPULSE_LIBS@
LIBS_LUA = @LUA_LIBS@
LIBS_OPENAL = @OPENAL_LIBS@
LIBS_PORTAUDIO = @PORTAUDIO_LIBS@
LIBS_PTHREAD = @PTHREAD_LIBS@
LIBS_UCHARDET ?= ../universalchardet/libuniversalchardet.a
#####################
# DEBUG / DEVELOPMENT
#####################
PRECOMPILED_HEADER = @enable_gcc_prec@
ENABLE_REPORTER = @ENABLE_REPORTER@
##########
# BINARIES
##########
BIN_AR = ar
BIN_RANLIB = ranlib
BIN_LN = ln
BIN_RM = rm
BIN_SHELL = @SHELL@
BIN_MV = mv
BIN_SED = sed
BIN_INSTALL = @INSTALL@
BIN_MSGMERGE = @MSGMERGE@
BIN_XGETTEXT = @XGETTEXT@
BIN_MSGFMT = @MSGFMT@
BIN_CC = @CC@
BIN_CXX = @CXX@
BIN_CP = cp
BIN_MKDIR = mkdir
BIN_MKDIR_P = mkdir -p
BIN_ECHO = echo
BIN_TOUCH = touch
BIN_TAR = tar
BIN_GZIP = gzip
BIN_WX_CONFIG = @WX_CONFIG_PATH@

View File

@ -1,203 +0,0 @@
# *** THERE ARE NO USER-EDITABLE ITEMS HERE. ***
#
# TODO:
# * Allow variables to be overridden on the CL.
.PHONY: all install clean subdirs $(SUBDIRS)
all: subdirs $(PROGRAM)
.DEFAULT_GOAL := all
ifneq (no, $(BUILD_LIB))
all: $(LIB) $(LIB_SHARED)
endif
OBJ = $(addsuffix .o, $(basename $(SRC)))
DEP = $(addsuffix .d, $(basename $(SRC)))
###################
# PLATFORM SPECIFIC
###################
ifeq (yes, $(BUILD_DARWIN))
CFLAGS += -mmacosx-version-min=10.7
CXXFLAGS += -mmacosx-version-min=10.7
LDFLAGS += -mmacosx-version-min=10.7
LIB_SHARED_LINK = $(LIB_SHARED_LINK_OSX)
endif
###########
# LIBRARIES
###########
$(LIB) : $(OBJ)
$(BIN_AR) cru $@ $(OBJ)
$(BIN_RANLIB) $@
ifdef LIB_SHARED
LIB_SHARED_FULL = $(LIB_SHARED).$(LIB_VERSION)
$(LIB_SHARED) : $(OBJ)
$(BIN_CXX) $(LIB_SHARED_LINK) $(LDFLAGS) $(OBJ) $(LIBS) -o $(LIB_SHARED_FULL)
$(BIN_LN) -sf $(LIB_SHARED_FULL) $(LIB_SHARED)
CLEANFILES+= $(LIB_SHARED_FULL)
endif
##########
# PROGRAMS
##########
$(PROGRAM): $(OBJ)
$(BIN_CXX) -o $@ $(LDFLAGS) $(OBJ) $(LIBS)
##########
# CLEANING
##########
clean: $(SUBDIRS)
$(BIN_RM) -f $(OBJ) $(CLEANFILES) $(LIB) $(LIB_SHARED) $(PROGRAM)
ifdef PRECOMPILED_HEADER_NAME
$(BIN_RM) -f $(PRECOMPILED_HEADER_NAME).gch
endif
mostlyclean: $(SUBDIRS)
$(BIN_RM) -f $(OBJ) $(CLEANFILES) $(LIB) $(LIB_SHARED) $(PROGRAM)
distclean: clean
$(BIN_RM) -rf $(DISTCLEANFILES) $(DEP)
ifdef PRECOMPILED_HEADER_NAME
$(BIN_RM) -f $(PRECOMPILED_HEADER_NAME).gch
endif
#########
# INSTALL
#########
ifeq (install, $(MAKECMDGOALS))
INSTALL_LIB=$(addprefix $(P_LIB)/, $(LIB_SHARED) $(LIB_SHARED_FULL))
endif
BIN_SINSTALL=$(BIN_INSTALL)
install: $(SUBDIRS) install-share install-program install-lib
install-strip:
$(MAKE) BIN_SINSTALL='$(BIN_INSTALL) -s' install
install-program:
ifdef PROGRAM_INSTALL
@$(BIN_MKDIR) -p $(DESTDIR)$(P_BINDIR)
@$(BIN_SINSTALL) $(PROGRAM) $(DESTDIR)$(P_BINDIR)/$(PROGRAM)
endif
install-lib:
ifdef LIB_SHARED_INSTALL
$(BIN_MKDIR) -p $(DESTDIR)$(P_LIB)
$(BIN_SINSTALL) $(LIB_SHARED_FULL) $(DESTDIR)$(P_LIB)/$(LIB_SHARED_FULL)
$(BIN_LN) -sf $(LIB_SHARED_FULL) $(DESTDIR)$(P_LIB)/$(LIB_SHARED)
endif
install-share:
ifdef DATA_SHARE
@$(BIN_MKDIR) -p $(addprefix $(DESTDIR)$(P_DATA)/, $(dir $(DATA_SHARE)))
@for i in $(DATA_SHARE); do \
$(BIN_ECHO) "$(BIN_INSTALL) $$i $(DESTDIR)$(P_DATA)/$$i"; \
$(BIN_INSTALL) $$i $(DESTDIR)$(P_DATA)/$$i; \
done
endif
ifdef DATA_SHARE_DOC
@$(BIN_MKDIR) -p $(addprefix $(DESTDIR)$(P_DOC)/, $(dir $(DATA_SHARE_DOC)))
@for i in $(DATA_SHARE_DOC); do \
$(BIN_ECHO) "$(BIN_INSTALL) $$i $(DESTDIR)$(P_DOC)/$$i"; \
$(BIN_INSTALL) $$i $(DESTDIR)$(P_DOC)/$$i; \
done
endif
##############
# DISTRIBUTION
##############
dist: distdir
@$(BIN_TAR) chf - --posix "$(PACKAGE_TARNAME)" | $(BIN_GZIP) -c > "$(PACKAGE_TARNAME).tar.gz"
@rm -rf $(PACKAGE_TARNAME)
distdir:
@if ! test -f packages/distfile/distfile.sh; then \
echo "Please run this from the parent directory."; \
exit 1; \
fi
@${SHELL} packages/distfile/distfile.sh $(MAKE) $(PACKAGE_TARNAME)
distfiles: $(SUBDIRS)
@for i in $(SRC) $(HEADER) $(PO) $(EXTRA_DIST); do \
echo $(CURDIR)/$$i; \
done
########################
# SUBDIRECTORY TRAVERSAL
########################
subdirs: $(SUBDIRS)
$(SUBDIRS):
$(MAKE) -C $@ $(MAKECMDGOALS)
# Set relations to ensure dependencies are built before their targets during parallel builds.
automation: libaegisub
src: universalchardet tools libaegisub
tests: libaegisub
reporter: src
$(OBJ): $(GLOBAL_DEPS)
OBJCXXFLAGS := $(CXXFLAGS)
####################
# PRECOMPILED HEADER
####################
ifeq (yes, $(PRECOMPILED_HEADER))
ifdef PRECOMPILED_HEADER_NAME
CXXFLAGS += -include $(PRECOMPILED_HEADER_NAME) $(PCHFLAGS)
# This hack is required until we can use the 'private' keyword (gmake 3.82) to avoid all the
# per-object CXXFLAGS being triggered by the ($OBJ) line.
CXXFLAGS_GNU_MAKE_SUCKS := $(CXXFLAGS)
$(OBJ): | $(PRECOMPILED_HEADER_NAME).gch
$(PRECOMPILED_HEADER_NAME).gch: CXXFLAGS = $(CXXFLAGS_GNU_MAKE_SUCKS)
$(PRECOMPILED_HEADER_NAME).gch: $(PRECOMPILED_HEADER_NAME)
endif
endif
########
# CCACHE
########
ifeq (yes, $(CCACHE_ENABLE))
CXX_ENV = $(CCACHE_ENV)
BIN_CC := ccache $(BIN_CC)
BIN_CXX := ccache $(BIN_CXX)
endif
##################
# TRANSFORM RULES
##################
.SUFFIXES:
.SUFFIXES: .o .c .cpp .cxx .mm
%.o: %.c
$(CXX_ENV) $(BIN_CC) $(CFLAGS_DEP) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
%.o: %.cpp
$(CXX_ENV) $(BIN_CXX) $(CFLAGS_DEP) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
%.o: %.cxx
$(CXX_ENV) $(BIN_CXX) $(CFLAGS_DEP) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
%.o: %.cc
$(CXX_ENV) $(BIN_CXX) $(CFLAGS_DEP) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
%.o: %.mm
$(CXX_ENV) $(BIN_CXX) $(CFLAGS_DEP) $(CPPFLAGS) $(OBJCXXFLAGS) -c -o $@ $<
$(PRECOMPILED_HEADER_NAME).gch: $(PRECOMPILED_HEADER_NAME)
$(CXX_ENV) $(BIN_CXX) $(CPPFLAGS) $(CXXFLAGS) -x c++-header $<
-include ($DEP)
.SUFFIXES:

View File

@ -1,16 +0,0 @@
m4_include([m4macros/ac_agi.m4])
m4_include([m4macros/ac_agi_mdcpucfg.m4])
m4_include([m4macros/ac_flag.m4])
m4_include([m4macros/agi_find_libheader.m4])
m4_include([m4macros/ax_boost_asio.m4])
m4_include([m4macros/ax_boost_base.m4])
m4_include([m4macros/ax_boost_filesystem.m4])
m4_include([m4macros/ax_boost_locale.m4])
m4_include([m4macros/ax_boost_regex.m4])
m4_include([m4macros/ax_boost_system.m4])
m4_include([m4macros/ax_boost_thread.m4])
m4_include([m4macros/ax_check_gl.m4])
m4_include([m4macros/ax_lang_compiler_ms.m4])
m4_include([m4macros/ax_pthread.m4])
m4_include([m4macros/check_gnu_make.m4])
m4_include([m4macros/wxwin.m4])

View File

@ -1,7 +0,0 @@
#!/bin/sh
set -e
echo Running autoreconf...
autoreconf -ivf "$@"
echo Now run ./configure and then make to build Aegisub

View File

@ -1,57 +0,0 @@
include ../Makefile.inc
LIB_SHARED = aegisub.so
LIB_VERSION = 0.1.0
BUILD_LIB = no
CXXFLAGS += -I../libaegisub/include -I../src $(CXXFLAGS_WX)
CPPFLAGS += $(CPPFLAGS_BOOST)
LIBS := -L../libaegisub -laegisub $(LIBS)
LIBS += $(LIBS_WX) $(LIBS_BOOST) $(LIBS_ICU) $(LIBS_LUA)
SRC += tests/aegisub.cpp ../src/auto4_regex.cpp
test: $(LIB_SHARED)
moon tests/runner.moon
.PHONY: test
# share/
DATA_AUTOMATION += \
autoload/clean-info.lua \
autoload/cleantags-autoload.lua \
autoload/kara-templater.lua \
autoload/karaoke-auto-leadin.lua \
autoload/macro-1-edgeblur.lua \
autoload/macro-2-mkfullwitdh.lua \
autoload/select-overlaps.moon \
autoload/strip-tags.lua \
demos/future-windy-blur.lua \
demos/raytracer.lua \
include/aegisub/clipboard.lua \
include/aegisub/re.moon \
include/aegisub/unicode.moon \
include/aegisub/util.moon \
include/cleantags.lua \
include/clipboard.lua \
include/karaskel-auto4.lua \
include/karaskel.lua \
include/moonscript.lua \
include/re.lua \
include/unicode.lua \
include/utils-auto4.lua \
include/utils.lua
all: ;
install: install-share
@$(BIN_MKDIR) -p $(addprefix $(DESTDIR)$(P_DATA)/automation/, $(dir $(DATA_AUTOMATION)))
@for i in $(DATA_AUTOMATION); do \
$(BIN_ECHO) "$(BIN_INSTALL) -m644 $$i $(DESTDIR)$(P_DATA)/automation/$$i"; \
$(BIN_INSTALL) -m644 $$i $(DESTDIR)$(P_DATA)/automation/$$i; \
done
EXTRA_DIST = $(DATA_AUTOMATION)
include ../Makefile.target

View File

@ -1,52 +0,0 @@
-- Copyright (c) 2012, Thomas Goyne <plorkyeran@aegisub.org>
--
-- Permission to use, copy, modify, and distribute this software for any
-- purpose with or without fee is hereby granted, provided that the above
-- copyright notice and this permission notice appear in all copies.
--
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
local tr = aegisub.gettext
script_name = tr"Clean Script Info"
script_description = tr"Removes all but the absolutely required fields from the Script Info section. You might want to run this on files that you plan to distribute in original form."
script_author = "Thomas Goyne"
script_version = "1"
function clean_script_info(subs)
local keep_keys = {
["collisions"] = true,
["playresx"] = true,
["playresy"] = true,
["scaledborderandshadow"] = true,
["scripttype"] = true,
["video colorspace"] = true,
["ycbcr matrix"] = true,
["wrapstyle"] = true
}
local deleted = 0
for i = 1, #subs do
local idx = i - deleted
if subs[idx].class == "info" and not keep_keys[subs[idx].key:lower()] then
subs.delete(idx)
deleted = deleted + 1
end
end
end
function clean_script_info_macro(subs)
clean_script_info(subs)
aegisub.set_undo_point(script_name)
end
aegisub.register_macro(script_name, script_description, clean_script_info_macro)
aegisub.register_filter(script_name, script_description, 0, clean_script_info)

View File

@ -1,319 +0,0 @@
-- Copyright (c) 2013, Thomas Goyne <plorkyeran@aegisub.org>
--
-- Permission to use, copy, modify, and distribute this software for any
-- purpose with or without fee is hereby granted, provided that the above
-- copyright notice and this permission notice appear in all copies.
--
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
require 'aegisub'
require 'lunatest'
re = require 'aegisub.re'
export test_compile = ->
r = re.compile '.'
res = r\find 'abc'
assert_not_nil res
assert_equal 3, #res
res = r\find 'bc'
assert_not_nil res
assert_equal 2, #res
export test_compile_bad_call_is_error = ->
r = re.compile '.'
assert_error -> r.find 'bc'
export test_find_bol_only_matches_once = ->
res = re.find 'aaa', '^a'
assert_not_nil res
assert_equal 1, #res
export test_find_finds_characters_not_bytes = ->
res = re.find '☃☃', '.'
assert_not_nil res
assert_equal 2, #res
assert_equal '☃', res[1].str
assert_equal 1, res[1].first
assert_equal 3, res[1].last
assert_equal '☃', res[2].str
assert_equal 4, res[2].first
assert_equal 6, res[2].last
export test_find_no_matches_returns_nil = ->
assert_nil(re.find 'a', 'b')
export test_find_on_empty_string_returns_nil = ->
assert_nil(re.find '', '.')
export test_find_plain = ->
res = re.find 'aa', '.'
assert_not_nil res
assert_equal 2, #res
assert_equal 'a', res[1].str
assert_equal 1, res[1].first
assert_equal 1, res[1].last
assert_equal 'a', res[2].str
assert_equal 2, res[2].first
assert_equal 2, res[2].last
export test_find_zero_length_match = ->
res = re.find 'abc', '^'
assert_not_nil res
assert_equal 1, #res
assert_equal '', res[1].str
assert_equal 1, res[1].first
assert_equal 0, res[1].last
export test_flags_in_wrong_position_is_error = ->
assert_error -> re.sub 'a', re.ICASE, 'b', 'c'
assert_error -> re.sub 'a', 'b', re.ICASE, 'c'
export test_invalid_regex_syntax_is_error = ->
assert_error -> re.compile '('
export test_match_plain = ->
res = re.match '{250 1173 380}Help!', '(\\d+) (\\d+) (\\d+)'
assert_not_nil res
assert_equal 4, #res
assert_equal '250 1173 380', res[1].str
assert_equal 2, res[1].first
assert_equal 13, res[1].last
assert_equal '250', res[2].str
assert_equal 2, res[2].first
assert_equal 4, res[2].last
assert_equal '1173', res[3].str
assert_equal 6, res[3].first
assert_equal 9, res[3].last
assert_equal '380', res[4].str
assert_equal 11, res[4].first
assert_equal 13, res[4].last
export test_match_zero_length_match = ->
res = re.match 'abc', '^'
assert_not_nil res
assert_equal 1, #res
assert_equal '', res[1].str
assert_equal 1, res[1].first
assert_equal 0, res[1].last
export test_split_delim_not_found_gives_input_string_in_table = ->
res = re.split 'abc', ','
assert_not_nil res
assert_equal 1, #res
assert_equal 'abc', res[1]
export test_split_empty_string_returns_empty_table = ->
res = re.split '', ','
assert_not_nil res
assert_equal 0, #res
export test_split_max_splits_noskip = ->
res = re.split 'a,,b,c', ',', false, 1
assert_not_nil res
assert_equal 2, #res
assert_equal 'a', res[1]
assert_equal ',b,c', res[2]
export test_split_max_splits_skip = ->
res = re.split 'a,,b,c', ',', true, 1
assert_not_nil res
assert_equal 2, #res
assert_equal 'a', res[1]
assert_equal ',b,c', res[2]
res = re.split 'a,,b,c,d', ',', true, 2
assert_not_nil res
assert_equal 3, #res
assert_equal 'a', res[1]
assert_equal 'b', res[2]
assert_equal 'c,d', res[3]
export test_split_multi_character_delimeter = ->
res = re.split 'a::b::c:d', '::'
assert_not_nil res
assert_equal 3, #res
assert_equal 'a', res[1]
assert_equal 'b', res[2]
assert_equal 'c:d', res[3]
export test_split_plain = ->
res = re.split 'a,,b,c', ','
assert_not_nil res
assert_equal 4, #res
assert_equal 'a', res[1]
assert_equal '', res[2]
assert_equal 'b', res[3]
assert_equal 'c', res[4]
export test_split_skip_empty = ->
res = re.split 'a,,b,c', ',', true
assert_not_nil res
assert_equal 3, #res
assert_equal 'a', res[1]
assert_equal 'b', res[2]
assert_equal 'c', res[3]
export test_sub_bad_find_is_error = ->
assert_error -> re.sub 'aa', 5, 'b'
export test_sub_bad_haystack_is_error = ->
assert_error -> re.sub 5, 'a', 'b'
export test_sub_bad_replacement_is_error = ->
assert_error -> re.sub 'aa', 'a', 5
export test_sub_capture_groups = ->
assert_equal 'aabbaabb', re.sub 'abab', '(a)(b)', (str) -> str .. str
export test_sub_empty_string_returns_empty = ->
assert_equal '', re.sub '', 'b', 'c'
export test_sub_function = ->
add_one = (str) -> tostring tonumber(str) + 1
res = re.sub '{\\k10}a{\\k15}b{\\k30}c', '\\\\k([[:digit:]]+)', add_one
assert_not_nil res
assert_equal '{\\k11}a{\\k16}b{\\k31}c', res
export test_sub_function_no_capture_group_passes_full_match = ->
found = {}
drop_match = (str) ->
table.insert found, str
''
res = re.sub '{\\k10}a{\\k15}b{\\k30}c', '\\\\k[[:digit:]]+', drop_match
assert_not_nil res
assert_equal '{}a{}b{}c', res
assert_equal 3, #found
assert_equal '\\k10', found[1]
assert_equal '\\k15', found[2]
assert_equal '\\k30', found[3]
export test_sub_function_returning_non_string_returns_unchanged_input = ->
found = {}
mutate_external = (str) ->
table.insert found, str
nil
res = re.sub '{\\k10}a{\\k15}b{\\k30}c', '\\\\k([[:digit:]]+)', mutate_external
assert_not_nil res
assert_equal '{\\k10}a{\\k15}b{\\k30}c', res
assert_equal 3, #found
assert_equal '10', found[1]
assert_equal '15', found[2]
assert_equal '30', found[3]
export test_sub_icase = ->
res = re.sub '{\\K10}a{\\K15}b{\\k30}c', '\\\\k', '\\\\kf', re.ICASE
assert_not_nil res
assert_equal '{\\kf10}a{\\kf15}b{\\kf30}c', res
export test_sub_icase_greek = ->
res = re.sub '!συνεργ!', 'Συνεργ', 'foo', re.ICASE
assert_not_nil res
assert_equal '!foo!', res
export test_sub_max_replace_count = ->
res = re.sub 'aaa', 'a', 'b', 2
assert_not_nil res
assert_equal 'bba', res
export test_sub_no_matches_leaves_unchanged = ->
assert_equal('a', re.sub 'a', 'b', 'c')
export test_sub_plain = ->
res = re.sub '{\\k10}a{\\k15}b{\\k30}c', '\\\\k', '\\\\kf'
assert_not_nil res
assert_equal '{\\kf10}a{\\kf15}b{\\kf30}c', res
export test_sub_zero_length_match_bol = ->
res = re.sub 'abc', '^', 'd'
assert_not_nil res
assert_equal 'dabc', res
export test_sub_zero_length_match_bow = ->
res = re.sub 'abc abc', '\\<', 'd'
assert_not_nil res
assert_equal 'dabc dabc', res
export test_sub_zero_length_match_bob = ->
res = re.sub 'abc', '\\A', 'd'
assert_not_nil res
assert_equal 'dabc', res
assert_empty_match_and_return_d = (str) ->
assert_equal '', str
'd'
export test_sub_zero_length_match_bol_with_function_replacement = ->
res = re.sub 'abc', '^', assert_empty_match_and_return_d
assert_not_nil res
assert_equal 'dabc', res
export test_sub_zero_length_match_bow_with_function_replacement = ->
res = re.sub 'abc abc', '\\<', assert_empty_match_and_return_d
assert_not_nil res
assert_equal 'dabc dabc', res
export test_sub_zero_length_match_bob_with_function_replacement = ->
res = re.sub 'abc', '\\A', assert_empty_match_and_return_d
assert_not_nil res
assert_equal 'dabc', res
export test_sub_zero_length_match_eol = ->
res = re.sub 'abc', '$', 'd'
assert_not_nil res
assert_equal 'abcd', res
export test_sub_zero_length_match_eol_with_function_replacement = ->
res = re.sub 'abc', '$', assert_empty_match_and_return_d
assert_not_nil res
assert_equal 'abcd', res
export test_sub_zero_length_match_mid = ->
res = re.sub 'abc', 'e?', 'd'
assert_not_nil res
assert_equal 'dadbdcd', res
res = re.sub 'abc', 'b*', 'd'
assert_not_nil res
assert_equal 'daddcd', res
export test_sub_zero_length_match_mid_with_function_replacement = ->
res = re.sub 'abc', 'e?', assert_empty_match_and_return_d
assert_not_nil res
assert_equal 'dadbdcd', res
export test_zero_length_regex_is_error = ->
assert_error -> re.compile ''
export test_split_word_boundary = ->
res = re.split 'aa bb cc', '\\b', true
assert_not_nil res
assert_equal 5, #res
assert_equal res[1], 'aa'
assert_equal res[2], ' '
assert_equal res[3], 'bb'
assert_equal res[4], ' '
assert_equal res[5], 'cc'
export test_split_bob = ->
res = re.split 'aa bb cc', '\\A'
assert_not_nil res
assert_equal 2, #res
assert_equal '', res[1]
assert_equal 'aa bb cc', res[2]

View File

@ -1,39 +0,0 @@
-- Copyright (c) 2013, Thomas Goyne <plorkyeran@aegisub.org>
--
-- Permission to use, copy, modify, and distribute this software for any
-- purpose with or without fee is hereby granted, provided that the above
-- copyright notice and this permission notice appear in all copies.
--
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
require 'lunatest'
unicode = require 'aegisub.unicode'
export test_char_widths = ->
assert_equal 1, unicode.charwidth 'a'
assert_equal 2, unicode.charwidth 'ß'
assert_equal 3, unicode.charwidth ''
assert_equal 4, unicode.charwidth '🄓'
export test_char_iterator = ->
chars = [c for c in unicode.chars 'aß🄓']
assert_equal 4, #chars
assert_equal chars[1], 'a'
assert_equal chars[2], 'ß'
assert_equal chars[3], ''
assert_equal chars[4], '🄓'
export test_len = ->
assert_equal 4, unicode.len 'aß🄓'
export test_codepoint = ->
assert_equal 97, unicode.codepoint 'a'
assert_equal 223, unicode.codepoint 'ß'
assert_equal 0xFF43, unicode.codepoint ''
assert_equal 0x1F113, unicode.codepoint '🄓'

View File

@ -1,24 +0,0 @@
-- Copyright (c) 2013, Thomas Goyne <plorkyeran@aegisub.org>
--
-- Permission to use, copy, modify, and distribute this software for any
-- purpose with or without fee is hereby granted, provided that the above
-- copyright notice and this permission notice appear in all copies.
--
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
require 'lunatest'
require 'lfs'
package.path ..= 'include/?.lua;'
package.moonpath ..= 'include/?.moon;'
for file in lfs.dir 'tests/modules'
require "tests.modules.#{file\gsub '\.[^.]+$', ''}" unless file\sub(1, 1) == '.'
lunatest.run()

View File

@ -1,179 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Build credit text -->
<ItemDefinitionGroup Condition="'$(AegisubBuildCredit)'==''">
<ClCompile>
<PreprocessorDefinitions>BUILD_CREDIT="$(AegisubBuildCredit)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Update checker -->
<ItemDefinitionGroup Condition="'$(AegisubUseUpdateChecker)'=='true'">
<ClCompile>
<PreprocessorDefinitions>
WITH_UPDATE_CHECKER;
UPDATE_CHECKER_SERVER="$(UpdateCheckerServer)";
UPDATE_CHECKER_BASE_URL="$(UpdateCheckerURL)";
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Hunspell support -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>WITH_HUNSPELL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(AegisubContribBase)hunspell\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<!-- CSRI helper library support -->
<ItemDefinitionGroup Condition="'$(AegisubUseCsri)'=='HelperLibrary'">
<ClCompile>
<PreprocessorDefinitions>WITH_CSRI;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- CSRI external library support -->
<ItemDefinitionGroup Condition="'$(AegisubUseCsri)'=='External'">
<ClCompile>
<PreprocessorDefinitions>WITH_CSRI;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(CsriLibraryPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>$(CsriLibraryName);%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- FFmpegSource support -->
<ItemDefinitionGroup Condition="'$(AegisubUseFfms)'=='true'">
<ClCompile>
<PreprocessorDefinitions>WITH_FFMS2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Avisynth support -->
<ItemDefinitionGroup Condition="'$(AegisubUseAvisynth)'=='true'">
<ClCompile>
<PreprocessorDefinitions>WITH_AVISYNTH;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- FFTW support -->
<ItemDefinitionGroup Condition="'$(AegisubUseFftw)'=='true'">
<ClCompile>
<PreprocessorDefinitions>WITH_FFTW3;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- OpenAL support -->
<ItemDefinitionGroup Condition="'$(AegisubUseOpenAl)'=='true'">
<ClCompile>
<PreprocessorDefinitions>WITH_OPENAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- DirectSound support -->
<PropertyGroup>
<DirectXSDKDir Condition="'$(DirectXSDKDir)'==''">$(DXSDK_DIR)</DirectXSDKDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(AegisubUseDSound)'=='true'">
<ClCompile>
<PreprocessorDefinitions>WITH_DIRECTSOUND;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(DXSDK_DIR)\Include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories Condition="'$(Platform)'=='Win32'">$(DirectXSDKDir)\Lib\x86\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories Condition="'$(Platform)'=='x64'">$(DirectXSDKDir)\Lib\x64\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>dsound.lib;dxguid.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Target Name="AegisubCheckDirectXSDK" BeforeTargets="PrepareForBuild" >
<Error
Condition="'$(DirectXSDKDir)'=='' or !Exists('$(DirectXSDKDir)\Include\dsound.h')"
Text="DirectX SDK not found, check that the DXSDK_DIR environment is set. If you do not want to use DirectSound set the AegisubUseDSound property to false in a user config."
/>
</Target>
<ItemGroup Condition="'$(AegisubUseDSound)'=='true'">
<AegisubCheckDirectXSDK Include="dsound" />
</ItemGroup>
<!-- Special builds -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions Condition="'$(StartupLog)'=='true'">WITH_STARTUPLOG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- General configuration, always required libraries -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>
__STDC_FORMAT_MACROS;
NOMINMAX;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<AdditionalIncludeDirectories>
$(SrcDir)include\;
$(AegisubContribBase)iconv\include;
$(AegisubSourceBase)libaegisub\include;
$(AegisubSourceBase)build;
$(AegisubSourceBase)include;
$(AegisubSourceBase)src;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(AegisubLibraryDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<!-- Add property pages -->
<ItemGroup>
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)Aegisub.xml" />
<ProjectTools Include="AegisubConfig" />
</ItemGroup>
<!-- Compile translations if msgfmt is available -->
<Target Name="Translations"
AfterTargets="ClCompile"
Condition="'$(MsgFmtPath)'!=''"
Inputs="@(MsgFmt)"
Outputs="$(AegisubBinaryDir)locale\%(Filename)\aegisub.mo"
>
<Error Condition="!Exists($(MsgFmtPath))" Text="$(MsgFmtPath) not found" />
<MakeDir Directories="$(AegisubBinaryDir)locale\%(MsgFmt.Filename)" />
<Exec Command="$(MsgFmtPath) -o $(AegisubBinaryDir)locale\%(MsgFmt.Filename)\aegisub.mo %(MsgFmt.Identity)" />
</Target>
</Project>

View File

@ -1,476 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- VC boilerplate -->
<PropertyGroup Label="Globals">
<ProjectGuid>{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}</ProjectGuid>
<RootNamespace>Aegisub</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>exe</AegisubProjectType>
<SrcDir>..\..\src\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<PropertyGroup>
<TargetName>aegisub$(AegisubPlatformSuffix)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>agi_pre.h</PrecompiledHeaderFile>
<ForcedIncludeFiles>agi_pre.h</ForcedIncludeFiles>
<AdditionalOptions>/Zm150 %(AdditionalOptions)</AdditionalOptions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Update git_version.h -->
<Target Name="UpdateVersion" BeforeTargets="ClCompile">
<ExecShellScript
Command="$(MSBuildThisFileDirectory)..\version.sh"
WorkingDirectory="$(AegisubSourceBase)"
Configuration="@(ExecShellScript)"
Arguments=".." />
</Target>
<!-- Project References -->
<ItemGroup>
<ProjectReference Include="..\boost\boost.vcxproj">
<Project>{a649d828-a399-4d81-adef-94cfdba7847f}</Project>
</ProjectReference>
<ProjectReference Include="..\csrihelper\csrihelper.vcxproj">
<Project>{c832eaf3-860d-4373-a02c-933626b47a5e}</Project>
</ProjectReference>
<ProjectReference Include="..\ffms2\ffms2.vcxproj" Condition="Exists('$(FfmsSrcDir)')">
<Project>{aa137613-96a1-4388-8905-71345b4f8f87}</Project>
</ProjectReference>
<ProjectReference Include="..\fftw\fftw.vcxproj" Condition="Exists('$(FftwSrcDir)')">
<Project>{ea3dcc95-2423-4ea0-a508-7a427b4c0594}</Project>
</ProjectReference>
<ProjectReference Include="..\freetype2\freetype.vcxproj" Condition="Exists('$(Freetype2SrcDir)')">
<Project>{78b079bd-9fc7-4b9e-b4a6-96da0f00248b}</Project>
</ProjectReference>
<ProjectReference Include="..\fontconfig\fontconfig.vcxproj" Condition="Exists('$(FontconfigSrcDir)')">
<Project>{ad56899e-961b-47b7-bd0f-14d0da50d141}</Project>
</ProjectReference>
<ProjectReference Include="..\fribidi\fribidi.vcxproj">
<Project>{fb8e8d19-a4d6-4181-943c-282075f49b41}</Project>
</ProjectReference>
<ProjectReference Include="..\hunspell\hunspell.vcxproj">
<Project>{cc791693-6b28-40ac-879d-64a6c16468e3}</Project>
</ProjectReference>
<ProjectReference Include="..\icu\icu.vcxproj">
<Project>{f934ab7b-186b-4e96-b20c-a58c38c1b818}</Project>
</ProjectReference>
<ProjectReference Include="..\libaegisub\libaegisub.vcxproj">
<Project>{bb3fed86-db7a-4dc7-964a-260fb86cde61}</Project>
</ProjectReference>
<ProjectReference Include="..\libass\libass.vcxproj" Condition="Exists('$(LibassSrcDir)')">
<Project>{8804f253-da67-4cc4-926b-0cd2aee5778d}</Project>
</ProjectReference>
<ProjectReference Include="..\libiconv\libiconv.vcxproj">
<Project>{965054d2-44f2-4eb2-9879-051cc3d7ef08}</Project>
</ProjectReference>
<ProjectReference Include="..\libresrc\libresrc.vcxproj">
<Project>{bd00d65f-24da-4784-8860-3b972ea125fc}</Project>
</ProjectReference>
<ProjectReference Include="..\lua51\lua51.vcxproj">
<Project>{5391a8b1-9c70-4dc4-92ad-d3e34c6b803f}</Project>
</ProjectReference>
<ProjectReference Include="..\universalchardet\universalchardet.vcxproj">
<Project>{7b56955d-5162-4698-aa5b-47484edc8783}</Project>
</ProjectReference>
</ItemGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(SrcDir)MatroskaParser.h" />
<ClInclude Include="$(SrcDir)aegisublocale.h" />
<ClInclude Include="$(SrcDir)agi_pre.h" />
<ClInclude Include="$(SrcDir)ass_attachment.h" />
<ClInclude Include="$(SrcDir)ass_dialogue.h" />
<ClInclude Include="$(SrcDir)ass_entry.h" />
<ClInclude Include="$(SrcDir)ass_export_filter.h" />
<ClInclude Include="$(SrcDir)ass_exporter.h" />
<ClInclude Include="$(SrcDir)ass_file.h" />
<ClInclude Include="$(SrcDir)ass_info.h" />
<ClInclude Include="$(SrcDir)ass_karaoke.h" />
<ClInclude Include="$(SrcDir)ass_override.h" />
<ClInclude Include="$(SrcDir)ass_parser.h" />
<ClInclude Include="$(SrcDir)ass_style.h" />
<ClInclude Include="$(SrcDir)ass_style_storage.h" />
<ClInclude Include="$(SrcDir)ass_time.h" />
<ClInclude Include="$(SrcDir)audio_box.h" />
<ClInclude Include="$(SrcDir)audio_colorscheme.h" />
<ClInclude Include="$(SrcDir)audio_controller.h" />
<ClInclude Include="$(SrcDir)audio_display.h" />
<ClInclude Include="$(SrcDir)audio_karaoke.h" />
<ClInclude Include="$(SrcDir)audio_marker.h" />
<ClInclude Include="$(SrcDir)audio_player_alsa.h" />
<ClInclude Include="$(SrcDir)audio_player_dsound.h" />
<ClInclude Include="$(SrcDir)audio_player_dsound2.h" />
<ClInclude Include="$(SrcDir)audio_player_openal.h" />
<ClInclude Include="$(SrcDir)audio_player_oss.h" />
<ClInclude Include="$(SrcDir)audio_player_portaudio.h" />
<ClInclude Include="$(SrcDir)audio_player_pulse.h" />
<ClInclude Include="$(SrcDir)audio_provider_avs.h" />
<ClInclude Include="$(SrcDir)audio_provider_convert.h" />
<ClInclude Include="$(SrcDir)audio_provider_dummy.h" />
<ClInclude Include="$(SrcDir)audio_provider_ffmpegsource.h" />
<ClInclude Include="$(SrcDir)audio_provider_hd.h" />
<ClInclude Include="$(SrcDir)audio_provider_lock.h" />
<ClInclude Include="$(SrcDir)audio_provider_pcm.h" />
<ClInclude Include="$(SrcDir)audio_provider_ram.h" />
<ClInclude Include="$(SrcDir)audio_renderer.h" />
<ClInclude Include="$(SrcDir)audio_renderer_spectrum.h" />
<ClInclude Include="$(SrcDir)audio_renderer_waveform.h" />
<ClInclude Include="$(SrcDir)audio_timing.h" />
<ClInclude Include="$(SrcDir)auto4_base.h" />
<ClInclude Include="$(SrcDir)auto4_lua.h" />
<ClInclude Include="$(SrcDir)auto4_lua_factory.h" />
<ClInclude Include="$(SrcDir)auto4_lua_scriptreader.h" />
<ClInclude Include="$(SrcDir)auto4_lua_utils.h" />
<ClInclude Include="$(SrcDir)avisynth.h" />
<ClInclude Include="$(SrcDir)avisynth_wrap.h" />
<ClInclude Include="$(SrcDir)base_grid.h" />
<ClInclude Include="$(SrcDir)block_cache.h" />
<ClInclude Include="$(SrcDir)charset_detect.h" />
<ClInclude Include="$(SrcDir)colorspace.h" />
<ClInclude Include="$(SrcDir)colour_button.h" />
<ClInclude Include="$(SrcDir)command\command.h" />
<ClInclude Include="$(SrcDir)command\icon.h" />
<ClInclude Include="$(SrcDir)compat.h" />
<ClInclude Include="$(SrcDir)config.h" />
<ClInclude Include="$(SrcDir)dialog_about.h" />
<ClInclude Include="$(SrcDir)dialog_attachments.h" />
<ClInclude Include="$(SrcDir)dialog_automation.h" />
<ClInclude Include="$(SrcDir)dialog_autosave.h" />
<ClInclude Include="$(SrcDir)dialog_colorpicker.h" />
<ClInclude Include="$(SrcDir)dialog_detached_video.h" />
<ClInclude Include="$(SrcDir)dialog_dummy_video.h" />
<ClInclude Include="$(SrcDir)dialog_export.h" />
<ClInclude Include="$(SrcDir)dialog_export_ebu3264.h" />
<ClInclude Include="$(SrcDir)dialog_fonts_collector.h" />
<ClInclude Include="$(SrcDir)dialog_jumpto.h" />
<ClInclude Include="$(SrcDir)dialog_kara_timing_copy.h" />
<ClInclude Include="$(SrcDir)dialog_log.h" />
<ClInclude Include="$(SrcDir)dialog_manager.h" />
<ClInclude Include="$(SrcDir)dialog_paste_over.h" />
<ClInclude Include="$(SrcDir)dialog_progress.h" />
<ClInclude Include="$(SrcDir)dialog_properties.h" />
<ClInclude Include="$(SrcDir)dialog_resample.h" />
<ClInclude Include="$(SrcDir)dialog_search_replace.h" />
<ClInclude Include="$(SrcDir)dialog_selected_choices.h" />
<ClInclude Include="$(SrcDir)dialog_selection.h" />
<ClInclude Include="$(SrcDir)dialog_shift_times.h" />
<ClInclude Include="$(SrcDir)dialog_spellchecker.h" />
<ClInclude Include="$(SrcDir)dialog_style_editor.h" />
<ClInclude Include="$(SrcDir)dialog_style_manager.h" />
<ClInclude Include="$(SrcDir)dialog_styling_assistant.h" />
<ClInclude Include="$(SrcDir)dialog_text_import.h" />
<ClInclude Include="$(SrcDir)dialog_timing_processor.h" />
<ClInclude Include="$(SrcDir)dialog_translation.h" />
<ClInclude Include="$(SrcDir)dialog_version_check.h" />
<ClInclude Include="$(SrcDir)dialog_video_details.h" />
<ClInclude Include="$(SrcDir)export_fixstyle.h" />
<ClInclude Include="$(SrcDir)export_framerate.h" />
<ClInclude Include="$(SrcDir)factory_manager.h" />
<ClInclude Include="$(SrcDir)ffmpegsource_common.h" />
<ClInclude Include="$(SrcDir)fft.h" />
<ClInclude Include="$(SrcDir)font_file_lister.h" />
<ClInclude Include="$(SrcDir)font_file_lister_fontconfig.h" />
<ClInclude Include="$(SrcDir)frame_main.h" />
<ClInclude Include="$(SrcDir)gl_text.h" />
<ClInclude Include="$(SrcDir)gl_wrap.h" />
<ClInclude Include="$(SrcDir)help_button.h" />
<ClInclude Include="$(SrcDir)hotkey_data_view_model.h" />
<ClInclude Include="$(SrcDir)include\aegisub\audio_player.h" />
<ClInclude Include="$(SrcDir)include\aegisub\audio_provider.h" />
<ClInclude Include="$(SrcDir)include\aegisub\context.h" />
<ClInclude Include="$(SrcDir)include\aegisub\hotkey.h" />
<ClInclude Include="$(SrcDir)include\aegisub\menu.h" />
<ClInclude Include="$(SrcDir)include\aegisub\spellchecker.h" />
<ClInclude Include="$(SrcDir)include\aegisub\subtitles_provider.h" />
<ClInclude Include="$(SrcDir)include\aegisub\toolbar.h" />
<ClInclude Include="$(SrcDir)include\aegisub\video_provider.h" />
<ClInclude Include="$(SrcDir)initial_line_state.h" />
<ClInclude Include="$(SrcDir)lpeg.h" />
<ClInclude Include="$(SrcDir)main.h" />
<ClInclude Include="$(SrcDir)mkv_wrap.h" />
<ClInclude Include="$(SrcDir)options.h" />
<ClInclude Include="$(SrcDir)pen.h" />
<ClInclude Include="$(SrcDir)persist_location.h" />
<ClInclude Include="$(SrcDir)placeholder_ctrl.h" />
<ClInclude Include="$(SrcDir)plugin_manager.h" />
<ClInclude Include="$(SrcDir)preferences.h" />
<ClInclude Include="$(SrcDir)preferences_base.h" />
<ClInclude Include="$(SrcDir)resolution_resampler.h" />
<ClInclude Include="$(SrcDir)scintilla_text_ctrl.h" />
<ClInclude Include="$(SrcDir)scintilla_text_selection_controller.h" />
<ClInclude Include="$(SrcDir)search_replace_engine.h" />
<ClInclude Include="$(SrcDir)selection_controller.h" />
<ClInclude Include="$(SrcDir)spellchecker_hunspell.h" />
<ClInclude Include="$(SrcDir)spline.h" />
<ClInclude Include="$(SrcDir)spline_curve.h" />
<ClInclude Include="$(SrcDir)string_codec.h" />
<ClInclude Include="$(SrcDir)subs_controller.h" />
<ClInclude Include="$(SrcDir)subs_edit_box.h" />
<ClInclude Include="$(SrcDir)subs_edit_ctrl.h" />
<ClInclude Include="$(SrcDir)subs_preview.h" />
<ClInclude Include="$(SrcDir)subtitle_format.h" />
<ClInclude Include="$(SrcDir)subtitle_format_ass.h" />
<ClInclude Include="$(SrcDir)subtitle_format_ebu3264.h" />
<ClInclude Include="$(SrcDir)subtitle_format_encore.h" />
<ClInclude Include="$(SrcDir)subtitle_format_microdvd.h" />
<ClInclude Include="$(SrcDir)subtitle_format_mkv.h" />
<ClInclude Include="$(SrcDir)subtitle_format_srt.h" />
<ClInclude Include="$(SrcDir)subtitle_format_transtation.h" />
<ClInclude Include="$(SrcDir)subtitle_format_ttxt.h" />
<ClInclude Include="$(SrcDir)subtitle_format_txt.h" />
<ClInclude Include="$(SrcDir)subtitles_provider_csri.h" />
<ClInclude Include="$(SrcDir)subtitles_provider_libass.h" />
<ClInclude Include="$(SrcDir)text_file_reader.h" />
<ClInclude Include="$(SrcDir)text_file_writer.h" />
<ClInclude Include="$(SrcDir)text_selection_controller.h" />
<ClInclude Include="$(SrcDir)thesaurus.h" />
<ClInclude Include="$(SrcDir)threaded_frame_source.h" />
<ClInclude Include="$(SrcDir)time_range.h" />
<ClInclude Include="$(SrcDir)timeedit_ctrl.h" />
<ClInclude Include="$(SrcDir)toggle_bitmap.h" />
<ClInclude Include="$(SrcDir)tooltip_manager.h" />
<ClInclude Include="$(SrcDir)utils.h" />
<ClInclude Include="$(SrcDir)validators.h" />
<ClInclude Include="$(SrcDir)vector2d.h" />
<ClInclude Include="$(SrcDir)version.h" />
<ClInclude Include="$(SrcDir)video_box.h" />
<ClInclude Include="$(SrcDir)video_context.h" />
<ClInclude Include="$(SrcDir)video_display.h" />
<ClInclude Include="$(SrcDir)video_frame.h" />
<ClInclude Include="$(SrcDir)video_out_gl.h" />
<ClInclude Include="$(SrcDir)video_provider_avs.h" />
<ClInclude Include="$(SrcDir)video_provider_cache.h" />
<ClInclude Include="$(SrcDir)video_provider_dummy.h" />
<ClInclude Include="$(SrcDir)video_provider_ffmpegsource.h" />
<ClInclude Include="$(SrcDir)video_provider_manager.h" />
<ClInclude Include="$(SrcDir)video_provider_yuv4mpeg.h" />
<ClInclude Include="$(SrcDir)video_slider.h" />
<ClInclude Include="$(SrcDir)visual_feature.h" />
<ClInclude Include="$(SrcDir)visual_tool.h" />
<ClInclude Include="$(SrcDir)visual_tool_clip.h" />
<ClInclude Include="$(SrcDir)visual_tool_cross.h" />
<ClInclude Include="$(SrcDir)visual_tool_drag.h" />
<ClInclude Include="$(SrcDir)visual_tool_rotatexy.h" />
<ClInclude Include="$(SrcDir)visual_tool_rotatez.h" />
<ClInclude Include="$(SrcDir)visual_tool_scale.h" />
<ClInclude Include="$(SrcDir)visual_tool_vector_clip.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)aegisublocale.cpp" />
<ClCompile Include="$(SrcDir)agi_pre.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
<PrecompiledHeaderFile>agi_pre.h</PrecompiledHeaderFile>
<ForcedIncludeFiles>
</ForcedIncludeFiles>
</ClCompile>
<ClCompile Include="$(SrcDir)MatroskaParser.c">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<ForcedIncludeFiles></ForcedIncludeFiles>
</ClCompile>
<ClCompile Include="$(SrcDir)ass_attachment.cpp" />
<ClCompile Include="$(SrcDir)ass_dialogue.cpp" />
<ClCompile Include="$(SrcDir)ass_entry.cpp" />
<ClCompile Include="$(SrcDir)ass_export_filter.cpp" />
<ClCompile Include="$(SrcDir)ass_exporter.cpp" />
<ClCompile Include="$(SrcDir)ass_file.cpp" />
<ClCompile Include="$(SrcDir)ass_karaoke.cpp" />
<ClCompile Include="$(SrcDir)ass_override.cpp" />
<ClCompile Include="$(SrcDir)ass_parser.cpp" />
<ClCompile Include="$(SrcDir)ass_style.cpp" />
<ClCompile Include="$(SrcDir)ass_style_storage.cpp" />
<ClCompile Include="$(SrcDir)ass_time.cpp" />
<ClCompile Include="$(SrcDir)audio_box.cpp" />
<ClCompile Include="$(SrcDir)audio_colorscheme.cpp" />
<ClCompile Include="$(SrcDir)audio_controller.cpp" />
<ClCompile Include="$(SrcDir)audio_display.cpp" />
<ClCompile Include="$(SrcDir)audio_karaoke.cpp" />
<ClCompile Include="$(SrcDir)audio_marker.cpp" />
<ClCompile Include="$(SrcDir)audio_player.cpp" />
<ClCompile Include="$(SrcDir)audio_player_alsa.cpp" />
<ClCompile Include="$(SrcDir)audio_player_dsound.cpp" />
<ClCompile Include="$(SrcDir)audio_player_dsound2.cpp" />
<ClCompile Include="$(SrcDir)audio_player_openal.cpp" />
<ClCompile Include="$(SrcDir)audio_player_oss.cpp" />
<ClCompile Include="$(SrcDir)audio_player_portaudio.cpp" />
<ClCompile Include="$(SrcDir)audio_player_pulse.cpp" />
<ClCompile Include="$(SrcDir)audio_provider.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_avs.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_convert.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_dummy.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_ffmpegsource.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_hd.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_lock.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_pcm.cpp" />
<ClCompile Include="$(SrcDir)audio_provider_ram.cpp" />
<ClCompile Include="$(SrcDir)audio_renderer.cpp" />
<ClCompile Include="$(SrcDir)audio_renderer_spectrum.cpp" />
<ClCompile Include="$(SrcDir)audio_renderer_waveform.cpp" />
<ClCompile Include="$(SrcDir)audio_timing_dialogue.cpp" />
<ClCompile Include="$(SrcDir)audio_timing_karaoke.cpp" />
<ClCompile Include="$(SrcDir)auto4_base.cpp" />
<ClCompile Include="$(SrcDir)auto4_lua.cpp" />
<ClCompile Include="$(SrcDir)auto4_lua_assfile.cpp" />
<ClCompile Include="$(SrcDir)auto4_lua_dialog.cpp" />
<ClCompile Include="$(SrcDir)auto4_lua_progresssink.cpp" />
<ClCompile Include="$(SrcDir)auto4_lua_scriptreader.cpp" />
<ClCompile Include="$(SrcDir)auto4_regex.cpp" />
<ClCompile Include="$(SrcDir)avisynth_wrap.cpp" />
<ClCompile Include="$(SrcDir)base_grid.cpp" />
<ClCompile Include="$(SrcDir)charset_detect.cpp" />
<ClCompile Include="$(SrcDir)colorspace.cpp" />
<ClCompile Include="$(SrcDir)colour_button.cpp" />
<ClCompile Include="$(SrcDir)command\app.cpp" />
<ClCompile Include="$(SrcDir)command\audio.cpp" />
<ClCompile Include="$(SrcDir)command\automation.cpp" />
<ClCompile Include="$(SrcDir)command\command.cpp" />
<ClCompile Include="$(SrcDir)command\edit.cpp" />
<ClCompile Include="$(SrcDir)command\grid.cpp" />
<ClCompile Include="$(SrcDir)command\help.cpp" />
<ClCompile Include="$(SrcDir)command\icon.cpp" />
<ClCompile Include="$(SrcDir)command\keyframe.cpp" />
<ClCompile Include="$(SrcDir)command\recent.cpp" />
<ClCompile Include="$(SrcDir)command\subtitle.cpp" />
<ClCompile Include="$(SrcDir)command\time.cpp" />
<ClCompile Include="$(SrcDir)command\timecode.cpp" />
<ClCompile Include="$(SrcDir)command\tool.cpp" />
<ClCompile Include="$(SrcDir)command\video.cpp" />
<ClCompile Include="$(SrcDir)command\vis_tool.cpp" />
<ClCompile Include="$(SrcDir)compat.cpp" />
<ClCompile Include="$(SrcDir)dialog_about.cpp" />
<ClCompile Include="$(SrcDir)dialog_attachments.cpp" />
<ClCompile Include="$(SrcDir)dialog_automation.cpp" />
<ClCompile Include="$(SrcDir)dialog_autosave.cpp" />
<ClCompile Include="$(SrcDir)dialog_colorpicker.cpp" />
<ClCompile Include="$(SrcDir)dialog_detached_video.cpp" />
<ClCompile Include="$(SrcDir)dialog_dummy_video.cpp" />
<ClCompile Include="$(SrcDir)dialog_export.cpp" />
<ClCompile Include="$(SrcDir)dialog_export_ebu3264.cpp" />
<ClCompile Include="$(SrcDir)dialog_fonts_collector.cpp" />
<ClCompile Include="$(SrcDir)dialog_jumpto.cpp" />
<ClCompile Include="$(SrcDir)dialog_kara_timing_copy.cpp" />
<ClCompile Include="$(SrcDir)dialog_log.cpp" />
<ClCompile Include="$(SrcDir)dialog_paste_over.cpp" />
<ClCompile Include="$(SrcDir)dialog_progress.cpp" />
<ClCompile Include="$(SrcDir)dialog_properties.cpp" />
<ClCompile Include="$(SrcDir)dialog_resample.cpp" />
<ClCompile Include="$(SrcDir)dialog_search_replace.cpp" />
<ClCompile Include="$(SrcDir)dialog_selected_choices.cpp" />
<ClCompile Include="$(SrcDir)dialog_selection.cpp" />
<ClCompile Include="$(SrcDir)dialog_shift_times.cpp" />
<ClCompile Include="$(SrcDir)dialog_spellchecker.cpp" />
<ClCompile Include="$(SrcDir)dialog_style_editor.cpp" />
<ClCompile Include="$(SrcDir)dialog_style_manager.cpp" />
<ClCompile Include="$(SrcDir)dialog_styling_assistant.cpp" />
<ClCompile Include="$(SrcDir)dialog_text_import.cpp" />
<ClCompile Include="$(SrcDir)dialog_timing_processor.cpp" />
<ClCompile Include="$(SrcDir)dialog_translation.cpp" />
<ClCompile Include="$(SrcDir)dialog_version_check.cpp" />
<ClCompile Include="$(SrcDir)dialog_video_details.cpp" />
<ClCompile Include="$(SrcDir)export_fixstyle.cpp" />
<ClCompile Include="$(SrcDir)export_framerate.cpp" />
<ClCompile Include="$(SrcDir)ffmpegsource_common.cpp" />
<ClCompile Include="$(SrcDir)fft.cpp" />
<ClCompile Include="$(SrcDir)font_file_lister.cpp" />
<ClCompile Include="$(SrcDir)font_file_lister_fontconfig.cpp" />
<ClCompile Include="$(SrcDir)frame_main.cpp" />
<ClCompile Include="$(SrcDir)gl_text.cpp" />
<ClCompile Include="$(SrcDir)gl_wrap.cpp" />
<ClCompile Include="$(SrcDir)help_button.cpp" />
<ClCompile Include="$(SrcDir)hotkey.cpp" />
<ClCompile Include="$(SrcDir)hotkey_data_view_model.cpp" />
<ClCompile Include="$(SrcDir)initial_line_state.cpp" />
<ClCompile Include="$(SrcDir)lpeg.c">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<ForcedIncludeFiles></ForcedIncludeFiles>
</ClCompile>
<ClCompile Include="$(SrcDir)main.cpp" />
<ClCompile Include="$(SrcDir)menu.cpp" />
<ClCompile Include="$(SrcDir)mkv_wrap.cpp" />
<ClCompile Include="$(SrcDir)pen.cpp" />
<ClCompile Include="$(SrcDir)persist_location.cpp" />
<ClCompile Include="$(SrcDir)plugin_manager.cpp" />
<ClCompile Include="$(SrcDir)preferences.cpp" />
<ClCompile Include="$(SrcDir)preferences_base.cpp" />
<ClCompile Include="$(SrcDir)resolution_resampler.cpp" />
<ClCompile Include="$(SrcDir)scintilla_text_ctrl.cpp" />
<ClCompile Include="$(SrcDir)scintilla_text_selection_controller.cpp" />
<ClCompile Include="$(SrcDir)search_replace_engine.cpp" />
<ClCompile Include="$(SrcDir)spellchecker.cpp" />
<ClCompile Include="$(SrcDir)spellchecker_hunspell.cpp" />
<ClCompile Include="$(SrcDir)spline.cpp" />
<ClCompile Include="$(SrcDir)spline_curve.cpp" />
<ClCompile Include="$(SrcDir)string_codec.cpp" />
<ClCompile Include="$(SrcDir)subs_controller.cpp" />
<ClCompile Include="$(SrcDir)subs_edit_box.cpp" />
<ClCompile Include="$(SrcDir)subs_edit_ctrl.cpp" />
<ClCompile Include="$(SrcDir)subs_preview.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_ass.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_ebu3264.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_encore.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_microdvd.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_mkv.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_srt.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_transtation.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_ttxt.cpp" />
<ClCompile Include="$(SrcDir)subtitle_format_txt.cpp" />
<ClCompile Include="$(SrcDir)subtitles_provider.cpp" />
<ClCompile Include="$(SrcDir)subtitles_provider_csri.cpp" />
<ClCompile Include="$(SrcDir)subtitles_provider_libass.cpp" />
<ClCompile Include="$(SrcDir)text_file_reader.cpp" />
<ClCompile Include="$(SrcDir)text_file_writer.cpp" />
<ClCompile Include="$(SrcDir)thesaurus.cpp" />
<ClCompile Include="$(SrcDir)threaded_frame_source.cpp" />
<ClCompile Include="$(SrcDir)timeedit_ctrl.cpp" />
<ClCompile Include="$(SrcDir)toggle_bitmap.cpp" />
<ClCompile Include="$(SrcDir)toolbar.cpp" />
<ClCompile Include="$(SrcDir)tooltip_manager.cpp" />
<ClCompile Include="$(SrcDir)utils.cpp" />
<ClCompile Include="$(SrcDir)validators.cpp" />
<ClCompile Include="$(SrcDir)vector2d.cpp" />
<ClCompile Include="$(SrcDir)version.cpp" />
<ClCompile Include="$(SrcDir)video_box.cpp" />
<ClCompile Include="$(SrcDir)video_context.cpp" />
<ClCompile Include="$(SrcDir)video_display.cpp" />
<ClCompile Include="$(SrcDir)video_frame.cpp" />
<ClCompile Include="$(SrcDir)video_out_gl.cpp" />
<ClCompile Include="$(SrcDir)video_provider_avs.cpp" />
<ClCompile Include="$(SrcDir)video_provider_cache.cpp" />
<ClCompile Include="$(SrcDir)video_provider_dummy.cpp" />
<ClCompile Include="$(SrcDir)video_provider_ffmpegsource.cpp" />
<ClCompile Include="$(SrcDir)video_provider_manager.cpp" />
<ClCompile Include="$(SrcDir)video_provider_yuv4mpeg.cpp" />
<ClCompile Include="$(SrcDir)video_slider.cpp" />
<ClCompile Include="$(SrcDir)visual_feature.cpp" />
<ClCompile Include="$(SrcDir)visual_tool.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_clip.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_cross.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_drag.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_rotatexy.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_rotatez.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_scale.cpp" />
<ClCompile Include="$(SrcDir)visual_tool_vector_clip.cpp" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="$(SrcDir)res.rc" />
</ItemGroup>
<ItemGroup>
<MsgFmt Include="$(AegisubSourceBase)po\*.po" />
</ItemGroup>
<ImportGroup Label="ExtensionTargets">
<Import Project="$(MSBuildThisFileDirectory)Aegisub.targets" />
</ImportGroup>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -1,270 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
-->
<Rule Name="AegisubConfig"
DisplayName="Aegisub"
Order="1"
PageTemplate="tool"
xmlns="http://schemas.microsoft.com/build/2009/properties">
<Rule.DataSource>
<DataSource Persistence="UserFile" ItemType="" HasConfigurationCondition="true" />
</Rule.DataSource>
<Rule.Categories>
<Category Name="Config" DisplayName="Configuration" Description="General build configuration" />
<Category Name="Features" DisplayName="External libraries" Description="Control which optional external libraries to use" />
<Category Name="Paths" DisplayName="Library paths" Description="Configure third-party library paths" />
</Rule.Categories>
<!-- Config -->
<BoolProperty
Name="StartupLog"
DisplayName="Start-up logging"
Description="Enable verbose startup logging to help figuration out where an error occurs"
Category="Config"
/>
<StringProperty
Name="AegisubBuildCredit"
Category="Config"
DisplayName="Build credit"
Description="Name the build should be credited to. Appears in the about box, and in the title bar of development builds."
/>
<BoolProperty
Name="AegisubUseUpdateChecker"
Category="Config"
DisplayName="Enable Update Checker"
Description="Specify whether to enable the update checker. Should be disabled if you will be distributing builds via something that has its own update checking functionality."
/>
<StringProperty
Name="UpdateCheckerServer"
Category="Config"
DisplayName="Update Checker Server"
Description="Server name to connect to for updates."
/>
<StringProperty
Name="UpdateCheckerURL"
Category="Config"
DisplayName="Update Checker URL"
Description="URL to get for updates."
/>
<StringProperty
Name="MsgFmtPath"
Category="Config"
DisplayName="msgfmt.exe location"
Description="Location of msgfmt.exe, for compiling translations"
/>
<!-- External Libraries -->
<BoolProperty
Name="AegisubUseAvisynth"
Category="Features"
DisplayName="Avisynth"
Description="Enable the Avisynth audio and video providers. This is experimental on x64. This has no external build dependencies."
/>
<EnumProperty
Name="AegisubUseCsri"
DisplayName="Use CSRI subtitle renderer"
Description="Specify whether to include support for CSRI subtitle rendering. The included helper library dynamically loads CSRI renderers, while linking another library allows you to e.g. link VSFilter.dll directly."
Category="Features"
>
<EnumValue Name="HelperLibrary" DisplayName="Use included helper library" Description="Use the included helper library to dynamically load CSRI renderers." />
<EnumValue Name="External" DisplayName="Link other library" Description="Use another CSRI renderer" />
<EnumValue Name="false" DisplayName="No CSRI support" Description="Do not use CSRI" />
</EnumProperty>
<BoolProperty
Name="AegisubUseDSound"
Category="Features"
DisplayName="DirectSound"
Description="Enable the DirectSound-based audio player. This requires the DirectX SDK."
/>
<BoolProperty
Name="AegisubUseFfms"
Category="Features"
DisplayName="FFMS2"
Description="Enable the FFMS2 audio and video providers. Requires copies of the FFMS2 and FFmpeg/libav source"
/>
<BoolProperty
Name="AegisubUseFftw"
Category="Features"
DisplayName="FFTW"
Description="A high-speed fourier transformation library which improves the spectograph speed and quality. Requires a copy of the FFTW 3.2 source."
/>
<BoolProperty
Name="AegisubUseOpenAl"
Category="Features"
DisplayName="OpenAL"
Description="OpenAL audio player. Requires a copy of the OpenAL SDK."
/>
<!-- Library Paths -->
<StringProperty
Subtype="folder"
Name="MsysBasePath"
Category="Paths"
DisplayName="MSYS root"
Description="Root directory of a copy of msys with git installed. Only required if it is not on your PATH."
/>
<StringProperty
Subtype="folder"
Name="WinRarPath"
Category="Paths"
DisplayName="WinRAR.exe location"
Description="Location of a copy of WinRAR.exe. Required to build the portable installer."
/>
<StringProperty
Subtype="folder"
Name="BoostPath"
Category="Paths"
DisplayName="Boost root path"
Description="Location of a copy of boost."
/>
<StringProperty
Subtype="folder"
Name="CsriLibraryPath"
Category="Paths"
DisplayName="External CSRI library path"
Description="Location of external CSRI library files, for when not using the CSRI helper library."
/>
<StringProperty
Subtype="file"
Name="CsriLibraryName"
Category="Paths"
DisplayName="External CSRI library name"
Description="Name of external CSRI library, for when not using the CSRI helper library"
/>
<StringProperty
Subtype="folder"
Name="DirectXSDKPath"
Category="Paths"
DisplayName="DirectX SDK root path"
Description="Location of DirectX SDK installation for DirectSound support. This is usually auto-detected."
/>
<StringProperty
Subtype="folder"
Name="FfmsSrcDir"
Category="Paths"
DisplayName="FFMS2 source path"
Description="Location of FFMS2 source code."
/>
<StringProperty
Subtype="folder"
Name="FfmpegSrcDir"
Category="Paths"
DisplayName="FFmpeg/libav source path"
Description="Location of FFmpeg or libav source code. Required for FFMS2."
/>
<StringProperty
Subtype="folder"
Name="FftwSrcDir"
Category="Paths"
DisplayName="FFTW 3 source path"
Description="Location of FFTW 3 source code."
/>
<StringProperty
Subtype="folder"
Name="Freetype2SrcDir"
Category="Paths"
DisplayName="Freetype 2 source path"
Description="Location of Freetype 2 source code. Required for libass and fontconfig."
/>
<StringProperty
Subtype="folder"
Name="FribidiSrcDir"
Category="Paths"
DisplayName="Fribidi source path"
Description="Location of Fribidi source code. Required for libass."
/>
<StringProperty
Subtype="folder"
Name="FontconfigSrcDir"
Category="Paths"
DisplayName="Fontconfig source path"
Description="Location of Fontconfig source code."
/>
<StringProperty
Subtype="folder"
Name="IcuSrcDir"
Category="Paths"
DisplayName="ICU source path"
Description="Location of ICU source code."
/>
<StringProperty
Subtype="folder"
Name="GtestSrcDir"
Category="Paths"
DisplayName="googletest source path"
Description="Location of googletest source code."
/>
<StringProperty
Subtype="folder"
Name="LibassSrcDir"
Category="Paths"
DisplayName="libass source path"
Description="Location of libass source code."
/>
<StringProperty
Subtype="folder"
Name="WxSrcDir"
Category="Paths"
DisplayName="wxWidgets source path"
Description="Location of wxWidgets source code."
/>
<StringProperty
Subtype="folder"
Name="ZlibSrcDir"
Category="Paths"
DisplayName="zlib source path"
Description="Location of zlib source code. Required for FFMS2."
/>
</Rule>

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_PropertySheetDisplayName>Standard Libraries</_PropertySheetDisplayName>
</PropertyGroup>
<ItemDefinitionGroup>
<Link>
<AdditionalDependencies>
Vfw32.lib;
comctl32.lib;
rpcrt4.lib;
winmm.lib;
advapi32.lib;
wsock32.lib;
opengl32.lib;
sicudt.lib;
sicuin.lib;
sicutu.lib;
sicuuc.lib;
fribidi.lib;
%(AdditionalDependencies)
</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@ -1,127 +0,0 @@
// Copyright (c) 2012, Thomas Goyne <plorkyeran@aegisub.org>
//
// Permission to use, copy, modify, and distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice appear in all copies.
//
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
//
// Aegisub Project http://www.aegisub.org/
module BuildTasks
open System
open System.Diagnostics
open Microsoft.Build.Evaluation
open Microsoft.Build.Framework
open Microsoft.Build.Utilities
/// Read all of the defined properties from the calling project file and stuff
/// them in a Map
let propertyMap (be : IBuildEngine) =
use reader = Xml.XmlReader.Create(be.ProjectFileOfTaskNode)
let project = new Project(reader)
project.AllEvaluatedProperties
|> Seq.filter (fun x -> not x.IsEnvironmentProperty)
|> Seq.filter (fun x -> not x.IsGlobalProperty)
|> Seq.filter (fun x -> not x.IsReservedProperty)
|> Seq.map (fun x -> (x.Name, x.EvaluatedValue))
|> Map.ofSeq
/// Convert an absolute windows path to an msys path
let mungePath path =
let matchre pat str =
let m = System.Text.RegularExpressions.Regex.Match(str, pat)
if m.Success
then List.tail [ for g in m.Groups -> g.Value ]
else []
match matchre "([A-Za-z]):\\\\(.*)" path with
| drive :: path :: [] -> sprintf "/%s/%s" drive (path.Replace('\\', '/'))
| _ -> path
type ShellWrapper(conf : ITaskItem) =
inherit ToolTask()
member val Arguments = "" with get, set
member val WorkingDirectory = "" with get, set
// ToolTask overrides
override val ToolName = "sh.exe" with get
override this.GenerateFullPathToTool() = conf.GetMetadata "Sh"
override this.GenerateCommandLineCommands() = this.Arguments
override this.GetWorkingDirectory() = this.WorkingDirectory
override this.Execute() =
if this.GenerateFullPathToTool() |> IO.File.Exists |> not then
failwith "sh.exe not found. Make sure the MSYS root is set to a correct location."
if not <| IO.Directory.Exists this.WorkingDirectory then ignore <| IO.Directory.CreateDirectory this.WorkingDirectory
this.UseCommandProcessor <- false
this.StandardOutputImportance <- "High"
this.EnvironmentVariables <- [| for x in ["CC"; "CPP"; "CFLAGS"; "PATH"; "INCLUDE"; "LIB"]
-> sprintf "%s=%s" <| x <| conf.GetMetadata(x).Replace("\n", "").Replace(" ", "") |]
base.Execute()
type ExecShellScript() =
inherit Task()
// Task arguments
[<Required>] member val WorkingDirectory = "" with get, set
[<Required>] member val Command = "" with get, set
[<Required>] member val Configuration : ITaskItem = null with get, set
member val Arguments = "" with get, set
member private this.realArgs () =
let cleanArgs = this.Arguments.Replace("\r", "").Replace('\n', ' ')
sprintf "-c '%s %s'" (mungePath this.Command) cleanArgs
override this.Execute() =
try
let sw = ShellWrapper(this.Configuration,
BuildEngine = this.BuildEngine,
HostObject = this.HostObject,
Arguments = this.realArgs(),
WorkingDirectory = this.WorkingDirectory)
sw.Execute()
with
| Failure(e) -> this.Log.LogError(e); false
| e -> this.Log.LogErrorFromException(e); false
type MsysPath() =
inherit Task()
member val Path = "" with get, set
[<Output>] member val Result = "" with get, set
override this.Execute() =
try
this.Result <- mungePath this.Path
true
with Failure(e) ->
this.Log.LogError(e)
false
type UpdateFile() =
inherit Task()
member val File = "" with get, set
member val Find = "" with get, set
member val Replacement = "" with get, set
override this.Execute() =
try
this.Log.LogMessage("Replacing '{0}' with '{1}' in '{2}'", this.Find, this.Replacement, this.File)
let text = IO.File.ReadAllText(this.File).Replace(this.Find, this.Replacement)
IO.File.WriteAllText(this.File, text)
true
with e ->
this.Log.LogErrorFromException e
false

View File

@ -1,71 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition="'$(Configuration)'==''">Debug</Configuration>
<Platform>AnyCPU</Platform>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>15c79e75-f5f6-451d-b870-94ed02af257e</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>BuildTakss</RootNamespace>
<AssemblyName>BuildTasks</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<Name>BuildTasks</Name>
<ProjectName>BuildTasks</ProjectName>
<RestorePackages>true</RestorePackages>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\..\</SolutionDir>
<TargetFSharpCoreVersion>4.3.0.0</TargetFSharpCoreVersion>
</PropertyGroup>
<Import Project="$(MSBuildThisFileDirectory)..\paths.props" />
<PropertyGroup>
<OutputPath>$(AegisubBinaryDir)</OutputPath>
<IntermediateOutputPath>$(AegisubObjectDir)</IntermediateOutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<Tailcalls>false</Tailcalls>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<WarningLevel>3</WarningLevel>
<StartAction>Program</StartAction>
<StartProgram>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</StartProgram>
<StartWorkingDirectory>Z:\src\temp\aegisub\aegisub</StartWorkingDirectory>
<StartArguments>/p:BuildProjectReferences=false build\deps\deps.vcxproj</StartArguments>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<Tailcalls>true</Tailcalls>
<DefineConstants>TRACE</DefineConstants>
<WarningLevel>3</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<MinimumVisualStudioVersion Condition="'$(MinimumVisualStudioVersion)' == ''">12</MinimumVisualStudioVersion>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets" />
<ItemGroup>
<Compile Include="BuildTasks.fs" />
<Compile Include="DependencyFetchers.fs" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Reference Include="FSharp.Core, Version=$(TargetFSharpCoreVersion), Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Private>True</Private>
</Reference>
<Reference Include="ICSharpCode.SharpZipLib">
<HintPath>..\..\..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Build" />
<Reference Include="Microsoft.Build.Engine" />
<Reference Include="Microsoft.Build.Framework" />
<Reference Include="Microsoft.Build.Utilities.v4.0" />
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Net" />
<Reference Include="System.Numerics" />
<Reference Include="System.Xml" />
</ItemGroup>
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
</Project>

View File

@ -1,96 +0,0 @@
// Copyright (c) 2012, Thomas Goyne <plorkyeran@aegisub.org>
//
// Permission to use, copy, modify, and distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice appear in all copies.
//
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
//
// Aegisub Project http://www.aegisub.org/
module DependencyFetchers
open System
open System.Diagnostics
open System.Linq
open Microsoft.Build.Evaluation
open Microsoft.Build.Framework
open Microsoft.Build.Utilities
let downloadArchive (url : String) unpackDest =
use wc = new Net.WebClient()
use downloadStream = wc.OpenRead url
use gzStream = new ICSharpCode.SharpZipLib.GZip.GZipInputStream(downloadStream)
use tarStream = new ICSharpCode.SharpZipLib.Tar.TarInputStream(gzStream)
use tarArchive = ICSharpCode.SharpZipLib.Tar.TarArchive.CreateInputTarArchive tarStream
tarArchive.ExtractContents unpackDest
type TarballProject() =
inherit Task()
member val Projects : ITaskItem[] = null with get, set
member val Root = "" with get, set
override this.Execute() =
let needsUpdate directory version =
try
not <| String.Equals(sprintf "%s\\version.aegisub" directory |> IO.File.ReadAllText, version)
with | :? IO.IOException -> true
let update directory (project : ITaskItem) version =
try IO.Directory.Delete(directory, true) with | :? IO.IOException -> ()
this.Log.LogMessage ("Downloading {0} {1} from {2}", project.ItemSpec, version, project.GetMetadata "Url")
downloadArchive (project.GetMetadata "Url") (sprintf @"%s\.." directory)
let dirname = project.GetMetadata "DirName"
if not <| String.IsNullOrWhiteSpace dirname
then IO.Directory.Move(dirname |> sprintf @"%s\..\%s" directory, directory)
IO.File.WriteAllText(sprintf @"%s\version.aegisub" directory, version)
let check (project : ITaskItem) =
let directory = sprintf "%s\\%s" this.Root project.ItemSpec
let version = project.GetMetadata "Version"
if needsUpdate directory <| version
then update directory project version
else this.Log.LogMessage <| sprintf "%s is up to date" project.ItemSpec
try
this.Projects |> Array.map check |> ignore
true
with e ->
this.Log.LogErrorFromException e
false
type DownloadTgzFile() =
inherit Task()
member val Url = "" with get, set
member val Destination = "" with get, set
member val OutputFile = "" with get, set
member val Hash = "" with get, set
override this.Execute() =
let needsDownload =
try
use fs = IO.File.OpenRead this.OutputFile
let sha = new Security.Cryptography.SHA1Managed ()
let hash = sha.ComputeHash fs
BitConverter.ToString(hash).Replace("-", "") <> this.Hash
with | :? IO.IOException -> true
try
if needsDownload
then downloadArchive this.Url this.Destination
true
with e ->
this.Log.LogErrorFromException e
false

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="SharpZipLib" version="0.86.0" targetFramework="net45" />
</packages>

View File

@ -1,74 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
$Id$
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Default settings for build-time options -->
<PropertyGroup>
<AegisubBuildCredit>Anonymous</AegisubBuildCredit>
<AegisubUseAvisynth Condition="'$(AegisubUseAvisynth)|$(Platform)'=='|Win32'">true</AegisubUseAvisynth>
<AegisubUseAvisynth Condition="'$(AegisubUseAvisynth)|$(Platform)'=='|x64'">false</AegisubUseAvisynth>
<AegisubUseCsri>HelperLibrary</AegisubUseCsri>
<AegisubUseDSound>true</AegisubUseDSound>
<AegisubUseFfms>true</AegisubUseFfms>
<AegisubUseFftw>true</AegisubUseFftw>
<AegisubUseOpenAl>false</AegisubUseOpenAl>
<AegisubUseUpdateChecker>true</AegisubUseUpdateChecker>
<CsriLibraryName>vsfilter.lib</CsriLibraryName>
<DirectXSDKPath>$(DXSDK_DIR)</DirectXSDKPath>
<StartupLog>false</StartupLog>
<UpdateCheckerServer>updates.aegisub.org</UpdateCheckerServer>
<UpdateCheckerURL>/trunk</UpdateCheckerURL>
<BoostPath>..\..\..\deps\boost</BoostPath>
<FfmsSrcDir>..\..\..\deps\ffms2</FfmsSrcDir>
<FfmpegSrcDir>..\..\..\deps\ffmpeg</FfmpegSrcDir>
<FftwSrcDir>..\..\..\deps\fftw</FftwSrcDir>
<Freetype2SrcDir>..\..\..\deps\freetype2</Freetype2SrcDir>
<FribidiSrcDir>..\..\..\deps\fribidi</FribidiSrcDir>
<FontconfigSrcDir>..\..\..\deps\fontconfig</FontconfigSrcDir>
<GtestSrcDir>..\..\..\deps\googletest</GtestSrcDir>
<IcuSrcDir>..\..\..\deps\icu\source</IcuSrcDir>
<LibassSrcDir>..\..\..\deps\libass</LibassSrcDir>
<WxSrcDir>..\..\..\deps\wxWidgets</WxSrcDir>
<ZlibSrcDir>..\..\..\deps\zlib</ZlibSrcDir>
</PropertyGroup>
<PropertyGroup Condition="'$(MsysBasePath)' == ''">
<MsysBasePath Condition="Exists('c:\msys\bin\git.exe')">c:\msys</MsysBasePath>
<MsysBasePath Condition="Exists('c:\msysgit\bin\git.exe')">c:\msysgit</MsysBasePath>
<MsysBasePath Condition="Exists('%PROGRAMFILES%\Git\bin\git.exe')">%PROGRAMFILES%\Git</MsysBasePath>
<MsysBasePath Condition="Exists('%PROGRAMFILES(X86)%\Git\bin\git.exe')">%PROGRAMFILES(X86)%\Git</MsysBasePath>
<MsysBasePath Condition="Exists('%PROGRAMW6432%\Git\bin\git.exe')">%PROGRAMW6432%\Git</MsysBasePath>
</PropertyGroup>
</Project>

View File

@ -1,146 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{5B0E9978-E76F-4BBC-8194-228323F59B53}</ProjectGuid>
<RootNamespace>PortableInstaller</RootNamespace>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
<Import Project="$(MSBuildThisFileDirectory)..\git_version.xml" />
</ImportGroup>
<PropertyGroup>
<PlatformName Condition="$(Platform) == 'Win32'">x86</PlatformName>
<PlatformName Condition="$(Platform) == 'x64'">x64</PlatformName>
<FileName>aegisub-$(GitVersionString)-portable-$(AegisubPlatformSuffix)</FileName>
<OutputFile>$(AegisubSourceBase)packages\win_installer\output\$(FileName).exe</OutputFile>
</PropertyGroup>
<Target Name="Build">
<Error
Condition="!Exists($(WinRarPath))"
Text="WinRAR.exe not found. Please set the path to it."
/>
<MakeDir Directories="$(AegisubObjectDir)\$(FileName)" />
<MakeDir Directories="$(AegisubSourceBase)\packages\win_installer\output" />
<Copy
SourceFiles="@(RarContents)"
DestinationFiles="$(AegisubObjectDir)$(FileName)\%(RarContents.OutputPath)%(Filename)%(Extension)"
SkipUnchangedFiles="true"
/>
<Copy
SourceFiles="@(RarMetafiles)"
DestinationFolder="$(AegisubObjectDir)"
SkipUnchangedFiles="true"
/>
<Delete Files="$(OutputFile)" />
<Exec
Command="&quot;$(WinRarPath)&quot; a -sfx -s -m5 -ep1 -r -zportable-comment.txt -iimgside-logo.bmp -iiconicon.ico $(OutputFile) $(FileName)"
WorkingDirectory="$(AegisubObjectDir)"
/>
</Target>
<ItemGroup>
<RarContents Include="$(AegisubSourceBase)automation\autoload\clean-info.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\cleantags-autoload.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\kara-templater.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\karaoke-auto-leadin.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\macro-1-edgeblur.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\macro-2-mkfullwitdh.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\select-overlaps.moon">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\strip-tags.lua">
<OutputPath>automation\autoload\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\demos\future-windy-blur.lua">
<OutputPath>automation\demos\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\demos\raytracer.lua">
<OutputPath>automation\demos\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\clipboard.lua">
<OutputPath>automation\include\aegisub\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\re.moon">
<OutputPath>automation\include\aegisub\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\unicode.moon">
<OutputPath>automation\include\aegisub\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\util.moon">
<OutputPath>automation\include\aegisub\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\cleantags.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\clipboard.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\karaskel-auto4.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\karaskel.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\moonscript.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\re.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\unicode.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\utils-auto4.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\utils.lua">
<OutputPath>automation\include\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\AssDraw3.chm" />
<RarContents Include="$(AegisubSourceBase)bin\AssDraw3.exe" />
<RarContents Include="$(AegisubSourceBase)bin\DirectShowSource.dll" Condition="'$(AegisubUseAvisynth)' == 'true'" />
<RarContents Include="$(AegisubSourceBase)bin\aegisub$(AegisubPlatformSuffix).exe" />
<RarContents Include="$(AegisubSourceBase)bin\avisynth.dll" Condition="'$(AegisubUseAvisynth)' == 'true'" />
<RarContents Include="$(AegisubSourceBase)bin\csri\xy-vsfilter-aegisub$(PlatformArchitecture).dll" Condition="'$(AegisubUseCsri)' == 'HelperLibrary'">
<OutputPath>csri\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\devil.dll" Condition="'$(AegisubUseAvisynth)' == 'true'" />
<RarContents Include="$(AegisubSourceBase)bin\ffms2_$(AegisubPlatformSuffix).dll" Condition="'$(AegisubUseFfms)' == 'true'" />
<RarContents Include="$(AegisubSourceBase)packages\win_installer\portable\config.json" />
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC120.CRT\msvcp120.dll" />
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC120.CRT\msvcr120.dll" />
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC120.MFC\mfc120u.dll" />
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC120.MFC\mfcm120u.dll" />
<RarContents Include="$(AegisubSourceBase)bin\dictionaries\en_US.aff">
<OutputPath>dictionaries\</OutputPath>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\dictionaries\en_US.dic">
<OutputPath>dictionaries\</OutputPath>
</RarContents>
</ItemGroup>
<ItemGroup>
<RarMetafiles Include="$(AegisubSourceBase)packages\win_installer\portable\icon.ico" />
<RarMetafiles Include="$(AegisubSourceBase)packages\win_installer\portable\side-logo.bmp" />
<RarMetafiles Include="$(AegisubSourceBase)packages\win_installer\portable\portable-comment.txt" />
</ItemGroup>
</Project>

View File

@ -1,146 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Automation">
<UniqueIdentifier>{2c1914de-647f-44ab-a698-a289b10ec29c}</UniqueIdentifier>
</Filter>
<Filter Include="Automation\Autoload">
<UniqueIdentifier>{862d477a-6db6-4ef0-b547-fa347b8d3aff}</UniqueIdentifier>
</Filter>
<Filter Include="Automation\Include">
<UniqueIdentifier>{d15cec98-3f6e-4713-a192-8cfdf1bac1d0}</UniqueIdentifier>
</Filter>
<Filter Include="CSRI">
<UniqueIdentifier>{61b13b0c-d018-48c6-8629-b44b83aa0dc8}</UniqueIdentifier>
</Filter>
<Filter Include="Runtime">
<UniqueIdentifier>{0461dadd-a953-4fee-8240-bf3eb1d3a240}</UniqueIdentifier>
</Filter>
<Filter Include="Automation\Tests">
<UniqueIdentifier>{8880eb0c-4bf7-424d-9a79-73c20c2dd169}</UniqueIdentifier>
</Filter>
<Filter Include="Automation\Demos">
<UniqueIdentifier>{743db065-17d0-4595-b241-9baa143dd68c}</UniqueIdentifier>
</Filter>
<Filter Include="AssDraw">
<UniqueIdentifier>{8e48f676-fdad-4b6e-a146-58a300ee528d}</UniqueIdentifier>
</Filter>
<Filter Include="Avisynth">
<UniqueIdentifier>{63aff439-dbde-4092-8dad-905a01c4be6c}</UniqueIdentifier>
</Filter>
<Filter Include="Dictionaries">
<UniqueIdentifier>{baf7aa4e-709d-4a03-aee1-b54749006b82}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<RarContents Include="$(AegisubSourceBase)automation\autoload\clean-info.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\cleantags-autoload.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\kara-templater.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\karaoke-auto-leadin.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\macro-1-edgeblur.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\macro-2-mkfullwitdh.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\select-overlaps.moon">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\autoload\strip-tags.lua">
<Filter>Automation\Autoload</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\demos\future-windy-blur.lua">
<Filter>Automation\Demos</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\demos\raytracer.lua">
<Filter>Automation\Demos</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\clipboard.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\re.moon">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\unicode.moon">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\aegisub\util.moon">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\cleantags.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\clipboard.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\karaskel-auto4.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\karaskel.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\moonscript.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\re.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\unicode.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\utils-auto4.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)automation\include\utils.lua">
<Filter>Automation\Include</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\aegisub$(AegisubPlatformSuffix).exe" />
<RarContents Include="$(AegisubSourceBase)bin\ffms2_$(AegisubPlatformSuffix).dll" />
<RarContents Include="$(AegisubSourceBase)packages\win_installer\portable\config.json" />
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC110.MFC\mfc110u.dll">
<Filter>Runtime</Filter>
</RarContents>
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC110.MFC\mfcm110u.dll">
<Filter>Runtime</Filter>
</RarContents>
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC110.CRT\msvcp110.dll">
<Filter>Runtime</Filter>
</RarContents>
<RarContents Include="$(VCInstallDir)redist\$(PlatformName)\Microsoft.VC110.CRT\msvcr110.dll">
<Filter>Runtime</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\csri\xy-vsfilter-aegisub$(PlatformArchitecture).dll">
<Filter>CSRI</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\AssDraw3.chm">
<Filter>AssDraw</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\AssDraw3.exe">
<Filter>AssDraw</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\avisynth.dll">
<Filter>Avisynth</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\devil.dll">
<Filter>Avisynth</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\DirectShowSource.dll">
<Filter>Avisynth</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\dictionaries\en_US.aff">
<Filter>Dictionaries</Filter>
</RarContents>
<RarContents Include="$(AegisubSourceBase)bin\dictionaries\en_US.dic">
<Filter>Dictionaries</Filter>
</RarContents>
</ItemGroup>
</Project>

View File

@ -1,65 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>Aegisub project</_PropertySheetDisplayName>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<!-- Base configuration for VC projects -->
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="Configuration">
<ConfigurationType Condition="'$(AegisubProjectType)'=='lib'">StaticLibrary</ConfigurationType>
<ConfigurationType Condition="'$(AegisubProjectType)'=='dll'">DynamicLibrary</ConfigurationType>
<ConfigurationType Condition="'$(AegisubProjectType)'=='exe'">Application</ConfigurationType>
<UseDebugLibraries Condition="'$(Configuration)'=='Debug'" >true</UseDebugLibraries>
<UseDebugLibraries Condition="'$(Configuration)'=='Release'" >false</UseDebugLibraries>
<WholeProgramOptimization Condition="'$(Configuration)'=='Release'" >true</WholeProgramOptimization>
<CharacterSet >Unicode</CharacterSet>
<PlatformToolset >v120_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<!-- Default configuration -->
<ImportGroup Label="ExtensionSettings">
<Import Project="$(MSBuildThisFileDirectory)\DefaultConfiguration.props" />
<!-- Import the Aegisub user config file for non-Aegisub projects since
there doesn't seem to be any sort of solution-wide config file -->
<Import Project="$(MSBuildThisFileDirectory)\Aegisub\Aegisub.vcxproj.user"
Condition="'$(MSBuildProjectName)' != 'Aegisub' and Exists('$(MSBuildThisFileDirectory)\Aegisub\Aegisub.vcxproj.user')" />
</ImportGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)userconfig\*.props" />
<Import Project="$(MSBuildThisFileDirectory)paths.props" />
<Import Project="$(MSBuildThisFileDirectory)Aegisub\standard-libraries.props" />
<Import Project="$(MSBuildThisFileDirectory)standard-settings.props" />
<Import Project="$(MSBuildThisFileDirectory)standard-outdirs.props" />
<Import Project="$(MSBuildThisFileDirectory)tasks.props" />
</ImportGroup>
<!-- The standard targets need to go last for all paths to be proper -->
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Label="LocalAppDataPlatform" />
<ImportGroup Label="Targets">
<Import Project="$(MSBuildThisFileDirectory)install.targets" />
</ImportGroup>
</Project>

View File

@ -1,132 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{A649D828-A399-4D81-ADEF-94CFDBA7847F}</ProjectGuid>
<RootNamespace>boost</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>
BOOST_LOCALE_WITH_ICONV=1;
BOOST_LOCALE_WITH_ICU=1;
BOOST_LOCALE_NO_STD_BACKEND=1;
BOOST_LOCALE_NO_WINAPI_BACKEND=1;
BOOST_LOCALE_NO_POSIX_BACKEND=1;
BOOST_THREAD_BUILD_LIB;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<AdditionalIncludeDirectories>
$(AegisubContribBase)iconv\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<Target Name="CopyHeaders" BeforeTargets="ClCompile">
<!-- All this cruft is to work around that despite what the documentation
claims, %(RecursiveDir) matches everything from the first * (not even
**) until the last / -->
<ItemGroup>
<BoostLibraries Include="$([System.IO.Directory]::GetDirectories(&quot;$(BoostPath)\libs&quot;))" />
<BoostIncludeDirs Include="%(BoostLibraries.Identity)\include\boost;$(BoostPath)\libs\numeric\conversion\include\boost" />
<Headers Include="%(BoostIncludeDirs.Identity)\**\*.*" />
</ItemGroup>
<Copy
SourceFiles="@(Headers)"
DestinationFiles="@(Headers->'$(AegisubSourceBase)include\boost\%(RecursiveDir)%(Filename)%(Extension)')"
SkipUnchangedFiles="true"
/>
</Target>
<!-- Source files -->
<ItemGroup>
<ClCompile Include="$(BoostPath)\libs\regex\src\cpp_regex_traits.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\cregex.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\c_regex_traits.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\fileiter.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\instances.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\posix_api.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\regex.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\regex_raw_buffer.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\regex_traits_defaults.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\static_mutex.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\usinstances.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\w32_regex_traits.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\wc_regex_traits.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\wide_posix_api.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\winstances.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\codecvt_error_category.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\operations.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\path.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\path_traits.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\portability.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\unique_path.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\utf8_codecvt_facet.cpp" />
<ClCompile Include="$(BoostPath)\libs\filesystem\src\windows_file_codecvt.cpp" />
<ClCompile Include="$(BoostPath)\libs\system\src\error_code.cpp" />
<ClCompile Include="$(BoostPath)\libs\regex\src\icu.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\encoding\codepage.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\boundary.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\codecvt.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\collator.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\conversion.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\date_time.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\formatter.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\icu_backend.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\numeric.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\time_zone.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\date_time.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\format.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\formatting.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\generator.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\ids.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\localization_backend.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\message.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\mo_lambda.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\util\codecvt_converter.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\util\default_locale.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\util\gregorian.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\util\info.cpp" />
<ClCompile Include="$(BoostPath)\libs\locale\src\util\locale_data.cpp" />
<ClCompile Include="$(BoostPath)\libs\thread\src\win32\thread.cpp" />
<ClCompile Include="$(BoostPath)\libs\thread\src\win32\tss_pe.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(BoostPath)\libs\regex\src\internals.hpp" />
<ClInclude Include="$(BoostPath)\libs\filesystem\src\windows_file_codecvt.hpp" />
<ClInclude Include="$(BoostPath)\libs\system\src\local_free_on_destruction.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\encoding\conv.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\all_generator.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\cdata.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\codecvt.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\formatter.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\icu_backend.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\icu_util.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\predefined_formatters.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\time_zone.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\uconv.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\ios_prop.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\mo_hash.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\mo_lambda.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\util\gregorian.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\util\iconv.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\util\locale_data.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\util\numeric.hpp" />
<ClInclude Include="$(BoostPath)\libs\locale\src\util\timezone.hpp" />
</ItemGroup>
<ItemGroup>
<None Include="$(BoostPath)\libs\locale\src\encoding\iconv_codepage.ipp" />
<None Include="$(BoostPath)\libs\locale\src\encoding\uconv_codepage.ipp" />
<None Include="$(BoostPath)\libs\locale\src\encoding\wconv_codepage.ipp" />
</ItemGroup>
</Project>

View File

@ -1,260 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="regex">
<UniqueIdentifier>{e091980d-4374-41b8-aa61-1b07695e1b17}</UniqueIdentifier>
</Filter>
<Filter Include="system">
<UniqueIdentifier>{be9f03e9-74a3-4705-97ee-105a404d8a10}</UniqueIdentifier>
</Filter>
<Filter Include="filesystem">
<UniqueIdentifier>{98abe5b9-aca6-4145-ab6d-e472e24eb522}</UniqueIdentifier>
</Filter>
<Filter Include="locale">
<UniqueIdentifier>{0dae6521-8684-471f-8d62-9fe3b9295b0c}</UniqueIdentifier>
</Filter>
<Filter Include="locale\encoding">
<UniqueIdentifier>{8c30568b-1ab1-4815-82e0-127ad31732d7}</UniqueIdentifier>
</Filter>
<Filter Include="locale\icu">
<UniqueIdentifier>{47e5ad22-f37e-4512-a8e1-bcb5f04ad24b}</UniqueIdentifier>
</Filter>
<Filter Include="locale\shared">
<UniqueIdentifier>{52190269-979d-429b-a825-8e68eacc2274}</UniqueIdentifier>
</Filter>
<Filter Include="locale\util">
<UniqueIdentifier>{829ed5fb-dcba-4d3e-910c-33341e0e6379}</UniqueIdentifier>
</Filter>
<Filter Include="thread">
<UniqueIdentifier>{c76e09db-3a8e-4eaf-bb9a-6bac6945fd6f}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(BoostPath)\libs\regex\src\c_regex_traits.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\cpp_regex_traits.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\cregex.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\fileiter.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\instances.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\posix_api.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\regex.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\regex_raw_buffer.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\regex_traits_defaults.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\static_mutex.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\usinstances.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\w32_regex_traits.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\wc_regex_traits.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\wide_posix_api.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\winstances.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\system\src\error_code.cpp">
<Filter>system</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\codecvt_error_category.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\operations.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\path.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\path_traits.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\portability.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\unique_path.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\utf8_codecvt_facet.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\filesystem\src\windows_file_codecvt.cpp">
<Filter>filesystem</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\regex\src\icu.cpp">
<Filter>regex</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\boundary.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\codecvt.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\collator.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\conversion.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\date_time.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\formatter.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\icu_backend.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\numeric.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\icu\time_zone.cpp">
<Filter>locale\icu</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\util\codecvt_converter.cpp">
<Filter>locale\util</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\util\default_locale.cpp">
<Filter>locale\util</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\util\gregorian.cpp">
<Filter>locale\util</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\util\info.cpp">
<Filter>locale\util</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\util\locale_data.cpp">
<Filter>locale\util</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\date_time.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\format.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\formatting.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\generator.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\ids.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\localization_backend.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\message.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\shared\mo_lambda.cpp">
<Filter>locale\shared</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\locale\src\encoding\codepage.cpp">
<Filter>locale\encoding</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\thread\src\win32\thread.cpp">
<Filter>thread</Filter>
</ClCompile>
<ClCompile Include="$(BoostPath)\libs\thread\src\win32\tss_pe.cpp">
<Filter>thread</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(BoostPath)\libs\regex\src\internals.hpp">
<Filter>regex</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\system\src\local_free_on_destruction.hpp">
<Filter>system</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\filesystem\src\windows_file_codecvt.hpp">
<Filter>filesystem</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\all_generator.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\cdata.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\codecvt.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\formatter.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\icu_backend.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\icu_util.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\predefined_formatters.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\time_zone.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\icu\uconv.hpp">
<Filter>locale\icu</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\util\gregorian.hpp">
<Filter>locale\util</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\util\iconv.hpp">
<Filter>locale\util</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\util\locale_data.hpp">
<Filter>locale\util</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\util\numeric.hpp">
<Filter>locale\util</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\util\timezone.hpp">
<Filter>locale\util</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\ios_prop.hpp">
<Filter>locale\shared</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\mo_hash.hpp">
<Filter>locale\shared</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\shared\mo_lambda.hpp">
<Filter>locale\shared</Filter>
</ClInclude>
<ClInclude Include="$(BoostPath)\libs\locale\src\encoding\conv.hpp">
<Filter>locale\encoding</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="$(BoostPath)\libs\locale\src\encoding\iconv_codepage.ipp">
<Filter>locale\encoding</Filter>
</None>
<None Include="$(BoostPath)\libs\locale\src\encoding\uconv_codepage.ipp">
<Filter>locale\encoding</Filter>
</None>
<None Include="$(BoostPath)\libs\locale\src\encoding\wconv_codepage.ipp">
<Filter>locale\encoding</Filter>
</None>
</ItemGroup>
</Project>

View File

@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- VC boilerplate -->
<PropertyGroup Label="Globals">
<ProjectGuid>{C832EAF3-860D-4373-A02C-933626B47A5E}</ProjectGuid>
<RootNamespace>csrihelper</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\..\contrib\csri\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>CSRI_NO_EXPORT;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SrcDir)include\;$(SrcDir)lib\;$(SrcDir)lib\win32\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(SrcDir)include\csri\csri.h" />
<ClInclude Include="$(SrcDir)include\csri\fmtids.h" />
<ClInclude Include="$(SrcDir)include\csri\logging.h" />
<ClInclude Include="$(SrcDir)include\csri\openerr.h" />
<ClInclude Include="$(SrcDir)include\csri\stream.h" />
<ClInclude Include="$(SrcDir)include\subhelp.h" />
<ClInclude Include="$(SrcDir)include\visibility.h" />
<ClInclude Include="$(SrcDir)lib\csrilib.h" />
<ClInclude Include="$(SrcDir)lib\win32\csrilib_os.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)lib\list.c" />
<ClCompile Include="$(SrcDir)lib\win32\enumerate.c" />
<ClCompile Include="$(SrcDir)lib\wrap.c" />
<ClCompile Include="$(SrcDir)subhelp\logging.c" />
<ClCompile Include="$(SrcDir)subhelp\win32\openfile.c" />
</ItemGroup>
</Project>

View File

@ -1,63 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)include\csri\csri.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\csri\fmtids.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\csri\logging.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\csri\openerr.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\csri\stream.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\subhelp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\visibility.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lib\csrilib.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lib\win32\csrilib_os.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)lib\list.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lib\win32\enumerate.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lib\wrap.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)subhelp\logging.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)subhelp\win32\openfile.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2012, Thomas Goyne <plorkyeran@aegisub.org>
Permission to use, copy, modify, and distribute this software for any purpose
with or without fee is hereby granted, provided that the above copyright notice
and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
Aegisub Project http://www.aegisub.org/
-->
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{472212DF-99E8-4B73-9736-8500616D8A80}</ProjectGuid>
<ProjectName>! Update Dependencies</ProjectName>
</PropertyGroup>
<ItemGroup Label="tarball">
<TarballProject Include="fftw">
<Version>3.3.2</Version>
<Url>http://www.fftw.org/fftw-3.3.2.tar.gz</Url>
<DirName>fftw-3.3.2</DirName>
</TarballProject>
</ItemGroup>
<Import Project="$(MSBuildThisFileDirectory)\..\aegisub.props" />
<UsingTask TaskName="TarballProject" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
<UsingTask TaskName="DownloadTgzFile" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
<Target Name="Build">
<TarballProject Projects="@(TarballProject)" Root="$(MSBuildThisFileDirectory)..\..\..\deps" />
<!-- Generated with http://apps.icu-project.org/datacustom/ -->
<!-- Includes Break Iterator and Collator data only -->
<DownloadTgzFile
Url="http://www.aegisub.org/~plorkyeran/icudt51l.dat.tgz"
Destination="$(MSBuildThisFileDirectory)..\..\..\deps\icu\source\data\in"
OutputFile="$(MSBuildThisFileDirectory)..\..\..\deps\icu\source\data\in\icudt51l.dat"
Hash="0885a647fdd48645a6bba48a7f8957131882db02"
/>
</Target>
</Project>

View File

@ -1,122 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{F934AB7B-186B-4E96-B20C-A58C38C1B819}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<!-- Aegisub project configuration -->
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<PropertyGroup Label="ConfigArgs">
<CfgDebug Condition="'$(Configuration)' == 'Debug'">--enable-debug --disable-stripping --extra-cflags=-MDd</CfgDebug>
<CfgDebug Condition="'$(Configuration)' == 'Release'">--disable-debug --extra-cflags=-MD</CfgDebug>
<CfgArgs>
--disable-avfilter
--disable-avresample
--disable-bzlib
--disable-devices
--disable-doc
--disable-encoders
--disable-ffmpeg
--disable-ffplay
--disable-ffprobe
--disable-ffserver
--disable-filters
--disable-hwaccels
--disable-muxers
--disable-network
--disable-postproc
--disable-pthreads
--disable-shared
--disable-swresample
--enable-avresample
--enable-gpl
--enable-runtime-cpudetect
--enable-static
--enable-zlib
--extra-cflags=-D_SYSCRT
--extra-cflags=-wd4005
--extra-cflags=-wd4189
--toolchain=msvc
$(CfgDebug)
</CfgArgs>
<AbsSrcDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)$(FfmpegSrcDir)'))</AbsSrcDir>
</PropertyGroup>
<ItemGroup>
<ConfigureInput Include="$(AbsSrcDir)\configure" />
<ConfigureOutput Include="$(AegisubObjectDir)config.*" />
<ConfigureOutput Include="$(AegisubObjectDir)Makefile" />
<ConfigureOutput Include="$(AegisubObjectDir)libavutil\avconfig.h" />
</ItemGroup>
<Target Name="Configure"
Inputs="@(ConfigureInput)"
Outputs="@(ConfigureOutput)"
>
<MsysPath Path="$(AegisubObjectDir)\temp">
<Output TaskParameter="Result" PropertyName="CfgPrefix" />
</MsysPath>
<MsysPath Path="$(MSBuildThisFileDirectory)../../include">
<Output TaskParameter="Result" PropertyName="CfgIncludePrefix" />
</MsysPath>
<MsysPath Path="$(AegisubLibraryDir)">
<Output TaskParameter="Result" PropertyName="CfgLibPrefix" />
</MsysPath>
<Delete Files="$(AegisubObjectDir)build.timestamp" />
<ExecShellScript
Command="$(AbsSrcDir)\configure"
Arguments="$(CfgArgs) --prefix=$(CfgPrefix) --libdir=$(CfgLibPrefix) --incdir=$(CfgIncludePrefix)"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<!-- Ensure that Makefile has a recent modified time to avoid
rerunning configure pointlessly -->
<Touch Files="@(ConfigureOutput)" />
</Target>
<Target Name="Compile"
Inputs="$(FfmpegSrcDir)"
Outputs="$(AegisubObjectDir)build.timestamp"
>
<ExecShellScript
Command="make"
Arguments="-j$(NUMBER_OF_PROCESSORS)"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<ExecShellScript
Command="make install"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<Touch Files="$(AegisubObjectDir)build.timestamp" AlwaysCreate="true" />
</Target>
<Target Name="Build">
<Error Condition="!Exists('$(AbsSrcDir)')" Text="FFmpeg source not found at '$(AbsSrcDir)'" />
<CallTarget Targets="Configure" />
<CallTarget Targets="Compile" />
</Target>
<Target Name="Clean">
<RemoveDir Directories="$(AegisubObjectDir)" ContinueOnError="WarnAndContinue" />
</Target>
<Target Name="Rebuild">
<CallTarget Targets="Clean;Build" />
</Target>
</Project>

View File

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />

View File

@ -1,72 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{AA137613-96A1-4388-8905-71345B4F8F87}</ProjectGuid>
<RootNamespace>ffms2</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>dll</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>
$(FfmsSrcDir)\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<PreprocessorDefinitions>
WITH_AVRESAMPLE;
FFMS_EXPORTS;
HAALISOURCE;
_CRT_SECURE_NO_WARNINGS;
_CRT_NONSTDC_NO_DEPRECATE;
_SCL_SECURE_NO_WARNINGS;
__STDC_CONSTANT_MACROS;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<DisableSpecificWarnings>4250;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(AegisubLibraryDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(FfmsSrcDir)\include\ffms.h" />
<InstallHeader Include="$(FfmsSrcDir)\include\ffmscompat.h" />
</ItemGroup>
<ItemGroup>
<None Include="$(FfmsSrcDir)\src\avisynth\*.cpp" />
<None Include="$(FfmsSrcDir)\src\avisynth\*.h" />
<None Include="$(FfmsSrcDir)\src\vapoursynth\*.cpp" />
<None Include="$(FfmsSrcDir)\src\vapoursynth\*.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(FfmsSrcDir)\src\config\libs.cpp" />
<ClCompile Include="$(FfmsSrcDir)\src\core\*.cpp" />
<ClCompile Include="$(FfmsSrcDir)\src\core\*.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(FfmsSrcDir)\include\ffms.h" />
<ClInclude Include="$(FfmsSrcDir)\include\ffmscompat.h" />
<ClInclude Include="$(FfmsSrcDir)\src\config\msvc-config.h" />
<ClInclude Include="$(FfmsSrcDir)\src\core\*.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\ffmpeg\ffmpeg.vcxproj">
<Project>{f934ab7b-186b-4e96-b20c-a58c38c1b819}</Project>
</ProjectReference>
<ProjectReference Include="..\zlib\zlib.vcxproj">
<Project>{10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}</Project>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -1,393 +0,0 @@
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to compile in long-double precision. */
#undef BENCHFFT_LDOUBLE
/* Define to compile in quad precision. */
#undef BENCHFFT_QUAD
/* Define to compile in single precision. */
#undef BENCHFFT_SINGLE
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
systems. This function is required for `alloca.c' support on those systems.
*/
#undef CRAY_STACKSEG_END
/* Define to 1 if using `alloca.c'. */
#undef C_ALLOCA
/* Define to disable Fortran wrappers. */
#define DISABLE_FORTRAN 1
/* Define to dummy `main' function (if any) required to link to the Fortran
libraries. */
#undef F77_DUMMY_MAIN
/* Define to a macro mangling the given C identifier (in lower and upper
case), which must not contain underscores, for linking with Fortran. */
#undef F77_FUNC
/* As F77_FUNC, but for C identifiers containing underscores. */
#undef F77_FUNC_
/* Define if F77_FUNC and F77_FUNC_ are equivalent. */
#undef F77_FUNC_EQUIV
/* Define if F77 and FC dummy `main' functions are identical. */
#undef FC_DUMMY_MAIN_EQ_F77
/* C compiler name and flags */
#define FFTW_CC "cl"
/* Define to enable extra FFTW debugging code. */
#undef FFTW_DEBUG
/* Define to enable alignment debugging hacks. */
#undef FFTW_DEBUG_ALIGNMENT
/* Define to enable debugging malloc. */
#undef FFTW_DEBUG_MALLOC
/* Define to enable the use of alloca(). */
#undef FFTW_ENABLE_ALLOCA
/* Define to compile in long-double precision. */
#undef FFTW_LDOUBLE
/* Define to compile in quad precision. */
#undef FFTW_QUAD
/* Define to enable pseudorandom estimate planning for debugging. */
#undef FFTW_RANDOM_ESTIMATOR
/* Define to compile in single precision. */
#undef FFTW_SINGLE
/* Define to 1 if you have the `abort' function. */
#define HAVE_ABORT 1
/* Define to 1 if you have `alloca', as a function or macro. */
#undef HAVE_ALLOCA
/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
*/
#undef HAVE_ALLOCA_H
/* Define to enable Altivec optimizations. */
#undef HAVE_ALTIVEC
/* Define to 1 if you have the <altivec.h> header file. */
#undef HAVE_ALTIVEC_H
/* Define to enable AVX optimizations. */
#undef HAVE_AVX
/* Define to 1 if you have the `BSDgettimeofday' function. */
#undef HAVE_BSDGETTIMEOFDAY
/* Define to 1 if you have the `clock_gettime' function. */
#undef HAVE_CLOCK_GETTIME
/* Define to 1 if you have the `cosl' function. */
#define HAVE_COSL 1
/* Define to 1 if you have the <c_asm.h> header file. */
#undef HAVE_C_ASM_H
/* Define to 1 if you have the declaration of `cosl', and to 0 if you don't.
*/
#define HAVE_DECL_COSL 1
/* Define to 1 if you have the declaration of `cosq', and to 0 if you don't. */
#define HAVE_DECL_COSQ 0
/* Define to 1 if you have the declaration of `drand48', and to 0 if you don't. */
#define HAVE_DECL_DRAND48 0
/* Define to 1 if you have the declaration of `memalign', and to 0 if you don't. */
#define HAVE_DECL_MEMALIGN 0
/* Define to 1 if you have the declaration of `posix_memalign', and to 0 if you don't. */
#define HAVE_DECL_POSIX_MEMALIGN 0
/* Define to 1 if you have the declaration of `sinl', and to 0 if you don't. */
#define HAVE_DECL_SINL 1
/* Define to 1 if you have the declaration of `sinq', and to 0 if you don't.
*/
#define HAVE_DECL_SINQ 0
/* Define to 1 if you have the declaration of `srand48', and to 0 if you
don't. */
#define HAVE_DECL_SRAND48 0
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
#undef HAVE_DOPRNT
/* Define to 1 if you have the `drand48' function. */
#undef HAVE_DRAND48
/* Define if you have a machine with fused multiply-add */
#undef HAVE_FMA
/* Define to 1 if you have the `gethrtime' function. */
#undef HAVE_GETHRTIME
/* Define to 1 if you have the `gettimeofday' function. */
#undef HAVE_GETTIMEOFDAY
/* Define to 1 if hrtime_t is defined in <sys/time.h> */
#undef HAVE_HRTIME_T
/* Define to 1 if you have the <intrinsics.h> header file. */
#undef HAVE_INTRINSICS_H
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define if the isnan() function/macro is available. */
#undef HAVE_ISNAN
/* Define to 1 if you have the <libintl.h> header file. */
#undef HAVE_LIBINTL_H
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
/* Define to 1 if you have the `quadmath' library (-lquadmath). */
#undef HAVE_LIBQUADMATH
/* Define to 1 if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
/* Define to 1 if the compiler supports `long double' */
#define HAVE_LONG_DOUBLE 1
/* Define to 1 if you have the `mach_absolute_time' function. */
#undef HAVE_MACH_ABSOLUTE_TIME
/* Define to 1 if you have the <mach/mach_time.h> header file. */
#undef HAVE_MACH_MACH_TIME_H
/* Define to 1 if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
/* Define to 1 if you have the `memalign' function. */
#undef HAVE_MEMALIGN
/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1
/* Define to 1 if you have the `memset' function. */
#define HAVE_MEMSET 1
/* Define to enable MIPS paired-single optimizations. */
#undef HAVE_MIPS_PS
/* Define to enable use of MIPS ZBus cycle-counter. */
#undef HAVE_MIPS_ZBUS_TIMER
/* Define if you have the MPI library. */
#undef HAVE_MPI
/* Define if OpenMP is enabled */
#define HAVE_OPENMP 1
/* Define to 1 if you have the `posix_memalign' function. */
#undef HAVE_POSIX_MEMALIGN
/* Define if you have POSIX threads libraries and header files. */
#undef HAVE_PTHREAD
/* Define to 1 if you have the `read_real_time' function. */
#undef HAVE_READ_REAL_TIME
/* Define to 1 if you have the `sinl' function. */
#define HAVE_SINL 1
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
/* Define to 1 if you have the `sqrt' function. */
#define HAVE_SQRT 1
/* Define to enable SSE/SSE2 optimizations. */
#define HAVE_SSE2 1
/* Define to 1 if you have the <stddef.h> header file. */
#define HAVE_STDDEF_H 1
/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define to 1 if you have the `sysctl' function. */
#undef HAVE_SYSCTL
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/sysctl.h> header file. */
#undef HAVE_SYS_SYSCTL_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1
/* Define to 1 if you have the `tanl' function. */
#define HAVE_TANL 1
/* Define if we have a threads library. */
#undef HAVE_THREADS
/* Define to 1 if you have the `time_base_to_time' function. */
#undef HAVE_TIME_BASE_TO_TIME
/* Define to 1 if the system has the type `uintptr_t'. */
#define HAVE_UINTPTR_T 1
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the `vprintf' function. */
#define HAVE_VPRINTF 1
/* Define to 1 if you have the `_mm_free' function. */
#undef HAVE__MM_FREE
/* Define to 1 if you have the `_mm_malloc' function. */
#undef HAVE__MM_MALLOC
/* Define if you have the UNICOS _rtc() intrinsic. */
#undef HAVE__RTC
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/
#undef LT_OBJDIR
/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#undef NO_MINUS_C_MINUS_O
/* Name of package */
#define PACKAGE "fftw"
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "fftw@fftw.org"
/* Define to the full name of this package. */
#define PACKAGE_NAME "fftw"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "fftw-3.3"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "fftw"
/* Define to the home page for this package. */
#define PACKAGE_URL "http://www.fftw.org"
/* Define to the version of this package. */
#define PACKAGE_VERSION "3.3"
/* Define to necessary symbol if this constant uses a non-standard name on
your system. */
#undef PTHREAD_CREATE_JOINABLE
/* The size of `double', as computed by sizeof. */
#define SIZEOF_DOUBLE 8
/* The size of `fftw_r2r_kind', as computed by sizeof. */
#undef SIZEOF_FFTW_R2R_KIND
/* The size of `float', as computed by sizeof. */
#define SIZEOF_FLOAT 4
/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT 4
/* The size of `long', as computed by sizeof. */
#define SIZEOF_LONG 4
/* The size of `long long', as computed by sizeof. */
#define SIZEOF_LONG_LONG 8
/* The size of `MPI_Fint', as computed by sizeof. */
#undef SIZEOF_MPI_FINT
/* The size of `ptrdiff_t', as computed by sizeof. */
#define SIZEOF_PTRDIFF_T 4
/* The size of `size_t', as computed by sizeof. */
#define SIZEOF_SIZE_T 4
/* The size of `unsigned int', as computed by sizeof. */
#define SIZEOF_UNSIGNED_INT 4
/* The size of `unsigned long', as computed by sizeof. */
#define SIZEOF_UNSIGNED_LONG 4
/* The size of `unsigned long long', as computed by sizeof. */
#define SIZEOF_UNSIGNED_LONG_LONG 8
/* The size of `void *', as computed by sizeof. */
#define SIZEOF_VOID_P 4
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at runtime.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
#undef STACK_DIRECTION
/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define if we have and are using POSIX threads. */
#undef USING_POSIX_THREADS
/* Version number of package */
#define VERSION "3.3"
/* Use common Windows Fortran mangling styles for the Fortran interfaces. */
#undef WINDOWS_F77_MANGLING
/* Include g77-compatible wrappers in addition to any other Fortran wrappers.
*/
#undef WITH_G77_WRAPPERS
/* Use our own aligned malloc routine; mainly helpful for Windows systems
lacking aligned allocation system-library routines. */
#define WITH_OUR_MALLOC 1
/* Use low-precision timers, making planner very slow */
#undef WITH_SLOW_TIMER
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
#define inline __inline
#endif
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t

View File

@ -1,673 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{EA3DCC95-2423-4EA0-A508-7A427B4C0594}</ProjectGuid>
<RootNamespace>fftw</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>
$(FftwSrcDir)\;
$(FftwSrcDir)\api;
$(FftwSrcDir)\kernel;
$(FftwSrcDir)\dft;
$(FftwSrcDir)\dft\simd;
$(FftwSrcDir)\dft\scalar;
$(FftwSrcDir)\rdft;
$(FftwSrcDir)\rdft\simd;
$(FftwSrcDir)\rdft\scalar;
$(FftwSrcDir)\reodft;
$(FftwSrcDir)\simd-support;
$(FftwSrcDir)\threads;
$(MSBuildThisFileDirectory);
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
<OpenMPSupport>true</OpenMPSupport>
<StructMemberAlignment>Default</StructMemberAlignment>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(FftwSrcDir)\api\fftw3.h" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="config.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(FftwSrcDir)\api\apiplan.c" />
<ClCompile Include="$(FftwSrcDir)\api\configure.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-split-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-split-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute-split-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\execute.c" />
<ClCompile Include="$(FftwSrcDir)\api\export-wisdom-to-file.c" />
<ClCompile Include="$(FftwSrcDir)\api\export-wisdom-to-string.c" />
<ClCompile Include="$(FftwSrcDir)\api\export-wisdom.c" />
<ClCompile Include="$(FftwSrcDir)\api\f77api.c" />
<ClCompile Include="$(FftwSrcDir)\api\flops.c" />
<ClCompile Include="$(FftwSrcDir)\api\forget-wisdom.c" />
<ClCompile Include="$(FftwSrcDir)\api\import-system-wisdom.c" />
<ClCompile Include="$(FftwSrcDir)\api\import-wisdom-from-file.c" />
<ClCompile Include="$(FftwSrcDir)\api\import-wisdom-from-string.c" />
<ClCompile Include="$(FftwSrcDir)\api\import-wisdom.c" />
<ClCompile Include="$(FftwSrcDir)\api\malloc.c" />
<ClCompile Include="$(FftwSrcDir)\api\map-r2r-kind.c" />
<ClCompile Include="$(FftwSrcDir)\api\mapflags.c" />
<ClCompile Include="$(FftwSrcDir)\api\mkprinter-file.c" />
<ClCompile Include="$(FftwSrcDir)\api\mktensor-iodims.c" />
<ClCompile Include="$(FftwSrcDir)\api\mktensor-iodims64.c" />
<ClCompile Include="$(FftwSrcDir)\api\mktensor-rowmajor.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-1d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-2d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-3d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-c2r-1d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-c2r-2d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-c2r-3d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-r2c-1d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-r2c-2d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-r2c-3d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-split-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-split-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru-split-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-split-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-split-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-guru64-split-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-many-dft-c2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-many-dft-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-many-dft.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-many-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-r2r-1d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-r2r-2d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-r2r-3d.c" />
<ClCompile Include="$(FftwSrcDir)\api\plan-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\api\print-plan.c" />
<ClCompile Include="$(FftwSrcDir)\api\rdft2-pad.c" />
<ClCompile Include="$(FftwSrcDir)\api\the-planner.c" />
<ClCompile Include="$(FftwSrcDir)\api\version.c" />
<ClCompile Include="$(FftwSrcDir)\dft\bluestein.c" />
<ClCompile Include="$(FftwSrcDir)\dft\buffered.c" />
<ClCompile Include="$(FftwSrcDir)\dft\conf.c" />
<ClCompile Include="$(FftwSrcDir)\dft\ct.c" />
<ClCompile Include="$(FftwSrcDir)\dft\dftw-direct.c" />
<ClCompile Include="$(FftwSrcDir)\dft\dftw-directsq.c" />
<ClCompile Include="$(FftwSrcDir)\dft\dftw-generic.c" />
<ClCompile Include="$(FftwSrcDir)\dft\dftw-genericbuf.c" />
<ClCompile Include="$(FftwSrcDir)\dft\direct.c" />
<ClCompile Include="$(FftwSrcDir)\dft\generic.c" />
<ClCompile Include="$(FftwSrcDir)\dft\indirect-transpose.c" />
<ClCompile Include="$(FftwSrcDir)\dft\indirect.c" />
<ClCompile Include="$(FftwSrcDir)\dft\kdft-dif.c" />
<ClCompile Include="$(FftwSrcDir)\dft\kdft-difsq.c" />
<ClCompile Include="$(FftwSrcDir)\dft\kdft-dit.c" />
<ClCompile Include="$(FftwSrcDir)\dft\kdft.c" />
<ClCompile Include="$(FftwSrcDir)\dft\nop.c" />
<ClCompile Include="$(FftwSrcDir)\dft\plan.c" />
<ClCompile Include="$(FftwSrcDir)\dft\problem.c" />
<ClCompile Include="$(FftwSrcDir)\dft\rader.c" />
<ClCompile Include="$(FftwSrcDir)\dft\rank-geq2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_11.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_13.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_14.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\n1_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\q1_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t1_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\codelets\t2_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\n.c" />
<ClCompile Include="$(FftwSrcDir)\dft\scalar\t.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\genus.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_11.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_128.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_13.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_14.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1bv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_11.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_128.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_13.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_14.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n1fv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_14.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_14.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2sv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2sv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2sv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2sv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\n2sv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1bv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1bv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1fv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1fv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\q1fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1buv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1bv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fuv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_12.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_15.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_3.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_6.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_7.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1fv_9.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1sv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1sv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1sv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1sv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t1sv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_2.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_64.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2sv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2sv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2sv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t2sv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3bv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_10.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_16.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_20.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_25.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_32.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_4.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_5.c" />
<ClCompile Include="$(FftwSrcDir)\dft\simd\sse2\t3fv_8.c" />
<ClCompile Include="$(FftwSrcDir)\dft\solve.c" />
<ClCompile Include="$(FftwSrcDir)\dft\vrank-geq1.c" />
<ClCompile Include="$(FftwSrcDir)\dft\zero.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\align.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\alloc.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\assert.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\awake.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\buffered.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\cpy1d.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\cpy2d-pair.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\cpy2d.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\ct.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\debug.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\extract-reim.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\hash.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\iabs.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\kalloc.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\md5-1.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\md5.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\minmax.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\ops.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\pickdim.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\plan.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\planner.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\primes.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\print.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\problem.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\rader.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\scan.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\solver.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\solvtab.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\stride.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor1.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor2.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor3.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor4.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor5.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor7.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor8.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tensor9.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\tile2d.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\timer.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\transpose.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\trig.c" />
<ClCompile Include="$(FftwSrcDir)\kernel\twiddle.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\buffered.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\buffered2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\conf.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\ct-hc2c-direct.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\ct-hc2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\dft-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\dht-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\dht-rader.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\direct-r2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\direct-r2r.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\direct2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\generic.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\hc2hc-direct.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\hc2hc-generic.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\hc2hc.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\indirect.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\khc2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\khc2hc.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\kr2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\kr2r.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\nop.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\nop2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\plan.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\plan2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\problem.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\problem2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rank-geq2-rdft2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rank-geq2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rank0-rdft2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rank0.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rdft-dht.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rdft2-inplace-strides.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rdft2-rdft.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rdft2-strides.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\rdft2-tensor-max-index.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\hc2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\hfb.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2c.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hb_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cbdft_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\hc2cb_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cbIII_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_11.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_128.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_13.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_14.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cb\r2cb_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cfdft_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hc2cf_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf2_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\hf_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cfII_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_11.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_128.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_13.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_14.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_15.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_25.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_3.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_5.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_64.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_7.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2cf\r2cf_9.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2r.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2r\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2r\e01_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\scalar\r2r\e10_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\codlist.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\genus.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cbdftv_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_10.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_12.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_16.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_20.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_32.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_4.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_6.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\simd\sse2\hc2cfdftv_8.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\solve.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\solve2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\vrank-geq1-rdft2.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\vrank-geq1.c" />
<ClCompile Include="$(FftwSrcDir)\rdft\vrank3-transpose.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\conf.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\redft00e-r2hc-pad.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\redft00e-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\reodft00e-splitradix.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\reodft010e-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\reodft11e-r2hc-odd.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\reodft11e-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\reodft11e-radix2.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\rodft00e-r2hc-pad.c" />
<ClCompile Include="$(FftwSrcDir)\reodft\rodft00e-r2hc.c" />
<ClCompile Include="$(FftwSrcDir)\simd-support\sse2-nonportable.c" />
<ClCompile Include="$(FftwSrcDir)\simd-support\sse2.c" />
<ClCompile Include="$(FftwSrcDir)\simd-support\taint.c" />
<ClCompile Include="$(FftwSrcDir)\threads\api.c" />
<ClCompile Include="$(FftwSrcDir)\threads\conf.c" />
<ClCompile Include="$(FftwSrcDir)\threads\ct.c" />
<ClCompile Include="$(FftwSrcDir)\threads\dft-vrank-geq1.c" />
<ClCompile Include="$(FftwSrcDir)\threads\f77api.c" />
<ClCompile Include="$(FftwSrcDir)\threads\hc2hc.c" />
<ClCompile Include="$(FftwSrcDir)\threads\openmp.c" />
<ClCompile Include="$(FftwSrcDir)\threads\rdft-vrank-geq1.c" />
<ClCompile Include="$(FftwSrcDir)\threads\vrank-geq1-rdft2.c" />
</ItemGroup>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -1,72 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{AD56899E-961B-47B7-BD0F-14D0DA50D141}</ProjectGuid>
<RootNamespace>fontconfig</RootNamespace>
</PropertyGroup>
<!-- Project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>
$(FontconfigSrcDir);
$(FontconfigSrcDir)\win32\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<PreprocessorDefinitions>
HAVE_CONFIG_H;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(FontconfigSrcDir)\fontconfig\*.h">
<Destination>fontconfig\</Destination>
</InstallHeader>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(FontconfigSrcDir)\win32\src\dirent.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcatomic.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcblanks.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fccache.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fccfg.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fccharset.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcdbg.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcdefault.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcdir.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcformat.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcfreetype.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcfs.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcinit.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fclang.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fclist.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcmatch.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcmatrix.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcname.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcpat.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcserialize.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcstat.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcstr.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\fcxml.c" />
<ClCompile Include="$(FontconfigSrcDir)\src\ftglue.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(FontconfigSrcDir)\win32\include\config.h" />
<ClInclude Include="$(FontconfigSrcDir)\win32\include\dirent.h" />
<ClInclude Include="$(FontconfigSrcDir)\src\fcdeprecate.h" />
<ClInclude Include="$(FontconfigSrcDir)\src\fcftint.h" />
<ClInclude Include="$(FontconfigSrcDir)\src\fcint.h" />
<ClInclude Include="$(FontconfigSrcDir)\src\ftglue.h" />
</ItemGroup>
</Project>

View File

@ -1,107 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{b4c15893-ec11-491d-9507-0ac184f9cc78}</UniqueIdentifier>
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
</Filter>
<Filter Include="Source Files\FT_MODULES">
<UniqueIdentifier>{4d3e4eff-3fbc-4b20-b413-2743b23b7109}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{e6cf6a0f-0404-4024-8bf8-ff5b29f35657}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(FontconfigSrcDir)\win32\src\dirent.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcatomic.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcblanks.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fccache.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fccfg.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fccharset.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcdbg.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcdefault.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcdir.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcformat.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcfreetype.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcfs.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcinit.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fclang.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fclist.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcmatch.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcmatrix.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcname.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcpat.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcserialize.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcstr.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\fcxml.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(FontconfigSrcDir)\src\ftglue.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(FontconfigSrcDir)\win32\headers\config.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(FontconfigSrcDir)\win32\headers\dirent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(FontconfigSrcDir)\src\fcdeprecate.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(FontconfigSrcDir)\src\fcftint.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(FontconfigSrcDir)\src\fcint.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(FontconfigSrcDir)\src\ftglue.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -1,96 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}</ProjectGuid>
<RootNamespace>freetype</RootNamespace>
</PropertyGroup>
<!-- Project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(Freetype2SrcDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<DisableLanguageExtensions>true</DisableLanguageExtensions>
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
</ClCompile>
<ResourceCompile>
<Culture>0x0409</Culture>
</ResourceCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(Freetype2SrcDir)\include\ft2build.h" />
<InstallHeader Include="$(Freetype2SrcDir)\include\freetype\*.h">
<Destination>freetype\</Destination>
</InstallHeader>
<InstallHeader Include="$(Freetype2SrcDir)\include\freetype\config\*.h">
<Destination>freetype\config\</Destination>
</InstallHeader>
<InstallHeader Include="$(Freetype2SrcDir)\include\freetype\internal\*.h">
<Destination>freetype\internal\</Destination>
</InstallHeader>
<InstallHeader Include="$(Freetype2SrcDir)\include\freetype\internal\services*.h">
<Destination>freetype\internal\services\</Destination>
</InstallHeader>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(Freetype2SrcDir)\builds\win32\ftdebug.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\autofit\autofit.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbase.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbbox.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbitmap.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftfstype.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftgasp.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftglyph.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftgxval.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftinit.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftlcdfil.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftmm.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftotval.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftpatent.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftpfr.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftstroke.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftsynth.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftsystem.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\fttype1.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftwinfnt.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftxf86.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\bdf\bdf.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\cache\ftcache.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\cff\cff.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\cid\type1cid.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\gzip\ftgzip.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\lzw\ftlzw.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\pcf\pcf.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\pfr\pfr.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\psaux\psaux.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\pshinter\pshinter.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\psnames\psmodule.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\raster\raster.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\sfnt\sfnt.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\smooth\smooth.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\truetype\truetype.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\type1\type1.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\type42\type42.c" />
<ClCompile Include="$(Freetype2SrcDir)\src\winfonts\winfnt.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(Freetype2SrcDir)\include\ft2build.h" />
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftconfig.h" />
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftheader.h" />
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftmodule.h" />
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftoption.h" />
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftstdlib.h" />
</ItemGroup>
</Project>

View File

@ -1,155 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{b4c15893-ec11-491d-9507-0ac184f9cc78}</UniqueIdentifier>
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
</Filter>
<Filter Include="Source Files\FT_MODULES">
<UniqueIdentifier>{4d3e4eff-3fbc-4b20-b413-2743b23b7109}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{e6cf6a0f-0404-4024-8bf8-ff5b29f35657}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(Freetype2SrcDir)\builds\win32\ftdebug.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\autofit\autofit.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbase.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbbox.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftbitmap.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftfstype.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftgasp.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftglyph.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftgxval.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftinit.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftlcdfil.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftmm.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftotval.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftpatent.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftpfr.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftstroke.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftsynth.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftsystem.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\fttype1.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftwinfnt.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\base\ftxf86.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\bdf\bdf.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\cache\ftcache.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\cff\cff.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\cid\type1cid.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\gzip\ftgzip.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\lzw\ftlzw.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\pcf\pcf.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\pfr\pfr.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\psaux\psaux.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\pshinter\pshinter.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\psnames\psmodule.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\raster\raster.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\sfnt\sfnt.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\smooth\smooth.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\truetype\truetype.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\type1\type1.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\type42\type42.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(Freetype2SrcDir)\src\winfonts\winfnt.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(Freetype2SrcDir)\include\ft2build.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftconfig.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftheader.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftmodule.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftoption.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(Freetype2SrcDir)\include\freetype\config\ftstdlib.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -1,110 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{FB8E8D19-A4D6-4181-943C-282075F49B41}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<!-- Aegisub project configuration -->
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<PropertyGroup Label="ConfigArgs">
<Cflags>-nologo -DFRIBIDI_ENTRY=\"\"</Cflags>
<CfgDebug Condition="'$(Configuration)' == 'Debug'">--enable-debug CFLAGS="-MDd $(Cflags)"</CfgDebug>
<CfgDebug Condition="'$(Configuration)' == 'Release'">--disable-debug CFLAGS="-MD $(Cflags)"</CfgDebug>
<CfgArgs>
--enable-static
--disable-shared
--disable-dependency-tracking
--without-glib
$(CfgDebug)
</CfgArgs>
<AbsSrcDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)$(FribidiSrcDir)'))</AbsSrcDir>
</PropertyGroup>
<ItemGroup>
<AutomakeFiles Include="$(AbsSrcDir)\**\*.am" />
<SourceFiles Include="$(AbsSrcDir)\**\*.c" />
<SourceFiles Include="$(AbsSrcDir)\**\*.h" />
</ItemGroup>
<Target Name="Bootstrap"
Inputs="$(AbsSrcDir)\configure.ac;@(AutomakeFiles)"
Outputs="$(AbsSrcDir)\configure"
>
<ExecShellScript
Command="$(AbsSrcDir)\bootstrap"
WorkingDirectory="$(AbsSrcDir)"
Configuration="@(ExecShellScript)"
/>
</Target>
<Target Name="Configure"
Inputs="$(AbsSrcDir)\configure"
Outputs="$(AegisubObjectDir)Makefile"
>
<MsysPath Path="$(AegisubObjectDir)\temp">
<Output TaskParameter="Result" PropertyName="CfgPrefix" />
</MsysPath>
<MsysPath Path="$(MSBuildThisFileDirectory)../../include">
<Output TaskParameter="Result" PropertyName="CfgIncludePrefix" />
</MsysPath>
<MsysPath Path="$(AegisubLibraryDir)">
<Output TaskParameter="Result" PropertyName="CfgLibPrefix" />
</MsysPath>
<ExecShellScript
Command="$(AbsSrcDir)\configure"
Arguments="$(CfgArgs) --prefix=$(CfgPrefix) --libdir=$(CfgLibPrefix) --includedir=$(CfgIncludePrefix)"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<!-- fribidi defines the symbols to export twice, which causes errors -->
<UpdateFile File="$(AegisubObjectDir)lib\Makefile" Find=" %24(am__append_1)" Replacement="" />
<!-- We only want the library and the docs want c2man, so remove
unused stuff from SUBDIRS -->
<UpdateFile File="$(AegisubObjectDir)Makefile" Find=" bin doc test" Replacement="" />
</Target>
<Target Name="Compile"
Inputs="$(AegisubObjectDir)Makefile;@(SourceFiles)"
Outputs="$(AegisubObjectDir)lib\.libs\fribidi.lib"
>
<ExecShellScript
Command="make"
Arguments=" "
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<Touch Files="$(AegisubObjectDir)lib\.libs\fribidi.lib" />
</Target>
<Target Name="Install"
Inputs="$(AegisubObjectDir)lib\.libs\fribidi.lib"
Outputs="$(AegisubLibraryDir)fribidi.lib"
>
<ExecShellScript
Command="make install"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
</Target>
<Target Name="Build">
<Error Condition="!Exists('$(AbsSrcDir)')" Text="Fribidi source not found at '$(AbsSrcDir)'" />
<CallTarget Targets="Bootstrap;Configure;Compile;Install" />
</Target>
<Target Name="Clean">
<RemoveDir Directories="$(AegisubObjectDir)" ContinueOnError="WarnAndContinue" />
</Target>
<Target Name="Rebuild">
<CallTarget Targets="Clean;Build" />
</Target>
</Project>

View File

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />

View File

@ -1,62 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}</ProjectGuid>
<RootNamespace>googletest</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>
GTEST_HAS_TR1_TUPLE=0;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<AdditionalIncludeDirectories>
$(GtestSrcDir);
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-death-test.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-message.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-param-test.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-printers.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-spi.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-test-part.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-typed-test.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest_pred_impl.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest_prod.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-death-test-internal.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-filepath.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-internal.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-linked_ptr.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util-generated.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-port.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-string.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-tuple.h" />
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-type-util.h" />
</ItemGroup>
<ItemGroup>
<None Include="$(GtestSrcDir)\include\gtest\gtest-param-test.h.pump" />
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util-generated.h.pump" />
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-tuple.h.pump" />
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-type-util.h.pump" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(GtestSrcDir)\src\gtest-all.cc" />
</ItemGroup>
</Project>

View File

@ -1,97 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Header Files\internal">
<UniqueIdentifier>{ad1eaa10-1448-406d-924c-ec1a608cec0b}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest_pred_impl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest_prod.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-death-test.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-message.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-param-test.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-printers.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-spi.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-test-part.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\gtest-typed-test.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-death-test-internal.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-filepath.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-internal.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-linked_ptr.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util-generated.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-port.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-string.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-tuple.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
<ClInclude Include="$(GtestSrcDir)\include\gtest\internal\gtest-type-util.h">
<Filter>Header Files\internal</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="$(GtestSrcDir)\include\gtest\gtest-param-test.h.pump">
<Filter>Header Files</Filter>
</None>
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-param-util-generated.h.pump">
<Filter>Header Files\internal</Filter>
</None>
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-tuple.h.pump">
<Filter>Header Files\internal</Filter>
</None>
<None Include="$(GtestSrcDir)\include\gtest\internal\gtest-type-util.h.pump">
<Filter>Header Files\internal</Filter>
</None>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(GtestSrcDir)\src\gtest-all.cc">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -1,68 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{CC791693-6B28-40AC-879D-64A6C16468E3}</ProjectGuid>
<RootNamespace>hunspell</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\..\contrib\hunspell\src\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>HUNSPELL_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SrcDir)win_api;$(SrcDir)hunspell;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(SrcDir)hunspell\affentry.hxx" />
<ClInclude Include="$(SrcDir)hunspell\affixmgr.hxx" />
<ClInclude Include="$(SrcDir)hunspell\atypes.hxx" />
<ClInclude Include="$(SrcDir)hunspell\baseaffix.hxx" />
<ClInclude Include="$(SrcDir)hunspell\csutil.hxx" />
<ClInclude Include="$(SrcDir)hunspell\dictmgr.hxx" />
<ClInclude Include="$(SrcDir)hunspell\hashmgr.hxx" />
<ClInclude Include="$(SrcDir)hunspell\htypes.hxx" />
<ClInclude Include="$(SrcDir)hunspell\hunspell.h" />
<ClInclude Include="$(SrcDir)hunspell\hunspell.hxx" />
<ClInclude Include="$(SrcDir)hunspell\langnum.hxx" />
<ClInclude Include="$(SrcDir)hunspell\phonet.hxx" />
<ClInclude Include="$(SrcDir)hunspell\suggestmgr.hxx" />
<ClInclude Include="$(SrcDir)parsers\firstparser.hxx" />
<ClInclude Include="$(SrcDir)parsers\htmlparser.hxx" />
<ClInclude Include="$(SrcDir)parsers\latexparser.hxx" />
<ClInclude Include="$(SrcDir)parsers\manparser.hxx" />
<ClInclude Include="$(SrcDir)parsers\textparser.hxx" />
<ClInclude Include="$(SrcDir)win_api\config.h" />
<ClInclude Include="$(SrcDir)win_api\hunspelldll.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)hunspell\affentry.cxx" />
<ClCompile Include="$(SrcDir)hunspell\affixmgr.cxx" />
<ClCompile Include="$(SrcDir)hunspell\csutil.cxx" />
<ClCompile Include="$(SrcDir)hunspell\dictmgr.cxx" />
<ClCompile Include="$(SrcDir)hunspell\hashmgr.cxx" />
<ClCompile Include="$(SrcDir)hunspell\hunspell.cxx" />
<ClCompile Include="$(SrcDir)hunspell\phonet.cxx" />
<ClCompile Include="$(SrcDir)hunspell\suggestmgr.cxx" />
<ClCompile Include="$(SrcDir)parsers\firstparser.cxx" />
<ClCompile Include="$(SrcDir)parsers\htmlparser.cxx" />
<ClCompile Include="$(SrcDir)parsers\latexparser.cxx" />
<ClCompile Include="$(SrcDir)parsers\manparser.cxx" />
<ClCompile Include="$(SrcDir)parsers\testparser.cxx" />
<ClCompile Include="$(SrcDir)parsers\textparser.cxx" />
<ClCompile Include="$(SrcDir)win_api\hunspelldll.c">
<!-- Why is this file named .c when it's obviously C++ code -->
<CompileAs>CompileAsCpp</CompileAs>
</ClCompile>
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\filemgr.cxx" />
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\hunzip.cxx" />
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\replist.cxx" />
</ItemGroup>
</Project>

View File

@ -1,135 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)hunspell\affixmgr.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\atypes.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\baseaffix.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\csutil.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\dictmgr.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\hashmgr.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\htypes.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\hunspell.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\hunspell.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\langnum.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\phonet.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\suggestmgr.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)parsers\firstparser.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)parsers\htmlparser.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)parsers\latexparser.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)parsers\manparser.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)parsers\textparser.hxx">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)win_api\config.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)win_api\hunspelldll.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)hunspell\affentry.hxx">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)hunspell\affentry.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\affixmgr.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\csutil.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\dictmgr.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\hashmgr.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\hunspell.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\phonet.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)hunspell\suggestmgr.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\firstparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\htmlparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\latexparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\manparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\testparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)parsers\textparser.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)win_api\hunspelldll.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\filemgr.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\hunzip.cxx">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\..\contrib\hunspell\src\hunspell\replist.cxx">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -1,111 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{F934AB7B-186B-4E96-B20C-A58C38C1B818}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<!-- Aegisub project configuration -->
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<PropertyGroup Label="ConfigArgs">
<CfgDebug Condition="'$(Configuration)' == 'Debug'">--enable-debug --disable-release CFLAGS=-MDd CXXFLAGS=-MDd</CfgDebug>
<CfgDebug Condition="'$(Configuration)' == 'Release'">--disable-debug --enable-release CFLAGS="-MD -Gw" CXXFLAGS="-MD -Gw"</CfgDebug>
<CfgArgs>
CC=cl
CXX=cl
--enable-static
--disable-shared
--disable-extras
--disable-icuio
--disable-layout
--disable-tests
--disable-samples
$(CfgDebug)
</CfgArgs>
<AbsSrcDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)$(IcuSrcDir)'))</AbsSrcDir>
</PropertyGroup>
<ItemGroup>
<ConfigureInput Include="$(AbsSrcDir)\configure" />
<ConfigureOutput Include="$(AegisubObjectDir)Makefile" />
</ItemGroup>
<Target Name="Configure"
Inputs="@(ConfigureInput)"
Outputs="@(ConfigureOutput)"
>
<Delete Files="$(AegisubObjectDir)build.timestamp" />
<Copy
SourceFiles="mh-msys-msvc"
DestinationFiles="$(IcuSrcDir)\config\mh-cygwin-msvc"
SkipUnchangedFiles="true"
/>
<MsysPath Path="$(AegisubObjectDir)\temp">
<Output TaskParameter="Result" PropertyName="CfgPrefix" />
</MsysPath>
<MsysPath Path="$(MSBuildThisFileDirectory)../../include">
<Output TaskParameter="Result" PropertyName="CfgIncludePrefix" />
</MsysPath>
<MsysPath Path="$(AegisubLibraryDir)">
<Output TaskParameter="Result" PropertyName="CfgLibPrefix" />
</MsysPath>
<ExecShellScript
Command="$(AbsSrcDir)\configure"
Arguments="$(CfgArgs) --prefix=$(CfgPrefix) --libdir=$(CfgLibPrefix) --includedir=$(CfgIncludePrefix)"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<!-- Ensure that Makefile has a recent modified time to avoid
rerunning configure pointlessly -->
<Touch Files="@(ConfigureOutput)" />
</Target>
<ItemGroup>
<OutputLibraries Include="$(AegisubObjectDir)lib\*" />
</ItemGroup>
<Target Name="Compile"
Inputs="$(IcuSrcDir)"
Outputs="$(AegisubObjectDir)build.timestamp"
>
<ExecShellScript
Command="make"
Arguments="-j$(NUMBER_OF_PROCESSORS)"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<ExecShellScript
Command="make install"
WorkingDirectory="$(AegisubObjectDir)"
Configuration="@(ExecShellScript)"
/>
<Touch Files="$(AegisubObjectDir)build.timestamp" AlwaysCreate="true" />
</Target>
<Target Name="Build">
<Error Condition="!Exists('$(AbsSrcDir)')" Text="ICU source not found at '$(AbsSrcDir)'" />
<CallTarget Targets="Configure" />
<CallTarget Targets="Compile" />
</Target>
<Target Name="Clean">
<RemoveDir Directories="$(AegisubObjectDir)" ContinueOnError="WarnAndContinue" />
</Target>
<Target Name="Rebuild">
<CallTarget Targets="Clean;Build" />
</Target>
</Project>

View File

@ -1,84 +0,0 @@
# ICU's mh-cygwin-msvc doesn't work with msys or Visual Studio 2012.
# There's a whole bunch of incompatibilities, so this is a complete replacement
# rather than just a patch.
sbindir=$(bindir)
CPPFLAGS += -DU_STATIC_IMPLEMENTATION -DUCONFIG_NO_LEGACY_CONVERSION=1 -DU_ENABLE_DYLOAD=0 -DUCONFIG_NO_FILE_IO=1 -DU_CHARSET_IS_UTF8=1
ifeq ($(ENABLE_DEBUG),1)
CPPFLAGS+=-D_DEBUG=1
CFLAGS+=-Z7
CXXFLAGS+=-Z7
else
CPPFLAGS+=-DU_RELEASE=1
endif
CFLAGS+=-GF -nologo
CXXFLAGS+=-GF -nologo -EHsc -Zc:wchar_t
CPPFLAGS+=-D_CRT_SECURE_NO_DEPRECATE
DEFS+=-DWIN32 -DCYGWINMSVC
LDFLAGS+=-nologo
COMPILE.c= $(CC) $(CPPFLAGS) $(DEFS) $(CFLAGS) -c
COMPILE.cc= $(CXX) $(CPPFLAGS) $(DEFS) $(CXXFLAGS) -c
LINK.c= LINK.EXE -subsystem:console $(LDFLAGS)
LINK.cc= LINK.EXE -subsystem:console $(LDFLAGS)
OUTOPT = -out:
LIBSICU = $(STATIC_PREFIX)$(ICUPREFIX)
A = lib
STATIC_O=o
AR = LIB.EXE
ARFLAGS := -nologo $(ARFLAGS:r=)
RANLIB = ls -s
AR_OUTOPT = -OUT:
IMPORT_LIB_EXT = .lib
LIBPREFIX=
DEFAULT_LIBS = advapi32.lib
DATA_STUBNAME = dt
I18N_STUBNAME = in
LIBICU = $(STATIC_PREFIX_WHEN_USED)$(ICUPREFIX)
ifeq ($(wildcard $(LIBDIR)/$(LIBICU)$(DATA_STUBNAME)$(ICULIBSUFFIX).lib),)
LIBICUDT= $(top_builddir)/stubdata/$(LIBICU)$(DATA_STUBNAME)$(ICULIBSUFFIX).lib
else
LIBICUDT= $(LIBDIR)/$(LIBICU)$(DATA_STUBNAME)$(ICULIBSUFFIX).lib
endif
LIBICUUC= $(LIBDIR)/$(LIBICU)$(COMMON_STUBNAME)$(ICULIBSUFFIX).lib $(LIBICUDT)
LIBICUI18N= $(LIBDIR)/$(LIBICU)$(I18N_STUBNAME)$(ICULIBSUFFIX).lib
LIBICULE= $(LIBDIR)/$(LIBICU)$(LAYOUT_STUBNAME)$(ICULIBSUFFIX).lib
LIBICULX= $(LIBDIR)/$(LIBICU)$(LAYOUTEX_STUBNAME)$(ICULIBSUFFIX).lib
LIBICUIO= $(LIBDIR)/$(LIBICU)$(IO_STUBNAME)$(ICULIBSUFFIX).lib
LIBICUTOOLUTIL= $(LIBDIR)/$(LIBICU)$(TOOLUTIL_STUBNAME)$(ICULIBSUFFIX).lib
LDFLAGSICUDT+= /base:"0x4ad00000" -NOENTRY# The NOENTRY option is required for creating a resource-only DLL.
LDFLAGSICUUC= /base:"0x4a800000"# in-uc = 1MB
LDFLAGSICUI18N= /base:"0x4a900000"# io-in = 2MB
LDFLAGSICUIO= /base:"0x4ab00000"# le-io = 1MB
LDFLAGSICULE= /base:"0x4ac00000"# lx-le = 512KB
LDFLAGSICULX= /base:"0x4ac80000"
LDFLAGSICUTOOLUTIL= /base:"0x4ac00000"# Same as layout. Layout and tools probably won't mix.
%.o: $(srcdir)/%.c
$(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS) -Fo$@ $<
%.o: $(srcdir)/%.cpp
$(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS) -Fo$@ $<
%.res : $(srcdir)/%.rc
rc.exe -fo$@ $(CPPFLAGS) $<
ICUPKGDATA_INSTALL_DIR = $(libdir)
ICULIBSUFFIX_VERSION = $(LIB_VERSION_MAJOR)
INSTALL-L=$(INSTALL_PROGRAM)
LDLIBRARYPATH_ENVVAR = PATH
PKGDATA_INVOKE_OPTS = MAKEFLAGS=

View File

@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target
Name="InstallHeaders"
AfterTargets="ClCompile"
Inputs="@(InstallHeader)"
Outputs="$(AegisubSourceBase)include\%(InstallHeader.Destination)%(Filename)%(Extension)"
>
<Copy
SourceFiles="@(InstallHeader)"
DestinationFiles="$(AegisubSourceBase)include\%(InstallHeader.Destination)%(Filename)%(Extension)"
SkipUnchangedFiles="true"
/>
</Target>
</Project>

View File

@ -1,126 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}</ProjectGuid>
<RootNamespace>libaegisub</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\libaegisub\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>
$(SrcDir);
$(SrcDir)include;
$(AegisubContribBase)iconv\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<PreprocessorDefinitions>
NOMINMAX;
_WIN32_WINNT=0x0501;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>lagi_pre.h</PrecompiledHeaderFile>
<ForcedIncludeFiles>lagi_pre.h</ForcedIncludeFiles>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(SrcDir)common\charset_6937.h" />
<ClInclude Include="$(SrcDir)common\option_visit.h" />
<ClInclude Include="$(SrcDir)common\parser.h" />
<ClInclude Include="$(SrcDir)config.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\access.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\ass\dialogue_parser.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\ass\uuencode.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\background_runner.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\elements.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\reader.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\visitor.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\writer.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\calltip_provider.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\charset.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\charset_conv.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\charset_conv_win.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\color.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\dispatch.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\exception.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\fs.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\fs_fwd.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\hotkey.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\io.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\json.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\kana_table.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\karaoke_matcher.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\keyframe.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\line_iterator.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\line_wrap.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\log.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\mru.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\of_type_adaptor.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\option.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\option_value.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\owning_intrusive_list.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\path.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\scoped_ptr.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\signal.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\spellchecker.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\split.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\thesaurus.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\time.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\util.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\util_osx.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\util_win.h" />
<ClInclude Include="$(SrcDir)include\libaegisub\vfr.h" />
<ClInclude Include="$(SrcDir)lagi_pre.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)windows\lagi_pre.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
<PrecompiledHeaderFile>lagi_pre.h</PrecompiledHeaderFile>
</ClCompile>
<ClCompile Include="$(SrcDir)ass\dialogue_parser.cpp" />
<ClCompile Include="$(SrcDir)ass\uuencode.cpp" />
<ClCompile Include="$(SrcDir)common\cajun\elements.cpp" />
<ClCompile Include="$(SrcDir)common\cajun\reader.cpp" />
<ClCompile Include="$(SrcDir)common\cajun\writer.cpp" />
<ClCompile Include="$(SrcDir)common\calltip_provider.cpp" />
<ClCompile Include="$(SrcDir)common\charset.cpp" />
<ClCompile Include="$(SrcDir)common\charset_6937.cpp" />
<ClCompile Include="$(SrcDir)common\charset_conv.cpp" />
<ClCompile Include="$(SrcDir)common\color.cpp" />
<ClCompile Include="$(SrcDir)common\dispatch.cpp" />
<ClCompile Include="$(SrcDir)common\fs.cpp" />
<ClCompile Include="$(SrcDir)common\hotkey.cpp" />
<ClCompile Include="$(SrcDir)common\io.cpp" />
<ClCompile Include="$(SrcDir)common\json.cpp" />
<ClCompile Include="$(SrcDir)common\kana_table.cpp" />
<ClCompile Include="$(SrcDir)common\karaoke_matcher.cpp" />
<ClCompile Include="$(SrcDir)common\keyframe.cpp" />
<ClCompile Include="$(SrcDir)common\log.cpp" />
<ClCompile Include="$(SrcDir)common\mru.cpp" />
<ClCompile Include="$(SrcDir)common\option.cpp" />
<ClCompile Include="$(SrcDir)common\option_visit.cpp" />
<ClCompile Include="$(SrcDir)common\parser.cpp" />
<ClCompile Include="$(SrcDir)common\path.cpp" />
<ClCompile Include="$(SrcDir)common\thesaurus.cpp" />
<ClCompile Include="$(SrcDir)common\util.cpp" />
<ClCompile Include="$(SrcDir)common\vfr.cpp" />
<ClCompile Include="$(SrcDir)windows\access.cpp" />
<ClCompile Include="$(SrcDir)windows\charset_conv_win.cpp" />
<ClCompile Include="$(SrcDir)windows\fs.cpp" />
<ClCompile Include="$(SrcDir)windows\log_win.cpp" />
<ClCompile Include="$(SrcDir)windows\path_win.cpp" />
<ClCompile Include="$(SrcDir)windows\util_win.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="$(SrcDir)include\libaegisub\charsets.def" />
</ItemGroup>
</Project>

View File

@ -1,280 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Source Files\Common">
<UniqueIdentifier>{4084442f-51e9-4c31-8d5a-c825e076c012}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\Windows">
<UniqueIdentifier>{5af331b5-ea1f-493f-abf9-f5912e2350df}</UniqueIdentifier>
</Filter>
<Filter Include="cajun">
<UniqueIdentifier>{1d2e187a-1681-4c30-8912-a4b5a5d0ab9d}</UniqueIdentifier>
</Filter>
<Filter Include="ASS">
<UniqueIdentifier>{c97bd8a3-ebb7-4c43-9ca0-4ab8479d9388}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)common\charset_6937.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)common\option_visit.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)config.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\access.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\charset.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\charset_conv.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\charset_conv_win.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\exception.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\io.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\line_iterator.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\line_wrap.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\log.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\mru.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\option.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\option_value.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\scoped_ptr.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\thesaurus.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\util.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\util_osx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\util_win.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\vfr.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lagi_pre.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\writer.h">
<Filter>cajun</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\visitor.h">
<Filter>cajun</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\elements.h">
<Filter>cajun</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\cajun\reader.h">
<Filter>cajun</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\hotkey.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\json.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\keyframe.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\signal.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\background_runner.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\color.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\spellchecker.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\ass\dialogue_parser.h">
<Filter>ASS</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)common\parser.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\of_type_adaptor.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\calltip_provider.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\path.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\fs.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\fs_fwd.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\dispatch.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\split.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\time.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\ass\uuencode.h">
<Filter>ASS</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\karaoke_matcher.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\kana_table.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libaegisub\owning_intrusive_list.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)windows\lagi_pre.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\access.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\charset.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\charset_6937.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\charset_conv.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\charset_conv_win.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\log_win.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\log.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\log_win.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\mru.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\option.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\option_visit.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\thesaurus.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\util_win.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\vfr.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\json.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\hotkey.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\keyframe.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\util.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\cajun\elements.cpp">
<Filter>cajun</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\cajun\reader.cpp">
<Filter>cajun</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\cajun\writer.cpp">
<Filter>cajun</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ass\dialogue_parser.cpp">
<Filter>ASS</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\color.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\parser.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\io.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\calltip_provider.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\path.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\path_win.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)windows\fs.cpp">
<Filter>Source Files\Windows</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\fs.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\dispatch.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ass\uuencode.cpp">
<Filter>ASS</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\kana_table.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)common\karaoke_matcher.cpp">
<Filter>Source Files\Common</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<None Include="$(SrcDir)include\libaegisub\charsets.def">
<Filter>Header Files</Filter>
</None>
</ItemGroup>
</Project>

View File

@ -1,7 +0,0 @@
#define _CRT_SECURE_NO_WARNINGS
#define _CRT_NONSTDC_NO_DEPRECATE
#define CONFIG_FONTCONFIG 1
#define CONFIG_ICONV 1
#define M_PI 3.1415926535897932384626433832795

View File

@ -1,95 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{8804F253-DA67-4CC4-926B-0CD2AEE5778D}</ProjectGuid>
<RootNamespace>libass</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>
$(LibassSrcDir)\libass;
$(MSBuildThisFileDirectory);
$(AegisubSourceBase)\include\fribidi;
$(AegisubContribBase)iconv\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<PreprocessorDefinitions>
inline=__inline;
FRIBIDI_ENTRY=;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
</ClCompile>
<InstallHeader>
<Destination>ass\</Destination>
</InstallHeader>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(LibassSrcDir)\libass\ass.h" />
<InstallHeader Include="$(LibassSrcDir)\libass\ass_types.h" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(LibassSrcDir)\libass\ass.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_bitmap.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_cache.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_cache_template.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_drawing.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_font.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_fontconfig.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_library.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_parse.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_render.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_shaper.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_types.h" />
<ClInclude Include="$(LibassSrcDir)\libass\ass_utils.h" />
<ClInclude Include="$(LibassSrcDir)\win32\config.h" />
<ClInclude Include="$(LibassSrcDir)\win32\headers\enca.h" />
<ClInclude Include="$(LibassSrcDir)\win32\headers\inttypes.h" />
<ClInclude Include="$(LibassSrcDir)\win32\headers\stdint.h" />
<ClInclude Include="$(LibassSrcDir)\win32\headers\strings.h" />
<ClInclude Include="$(LibassSrcDir)\win32\headers\unistd.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(LibassSrcDir)\libass\ass.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_bitmap.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_cache.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_drawing.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_font.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_fontconfig.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_library.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_parse.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_render.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_render_api.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_shaper.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_strtod.c" />
<ClCompile Include="$(LibassSrcDir)\libass\ass_utils.c" />
</ItemGroup>
<!-- Project References -->
<ItemGroup>
<ProjectReference Include="..\fontconfig\fontconfig.vcxproj">
<Project>{ad56899e-961b-47b7-bd0f-14d0da50d141}</Project>
</ProjectReference>
<ProjectReference Include="..\freetype2\freetype.vcxproj">
<Project>{78b079bd-9fc7-4b9e-b4a6-96da0f00248b}</Project>
</ProjectReference>
<ProjectReference Include="..\fribidi\fribidi.vcxproj">
<Project>{fb8e8d19-a4d6-4181-943c-282075f49b41}</Project>
</ProjectReference>
<ProjectReference Include="..\libiconv\libiconv.vcxproj">
<Project>{965054d2-44f2-4eb2-9879-051cc3d7ef08}</Project>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -1,117 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(LibassSrcDir)\libass\ass.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_bitmap.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_cache.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_cache_template.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_drawing.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_font.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_fontconfig.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_library.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_parse.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_render.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_shaper.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_types.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\libass\ass_utils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\config.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\headers\enca.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\headers\inttypes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\headers\stdint.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\headers\strings.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(LibassSrcDir)\win32\headers\unistd.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(LibassSrcDir)\libass\ass.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_bitmap.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_cache.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_drawing.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_font.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_fontconfig.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_library.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_parse.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_render.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_render_api.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_shaper.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_strtod.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(LibassSrcDir)\libass\ass_utils.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -1,3 +0,0 @@
#define strncasecmp _strnicmp
#define strcasecmp _stricmp

View File

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{965054D2-44F2-4EB2-9879-051CC3D7EF08}</ProjectGuid>
<RootNamespace>libiconv</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\..\contrib\iconv\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(SrcDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClInclude Include="$(SrcDir)include\iconv.h" />
<ClInclude Include="$(SrcDir)include\libcharset.h" />
<ClInclude Include="$(SrcDir)include\localcharset.h" />
<ClInclude Include="$(SrcDir)libcharset\config.h" />
<ClInclude Include="$(SrcDir)libiconv\config.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)libcharset\localcharset.c" />
<ClCompile Include="$(SrcDir)libiconv\iconv.c" />
</ItemGroup>
</Project>

View File

@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)include\iconv.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\libcharset.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)include\localcharset.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)libcharset\config.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)libiconv\config.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)libcharset\localcharset.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)libiconv\iconv.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{BD00D65F-24DA-4784-8860-3B972EA125FC}</ProjectGuid>
<RootNamespace>libresrc</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\src\libresrc\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ResPack>
<OutputDir>$(MSBuildThisFileDirectory)..\..\src\libresrc\</OutputDir>
</ResPack>
</ItemDefinitionGroup>
<ImportGroup Label="ExtensionTargets">
<Import Project="$(MSBuildThisFileDirectory)..\respack\Aegisub.ResPack.targets" />
</ImportGroup>
<Target Name="DefaultConfig" BeforeTargets="ResPackGenerate">
<Copy
SourceFiles="$(SrcDir)default_config_win.json"
DestinationFiles="$(SrcDir)default_config_platform.json"
SkipUnchangedFiles="true"
/>
</Target>
<!-- Source files -->
<ItemGroup>
<ResPack Include="..\..\src\libresrc\manifest.respack">
<OutputName>default_config.cpp</OutputName>
<OutputHeader>default_config.h</OutputHeader>
</ResPack>
<ResPack Include="..\..\src\bitmaps\manifest.respack">
<OutputName>bitmap.cpp</OutputName>
<OutputHeader>bitmap.h</OutputHeader>
</ResPack>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)libresrc.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)libresrc.h" />
</ItemGroup>
</Project>

View File

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ResPack Include="..\..\src\libresrc\manifest.respack">
<Filter>Resource Files</Filter>
</ResPack>
<ResPack Include="..\..\src\bitmaps\manifest.respack">
<Filter>Resource Files</Filter>
</ResPack>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)libresrc.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)libresrc.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -1,89 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}</ProjectGuid>
<RootNamespace>lua51</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\..\deps\lua\src\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>LUA_BUILD_AS_DLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClCompile Include="$(SrcDir)lapi.c" />
<ClCompile Include="$(SrcDir)lauxlib.c" />
<ClCompile Include="$(SrcDir)lbaselib.c" />
<ClCompile Include="$(SrcDir)lcode.c" />
<ClCompile Include="$(SrcDir)ldblib.c" />
<ClCompile Include="$(SrcDir)ldebug.c" />
<ClCompile Include="$(SrcDir)ldo.c" />
<ClCompile Include="$(SrcDir)ldump.c" />
<ClCompile Include="$(SrcDir)lfunc.c" />
<ClCompile Include="$(SrcDir)lgc.c" />
<ClCompile Include="$(SrcDir)linit.c" />
<ClCompile Include="$(SrcDir)liolib.c" />
<ClCompile Include="$(SrcDir)llex.c" />
<ClCompile Include="$(SrcDir)lmathlib.c" />
<ClCompile Include="$(SrcDir)lmem.c" />
<ClCompile Include="$(SrcDir)loadlib.c" />
<ClCompile Include="$(SrcDir)lobject.c" />
<ClCompile Include="$(SrcDir)lopcodes.c" />
<ClCompile Include="$(SrcDir)loslib.c" />
<ClCompile Include="$(SrcDir)lparser.c" />
<ClCompile Include="$(SrcDir)lstate.c" />
<ClCompile Include="$(SrcDir)lstring.c" />
<ClCompile Include="$(SrcDir)lstrlib.c" />
<ClCompile Include="$(SrcDir)ltable.c" />
<ClCompile Include="$(SrcDir)ltablib.c" />
<ClCompile Include="$(SrcDir)ltm.c" />
<ClCompile Include="$(SrcDir)lundump.c" />
<ClCompile Include="$(SrcDir)lvm.c" />
<ClCompile Include="$(SrcDir)lzio.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)lapi.h" />
<ClInclude Include="$(SrcDir)lauxlib.h" />
<ClInclude Include="$(SrcDir)lcode.h" />
<ClInclude Include="$(SrcDir)ldebug.h" />
<ClInclude Include="$(SrcDir)ldo.h" />
<ClInclude Include="$(SrcDir)lfunc.h" />
<ClInclude Include="$(SrcDir)lgc.h" />
<ClInclude Include="$(SrcDir)llex.h" />
<ClInclude Include="$(SrcDir)llimits.h" />
<ClInclude Include="$(SrcDir)lmem.h" />
<ClInclude Include="$(SrcDir)lobject.h" />
<ClInclude Include="$(SrcDir)lopcodes.h" />
<ClInclude Include="$(SrcDir)lparser.h" />
<ClInclude Include="$(SrcDir)lstate.h" />
<ClInclude Include="$(SrcDir)lstring.h" />
<ClInclude Include="$(SrcDir)ltable.h" />
<ClInclude Include="$(SrcDir)ltm.h" />
<ClInclude Include="$(SrcDir)lua.h" />
<ClInclude Include="$(SrcDir)luaconf.h" />
<ClInclude Include="$(SrcDir)lualib.h" />
<ClInclude Include="$(SrcDir)lundump.h" />
<ClInclude Include="$(SrcDir)lvm.h" />
<ClInclude Include="$(SrcDir)lzio.h" />
</ItemGroup>
<Target Name="CopyHeaders" BeforeTargets="Build">
<Copy
SourceFiles="$(SrcDir)lua.h;$(SrcDir)lualib.h;$(SrcDir)lauxlib.h;$(SrcDir)luaconf.h;$(SrcDir)..\etc\lua.hpp"
DestinationFolder="$(AegisubSourceBase)include"
SkipUnchangedFiles="true"
/>
</Target>
</Project>

View File

@ -1,177 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Internal headers">
<UniqueIdentifier>{dfbe0704-0805-42a9-b221-0eb02d38e473}</UniqueIdentifier>
</Filter>
<Filter Include="Headers">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
</Filter>
<Filter Include="Core">
<UniqueIdentifier>{46f51bca-6fac-4e83-b18b-5e8145f11f3c}</UniqueIdentifier>
</Filter>
<Filter Include="Standard library">
<UniqueIdentifier>{947aec3e-b05b-404f-bd0d-27dfec92f4d0}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)lapi.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lcode.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ldo.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ldump.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lfunc.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lgc.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)linit.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)llex.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lmem.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lobject.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lopcodes.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lparser.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lstate.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lstring.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ldebug.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ltable.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ltm.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lundump.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lvm.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lzio.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lbaselib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ltablib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)ldblib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)liolib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lmathlib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)loslib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lstrlib.c">
<Filter>Standard library</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)loadlib.c">
<Filter>Core</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)lauxlib.c">
<Filter>Standard library</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)lauxlib.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lua.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)luaconf.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lualib.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lapi.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lcode.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)ldebug.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)ldo.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lfunc.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lgc.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)llex.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)llimits.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lmem.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lobject.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lopcodes.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lparser.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lstring.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lstate.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)ltable.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)ltm.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lundump.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lvm.h">
<Filter>Internal headers</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)lzio.h">
<Filter>Internal headers</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>Path definitions</_PropertySheetDisplayName>
</PropertyGroup>
<PropertyGroup>
<!-- Base for Aegisub source code -->
<AegisubSourceBase Condition="'$(AegisubSourceBase)'==''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\'))</AegisubSourceBase>
<!-- Base for contrib libraries source code -->
<AegisubContribBase Condition="'$(AegisubContribBase)'==''">$(AegisubSourceBase)..\contrib\</AegisubContribBase>
<!-- Base for built files -->
<AegisubOutputBase Condition="'$(AegisubOutputBase)'==''">$(AegisubSourceBase)</AegisubOutputBase>
<!-- Directory for built executables -->
<AegisubBinaryDir Condition="'$(AegisubBinaryDir)'==''">$(AegisubOutputBase)bin\</AegisubBinaryDir>
<!-- Directory for built static libraries and link libraries -->
<AegisubLibraryDir Condition="'$(AegisubLibraryDir)'==''">$(AegisubOutputBase)lib\$(Platform)\$(Configuration)\</AegisubLibraryDir>
<!-- Directory for built object files, intentionally using flat structure -->
<AegisubObjectDir Condition="'$(AegisubObjectDir)'==''">$(AegisubOutputBase)obj\$(ProjectName)-$(Platform)-$(Configuration)\</AegisubObjectDir>
<!-- Platform/configuration suffix for binaries -->
<AegisubPlatformSuffix Condition="'$(Configuration)'=='Debug'">$(PlatformArchitecture)d</AegisubPlatformSuffix>
<AegisubPlatformSuffix Condition="'$(Configuration)'=='Release'">$(PlatformArchitecture)</AegisubPlatformSuffix>
<AegisubPlatformSuffix Condition="'$(AegisubPlatformSuffix)'==''">(unk)</AegisubPlatformSuffix> <!-- fallback -->
</PropertyGroup>
</Project>

View File

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
$Id$
-->
<ProjectSchemaDefinitions
xmlns="http://schemas.microsoft.com/build/2009/properties">
<ContentType
Name="ResPackManifest"
DisplayName="ResPack manifest"
ItemType="ResPack">
</ContentType>
<ItemType Name="ResPack" DisplayName="Aegisub resource packer"/>
<FileExtension Name=".respack" ContentType="Text"/>
</ProjectSchemaDefinitions>

View File

@ -1,89 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
$Id$
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ResPackExe Condition="'$(ResPackExe)' == ''">$(AegisubBinaryDir)respack$(AegisubPlatformSuffix).exe</ResPackExe>
</PropertyGroup>
<Target
Name="ResPackGenerate"
BeforeTargets="ClCompile"
DependsOnTargets="PrepareForBuild"
Condition="'@(ResPack)' != ''"
Inputs="@(ResPack)"
Outputs="%(ResPack.OutputDir)%(ResPack.OutputName);%(ResPack.OutputDir)%(Respack.OutputHeader)"
>
<Error
Condition="!Exists('$(ResPackExe)')"
Text="The respack.exe program was not found, make sure it has been built and is at this location: $(ResPackExe)"
/>
<Exec
Command="$(ResPackExe) &quot;@(ResPack -> '%(FullPath)')&quot; &quot;%(ResPack.OutputDir)%(ResPack.OutputName)&quot; &quot;%(ResPack.OutputDir)%(ResPack.OutputHeader)&quot;"
Outputs="%(ResPack.OutputName);%(ResPack.OutputHeader)"
WorkingDirectory="@(ResPack -> '%(RootDir)%(Directory)')"
/>
</Target>
<Target
Name="ResPack"
BeforeTargets="ClCompile"
DependsOnTargets="ResPackGenerate"
Condition="'@(ResPack)' != ''"
Inputs="@(ResPack)"
Outputs="%(ResPack.OutputDir)%(ResPack.OutputName);%(ResPack.OutputDir)%(Respack.OutputHeader')"
>
<ItemGroup>
<ClCompile Include="%(ResPack.OutputDir)%(ResPack.OutputName)" />
</ItemGroup>
</Target>
<Target
Name="ResPackClean"
BeforeTargets="Clean"
DependsOnTargets="PrepareForBuild"
Condition="'@(ResPack)' != ''"
>
<Delete Files="%(ResPack.OutputDir)%(ResPack.OutputName);%(ResPack.OutputDir)%(ResPack.OutputHeader)" />
</Target>
<ItemGroup>
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)Aegisub.ResPack.ProjectItems.xml" />
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)Aegisub.ResPack.xml" />
<ProjectTools Include="ResPack" />
<AvailableItemName Include="ResPack">
<Targets>ResPack</Targets>
</AvailableItemName>
</ItemGroup>
</Project>

View File

@ -1,69 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2011 Niels Martin Hansen
All rights reserved.
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 Project http://www.aegisub.org/
$Id$
-->
<Rule Name="ResPack"
DisplayName="Aegisub resource packer"
Order="15"
PageTemplate="tool"
xmlns="http://schemas.microsoft.com/build/2009/properties">
<Rule.Categories>
<Category Name="General" DisplayName="General" Description="General" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="ResPack" HasConfigurationCondition="false" />
</Rule.DataSource>
<StringProperty
Name="OutputDir"
Category="General"
DisplayName="Output directory"
Description="Directory the source and header files will be output to."
/>
<StringProperty
Name="OutputName"
Category="General"
DisplayName="Output source file"
Description="Name (without path) of source file produced from the resource manufest."
/>
<StringProperty
Name="OutputHeader"
Category="General"
DisplayName="Output header file"
Description="Name (without path) of header file produced from the resource manifest."
/>
</Rule>

View File

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{08AF2BCC-FCDD-4F0E-8B41-59A6E634F2E8}</ProjectGuid>
<RootNamespace>respack</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>exe</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<PropertyGroup>
<OutDir>$(ProjectDir)</OutDir>
<TargetName>respack$(AegisubPlatformSuffix)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(AegisubLibraryDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
<!-- Source file -->
<ItemGroup>
<ClCompile Include="..\..\tools\common-respack.cpp" />
</ItemGroup>
</Project>

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClCompile Include="..\..\..\tools\common-respack.cpp" />
</ItemGroup>
</Project>

View File

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>Output directories</_PropertySheetDisplayName>
</PropertyGroup>
<PropertyGroup>
<OutDir Condition="'$(ConfigurationType)'=='DynamicLibrary'">$(AegisubBinaryDir)</OutDir>
<OutDir Condition="'$(ConfigurationType)'=='Application'">$(AegisubBinaryDir)</OutDir>
<OutDir Condition="'$(ConfigurationType)'=='StaticLibrary'">$(AegisubLibraryDir)</OutDir>
<IntDir>$(AegisubObjectDir)</IntDir>
<TargetName Condition="'$(ConfigurationType)'=='DynamicLibrary'">$(ProjectName)_$(AegisubPlatformSuffix)</TargetName>
<TargetName Condition="'$(ConfigurationType)'=='Application'">$(ProjectName)$(AegisubPlatformSuffix)</TargetName>
<TargetName Condition="'$(ConfigurationType)'=='StaticLibrary'">$(ProjectName)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<ObjectFileName>$(IntDir)/%(Directory)</ObjectFileName>
</ClCompile>
<Link>
<OutputFile>$(AegisubBinaryDir)$(TargetName)$(TargetExt)</OutputFile>
<ProgramDatabaseFile>$(AegisubBinaryDir)$(TargetName).pdb</ProgramDatabaseFile>
<ImportLibrary>$(AegisubLibraryDir)$(ProjectName).lib</ImportLibrary>
</Link>
<Lib>
<OutputFile>$(AegisubLibraryDir)$(ProjectName).lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
</Project>

View File

@ -1,70 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>Compiler settings</_PropertySheetDisplayName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Release'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<MinimalRebuild>false</MinimalRebuild>
<WarningLevel>Level3</WarningLevel>
<PreprocessorDefinitions>
BOOST_ALL_NO_LIB;
BOOST_HAS_ICU;
U_STATIC_IMPLEMENTATION;
WIN32;
_WINDOWS;
%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>
$(AegisubSourceBase)src\msvc;
$(AegisubSourceBase)\include;
$(BoostPath);
$(GtestSrcDir)\include;
$(IcuSrcDir)\include;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4345</DisableSpecificWarnings>
</ClCompile>
<ResourceCompile>
<AdditionalIncludeDirectories>$(AegisubSourceBase)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<LargeAddressAware>true</LargeAddressAware>
<TerminalServerAware Condition="'$(ConfigurationType'=='Application'">true</TerminalServerAware>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
<ClCompile>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
<ClCompile>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalOptions>/Gw %(AdditionalOptions)</AdditionalOptions>
</ClCompile>
<Link>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
</Project>

View File

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>Custom Tasks</_PropertySheetDisplayName>
</PropertyGroup>
<ItemGroup>
<ExecShellScript Include=".">
<CC>cl</CC>
<CFLAGS>-nologo</CFLAGS>
<Configuration>$(Configuration)</Configuration>
<Platform>$(Platform)</Platform>
<Sh>$(MsysBasePath)\bin\sh.exe</Sh>
<INCLUDE>
$(MSBuildProjectDirectory);
$(AegisubSourceBase)\src\msvc;
$(AegisubSourceBase)\include;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include;
C:\Program Files (x86)\Windows Kits\8.1\Include\um;
C:\Program Files (x86)\Windows Kits\8.1\Include\shared;
</INCLUDE>
<PATH Condition="'$(Platform)'=='Win32'">$(MsysBasePath)\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin;</PATH>
<PATH Condition="'$(Platform)'=='x64'">$(MsysBasePath)\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64;</PATH>
<LIB Condition="'$(Platform)'=='Win32'">
$(AegisubLibraryDir);
C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib;
</LIB>
<LIB Condition="'$(Platform)'=='x64'">
$(AegisubLibraryDir);
C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib\amd64;
</LIB>
</ExecShellScript>
</ItemGroup>
<UsingTask TaskName="ExecShellScript" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
<UsingTask TaskName="MsysPath" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
<UsingTask TaskName="UpdateFile" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
</Project>

View File

@ -1,97 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{49766286-2B5D-4177-A860-BD7CE1846EEF}</ProjectGuid>
<RootNamespace>tests</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>exe</AegisubProjectType>
<SrcDir>..\..\tests\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>
GTEST_HAS_TR1_TUPLE=0;
%(PreprocessorDefinitions)
</PreprocessorDefinitions>
<AdditionalIncludeDirectories>
$(AegisubSourceBase)libaegisub\include;
$(SrcDir)support;
%(AdditionalIncludeDirectories)
</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(AegisubLibraryDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
</Link>
<PostBuildEvent>
<Command>$(SrcDir)setup.bat "$(AegisubBinaryDir)"</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<ClCompile Include="$(SrcDir)tests\access.cpp" />
<ClCompile Include="$(SrcDir)tests\cajun.cpp" />
<ClCompile Include="$(SrcDir)tests\color.cpp" />
<ClCompile Include="$(SrcDir)tests\dialogue_lexer.cpp" />
<ClCompile Include="$(SrcDir)tests\fs.cpp" />
<ClCompile Include="$(SrcDir)tests\hotkey.cpp" />
<ClCompile Include="$(SrcDir)tests\iconv.cpp" />
<ClCompile Include="$(SrcDir)tests\ifind.cpp" />
<ClCompile Include="$(SrcDir)tests\keyframe.cpp" />
<ClCompile Include="$(SrcDir)tests\line_iterator.cpp" />
<ClCompile Include="$(SrcDir)tests\line_wrap.cpp" />
<ClCompile Include="$(SrcDir)tests\mru.cpp" />
<ClCompile Include="$(SrcDir)tests\option.cpp" />
<ClCompile Include="$(SrcDir)tests\path.cpp" />
<ClCompile Include="$(SrcDir)tests\signals.cpp" />
<ClCompile Include="$(SrcDir)tests\syntax_highlight.cpp" />
<ClCompile Include="$(SrcDir)tests\thesaurus.cpp" />
<ClCompile Include="$(SrcDir)tests\util.cpp" />
<ClCompile Include="$(SrcDir)tests\uuencode.cpp" />
<ClCompile Include="$(SrcDir)tests\vfr.cpp" />
<ClCompile Include="$(SrcDir)tests\word_split.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="$(SrcDir)support\main.cpp" />
<ClCompile Include="$(SrcDir)support\util.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)support\main.h" />
<ClInclude Include="$(SrcDir)support\util.h" />
</ItemGroup>
<ItemGroup>
<None Include="$(SrcDir)setup.bat" />
<None Include="$(SrcDir)setup.sh" />
</ItemGroup>
<!-- Dependencies -->
<ItemGroup>
<ProjectReference Include="..\boost\boost.vcxproj">
<Project>{a649d828-a399-4d81-adef-94cfdba7847f}</Project>
</ProjectReference>
<ProjectReference Include="..\googletest\googletest.vcxproj">
<Project>{fbe51b37-8b12-41e8-b5e0-f00a06b4bcd2}</Project>
</ProjectReference>
<ProjectReference Include="..\icu\icu.vcxproj">
<Project>{f934ab7b-186b-4e96-b20c-a58c38c1b818}</Project>
</ProjectReference>
<ProjectReference Include="..\libaegisub\libaegisub.vcxproj">
<Project>{bb3fed86-db7a-4dc7-964a-260fb86cde61}</Project>
</ProjectReference>
<ProjectReference Include="..\libiconv\libiconv.vcxproj">
<Project>{965054d2-44f2-4eb2-9879-051cc3d7ef08}</Project>
</ProjectReference>
<ProjectReference Include="..\universalchardet\universalchardet.vcxproj">
<Project>{7b56955d-5162-4698-aa5b-47484edc8783}</Project>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -1,100 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Support">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Tests">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)support\main.cpp">
<Filter>Support</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)support\util.cpp">
<Filter>Support</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\access.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\cajun.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\color.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\dialogue_lexer.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\fs.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\hotkey.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\iconv.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\ifind.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\keyframe.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\line_iterator.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\line_wrap.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\mru.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\option.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\path.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\signals.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\syntax_highlight.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\thesaurus.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\util.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\vfr.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\word_split.cpp">
<Filter>Tests</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)tests\uuencode.cpp">
<Filter>Tests</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)support\main.h">
<Filter>Support</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)support\util.h">
<Filter>Support</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="$(SrcDir)setup.bat">
<Filter>Support</Filter>
</None>
<None Include="$(SrcDir)setup.sh">
<Filter>Support</Filter>
</None>
</ItemGroup>
</Project>

View File

@ -1,78 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{7B56955D-5162-4698-AA5B-47484EDC8783}</ProjectGuid>
<RootNamespace>universalchardet</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
<SrcDir>..\..\universalchardet\</SrcDir>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Source files -->
<ItemGroup>
<None Include="$(SrcDir)Big5Freq.tab" />
<None Include="$(SrcDir)EUCKRFreq.tab" />
<None Include="$(SrcDir)EUCTWFreq.tab" />
<None Include="$(SrcDir)GB2312Freq.tab" />
<None Include="$(SrcDir)JISFreq.tab" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)CharDistribution.cpp" />
<ClCompile Include="$(SrcDir)JpCntx.cpp" />
<ClCompile Include="$(SrcDir)LangBulgarianModel.cpp" />
<ClCompile Include="$(SrcDir)LangCyrillicModel.cpp" />
<ClCompile Include="$(SrcDir)LangGreekModel.cpp" />
<ClCompile Include="$(SrcDir)LangHebrewModel.cpp" />
<ClCompile Include="$(SrcDir)LangHungarianModel.cpp" />
<ClCompile Include="$(SrcDir)LangThaiModel.cpp" />
<ClCompile Include="$(SrcDir)nsBig5Prober.cpp" />
<ClCompile Include="$(SrcDir)nsCharSetProber.cpp" />
<ClCompile Include="$(SrcDir)nsEscCharsetProber.cpp" />
<ClCompile Include="$(SrcDir)nsEscSM.cpp" />
<ClCompile Include="$(SrcDir)nsEUCJPProber.cpp" />
<ClCompile Include="$(SrcDir)nsEUCKRProber.cpp" />
<ClCompile Include="$(SrcDir)nsEUCTWProber.cpp" />
<ClCompile Include="$(SrcDir)nsGB2312Prober.cpp" />
<ClCompile Include="$(SrcDir)nsHebrewProber.cpp" />
<ClCompile Include="$(SrcDir)nsLatin1Prober.cpp" />
<ClCompile Include="$(SrcDir)nsMBCSGroupProber.cpp" />
<ClCompile Include="$(SrcDir)nsMBCSSM.cpp" />
<ClCompile Include="$(SrcDir)nsSBCharSetProber.cpp" />
<ClCompile Include="$(SrcDir)nsSBCSGroupProber.cpp" />
<ClCompile Include="$(SrcDir)nsSJISProber.cpp" />
<ClCompile Include="$(SrcDir)nsUniversalDetector.cpp" />
<ClCompile Include="$(SrcDir)nsUTF8Prober.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)CharDistribution.h" />
<ClInclude Include="$(SrcDir)JpCntx.h" />
<ClInclude Include="$(SrcDir)nsBig5Prober.h" />
<ClInclude Include="$(SrcDir)nsCharSetProber.h" />
<ClInclude Include="$(SrcDir)nsCodingStateMachine.h" />
<ClInclude Include="$(SrcDir)nscore.h" />
<ClInclude Include="$(SrcDir)nsError.h" />
<ClInclude Include="$(SrcDir)nsEscCharsetProber.h" />
<ClInclude Include="$(SrcDir)nsEUCJPProber.h" />
<ClInclude Include="$(SrcDir)nsEUCKRProber.h" />
<ClInclude Include="$(SrcDir)nsEUCTWProber.h" />
<ClInclude Include="$(SrcDir)nsGB2312Prober.h" />
<ClInclude Include="$(SrcDir)nsHebrewProber.h" />
<ClInclude Include="$(SrcDir)nsLatin1Prober.h" />
<ClInclude Include="$(SrcDir)nsMBCSGroupProber.h" />
<ClInclude Include="$(SrcDir)nsPkgInt.h" />
<ClInclude Include="$(SrcDir)nsSBCharSetProber.h" />
<ClInclude Include="$(SrcDir)nsSBCSGroupProber.h" />
<ClInclude Include="$(SrcDir)nsSJISProber.h" />
<ClInclude Include="$(SrcDir)nsUniversalDetector.h" />
<ClInclude Include="$(SrcDir)nsUTF8Prober.h" />
<ClInclude Include="$(SrcDir)prcpucfg.h" />
<ClInclude Include="$(SrcDir)prmem.h" />
<ClInclude Include="$(SrcDir)protypes.h" />
<ClInclude Include="$(SrcDir)prtypes.h" />
<ClInclude Include="$(SrcDir)xpcom-config.h" />
</ItemGroup>
</Project>

View File

@ -1,191 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Frequency tables">
<UniqueIdentifier>{f628048a-0e81-4ea7-b20c-09e14f767db1}</UniqueIdentifier>
<Extensions>*.tab</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<None Include="$(SrcDir)Big5Freq.tab">
<Filter>Frequency tables</Filter>
</None>
<None Include="$(SrcDir)JISFreq.tab">
<Filter>Frequency tables</Filter>
</None>
<None Include="$(SrcDir)EUCKRFreq.tab">
<Filter>Frequency tables</Filter>
</None>
<None Include="$(SrcDir)EUCTWFreq.tab">
<Filter>Frequency tables</Filter>
</None>
<None Include="$(SrcDir)GB2312Freq.tab">
<Filter>Frequency tables</Filter>
</None>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(SrcDir)CharDistribution.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)JpCntx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangBulgarianModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangCyrillicModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangGreekModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangHebrewModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangHungarianModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)LangThaiModel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsBig5Prober.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsCharSetProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsEscCharsetProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsEscSM.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsEUCJPProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsEUCKRProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsEUCTWProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsGB2312Prober.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsHebrewProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsLatin1Prober.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsMBCSGroupProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsMBCSSM.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsSBCharSetProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsSBCSGroupProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsSJISProber.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsUniversalDetector.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="$(SrcDir)nsUTF8Prober.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(SrcDir)CharDistribution.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)JpCntx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsBig5Prober.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsCharSetProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsCodingStateMachine.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nscore.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsError.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsEscCharsetProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsEUCJPProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsEUCKRProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsEUCTWProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsGB2312Prober.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsHebrewProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsLatin1Prober.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsMBCSGroupProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsPkgInt.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsSBCharSetProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsSBCSGroupProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsSJISProber.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsUniversalDetector.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)nsUTF8Prober.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)prcpucfg.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)prmem.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)protypes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)prtypes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="$(SrcDir)xpcom-config.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!--
Sample build customisation file for Aegisub.
Use this file as a template for configuring the location of the
Freetype 2 library for the Aegisub build system.
To use this file, copy it and rename the copy to *.props.
-->
<PropertyGroup Label="UserMacros">
<!-- Ft2IncludePath defines where the Freetype 2 include files are found -->
<Ft2IncludePath>C:\Dev\freetype-2.4.3\include</Ft2IncludePath>
<!-- Ft2LibraryPath defines where the Freetype 2 library files are found -->
<Ft2LibraryPath>C:\Dev\freetype-2.4.3\objs\win32\vc2010</Ft2LibraryPath>
<!-- Ft2LibraryName defines the name of the library to use for linking Freetype 2.
This will often be conditional on platform and configuration. -->
<Ft2LibraryName Condition="'$(Platform)|$(Configuration)'=='Win32|Debug'" >freetype2.4.3_32d.lib</Ft2LibraryName>
<Ft2LibraryName Condition="'$(Platform)|$(Configuration)'=='Win32|Release'">freetype2.4.3_32.lib</Ft2LibraryName>
<Ft2LibraryName Condition="'$(Platform)|$(Configuration)'=='x64|Debug'" >freetype2.4.3_64d.lib</Ft2LibraryName>
<Ft2LibraryName Condition="'$(Platform)|$(Configuration)'=='x64|Release'" >freetype2.4.3_64.lib</Ft2LibraryName>
</PropertyGroup>
</Project>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!--
Sample build customisation file for Aegisub.
This file shows how you can control where the build system places
produced files by overriding the properties defined by paths.props.
Most people will not need this.
To use this file, copy it and rename the copy to *.props.
-->
<PropertyGroup Label="UserMacros">
<!-- Base directory for placing built files in -->
<AegisubOutputBase>C:\Dev\Aegisub\BuildFiles\</AegisubSourceBase>
<!-- Executable files are placed here, essentially creating an installation -->
<AegisubBinaryDir>C:\Dev\Aegisub\BuiltBinaries\$(Platform)\</AegisubContribBase>
</PropertyGroup>
</Project>

View File

@ -1,12 +0,0 @@
You can put MSBuild property files in this folder to override the default
build configuration for Aegisub's build system.
A number of sample files are provided. These can be copied and used as
templates for common configuration. Importantly, configuring the location
of several library dependencies.
The copied sample files should be renamed to *.props, otherwise they will
not be found by the build system.
You should not check files placed in this folder into source control.
Files must be named *.props to be found by the build system.

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!--
Sample build customisation file for Aegisub.
Use this file as a template for configuring the location of wxWidgets
for the Aegisub build system.
To use this file, copy it and rename the copy to *.props.
-->
<PropertyGroup Label="UserMacros">
<!-- Helper property, defines the base directory for wxWidgets -->
<WxBasePath>C:\Dev\wxWidgets-2.9\install-vc10</WxBasePath>
<!-- WxLibraryPath defines the location of the wxWidgets .lib files.
Two conditional values are given, depending on the platform. -->
<WxLibraryPath Condition="'$(Platform)'=='Win32'">$(WxBasePath)\lib32</WxLibraryPath>
<WxLibraryPath Condition="'$(Platform)'=='x64'">$(WxBasePath)\lib64</WxLibraryPath>
<!-- WxIncludePath defines the location of the wxWidgets include files. -->
<WxIncludePath>$(WxBasePath)\include</WxIncludePath>
</PropertyGroup>
</Project>

View File

@ -1,256 +0,0 @@
#ifndef _WX_SETUP_H_
#define _WX_SETUP_H_
#ifndef wxUSE_GUI
#define wxUSE_GUI 1
#endif
#ifdef wxUSE_UNICODE
#undef wxUSE_UNICODE
#endif
#define WXWIN_COMPATIBILITY_2_4 0
#define WXWIN_COMPATIBILITY_2_6 0
#define WXWIN_COMPATIBILITY_2_8 0
#define wxDIALOG_UNIT_COMPATIBILITY 0
#define wxUSE_ON_FATAL_EXCEPTION 1
#define wxUSE_STACKWALKER 1
#define wxUSE_DEBUGREPORT 1
#define wxUSE_DEBUG_CONTEXT 0
#define wxUSE_MEMORY_TRACING 0
#define wxUSE_GLOBAL_MEMORY_OPERATORS 0
#define wxUSE_DEBUG_NEW_ALWAYS 0
#define wxUSE_UNICODE 1
#define wxUSE_WCHAR_T 1
#define wxUSE_EXCEPTIONS 1
#define wxUSE_EXTENDED_RTTI 0
#define wxUSE_STL 0
#define wxUSE_LOG 1
#define wxUSE_LOGWINDOW 1
#define wxUSE_LOGGUI 1
#define wxUSE_LOG_DIALOG 1
#define wxUSE_CMDLINE_PARSER 0
#define wxUSE_THREADS 1
#define wxUSE_STREAMS 1
#define wxUSE_STD_IOSTREAM 1
#define wxUSE_STD_STRING 1
#define wxUSE_PRINTF_POS_PARAMS 1
#define wxUSE_LONGLONG 1
#define wxUSE_BASE64 0
#define wxUSE_CONSOLE_EVENTLOOP 1
#define wxUSE_FILE 1
#define wxUSE_FFILE 1
#define wxUSE_FSVOLUME 0
#define wxUSE_STDPATHS 1
#define wxUSE_TEXTBUFFER 1
#define wxUSE_TEXTFILE 1
#define wxUSE_INTL 1
#define wxUSE_XLOCALE 1
#define wxUSE_DATETIME 1
#define wxUSE_TIMER 1
#define wxUSE_STOPWATCH 1
#define wxUSE_FSWATCHER 0
#define wxUSE_CONFIG 0
#define wxUSE_CONFIG_NATIVE 0
#define wxUSE_DIALUP_MANAGER 0
#define wxUSE_DYNLIB_CLASS 1
#define wxUSE_DYNAMIC_LOADER 1
#define wxUSE_SOCKETS 1
#define wxUSE_IPV6 0
#define wxUSE_FILESYSTEM 1
#define wxUSE_FS_ZIP 1
#define wxUSE_FS_ARCHIVE 1
#define wxUSE_FS_INET 0
#define wxUSE_ARCHIVE_STREAMS 1
#define wxUSE_ZIPSTREAM 1
#define wxUSE_TARSTREAM 0
#define wxUSE_ZLIB 1
#define wxUSE_APPLE_IEEE 0
#define wxUSE_JOYSTICK 0
#define wxUSE_FONTENUM 1
#define wxUSE_FONTMAP 1
#define wxUSE_MIMETYPE 1
#define wxUSE_PROTOCOL 0
#define wxUSE_PROTOCOL_FILE 0
#define wxUSE_PROTOCOL_FTP 0
#define wxUSE_PROTOCOL_HTTP 0
#define wxUSE_URL 0
#define wxUSE_URL_NATIVE 0
#define wxUSE_VARIANT 1
#define wxUSE_ANY 1
#define wxUSE_REGEX 0
#define wxUSE_SYSTEM_OPTIONS 1
#define wxUSE_SOUND 0
#define wxUSE_MEDIACTRL 0
#define wxUSE_GSTREAMER 0
#define wxUSE_XRC 0
#define wxUSE_XML 1
#define wxUSE_AUI 0
#define wxUSE_RIBBON 0
#define wxUSE_PROPGRID 0
#define wxUSE_STC 1
#define wxUSE_GRAPHICS_CONTEXT 1
#define wxUSE_CONTROLS 1
#define wxUSE_POPUPWIN 1
#define wxUSE_TIPWINDOW 0
#define wxUSE_ANIMATIONCTRL 1
#define wxUSE_BUTTON 1
#define wxUSE_BMPBUTTON 1
#define wxUSE_CALENDARCTRL 1
#define wxUSE_CHECKBOX 1
#define wxUSE_CHECKLISTBOX 1
#define wxUSE_CHOICE 1
#define wxUSE_COLLPANE 1
#define wxUSE_COLOURPICKERCTRL 1
#define wxUSE_COMBOBOX 1
#define wxUSE_DATAVIEWCTRL 1
#define wxUSE_DATEPICKCTRL 1
#define wxUSE_DIRPICKERCTRL 1
#define wxUSE_EDITABLELISTBOX 1
#define wxUSE_FILECTRL 1
#define wxUSE_FILEPICKERCTRL 1
#define wxUSE_FONTPICKERCTRL 1
#define wxUSE_GAUGE 1
#define wxUSE_HEADERCTRL 1
#define wxUSE_HYPERLINKCTRL 1
#define wxUSE_LISTBOX 1
#define wxUSE_LISTCTRL 1
#define wxUSE_RADIOBOX 1
#define wxUSE_RADIOBTN 1
#define wxUSE_SCROLLBAR 1
#define wxUSE_SEARCHCTRL 1
#define wxUSE_SLIDER 1
#define wxUSE_SPINBTN 1
#define wxUSE_SPINCTRL 1
#define wxUSE_STATBOX 1
#define wxUSE_STATLINE 1
#define wxUSE_STATTEXT 1
#define wxUSE_STATBMP 1
#define wxUSE_TEXTCTRL 1
#define wxUSE_TOGGLEBTN 1
#define wxUSE_TREECTRL 1
#define wxUSE_STATUSBAR 1
#define wxUSE_NATIVE_STATUSBAR 1
#define wxUSE_TOOLBAR 1
#define wxUSE_TOOLBAR_NATIVE 1
#define wxUSE_NOTEBOOK 1
#define wxUSE_LISTBOOK 1
#define wxUSE_CHOICEBOOK 1
#define wxUSE_TREEBOOK 1
#define wxUSE_TOOLBOOK 1
#define wxUSE_TASKBARICON 0
#define wxUSE_TAB_DIALOG 0
#define wxUSE_GRID 1
#define wxUSE_MINIFRAME 0
#define wxUSE_COMBOCTRL 1
#define wxUSE_ODCOMBOBOX 1
#define wxUSE_BITMAPCOMBOBOX 0
#define wxUSE_REARRANGECTRL 1
#define wxUSE_ACCEL 1
#define wxUSE_HOTKEY 1
#define wxUSE_CARET 1
#define wxUSE_DISPLAY 1
#define wxUSE_GEOMETRY 1
#define wxUSE_IMAGLIST 1
#define wxUSE_INFOBAR 1
#define wxUSE_MENUS 1
#define wxUSE_NOTIFICATION_MESSAGE 1
#define wxUSE_SASH 1
#define wxUSE_SPLITTER 1
#define wxUSE_TOOLTIPS 1
#define wxUSE_VALIDATORS 1
#define wxUSE_COMMON_DIALOGS 1
#define wxUSE_BUSYINFO 1
#define wxUSE_CHOICEDLG 1
#define wxUSE_COLOURDLG 1
#define wxUSE_DIRDLG 1
#define wxUSE_FILEDLG 1
#define wxUSE_FINDREPLDLG 0
#define wxUSE_FONTDLG 1
#define wxUSE_MSGDLG 1
#define wxUSE_PROGRESSDLG 0
#define wxUSE_STARTUP_TIPS 0
#define wxUSE_TEXTDLG 1
#define wxUSE_NUMBERDLG 1
#define wxUSE_SPLASH 0
#define wxUSE_WIZARDDLG 0
#define wxUSE_ABOUTDLG 1
#define wxUSE_METAFILE 0
#define wxUSE_ENH_METAFILE 0
#define wxUSE_WIN_METAFILES_ALWAYS 0
#define wxUSE_MDI 0
#define wxUSE_DOC_VIEW_ARCHITECTURE 0
#define wxUSE_MDI_ARCHITECTURE 0
#define wxUSE_PRINTING_ARCHITECTURE 0
#define wxUSE_HTML 0
#define wxUSE_GLCANVAS 1
#define wxUSE_RICHTEXT 0
#define wxUSE_CLIPBOARD 1
#define wxUSE_DATAOBJ 1
#define wxUSE_DRAG_AND_DROP 1
#define wxUSE_ACCESSIBILITY 0
#define wxUSE_SNGLINST_CHECKER 1
#define wxUSE_DRAGIMAGE 1
#define wxUSE_IPC 0
#define wxUSE_HELP 0
#define wxUSE_MS_HTML_HELP 0
#define wxUSE_WXHTML_HELP 0
#define wxUSE_RESOURCES 0
#define wxUSE_CONSTRAINTS 0
#define wxUSE_SPLINES 0
#define wxUSE_MOUSEWHEEL 1
#define wxUSE_POSTSCRIPT 0
#define wxUSE_AFM_FOR_POSTSCRIPT 0
#define wxUSE_SVG 0
#define wxODBC_FWD_ONLY_CURSORS 1
#define wxODBC_BACKWARD_COMPATABILITY 0
#define wxUSE_IOSTREAMH 0
#define wxUSE_IMAGE 1
#define wxUSE_LIBPNG 1
#define wxUSE_LIBJPEG 0
#define wxUSE_LIBTIFF 0
#define wxUSE_TGA 0
#define wxUSE_GIF 0
#define wxUSE_PNM 0
#define wxUSE_PCX 0
#define wxUSE_IFF 0
#define wxUSE_XPM 0
#define wxUSE_ICO_CUR 1
#define wxUSE_PALETTE 1
#define wxUSE_ALL_THEMES 1
#define wxUSE_UNICODE_MSLU 0
#define wxUSE_MFC 0
#define wxUSE_OLE 1
#define wxUSE_OLE_AUTOMATION 0
#define wxUSE_ACTIVEX 0
#define wxUSE_DC_CACHEING 1
#define wxUSE_DIB_FOR_BITMAP 0
#define wxUSE_WXDIB 1
#define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 0
#define wxUSE_REGKEY 1
#define wxUSE_RICHEDIT 0
#define wxUSE_RICHEDIT2 0
#define wxUSE_OWNER_DRAWN 1
#define wxUSE_TASKBARICON_BALLOONS 0
#define wxUSE_UXTHEME 1
#define wxUSE_UXTHEME_AUTO 1
#define wxUSE_INKEDIT 0
#define wxUSE_INICONF 0
#define wxUSE_DATEPICKCTRL_GENERIC 0
#define wxUSE_CRASHREPORT 1
#define wxUSE_AUTOID_MANAGEMENT 1
#define wxUSE_FILE_HISTORY 0
#define wxUSE_UIACTIONSIMULATOR 0
#define wxUSE_CAIRO 0
#define wxUSE_COMMANDLINKBUTTON 0
#define wxUSE_RICHMSGDLG 0
#define wxUSE_STD_CONTAINERS 1
#define wxUSE_STD_STRING_CONV_IN_WXSTRING 0
#define wxUSE_ARTPROVIDER_STD 0
#define wxUSE_ARTPROVIDER_TANGO 0
#define wxUSE_DC_TRANSFORM_MATRIX 0
#define wxUSE_MARKUP 0
#define wxUSE_TREELISTCTRL 1
#define wxUSE_TIMEPICKCTRL 1
#define wxUSE_WEBVIEW 0
#define wxUSE_RICHTOOLTIP 0
#define wxUSE_COMPILER_TLS 1
#define wxUSE_PREFERENCES_EDITOR 0
#endif

View File

@ -1,62 +0,0 @@
#include "wx/version.h"
#include "wx/cpp.h"
#ifdef _DEBUG
#define wxSUFFIX_DEBUG "d"
#define wxSUFFIX d
#define wxCONFIGURATION Debug
#else
#define wxSUFFIX_DEBUG ""
#define wxSUFFIX
#define wxCONFIGURATION Release
#endif
#ifndef _M_X64
#define wxSETUPH_PATH wxCONCAT5(../../lib/Win32/, wxCONFIGURATION, /msw, wxSUFFIX, /wx/setup.h)
#else
#define wxSETUPH_PATH wxCONCAT5(../../lib/x64/, wxCONFIGURATION, /msw, wxSUFFIX, /wx/setup.h)
#endif
#define wxSETUPH_PATH_STR wxSTRINGIZE(wxSETUPH_PATH)
#include wxSETUPH_PATH_STR
#define wxSUFFIX_STR wxSTRINGIZE(wxSUFFIX)
#define wxSHORT_VERSION_STRING wxSTRINGIZE(wxMAJOR_VERSION) wxSTRINGIZE(wxMINOR_VERSION)
#define wxWX_LIB_NAME(name, subname) "wx" name wxSHORT_VERSION_STRING wxSUFFIX_STR subname
#define wxBASE_LIB_NAME(name) wxWX_LIB_NAME("base", "_" name)
#define wxMSW_LIB_NAME(name) wxWX_LIB_NAME("msw", "_" name)
#define wx3RD_PARTY_LIB_NAME(name) "wx" name wxSUFFIX_DEBUG
#define wx3RD_PARTY_LIB_NAME_U(name) "wx" name wxSUFFIX_STR
#pragma comment(lib, wxWX_LIB_NAME("base", ""))
#pragma comment(lib, wxBASE_LIB_NAME("net"))
#pragma comment(lib, wxBASE_LIB_NAME("xml"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME_U("regex"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("expat"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("jpeg"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("png"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("tiff"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("zlib"))
#pragma comment(lib, wxMSW_LIB_NAME("core"))
#pragma comment(lib, wxMSW_LIB_NAME("adv"))
#pragma comment(lib, wxMSW_LIB_NAME("html"))
#pragma comment(lib, wxMSW_LIB_NAME("gl"))
#pragma comment(lib, wxMSW_LIB_NAME("qa"))
#pragma comment(lib, wxMSW_LIB_NAME("propgrid"))
#pragma comment(lib, wxMSW_LIB_NAME("ribbon"))
#pragma comment(lib, wxMSW_LIB_NAME("richtext"))
#pragma comment(lib, wxMSW_LIB_NAME("stc"))
#pragma comment(lib, wx3RD_PARTY_LIB_NAME("scintilla"))
#pragma comment(lib, "kernel32")
#pragma comment(lib, "user32")
#pragma comment(lib, "gdi32")
#pragma comment(lib, "comdlg32")
#pragma comment(lib, "winspool")
#pragma comment(lib, "winmm")
#pragma comment(lib, "shell32")
#pragma comment(lib, "comctl32")
#pragma comment(lib, "ole32")
#pragma comment(lib, "oleaut32")
#pragma comment(lib, "uuid")
#pragma comment(lib, "rpcrt4")
#pragma comment(lib, "advapi32")
#pragma comment(lib, "wsock32")

View File

@ -1,75 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<!-- Aegisub project configuration -->
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<PropertyGroup Label="wx">
<WxTargetCpu Condition="$(Platform) == 'Win32'">X86</WxTargetCpu>
<WxTargetCpu Condition="$(Platform) == 'x64'">X64</WxTargetCpu>
<WxBuild Condition="$(Configuration) == 'Debug'">debug</WxBuild>
<WxBuild Condition="$(Configuration) == 'Release'">release</WxBuild>
<NMakeArgs>LIBDIRNAME=$(AegisubLibraryDir) OBJS=$(AegisubObjectDir) SHARED=0 UNICODE=0 USE_OPENGL=1 VENDOR=aegisub TARGET_CPU=$(WxTargetCpu) BUILD=$(WxBuild)</NMakeArgs>
<LibraryNameSuffix Condition="$(Configuration) == 'Debug'">d</LibraryNameSuffix>
</PropertyGroup>
<ItemGroup>
<WxHeader Include="$(WxSrcDir)\src\png\png.h" />
<WxHeader Include="$(WxSrcDir)\src\png\pngconf.h" />
<WxHeader Include="$(WxSrcDir)\include\**\*.h" />
<WxHeader Include="$(WxSrcDir)\include\**\*.rc" />
<WxHeader Include="$(WxSrcDir)\include\**\*.cur" />
<WxHeader Include="$(WxSrcDir)\include\**\*.bmp" />
<WxHeader Include="$(WxSrcDir)\include\**\*.ico" />
<WxSource Include="$(WxSrcDir)\src\**\*.cpp" />
<WxSource Include="$(WxSrcDir)\src\**\*.cxx" />
<WxSource Include="$(WxSrcDir)\src\**\*.c" />
<!-- Specifically list one of them to ensure there's an output listed for
a clean build -->
<WxLibrary Include="$(AegisubLibraryDir)\wxbase30$(LibraryNameSuffix).lib" />
<WxLibrary Include="$(AegisubLibraryDir)\wx*.lib" />
</ItemGroup>
<Target Name="Build"
Inputs="@(WxHeader);@(WxSource)"
Outputs="@(WxLibrary)"
>
<Copy
SourceFiles="setup-build.h"
DestinationFiles="$(WxSrcDir)\include\wx\msw\setup.h"
SkipUnchangedFiles="true"
/>
<Exec
Command="nmake -f makefile.vc $(NMakeArgs)"
WorkingDirectory="$(WxSrcDir)\build\msw"
/>
<Copy
SourceFiles="@(WxHeader)"
DestinationFolder="$(AegisubSourceBase)include\%(RecursiveDir)"
SkipUnchangedFiles="true"
/>
<Copy
SourceFiles="setup-installed.h"
DestinationFiles="$(AegisubSourceBase)include\wx\setup.h"
SkipUnchangedFiles="true"
/>
</Target>
<Target Name="Clean">
<RemoveDir Directories="$(AegisubObjectDir)" ContinueOnError="WarnAndContinue" />
</Target>
<Target Name="Rebuild">
<CallTarget Targets="Clean;Build" />
</Target>
</Project>

View File

@ -1,513 +0,0 @@
/* zconf.h -- configuration of the zlib compression library
* Copyright (C) 1995-2012 Jean-loup Gailly.
* For conditions of distribution and use, see copyright notice in zlib.h
*/
/* @(#) $Id$ */
#ifndef ZCONF_H
#define ZCONF_H
/*
* If you *really* need a unique prefix for all types and library functions,
* compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
* Even better than compiling with -DZ_PREFIX would be to use configure to set
* this permanently in zconf.h using "./configure --zprefix".
*/
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
# define Z_PREFIX_SET
/* all linked symbols */
# define _dist_code z__dist_code
# define _length_code z__length_code
# define _tr_align z__tr_align
# define _tr_flush_block z__tr_flush_block
# define _tr_init z__tr_init
# define _tr_stored_block z__tr_stored_block
# define _tr_tally z__tr_tally
# define adler32 z_adler32
# define adler32_combine z_adler32_combine
# define adler32_combine64 z_adler32_combine64
# ifndef Z_SOLO
# define compress z_compress
# define compress2 z_compress2
# define compressBound z_compressBound
# endif
# define crc32 z_crc32
# define crc32_combine z_crc32_combine
# define crc32_combine64 z_crc32_combine64
# define deflate z_deflate
# define deflateBound z_deflateBound
# define deflateCopy z_deflateCopy
# define deflateEnd z_deflateEnd
# define deflateInit2_ z_deflateInit2_
# define deflateInit_ z_deflateInit_
# define deflateParams z_deflateParams
# define deflatePending z_deflatePending
# define deflatePrime z_deflatePrime
# define deflateReset z_deflateReset
# define deflateResetKeep z_deflateResetKeep
# define deflateSetDictionary z_deflateSetDictionary
# define deflateSetHeader z_deflateSetHeader
# define deflateTune z_deflateTune
# define deflate_copyright z_deflate_copyright
# define get_crc_table z_get_crc_table
# ifndef Z_SOLO
# define gz_error z_gz_error
# define gz_intmax z_gz_intmax
# define gz_strwinerror z_gz_strwinerror
# define gzbuffer z_gzbuffer
# define gzclearerr z_gzclearerr
# define gzclose z_gzclose
# define gzclose_r z_gzclose_r
# define gzclose_w z_gzclose_w
# define gzdirect z_gzdirect
# define gzdopen z_gzdopen
# define gzeof z_gzeof
# define gzerror z_gzerror
# define gzflush z_gzflush
# define gzgetc z_gzgetc
# define gzgetc_ z_gzgetc_
# define gzgets z_gzgets
# define gzoffset z_gzoffset
# define gzoffset64 z_gzoffset64
# define gzopen z_gzopen
# define gzopen64 z_gzopen64
# ifdef _WIN32
# define gzopen_w z_gzopen_w
# endif
# define gzprintf z_gzprintf
# define gzputc z_gzputc
# define gzputs z_gzputs
# define gzread z_gzread
# define gzrewind z_gzrewind
# define gzseek z_gzseek
# define gzseek64 z_gzseek64
# define gzsetparams z_gzsetparams
# define gztell z_gztell
# define gztell64 z_gztell64
# define gzungetc z_gzungetc
# define gzwrite z_gzwrite
# endif
# define inflate z_inflate
# define inflateBack z_inflateBack
# define inflateBackEnd z_inflateBackEnd
# define inflateBackInit_ z_inflateBackInit_
# define inflateCopy z_inflateCopy
# define inflateEnd z_inflateEnd
# define inflateGetHeader z_inflateGetHeader
# define inflateInit2_ z_inflateInit2_
# define inflateInit_ z_inflateInit_
# define inflateMark z_inflateMark
# define inflatePrime z_inflatePrime
# define inflateReset z_inflateReset
# define inflateReset2 z_inflateReset2
# define inflateSetDictionary z_inflateSetDictionary
# define inflateSync z_inflateSync
# define inflateSyncPoint z_inflateSyncPoint
# define inflateUndermine z_inflateUndermine
# define inflateResetKeep z_inflateResetKeep
# define inflate_copyright z_inflate_copyright
# define inflate_fast z_inflate_fast
# define inflate_table z_inflate_table
# ifndef Z_SOLO
# define uncompress z_uncompress
# endif
# define zError z_zError
# ifndef Z_SOLO
# define zcalloc z_zcalloc
# define zcfree z_zcfree
# endif
# define zlibCompileFlags z_zlibCompileFlags
# define zlibVersion z_zlibVersion
/* all zlib typedefs in zlib.h and zconf.h */
# define Byte z_Byte
# define Bytef z_Bytef
# define alloc_func z_alloc_func
# define charf z_charf
# define free_func z_free_func
# ifndef Z_SOLO
# define gzFile z_gzFile
# endif
# define gz_header z_gz_header
# define gz_headerp z_gz_headerp
# define in_func z_in_func
# define intf z_intf
# define out_func z_out_func
# define uInt z_uInt
# define uIntf z_uIntf
# define uLong z_uLong
# define uLongf z_uLongf
# define voidp z_voidp
# define voidpc z_voidpc
# define voidpf z_voidpf
/* all zlib structs in zlib.h and zconf.h */
# define gz_header_s z_gz_header_s
# define internal_state z_internal_state
#endif
#if defined(__MSDOS__) && !defined(MSDOS)
# define MSDOS
#endif
#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
# define OS2
#endif
#if defined(_WINDOWS) && !defined(WINDOWS)
# define WINDOWS
#endif
#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
# ifndef WIN32
# define WIN32
# endif
#endif
#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
# ifndef SYS16BIT
# define SYS16BIT
# endif
# endif
#endif
/*
* Compile with -DMAXSEG_64K if the alloc function cannot allocate more
* than 64k bytes at a time (needed on systems with 16-bit int).
*/
#ifdef SYS16BIT
# define MAXSEG_64K
#endif
#ifdef MSDOS
# define UNALIGNED_OK
#endif
#ifdef __STDC_VERSION__
# ifndef STDC
# define STDC
# endif
# if __STDC_VERSION__ >= 199901L
# ifndef STDC99
# define STDC99
# endif
# endif
#endif
#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
# define STDC
#endif
#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
# define STDC
#endif
#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
# define STDC
#endif
#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
# define STDC
#endif
#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */
# define STDC
#endif
#ifndef STDC
# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
# define const /* note: need a more gentle solution here */
# endif
#endif
#if defined(ZLIB_CONST) && !defined(z_const)
# define z_const const
#else
# define z_const
#endif
/* Some Mac compilers merge all .h files incorrectly: */
#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
# define NO_DUMMY_DECL
#endif
/* Maximum value for memLevel in deflateInit2 */
#ifndef MAX_MEM_LEVEL
# ifdef MAXSEG_64K
# define MAX_MEM_LEVEL 8
# else
# define MAX_MEM_LEVEL 9
# endif
#endif
/* Maximum value for windowBits in deflateInit2 and inflateInit2.
* WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
* created by gzip. (Files created by minigzip can still be extracted by
* gzip.)
*/
#ifndef MAX_WBITS
# define MAX_WBITS 15 /* 32K LZ77 window */
#endif
/* The memory requirements for deflate are (in bytes):
(1 << (windowBits+2)) + (1 << (memLevel+9))
that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
plus a few kilobytes for small objects. For example, if you want to reduce
the default memory requirements from 256K to 128K, compile with
make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
Of course this will generally degrade compression (there's no free lunch).
The memory requirements for inflate are (in bytes) 1 << windowBits
that is, 32K for windowBits=15 (default value) plus a few kilobytes
for small objects.
*/
/* Type declarations */
#ifndef OF /* function prototypes */
# ifdef STDC
# define OF(args) args
# else
# define OF(args) ()
# endif
#endif
#ifndef Z_ARG /* function prototypes for stdarg */
# if defined(STDC) || defined(Z_HAVE_STDARG_H)
# define Z_ARG(args) args
# else
# define Z_ARG(args) ()
# endif
#endif
/* The following definitions for FAR are needed only for MSDOS mixed
* model programming (small or medium model with some far allocations).
* This was tested only with MSC; for other MSDOS compilers you may have
* to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
* just define FAR to be empty.
*/
#ifdef SYS16BIT
# if defined(M_I86SM) || defined(M_I86MM)
/* MSC small or medium model */
# define SMALL_MEDIUM
# ifdef _MSC_VER
# define FAR _far
# else
# define FAR far
# endif
# endif
# if (defined(__SMALL__) || defined(__MEDIUM__))
/* Turbo C small or medium model */
# define SMALL_MEDIUM
# ifdef __BORLANDC__
# define FAR _far
# else
# define FAR far
# endif
# endif
#endif
#if defined(WINDOWS) || defined(WIN32)
/* If building or using zlib as a DLL, define ZLIB_DLL.
* This is not mandatory, but it offers a little performance increase.
*/
# ifdef ZLIB_DLL
# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
# ifdef ZLIB_INTERNAL
# define ZEXTERN extern __declspec(dllexport)
# else
# define ZEXTERN extern __declspec(dllimport)
# endif
# endif
# endif /* ZLIB_DLL */
/* If building or using zlib with the WINAPI/WINAPIV calling convention,
* define ZLIB_WINAPI.
* Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
*/
# ifdef ZLIB_WINAPI
# ifdef FAR
# undef FAR
# endif
# include <windows.h>
/* No need for _export, use ZLIB.DEF instead. */
/* For complete Windows compatibility, use WINAPI, not __stdcall. */
# define ZEXPORT WINAPI
# ifdef WIN32
# define ZEXPORTVA WINAPIV
# else
# define ZEXPORTVA FAR CDECL
# endif
# endif
#endif
#if defined (__BEOS__)
# ifdef ZLIB_DLL
# ifdef ZLIB_INTERNAL
# define ZEXPORT __declspec(dllexport)
# define ZEXPORTVA __declspec(dllexport)
# else
# define ZEXPORT __declspec(dllimport)
# define ZEXPORTVA __declspec(dllimport)
# endif
# endif
#endif
#ifndef ZEXTERN
# define ZEXTERN extern
#endif
#ifndef ZEXPORT
# define ZEXPORT
#endif
#ifndef ZEXPORTVA
# define ZEXPORTVA
#endif
#ifndef FAR
# define FAR
#endif
#if !defined(__MACTYPES__)
typedef unsigned char Byte; /* 8 bits */
#endif
typedef unsigned int uInt; /* 16 bits or more */
typedef unsigned long uLong; /* 32 bits or more */
#ifdef SMALL_MEDIUM
/* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
# define Bytef Byte FAR
#else
typedef Byte FAR Bytef;
#endif
typedef char FAR charf;
typedef int FAR intf;
typedef uInt FAR uIntf;
typedef uLong FAR uLongf;
#ifdef STDC
typedef void const *voidpc;
typedef void FAR *voidpf;
typedef void *voidp;
#else
typedef Byte const *voidpc;
typedef Byte FAR *voidpf;
typedef Byte *voidp;
#endif
/* ./configure may #define Z_U4 here */
#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC)
# include <limits.h>
# if (UINT_MAX == 0xffffffffUL)
# define Z_U4 unsigned
# else
# if (ULONG_MAX == 0xffffffffUL)
# define Z_U4 unsigned long
# else
# if (USHRT_MAX == 0xffffffffUL)
# define Z_U4 unsigned short
# endif
# endif
# endif
#endif
#ifdef Z_U4
typedef Z_U4 z_crc_t;
#else
typedef unsigned long z_crc_t;
#endif
#if defined(HAVE_UNISTD_H) && -HAVE_UNISTD_H - -1 == 1
# undef HAVE_UNISTD_H
#endif
#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */
# define Z_HAVE_UNISTD_H
#endif
#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */
# define Z_HAVE_STDARG_H
#endif
#ifdef STDC
# ifndef Z_SOLO
# include <sys/types.h> /* for off_t */
# endif
#endif
#ifdef _WIN32
# include <stddef.h> /* for wchar_t */
#endif
/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
* "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even
* though the former does not conform to the LFS document), but considering
* both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as
* equivalently requesting no 64-bit operations
*/
#if defined(LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1
# undef _LARGEFILE64_SOURCE
#endif
#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H)
# define Z_HAVE_UNISTD_H
#endif
#ifndef Z_SOLO
# if defined(Z_HAVE_UNISTD_H) || defined(LARGEFILE64_SOURCE)
# ifdef Z_HAVE_UNISTD_H
# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */
# endif
# ifdef VMS
# include <unixio.h> /* for off_t */
# endif
# ifndef z_off_t
# define z_off_t off_t
# endif
# endif
#endif
#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0
# define Z_LFS64
#endif
#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64)
# define Z_LARGE64
#endif
#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64)
# define Z_WANT64
#endif
#if !defined(SEEK_SET) && !defined(Z_SOLO)
# define SEEK_SET 0 /* Seek from beginning of file. */
# define SEEK_CUR 1 /* Seek from current position. */
# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
#endif
#ifndef z_off_t
# define z_off_t long
#endif
#if !defined(_WIN32) && defined(Z_LARGE64)
# define z_off64_t off64_t
#else
# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO)
# define z_off64_t __int64
# else
# define z_off64_t z_off_t
# endif
#endif
/* MVS linker does not support external names larger than 8 bytes */
#if defined(__MVS__)
#pragma map(deflateInit_,"DEIN")
#pragma map(deflateInit2_,"DEIN2")
#pragma map(deflateEnd,"DEEND")
#pragma map(deflateBound,"DEBND")
#pragma map(inflateInit_,"ININ")
#pragma map(inflateInit2_,"ININ2")
#pragma map(inflateEnd,"INEND")
#pragma map(inflateSync,"INSY")
#pragma map(inflateSetDictionary,"INSEDI")
#pragma map(compressBound,"CMBND")
#pragma map(inflate_table,"INTABL")
#pragma map(inflate_fast,"INFA")
#pragma map(inflate_copyright,"INCOPY")
#endif
#endif /* ZCONF_H */

View File

@ -1,36 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}</ProjectGuid>
<RootNamespace>zlib</RootNamespace>
</PropertyGroup>
<!-- Aegisub project configuration -->
<PropertyGroup Label="AegisubConfiguration">
<AegisubProjectType>lib</AegisubProjectType>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
</ImportGroup>
<!-- Project specific configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ZlibSrcDir)\</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
</ItemDefinitionGroup>
<!-- Source files -->
<ItemGroup>
<InstallHeader Include="$(ZlibSrcDir)\zlib.h" />
<InstallHeader Include="$(MSBuildThisFileDirectory)\zconf.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(ZlibSrcDir)\*.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(ZlibSrcDir)\*.h" />
</ItemGroup>
</Project>

1537
aegisub/config.guess vendored

File diff suppressed because it is too large Load Diff

1786
aegisub/config.sub vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,601 +0,0 @@
AC_PREREQ(2.57)
###################
# Required packages
###################
m4_define([boost_required_version], [1.50.0])
m4_define([curl_required_version], [7.18.2])
m4_define([ffms2_required_version], [2.16])
m4_define([fftw3_required_version], [3.3])
m4_define([fontconfig_required_version], [2.4])
m4_define([freetype_required_version], [9.7.0])
m4_define([hunspell_required_version], [1.2.0])
m4_define([icu_required_version], [4.8.1.1])
m4_define([libass_required_version], [0.9.7])
m4_define([libpulse_required_version], [0.5])
m4_define([lua_auto4_required_version], [5.1])
m4_define([pkgconfig_required_version], [0.20])
m4_define([portaudio_required_version], [19])
m4_define([wx_required_version], [3.0.0])
#######
# Setup
#######
AC_INIT([Aegisub], [aegisub_version],, [aegisub])
: ${CFLAGS=""}
: ${CXXFLAGS=""}
AC_CONFIG_SRCDIR([src/main.cpp])
AC_CONFIG_HEADER([acconf.h])
AC_GNU_SOURCE
AC_CANONICAL_HOST
###########################
# Check host architecture
###########################
build_darwin="no"
build_linux="no"
build_bsd="no"
build_default="no"
AS_CASE([$host],
[*-*-darwin*], [build_darwin="yes"],
[*-*-linux*], [build_linux="yes"],
[*-*-*bsd*], [build_bsd="yes"],
[build_default="yes"])
# Used for universalchardet.
AC_AGI_MDCPUCFG($host)
AC_SUBST(build_bsd)
AC_SUBST(build_linux)
AC_SUBST(build_darwin)
AC_SUBST(build_default)
########################
# Configurable variables
########################
# Name of aegisub binary.
# On OS X everything goes in an app bundle so no point in versioning the executable
AS_IF([test x$build_darwin = xyes],
[AEGISUB_COMMAND="aegisub"],
[AEGISUB_COMMAND="aegisub-3.1"])
AC_SUBST(AEGISUB_COMMAND)
AC_DEFINE_UNQUOTED([AEGISUB_COMMAND], ["${AEGISUB_COMMAND}"], [Name of the Aegisub executable])
# Name of gettext catalog.
# On OS X everything goes in an app bundle so no point in versioning the executable
AS_IF([test x$build_darwin = xyes],
[AEGISUB_CATALOG="aegisub"],
[AEGISUB_CATALOG="aegisub-31"])
AC_SUBST(AEGISUB_CATALOG)
AC_DEFINE_UNQUOTED([AEGISUB_CATALOG], ["${AEGISUB_CATALOG}"], [Name of the Aegisub gettext catalog])
# Handle location of desktop files: http://freedesktop.org/wiki/Specifications/desktop-entry-spec
AC_ARG_WITH(desktop-dir,
AS_HELP_STRING([--with-desktop-dir=PATH],[desktop file locations [PREFIX/share/applications]]))
P_DESKTOP=${with_desktop_dir:-$datarootdir/applications}
AC_SUBST(P_DESKTOP)
# Handle location of icons: http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
AC_ARG_WITH(icon-dir,
AS_HELP_STRING([--with-icon-dir=PATH],[icon locations [PREFIX/share/icons]]))
P_ICON=${with_icon_dir:-$datarootdir/icons}
AC_SUBST(P_ICON)
# Install prefix
# If a user doesn't supply --prefix then it is set to NONE so we
# set it to $ac_default_prefix if it hasn't been supplied.
AS_CASE([x$prefix], [xNONE | x], [prefix="$ac_default_prefix"], [])
# Install prefix used by wxStandardPaths::SetInstallPrefix.
AC_DEFINE_UNQUOTED([INSTALL_PREFIX], ["$prefix"], [Default install prefix, or --prefix.])
# Build credit
AC_ARG_WITH(build-credit,
AS_HELP_STRING([--with-build-credit=NAME],[Build credit shown in the program title.]),
[use_build_credit="yes"])
AC_MSG_CHECKING([whether BUILD_CREDIT has been set])
AS_IF([test x$use_build_credit = xyes],
AS_IF([test x$with_build_credit = xyes || test -z "$with_build_credit"], [
AC_MSG_FAILURE([You must set a value eg --with-build-credit=<username>])
], [
AC_MSG_RESULT([yes ($with_build_credit)])
AC_DEFINE_UNQUOTED([BUILD_CREDIT], ["$with_build_credit"], [Build credit supplied in application title using --with-build-credit=])
]),
[AC_MSG_RESULT([no])])
####################
# Check for programs
####################
CHECK_GNU_MAKE
AC_PROG_CC
AC_PROG_CXX
AC_LANG(C++)
AM_PROG_CC_C_O
# This is reported to be required on Ubuntu, I haven't had time to check.
define([AC_LIBTOOL_LANG_F77_CONFIG], [:])
AC_PROG_INSTALL
AC_PROG_RANLIB
PKG_PROG_PKG_CONFIG([pkgconfig_required_version])
#################
# Developers only
#################
AC_MSG_CHECKING([for version])
. $srcdir/build/version.sh "$srcdir/.."
AC_MSG_RESULT([$BUILD_GIT_VERSION_STRING $VERSION_SOURCE])
AC_MSG_CHECKING([for build date])
BUILD_DATE=`date "+%Y-%m-%d %H:%M %Z"`
AC_MSG_RESULT($BUILD_DATE)
AC_SUBST([BUILD_GIT_VERSION_STRING])
AC_SUBST([BUILD_DATE])
###################################################
# Check for pthreads and setup variables / compiler
###################################################
ACX_PTHREAD([], [AC_MSG_FAILURE([You must have working pthreads.])])
CC="$PTHREAD_CC"
######################
# Check compiler flags
######################
AC_ARG_ENABLE(compiler-flags, AS_HELP_STRING([--disable-compiler-flags],[Disable *all* additional compiler flags. [no]]))
AS_IF([test x$enable_compiler_flags != xno], [
CFLAGS="$CFLAGS -Wall -Wextra -Wno-unused-parameter -std=gnu99 -pipe -g"
CXXFLAGS="$CXXFLAGS -Wall -Wextra -Wno-unused-parameter -Wno-long-long -fno-strict-aliasing -pipe -g"
AC_CXX_FLAG([-std=c++11])
AC_CXX_FLAG([-Wno-c++11-narrowing])
# -O* messes with debugging.
AS_IF([test x$enable_debug = xyes], [
CFLAGS="$CFLAGS -O0"
CXXFLAGS="$CXXFLAGS -O0"
], [
CFLAGS="$CFLAGS -O3"
CXXFLAGS="$CXXFLAGS -O3"
])
])
AC_ARG_WITH([libc++], AS_HELP_STRING([--with-libc++],[Use libc++ rather than libstdc++. [auto]]))
AS_IF([test x$with_libc__ != xno], [
AC_LANG_PUSH(C++)
ac_ld_flag_save="$LDFLAGS"
LDFLAGS="$LDFLAGS -stdlib=libc++"
AC_MSG_CHECKING([[whether $CXX supports -stdlib=libc++]])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]])], [
AC_MSG_RESULT([yes])
CXXFLAGS="$CXXFLAGS -stdlib=libc++"
], [
AS_IF([test x$with_libc__ = xyes], [
AC_MSG_FAILURE([no])
], [
LDFLAGS="$ac_ld_flag_save"
AC_MSG_RESULT([no])
])
])
AC_LANG_POP(C++)
])
######################################
# Check Headers / Features / Libraries
######################################
AC_CHECK_LIB([m], [main])
AC_CHECK_HEADERS([sys/time.h])
##############################
# Program Support and Features
##############################
#########################
### Required Dependencies
#########################
AC_PATH_XTRA
AS_IF([test x$no_x = xyes && test x$build_darwin != xyes],
[AC_MSG_FAILURE([You must have a working copy of X installed.])])
AX_CHECK_GL
AS_IF([test x$no_gl = xyes], [AC_MSG_FAILURE([Aegisub requires GL support.])])
AC_SUBST(GL_CFLAGS)
AC_SUBST(GL_LIBS)
PKG_CHECK_MODULES(FREETYPE, freetype2 >= freetype_required_version)
PKG_CHECK_MODULES(FONTCONFIG, fontconfig >= fontconfig_required_version)
PKG_CHECK_MODULES(LIBASS, libass >= libass_required_version)
AX_BOOST_BASE([boost_required_version])
AX_BOOST_ASIO
AX_BOOST_FILESYSTEM
AX_BOOST_LOCALE
AX_BOOST_REGEX
AX_BOOST_SYSTEM
AX_BOOST_THREAD
PKG_CHECK_MODULES(ICU_UC, icu-uc >= icu_required_version)
PKG_CHECK_MODULES(ICU_I18N, icu-i18n >= icu_required_version)
########
## iconv
########
AC_ARG_VAR([ICONV_CFLAGS], [CFLAGS to use for iconv []])
AC_ARG_VAR([ICONV_LIBS], [LIBS to use for iconv [-liconv]])
AS_IF([test -z "$ICONV_LIBS"], AC_SEARCH_LIBS([iconv_open], [iconv]))
AC_AGI_COMPILE([iconv], [iconv], [$ICONV_CFLAGS], [$ICONV_LIBS],[
#include <iconv.h>
int main(void) {
iconv_t ic;
ic = iconv_open ("UTF-8", "UTF-8");
if (!ic) return 1;
return 0;
} ])
AC_SUBST(ICONV_LIBS)
AC_SUBST(ICONV_CFLAGS)
AS_IF([test x$agi_cv_with_iconv = xno], [AC_MSG_FAILURE([Please install a working iconv library.])])
AC_AGI_COMPILE([iconv (const)], [iconv_const], [$ICONV_CFLAGS], [$ICONV_LIBS],[
#include <iconv.h>
int main(void) {
iconv_t cd = iconv_open("UTF-16", "UTF-8");
const char *in = "in";
char *out = new char();
size_t res, inbytesleft, outbytesleft;
res = iconv(cd, &in, &inbytesleft, &out, &outbytesleft);
return 0;
} ])
AS_IF([test x$agi_cv_with_iconv_const = xyes],
[AC_DEFINE(AGI_ICONV_CONST, 1, [Enable if iconv expects the in argument to be const])])
###############
# Audio Players
###############
#######
## ALSA
#######
AC_ARG_WITH(alsa,
AS_HELP_STRING([--without-alsa],
[build without ALSA audio player [auto]]))
AC_ARG_VAR([ALSA_CFLAGS], [CFLAGS to use for ALSA []])
AC_ARG_VAR([ALSA_LIBS], [LIBS to use for ALSA [-lasound -lrt]])
ALSA_LIBS=${ALSA_LIBS:--lasound -lrt}
AS_IF([test x$with_alsa = xno],
[alsa_disabled="(disabled)"],
[AC_CHECK_LIB([asound], [snd_pcm_open], [with_alsa="yes"], [with_alsa="no"], $ALSA_LIBS)])
AS_IF([test x$with_alsa = xyes], AC_DEFINE(WITH_ALSA, 1, [Enable ALSA Support]))
AC_SUBST(ALSA_CFLAGS)
AC_SUBST(ALSA_LIBS)
AC_SUBST(with_alsa)
#########
## OpenAL
#########
AC_ARG_WITH(openal,
AS_HELP_STRING([--without-openal],
[build without OpenAL audio player [auto]]))
AS_IF([test x$build_darwin = xyes], [
OPENAL_LIBS="-framework OpenAL"
OPENAL_CFLAGS=""
AC_SUBST(OPENAL_LIBS)
AC_SUBST(OPENAL_CFLAGS)
with_openal="yes"
],
[test x$with_openal = xno], [openal_disabled="(disabled)"],
[PKG_CHECK_MODULES(OPENAL, openal >= 0.0.8, [with_openal=yes], [with_openal=no])])
AS_IF([test x$with_openal != xno], [
AC_AGI_COMPILE([OpenAL], [openal], [$OPENAL_CFLAGS], [$OPENAL_LIBS],[
#if defined(__APPLE__)
#include <OpenAL/AL.h>
#include <OpenAL/ALC.h>
#else
#include <AL/al.h>
#include <AL/alc.h>
#endif
int main(void) {
ALCdevice *device = alcOpenDevice(0);
if (!device) return 1;
ALCcontext *context = alcCreateContext(device, 0);
if (!context) return 1;
return 0;
} ])
])
AS_IF([test x$agi_cv_with_openal = xno && test x$with_openal = xyes], [
AC_MSG_WARN([OpenAL detected, but it doesn''t work...])
with_openal="no"
])
AS_IF([test x$agi_cv_with_openal = xyes && test x$with_openal = xyes],
AC_DEFINE(WITH_OPENAL, 1, [Enable OpenAL support]))
AC_SUBST(with_openal)
######
## OSS
######
AC_ARG_VAR([OSS_CFLAGS], [CFLAGS to use for OSS [auto]])
AC_ARG_WITH(oss,
AS_HELP_STRING([--without-oss],
[build without OSS audio player [auto]]))
AS_IF([test x$with_oss = xno], [oss_disabled="(disabled)"], [
AS_IF([test -z "$OSS_CFLAGS" && test -f "/etc/oss.conf"], [
. /etc/oss.conf
OSS_CFLAGS="-I${OSSLIBDIR}/include/sys"
])
AC_CHECK_HEADERS([soundcard.h sys/soundcard.h], [with_oss="yes"], [with_oss="no"])
])
AS_IF([test x$with_oss = xyes], AC_DEFINE(WITH_OSS, 1, [Enable OSS support]))
AC_SUBST(with_oss)
###################
# Simple pkg-config stuff
###################
AGI_OPT_PKG(libpulse, [build without PulseAudio audio player [auto]], [Enable PulseAudio support])
AGI_OPT_PKG(portaudio-2.0, [build without PortAudio v19 audio player [auto]], [Enable PortAudio v19 support])
AGI_OPT_PKG(ffms2, [build without ffms2 A/V provider [auto]], [Enable FFMS2 support])
AGI_OPT_PKG(fftw3, [build without fftw support [auto]], [Enable fftw support])
AGI_OPT_PKG(hunspell, [build without hunspell spell-checking [auto]], [Enable Hunspell support])
############
# Automation
############
# First try pkg-config with several names
PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1 lua5.1 < 5.2, [], [
PKG_CHECK_MODULES(LUA, lua-5.1 >= 5.1 lua-5.1 < 5.2, [], [
PKG_CHECK_MODULES(LUA, lua >= 5.1 lua < 5.2, [], [
# Still not found so try to autodetect
AS_IF([test -z "$LUA_CFLAGS"],
[AGI_FIND_HEADER([LUA], [lua.hpp],
[/usr/include/lua5.1 /usr/include/lua51 /usr/local/include/lua51 /usr/local/include/lua5.1 /usr/include /usr/local/include])])
AS_IF([test -z "$LUA_LIBS"],
[AGI_FIND_LIB([LUA], [lua51 lua-5.1 lua5.1 lua], [])])
AC_AGI_COMPILE([Lua 5.1 (auto4)], [lua], [$LUA_CFLAGS], [$LUA_LIBS],[
#include <lua.hpp>
int main () {
lua_State *L = luaL_newstate();
lua_pushstring(L, "test");
int res = lua_objlen(L, -1) == 4;
lua_close(L);
return !res;
}])
AS_IF([test x$agi_cv_with_lua = xno],
[AC_MSG_FAILURE([Lua 5.1 could not be found. Try setting LUA_CLFAGS and LUA_LIBS manually])])
])])])
AC_SUBST(LUA_CFLAGS)
AC_SUBST(LUA_LIBS)
######################################################
# Debugging support
######################################################
AC_MSG_CHECKING([whether to turn on debugging])
AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug],[enable debugging [no]]))
AC_MSG_RESULT([${enable_debug:=no}])
AC_MSG_CHECKING([whether to use exception handling in debug mode])
AC_ARG_ENABLE(debug-exceptions, AS_HELP_STRING([--enable-debug-exceptions],[enable exception handling in debug mode [no]]))
AC_MSG_RESULT([${enabled_debug_exceptions:=no}])
AS_IF([test x$enable_debug_exceptions = xyes],
[AC_DEFINE(WITH_EXCEPTIONS, 1,
[Enable exception handling in debug mode. (--enable-debug) This is always enabled when debug mode is off.])])
################
# Widget support
################
WX_CONFIG_OPTIONS
WX_STANDARD_OPTIONS([debug])
WX_DEBUG=$DEBUG
WX_UNICODE=$UNICODE
WX_CONFIG_CHECK([wx_required_version],,,[std,gl,stc],[$WXCONFIG_FLAGS])
AC_SUBST(WX_CONFIG_PATH)
AS_IF([test x$WX_VERSION = x],
[AC_MSG_FAILURE([wxWidgets detection failed, please set --with-wx* or add the libraries to your LIBS, CXX/CFLAGS.])])
AC_ARG_ENABLE(slow-wx-checks,
AS_HELP_STRING([--disable-slow-wx-checks],[Disable slow-running checks for wx components.]))
AS_IF([test x$enable_slow_wx_checks != xno], [
AC_AGI_LINK([wxWidgets OpenGL support], [wxopengl], [wx/glcanvas.h], [$GL_CFLAGS $WX_CFLAGS], [$GL_LIBS $WX_LIBS],[
#include <wx/glcanvas.h>
int main(void) {
wxGLCanvas *canvas;
wxGLContext *context;
return 0;
} ])
AC_AGI_LINK([wxWidgets StyledTextCtrl support], [wxstc], [wx/stc/stc.h], [$WX_CFLAGS], [$WX_LIBS],[
#include <wx/stc/stc.h>
int main(void) {
wxStyledTextCtrl *canvas;
return 0;
} ])
])
AS_IF([test x$with_agi_cv_wxopengl = xno], AC_MSG_FAILURE([wxWidgets OpenGL support missing]))
AS_IF([test x$with_agi_cv_wxstc = xno], AC_MSG_FAILURE([wxWidgets StyledTextCtrl support missing]))
# This turns on some internal (to aegisub) debugging features.
# A debug version of wxWidgets is required.
AS_IF([test x$enable_debug = xyes],
[PACKAGE_DEBUG="-debug"
AS_IF([$WX_CONFIG_PATH --debug],[AC_CXX_FLAG([-D_DEBUG])])])
AC_SUBST(PACKAGE_DEBUG)
############################
# Precompiled Header Support
# Only works with gcc! (and clang)
############################
AC_MSG_CHECKING([whether to use precompiled headers])
AC_ARG_ENABLE(gcc-prec, AS_HELP_STRING([--disable-gcc-prec],[disable GCC precompiled headers]))
AC_MSG_RESULT([${enable_gcc_prec:=yes}])
AC_SUBST(enable_gcc_prec)
AC_PCH_FLAG([-Winvalid-pch])
AC_PCH_FLAG([-fpch-deps])
AC_PCH_FLAG([-fpch-preprocess])
##############################
# Internationalisation support
##############################
AM_GNU_GETTEXT([external])
################
# Update checker
################
AC_MSG_CHECKING([whether to enable the update checker])
AC_ARG_ENABLE(update-checker,
AS_HELP_STRING([--disable-update-checker], [disable the update checker [no]]))
AC_MSG_RESULT(${enable_update_checker:=yes})
AS_IF([test "x$enable_update_checker" != "xno"],
[AC_DEFINE([WITH_UPDATE_CHECKER], [],
[Whether to enable the update checker])])
AC_MSG_CHECKING([for update checker server])
AC_ARG_WITH(update-server,
AS_HELP_STRING([--with-update-server=HOSTNAME],
[Server to use for the update checker
[updates.aegisub.org]]))
AC_MSG_RESULT(${with_update_server:=updates.aegisub.org})
AC_DEFINE_UNQUOTED([UPDATE_CHECKER_SERVER], ["$with_update_server"],
[Server for the update checker])
AC_MSG_CHECKING([for update checker base URL])
AC_ARG_WITH(update-url,
AS_HELP_STRING([--with-update-url=HOSTNAME],
[Base path to use for the update checker [/trunk]]))
AC_MSG_RESULT(${with_update_url:=/trunk})
AC_DEFINE_UNQUOTED([UPDATE_CHECKER_BASE_URL], ["$with_update_url"],
[Base path for the update checker])
################
# Crash reporter
################
AC_MSG_CHECKING([whether to enable the crash reporter])
AC_ARG_ENABLE(crash-reporter,
AS_HELP_STRING([--enable-crash-reporter], [enable the crash reporter [no]]))
AC_MSG_RESULT(${enable_crash_reporter:=no})
AS_IF([test "x$enable_crash_reporter" = "xyes"],
[PKG_CHECK_MODULES(LIBCURL, libcurl >= curl_required_version,,
[AC_MSG_FAILURE([the crash repoter requires >= cURL curl_required_version])])])
ENABLE_REPORTER="$enable_crash_reporter"
AC_SUBST(ENABLE_REPORTER)
####################################################################
# Default settings for Providers/Players
# * This is done at the end to preserve sanity rather than littering
# it above.
####################################################################
AC_ARG_WITH(player-audio,
AS_HELP_STRING([--with-player-audio=(ALSA|OpenAL|PortAudio|PulseAudio|OSS)],
[Default Audio Player [Linux/ALSA, Darwin/OpenAL, 1:*/OSS, 2:*/PortAudio]]))
# Default audio player.
AS_IF([test -z "$with_player_audio"], [
AS_IF([test x$build_linux = xyes && test x$with_alsa = xyes], [DEFAULT_PLAYER_AUDIO="ALSA"],
[test x$build_darwin = xyes && test x$with_openal = xyes], [DEFAULT_PLAYER_AUDIO="OpenAL"],
[test x$with_portaudio = xyes], [DEFAULT_PLAYER_AUDIO="PortAudio"],
[test x$with_oss = xyes], [DEFAULT_PLAYER_AUDIO="OSS"],
[test x$with_alsa = xyes], [DEFAULT_PLAYER_AUDIO="ALSA"],
[test x$with_openal = xyes], [DEFAULT_PLAYER_AUDIO="OpenAL"],
[test x$with_libpulse = xyes], [DEFAULT_PLAYER_AUDIO="PulseAudio"])],
[DEFAULT_PLAYER_AUDIO="$with_player_audio"])
AC_SUBST(DEFAULT_PLAYER_AUDIO)
# Set some friendly strings if some of the above aren't detected.
DEFAULT_PLAYER_AUDIO=${DEFAULT_PLAYER_AUDIO:-NONE}
###############
# Misc settings
###############
# Files that need substitution.
AC_CONFIG_FILES([
desktop/aegisub.desktop
src/libresrc/default_config_platform.json
tools/osx-bundle.sed
Makefile.inc
])
AC_OUTPUT
AS_IF([test x"$DEFAULT_PLAYER_AUDIO" = xNONE], AC_MSG_NOTICE([
***********************************************************************
* No supported audio player interface was found on your system.
* If you want audio support in Aegisub you need to install one of
* these libraries:
* - PulseAudio
* * http://pulseaudio.org/
* - ALSA (Linux only)
* * http://www.alsa-project.org/
* - PortAudio (version 19 only)
* * http://www.portaudio.com/
***********************************************************************
]))
AS_IF([test x$with_ffms2 != xyes], [AC_MSG_NOTICE([
***********************************************************************
* No supported video/audio reader interface was found on your system.
* You will not be able to open any video or audio files in Aegisub
* unless you install a supported video/audio provider.
* You will however still be able to open "dummy" video, ie. a blank,
* virtual video clip with subtitles overlaid.
* Currently we only support one video/audio provider on non-Windows
* systems:
* - FFMS2
* * http://code.google.com/p/ffmpegsource/
***********************************************************************
])])
AC_MSG_RESULT([
Configure settings
Install prefix: $prefix
Revision: $BUILD_GIT_VERSION_STRING
Debug $enable_debug
CFLAGS $CFLAGS
CXXFLAGS $CXXFLAGS
CPPFLAGS $CPPFLAGS
LDFLAGS $LDFLAGS
LIBS $LIBS
Default Settings
Audio Player: $DEFAULT_PLAYER_AUDIO
Audio Players
ALSA: $with_alsa $alsa_disabled
OpenAL: $with_openal $openal_disabled
OSS: $with_oss $oss_disabled
PortAudio: $with_portaudio $portaudio_disabled
PulseAudio: $with_libpulse $libpulse_disabled
A/V Providers
FFMS2: $with_ffms2 $ffms2_disabled
Misc Packages
Hunspell: $with_hunspell $hunspell_disabled
FFTW3: $with_fftw3 $fftw3_disabled
])

View File

@ -1,51 +0,0 @@
include ../Makefile.inc
applicationsdir = $(DESKTOP_DATADIR)/applications
applications_DATA = aegisub.desktop
iconsscalabledir = $(DESKTOP_DATADIR)/icons/hicolor/scalable/apps
iconsscalable_DATA = scalable/aegisub.svg
all: ;
ICON_HICOLOR = \
16x16/apps/aegisub.png \
22x22/apps/aegisub.png \
24x24/apps/aegisub.png \
32x32/apps/aegisub.png \
48x48/apps/aegisub.png \
64x64/apps/aegisub.png
ICON_SCALABLE = \
scalable/apps/aegisub.svg
DESKTOP_FILE = \
aegisub.desktop
EXTRA_DIST = \
aegisub.desktop.in \
$(ICON_HICOLOR) \
$(ICON_SCALABLE)
install: install-desktop install-icons
install-desktop:
@$(BIN_MKDIR) -p $(DESTDIR)$(P_DESKTOP)
$(BIN_INSTALL) $(DESKTOP_FILE) $(DESTDIR)$(P_DESKTOP)/$(DESKTOP_FILE)
install-icons:
@$(BIN_MKDIR) -p $(addprefix $(DESTDIR)$(P_ICON)/hicolor/, $(dir $(ICON_HICOLOR)))
@for i in $(ICON_HICOLOR); do \
$(BIN_ECHO) "$(BIN_INSTALL) -m644 $$i $(DESTDIR)$(P_ICON)/hicolor/$$i"; \
$(BIN_INSTALL) -m644 $$i $(DESTDIR)$(P_ICON)/hicolor/$$i; \
done
$(BIN_TOUCH) $(DESTDIR)$(P_ICON)/hicolor
$(BIN_MKDIR) -p $(DESTDIR)$(P_ICON)/hicolor/scalable/apps
$(BIN_CP) $(ICON_SCALABLE) $(DESTDIR)$(P_ICON)/hicolor/$(ICON_SCALABLE)
DISTCLEANFILES = aegisub.desktop
include ../Makefile.target

View File

@ -1,184 +0,0 @@
<doxygenlayout version="1.0">
<!-- Navigation index tabs for HTML output -->
<navindex>
<tab type="mainpage" visible="yes" title=""/>
<tab type="pages" visible="yes" title=""/>
<tab type="modules" visible="no" title=""/>
<tab type="namespaces" visible="yes" title="">
<tab type="namespaces" visible="yes" title=""/>
<tab type="namespacemembers" visible="yes" title=""/>
</tab>
<tab type="classes" visible="yes" title="">
<tab type="classes" visible="yes" title=""/>
<tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="hierarchy" visible="yes" title=""/>
<tab type="classmembers" visible="yes" title=""/>
</tab>
<tab type="files" visible="yes" title="">
<tab type="files" visible="yes" title=""/>
<tab type="globals" visible="yes" title=""/>
</tab>
<tab type="dirs" visible="yes" title=""/>
<tab type="examples" visible="yes" title=""/>
</navindex>
<!-- Layout definition for a class page -->
<class>
<briefdescription visible="yes"/>
<includes visible="$SHOW_INCLUDE_FILES"/>
<inheritancegraph visible="$CLASS_GRAPH"/>
<collaborationgraph visible="$COLLABORATION_GRAPH"/>
<allmemberslink visible="yes"/>
<memberdecl>
<nestedclasses visible="yes" title=""/>
<publictypes title=""/>
<publicslots title=""/>
<signals title=""/>
<publicmethods title=""/>
<publicstaticmethods title=""/>
<publicattributes title=""/>
<publicstaticattributes title=""/>
<protectedtypes title=""/>
<protectedslots title=""/>
<protectedmethods title=""/>
<protectedstaticmethods title=""/>
<protectedattributes title=""/>
<protectedstaticattributes title=""/>
<packagetypes title=""/>
<packagemethods title=""/>
<packagestaticmethods title=""/>
<packageattributes title=""/>
<packagestaticattributes title=""/>
<properties title=""/>
<events title=""/>
<privatetypes title=""/>
<privateslots title=""/>
<privatemethods title=""/>
<privatestaticmethods title=""/>
<privateattributes title=""/>
<privatestaticattributes title=""/>
<friends title=""/>
<related title="" subtitle=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<typedefs title=""/>
<enums title=""/>
<constructors title=""/>
<functions title=""/>
<related title=""/>
<variables title=""/>
<properties title=""/>
<events title=""/>
</memberdef>
<usedfiles visible="$SHOW_USED_FILES"/>
<authorsection visible="yes"/>
</class>
<!-- Layout definition for a namespace page -->
<namespace>
<briefdescription visible="yes"/>
<memberdecl>
<nestednamespaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
</memberdef>
<authorsection visible="yes"/>
</namespace>
<!-- Layout definition for a file page -->
<file>
<briefdescription visible="yes"/>
<includes visible="$SHOW_INCLUDE_FILES"/>
<includegraph visible="$INCLUDE_GRAPH"/>
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
<sourcelink visible="yes"/>
<memberdecl>
<classes visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
</memberdef>
<authorsection/>
</file>
<!-- Layout definition for a group page -->
<group>
<briefdescription visible="yes"/>
<groupgraph visible="$GROUP_GRAPHS"/>
<memberdecl>
<classes visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<dirs visible="yes" title=""/>
<nestedgroups visible="yes" title=""/>
<files visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<pagedocs/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
</memberdef>
<authorsection visible="yes"/>
</group>
<!-- Layout definition for a directory page -->
<directory>
<briefdescription visible="yes"/>
<directorygraph visible="yes"/>
<memberdecl>
<dirs visible="yes"/>
<files visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
</directory>
</doxygenlayout>

View File

@ -1,21 +0,0 @@
/* $Id$ */
.note, .warning, .caution {
margin: 0.5em;
padding: 0.5em 0.5em;
word-wrap: break-word;
}
.note {
border: 1px solid #F9FD96;
background-color: #FDFEE7;
}
.caution {
border: 1px solid #FF4A66;
background-color: #FFF5F6;
}
.warning {
border: 1px solid #FF4A66;
}

View File

@ -1,30 +0,0 @@
@INCLUDE = doxyfile_base
PROJECT_NAME = Aegisub
INPUT = ../../src/ ./pages_aegisub
EXCLUDE_PATTERNS = */.svn* */.deps* */.libs* */boost/* */scripts/* */gl/* */msvc/* */libresrc/* \
*/libosxutil/bundledirs-test.c */avisynth.h */MatroskaParser.? */md5.?
PREDEFINED += \
WITH_PORTAUDIO \
WITH_ALSA \
WITH_AUTO4_LUA \
WITH_AUTOMATION \
WITH_AVISYNTH \
WITH_CSRI \
WITH_DIRECTSOUND \
WITH_FFMS2 \
WITH_FONTCONFIG \
WITH_FREETYPE2 \
WITH_HUNSPELL \
WITH_LIBASS \
WITH_OLD_HUNSPELL \
WITH_OPENAL \
WITH_PORTAUDIO \
WITH_PORTAUDIO2 \
WITH_LIBPULSE \
WITH_STARTUPLOG \
WITH_UNIVCHARDET

View File

@ -1,268 +0,0 @@
# Doxyfile 1.5.8
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
#PROJECT_NAME =
PROJECT_NUMBER = trunk
OUTPUT_DIRECTORY = $(OUTPUT_DIR)
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF =
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = YES
STRIP_FROM_PATH = $(SRC_TRIM)
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = NO
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = YES
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 4
ALIASES =
ALIASES += ticket{1}="<a href='http://devel.aegisub.org/ticket/\1' class='el'>#\1</a>"
ALIASES += revision{1}="<a href='http://devel.aegisub.org/changeset/\1' class='el'>r\1</a>"
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
EXTENSION_MAPPING =
BUILTIN_STL_SUPPORT = YES
CPP_CLI_SUPPORT = YES
SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = NO
SUBGROUPING = YES
TYPEDEF_HIDES_STRUCT = NO
SYMBOL_CACHE_SIZE = 0
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = YES
EXTRACT_ANON_NSPACES = NO
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_GROUP_NAMES = NO
SORT_BY_SCOPE_NAME = YES
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_DIRECTORIES = NO
SHOW_FILES = YES
SHOW_NAMESPACES = YES
#FILE_VERSION_FILTER = docs/versionfilter.sh
LAYOUT_FILE = Layout.xml
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE = doxygen.log
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
#INPUT =
INPUT_ENCODING = UTF-8
FILE_PATTERNS = *.h *.cpp *.c *.dox
RECURSIVE = YES
#EXCLUDE =
EXCLUDE =
EXCLUDE_SYMLINKS = NO
#EXCLUDE_PATTERNS =
EXCLUDE_SYMBOLS =
EXAMPLE_PATH = ../../
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = YES
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
# FIXME: set these two to NO?
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = NO
REFERENCES_LINK_SOURCE = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = ./
HTML_FILE_EXTENSION = .html
HTML_HEADER = html_header.html
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
HTML_DYNAMIC_SECTIONS = NO
GENERATE_DOCSET = NO
DOCSET_FEEDNAME = "Doxygen generated docs"
DOCSET_BUNDLE_ID = org.doxygen.Project
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
CHM_INDEX_ENCODING =
BINARY_TOC = NO
TOC_EXPAND = NO
GENERATE_QHP = NO
QCH_FILE =
QHP_NAMESPACE =
QHP_VIRTUAL_FOLDER = doc
QHP_CUST_FILTER_NAME =
QHP_CUST_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
QHG_LOCATION =
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NONE
TREEVIEW_WIDTH = 250
FORMULA_FONTSIZE = 10
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = YES
USE_PDFLATEX = YES
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = YES
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
#PREDEFINED =
PREDEFINED += WXUNUSED(x)=
PREDEFINED += "CMD_NAME(a)=const char* name() { return a; } ///< a"
PREDEFINED += "STR_MENU(a)=wxString StrMenu() const { return a; } ///< a"
PREDEFINED += "STR_DISP(a)=wxString StrDisplay() const { return a; } ///< a"
PREDEFINED += "STR_HELP(a)=wxString StrHelp() const { return a; } ///< a"
#EXPAND_AS_DEFINED = CMD_NAME STR_MENU STR_DISP STR_HELP
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
MSCGEN_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
DOT_FONTNAME = FreeSans
DOT_FONTSIZE = 10
DOT_FONTPATH =
CLASS_GRAPH = YES
COLLABORATION_GRAPH = NO
GROUP_GRAPHS = NO
UML_LOOK = NO
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = NO
INCLUDED_BY_GRAPH = NO
CALL_GRAPH = NO
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
DOT_PATH =
DOTFILE_DIRS =
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 0
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
#---------------------------------------------------------------------------
# Options related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO
SERVER_BASED_SEARCH = YES

View File

@ -1,12 +0,0 @@
@INCLUDE = doxyfile_base
PROJECT_NAME = "libaegisub"
INPUT = ../../libaegisub/ ./pages_libaegisub
EXCLUDE_PATTERNS = */.svn* */.deps* */.libs*
PREDEFINED += \
__WINDOWS__ \
__UNIX__ \
__OSX__

Some files were not shown because too many files have changed in this diff Show More