Merge branch 'workarounds' into feature

This commit is contained in:
arch1t3cht 2024-05-30 23:17:12 +02:00
commit eff71c27a4
12 changed files with 75 additions and 92 deletions

View File

@ -19,21 +19,15 @@
#include "libaegisub/color.h"
#include "libaegisub/ass/dialogue_parser.h"
#include <boost/phoenix/core.hpp>
#include <boost/phoenix/operator.hpp>
#include <boost/phoenix/fusion.hpp>
#include <boost/phoenix/statement.hpp>
#include <boost/spirit/include/qi.hpp>
#include <boost/spirit/include/phoenix_core.hpp>
#include <boost/spirit/include/phoenix_operator.hpp>
#include <boost/spirit/include/phoenix_fusion.hpp>
#include <boost/fusion/include/adapt_struct.hpp>
#include <boost/spirit/include/lex_lexertl.hpp>
// We have to use the copy of pheonix within spirit if it exists, as the
// standalone copy has different header guards
#ifdef HAVE_BOOST_SPIRIT_HOME_PHOENIX_VERSION_HPP
#include <boost/spirit/home/phoenix/statement.hpp>
#else
#include <boost/phoenix/statement.hpp>
#endif
BOOST_FUSION_ADAPT_STRUCT(
agi::Color,
(unsigned char, r)

View File

@ -103,7 +103,7 @@ deps += dependency('libass', version: '>=0.9.7',
boost_modules = ['chrono', 'filesystem', 'thread', 'locale', 'regex']
if not get_option('local_boost')
boost_dep = dependency('boost', version: '>=1.60.0',
boost_dep = dependency('boost', version: '>=1.70.0',
modules: boost_modules + ['system'],
required: false,
static: get_option('default_library') == 'static')

View File

@ -18,11 +18,7 @@
#include "dialogs.h"
#if BOOST_VERSION >= 106900
#include <boost/gil.hpp>
#else
#include <boost/gil/gil_all.hpp>
#endif
AGI_DEFINE_EVENT(EVT_COLOR, agi::Color);

View File

@ -389,11 +389,11 @@ void SubsController::Redo() {
}
wxString SubsController::GetUndoDescription() const {
return IsUndoStackEmpty() ? "" : undo_stack.back().undo_description;
return IsUndoStackEmpty() ? wxString() : undo_stack.back().undo_description;
}
wxString SubsController::GetRedoDescription() const {
return IsRedoStackEmpty() ? "" : redo_stack.back().undo_description;
return IsRedoStackEmpty() ? wxString() : redo_stack.back().undo_description;
}
agi::fs::path SubsController::Filename() const {

View File

@ -46,11 +46,7 @@
#include <libaegisub/util.h>
#include <atomic>
#if BOOST_VERSION >= 106900
#include <boost/gil.hpp>
#else
#include <boost/gil/gil_all.hpp>
#endif
#include <memory>
#include <mutex>

View File

@ -16,11 +16,7 @@
#include "video_frame.h"
#if BOOST_VERSION >= 106900
#include <boost/gil.hpp>
#else
#include <boost/gil/gil_all.hpp>
#endif
#include <wx/image.h>
namespace {

View File

@ -46,11 +46,7 @@
#include <boost/algorithm/string/predicate.hpp>
#include <boost/filesystem/path.hpp>
#include <libaegisub/format.h>
#if BOOST_VERSION >= 106900
#include <boost/gil.hpp>
#else
#include <boost/gil/gil_all.hpp>
#endif
DummyVideoProvider::DummyVideoProvider(agi::vfr::Framerate fps, int frames, int width, int height, agi::Color colour, bool pattern)
: framecount(frames)

View File

@ -1,6 +1,6 @@
[wrap-file]
directory = boost_1_74_0
source_url = https://boostorg.jfrog.io/artifactory/main/release/1.74.0/source/boost_1_74_0.tar.gz
source_filename = boost_1_74_0.tar.gz
source_hash = afff36d392885120bcac079148c177d1f6f7730ec3d47233aa51b0afa4db94a5
directory = boost_1_83_0
source_url = https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.gz
source_filename = boost_1_83_0.tar.gz
source_hash = c0685b68dd44cc46574cce86c4e17c0f611b15e195be9848dfd0769a0a207628
patch_directory = boost

View File

@ -8,14 +8,19 @@ filesystem_sources = files([
'src/portability.cpp',
'src/unique_path.cpp',
'src/utf8_codecvt_facet.cpp',
'src/windows_file_codecvt.cpp',
])
filesystem_args = ['-DBOOST_FILESYSTEM_SOURCE',
# normally involves a check for std::atomic_ref
'-DBOOST_FILESYSTEM_NO_CXX20_ATOMIC_REF=1',
is_static ? '-DBOOST_FILESYSTEM_STATIC_LINK=1' : '-DBOOST_FILESYSTEM_DYN_LINK=1']
filesystem_deps = []
if host_machine.system() == 'windows'
filesystem_sources += ['src/windows_file_codecvt.cpp']
filesystem_args += ['-DBOOST_USE_WINDOWS_H', '-DWIN32_LEAN_AND_MEAN', '-DNOMINMAX']
filesystem_args += ['-D_SCL_SECURE_NO_WARNINGS', '-D_SCL_SECURE_NO_DEPRECATE', '-D_CRT_SECURE_NO_WARNINGS', '-D_CRT_SECURE_NO_DEPRECATE']
bcrypt_dep = dependency('bcrypt', required: false)
if bcrypt_dep.found()
filesystem_deps += bcrypt_dep

View File

@ -1,39 +1,46 @@
locale_sources = files([
'src/encoding/codepage.cpp',
'src/shared/date_time.cpp',
'src/shared/format.cpp',
'src/shared/formatting.cpp',
'src/shared/generator.cpp',
'src/shared/ids.cpp',
'src/shared/localization_backend.cpp',
'src/shared/message.cpp',
'src/shared/mo_lambda.cpp',
'src/util/codecvt_converter.cpp',
'src/util/default_locale.cpp',
'src/util/info.cpp',
'src/util/locale_data.cpp',
'src/boost/locale/encoding/codepage.cpp',
'src/boost/locale/shared/date_time.cpp',
'src/boost/locale/shared/format.cpp',
'src/boost/locale/shared/formatting.cpp',
'src/boost/locale/shared/generator.cpp',
'src/boost/locale/shared/iconv_codecvt.cpp',
'src/boost/locale/shared/ids.cpp',
'src/boost/locale/shared/localization_backend.cpp',
'src/boost/locale/shared/message.cpp',
'src/boost/locale/shared/mo_lambda.cpp',
'src/boost/locale/util/codecvt_converter.cpp',
'src/boost/locale/util/default_locale.cpp',
'src/boost/locale/util/encoding.cpp',
'src/boost/locale/util/info.cpp',
'src/boost/locale/util/locale_data.cpp',
# icu
'src/icu/boundary.cpp',
'src/icu/codecvt.cpp',
'src/icu/collator.cpp',
'src/icu/conversion.cpp',
'src/icu/date_time.cpp',
'src/icu/formatter.cpp',
'src/icu/icu_backend.cpp',
'src/icu/numeric.cpp',
'src/icu/time_zone.cpp',
# std - docs say disabled by default on windows and solaris,
# but jamfile seemingly only disables on solaris
'src/std/codecvt.cpp',
'src/std/collate.cpp',
'src/std/converter.cpp',
'src/std/numeric.cpp',
'src/std/std_backend.cpp',
'src/boost/locale/icu/boundary.cpp',
'src/boost/locale/icu/codecvt.cpp',
'src/boost/locale/icu/collator.cpp',
'src/boost/locale/icu/conversion.cpp',
'src/boost/locale/icu/date_time.cpp',
'src/boost/locale/icu/formatter.cpp',
'src/boost/locale/icu/formatters_cache.cpp',
'src/boost/locale/icu/icu_backend.cpp',
'src/boost/locale/icu/numeric.cpp',
'src/boost/locale/icu/time_zone.cpp',
# std
'src/boost/locale/std/codecvt.cpp',
'src/boost/locale/std/collate.cpp',
'src/boost/locale/std/converter.cpp',
'src/boost/locale/std/numeric.cpp',
'src/boost/locale/std/std_backend.cpp',
# included if using posix, win32 or std backend (ie always)
'src/util/gregorian.cpp',
'src/boost/locale/util/gregorian.cpp',
])
locale_args = ['-DBOOST_THREAD_NO_LIB=1']
locale_args = [
'-DBOOST_THREAD_NO_LIB=1',
'-DBOOST_LOCALE_SOURCE',
'-D_CRT_SECURE_NO_WARNINGS',
'-D_SCL_SECURE_NO_WARNINGS',
]
locale_deps = []
if not is_static
@ -42,21 +49,21 @@ endif
if host_machine.system() == 'windows'
locale_sources += files([
'src/win32/collate.cpp',
'src/win32/converter.cpp',
'src/win32/numeric.cpp',
'src/win32/win_backend.cpp',
'src/boost/locale/win32/collate.cpp',
'src/boost/locale/win32/converter.cpp',
'src/boost/locale/win32/numeric.cpp',
'src/boost/locale/win32/win_backend.cpp',
# included on windows/cygwin if std *or* win32 included
'src/win32/lcid.cpp',
'src/boost/locale/win32/lcid.cpp',
])
locale_args += '-DBOOST_LOCALE_NO_POSIX_BACKEND=1'
else
locale_sources += files([
'src/posix/collate.cpp',
'src/posix/converter.cpp',
'src/posix/numeric.cpp',
'src/posix/codecvt.cpp',
'src/posix/posix_backend.cpp',
'src/boost/locale/posix/collate.cpp',
'src/boost/locale/posix/converter.cpp',
'src/boost/locale/posix/numeric.cpp',
'src/boost/locale/posix/codecvt.cpp',
'src/boost/locale/posix/posix_backend.cpp',
])
locale_args += '-DBOOST_LOCALE_NO_WINAPI_BACKEND=1'
endif
@ -73,9 +80,9 @@ locale_deps += icu_deps
locale_args += '-DBOOST_LOCALE_WITH_ICU=1'
boost_locale = library('boost_locale', locale_sources,
include_directories: inc,
include_directories: [inc, 'src'],
cpp_args: locale_args,
dependencies: [thread_dep, locale_deps, boost_thread_dep])
boost_locale_dep = declare_dependency(link_with: boost_locale, include_directories: inc,
boost_locale_dep = declare_dependency(link_with: boost_locale, include_directories: [inc, 'src'],
compile_args: '-DBOOST_ALL_NO_LIB=1')

View File

@ -1,25 +1,18 @@
regex_sources = files([
'src/c_regex_traits.cpp',
'src/cpp_regex_traits.cpp',
'src/cregex.cpp',
'src/fileiter.cpp',
'src/icu.cpp',
'src/instances.cpp',
'src/posix_api.cpp',
'src/regex.cpp',
'src/regex_debug.cpp',
'src/regex_raw_buffer.cpp',
'src/regex_traits_defaults.cpp',
'src/static_mutex.cpp',
'src/w32_regex_traits.cpp',
'src/wc_regex_traits.cpp',
'src/wide_posix_api.cpp',
'src/winstances.cpp',
'src/usinstances.cpp',
])
regex_args = ['-DBOOST_HAS_ICU=1']
regex_deps = []
if host_machine.system() == 'windows'
regex_deps += cpp.find_library('advapi32')
endif
if not is_static
regex_args += '-DBOOST_REGEX_DYN_LINK=1'
endif
@ -27,7 +20,7 @@ endif
boost_regex = library('boost_regex', regex_sources,
include_directories: inc,
cpp_args: regex_args,
dependencies: [thread_dep, icu_deps])
dependencies: [thread_dep, icu_deps, regex_deps])
boost_regex_dep = declare_dependency(link_with: boost_regex, include_directories: inc,
compile_args: '-DBOOST_ALL_NO_LIB=1')

View File

@ -1,5 +1,5 @@
project('boost', 'cpp',
version: '1.74.0',
version: '1.83.0',
meson_version: '>=0.55.0')
cpp = meson.get_compiler('cpp')