diff options
author | marino <marino@FreeBSD.org> | 2014-08-10 20:13:15 +0800 |
---|---|---|
committer | marino <marino@FreeBSD.org> | 2014-08-10 20:13:15 +0800 |
commit | 0998db966dfacc3a1960b67abea21eebf499b265 (patch) | |
tree | 8ba93977345bb343ebb0c9f8b2121e4484227bad /multimedia/aegisub | |
parent | f3ae5a2888735f75f0980f1ce37cec66950510aa (diff) | |
download | freebsd-ports-gnome-0998db966dfacc3a1960b67abea21eebf499b265.tar.gz freebsd-ports-gnome-0998db966dfacc3a1960b67abea21eebf499b265.tar.zst freebsd-ports-gnome-0998db966dfacc3a1960b67abea21eebf499b265.zip |
multimedia/aegisub: Upgrade version 3.1.3 => 3.2.0
PR: 192479
Submitted by: Ports Fury
Diffstat (limited to 'multimedia/aegisub')
36 files changed, 520 insertions, 419 deletions
diff --git a/multimedia/aegisub/Makefile b/multimedia/aegisub/Makefile index a7ecb0686d8d..40841a2c09c9 100644 --- a/multimedia/aegisub/Makefile +++ b/multimedia/aegisub/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= aegisub -PORTVERSION= 3.1.3 +PORTVERSION= 3.2.0 CATEGORIES= multimedia MASTER_SITES= http://ftp.aegisub.org/pub/archives/releases/source/:aegisub \ ftp://ftp.aegisub.org/pub/archives/releases/source/:aegisub \ @@ -17,8 +17,8 @@ LICENSE= BSD3CLAUSE LIB_DEPENDS= libboost_thread.so:${PORTSDIR}/devel/boost-libs \ libicui18n.so:${PORTSDIR}/devel/icu \ - libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig \ - libass.so:${PORTSDIR}/multimedia/libass + libass.so:${PORTSDIR}/multimedia/libass \ + libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig USE_GITHUB= yes GH_ACCOUNT= FFMS @@ -28,7 +28,7 @@ GH_COMMIT= 6b0e4a2 WRKSRC= ${WRKDIR}/${DISTNAME} -USES= compiler:c++11-lib desktop-file-utils gmake gettext iconv \ +USES= compiler:c++11-lib desktop-file-utils gettext gmake iconv \ pkgconfig tar:xz USE_GNOME= intltool USE_WX= 3.0 @@ -36,12 +36,14 @@ WX_UNICODE= yes WX_CONF_ARGS= absolute USE_GL= glu USE_CSTD= c99 -USE_LUA= 5.1+ GNU_CONFIGURE= yes +CONFIGURE_ENV= agi_cv_with_iconv=yes CONFIGURE_ARGS= --disable-compiler-flags \ + --disable-gcc-prec \ + --disable-sanity-checks \ --disable-update-checker \ --without-libc++ \ - --disable-gcc-prec + ${ICONV_CONFIGURE_ARG} INSTALLS_ICONS= yes PLIST_SUB= VERSION="${PORTVERSION:R}" @@ -49,8 +51,8 @@ PLIST_SUB= VERSION="${PORTVERSION:R}" CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib ${ICONV_LIB} -OPTIONS_DEFINE= ALSA DOCS FFMPEG FFTW HUNSPELL OPENAL \ - PORTAUDIO PULSEAUDIO +OPTIONS_DEFINE= ALSA DOCS FFMPEG FFTW HUNSPELL OPENAL PORTAUDIO \ + PULSEAUDIO OPTIONS_DEFAULT= FFMPEG FFTW HUNSPELL PULSEAUDIO ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib @@ -58,7 +60,7 @@ ALSA_CONFIGURE_OFF= --without-alsa FFMPEG_LIB_DEPENDS= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg FFMPEG_CONFIGURE_ENV= FFMS2_CFLAGS="${FFMS_CFLAGS}" \ FFMS2_LIBS="${FFMS_LIBS}" -FFMPEG_CONFIGURE_OFF= --without-ffms2 +FFMPEG_CONFIGURE_OFF= --without-ffms FFMPEG_CPPFLAGS= ${FFMS_CFLAGS} FFTW_LIB_DEPENDS= libfftw3.so:${PORTSDIR}/math/fftw3 FFTW_CONFIGURE_OFF= --without-fftw3 @@ -90,9 +92,21 @@ FFMS_LIBS= ${FFMS_WRKSRC}/src/core/.libs/libffms2.a \ .if ${COMPILER_TYPE} == "gcc" USE_CXXSTD= gnu++11 +.if empty(CFLAGS:M-march=*) +CFLAGS_i386= -march=pentium +.endif .else USE_CXXSTD= c++11 CXXFLAGS+= -Wno-c++11-narrowing +.if ${COMPILER_VERSION} < 34 +BUILD_DEPENDS+= ${LOCALBASE}/lib/c++/libstdc++.so:${PORTSDIR}/devel/libc++ \ + ${LOCALBASE}/bin/clang34:${PORTSDIR}/lang/clang34 +CPP= clang-cpp34 +CC= clang34 +CXX= clang++34 +CXXFLAGS+= -nostdinc++ -isystem ${LOCALBASE}/include/c++/v1 +LDFLAGS+= -L${LOCALBASE}lib/c++ +.endif .endif post-patch: @@ -101,8 +115,13 @@ post-patch: @${REINPLACE_CMD} -e \ 's|".*build/|"./build/|' ${WRKSRC}/build/version.sh @${REINPLACE_CMD} -e \ - '/iconv_t/s|^|//|' \ - ${WRKSRC}/libaegisub/include/libaegisub/charset_conv.h + 's|^CC=|CC?=| ; \ + /^CCOPT_/s|=.*|=| ; \ + /^CCDEBUG/s|=.*|=|' ${WRKSRC}/vendor/luajit/src/Makefile +.if ${COMPILER_TYPE} == "gcc" + @${FIND} ${WRKSRC} -name "*.h" | ${XARGS} ${REINPLACE_CMD} -e \ + '/virtual /s|= default;$$|{ }|' +.endif pre-configure: .if ${PORT_OPTIONS:MFFMPEG} diff --git a/multimedia/aegisub/distinfo b/multimedia/aegisub/distinfo index 4c192776d8d6..5d7b10b0a719 100644 --- a/multimedia/aegisub/distinfo +++ b/multimedia/aegisub/distinfo @@ -1,4 +1,4 @@ -SHA256 (aegisub-3.1.3.tar.xz) = efea5bc2bc5e0651ada4f65cfdd8af1b422a15f87933710d11287bf51e2b5e58 -SIZE (aegisub-3.1.3.tar.xz) = 4215196 +SHA256 (aegisub-3.2.0.tar.xz) = d9e5fd48b243e29832361a13f8be82b271ef0c606b13593ec72461156ee19159 +SIZE (aegisub-3.2.0.tar.xz) = 5181228 SHA256 (ffms2-2.19.1.tar.gz) = 8516af3f71531746e7e3e4b16eb30dade5df5edfc0782e7b69f965310ea66640 SIZE (ffms2-2.19.1.tar.gz) = 512444 diff --git a/multimedia/aegisub/files/patch-libaegisub__ass__uuencode.cpp b/multimedia/aegisub/files/patch-libaegisub__ass__uuencode.cpp deleted file mode 100644 index 553e661e49b9..000000000000 --- a/multimedia/aegisub/files/patch-libaegisub__ass__uuencode.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- libaegisub/ass/uuencode.cpp.orig -+++ libaegisub/ass/uuencode.cpp -@@ -16,6 +16,8 @@ - - #include "../config.h" - -+#include <cstring> -+ - #include "libaegisub/ass/uuencode.h" - - // Despite being called uuencoding by ass_specs.doc, the format is actually diff --git a/multimedia/aegisub/files/patch-libaegisub__cajun__reader.cpp b/multimedia/aegisub/files/patch-libaegisub__common__cajun__reader.cpp index fd987f17def5..b7737c776079 100644 --- a/multimedia/aegisub/files/patch-libaegisub__cajun__reader.cpp +++ b/multimedia/aegisub/files/patch-libaegisub__common__cajun__reader.cpp @@ -1,14 +1,15 @@ --- libaegisub/common/cajun/reader.cpp.orig +++ libaegisub/common/cajun/reader.cpp -@@ -9,6 +9,7 @@ - #include "libaegisub/cajun/reader.h" +@@ -10,6 +10,8 @@ + #include <boost/interprocess/streams/bufferstream.hpp> #include <cassert> +#include <cstdio> - #include <set> - #include <sstream> ++#include <set> -@@ -243,8 +244,16 @@ + /* + +@@ -231,8 +233,16 @@ } void Reader::MatchNumber(std::string& sNumber, InputStream& inputStream) { diff --git a/multimedia/aegisub/files/patch-libaegisub__common__calltip_provider.cpp b/multimedia/aegisub/files/patch-libaegisub__common__calltip_provider.cpp new file mode 100644 index 000000000000..41a74f61b396 --- /dev/null +++ b/multimedia/aegisub/files/patch-libaegisub__common__calltip_provider.cpp @@ -0,0 +1,10 @@ +--- libaegisub/common/calltip_provider.cpp.orig 2014-08-05 20:40:25.000000000 +0900 ++++ libaegisub/common/calltip_provider.cpp 2014-08-05 20:40:42.000000000 +0900 +@@ -19,6 +19,7 @@ + #include "libaegisub/ass/dialogue_parser.h" + + #include <algorithm> ++#include <cstring> + + namespace { + struct proto_lit { diff --git a/multimedia/aegisub/files/patch-libaegisub__common__character_count.cpp b/multimedia/aegisub/files/patch-libaegisub__common__character_count.cpp new file mode 100644 index 000000000000..3d037948949d --- /dev/null +++ b/multimedia/aegisub/files/patch-libaegisub__common__character_count.cpp @@ -0,0 +1,11 @@ +--- libaegisub/common/character_count.cpp.orig 2014-08-05 20:41:47.000000000 +0900 ++++ libaegisub/common/character_count.cpp 2014-08-05 20:43:19.000000000 +0900 +@@ -22,6 +22,8 @@ + #include <unicode/uchar.h> + #include <unicode/utf8.h> + ++#include <algorithm> ++#include <memory> + #include <mutex> + #include <unicode/brkiter.h> + diff --git a/multimedia/aegisub/files/patch-libaegisub__common__charset.cpp b/multimedia/aegisub/files/patch-libaegisub__common__charset.cpp new file mode 100644 index 000000000000..4b253f17a90e --- /dev/null +++ b/multimedia/aegisub/files/patch-libaegisub__common__charset.cpp @@ -0,0 +1,10 @@ +--- libaegisub/common/charset.cpp.orig 2014-08-05 20:44:44.000000000 +0900 ++++ libaegisub/common/charset.cpp 2014-08-05 20:44:59.000000000 +0900 +@@ -20,6 +20,7 @@ + + #include "libaegisub/file_mapping.h" + ++#include <algorithm> + #include <string> + + #ifndef _WIN32 diff --git a/multimedia/aegisub/files/patch-libaegisub__common__color.cpp b/multimedia/aegisub/files/patch-libaegisub__common__color.cpp new file mode 100644 index 000000000000..181e9b90cd84 --- /dev/null +++ b/multimedia/aegisub/files/patch-libaegisub__common__color.cpp @@ -0,0 +1,25 @@ +--- libaegisub/common/color.cpp.orig 2014-08-05 20:04:54.000000000 +0900 ++++ libaegisub/common/color.cpp 2014-08-05 20:06:27.000000000 +0900 +@@ -18,6 +18,13 @@ + + #include "libaegisub/format.h" + ++#ifdef _LIBCPP_VERSION ++#define TO_STRING(x) std::to_string(x) ++#else ++#include <boost/lexical_cast.hpp> ++#define TO_STRING(x) boost::lexical_cast<std::string>(x) ++#endif ++ + namespace agi { + + Color::Color(unsigned char r, unsigned char g, unsigned char b, unsigned char a) +@@ -37,7 +44,7 @@ + } + + std::string Color::GetSsaFormatted() const { +- return std::to_string((a << 24) + (b << 16) + (g << 8) + r); ++ return TO_STRING((a << 24) + (b << 16) + (g << 8) + r); + } + + std::string Color::GetHexFormatted(bool rgba) const { diff --git a/multimedia/aegisub/files/patch-libaegisub__include__libaegisub__audio__provider.h b/multimedia/aegisub/files/patch-libaegisub__include__libaegisub__audio__provider.h new file mode 100644 index 000000000000..3f7e004be16a --- /dev/null +++ b/multimedia/aegisub/files/patch-libaegisub__include__libaegisub__audio__provider.h @@ -0,0 +1,10 @@ +--- libaegisub/include/libaegisub/audio/provider.h.orig 2014-07-28 23:29:16.000000000 +0900 ++++ libaegisub/include/libaegisub/audio/provider.h 2014-08-05 19:40:17.000000000 +0900 +@@ -20,6 +20,7 @@ + #include <libaegisub/fs_fwd.h> + + #include <atomic> ++#include <memory> + #include <vector> + + namespace agi { diff --git a/multimedia/aegisub/files/patch-src__ass_file.cpp b/multimedia/aegisub/files/patch-src__ass_file.cpp index b3e028ca4181..d575cebd45e9 100644 --- a/multimedia/aegisub/files/patch-src__ass_file.cpp +++ b/multimedia/aegisub/files/patch-src__ass_file.cpp @@ -1,27 +1,27 @@ --- src/ass_file.cpp.orig +++ src/ass_file.cpp -@@ -49,6 +49,13 @@ - #include <boost/algorithm/string/case_conv.hpp> +@@ -29,6 +29,13 @@ #include <boost/filesystem/path.hpp> + #include <cassert> +#ifdef _LIBCPP_VERSION -+#define TO_STRING(x) std::to_string(x) ++#define TO_STRING(x) std::to_string(x) +#else +#include <boost/lexical_cast.hpp> +#define TO_STRING(x) boost::lexical_cast<std::string>(x) +#endif + - namespace std { - template<> - void swap(AssFile &lft, AssFile &rgt) { -@@ -71,8 +78,8 @@ - Line.push_back(*new AssInfo("WrapStyle", "0")); - Line.push_back(*new AssInfo("ScaledBorderAndShadow", "yes")); + AssFile::AssFile() { } + + AssFile::~AssFile() { +@@ -42,8 +49,8 @@ + Info.emplace_back("WrapStyle", "0"); + Info.emplace_back("ScaledBorderAndShadow", "yes"); if (!OPT_GET("Subtitle/Default Resolution/Auto")->GetBool()) { -- Line.push_back(*new AssInfo("PlayResX", std::to_string(OPT_GET("Subtitle/Default Resolution/Width")->GetInt()))); -- Line.push_back(*new AssInfo("PlayResY", std::to_string(OPT_GET("Subtitle/Default Resolution/Height")->GetInt()))); -+ Line.push_back(*new AssInfo("PlayResX", TO_STRING(OPT_GET("Subtitle/Default Resolution/Width")->GetInt()))); -+ Line.push_back(*new AssInfo("PlayResY", TO_STRING(OPT_GET("Subtitle/Default Resolution/Height")->GetInt()))); +- Info.emplace_back("PlayResX", std::to_string(OPT_GET("Subtitle/Default Resolution/Width")->GetInt())); +- Info.emplace_back("PlayResY", std::to_string(OPT_GET("Subtitle/Default Resolution/Height")->GetInt())); ++ Info.emplace_back("PlayResX", TO_STRING(OPT_GET("Subtitle/Default Resolution/Width")->GetInt())); ++ Info.emplace_back("PlayResY", TO_STRING(OPT_GET("Subtitle/Default Resolution/Height")->GetInt())); } - Line.push_back(*new AssInfo("YCbCr Matrix", "None")); + Info.emplace_back("YCbCr Matrix", "None"); diff --git a/multimedia/aegisub/files/patch-src__ass_override.cpp b/multimedia/aegisub/files/patch-src__ass_override.cpp index 5d9c372abfae..7c0669702558 100644 --- a/multimedia/aegisub/files/patch-src__ass_override.cpp +++ b/multimedia/aegisub/files/patch-src__ass_override.cpp @@ -1,6 +1,6 @@ --- src/ass_override.cpp.orig +++ src/ass_override.cpp -@@ -49,6 +49,13 @@ +@@ -44,6 +44,13 @@ #include <boost/range/adaptor/transformed.hpp> #include <functional> @@ -14,17 +14,12 @@ using namespace boost::adaptors; AssOverrideParameter::AssOverrideParameter(VariableDataType type, AssParameterClass classification) -@@ -129,11 +136,11 @@ +@@ -126,7 +133,7 @@ if (classification == AssParameterClass::ALPHA) - Set(str(boost::format("&H%02X&") % mid(0, new_value, 255))); + Set(agi::format("&H%02X&", mid(0, new_value, 255))); else - Set(std::to_string(new_value)); + Set(TO_STRING(new_value)); } template<> void AssOverrideParameter::Set<double>(double new_value) { -- Set(std::to_string(new_value)); -+ Set(TO_STRING(new_value)); - } - - template<> void AssOverrideParameter::Set<bool>(bool new_value) { diff --git a/multimedia/aegisub/files/patch-src__auto4_lua_dialog.cpp b/multimedia/aegisub/files/patch-src__auto4_lua_dialog.cpp index bd4772d66dd8..9e6950061016 100644 --- a/multimedia/aegisub/files/patch-src__auto4_lua_dialog.cpp +++ b/multimedia/aegisub/files/patch-src__auto4_lua_dialog.cpp @@ -1,8 +1,8 @@ --- src/auto4_lua_dialog.cpp.orig +++ src/auto4_lua_dialog.cpp -@@ -66,6 +66,13 @@ - #include <wx/valnum.h> - #include <wx/window.h> +@@ -60,6 +60,13 @@ + #include <wx/stattext.h> + #include <wx/valgen.h> +#ifdef _LIBCPP_VERSION +#define TO_STRING(x) std::to_string(x) @@ -11,10 +11,10 @@ +#define TO_STRING(x) boost::lexical_cast<std::string>(x) +#endif + + using namespace agi::lua; namespace { inline void get_if_right_type(lua_State *L, std::string &def) { - if (lua_isstring(L, -1)) -@@ -256,7 +263,7 @@ +@@ -249,7 +256,7 @@ } bool CanSerialiseValue() const override { return true; } @@ -23,7 +23,7 @@ void UnserialiseValue(const std::string &serialised) override { value = atoi(serialised.c_str()); } wxControl *Create(wxWindow *parent) override { -@@ -317,7 +324,7 @@ +@@ -287,7 +294,7 @@ } bool CanSerialiseValue() const override { return true; } diff --git a/multimedia/aegisub/files/patch-src__base_grid.cpp b/multimedia/aegisub/files/patch-src__base_grid.cpp deleted file mode 100644 index d5e8d4e2e201..000000000000 --- a/multimedia/aegisub/files/patch-src__base_grid.cpp +++ /dev/null @@ -1,83 +0,0 @@ ---- src/base_grid.cpp.orig -+++ src/base_grid.cpp -@@ -67,6 +67,15 @@ - #include <wx/scrolbar.h> - #include <wx/sizer.h> - -+#ifdef _LIBCPP_VERSION -+#define TO_STRING(x) std::to_string(x) -+#define TO_WSTRING(x) std::to_wstring(x) -+#else -+#include <boost/lexical_cast.hpp> -+#define TO_STRING(x) boost::lexical_cast<std::string>(x) -+#define TO_WSTRING(x) boost::lexical_cast<std::wstring>(x) -+#endif -+ - enum { - GRID_SCROLLBAR = 1730, - MENU_SHOW_COL = 1250 // Needs 15 IDs after this -@@ -194,8 +203,8 @@ - } - - void BaseGrid::OnSubtitlesSave() { -- context->ass->SaveUIState("Scroll Position", std::to_string(yPos)); -- context->ass->SaveUIState("Active Line", std::to_string(GetDialogueIndex(active_line))); -+ context->ass->SaveUIState("Scroll Position", TO_STRING(yPos)); -+ context->ass->SaveUIState("Active Line", TO_STRING(GetDialogueIndex(active_line))); - } - - void BaseGrid::OnShowColMenu(wxCommandEvent &event) { -@@ -557,11 +566,11 @@ - } - - void BaseGrid::GetRowStrings(int row, AssDialogue *line, bool *paint_columns, wxString *strings, bool replace, wxString const& rep_char) const { -- if (paint_columns[0]) strings[0] = std::to_wstring(row + 1); -- if (paint_columns[1]) strings[1] = std::to_wstring(line->Layer); -+ if (paint_columns[0]) strings[0] = TO_WSTRING(row + 1); -+ if (paint_columns[1]) strings[1] = TO_WSTRING(line->Layer); - if (byFrame) { -- if (paint_columns[2]) strings[2] = std::to_wstring(context->videoController->FrameAtTime(line->Start, agi::vfr::START)); -- if (paint_columns[3]) strings[3] = std::to_wstring(context->videoController->FrameAtTime(line->End, agi::vfr::END)); -+ if (paint_columns[2]) strings[2] = TO_WSTRING(context->videoController->FrameAtTime(line->Start, agi::vfr::START)); -+ if (paint_columns[3]) strings[3] = TO_WSTRING(context->videoController->FrameAtTime(line->End, agi::vfr::END)); - } - else { - if (paint_columns[2]) strings[2] = to_wx(line->Start.GetAssFormated()); -@@ -570,9 +579,9 @@ - if (paint_columns[4]) strings[4] = to_wx(line->Style); - if (paint_columns[5]) strings[5] = to_wx(line->Actor); - if (paint_columns[6]) strings[6] = to_wx(line->Effect); -- if (paint_columns[7]) strings[7] = line->Margin[0] ? wxString(std::to_wstring(line->Margin[0])) : wxString(); -- if (paint_columns[8]) strings[8] = line->Margin[1] ? wxString(std::to_wstring(line->Margin[1])) : wxString(); -- if (paint_columns[9]) strings[9] = line->Margin[2] ? wxString(std::to_wstring(line->Margin[2])) : wxString(); -+ if (paint_columns[7]) strings[7] = line->Margin[0] ? wxString(TO_WSTRING(line->Margin[0])) : wxString(); -+ if (paint_columns[8]) strings[8] = line->Margin[1] ? wxString(TO_WSTRING(line->Margin[1])) : wxString(); -+ if (paint_columns[9]) strings[9] = line->Margin[2] ? wxString(TO_WSTRING(line->Margin[2])) : wxString(); - - if (paint_columns[10]) { - strings[10].clear(); -@@ -799,7 +808,7 @@ - // O(1) widths - int marginLen = dc.GetTextExtent("0000").GetWidth(); - -- int labelLen = dc.GetTextExtent(std::to_wstring(GetRows())).GetWidth(); -+ int labelLen = dc.GetTextExtent(TO_WSTRING(GetRows())).GetWidth(); - int startLen = 0; - int endLen = 0; - if (!byFrame) -@@ -844,12 +853,12 @@ - } - - // Finish layer -- int layerLen = maxLayer ? dc.GetTextExtent(std::to_wstring(maxLayer)).GetWidth() : 0; -+ int layerLen = maxLayer ? dc.GetTextExtent(TO_WSTRING(maxLayer)).GetWidth() : 0; - - // Finish times - if (byFrame) { -- startLen = dc.GetTextExtent(std::to_wstring(maxStart)).GetWidth(); -- endLen = dc.GetTextExtent(std::to_wstring(maxEnd)).GetWidth(); -+ startLen = dc.GetTextExtent(TO_WSTRING(maxStart)).GetWidth(); -+ endLen = dc.GetTextExtent(TO_WSTRING(maxEnd)).GetWidth(); - } - - // Set column widths diff --git a/multimedia/aegisub/files/patch-src__command__command.h b/multimedia/aegisub/files/patch-src__command__command.h new file mode 100644 index 000000000000..a3489553be9c --- /dev/null +++ b/multimedia/aegisub/files/patch-src__command__command.h @@ -0,0 +1,10 @@ +--- src/command/command.h.orig 2014-08-05 20:09:07.000000000 +0900 ++++ src/command/command.h 2014-08-05 20:09:21.000000000 +0900 +@@ -17,6 +17,7 @@ + /// @ingroup command + + #include <map> ++#include <memory> + #include <string> + #include <vector> + diff --git a/multimedia/aegisub/files/patch-src__command__edit.cpp b/multimedia/aegisub/files/patch-src__command__edit.cpp index f58f4c867f2c..155d58dd8906 100644 --- a/multimedia/aegisub/files/patch-src__command__edit.cpp +++ b/multimedia/aegisub/files/patch-src__command__edit.cpp @@ -1,8 +1,8 @@ --- src/command/edit.cpp.orig +++ src/command/edit.cpp -@@ -68,6 +68,13 @@ - #include <wx/clipbrd.h> +@@ -69,6 +69,13 @@ #include <wx/fontdlg.h> + #include <wx/textentry.h> +#ifdef _LIBCPP_VERSION +#define TO_STRING(x) std::to_string(x) @@ -14,25 +14,25 @@ namespace { using namespace boost::adaptors; using cmd::Command; -@@ -450,13 +457,13 @@ - if (font.GetFaceName() != startfont.GetFaceName()) - set_tag(line, blocks, "\\fn", from_wx(font.GetFaceName()), sel_start, sel_end); - if (font.GetPointSize() != startfont.GetPointSize()) -- set_tag(line, blocks, "\\fs", std::to_string(font.GetPointSize()), sel_start, sel_end); -+ set_tag(line, blocks, "\\fs", TO_STRING(font.GetPointSize()), sel_start, sel_end); - if (font.GetWeight() != startfont.GetWeight()) -- set_tag(line, blocks, "\\b", std::to_string(font.GetWeight() == wxFONTWEIGHT_BOLD), sel_start, sel_end); -+ set_tag(line, blocks, "\\b", TO_STRING(font.GetWeight() == wxFONTWEIGHT_BOLD), sel_start, sel_end); - if (font.GetStyle() != startfont.GetStyle()) -- set_tag(line, blocks, "\\i", std::to_string(font.GetStyle() == wxFONTSTYLE_ITALIC), sel_start, sel_end); -+ set_tag(line, blocks, "\\i", TO_STRING(font.GetStyle() == wxFONTSTYLE_ITALIC), sel_start, sel_end); - if (font.GetUnderlined() != startfont.GetUnderlined()) -- set_tag(line, blocks, "\\i", std::to_string(font.GetUnderlined()), sel_start, sel_end); -+ set_tag(line, blocks, "\\i", TO_STRING(font.GetUnderlined()), sel_start, sel_end); +@@ -516,13 +523,13 @@ + if (font.GetFaceName() != startfont.GetFaceName()) + do_set_tag("\\fn", from_wx(font.GetFaceName())); + if (font.GetPointSize() != startfont.GetPointSize()) +- do_set_tag("\\fs", std::to_string(font.GetPointSize())); ++ do_set_tag("\\fs", TO_STRING(font.GetPointSize())); + if (font.GetWeight() != startfont.GetWeight()) +- do_set_tag("\\b", std::to_string(font.GetWeight() == wxFONTWEIGHT_BOLD)); ++ do_set_tag("\\b", TO_STRING(font.GetWeight() == wxFONTWEIGHT_BOLD)); + if (font.GetStyle() != startfont.GetStyle()) +- do_set_tag("\\i", std::to_string(font.GetStyle() == wxFONTSTYLE_ITALIC)); ++ do_set_tag("\\i", TO_STRING(font.GetStyle() == wxFONTSTYLE_ITALIC)); + if (font.GetUnderlined() != startfont.GetUnderlined()) +- do_set_tag("\\i", std::to_string(font.GetUnderlined())); ++ do_set_tag("\\i", TO_STRING(font.GetUnderlined())); - commit_text(c, _("set font"), sel_start, sel_end); - } -@@ -711,7 +718,7 @@ + return shift; + }); +@@ -761,7 +768,7 @@ } static void combine_karaoke(AssDialogue *first, AssDialogue *second) { diff --git a/multimedia/aegisub/files/patch-src__dialog_jumpto.cpp b/multimedia/aegisub/files/patch-src__dialog_jumpto.cpp index 8f397b3c3fa0..33749fa9797c 100644 --- a/multimedia/aegisub/files/patch-src__dialog_jumpto.cpp +++ b/multimedia/aegisub/files/patch-src__dialog_jumpto.cpp @@ -1,6 +1,6 @@ ---- src/dialog_jumpto.cpp.orig -+++ src/dialog_jumpto.cpp -@@ -48,6 +48,13 @@ +--- src/dialog_jumpto.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/dialog_jumpto.cpp 2014-08-05 21:03:34.000000000 +0900 +@@ -43,6 +43,13 @@ #include <wx/stattext.h> #include <wx/textctrl.h> @@ -11,15 +11,15 @@ +#define TO_STRING(x) boost::lexical_cast<std::string>(x) +#endif + - DialogJumpTo::DialogJumpTo(agi::Context *c) - : wxDialog(c->parent, -1, _("Jump to"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxWANTS_CHARS) - , c(c) -@@ -59,7 +66,7 @@ - auto LabelTime = new wxStaticText(this, -1, _("Time: ")); + namespace { + struct DialogJumpTo { + wxDialog d; +@@ -74,7 +81,7 @@ + auto LabelTime = new wxStaticText(&d, -1, _("Time: ")); - JumpFrame = new wxTextCtrl(this,-1,"",wxDefaultPosition,wxSize(-1,-1),wxTE_PROCESS_ENTER, IntValidator((int)jumpframe)); -- JumpFrame->SetMaxLength(std::to_string(c->videoController->GetLength() - 1).size()); -+ JumpFrame->SetMaxLength(TO_STRING(c->videoController->GetLength() - 1).size()); - JumpTime = new TimeEdit(this, -1, c, AssTime(c->videoController->TimeAtFrame(jumpframe)).GetAssFormated(), wxSize(-1,-1)); + JumpFrame = new wxTextCtrl(&d,-1,"",wxDefaultPosition,wxSize(-1,-1),wxTE_PROCESS_ENTER, IntValidator((int)jumpframe)); +- JumpFrame->SetMaxLength(std::to_string(c->project->VideoProvider()->GetFrameCount() - 1).size()); ++ JumpFrame->SetMaxLength(TO_STRING(c->project->VideoProvider()->GetFrameCount() - 1).size()); + JumpTime = new TimeEdit(&d, -1, c, agi::Time(c->videoController->TimeAtFrame(jumpframe)).GetAssFormatted(), wxSize(-1,-1)); auto TimesSizer = new wxGridSizer(2, 5, 5); diff --git a/multimedia/aegisub/files/patch-src__dialog_kara_timing_copy.cpp b/multimedia/aegisub/files/patch-src__dialog_kara_timing_copy.cpp index 27df8148c829..55e412dcfdf4 100644 --- a/multimedia/aegisub/files/patch-src__dialog_kara_timing_copy.cpp +++ b/multimedia/aegisub/files/patch-src__dialog_kara_timing_copy.cpp @@ -1,8 +1,8 @@ --- src/dialog_kara_timing_copy.cpp.orig +++ src/dialog_kara_timing_copy.cpp -@@ -69,6 +69,13 @@ - #define TEXT_LABEL_SOURCE _("Source: ") - #define TEXT_LABEL_DEST _("Dest: ") +@@ -53,6 +53,13 @@ + #include <wx/stattext.h> + #include <wx/string.h> +#ifdef _LIBCPP_VERSION +#define TO_STRING(x) std::to_string(x) @@ -11,10 +11,10 @@ +#define TO_STRING(x) boost::lexical_cast<std::string>(x) +#endif + - class KaraokeLineMatchDisplay : public wxControl { - typedef AssKaraoke::Syllable MatchSyllable; - -@@ -358,7 +365,7 @@ + namespace { + #define TEXT_LABEL_SOURCE _("Source: ") + #define TEXT_LABEL_DEST _("Dest: ") +@@ -343,7 +350,7 @@ int duration = 0; for (auto const& syl : match.src) duration += syl.duration; diff --git a/multimedia/aegisub/files/patch-src__dialog_properties.cpp b/multimedia/aegisub/files/patch-src__dialog_properties.cpp index 9ef5fee0afa1..7bc2d921e9a7 100644 --- a/multimedia/aegisub/files/patch-src__dialog_properties.cpp +++ b/multimedia/aegisub/files/patch-src__dialog_properties.cpp @@ -1,6 +1,6 @@ ---- src/dialog_properties.cpp.orig -+++ src/dialog_properties.cpp -@@ -54,6 +54,15 @@ +--- src/dialog_properties.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/dialog_properties.cpp 2014-08-05 20:27:38.000000000 +0900 +@@ -47,6 +47,15 @@ #include <wx/stattext.h> #include <wx/textctrl.h> @@ -13,24 +13,26 @@ +#define TO_WSTRING(x) boost::lexical_cast<std::wstring>(x) +#endif + - DialogProperties::DialogProperties(agi::Context *c) - : wxDialog(c->parent, -1, _("Script Properties")) - , c(c) -@@ -145,7 +154,7 @@ + namespace { + class DialogProperties { + wxDialog d; +@@ -186,7 +195,7 @@ count += SetInfoIfDifferent("PlayResX", from_wx(ResX->GetValue())); count += SetInfoIfDifferent("PlayResY", from_wx(ResY->GetValue())); - count += SetInfoIfDifferent("WrapStyle", std::to_string(WrapStyle->GetSelection())); + count += SetInfoIfDifferent("WrapStyle", TO_STRING(WrapStyle->GetSelection())); count += SetInfoIfDifferent("ScaledBorderAndShadow", ScaleBorder->GetValue() ? "yes" : "no"); + count += SetInfoIfDifferent("YCbCr Matrix", from_wx(YCbCrMatrix->GetValue())); - if (count) c->ass->Commit(_("property changes"), AssFile::COMMIT_SCRIPTINFO); -@@ -162,6 +171,6 @@ +@@ -204,8 +213,8 @@ } void DialogProperties::OnSetFromVideo(wxCommandEvent &) { -- ResX->SetValue(std::to_wstring(c->videoController->GetWidth())); -- ResY->SetValue(std::to_wstring(c->videoController->GetHeight())); -+ ResX->SetValue(TO_WSTRING(c->videoController->GetWidth())); -+ ResY->SetValue(TO_WSTRING(c->videoController->GetHeight())); +- ResX->SetValue(std::to_wstring(c->project->VideoProvider()->GetWidth())); +- ResY->SetValue(std::to_wstring(c->project->VideoProvider()->GetHeight())); ++ ResX->SetValue(TO_WSTRING(c->project->VideoProvider()->GetWidth())); ++ ResY->SetValue(TO_WSTRING(c->project->VideoProvider()->GetHeight())); } + } + diff --git a/multimedia/aegisub/files/patch-src__dialog_shift_times.cpp b/multimedia/aegisub/files/patch-src__dialog_shift_times.cpp index 7d8f76024966..4bf642bd24f9 100644 --- a/multimedia/aegisub/files/patch-src__dialog_shift_times.cpp +++ b/multimedia/aegisub/files/patch-src__dialog_shift_times.cpp @@ -1,6 +1,6 @@ ---- src/dialog_shift_times.cpp.orig -+++ src/dialog_shift_times.cpp -@@ -56,6 +56,13 @@ +--- src/dialog_shift_times.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/dialog_shift_times.cpp 2014-08-05 20:21:09.000000000 +0900 +@@ -48,6 +48,13 @@ #include <wx/sizer.h> #include <wx/textctrl.h> @@ -11,15 +11,15 @@ +#define TO_WSTRING(x) boost::lexical_cast<std::wstring>(x) +#endif + - static wxString get_history_string(json::Object &obj) { - wxString filename = to_wx(obj["filename"]); - if (filename.empty()) -@@ -87,7 +94,7 @@ - int beg = (int64_t)(*it)["start"]; - int end = (int64_t)(*it)["end"]; + namespace { + class DialogShiftTimes final : public wxDialog { + agi::Context *context; +@@ -118,7 +125,7 @@ + int beg = (int64_t)range["start"]; + int end = (int64_t)range["end"]; if (beg == end) - lines += std::to_wstring(beg); + lines += TO_WSTRING(beg); else - lines += wxString::Format("%d-%d", beg, end); + lines += fmt_wx("%d-%d", beg, end); if (it + 1 != sel.end()) diff --git a/multimedia/aegisub/files/patch-src__dialog_style_editor.cpp b/multimedia/aegisub/files/patch-src__dialog_style_editor.cpp index 3e0bfe0dcaf3..4aa7e4f7d846 100644 --- a/multimedia/aegisub/files/patch-src__dialog_style_editor.cpp +++ b/multimedia/aegisub/files/patch-src__dialog_style_editor.cpp @@ -1,7 +1,7 @@ ---- src/dialog_style_editor.cpp.orig -+++ src/dialog_style_editor.cpp -@@ -62,6 +62,13 @@ - #include <wx/sizer.h> +--- src/dialog_style_editor.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/dialog_style_editor.cpp 2014-08-05 20:30:35.000000000 +0900 +@@ -61,6 +61,13 @@ + #include <wx/spinctrl.h> #include <wx/stattext.h> +#ifdef _LIBCPP_VERSION @@ -14,8 +14,8 @@ /// Style rename helper that walks a file searching for a style and optionally /// updating references to it class StyleRenamer { -@@ -160,7 +167,7 @@ - SetIcon(GETICON(style_toolbutton_16)); +@@ -166,7 +173,7 @@ + }; // Prepare control values - wxString EncodingValue = std::to_wstring(style->encoding); @@ -23,3 +23,12 @@ wxString alignValues[9] = { "7", "8", "9", "4", "5", "6", "1", "2", "3" }; // Encoding options +@@ -197,7 +204,7 @@ + new ColourButton(this, wxSize(55, 16), true, style->shadow, ColorValidator(&work->shadow)) + }; + for (int i = 0; i < 3; i++) +- margin[i] = new wxSpinCtrl(this, -1, std::to_wstring(style->Margin[i]), ++ margin[i] = new wxSpinCtrl(this, -1, TO_WSTRING(style->Margin[i]), + wxDefaultPosition, wxSize(60, -1), + wxSP_ARROW_KEYS, 0, 9999, style->Margin[i]); + diff --git a/multimedia/aegisub/files/patch-src__dialog_video_properties.cpp b/multimedia/aegisub/files/patch-src__dialog_video_properties.cpp new file mode 100644 index 000000000000..7a228f9c9401 --- /dev/null +++ b/multimedia/aegisub/files/patch-src__dialog_video_properties.cpp @@ -0,0 +1,38 @@ +--- src/dialog_video_properties.cpp 2014-07-28 23:29:16.000000000 +0900 ++++ /home/jungle/dialog_video_properties.cpp 2014-08-05 20:35:18.000000000 +0900 +@@ -27,6 +27,13 @@ + #include <wx/sizer.h> + #include <wx/stattext.h> + ++#ifdef _LIBCPP_VERSION ++#define TO_STRING(x) std::to_string(x) ++#else ++#include <boost/lexical_cast.hpp> ++#define TO_STRING(x) boost::lexical_cast<std::string>(x) ++#endif ++ + namespace { + enum { + MISMATCH_IGNORE, +@@ -103,8 +110,8 @@ + // If the script resolution hasn't been set at all just force it to the + // video resolution + if (sx == 0 && sy == 0) { +- file->SetScriptInfo("PlayResX", std::to_string(vx)); +- file->SetScriptInfo("PlayResY", std::to_string(vy)); ++ file->SetScriptInfo("PlayResX", TO_STRING(vx)); ++ file->SetScriptInfo("PlayResY", TO_STRING(vy)); + return true; + } + +@@ -126,8 +133,8 @@ + return commit_subs; + + case MISMATCH_SET: +- file->SetScriptInfo("PlayResX", std::to_string(vx)); +- file->SetScriptInfo("PlayResY", std::to_string(vy)); ++ file->SetScriptInfo("PlayResX", TO_STRING(vx)); ++ file->SetScriptInfo("PlayResY", TO_STRING(vy)); + return true; + + case MISMATCH_RESAMPLE: diff --git a/multimedia/aegisub/files/patch-src__grid_column.cpp b/multimedia/aegisub/files/patch-src__grid_column.cpp new file mode 100644 index 000000000000..b113ad6c9fc6 --- /dev/null +++ b/multimedia/aegisub/files/patch-src__grid_column.cpp @@ -0,0 +1,103 @@ +--- src/grid_column.cpp.orig 2014-08-05 23:58:58.000000000 +0900 ++++ src/grid_column.cpp 2014-08-06 00:01:32.000000000 +0900 +@@ -27,6 +27,13 @@ + + #include <wx/dc.h> + ++#ifdef _LIBCPP_VERSION ++#define TO_WSTRING(x) std::to_wstring(x) ++#else ++#include <boost/lexical_cast.hpp> ++#define TO_WSTRING(x) boost::lexical_cast<std::wstring>(x) ++#endif ++ + int WidthHelper::operator()(boost::flyweight<std::string> const& str) { + if (str.get().empty()) return 0; + auto it = widths.find(str); +@@ -84,7 +91,7 @@ + bool Centered() const override { return true; } + + wxString Value(const AssDialogue *d, const agi::Context * = nullptr) const override { +- return std::to_wstring(d->Row + 1); ++ return TO_WSTRING(d->Row + 1); + } + + int Width(const agi::Context *c, WidthHelper &helper) const override { +@@ -108,12 +115,12 @@ + bool Centered() const override { return true; } + + wxString Value(const AssDialogue *d, const agi::Context *) const override { +- return d->Layer ? wxString(std::to_wstring(d->Layer)) : wxString(); ++ return d->Layer ? wxString(TO_WSTRING(d->Layer)) : wxString(); + } + + int Width(const agi::Context *c, WidthHelper &helper) const override { + int max_layer = max_value(&AssDialogue::Layer, c->ass->Events); +- return max_layer == 0 ? 0 : helper(std::to_wstring(max_layer)); ++ return max_layer == 0 ? 0 : helper(TO_WSTRING(max_layer)); + } + }; + +@@ -130,7 +137,7 @@ + + wxString Value(const AssDialogue *d, const agi::Context *c) const override { + if (by_frame) +- return std::to_wstring(c->videoController->FrameAtTime(d->Start, agi::vfr::START)); ++ return TO_WSTRING(c->videoController->FrameAtTime(d->Start, agi::vfr::START)); + return to_wx(d->Start.GetAssFormatted()); + } + +@@ -138,7 +145,7 @@ + if (!by_frame) + return helper(wxS("0:00:00.00")); + int frame = c->videoController->FrameAtTime(max_value(&AssDialogue::Start, c->ass->Events), agi::vfr::START); +- return helper(std::to_wstring(frame)); ++ return helper(TO_WSTRING(frame)); + } + }; + +@@ -148,7 +155,7 @@ + + wxString Value(const AssDialogue *d, const agi::Context *c) const override { + if (by_frame) +- return std::to_wstring(c->videoController->FrameAtTime(d->End, agi::vfr::END)); ++ return TO_WSTRING(c->videoController->FrameAtTime(d->End, agi::vfr::END)); + return to_wx(d->End.GetAssFormatted()); + } + +@@ -156,7 +163,7 @@ + if (!by_frame) + return helper(wxS("0:00:00.00")); + int frame = c->videoController->FrameAtTime(max_value(&AssDialogue::End, c->ass->Events), agi::vfr::END); +- return helper(std::to_wstring(frame)); ++ return helper(TO_WSTRING(frame)); + } + }; + +@@ -220,7 +227,7 @@ + bool Centered() const override { return true; } + + wxString Value(const AssDialogue *d, const agi::Context *) const override { +- return d->Margin[Index] ? wxString(std::to_wstring(d->Margin[Index])) : wxString(); ++ return d->Margin[Index] ? wxString(TO_WSTRING(d->Margin[Index])) : wxString(); + } + + int Width(const agi::Context *c, WidthHelper &helper) const override { +@@ -229,7 +236,7 @@ + if (line.Margin[Index] > max) + max = line.Margin[Index]; + } +- return max == 0 ? 0 : helper(std::to_wstring(max)); ++ return max == 0 ? 0 : helper(TO_WSTRING(max)); + } + }; + +@@ -296,7 +303,7 @@ + int cps = CPS(d); + if (cps < 0 || cps > 100) return; + +- wxString str = std::to_wstring(cps); ++ wxString str = TO_WSTRING(cps); + wxSize ext = dc.GetTextExtent(str); + auto tc = dc.GetTextForeground(); + diff --git a/multimedia/aegisub/files/patch-src__main.cpp b/multimedia/aegisub/files/patch-src__main.cpp deleted file mode 100644 index 0d9fe7930e32..000000000000 --- a/multimedia/aegisub/files/patch-src__main.cpp +++ /dev/null @@ -1,10 +0,0 @@ ---- src/main.cpp.orig -+++ src/main.cpp -@@ -69,6 +69,7 @@ - #include <boost/locale.hpp> - #include <sstream> - -+#include <wx/clipbrd.h> - #include <wx/config.h> - #include <wx/msgdlg.h> - #include <wx/stackwalk.h> diff --git a/multimedia/aegisub/files/patch-src__preferences.cpp b/multimedia/aegisub/files/patch-src__preferences.cpp new file mode 100644 index 000000000000..d9c19afc0635 --- /dev/null +++ b/multimedia/aegisub/files/patch-src__preferences.cpp @@ -0,0 +1,10 @@ +--- src/preferences.cpp.orig ++++ src/preferences.cpp +@@ -47,6 +47,7 @@ + + #include <wx/checkbox.h> + #include <wx/combobox.h> ++#include <wx/dc.h> + #include <wx/event.h> + #include <wx/listctrl.h> + #include <wx/msgdlg.h> diff --git a/multimedia/aegisub/files/patch-src__preferences_base.cpp b/multimedia/aegisub/files/patch-src__preferences_base.cpp index 8ee28c9ed4b2..eb94e131f2a1 100644 --- a/multimedia/aegisub/files/patch-src__preferences_base.cpp +++ b/multimedia/aegisub/files/patch-src__preferences_base.cpp @@ -1,8 +1,8 @@ ---- src/preferences_base.cpp.orig -+++ src/preferences_base.cpp -@@ -42,6 +42,13 @@ - #include <wx/stattext.h> - #include <wx/treebook.h> +--- src/preferences_base.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/preferences_base.cpp 2014-08-05 07:56:10.000000000 +0900 +@@ -40,6 +40,13 @@ + + #undef Bool +#ifdef _LIBCPP_VERSION +#define TO_WSTRING(x) std::to_wstring(x) @@ -14,21 +14,29 @@ #define OPTION_UPDATER(type, evttype, opt, body) \ class type { \ std::string name; \ -@@ -126,7 +133,7 @@ +@@ -124,14 +131,14 @@ } - case agi::OptionValue::Type_Int: { -- wxSpinCtrl *sc = new wxSpinCtrl(this, -1, std::to_wstring((int)opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetInt()); -+ wxSpinCtrl *sc = new wxSpinCtrl(this, -1, TO_WSTRING((int)opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetInt()); + case agi::OptionType::Int: { +- auto sc = new wxSpinCtrl(this, -1, std::to_wstring((int)opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetInt()); ++ auto sc = new wxSpinCtrl(this, -1, TO_WSTRING((int)opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetInt()); sc->Bind(wxEVT_SPINCTRL, IntUpdater(opt_name, parent)); Add(flex, name, sc); return sc; -@@ -240,7 +247,7 @@ + } + + case agi::OptionType::Double: { +- auto scd = new wxSpinCtrlDouble(this, -1, std::to_wstring(opt->GetDouble()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetDouble(), inc); ++ auto scd = new wxSpinCtrlDouble(this, -1, TO_WSTRING(opt->GetDouble()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, min, max, opt->GetDouble(), inc); + scd->Bind(wxEVT_SPINCTRL, DoubleUpdater(opt_name, parent)); + Add(flex, name, scd); + return scd; +@@ -238,7 +245,7 @@ font_name->SetMinSize(wxSize(160, -1)); font_name->Bind(wxEVT_TEXT, StringUpdater(face_opt->GetName().c_str(), parent)); -- wxSpinCtrl *font_size = new wxSpinCtrl(this, -1, std::to_wstring((int)size_opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 3, 42, size_opt->GetInt()); -+ wxSpinCtrl *font_size = new wxSpinCtrl(this, -1, TO_WSTRING((int)size_opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 3, 42, size_opt->GetInt()); +- auto font_size = new wxSpinCtrl(this, -1, std::to_wstring((int)size_opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 3, 42, size_opt->GetInt()); ++ auto font_size = new wxSpinCtrl(this, -1, TO_WSTRING((int)size_opt->GetInt()), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 3, 42, size_opt->GetInt()); font_size->Bind(wxEVT_SPINCTRL, IntUpdater(size_opt->GetName().c_str(), parent)); - wxButton *pick_btn = new wxButton(this, -1, _("Choose...")); + auto pick_btn = new wxButton(this, -1, _("Choose...")); diff --git a/multimedia/aegisub/files/patch-src__resolution_resampler.cpp b/multimedia/aegisub/files/patch-src__resolution_resampler.cpp index 4e9a2759094a..499239330fa0 100644 --- a/multimedia/aegisub/files/patch-src__resolution_resampler.cpp +++ b/multimedia/aegisub/files/patch-src__resolution_resampler.cpp @@ -1,11 +1,8 @@ ---- src/resolution_resampler.cpp.orig -+++ src/resolution_resampler.cpp -@@ -29,9 +29,15 @@ - - #include <algorithm> - #include <boost/algorithm/string/predicate.hpp> --#include <boost/lexical_cast.hpp> - #include <functional> +--- src/resolution_resampler.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/resolution_resampler.cpp 2014-08-05 07:58:45.000000000 +0900 +@@ -32,6 +32,13 @@ + #include <cmath> + #include <wx/intl.h> +#ifdef _LIBCPP_VERSION +#define TO_STRING(x) std::to_string(x) @@ -17,14 +14,14 @@ enum { LEFT = 0, RIGHT = 1, -@@ -175,8 +181,8 @@ - for (auto& line : ass->Line) +@@ -281,8 +288,8 @@ + for (auto& line : ass->Events) resample_line(&state, line); -- ass->SetScriptInfo("PlayResX", std::to_string(settings.script_x)); -- ass->SetScriptInfo("PlayResY", std::to_string(settings.script_y)); -+ ass->SetScriptInfo("PlayResX", TO_STRING(settings.script_x)); -+ ass->SetScriptInfo("PlayResY", TO_STRING(settings.script_y)); +- ass->SetScriptInfo("PlayResX", std::to_string(settings.dest_x)); +- ass->SetScriptInfo("PlayResY", std::to_string(settings.dest_y)); ++ ass->SetScriptInfo("PlayResX", TO_STRING(settings.dest_x)); ++ ass->SetScriptInfo("PlayResY", TO_STRING(settings.dest_y)); + ass->SetScriptInfo("YCbCr Matrix", MatrixToString(settings.dest_matrix)); ass->Commit(_("resolution resampling"), AssFile::COMMIT_SCRIPTINFO | AssFile::COMMIT_DIAG_FULL); - } diff --git a/multimedia/aegisub/files/patch-src__spline_curve.cpp b/multimedia/aegisub/files/patch-src__spline_curve.cpp new file mode 100644 index 000000000000..5575c8fdeff5 --- /dev/null +++ b/multimedia/aegisub/files/patch-src__spline_curve.cpp @@ -0,0 +1,10 @@ +--- src/spline_curve.cpp.orig 2014-08-06 00:07:08.000000000 +0900 ++++ src/spline_curve.cpp 2014-08-06 00:07:27.000000000 +0900 +@@ -35,6 +35,7 @@ + #include "spline_curve.h" + #include "utils.h" + ++#include <algorithm> + #include <limits> + + SplineCurve::SplineCurve(Vector2D p1) : p1(p1), type(POINT) { } diff --git a/multimedia/aegisub/files/patch-src__subs_edit_box.cpp b/multimedia/aegisub/files/patch-src__subs_edit_box.cpp index 54941fc51056..ea73015b65f0 100644 --- a/multimedia/aegisub/files/patch-src__subs_edit_box.cpp +++ b/multimedia/aegisub/files/patch-src__subs_edit_box.cpp @@ -1,6 +1,6 @@ ---- src/subs_edit_box.cpp.orig -+++ src/subs_edit_box.cpp -@@ -71,6 +71,13 @@ +--- src/subs_edit_box.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/subs_edit_box.cpp 2014-08-06 00:09:49.000000000 +0900 +@@ -69,6 +69,13 @@ #include <wx/sizer.h> #include <wx/spinctrl.h> @@ -11,10 +11,10 @@ +#define TO_WSTRING(x) boost::lexical_cast<std::wstring>(x) +#endif + - namespace { - - /// Work around wxGTK's fondness for generating events from ChangeValue -@@ -324,7 +331,7 @@ + namespace std { + template <typename T> + struct hash<boost::flyweight<T>> { +@@ -354,7 +361,7 @@ if (type & AssFile::COMMIT_DIAG_META) { layer->SetValue(line->Layer); for (size_t i = 0; i < margin.size(); ++i) @@ -22,4 +22,13 @@ + change_value(margin[i], TO_WSTRING(line->Margin[i])); comment_box->SetValue(line->Comment); style_box->Select(style_box->FindString(to_wx(line->Style))); - + active_style = line ? c->ass->GetStyle(line->Style) : nullptr; +@@ -623,7 +630,7 @@ + if (OPT_GET("Subtitle/Character Counter/Ignore Punctuation")->GetBool()) + ignore |= agi::IGNORE_PUNCTUATION; + size_t length = agi::MaxLineLength(text, ignore); +- char_count->SetValue(std::to_wstring(length)); ++ char_count->SetValue(TO_WSTRING(length)); + size_t limit = (size_t)OPT_GET("Subtitle/Character Limit")->GetInt(); + if (limit && length > limit) + char_count->SetBackgroundColour(to_wx(OPT_GET("Colour/Subtitle/Syntax/Background/Error")->GetColor())); diff --git a/multimedia/aegisub/files/patch-src__subtitle_format_ass.cpp b/multimedia/aegisub/files/patch-src__subtitle_format_ass.cpp new file mode 100644 index 000000000000..2f9e75e20596 --- /dev/null +++ b/multimedia/aegisub/files/patch-src__subtitle_format_ass.cpp @@ -0,0 +1,34 @@ +--- src/subtitle_format_ass.cpp.orig 2014-08-05 23:16:03.000000000 +0900 ++++ src/subtitle_format_ass.cpp 2014-08-05 23:18:02.000000000 +0900 +@@ -31,6 +31,13 @@ + #include <libaegisub/ass/uuencode.h> + #include <libaegisub/fs.h> + ++#ifdef _LIBCPP_VERSION ++#define TO_STRING(x) std::to_string(x) ++#else ++#include <boost/lexical_cast.hpp> ++#define TO_STRING(x) boost::lexical_cast<std::string>(x) ++#endif ++ + DEFINE_EXCEPTION(AssParseError, SubtitleFormatParseError); + + void AssSubtitleFormat::ReadFile(AssFile *target, agi::fs::path const& filename, agi::vfr::Framerate const& fps, std::string const& encoding) const { +@@ -119,7 +126,7 @@ + template<typename Number> + void WriteIfNotZero(const char *key, Number n) { + if (n != Number{}) +- file.WriteLineToFile(key + std::to_string(n)); ++ file.WriteLineToFile(key + TO_STRING(n)); + } + + void WriteExtradata(AegisubExtradataMap const& extradata) { +@@ -131,7 +138,7 @@ + file.WriteLineToFile("[Aegisub Extradata]"); + for (auto const& edi : extradata) { + std::string line = "Data: "; +- line += std::to_string(edi.first); ++ line += TO_STRING(edi.first); + line += ","; + line += inline_string_encode(edi.second.first); + line += ","; diff --git a/multimedia/aegisub/files/patch-src__subtitle_format_srt.cpp b/multimedia/aegisub/files/patch-src__subtitle_format_srt.cpp index 280d84cdc423..bf7a8dd1f9d1 100644 --- a/multimedia/aegisub/files/patch-src__subtitle_format_srt.cpp +++ b/multimedia/aegisub/files/patch-src__subtitle_format_srt.cpp @@ -1,8 +1,8 @@ ---- src/subtitle_format_srt.cpp.orig -+++ src/subtitle_format_srt.cpp -@@ -54,6 +54,13 @@ +--- src/subtitle_format_srt.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/subtitle_format_srt.cpp 2014-08-05 08:01:33.000000000 +0900 +@@ -50,6 +50,13 @@ + #include <boost/algorithm/string/trim.hpp> #include <boost/regex.hpp> - #include <map> +#ifdef _LIBCPP_VERSION +#define TO_STRING(x) std::to_string(x) @@ -11,15 +11,15 @@ +#define TO_STRING(x) boost::lexical_cast<std::string>(x) +#endif + - DEFINE_SIMPLE_EXCEPTION(SRTParseError, SubtitleFormatParseError, "subtitle_io/parse/srt") + DEFINE_EXCEPTION(SRTParseError, SubtitleFormatParseError); namespace { -@@ -481,7 +488,7 @@ +@@ -435,7 +442,7 @@ // Write lines int i=0; - for (auto current : copy.Line | agi::of_type<AssDialogue>()) { + for (auto const& current : copy.Events) { - file.WriteLineToFile(std::to_string(++i)); + file.WriteLineToFile(TO_STRING(++i)); - file.WriteLineToFile(WriteSRTTime(current->Start) + " --> " + WriteSRTTime(current->End)); - file.WriteLineToFile(ConvertTags(current)); + file.WriteLineToFile(WriteSRTTime(current.Start) + " --> " + WriteSRTTime(current.End)); + file.WriteLineToFile(ConvertTags(¤t)); file.WriteLineToFile(""); diff --git a/multimedia/aegisub/files/patch-src__timeedit_ctrl.cpp b/multimedia/aegisub/files/patch-src__timeedit_ctrl.cpp index 8857474d5beb..4cacb8140458 100644 --- a/multimedia/aegisub/files/patch-src__timeedit_ctrl.cpp +++ b/multimedia/aegisub/files/patch-src__timeedit_ctrl.cpp @@ -1,6 +1,6 @@ ---- src/timeedit_ctrl.cpp.orig -+++ src/timeedit_ctrl.cpp -@@ -52,6 +52,13 @@ +--- src/timeedit_ctrl.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/timeedit_ctrl.cpp 2014-08-05 08:03:02.000000000 +0900 +@@ -48,6 +48,13 @@ #define TimeEditWindowStyle @@ -14,12 +14,12 @@ enum { Time_Edit_Copy = 1320, Time_Edit_Paste -@@ -117,7 +124,7 @@ +@@ -113,7 +120,7 @@ void TimeEdit::UpdateText() { if (byFrame) -- ChangeValue(std::to_wstring(c->videoController->FrameAtTime(time, isEnd ? agi::vfr::END : agi::vfr::START))); -+ ChangeValue(TO_WSTRING(c->videoController->FrameAtTime(time, isEnd ? agi::vfr::END : agi::vfr::START))); +- ChangeValue(std::to_wstring(c->project->Timecodes().FrameAtTime(time, isEnd ? agi::vfr::END : agi::vfr::START))); ++ ChangeValue(TO_WSTRING(c->project->Timecodes().FrameAtTime(time, isEnd ? agi::vfr::END : agi::vfr::START))); else - ChangeValue(to_wx(time.GetAssFormated())); + ChangeValue(to_wx(time.GetAssFormatted())); } diff --git a/multimedia/aegisub/files/patch-src__validators.cpp b/multimedia/aegisub/files/patch-src__validators.cpp index 8af39f89c4ff..a01ed86a8619 100644 --- a/multimedia/aegisub/files/patch-src__validators.cpp +++ b/multimedia/aegisub/files/patch-src__validators.cpp @@ -1,7 +1,7 @@ ---- src/validators.cpp.orig -+++ src/validators.cpp -@@ -27,6 +27,13 @@ - #include <wx/combobox.h> +--- src/validators.cpp.orig 2014-07-28 23:29:16.000000000 +0900 ++++ src/validators.cpp 2014-08-06 00:12:26.000000000 +0900 +@@ -25,6 +25,13 @@ + #include <wx/spinctrl.h> #include <wx/textctrl.h> +#ifdef _LIBCPP_VERSION @@ -14,7 +14,7 @@ namespace { std::string new_value(wxTextCtrl *ctrl, int chr) { long from, to; -@@ -57,7 +64,7 @@ +@@ -55,7 +62,7 @@ } bool IntValidator::TransferToWindow() { @@ -23,3 +23,12 @@ return true; } +@@ -132,7 +139,7 @@ + } + + bool DoubleValidator::TransferToWindow() { +- auto str = std::to_wstring(*value); ++ auto str = TO_WSTRING(*value); + if (decimal_sep != '.') + std::replace(str.begin(), str.end(), L'.', decimal_sep); + if (str.find(decimal_sep) != str.npos) { diff --git a/multimedia/aegisub/files/patch-src__video_context.cpp b/multimedia/aegisub/files/patch-src__video_context.cpp deleted file mode 100644 index ed0d765546b9..000000000000 --- a/multimedia/aegisub/files/patch-src__video_context.cpp +++ /dev/null @@ -1,58 +0,0 @@ ---- src/video_context.cpp.orig -+++ src/video_context.cpp -@@ -58,6 +58,13 @@ - - #include <wx/msgdlg.h> - -+#ifdef _LIBCPP_VERSION -+#define TO_STRING(x) std::to_string(x) -+#else -+#include <boost/lexical_cast.hpp> -+#define TO_STRING(x) boost::lexical_cast<std::string>(x) -+#endif -+ - VideoContext::VideoContext() - : playback(this) - , playAudioOnStep(OPT_GET("Audio/Plays When Stepping Video")) -@@ -135,8 +142,8 @@ - // If the script resolution hasn't been set at all just force it to the - // video resolution - if (sx == 0 && sy == 0) { -- context->ass->SetScriptInfo("PlayResX", std::to_string(vx)); -- context->ass->SetScriptInfo("PlayResY", std::to_string(vy)); -+ context->ass->SetScriptInfo("PlayResX", TO_STRING(vx)); -+ context->ass->SetScriptInfo("PlayResY", TO_STRING(vy)); - commit_subs = true; - } - // If it has been set to something other than a multiple of the video -@@ -153,8 +160,8 @@ - break; - // Fallthrough to case 2 - case 2: // Always change script res -- context->ass->SetScriptInfo("PlayResX", std::to_string(vx)); -- context->ass->SetScriptInfo("PlayResY", std::to_string(vy)); -+ context->ass->SetScriptInfo("PlayResX", TO_STRING(vx)); -+ context->ass->SetScriptInfo("PlayResY", TO_STRING(vy)); - commit_subs = true; - break; - default: // Never change -@@ -248,16 +255,16 @@ - - std::string ar; - if (ar_type == AspectRatio::Custom) -- ar = "c" + std::to_string(ar_value); -+ ar = "c" + TO_STRING(ar_value); - else -- ar = std::to_string((int)ar_type); -+ ar = TO_STRING((int)ar_type); - - context->ass->SetScriptInfo("Video File", config::path->MakeRelative(video_filename, "?script").generic_string()); - auto matrix = video_provider->GetColorSpace(); - if (!matrix.empty()) - context->ass->SetScriptInfo("YCbCr Matrix", matrix); - context->ass->SaveUIState("Video Aspect Ratio", ar); -- context->ass->SaveUIState("Video Position", std::to_string(frame_n)); -+ context->ass->SaveUIState("Video Position", TO_STRING(frame_n)); - } - - void VideoContext::JumpToFrame(int n) { diff --git a/multimedia/aegisub/files/patch-src__video_display.cpp b/multimedia/aegisub/files/patch-src__video_display.cpp deleted file mode 100644 index 4a464def1020..000000000000 --- a/multimedia/aegisub/files/patch-src__video_display.cpp +++ /dev/null @@ -1,23 +0,0 @@ ---- src/video_display.cpp.orig -+++ src/video_display.cpp -@@ -69,6 +69,13 @@ - #include <GL/gl.h> - #endif - -+#ifdef _LIBCPP_VERSION -+#define TO_STRING(x) std::to_string(x) -+#else -+#include <boost/lexical_cast.hpp> -+#define TO_STRING(x) boost::lexical_cast<std::string>(x) -+#endif -+ - /// Attribute list for gl canvases; set the canvases to doublebuffered rgba with an 8 bit stencil buffer - int attribList[] = { WX_GL_RGBA , WX_GL_DOUBLEBUFFER, WX_GL_STENCIL_SIZE, 8, 0 }; - -@@ -439,5 +446,5 @@ - } - - void VideoDisplay::OnSubtitlesSave() { -- con->ass->SaveUIState("Video Zoom Percent", std::to_string(zoomValue)); -+ con->ass->SaveUIState("Video Zoom Percent", TO_STRING(zoomValue)); - } diff --git a/multimedia/aegisub/files/patch-src__video_provider_yuv4mpeg.cpp b/multimedia/aegisub/files/patch-src__video_provider_yuv4mpeg.cpp deleted file mode 100644 index 548a8833bde7..000000000000 --- a/multimedia/aegisub/files/patch-src__video_provider_yuv4mpeg.cpp +++ /dev/null @@ -1,34 +0,0 @@ ---- src/video_provider_yuv4mpeg.cpp.orig -+++ src/video_provider_yuv4mpeg.cpp -@@ -47,6 +47,13 @@ - #include <boost/algorithm/string/case_conv.hpp> - #include <boost/filesystem/path.hpp> - -+#ifdef _LIBCPP_VERSION -+#define TO_STRING(x) std::to_string(x) -+#else -+#include <boost/lexical_cast.hpp> -+#define TO_STRING(x) boost::lexical_cast<std::string>(x) -+#endif -+ - // All of this cstdio bogus is because of one reason and one reason only: - // MICROSOFT'S IMPLEMENTATION OF STD::FSTREAM DOES NOT SUPPORT FILES LARGER THAN 2 GB. - // (yes, really) -@@ -141,7 +148,7 @@ - int buf; - - if (fseeko(sf, startpos, SEEK_SET)) -- throw VideoOpenError("YUV4MPEG video provider: ReadHeader: failed seeking to position " + std::to_string(startpos)); -+ throw VideoOpenError("YUV4MPEG video provider: ReadHeader: failed seeking to position " + TO_STRING(startpos)); - - // read header until terminating newline (0x0A) is found - while ((buf = fgetc(sf)) != 0x0A) { -@@ -317,7 +324,7 @@ - seek_table.push_back(curpos); - // seek to next frame header start position - if (fseeko(sf, frame_sz, SEEK_CUR)) -- throw VideoOpenError("IndexFile: failed seeking to position " + std::to_string(curpos + frame_sz)); -+ throw VideoOpenError("IndexFile: failed seeking to position " + TO_STRING(curpos + frame_sz)); - } - else { - /// @todo implement rff flags etc diff --git a/multimedia/aegisub/pkg-plist b/multimedia/aegisub/pkg-plist index d52001deda65..58b148fcdc24 100644 --- a/multimedia/aegisub/pkg-plist +++ b/multimedia/aegisub/pkg-plist @@ -1,5 +1,4 @@ bin/aegisub-%%VERSION%% -%%DATADIR%%/automation/autoload/clean-info.lua %%DATADIR%%/automation/autoload/cleantags-autoload.lua %%DATADIR%%/automation/autoload/kara-templater.lua %%DATADIR%%/automation/autoload/karaoke-auto-leadin.lua @@ -9,6 +8,7 @@ bin/aegisub-%%VERSION%% %%DATADIR%%/automation/autoload/strip-tags.lua %%DATADIR%%/automation/demos/future-windy-blur.lua %%DATADIR%%/automation/demos/raytracer.lua +%%DATADIR%%/automation/demos/raytracer-test1.ass %%DATADIR%%/automation/include/aegisub/clipboard.lua %%DATADIR%%/automation/include/aegisub/re.moon %%DATADIR%%/automation/include/aegisub/unicode.moon @@ -38,34 +38,34 @@ share/icons/hicolor/32x32/apps/aegisub.png share/icons/hicolor/48x48/apps/aegisub.png share/icons/hicolor/64x64/apps/aegisub.png share/icons/hicolor/scalable/apps/aegisub.svg -share/locale/ar/LC_MESSAGES/aegisub-31.mo -share/locale/bg/LC_MESSAGES/aegisub-31.mo -share/locale/ca/LC_MESSAGES/aegisub-31.mo -share/locale/cs/LC_MESSAGES/aegisub-31.mo -share/locale/da/LC_MESSAGES/aegisub-31.mo -share/locale/de/LC_MESSAGES/aegisub-31.mo -share/locale/el/LC_MESSAGES/aegisub-31.mo -share/locale/es/LC_MESSAGES/aegisub-31.mo -share/locale/eu/LC_MESSAGES/aegisub-31.mo -share/locale/fa/LC_MESSAGES/aegisub-31.mo -share/locale/fi/LC_MESSAGES/aegisub-31.mo -share/locale/fr_FR/LC_MESSAGES/aegisub-31.mo -share/locale/gl/LC_MESSAGES/aegisub-31.mo -share/locale/hu/LC_MESSAGES/aegisub-31.mo -share/locale/id/LC_MESSAGES/aegisub-31.mo -share/locale/it/LC_MESSAGES/aegisub-31.mo -share/locale/ja/LC_MESSAGES/aegisub-31.mo -share/locale/ko/LC_MESSAGES/aegisub-31.mo -share/locale/nl/LC_MESSAGES/aegisub-31.mo -share/locale/pl/LC_MESSAGES/aegisub-31.mo -share/locale/pt_BR/LC_MESSAGES/aegisub-31.mo -share/locale/pt_PT/LC_MESSAGES/aegisub-31.mo -share/locale/ru/LC_MESSAGES/aegisub-31.mo -share/locale/sr_RS/LC_MESSAGES/aegisub-31.mo -share/locale/sr_RS@latin/LC_MESSAGES/aegisub-31.mo -share/locale/vi/LC_MESSAGES/aegisub-31.mo -share/locale/zh_CN/LC_MESSAGES/aegisub-31.mo -share/locale/zh_TW/LC_MESSAGES/aegisub-31.mo +share/locale/ar/LC_MESSAGES/aegisub-32.mo +share/locale/bg/LC_MESSAGES/aegisub-32.mo +share/locale/ca/LC_MESSAGES/aegisub-32.mo +share/locale/cs/LC_MESSAGES/aegisub-32.mo +share/locale/da/LC_MESSAGES/aegisub-32.mo +share/locale/de/LC_MESSAGES/aegisub-32.mo +share/locale/el/LC_MESSAGES/aegisub-32.mo +share/locale/es/LC_MESSAGES/aegisub-32.mo +share/locale/eu/LC_MESSAGES/aegisub-32.mo +share/locale/fa/LC_MESSAGES/aegisub-32.mo +share/locale/fi/LC_MESSAGES/aegisub-32.mo +share/locale/fr_FR/LC_MESSAGES/aegisub-32.mo +share/locale/gl/LC_MESSAGES/aegisub-32.mo +share/locale/hu/LC_MESSAGES/aegisub-32.mo +share/locale/id/LC_MESSAGES/aegisub-32.mo +share/locale/it/LC_MESSAGES/aegisub-32.mo +share/locale/ja/LC_MESSAGES/aegisub-32.mo +share/locale/ko/LC_MESSAGES/aegisub-32.mo +share/locale/nl/LC_MESSAGES/aegisub-32.mo +share/locale/pl/LC_MESSAGES/aegisub-32.mo +share/locale/pt_BR/LC_MESSAGES/aegisub-32.mo +share/locale/pt_PT/LC_MESSAGES/aegisub-32.mo +share/locale/ru/LC_MESSAGES/aegisub-32.mo +share/locale/sr_RS/LC_MESSAGES/aegisub-32.mo +share/locale/sr_RS@latin/LC_MESSAGES/aegisub-32.mo +share/locale/vi/LC_MESSAGES/aegisub-32.mo +share/locale/zh_CN/LC_MESSAGES/aegisub-32.mo +share/locale/zh_TW/LC_MESSAGES/aegisub-32.mo @dirrmtry share/locale/sr_RS@latin/LC_MESSAGES @dirrmtry share/locale/sr_RS@latin @dirrmtry share/locale/sr_RS/LC_MESSAGES |