diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 000000000..1dd3fa87e
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,112 @@
+name: Meson CI
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ name: ${{ matrix.config.name }}
+ runs-on: ${{ matrix.config.os }}
+
+ strategy:
+ matrix:
+ config:
+ - {
+ name: Windows MSVC Release,
+ os: windows-latest,
+ msvc: true,
+ buildtype: release,
+ args: -Ddefault_library=static --force-fallback-for=zlib,harfbuzz
+ }
+ #- {
+ # 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: macOS Debug,
+ os: macos-latest,
+ buildtype: debugoptimized,
+ args: -Ddefault_library=static
+ }
+ - {
+ name: macOS Release,
+ os: macos-latest,
+ buildtype: release,
+ args: -Ddefault_library=static
+ }
+
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: '0'
+
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.x'
+
+ - name: Setup Meson
+ run: |
+ python -m pip install --upgrade pip
+ 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
+ $url = "https://github.com/leafo/moonscript/releases/download/win32-v0.5.0/moonscript-187bac54ee5a7450013e9c38e005a0e671b76f45.zip"
+ mkdir moonscript
+ Invoke-WebRequest -Uri $url -OutFile ".\moonscript\moonscript.zip"
+ cd moonscript
+ 7z e moonscript.zip
+ Get-Location | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
+
+ - name: Install dependencies (MacOS)
+ if: matrix.config.os == 'macos-latest'
+ run: |
+ brew install luarocks nasm ninja
+ luarocks install luafilesystem 1.8.0
+ luarocks install moonscript --dev
+
+ - name: Install dependencies (Linux)
+ if: matrix.config.os == 'ubuntu-latest'
+ 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
+
+ - name: Configure
+ run: meson build ${{ matrix.config.args }} -Dbuildtype=${{ matrix.config.buildtype }}
+
+ - name: Build
+ run: meson compile -C build
+
+ - name: Generate Windows installer
+ if: matrix.config.os == 'windows-latest'
+ run: meson compile win-installer -C build
+
+ - name: Upload artifacts
+ uses: actions/upload-artifact@v2
+ if: matrix.config.os == 'windows-latest'
+ with:
+ name: ${{ matrix.config.name }}
+ path: |
+ build/Aegisub-*.exe
diff --git a/.gitignore b/.gitignore
index 6db047864..921303c29 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,90 +1,39 @@
-*.App
-*.[oadi]
-*.ass
-*.avi
-*.bz2
-*.cache
-*.dep
-*.db
-*.dll
-*.dmg
-*.exe
-*.gch
-*.gz
-*.idb
-*.ilk
-*.log
-*.manifest
-*.mkv
-*.mo
-*.ncb
-*.obj
-*.opensdf
-*.orig
-*.patch
-*.pch
-*.pdb
-*.profdata
-*.profraw
-*.sdf
-*.so
-*.srt
-*.suo
-*.swp
-*.ts
-*.user
-*.vsp
-*.y4m
-*.zip
-*~
-
-/bin
-/include
-/ipch
-/lib
-/obj
/tests/data
-.lvimrc
-.syntastic_cpp_config
-/Makefile.inc
-BuildLog.htm
-acconf.h
-acconf.h.in
-aclocal.m4
-autom4te.cache
-automation/aegisub-lua
-build/userconfig/*.props
-conf.sh
-config.log
-config.status
-config_windows.h
-configure
-git_version.h
-git_version.xml
packages/desktop/aegisub.desktop
packages/desktop/aegisub.desktop.template
-src/aegisub
src/libresrc/bitmap.cpp
src/libresrc/bitmap.h
src/libresrc/default_config.cpp
src/libresrc/default_config.h
src/libresrc/default_config_platform.json
-svn-revision.h
-svn_revision
tests/*.json
tests/run
tools/osx-bundle-restart-helper
tools/osx-bundle.sed
tools/repack-thes-dict
tools/repack-thes-dict.dSYM
-vendor/fribidi
-vendor/luajit/src/host/buildvm
-vendor/luajit/src/host/minilua
-vendor/luajit/src/jit/vmdef.lua
-vendor/luajit/src/gen
-vendor/luajit/src/lj_vm.s
-vendor/luajit/src/luajit
-.nuget
-.vs
+# Platform-specific
+.DS_Store
+
+# Meson
+build*/
+subprojects/boost*/
+subprojects/cairo*
+subprojects/ffmpeg
+subprojects/ffms2-*
+subprojects/fontconfig*
+subprojects/freetype2
+subprojects/fribidi
+subprojects/glib*
+subprojects/harfbuzz
+subprojects/icu
+subprojects/libass
+subprojects/libffi*
+subprojects/libpng-*
+subprojects/nasm-*
+subprojects/packagecache
+subprojects/proxy-libintl*
+subprojects/wxWidgets
+subprojects/zlib-*
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index 57e8776ae..000000000
--- a/.gitmodules
+++ /dev/null
@@ -1,42 +0,0 @@
-[submodule "freetype2"]
- path = vendor/freetype2
- url = git://git.sv.nongnu.org/freetype/freetype2.git
- ignore = dirty
-[submodule "wxWidgets"]
- path = vendor/wxWidgets
- url = git://github.com/Aegisub/wxWidgets.git
- ignore = dirty
-[submodule "googletest"]
- path = vendor/googletest
- url = git://github.com/svn2github/googletest.git
- ignore = dirty
-[submodule "ffmpeg"]
- path = vendor/ffmpeg
- url = git://source.ffmpeg.org/ffmpeg.git
- ignore = dirty
-[submodule "ffms2"]
- path = vendor/ffms2
- url = git://github.com/FFMS/ffms2.git
- branch = master
- ignore = dirty
-[submodule "libass"]
- path = vendor/libass
- url = git://github.com/libass/libass.git
- branch = master
-[submodule "icu"]
- path = vendor/icu
- url = git://github.com/svn2github/icu4c.git
- branch = master
- ignore = dirty
-[submodule "boost"]
- path = vendor/boost
- url = https://github.com/boostorg/boost.git
- ignore = dirty
-[submodule "fftw"]
- path = vendor/fftw
- url = https://github.com/Aegisub/fftw3.git
- ignore = dirty
-[submodule "uchardet"]
- path = vendor/uchardet
- url = https://github.com/BYVoid/uchardet
- ignore = dirty
diff --git a/.nuget/NuGet.Config b/.nuget/NuGet.Config
deleted file mode 100644
index 25dfbe7ab..000000000
--- a/.nuget/NuGet.Config
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/.nuget/NuGet.targets b/.nuget/NuGet.targets
deleted file mode 100644
index 2cada41fb..000000000
--- a/.nuget/NuGet.targets
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
- $(MSBuildProjectDirectory)\..\
-
-
- true
-
-
- false
-
-
- false
-
-
- true
-
-
-
-
-
-
-
-
-
- $([System.IO.Path]::Combine($(SolutionDir), ".nuget"))
- $([System.IO.Path]::Combine($(ProjectDir), "packages.config"))
-
-
-
-
- $(SolutionDir).nuget
- packages.config
-
-
-
-
- $(NuGetToolsPath)\nuget.exe
- @(PackageSource)
-
- "$(NuGetExePath)"
- mono --runtime=v4.0.30319 $(NuGetExePath)
-
- $(TargetDir.Trim('\\'))
-
- -RequireConsent
-
- $(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch) -solutionDir "$(SolutionDir) "
- $(NuGetCommand) pack "$(ProjectPath)" -p Configuration=$(Configuration) -o "$(PackageOutputDir)" -symbols
-
-
-
- RestorePackages;
- $(ResolveReferencesDependsOn);
-
-
-
-
- $(BuildDependsOn);
- BuildPackage;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 455d5f1ba..000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,70 +0,0 @@
-sudo: required
-dist: trusty
-language: cpp
-
-git:
- submodules: false
-
-addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - autopoint
- - g++-5
- - libasound2-dev
- - libass-dev
- - libfftw3-dev
- - libfribidi-dev
- - libhunspell-dev
- - libicu-dev
- - luarocks
- - yasm
-
-matrix:
- include:
- - compiler: gcc
- env: BOOST_VERSION=55
- - compiler: gcc
- env: BOOST_VERSION=60
- before_install:
- - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5 --slave /usr/bin/gcov gcov /usr/bin/gcov-5
-
-install:
- # Can't install these via the apt addon due to the whitelist
- - sudo apt-get install -y -qq libffms2-dev libwxgtk3.0-dev libuchardet-dev
-
- - sudo pip install -U cpp-coveralls
- - sudo luarocks install busted > /dev/null
- - sudo luarocks install moonscript > /dev/null
- - sudo luarocks install uuid > /dev/null
-
- - git submodule --quiet init
- - git submodule --quiet update vendor/googletest
-
- - cd vendor
- - rm -rf boost
- - wget http://sourceforge.net/projects/boost/files/boost/1.${BOOST_VERSION}.0/boost_1_${BOOST_VERSION}_0.tar.bz2/download
- - tar xjf download
- - mv boost_1_${BOOST_VERSION}_0 boost
- - cd boost
- - ./bootstrap.sh
- - ./b2 -j3 -layout=system threading=multi cxxflags=-std=c++11 link=shared variant=release --without-python --without-iostreams --without-serialization --without-graph --without-log --without-math --without-signals --without-test --without-wave --without-mpi --without-program_options --without-graph_parallel --without-context --without-coroutine --without-random --without-timer --without-date_time
- - sudo ./b2 -layout=system threading=multi cxxflags=-std=c++11 link=shared variant=release --without-python --without-iostreams --without-serialization --without-graph --without-log --without-math --without-signals --without-test --without-wave --without-mpi --without-program_options --without-graph_parallel --without-context --without-coroutine --without-random --without-timer --without-date_time install
- - cd ../..
-
-script:
- - export CPATH=$(pwd)/vendor/boost
- - export LD_LIBRARY_PATH=$(pwd)/vendor/boost/stage/lib:$LD_LIBRARY_PATH
- - export CPPFLAGS="-fprofile-arcs -ftest-coverage"
- - export LIBS="-lgcov"
- - autoreconf -if
- - ./configure BOOST_LDFLAGS="-L$(pwd)/vendor/boost/stage/lib" --enable-debug || cat config.log
- - make -j3 all test
- - coveralls --exclude vendor --exclude src --exclude build --exclude tools --exclude libaegisub/windows > /dev/null
-
-notifications:
- email:
- - on_success: change
- - on_failure: change
-
diff --git a/Aegisub.sln b/Aegisub.sln
deleted file mode 100644
index c8bdcada0..000000000
--- a/Aegisub.sln
+++ /dev/null
@@ -1,572 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.30324.0
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Aegisub", "build\Aegisub\Aegisub.vcxproj", "{9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "csrihelper", "build\csrihelper\csrihelper.vcxproj", "{C832EAF3-860D-4373-A02C-933626B47A5E}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hunspell", "build\hunspell\hunspell.vcxproj", "{CC791693-6B28-40AC-879D-64A6C16468E3}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaegisub", "build\libaegisub\libaegisub.vcxproj", "{BB3FED86-DB7A-4DC7-964A-260FB86CDE61}"
- ProjectSection(ProjectDependencies) = postProject
- {A649D828-A399-4D81-ADEF-94CFDBA7847F} = {A649D828-A399-4D81-ADEF-94CFDBA7847F}
- {F934AB7B-186B-4E96-B20C-A58C38C1B818} = {F934AB7B-186B-4E96-B20C-A58C38C1B818}
- {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F} = {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}
- {965054D2-44F2-4EB2-9879-051CC3D7EF08} = {965054D2-44F2-4EB2-9879-051CC3D7EF08}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libiconv", "build\libiconv\libiconv.vcxproj", "{965054D2-44F2-4EB2-9879-051CC3D7EF08}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libresrc", "build\libresrc\libresrc.vcxproj", "{BD00D65F-24DA-4784-8860-3B972EA125FC}"
- ProjectSection(ProjectDependencies) = postProject
- {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC} = {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "luabins", "build\luabins\luabins.vcxproj", "{A7A30702-8162-4E1A-A010-EF51B590C121}"
- ProjectSection(ProjectDependencies) = postProject
- {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F} = {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "universalchardet", "build\universalchardet\universalchardet.vcxproj", "{7B56955D-5162-4698-AA5B-47484EDC8783}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fftw", "build\fftw\fftw.vcxproj", "{EA3DCC95-2423-4EA0-A508-7A427B4C0594}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "build\freetype2\freetype.vcxproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fribidi", "build\fribidi\fribidi.vcxproj", "{FB8E8D19-A4D6-4181-943C-282075F49B41}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ffms2", "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", "build\ffmpeg\ffmpeg.vcxproj", "{F934AB7B-186B-4E96-B20C-A58C38C1B819}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE} = {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "build\zlib\zlib.vcxproj", "{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- 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", "build\wx\wxWidgets.vcxproj", "{0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libass", "build\libass\libass.vcxproj", "{8804F253-DA67-4CC4-926B-0CD2AEE5778D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PortableInstaller", "build\PortableInstaller\PortableInstaller.vcxproj", "{5B0E9978-E76F-4BBC-8194-228323F59B53}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "build\boost\boost.vcxproj", "{A649D828-A399-4D81-ADEF-94CFDBA7847F}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- {F934AB7B-186B-4E96-B20C-A58C38C1B818} = {F934AB7B-186B-4E96-B20C-A58C38C1B818}
- {965054D2-44F2-4EB2-9879-051CC3D7EF08} = {965054D2-44F2-4EB2-9879-051CC3D7EF08}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "icu", "build\icu\icu.vcxproj", "{F934AB7B-186B-4E96-B20C-A58C38C1B818}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "googletest", "build\googletest\googletest.vcxproj", "{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tests", "build\tests\tests.vcxproj", "{49766286-2B5D-4177-A860-BD7CE1846EEF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BuildTasks", "build\BuildTasks\BuildTasks.csproj", "{914A5B35-66B2-4293-BB6C-D93DA9BC68C6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "luajit-minilua", "build\luajit-minilua\luajit-minilua.vcxproj", "{FCAED410-90EF-4EF9-916C-4B86DC13A3CF}"
- ProjectSection(ProjectDependencies) = postProject
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6} = {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "luajit-buildvm", "build\luajit-buildvm\luajit-buildvm.vcxproj", "{7CA6A4EB-A11B-4975-8F3A-F633111C6213}"
- ProjectSection(ProjectDependencies) = postProject
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF} = {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "luajit", "build\luajit\luajit.vcxproj", "{5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}"
- ProjectSection(ProjectDependencies) = postProject
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF} = {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213} = {7CA6A4EB-A11B-4975-8F3A-F633111C6213}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "expat", "build\expat\expat.vcxproj", "{D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpng", "build\libpng\libpng.vcxproj", "{5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "scintilla", "build\scintilla\scintilla.vcxproj", "{D6EA54FD-F15C-42F6-929B-A83F299A4582}"
-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
- Release-MinDep|Win32 = Release-MinDep|Win32
- Release-MinDep|x64 = Release-MinDep|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
- {9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release-MinDep|Win32.Build.0 = Release|Win32
- {9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release-MinDep|x64.ActiveCfg = Release|x64
- {9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}.Release-MinDep|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
- {C832EAF3-860D-4373-A02C-933626B47A5E}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {C832EAF3-860D-4373-A02C-933626B47A5E}.Release-MinDep|x64.ActiveCfg = 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
- {CC791693-6B28-40AC-879D-64A6C16468E3}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {CC791693-6B28-40AC-879D-64A6C16468E3}.Release-MinDep|x64.ActiveCfg = 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
- {BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release-MinDep|Win32.Build.0 = Release|Win32
- {BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release-MinDep|x64.ActiveCfg = Release|x64
- {BB3FED86-DB7A-4DC7-964A-260FB86CDE61}.Release-MinDep|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
- {965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {965054D2-44F2-4EB2-9879-051CC3D7EF08}.Release-MinDep|x64.ActiveCfg = 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|Win32.Build.0 = Debug|Win32
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Debug-MinDep|x64.Build.0 = 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
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Release-MinDep|Win32.Build.0 = Release|Win32
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Release-MinDep|x64.ActiveCfg = Release|x64
- {BD00D65F-24DA-4784-8860-3B972EA125FC}.Release-MinDep|x64.Build.0 = Release|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug|Win32.ActiveCfg = Debug|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug|Win32.Build.0 = Debug|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug|x64.ActiveCfg = Debug|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug|x64.Build.0 = Debug|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug-Tests|x64.ActiveCfg = Debug|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Debug-Tests|x64.Build.0 = Debug|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release|Win32.ActiveCfg = Release|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release|Win32.Build.0 = Release|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release|x64.ActiveCfg = Release|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release|x64.Build.0 = Release|x64
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {A7A30702-8162-4E1A-A010-EF51B590C121}.Release-MinDep|x64.ActiveCfg = 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
- {7B56955D-5162-4698-AA5B-47484EDC8783}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {7B56955D-5162-4698-AA5B-47484EDC8783}.Release-MinDep|x64.ActiveCfg = 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
- {EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release-MinDep|x64.ActiveCfg = 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
- {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release-MinDep|x64.ActiveCfg = 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
- {AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {AD56899E-961B-47B7-BD0F-14D0DA50D141}.Release-MinDep|x64.ActiveCfg = Release|x64
- {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
- {FB8E8D19-A4D6-4181-943C-282075F49B41}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {FB8E8D19-A4D6-4181-943C-282075F49B41}.Release-MinDep|x64.ActiveCfg = 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
- {AA137613-96A1-4388-8905-71345B4F8F87}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {AA137613-96A1-4388-8905-71345B4F8F87}.Release-MinDep|x64.ActiveCfg = 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
- {F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {F934AB7B-186B-4E96-B20C-A58C38C1B819}.Release-MinDep|x64.ActiveCfg = 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
- {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}.Release-MinDep|x64.ActiveCfg = Release|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
- {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}.Release-MinDep|x64.ActiveCfg = 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
- {8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {8804F253-DA67-4CC4-926B-0CD2AEE5778D}.Release-MinDep|x64.ActiveCfg = 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
- {5B0E9978-E76F-4BBC-8194-228323F59B53}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {5B0E9978-E76F-4BBC-8194-228323F59B53}.Release-MinDep|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|x64
- {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
- {A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {A649D828-A399-4D81-ADEF-94CFDBA7847F}.Release-MinDep|x64.ActiveCfg = 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-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
- {F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release-MinDep|x64.ActiveCfg = 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
- {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release-MinDep|x64.ActiveCfg = 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
- {49766286-2B5D-4177-A860-BD7CE1846EEF}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {49766286-2B5D-4177-A860-BD7CE1846EEF}.Release-MinDep|x64.ActiveCfg = Release|x64
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug|Win32.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug|Win32.Build.0 = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug|x64.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug-MinDep|Win32.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug-MinDep|x64.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug-Tests|Win32.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Debug-Tests|x64.ActiveCfg = Debug|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Release|Win32.ActiveCfg = Release|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Release|x64.ActiveCfg = Release|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Release-MinDep|Win32.ActiveCfg = Release|Any CPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}.Release-MinDep|x64.ActiveCfg = Release|Any CPU
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug|Win32.ActiveCfg = Debug|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug|Win32.Build.0 = Debug|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug|x64.ActiveCfg = Debug|x64
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug|x64.Build.0 = Debug|x64
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Debug-Tests|x64.ActiveCfg = Debug|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release|Win32.ActiveCfg = Release|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release|Win32.Build.0 = Release|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release|x64.ActiveCfg = Release|x64
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release|x64.Build.0 = Release|x64
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}.Release-MinDep|x64.ActiveCfg = Release|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug|Win32.ActiveCfg = Debug|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug|Win32.Build.0 = Debug|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug|x64.ActiveCfg = Debug|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug|x64.Build.0 = Debug|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Debug-Tests|x64.ActiveCfg = Debug|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release|Win32.ActiveCfg = Release|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release|Win32.Build.0 = Release|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release|x64.ActiveCfg = Release|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release|x64.Build.0 = Release|x64
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}.Release-MinDep|x64.ActiveCfg = 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}.Debug-Tests|x64.Build.0 = 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
- {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}.Release-MinDep|x64.ActiveCfg = Release|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug|Win32.ActiveCfg = Debug|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug|Win32.Build.0 = Debug|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug|x64.ActiveCfg = Debug|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug|x64.Build.0 = Debug|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-Tests|Win32.Build.0 = Debug|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-Tests|x64.ActiveCfg = Debug|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Debug-Tests|x64.Build.0 = Debug|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release|Win32.ActiveCfg = Release|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release|Win32.Build.0 = Release|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release|x64.ActiveCfg = Release|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release|x64.Build.0 = Release|x64
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}.Release-MinDep|x64.ActiveCfg = Release|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug|Win32.ActiveCfg = Debug|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug|Win32.Build.0 = Debug|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug|x64.ActiveCfg = Debug|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug|x64.Build.0 = Debug|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-Tests|Win32.Build.0 = Debug|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-Tests|x64.ActiveCfg = Debug|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Debug-Tests|x64.Build.0 = Debug|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release|Win32.ActiveCfg = Release|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release|Win32.Build.0 = Release|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release|x64.ActiveCfg = Release|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release|x64.Build.0 = Release|x64
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}.Release-MinDep|x64.ActiveCfg = Release|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug|Win32.ActiveCfg = Debug|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug|Win32.Build.0 = Debug|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug|x64.ActiveCfg = Debug|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug|x64.Build.0 = Debug|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-MinDep|x64.ActiveCfg = Debug|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-Tests|Win32.ActiveCfg = Debug|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-Tests|Win32.Build.0 = Debug|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-Tests|x64.ActiveCfg = Debug|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Debug-Tests|x64.Build.0 = Debug|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release|Win32.ActiveCfg = Release|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release|Win32.Build.0 = Release|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release|x64.ActiveCfg = Release|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release|x64.Build.0 = Release|x64
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release-MinDep|Win32.ActiveCfg = Release|Win32
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}.Release-MinDep|x64.ActiveCfg = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/Makefile b/Makefile
deleted file mode 100644
index d3429e3be..000000000
--- a/Makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-include header.mk
-
-ifeq (yes, $(BUILD_DARWIN))
-osx-bundle:
- $(BIN_SHELL) tools/osx-bundle.sh "$(AEGISUB_COMMAND)" "$(BIN_WX_CONFIG)" "$(FONTCONFIG_CONF_DIR)" 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)"
-endif
-
-include Makefile.target
diff --git a/Makefile.inc.in b/Makefile.inc.in
deleted file mode 100644
index 3404a13a2..000000000
--- a/Makefile.inc.in
+++ /dev/null
@@ -1,140 +0,0 @@
-#########################
-# AEGISUB FEATURE SUPPORT
-#########################
-HAVE_ALSA = @with_alsa@
-HAVE_FFMS2 = @with_ffms2@
-HAVE_HUNSPELL = @with_hunspell@
-HAVE_LIBPULSE = @with_libpulse@
-HAVE_OPENAL = @with_openal@
-HAVE_OSS = @with_oss@
-HAVE_PORTAUDIO = @with_portaudio@
-HAVE_UCHARDET = @with_uchardet@
-
-##############
-# BUILD OUTPUT
-##############
-PROGRAM := $(PROGRAM)
-LIB := $(LIB)
-
-###################
-# PLATFORM SETTINGS
-###################
-BUILD_DARWIN = @build_darwin@
-
-#######
-# FLAGS
-#######
-CFLAGS = @CFLAGS@
-CXXFLAGS = @CXXFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CFLAGS_DEP = -MMD -MP
-LIBS = @LIBS@
-LDFLAGS = @LDFLAGS@
-INSTALL_FLAGS = -m 644
-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.8 -install_name ${CURDIR}/$(LIB_SHARED_FULL)
-
-#########
-# STRINGS
-#########
-AEGISUB_COMMAND = @AEGISUB_COMMAND@
-AEGISUB_CATALOG = @AEGISUB_CATALOG@
-BUILD_DATE = @BUILD_DATE@
-BUILD_VERSION_STRING = @BUILD_GIT_VERSION_STRING@
-
-#######
-# PATHS
-#######
-prefix = ${P_PREFIX}
-exec_prefix = ${P_PREFIX_EXEC}
-datarootdir = ${P_DATAROOT}
-P_PREFIX = @prefix@
-P_PREFIX_EXEC = @exec_prefix@
-P_BINDIR = @bindir@
-P_DATAROOT = @datarootdir@
-P_LOCALE = @localedir@
-
-P_APPDATA = @P_APPDATA@
-P_DESKTOP = @P_DESKTOP@
-P_ICON = @P_ICON@
-P_DATA = @P_DATA@
-
-###############
-# 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_FILESYSTEM_LIB@ @BOOST_LOCALE_LIB@ @BOOST_REGEX_LIB@ @BOOST_SYSTEM_LIB@ @BOOST_THREAD_LIB@ @BOOST_CHRONO_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_LIBPULSE = @LIBPULSE_CFLAGS@
-CFLAGS_LUA = @LUAJIT_CFLAGS@
-CFLAGS_OPENAL = @OPENAL_CFLAGS@
-CFLAGS_OSS = @OSS_CFLAGS@
-CFLAGS_PORTAUDIO = @PORTAUDIO_CFLAGS@
-CFLAGS_PTHREAD = @PTHREAD_CFLAGS@
-CFLAGS_UCHARDET = @UCHARDET_CFLAGS@
-
-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_LIBPULSE = @LIBPULSE_LIBS@
-LIBS_LUA = @LUAJIT_LIBS@
-LIBS_OPENAL = @OPENAL_LIBS@
-LIBS_PORTAUDIO = @PORTAUDIO_LIBS@
-LIBS_PTHREAD = @PTHREAD_CFLAGS@ @PTHREAD_LIBS@
-LIBS_UCHARDET = @UCHARDET_LIBS@
-
-ifeq (yes, $(BUILD_DARWIN))
-LIBS_LUA = $(TOP)vendor/luajit/src/libluajit-aegisub.so
-endif
-
-FONTCONFIG_CONF_DIR = @FONTCONFIG_CONF_DIR@
-
-#####################
-# DEBUG / DEVELOPMENT
-#####################
-PRECOMPILED_HEADER = @enable_gcc_prec@
-
-##########
-# 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_LUA = @LUA@
-BIN_WX_CONFIG = @WX_CONFIG_PATH@
diff --git a/Makefile.target b/Makefile.target
deleted file mode 100644
index 516ef3c24..000000000
--- a/Makefile.target
+++ /dev/null
@@ -1,121 +0,0 @@
-ifneq (yes, $(INCLUDING_CHILD_MAKEFILES))
-COMMANDS := all install clean distclean test depclean osx-bundle osx-dmg test-automation test-libaegisub
-.PHONY: $(COMMANDS)
-.DEFAULT_GOAL := all
-
-# Would be nice to move this somewhere else (Makefile.inc?)
-ifeq (yes, $(BUILD_DARWIN))
-CFLAGS += -mmacosx-version-min=10.8 -gfull
-CXXFLAGS += -mmacosx-version-min=10.8 -gfull
-LDFLAGS += -mmacosx-version-min=10.8 -Wl,-dead_strip -pagezero_size 10000 -image_base 100000000
-LIB_SHARED_LINK = $(LIB_SHARED_LINK_OSX)
-endif
-
-LIB_TARGETS := $(addprefix $(TOP)lib/,$(LIB:%=lib%.a))
-
-# Handle per-target flags in the form foo_CFLAGS := -w by mapping them to all
-# of the objects a target depends on. This has potentially dumb results if
-# multiple targets use a single object file, so don't do that.
-define set_target_flags
- OBJ += $($1_OBJ)
-
- $($1_OBJ): CPPFLAGS := $(CPPFLAGS) $($1_CPPFLAGS)
- $($1_OBJ): CXXFLAGS := $(CXXFLAGS) $($1_CXXFLAGS)
- $($1_OBJ): OBJCXXFLAGS := $(CXXFLAGS) $($1_CXXFLAGS)
-
- ifeq (yes, $(PRECOMPILED_HEADER))
- ifdef $1_PCH
- CLEANFILES += $($1_PCH).gch
- $($1_OBJ): CXXFLAGS += -include $($1_PCH) $(PCHFLAGS)
- $($1_OBJ): $($1_PCH).gch
- $($1_PCH).gch: $($1_PCH)
- $($1_PCH).gch: CPPFLAGS := $(CPPFLAGS) $($1_CPPFLAGS)
- $($1_PCH).gch: CXXFLAGS := $(CXXFLAGS) $($1_CXXFLAGS)
- else
- $($1_OBJ): CXXFLAGS += -include acconf.h
- endif
- else
- $($1_OBJ): CXXFLAGS += -include acconf.h
- endif
-endef
-$(foreach target,$(LIB),$(eval $(call set_target_flags,$(target),$(TOP)lib/lib$(target).a)))
-$(foreach target,$(PROGRAM),$(eval $(call set_target_flags,$(notdir $(target)),$(target))))
-
-# Create the build and install targets for programs
-# Not done with a pattern rule since the pattern would be just %: and doing that
-# leads to make trying to use gcc to make any nonexistent targets rather than
-# erroring
-define create_program_targets
- ifdef $1_INSTALLNAME
-install: $(DESTDIR)$(P_BINDIR)/$($1_INSTALLNAME)
-$(DESTDIR)$(P_BINDIR)/$($1_INSTALLNAME): $(dir $2)$($1_INSTALLNAME)
- @$(BIN_MKDIR) -p $(DESTDIR)$(P_BINDIR)
- @$(BIN_INSTALL) $(dir $2)$($1_INSTALLNAME) $(DESTDIR)$(P_BINDIR)/$($1_INSTALLNAME)
-$(dir $2)$($1_INSTALLNAME): $($1_OBJ)
- $(BIN_CXX) -o $(dir $2)$($1_INSTALLNAME) $(LDFLAGS) $($1_OBJ) $(LIBS) $($1_LIBS)
-all: $(dir $2)$($1_INSTALLNAME)
- else
-$2: $($1_OBJ)
- $(BIN_CXX) -o $2 $(LDFLAGS) $($1_OBJ) $(LIBS) $($1_LIBS)
-all: $2
- endif
- $(eval CLEANFILES += $(filter-out %/,$2 $(dir $2)$($1_INSTALLNAME)))
-endef
-$(foreach target,$(PROGRAM),$(eval $(call create_program_targets,$(notdir $(target)),$(target))))
-
-# The dependency files which will be automatically generated by gcc.
-# The filter is due to that libraries also appear in OBJ
-DEP := $(filter %.d,$(OBJ:%.o=%.d))
-
-# If the goal is a relative path to a file, convert it to an absolute path
-ifneq ($(filter-out $(COMMANDS),$(MAKECMDGOALS)),)
-ABSGOAL := $(abspath $(MAKECMDGOALS))
-ifneq ($(MAKECMDGOALS),$(ABSGOAL))
-$(MAKECMDGOALS): $(ABSGOAL) ;
-endif
-endif
-
-# Primary build targets
-all: $(LIB_TARGETS)
-
-clean:
- $(BIN_RM) -f $(OBJ) $(CLEANFILES) $(LIB_TARGETS)
-
-distclean: clean
- $(BIN_RM) -rf $(DISTCLEANFILES) $(DEP)
-
-depclean: clean
- $(BIN_RM) -rf $(DEP)
-
-install:
-
-# The actual build rules
-.SUFFIXES:
-
-CXX_CMD = $(CXX_ENV) $(BIN_CXX) $(CFLAGS_DEP) $(CPPFLAGS)
-CC_CMD = $(CXX_ENV) $(BIN_CC) $(CFLAGS_DEP) $(CPPFLAGS)
-POST_FLAGS = $($@_FLAGS) -c -o $@ $<
-
-%.o: %.c ; $(CC_CMD) $(CFLAGS) $(POST_FLAGS)
-%.o: %.cpp ; $(CXX_CMD) $(CXXFLAGS) $(POST_FLAGS)
-%.o: %.cxx ; $(CXX_CMD) $(CXXFLAGS) $(POST_FLAGS)
-%.o: %.cc ; $(CXX_CMD) $(CXXFLAGS) $(POST_FLAGS)
-%.o: %.mm ; $(CXX_CMD) $(OBJCXXFLAGS) $(POST_FLAGS)
-%.o: %.m ; $(CC_CMD) $(CFLAGS) -fmodules $(POST_FLAGS)
-
-%.gch: %
- @$(BIN_RM) -f $@
- $(CXX_ENV) $(BIN_CXX) $(CPPFLAGS) $(CXXFLAGS) -x c++-header $<
-
-.SECONDEXPANSION:
-
-# Libraries contain all object files they depend on (but they may depend on other files)
-# Not using libtool on OS X because it has an unsilenceable warning about a
-# compatibility issue with BSD 4.3 (wtf)
-lib%.a: $$($$*_OBJ)
- @$(BIN_MKDIR_P) $(dir $@)
- $(BIN_AR) cru $@ $(filter %.o,$^)
- $(BIN_RANLIB) $@
-
--include $(DEP)
-endif
diff --git a/README.md b/README.md
index e28366617..87c0c0258 100644
--- a/README.md
+++ b/README.md
@@ -2,9 +2,9 @@
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/TypesettingTools/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,74 +12,49 @@ Support is available on [the forums](http://forum.aegisub.org) or [on IRC](irc:/
Prerequisites:
-1. Visual Studio 2015 (the free Community edition is good enough)
+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. [Yasm](http://yasm.tortall.net/) installed to somewhere on your path.
+3. Python 3
+4. Meson
+5. CMake
+6. Powershell execution policy set to Unrestricted
-There are a few optional dependencies:
+There are a few optional dependencies that must be installed and on your PATH:
1. msgfmt, to build the translations
2. WinRAR, to build the portable installer
3. InnoSetup, to build the regular installer
+4. 7zip, to build the regular installer
+5. Moonscript, to build the regular installer
All other dependencies are either stored in the repository or are included as submodules.
Building:
-1. Clone Aegisub's repository recursively to fetch it and all submodules: `git clone --recursive git@github.com:Aegisub/Aegisub.git` This will take quite a while and requires about 2.5 GB of disk space.
-2. Open Aegisub.sln
-3. Build the BuildTasks project.
-4. Build the entire solution.
+1. Clone Aegisub's repository: `git clone https://github.com/TypesettingTools/Aegisub.git`
+2. From the Visual Studio "x64 Native Tools Command Prompt", generate the build directory: `meson build -Ddefault_library=static`
+3. Build with `cd build` and `meson compile`
-You should now have a `bin` directory in your Aegisub directory which contains `aegisub32d.exe`, along with a pile of other files.
+You should now have a binary at `src/aegisub.exe`.
-The Aegisub installer includes some files not built as part of Aegisub (such as Avisynth and VSFilter), so for a fully functional copy of Aegisub you now need to copy all of the files from an installed copy of Aegisub into your `bin` directory (and don't overwrite any of the files already there).
-You'll also either need to copy the `automation` directory into the `bin` directory, or edit your automation search paths to include the `automation` directory in the source tree.
+Installer:
-After building the solution once, you'll want to switch to the Debug-MinDep configuration, which skips checking if the dependencies are out of date, as that takes a while.
+You can generate the installer with `ninja win-installer` after a successful build. This assumes a working internet connection and installation of the optional dependencies.
### OS X
A vaguely recent version of Xcode and the corresponding command-line tools are required.
-Nothing older than Xcode 5 has been tested recently, but it is likely that some later versions of Xcode 4 are good enough.
-For personal usage, you can use homebrew to install almost all of Aegisub's dependencies:
+For personal usage, you can use pip and homebrew to install almost all of Aegisub's dependencies:
- brew install autoconf ffmpeg freetype gettext ffms2 fftw fribidi libass m4
- brew install --devel --with-gc64 luajit
- brew install --HEAD icu4c
- brew link --force icu4c
+ brew install libass nasm ninja boost zlib icu4c pkg-config ffms2 fftw hunspell gettext cmake
brew link --force gettext
- brew install --HEAD --c++11 --with-icu4c boost
+ 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"
+ pip install meson
-wxWidgets is located in vendor/wxWidgets, and can be built like so:
-
- CPPFLAGS="$CPPFLAGS -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=1" \
- ./configure --disable-aboutdlg --disable-animatectrl --disable-aui --disable-any \
- --disable-bannerwindow --disable-base64 --disable-calendar --disable-caret \
- --disable-cmdline --disable-colourpicker --disable-compat28 --disable-config \
- --disable-constraints --disable-datepick --disable-dctransform --disable-debugreport \
- --disable-dialupman --disable-docview --disable-filehistory --disable-finddlg \
- --disable-fs_archive --disable-fs_inet --disable-fs_zip --disable-fsvolume \
- --disable-fswatcher --disable-gif --disable-help --disable-html --disable-ipc \
- --disable-joystick --disable-jpeg --disable-largefile --disable-markup --disable-mdi \
- --disable-mediactrl --disable-metafiles --disable-miniframe --disable-notifmsg \
- --disable-numberdlg --disable-pcx --disable-pnm --disable-postscript \
- --disable-prefseditor --disable-printarch --disable-progressdlg --disable-propgrid \
- --disable-protocol --disable-protocols --disable-rearrangectrl --disable-ribbon \
- --disable-richtext --disable-richtooltip --disable-snglinst --disable-sockets \
- --disable-sockets --disable-sound --disable-splash --disable-splines \
- --disable-std_iostreams --disable-svg --disable-tarstream --disable-tiff \
- --disable-tipdlg --disable-tipwindow --disable-url --disable-webkit --disable-webview \
- --disable-wizarddlg --disable-xrc \
- --enable-geometry --enable-imaglist --enable-listctrl --enable-stc --with-cocoa \
- --with-libpng=yes --with-macosx-version-min=10.9 \
- --with-opengl \
- --without-libjpeg --without-libtiff --without-regex \
- && make
-
-Once the dependencies are installed, build Aegisub with `autoreconf && ./configure --with-wxdir=/path/to/Aegisub/vendor/wxWidgets && make && make osx-bundle`.
-`autoreconf` should be skipped if you are building from a source tarball rather than `git`.
+Once the dependencies are installed, build Aegisub with `meson build && meson compile -C build`.
## Updating Moonscript
diff --git a/acinclude.m4 b/acinclude.m4
deleted file mode 100644
index aee5b047d..000000000
--- a/acinclude.m4
+++ /dev/null
@@ -1,15 +0,0 @@
-m4_include([m4macros/ac_agi.m4])
-m4_include([m4macros/ac_flag.m4])
-m4_include([m4macros/agi_find_libheader.m4])
-m4_include([m4macros/ax_boost_base.m4])
-m4_include([m4macros/ax_boost_chrono.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])
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755
index 46b4be7e7..000000000
--- a/autogen.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-set -e
-
-echo Running autoreconf...
-autoreconf -ivf "$@"
-
-echo Now run ./configure and then make to build Aegisub
diff --git a/automation/Makefile b/automation/Makefile
deleted file mode 100644
index 76c7dd992..000000000
--- a/automation/Makefile
+++ /dev/null
@@ -1,28 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-DATA_AUTOMATION := \
- $(sort $(wildcard $(d)autoload/*)) \
- $(sort $(wildcard $(d)demos/*)) \
- $(sort $(wildcard $(d)include/*.lua)) \
- $(sort $(wildcard $(d)include/aegisub/*))
-
-DATA_AUTOMATION_REL := $(subst $(d),,$(DATA_AUTOMATION))
-DATA_AUTOMATION_INSTALLED = $(addprefix $(DESTDIR)$(P_DATA)/automation/, $(DATA_AUTOMATION_REL))
-
-$(DESTDIR)$(P_DATA)/automation/%: $(d)%
- $(MKDIR_INSTALL)
-
-aegisub-lua_OBJ := $(d)tests/aegisub.o $(TOP)lib/libaegisub.a $(TOP)lib/libluabins.a $(LIBS_LUA)
-aegisub-lua_CPPFLAGS := $(CPPFLAGS_BOOST) $(CFLAGS_LUA) -I$(TOP)libaegisub/include -I$(TOP)src $(CXXFLAGS_WX)
-aegisub-lua_LIBS := $(LIBS_WX) $(LIBS_BOOST) $(LIBS_ICU) $(LIBS_PTHREAD)
-
-PROGRAM += $(d)aegisub-lua
-
-test-automation: $(PROGRAM)
- eval `luarocks path`; cd $(TOP)automation; ./aegisub-lua tests/busted.lua -p 'moon' tests/modules
-
-test: test-automation
-
-install: $(DATA_AUTOMATION_INSTALLED)
-
-include $(TOP)Makefile.target
diff --git a/automation/meson.build b/automation/meson.build
new file mode 100644
index 000000000..043d40c8c
--- /dev/null
+++ b/automation/meson.build
@@ -0,0 +1,40 @@
+automation_dir = dataroot / 'automation'
+
+install_data(
+ 'autoload/cleantags-autoload.lua',
+ 'autoload/karaoke-auto-leadin.lua',
+ 'autoload/kara-templater.lua',
+ 'autoload/macro-1-edgeblur.lua',
+ 'autoload/macro-2-mkfullwitdh.lua',
+ 'autoload/select-overlaps.moon',
+ 'autoload/strip-tags.lua',
+ install_dir: automation_dir / 'autoload')
+
+install_data(
+ 'demos/future-windy-blur.lua',
+ 'demos/raytracer.lua',
+ 'demos/raytracer-test1.ass',
+ install_dir: automation_dir / 'demos')
+
+install_data(
+ 'include/cleantags.lua',
+ 'include/clipboard.lua',
+ 'include/karaskel-auto4.lua',
+ 'include/karaskel.lua',
+ 'include/lfs.lua',
+ 'include/moonscript.lua',
+ 'include/re.lua',
+ 'include/unicode.lua',
+ 'include/utils-auto4.lua',
+ 'include/utils.lua',
+ install_dir: automation_dir / 'include')
+
+install_data(
+ 'include/aegisub/argcheck.moon',
+ 'include/aegisub/clipboard.lua',
+ 'include/aegisub/ffi.moon',
+ 'include/aegisub/lfs.moon',
+ 'include/aegisub/re.moon',
+ 'include/aegisub/unicode.moon',
+ 'include/aegisub/util.moon',
+ install_dir: automation_dir / 'include' / 'aegisub')
diff --git a/build/Aegisub/Aegisub.targets b/build/Aegisub/Aegisub.targets
deleted file mode 100644
index 78d939088..000000000
--- a/build/Aegisub/Aegisub.targets
+++ /dev/null
@@ -1,163 +0,0 @@
-
-
-
-
-
-
-
- BUILD_CREDIT="$(AegisubBuildCredit)";%(PreprocessorDefinitions)
-
-
-
-
-
-
-
- WITH_UPDATE_CHECKER;
- UPDATE_CHECKER_SERVER="$(UpdateCheckerServer)";
- UPDATE_CHECKER_BASE_URL="$(UpdateCheckerURL)";
- %(PreprocessorDefinitions)
-
-
-
-
-
-
-
- WITH_HUNSPELL;%(PreprocessorDefinitions)
- $(AegisubContribBase)hunspell\src;%(AdditionalIncludeDirectories)
-
-
-
-
-
-
- WITH_CSRI;%(PreprocessorDefinitions)
-
-
-
-
-
-
- WITH_CSRI;%(PreprocessorDefinitions)
-
-
- $(CsriLibraryPath);%(AdditionalLibraryDirectories)
- $(CsriLibraryName);%(AdditionalDependencies)
-
-
-
-
-
-
- WITH_FFMS2;FFMS_STATIC;%(PreprocessorDefinitions)
-
-
-
-
-
-
- WITH_AVISYNTH;%(PreprocessorDefinitions)
-
-
-
-
-
-
- WITH_FFTW3;%(PreprocessorDefinitions)
-
-
-
-
-
-
- WITH_OPENAL;%(PreprocessorDefinitions)
-
-
-
-
-
-
- WITH_DIRECTSOUND;%(PreprocessorDefinitions)
-
-
- dsound.lib;dxguid.lib;%(AdditionalDependencies)
-
-
-
-
-
-
- WITH_STARTUPLOG;%(PreprocessorDefinitions)
-
-
-
-
-
-
-
- NOMINMAX;
- _WIN32_WINNT=0x0602;
- %(PreprocessorDefinitions)
-
-
- $(SrcDir)include\;
- $(AegisubSourceBase)libaegisub\include;
- $(AegisubSourceBase)build;
- $(AegisubSourceBase)include;
- $(AegisubSourceBase)src;
- %(AdditionalIncludeDirectories)
-
-
-
- $(AegisubLibraryDir);%(AdditionalLibraryDirectories)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/Aegisub/Aegisub.vcxproj b/build/Aegisub/Aegisub.vcxproj
deleted file mode 100644
index 9d5ae17af..000000000
--- a/build/Aegisub/Aegisub.vcxproj
+++ /dev/null
@@ -1,440 +0,0 @@
-
-
-
-
- {9DDDB9E5-E4A1-423D-A224-F6D4E5AAC06A}
- Aegisub
-
-
-
-
- exe
- ..\..\src\
-
-
-
-
-
-
-
- aegisub$(AegisubPlatformSuffix)
-
-
-
- Use
- agi_pre.h
- agi_pre.h
- /Zm150 %(AdditionalOptions)
-
-
- $(DXSDK_DIR)\Lib\x86
- $(DXSDK_DIR)\Lib\x64
-
-
-
-
-
-
-
-
-
-
-
- {a649d828-a399-4d81-adef-94cfdba7847f}
-
-
- {c832eaf3-860d-4373-a02c-933626b47a5e}
-
-
- {aa137613-96a1-4388-8905-71345b4f8f87}
-
-
- {ea3dcc95-2423-4ea0-a508-7a427b4c0594}
-
-
- {78b079bd-9fc7-4b9e-b4a6-96da0f00248b}
-
-
- {fb8e8d19-a4d6-4181-943c-282075f49b41}
-
-
- {cc791693-6b28-40ac-879d-64a6c16468e3}
-
-
- {f934ab7b-186b-4e96-b20c-a58c38c1b818}
-
-
- {bb3fed86-db7a-4dc7-964a-260fb86cde61}
-
-
- {8804f253-da67-4cc4-926b-0cd2aee5778d}
-
-
- {965054d2-44f2-4eb2-9879-051cc3d7ef08}
-
-
- {bd00d65f-24da-4784-8860-3b972ea125fc}
-
-
- {A7A30702-8162-4E1A-A010-EF51B590C121}
-
-
- {5391a8b1-9c70-4dc4-92ad-d3e34c6b803f}
-
-
- {7b56955d-5162-4698-aa5b-47484edc8783}
-
-
- {0518d6c0-7bf6-4fd1-91fb-191bd10db2ac}
-
-
- {10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}
-
-
- {d6ba6815-0aac-48fa-8372-d32cde8bf07a}
-
-
- {5cabcbef-e79a-4d27-94a5-cf4eaaf1dd96}
-
-
- {d6ea54fd-f15c-42f6-929b-a83f299a4582}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Create
-
-
- NotUsing
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4345;4307;4800
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/Aegisub/Aegisub.vcxproj.filters b/build/Aegisub/Aegisub.vcxproj.filters
deleted file mode 100644
index d8c2da283..000000000
--- a/build/Aegisub/Aegisub.vcxproj.filters
+++ /dev/null
@@ -1,1096 +0,0 @@
-
-
-
-
- {b5d22cd4-b7ec-48ad-b78b-948b41e5dc15}
-
-
- {9aad5f25-72b4-4438-9899-b0c405ab5995}
-
-
- {4125e713-d173-48b3-ae2f-e19b889cc926}
-
-
- {2617cdfa-8833-495b-9f75-4950210c628d}
-
-
- {90b18753-1a32-47a0-869d-64ae16e8732d}
-
-
- {4f326b57-8caa-4f6f-90c4-185cf3efc317}
-
-
- {5977a633-1e03-4503-83c6-d3c8994c8002}
-
-
- {97c0a35b-30d3-48ca-9b6a-ab7b97351f9e}
-
-
- {93bfdee7-d33e-466e-ae04-93157adcfa46}
-
-
- {3df67931-35ea-4b94-97eb-adb652294046}
-
-
- {3a5174c9-548b-47a0-a25d-2d03111fb5a7}
-
-
- {113403b0-d0ed-4cc0-a806-9c2802cf9042}
-
-
- {479b034b-3b4d-4225-9fb0-061f469ff90f}
-
-
- {d20479a0-e0cf-47af-a57f-7be8989fb489}
-
-
- {4079897b-063b-432c-9554-f9302fef4d50}
-
-
- {d8a621a5-3f03-409b-94be-ad2295e1ee36}
-
-
- {aaf66839-8213-4eba-9b2a-13576b5529d0}
-
-
- {0f4d31a3-388e-4927-af19-7da06b86f279}
-
-
- {c69ec6d0-05f4-45d1-878e-5130e6fd3a53}
-
-
- {048d6559-42b4-4dca-af9a-b9b15b6013f7}
-
-
- {01522e6d-8711-4a71-b9b8-a94a24ef0de0}
-
-
- {1f3f1f35-6805-4367-871d-b7e876fe88ab}
-
-
- {ac0a16bb-3474-4468-8a75-e094f32759e6}
-
-
- {822cb96c-6c7c-4602-93cb-5fdd8fd81559}
-
-
- {a7868613-b0f5-4460-ab27-6be2f75b0b4b}
-
-
- {e0404060-b33b-4a55-8181-b5dbb36bfa95}
-
-
- {98daa273-a000-4c7c-b40a-887e96441885}
-
-
- {e58def38-4472-43c0-ad27-e5c461aaf8f7}
-
-
- {b480102a-5ea0-4397-96c5-8ddb6f0368b9}
-
-
- {db74dafc-a06f-4750-9af7-d9a9ed69b21e}
-
-
- {5093b49a-3cb0-4b01-b301-51994f2020dd}
-
-
- {c22e763b-46cf-415f-8bc7-0ca7f7a8c480}
-
-
- {2a4cb9b1-8651-4b71-bdca-e14fe33d8f47}
-
-
- {a789b2c9-c65c-4a60-a25d-caa32f5aa1d0}
-
-
- {ba371dc7-556e-4e45-a5bd-3d9013bf0e29}
-
-
- {7b32f9be-de39-4892-9afc-0656d4dfff91}
-
-
- {e555b022-7aaf-483e-9b88-9a407f29e9c8}
-
-
- {cea88d45-ff52-425f-b552-69d126142a34}
-
-
- {8c5b1ccb-1afc-4d50-ada9-884e4cca2f1b}
-
-
- {423c43df-bad0-443b-9252-17c4b3e196f7}
-
-
- {7ece8180-ee96-41f3-8fe6-d1dd38eae79c}
-
-
- {76ce8128-70e2-4d8f-8e8e-5336bacd2aec}
-
-
- {18a9fba6-a508-4818-be63-244453b7a253}
-
-
- {9d6859f4-b01a-43d7-be84-2694076fc064}
-
-
- {9f657627-e879-4f7b-bb40-b65d9ba2cd12}
-
-
- {d6c66065-8df9-4897-a37f-1f3c31d0e7ce}
-
-
- {258406b7-fae3-494a-80ff-80410051be27}
-
-
- {39646be7-5dce-471c-ab93-1e3f7f6f9fe1}
-
-
- {fde3be82-3653-4519-88f5-8c16ddfb1531}
-
-
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Automation
-
-
- Commands
-
-
- Audio\Players
-
-
- Utilities
-
-
- Audio
-
-
- Features\Style editor
-
-
- Features\Font collector
-
-
- Video\UI
-
-
- Features\Export
-
-
- Features\Export
-
-
- Features\Export
-
-
- Automation\Lua
-
-
- Automation\Lua
-
-
- Features\Translation Assistant
-
-
- Features\Colour picker
-
-
- Video\UI
-
-
- Video\UI
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Features\Spell checker
-
-
- Features\Thesaurus
-
-
- Features\Styling assistant
-
-
- Video
-
-
- Video
-
-
- Video\UI
-
-
- Video\UI
-
-
- Video\UI
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\UI
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Audio
-
-
- AV support
-
-
- AV support
-
-
- AV support
-
-
- AV support
-
-
- AV support
-
-
- Video\Subtitle renderers
-
-
- Video\Subtitle renderers
-
-
- Features\Style editor
-
-
- Utilities
-
-
- Config
-
-
- Main UI
-
-
- Main UI
-
-
- Main UI\Grid
-
-
- Main UI\Grid
-
-
- Main UI\Edit box
-
-
- Main UI\Edit box
-
-
- Features\Import
-
-
- Features\Help
-
-
- Features\Colour picker
-
-
- Utilities
-
-
- Utilities
-
-
- Utilities
-
-
- Preferences
-
-
- Audio\Players
-
-
- Audio\Providers
-
-
- Main UI
-
-
- Main UI
-
-
- Main UI
-
-
- Features\Spell checker
-
-
- Video\Subtitle renderers
-
-
- Main UI
-
-
- Video\Providers
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Features\About box
-
-
- Features\Search-replace
-
-
- Utilities\UI utilities
-
-
- Utilities\UI utilities
-
-
- Utilities\Logging
-
-
- Utilities
-
-
- ASS
-
-
- ASS
-
-
- Utilities
-
-
- Features\Help
-
-
- Controls
-
-
- Utilities
-
-
- Utilities
-
-
- Controls
-
-
- Video\Visual tools
-
-
- Preferences
-
-
- Preferences
-
-
- Utilities\UI utilities
-
-
- Main UI\Edit box
-
-
- ASS
-
-
- Utilities\UI utilities
-
-
- Audio
-
-
- Controls
-
-
- ASS
-
-
- Preferences
-
-
- Features\Search-replace
-
-
- Utilities
-
-
- ASS
-
-
- Features\Resolution resampler
-
-
- Main UI\Grid
-
-
- Subtitle formats
-
-
- Video\Providers
-
-
- Main UI
-
-
- Features
-
-
- Utilities
-
-
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- Audio\Providers
-
-
- Audio\Providers
-
-
- Audio\Providers
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Audio\UI
-
-
- Commands
-
-
- Automation
-
-
- Commands
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\Providers
-
-
- Video\UI
-
-
- Video\UI
-
-
- Video\UI
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Subtitle formats
-
-
- Video\Subtitle renderers
-
-
- Video\Subtitle renderers
-
-
- Video\Subtitle renderers
-
-
- Commands
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Audio\Players
-
-
- Video
-
-
- Audio
-
-
- Features\Attachments
-
-
- Video\UI
-
-
- Video\UI
-
-
- Features\Style editor
-
-
- Features\Style editor
-
-
- Features\Font collector
-
-
- Features\Font collector
-
-
- Video\UI
-
-
- Video\UI
-
-
- Features\Export
-
-
- Features\Export
-
-
- Features\Export
-
-
- Features\Export
-
-
- Automation\Lua
-
-
- Automation\Lua
-
-
- Automation\Lua
-
-
- Automation\Lua
-
-
- Automation\UI
-
-
- Features\Paste Over
-
-
- Features\Shift Times
-
-
- Features\Translation Assistant
-
-
- Features\Colour picker
-
-
- Features\Colour picker
-
-
- Features\Karaoke copier
-
-
- Features\Font collector
-
-
- Video\UI
-
-
- Video\UI
-
-
- Features\Spell checker
-
-
- Features\Spell checker
-
-
- Features\Spell checker
-
-
- Features\Thesaurus
-
-
- Features\Resolution resampler
-
-
- Features\Import
-
-
- Features\Timing post-processor
-
-
- Features\Styling assistant
-
-
- Features\Update checker
-
-
- Video
-
-
- Video\UI
-
-
- Audio
-
-
- AV support
-
-
- AV support
-
-
- AV support
-
-
- AV support
-
-
- Features\Style editor
-
-
- Utilities
-
-
- Main UI
-
-
- Config
-
-
- Main UI
-
-
- Main UI\Grid
-
-
- Main UI\Grid
-
-
- Main UI\Edit box
-
-
- Main UI\Edit box
-
-
- Features\Import
-
-
- Features\Help
-
-
- Features\Colour picker
-
-
- Utilities
-
-
- Utilities
-
-
- Preferences
-
-
- Main UI
-
-
- Main UI
-
-
- Video\Visual tools
-
-
- Video\Visual tools
-
-
- Commands
-
-
- Features\About box
-
-
- Features\About box
-
-
- Features\Conditional select lines
-
-
- Features\Search-replace
-
-
- Utilities\UI utilities
-
-
- Utilities\UI utilities
-
-
- Utilities\UI utilities
-
-
- Utilities\Logging
-
-
- Commands
-
-
- Commands
-
-
- Utilities
-
-
- Features\File properties
-
-
- ASS
-
-
- ASS
-
-
- Commands
-
-
- Main UI
-
-
- Commands
-
-
- Commands
-
-
- Utilities
-
-
- Features\Help
-
-
- Controls
-
-
- Utilities
-
-
- Utilities
-
-
- Controls
-
-
- Video\Visual tools
-
-
- Preferences
-
-
- Preferences
-
-
- Commands
-
-
- Commands
-
-
- Commands
-
-
- Commands
-
-
- Commands
-
-
- Utilities\UI utilities
-
-
- ASS
-
-
- Commands
-
-
- Features\Autosave
-
-
- Features\Search-replace
-
-
- Utilities
-
-
- ASS
-
-
- Features\Resolution resampler
-
-
- Utilities\Logging
-
-
- Utilities\Logging
-
-
- Main UI
-
-
- Main UI\Edit box
-
-
- Main UI\Grid
-
-
- Subtitle formats
-
-
- Features\Resolution resampler
-
-
- Video\Providers
-
-
- Main UI
-
-
-
-
-
-
-
diff --git a/build/Aegisub/Aegisub.xml b/build/Aegisub/Aegisub.xml
deleted file mode 100644
index 9012b3dfb..000000000
--- a/build/Aegisub/Aegisub.xml
+++ /dev/null
@@ -1,254 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/Aegisub/standard-libraries.props b/build/Aegisub/standard-libraries.props
deleted file mode 100644
index b4f5074e1..000000000
--- a/build/Aegisub/standard-libraries.props
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
- <_PropertySheetDisplayName>Standard Libraries
-
-
-
-
- Usp10.lib;
- Vfw32.lib;
- advapi32.lib;
- bcrypt.lib;
- comctl32.lib;
- comdlg32.lib;
- gdi32.lib;
- kernel32.lib;
- ole32.lib;
- oleaut32.lib;
- opengl32.lib;
- rpcrt4.lib;
- shell32.lib;
- user32.lib;
- uuid.lib;
- wsock32.lib;
- %(AdditionalDependencies)
-
-
-
-
-
diff --git a/build/BuildTasks/BuildTasks.csproj b/build/BuildTasks/BuildTasks.csproj
deleted file mode 100644
index 4bbea1f2b..000000000
--- a/build/BuildTasks/BuildTasks.csproj
+++ /dev/null
@@ -1,81 +0,0 @@
-
-
-
-
- Debug
- AnyCPU
- {914A5B35-66B2-4293-BB6C-D93DA9BC68C6}
- Library
- Properties
- BuildTasks
- BuildTasks
- v4.5
- 512
- ..\..\..\
-
-
-
- $(AegisubBinaryDir)
- $(AegisubObjectDir)
-
-
- true
- full
- false
- DEBUG;TRACE
- prompt
- 4
-
-
- pdbonly
- true
- TRACE
- prompt
- 4
-
-
-
- ..\..\.nuget\lib\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll
-
-
- ..\..\.nuget\lib\LibGit2Sharp.0.17.0.0\lib\net35\LibGit2Sharp.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if not exist "$(TargetDir)NativeBinaries" md "$(TargetDir)NativeBinaries"
-if not exist "$(TargetDir)NativeBinaries\x86" md "$(TargetDir)NativeBinaries\x86"
-xcopy /s /y /d "$(SolutionDir).nuget\lib\LibGit2Sharp.0.17.0.0\lib\net35\NativeBinaries\x86\*.*" "$(TargetDir)NativeBinaries\x86"
-if not exist "$(TargetDir)NativeBinaries\amd64" md "$(TargetDir)NativeBinaries\amd64"
-xcopy /s /y /d "$(SolutionDir).nuget\lib\LibGit2Sharp.0.17.0.0\lib\net35\NativeBinaries\amd64\*.*" "$(TargetDir)NativeBinaries\amd64"
-
-
-
diff --git a/build/BuildTasks/DownloadTgzFile.cs b/build/BuildTasks/DownloadTgzFile.cs
deleted file mode 100644
index aee359034..000000000
--- a/build/BuildTasks/DownloadTgzFile.cs
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-namespace BuildTasks {
- public class DownloadTgzFile : Microsoft.Build.Utilities.Task {
- public string Url { get; set; }
- public string OutputFile { get; set; }
- public string Hash { get; set; }
-
- private void DownloadArchive(string url, string unpackDest) {
- var downloadStream = new System.Net.WebClient().OpenRead(url);
- var gzStream = new ICSharpCode.SharpZipLib.GZip.GZipInputStream(downloadStream);
- using (var file = System.IO.File.Create(unpackDest)) {
- gzStream.CopyTo(file);
- }
- }
-
- public override bool Execute() {
- try {
- using (var fs = System.IO.File.OpenRead(this.OutputFile)) {
- var hash = new System.Security.Cryptography.SHA1Managed().ComputeHash(fs);
- if (System.BitConverter.ToString(hash).Replace("-", "").ToLower() == this.Hash)
- return true;
- }
- }
- catch (System.IO.IOException) {
- // Need to download if file not present or not readable
- }
-
- try {
- DownloadArchive(this.Url, this.OutputFile);
- }
- catch (System.Exception e) {
- this.Log.LogErrorFromException(e);
- return false;
- }
-
- return true;
- }
- }
-}
diff --git a/build/BuildTasks/GitVersion.cs b/build/BuildTasks/GitVersion.cs
deleted file mode 100644
index ee29227b0..000000000
--- a/build/BuildTasks/GitVersion.cs
+++ /dev/null
@@ -1,117 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-using LibGit2Sharp;
-using System;
-using System.IO;
-using System.Linq;
-using System.Text.RegularExpressions;
-
-namespace BuildTasks {
- public class GitVersion : Microsoft.Build.Utilities.Task {
- public string Root { get; set; }
-
- private static ObjectId LastSVNCommit = new ObjectId("16cd907fe7482cb54a7374cd28b8501f138116be");
- private const string versionHTemplate =
-@"#define BUILD_GIT_VERSION_NUMBER {0}
-#define BUILD_GIT_VERSION_STRING ""{1}""
-#define TAGGED_RELEASE {2}
-#define INSTALLER_VERSION ""{3}""
-#define RESOURCE_BASE_VERSION {4}
-";
- private const string versionXmlTemplate =
-@"
-
-
- {0}
- {1}
-
-
-";
-
- private string UniqueAbbreviation(Repository repo, string full) {
- for (int len = 7; len < 40; ++len) {
- try {
- repo.Lookup(full.Substring(0, len));
- return full.Substring(0, len);
- }
- catch (AmbiguousSpecificationException) {
- continue;
- }
- }
- return full;
- }
-
- private void WriteIfChanged(string path, string template, params object[] args) {
- var body = string.Format(template, args).Replace("\r\n", "\n");
- try {
- var oldBody = File.ReadAllText(path);
- if (body != oldBody)
- File.WriteAllText(path, body);
- }
- catch (IOException) {
- File.WriteAllText(path, body);
- }
- }
-
- public override bool Execute() {
- string versionHPath = Root + "build/git_version.h";
- string versionXmlPath = Root + "build/git_version.xml";
-
- if (!Directory.Exists(Root + ".git")) {
- if (File.Exists(versionHPath)) {
- Log.LogMessage("Using cached version.h");
- return true;
- }
- Log.LogError("git repo not found and no cached git_version.h");
- return false;
- }
-
- int commits = 6962; // Rev ID when we switched away from SVN
- string installerVersion = "0.0.0";
- string resourceVersion = "0, 0, 0";
- string versionStr = null;
- bool taggedRelease = false;
- using (var repo = new Repository(Root + ".git")) {
- commits += repo.Commits.TakeWhile(c => !c.Id.Equals(LastSVNCommit)).Count();
-
- foreach (var tag in repo.Tags) {
- if (!tag.Target.Id.Equals(repo.Head.Tip.Id)) continue;
-
- taggedRelease = true;
- versionStr = tag.Name;
- if (versionStr.StartsWith("v")) versionStr = versionStr.Substring(1);
- if (Regex.Match(versionStr, @"(\d)\.(\d)\.(\d)").Success) {
- installerVersion = versionStr;
- resourceVersion = versionStr.Replace(".", ", ");
- }
- break;
- }
-
- if (versionStr == null) {
- string branch = repo.Head.Name ?? "(unnamed branch)";
- versionStr = string.Format("{0}-{1}-{2}", commits, branch,
- UniqueAbbreviation(repo, repo.Head.Tip.Sha.ToString()));
- }
- }
-
- WriteIfChanged(versionHPath, versionHTemplate, commits, versionStr, taggedRelease ? "1" : "0", installerVersion, resourceVersion);
- WriteIfChanged(versionXmlPath, versionXmlTemplate, commits, versionStr);
-
- return true;
- }
- }
-}
diff --git a/build/BuildTasks/Properties/AssemblyInfo.cs b/build/BuildTasks/Properties/AssemblyInfo.cs
deleted file mode 100644
index 5de350117..000000000
--- a/build/BuildTasks/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("BuildTasks")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("BuildTasks")]
-[assembly: AssemblyCopyright("Copyright © Thomas Goyne 2014")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-// The following GUID is for the ID of the typelib if this project is exposed to COM
-[assembly: Guid("157803fb-ca11-4802-8394-1ee152112561")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/build/BuildTasks/TarballProject.cs b/build/BuildTasks/TarballProject.cs
deleted file mode 100644
index f1b60d1d6..000000000
--- a/build/BuildTasks/TarballProject.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-using ICSharpCode.SharpZipLib.Tar;
-using System;
-using System.IO;
-using System.Security.Cryptography;
-
-namespace BuildTasks {
- public class TarballProject : Microsoft.Build.Utilities.Task {
- public string Url { get; set; }
- public string Root { get; set; }
- public string Hash { get; set; }
-
- private bool NeedsUpdate() {
- try {
- return Hash != File.ReadAllText(Path.Combine(Root, "aegisub.hash"));
- }
- catch (IOException) {
- return true;
- }
- }
-
- private void ExtractEntry(string destDir, TarEntry entry, ICSharpCode.SharpZipLib.Tar.TarInputStream stream) {
- string name = entry.Name;
- if (Path.IsPathRooted(name))
- name = name.Substring(Path.GetPathRoot(name).Length);
- name = name.Replace('/', Path.DirectorySeparatorChar);
- name = name.Substring(name.IndexOf(Path.DirectorySeparatorChar) + 1);
-
- string dest = Path.Combine(destDir, name);
- if (entry.IsDirectory)
- Directory.CreateDirectory(dest);
- else {
- Directory.CreateDirectory(Path.GetDirectoryName(dest));
- using (Stream outputStream = File.Create(dest)) {
- stream.CopyEntryContents(outputStream);
- }
- }
- }
-
- public override bool Execute() {
- if (!NeedsUpdate()) return true;
-
- try {
- var ms = new MemoryStream();
- var downloadStream = new System.Net.WebClient().OpenRead(Url);
- downloadStream.CopyTo(ms);
- ms.Seek(0, SeekOrigin.Begin);
-
- var hash = new SHA256Managed().ComputeHash(ms);
- if (BitConverter.ToString(hash).Replace("-", "").ToLower() != this.Hash) {
- Log.LogError("Got wrong hash for {0}", Url);
- return false;
- }
-
- try {
- Directory.Delete(Root, true);
- }
- catch (DirectoryNotFoundException) {
- // Obviously not an issue
- }
-
- ms.Seek(0, SeekOrigin.Begin);
- var bzStream = new ICSharpCode.SharpZipLib.BZip2.BZip2InputStream(ms);
- var tarStream = new ICSharpCode.SharpZipLib.Tar.TarInputStream(bzStream);
- while (true) {
- TarEntry entry = tarStream.GetNextEntry();
- if (entry == null) break;
- ExtractEntry(Root, entry, tarStream);
- }
-
- File.WriteAllText(Path.Combine(Root, "aegisub.hash"), Hash);
-
- return true;
- }
- catch (Exception e) {
- Log.LogErrorFromException(e);
- return false;
- }
- }
- }
-}
diff --git a/build/BuildTasks/packages.config b/build/BuildTasks/packages.config
deleted file mode 100644
index 3d28d4b1a..000000000
--- a/build/BuildTasks/packages.config
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/build/DefaultConfiguration.props b/build/DefaultConfiguration.props
deleted file mode 100644
index 504b2637e..000000000
--- a/build/DefaultConfiguration.props
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
- Anonymous
- true
- false
- HelperLibrary
- true
- true
- true
- false
- true
- vsfilter.lib
- false
- updates.aegisub.org
- /trunk
-
- $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\vendor))
- $(VendorRoot)\boost
- $(VendorRoot)\ffms2
- $(VendorRoot)\ffmpeg
- $(VendorRoot)\fftw
- $(VendorRoot)\freetype2
- $(VendorRoot)\fribidi
- $(VendorRoot)\googletest
- $(VendorRoot)\icu\source
- $(VendorRoot)\libass
- $(VendorRoot)\wxWidgets
- $(VendorRoot)\wxWidgets\src\zlib
-
-
diff --git a/build/PortableInstaller/PortableInstaller.vcxproj b/build/PortableInstaller/PortableInstaller.vcxproj
deleted file mode 100644
index 23e6b5efb..000000000
--- a/build/PortableInstaller/PortableInstaller.vcxproj
+++ /dev/null
@@ -1,147 +0,0 @@
-
-
-
- {5B0E9978-E76F-4BBC-8194-228323F59B53}
- PortableInstaller
-
-
-
-
-
-
-
-
- x86
- x64
- aegisub-$(GitVersionString)-portable-$(AegisubPlatformSuffix)
- $(AegisubSourceBase)packages\win_installer\output\$(FileName).exe
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\autoload\
-
-
- automation\demos\
-
-
- automation\demos\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\aegisub\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
- automation\include\
-
-
-
-
-
-
-
- csri\
-
-
-
-
- dictionaries\
-
-
- dictionaries\
-
-
-
-
-
-
-
-
diff --git a/build/PortableInstaller/PortableInstaller.vcxproj.filters b/build/PortableInstaller/PortableInstaller.vcxproj.filters
deleted file mode 100644
index cf2d140a8..000000000
--- a/build/PortableInstaller/PortableInstaller.vcxproj.filters
+++ /dev/null
@@ -1,127 +0,0 @@
-
-
-
-
- {2c1914de-647f-44ab-a698-a289b10ec29c}
-
-
- {862d477a-6db6-4ef0-b547-fa347b8d3aff}
-
-
- {d15cec98-3f6e-4713-a192-8cfdf1bac1d0}
-
-
- {61b13b0c-d018-48c6-8629-b44b83aa0dc8}
-
-
- {8880eb0c-4bf7-424d-9a79-73c20c2dd169}
-
-
- {743db065-17d0-4595-b241-9baa143dd68c}
-
-
- {8e48f676-fdad-4b6e-a146-58a300ee528d}
-
-
- {63aff439-dbde-4092-8dad-905a01c4be6c}
-
-
- {baf7aa4e-709d-4a03-aee1-b54749006b82}
-
-
-
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Autoload
-
-
- Automation\Demos
-
-
- Automation\Demos
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
- Automation\Include
-
-
-
-
- CSRI
-
-
- AssDraw
-
-
- AssDraw
-
-
- Avisynth
-
-
- Avisynth
-
-
- Avisynth
-
-
- Dictionaries
-
-
- Dictionaries
-
-
-
diff --git a/build/aegisub.props b/build/aegisub.props
deleted file mode 100644
index aa07badea..000000000
--- a/build/aegisub.props
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
- <_PropertySheetDisplayName>Aegisub project
-
-
-
-
- Debug
- Win32
-
-
- Debug
- x64
-
-
- Release
- Win32
-
-
- Release
- x64
-
-
-
-
-
-
- StaticLibrary
- DynamicLibrary
- Application
- true
- false
- true
- Unicode
- MultiByte
- v141
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/boost/boost.vcxproj b/build/boost/boost.vcxproj
deleted file mode 100644
index fff93799e..000000000
--- a/build/boost/boost.vcxproj
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
- {A649D828-A399-4D81-ADEF-94CFDBA7847F}
- boost
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
- 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)
-
-
-
-
-
-
- $(BuildGenerateSourcesTargets);
- CopyBoostHeaders
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {f934ab7b-186b-4e96-b20c-a58c38c1b818}
-
-
- {965054d2-44f2-4eb2-9879-051cc3d7ef08}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/boost/boost.vcxproj.filters b/build/boost/boost.vcxproj.filters
deleted file mode 100644
index 07cced6a6..000000000
--- a/build/boost/boost.vcxproj.filters
+++ /dev/null
@@ -1,222 +0,0 @@
-
-
-
-
- {e091980d-4374-41b8-aa61-1b07695e1b17}
-
-
- {be9f03e9-74a3-4705-97ee-105a404d8a10}
-
-
- {98abe5b9-aca6-4145-ab6d-e472e24eb522}
-
-
- {0dae6521-8684-471f-8d62-9fe3b9295b0c}
-
-
- {8c30568b-1ab1-4815-82e0-127ad31732d7}
-
-
- {47e5ad22-f37e-4512-a8e1-bcb5f04ad24b}
-
-
- {52190269-979d-429b-a825-8e68eacc2274}
-
-
- {829ed5fb-dcba-4d3e-910c-33341e0e6379}
-
-
- {c76e09db-3a8e-4eaf-bb9a-6bac6945fd6f}
-
-
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- regex
-
-
- system
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- filesystem
-
-
- regex
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\util
-
-
- locale\util
-
-
- locale\util
-
-
- locale\util
-
-
- locale\shared
-
-
- locale\shared
-
-
- locale\shared
-
-
- locale\encoding
-
-
- thread
-
-
- thread
-
-
-
-
-
- regex
-
-
- filesystem
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\icu
-
-
- locale\util
-
-
- locale\util
-
-
- locale\util
-
-
- locale\util
-
-
- locale\util
-
-
- locale\shared
-
-
- locale\shared
-
-
- locale\shared
-
-
- locale\encoding
-
-
-
-
- locale\encoding
-
-
- locale\encoding
-
-
- locale\encoding
-
-
-
\ No newline at end of file
diff --git a/build/boost/locale_stubs.cpp b/build/boost/locale_stubs.cpp
deleted file mode 100644
index 57c3e921c..000000000
--- a/build/boost/locale_stubs.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-#include
-#include
-#include
-
-// Boost.locale doesn't support partial builds of ICU, so provide stub versions
-// of some of the things we don't use
-namespace boost { namespace locale {
-namespace impl_icu {
-struct cdata {
- icu::Locale locale;
- std::string encoding;
- bool utf8;
-};
-
-std::locale create_formatting(std::locale const& in, cdata const& cd, character_facet_type type) {
- return in;
-}
-
-std::locale create_parsing(std::locale const& in, cdata const& cd, character_facet_type type) {
- return in;
-}
-
-std::locale create_calendar(std::locale const& in, cdata const& cd) {
- return in;
-}
-
-}
-namespace gnu_gettext {
-template<>
-message_format *create_messages_facet(messages_info const &info) {
- return nullptr;
-}
-
-template<>
-message_format *create_messages_facet(messages_info const &info) {
- return nullptr;
-}
-
-#ifdef BOOST_HAS_CHAR16_T
-template<>
-message_format *create_messages_facet(messages_info const &info) {
- return nullptr;
-}
-#endif
-
-#ifdef BOOST_HAS_CHAR32_T
-template<>
-message_format *create_messages_facet(messages_info const &info) {
- return nullptr;
-}
-#endif
-}
-} }
diff --git a/build/csrihelper/csrihelper.vcxproj b/build/csrihelper/csrihelper.vcxproj
deleted file mode 100644
index c4115f23b..000000000
--- a/build/csrihelper/csrihelper.vcxproj
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
-
- {C832EAF3-860D-4373-A02C-933626B47A5E}
- csrihelper
-
-
-
-
- lib
- ..\..\vendor\csri\
-
-
-
-
-
-
-
-
- CSRI_NO_EXPORT;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- $(SrcDir)include\;$(SrcDir)lib\;$(SrcDir)lib\win32\;%(AdditionalIncludeDirectories)
-
-
- $(SrcDir)include
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/csrihelper/csrihelper.vcxproj.filters b/build/csrihelper/csrihelper.vcxproj.filters
deleted file mode 100644
index 0dd2ca51c..000000000
--- a/build/csrihelper/csrihelper.vcxproj.filters
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
diff --git a/build/expat/expat.vcxproj b/build/expat/expat.vcxproj
deleted file mode 100644
index 399d6ec12..000000000
--- a/build/expat/expat.vcxproj
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
- {D6BA6815-0AAC-48FA-8372-D32CDE8BF07A}
- expat
-
-
-
-
- lib
- ..\..\vendor\wxWidgets\src\expat\lib
-
-
-
-
-
-
-
-
- COMPILED_FROM_DSP;%(PreprocessorDefinitions)
-
-
- $(SrcDir)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/expat/expat.vcxproj.filters b/build/expat/expat.vcxproj.filters
deleted file mode 100644
index 355924ee7..000000000
--- a/build/expat/expat.vcxproj.filters
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hh;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
\ No newline at end of file
diff --git a/build/ffmpeg/config-x64.asm b/build/ffmpeg/config-x64.asm
deleted file mode 100755
index ad2385c4d..000000000
--- a/build/ffmpeg/config-x64.asm
+++ /dev/null
@@ -1,2460 +0,0 @@
-; Automatically generated by configure - do not modify!
-%define ARCH_AARCH64 0
-%define ARCH_ALPHA 0
-%define ARCH_ARM 0
-%define ARCH_AVR32 0
-%define ARCH_AVR32_AP 0
-%define ARCH_AVR32_UC 0
-%define ARCH_BFIN 0
-%define ARCH_IA64 0
-%define ARCH_M68K 0
-%define ARCH_MIPS 0
-%define ARCH_MIPS64 0
-%define ARCH_PARISC 0
-%define ARCH_PPC 0
-%define ARCH_PPC64 0
-%define ARCH_S390 0
-%define ARCH_SH4 0
-%define ARCH_SPARC 0
-%define ARCH_SPARC64 0
-%define ARCH_TILEGX 0
-%define ARCH_TILEPRO 0
-%define ARCH_TOMI 0
-%define ARCH_X86 1
-%define ARCH_X86_32 0
-%define ARCH_X86_64 1
-%define HAVE_ARMV5TE 0
-%define HAVE_ARMV6 0
-%define HAVE_ARMV6T2 0
-%define HAVE_ARMV8 0
-%define HAVE_NEON 0
-%define HAVE_VFP 0
-%define HAVE_VFPV3 0
-%define HAVE_SETEND 0
-%define HAVE_ALTIVEC 0
-%define HAVE_DCBZL 0
-%define HAVE_LDBRX 0
-%define HAVE_POWER8 0
-%define HAVE_PPC4XX 0
-%define HAVE_VSX 0
-%define HAVE_AESNI 1
-%define HAVE_AMD3DNOW 1
-%define HAVE_AMD3DNOWEXT 1
-%define HAVE_AVX 1
-%define HAVE_AVX2 1
-%define HAVE_AVX512 1
-%define HAVE_FMA3 1
-%define HAVE_FMA4 1
-%define HAVE_MMX 1
-%define HAVE_MMXEXT 1
-%define HAVE_SSE 1
-%define HAVE_SSE2 1
-%define HAVE_SSE3 1
-%define HAVE_SSE4 1
-%define HAVE_SSE42 1
-%define HAVE_SSSE3 1
-%define HAVE_XOP 1
-%define HAVE_CPUNOP 1
-%define HAVE_I686 1
-%define HAVE_MIPSFPU 0
-%define HAVE_MIPS32R2 0
-%define HAVE_MIPS32R5 0
-%define HAVE_MIPS64R2 0
-%define HAVE_MIPS32R6 0
-%define HAVE_MIPS64R6 0
-%define HAVE_MIPSDSP 0
-%define HAVE_MIPSDSPR2 0
-%define HAVE_MSA 0
-%define HAVE_LOONGSON2 0
-%define HAVE_LOONGSON3 0
-%define HAVE_MMI 0
-%define HAVE_ARMV5TE_EXTERNAL 0
-%define HAVE_ARMV6_EXTERNAL 0
-%define HAVE_ARMV6T2_EXTERNAL 0
-%define HAVE_ARMV8_EXTERNAL 0
-%define HAVE_NEON_EXTERNAL 0
-%define HAVE_VFP_EXTERNAL 0
-%define HAVE_VFPV3_EXTERNAL 0
-%define HAVE_SETEND_EXTERNAL 0
-%define HAVE_ALTIVEC_EXTERNAL 0
-%define HAVE_DCBZL_EXTERNAL 0
-%define HAVE_LDBRX_EXTERNAL 0
-%define HAVE_POWER8_EXTERNAL 0
-%define HAVE_PPC4XX_EXTERNAL 0
-%define HAVE_VSX_EXTERNAL 0
-%define HAVE_AESNI_EXTERNAL 1
-%define HAVE_AMD3DNOW_EXTERNAL 1
-%define HAVE_AMD3DNOWEXT_EXTERNAL 1
-%define HAVE_AVX_EXTERNAL 1
-%define HAVE_AVX2_EXTERNAL 0
-%define HAVE_AVX512_EXTERNAL 0
-%define HAVE_FMA3_EXTERNAL 1
-%define HAVE_FMA4_EXTERNAL 1
-%define HAVE_MMX_EXTERNAL 1
-%define HAVE_MMXEXT_EXTERNAL 1
-%define HAVE_SSE_EXTERNAL 1
-%define HAVE_SSE2_EXTERNAL 1
-%define HAVE_SSE3_EXTERNAL 1
-%define HAVE_SSE4_EXTERNAL 1
-%define HAVE_SSE42_EXTERNAL 1
-%define HAVE_SSSE3_EXTERNAL 1
-%define HAVE_XOP_EXTERNAL 1
-%define HAVE_CPUNOP_EXTERNAL 0
-%define HAVE_I686_EXTERNAL 0
-%define HAVE_MIPSFPU_EXTERNAL 0
-%define HAVE_MIPS32R2_EXTERNAL 0
-%define HAVE_MIPS32R5_EXTERNAL 0
-%define HAVE_MIPS64R2_EXTERNAL 0
-%define HAVE_MIPS32R6_EXTERNAL 0
-%define HAVE_MIPS64R6_EXTERNAL 0
-%define HAVE_MIPSDSP_EXTERNAL 0
-%define HAVE_MIPSDSPR2_EXTERNAL 0
-%define HAVE_MSA_EXTERNAL 0
-%define HAVE_LOONGSON2_EXTERNAL 0
-%define HAVE_LOONGSON3_EXTERNAL 0
-%define HAVE_MMI_EXTERNAL 0
-%define HAVE_ARMV5TE_INLINE 0
-%define HAVE_ARMV6_INLINE 0
-%define HAVE_ARMV6T2_INLINE 0
-%define HAVE_ARMV8_INLINE 0
-%define HAVE_NEON_INLINE 0
-%define HAVE_VFP_INLINE 0
-%define HAVE_VFPV3_INLINE 0
-%define HAVE_SETEND_INLINE 0
-%define HAVE_ALTIVEC_INLINE 0
-%define HAVE_DCBZL_INLINE 0
-%define HAVE_LDBRX_INLINE 0
-%define HAVE_POWER8_INLINE 0
-%define HAVE_PPC4XX_INLINE 0
-%define HAVE_VSX_INLINE 0
-%define HAVE_AESNI_INLINE 0
-%define HAVE_AMD3DNOW_INLINE 0
-%define HAVE_AMD3DNOWEXT_INLINE 0
-%define HAVE_AVX_INLINE 0
-%define HAVE_AVX2_INLINE 0
-%define HAVE_AVX512_INLINE 0
-%define HAVE_FMA3_INLINE 0
-%define HAVE_FMA4_INLINE 0
-%define HAVE_MMX_INLINE 0
-%define HAVE_MMXEXT_INLINE 0
-%define HAVE_SSE_INLINE 0
-%define HAVE_SSE2_INLINE 0
-%define HAVE_SSE3_INLINE 0
-%define HAVE_SSE4_INLINE 0
-%define HAVE_SSE42_INLINE 0
-%define HAVE_SSSE3_INLINE 0
-%define HAVE_XOP_INLINE 0
-%define HAVE_CPUNOP_INLINE 0
-%define HAVE_I686_INLINE 0
-%define HAVE_MIPSFPU_INLINE 0
-%define HAVE_MIPS32R2_INLINE 0
-%define HAVE_MIPS32R5_INLINE 0
-%define HAVE_MIPS64R2_INLINE 0
-%define HAVE_MIPS32R6_INLINE 0
-%define HAVE_MIPS64R6_INLINE 0
-%define HAVE_MIPSDSP_INLINE 0
-%define HAVE_MIPSDSPR2_INLINE 0
-%define HAVE_MSA_INLINE 0
-%define HAVE_LOONGSON2_INLINE 0
-%define HAVE_LOONGSON3_INLINE 0
-%define HAVE_MMI_INLINE 0
-%define HAVE_ALIGNED_STACK 1
-%define HAVE_FAST_64BIT 1
-%define HAVE_FAST_CLZ 1
-%define HAVE_FAST_CMOV 1
-%define HAVE_LOCAL_ALIGNED 1
-%define HAVE_SIMD_ALIGN_16 1
-%define HAVE_SIMD_ALIGN_32 1
-%define HAVE_SIMD_ALIGN_64 1
-%define HAVE_ATOMIC_CAS_PTR 0
-%define HAVE_MACHINE_RW_BARRIER 0
-%define HAVE_MEMORYBARRIER 1
-%define HAVE_MM_EMPTY 0
-%define HAVE_RDTSC 1
-%define HAVE_SEM_TIMEDWAIT 0
-%define HAVE_SYNC_VAL_COMPARE_AND_SWAP 0
-%define HAVE_CABS 0
-%define HAVE_CEXP 0
-%define HAVE_INLINE_ASM 0
-%define HAVE_SYMVER 0
-%define HAVE_X86ASM 1
-%define HAVE_BIGENDIAN 0
-%define HAVE_FAST_UNALIGNED 1
-%define HAVE_ARPA_INET_H 0
-%define HAVE_ASM_TYPES_H 0
-%define HAVE_CDIO_PARANOIA_H 0
-%define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-%define HAVE_CUDA_H 0
-%define HAVE_DISPATCH_DISPATCH_H 0
-%define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-%define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-%define HAVE_DEV_IC_BT8XX_H 0
-%define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-%define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
-%define HAVE_DIRECT_H 1
-%define HAVE_DIRENT_H 0
-%define HAVE_DXGIDEBUG_H 1
-%define HAVE_DXVA_H 1
-%define HAVE_ES2_GL_H 0
-%define HAVE_GSM_H 0
-%define HAVE_IO_H 1
-%define HAVE_LINUX_PERF_EVENT_H 0
-%define HAVE_MACHINE_IOCTL_BT848_H 0
-%define HAVE_MACHINE_IOCTL_METEOR_H 0
-%define HAVE_MALLOC_H 1
-%define HAVE_OPENCV2_CORE_CORE_C_H 0
-%define HAVE_OPENGL_GL3_H 0
-%define HAVE_POLL_H 0
-%define HAVE_SYS_PARAM_H 0
-%define HAVE_SYS_RESOURCE_H 0
-%define HAVE_SYS_SELECT_H 0
-%define HAVE_SYS_SOUNDCARD_H 0
-%define HAVE_SYS_TIME_H 0
-%define HAVE_SYS_UN_H 0
-%define HAVE_SYS_VIDEOIO_H 0
-%define HAVE_TERMIOS_H 0
-%define HAVE_UDPLITE_H 0
-%define HAVE_UNISTD_H 0
-%define HAVE_VALGRIND_VALGRIND_H 0
-%define HAVE_WINDOWS_H 1
-%define HAVE_WINSOCK2_H 0
-%define HAVE_INTRINSICS_NEON 0
-%define HAVE_ATANF 1
-%define HAVE_ATAN2F 1
-%define HAVE_CBRT 1
-%define HAVE_CBRTF 1
-%define HAVE_COPYSIGN 1
-%define HAVE_COSF 1
-%define HAVE_ERF 1
-%define HAVE_EXP2 1
-%define HAVE_EXP2F 1
-%define HAVE_EXPF 1
-%define HAVE_HYPOT 1
-%define HAVE_ISFINITE 1
-%define HAVE_ISINF 1
-%define HAVE_ISNAN 1
-%define HAVE_LDEXPF 1
-%define HAVE_LLRINT 1
-%define HAVE_LLRINTF 1
-%define HAVE_LOG2 1
-%define HAVE_LOG2F 1
-%define HAVE_LOG10F 1
-%define HAVE_LRINT 1
-%define HAVE_LRINTF 1
-%define HAVE_POWF 1
-%define HAVE_RINT 1
-%define HAVE_ROUND 1
-%define HAVE_ROUNDF 1
-%define HAVE_SINF 1
-%define HAVE_TRUNC 1
-%define HAVE_TRUNCF 1
-%define HAVE_DOS_PATHS 1
-%define HAVE_LIBC_MSVCRT 1
-%define HAVE_MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS 0
-%define HAVE_SECTION_DATA_REL_RO 0
-%define HAVE_THREADS 1
-%define HAVE_UWP 0
-%define HAVE_WINRT 0
-%define HAVE_ACCESS 1
-%define HAVE_ALIGNED_MALLOC 1
-%define HAVE_ARC4RANDOM 0
-%define HAVE_CLOCK_GETTIME 0
-%define HAVE_CLOSESOCKET 0
-%define HAVE_COMMANDLINETOARGVW 1
-%define HAVE_FCNTL 0
-%define HAVE_GETADDRINFO 0
-%define HAVE_GETHRTIME 0
-%define HAVE_GETOPT 0
-%define HAVE_GETPROCESSAFFINITYMASK 1
-%define HAVE_GETPROCESSMEMORYINFO 1
-%define HAVE_GETPROCESSTIMES 1
-%define HAVE_GETRUSAGE 0
-%define HAVE_GETSYSTEMTIMEASFILETIME 1
-%define HAVE_GETTIMEOFDAY 0
-%define HAVE_GLOB 0
-%define HAVE_GLXGETPROCADDRESS 0
-%define HAVE_GMTIME_R 0
-%define HAVE_INET_ATON 0
-%define HAVE_ISATTY 1
-%define HAVE_KBHIT 1
-%define HAVE_LOCALTIME_R 0
-%define HAVE_LSTAT 0
-%define HAVE_LZO1X_999_COMPRESS 0
-%define HAVE_MACH_ABSOLUTE_TIME 0
-%define HAVE_MAPVIEWOFFILE 1
-%define HAVE_MEMALIGN 0
-%define HAVE_MKSTEMP 0
-%define HAVE_MMAP 0
-%define HAVE_MPROTECT 0
-%define HAVE_NANOSLEEP 0
-%define HAVE_PEEKNAMEDPIPE 1
-%define HAVE_POSIX_MEMALIGN 0
-%define HAVE_PTHREAD_CANCEL 0
-%define HAVE_SCHED_GETAFFINITY 0
-%define HAVE_SECITEMIMPORT 0
-%define HAVE_SETCONSOLETEXTATTRIBUTE 1
-%define HAVE_SETCONSOLECTRLHANDLER 1
-%define HAVE_SETMODE 1
-%define HAVE_SETRLIMIT 0
-%define HAVE_SLEEP 1
-%define HAVE_STRERROR_R 0
-%define HAVE_SYSCONF 0
-%define HAVE_SYSCTL 0
-%define HAVE_USLEEP 0
-%define HAVE_UTGETOSTYPEFROMSTRING 0
-%define HAVE_VIRTUALALLOC 1
-%define HAVE_WGLGETPROCADDRESS 0
-%define HAVE_BCRYPT 1
-%define HAVE_VAAPI_DRM 0
-%define HAVE_VAAPI_X11 0
-%define HAVE_VDPAU_X11 0
-%define HAVE_PTHREADS 0
-%define HAVE_OS2THREADS 0
-%define HAVE_W32THREADS 1
-%define HAVE_AS_ARCH_DIRECTIVE 0
-%define HAVE_AS_DN_DIRECTIVE 0
-%define HAVE_AS_FPU_DIRECTIVE 0
-%define HAVE_AS_FUNC 0
-%define HAVE_AS_OBJECT_ARCH 0
-%define HAVE_ASM_MOD_Q 0
-%define HAVE_BLOCKS_EXTENSION 0
-%define HAVE_EBP_AVAILABLE 0
-%define HAVE_EBX_AVAILABLE 0
-%define HAVE_GNU_AS 0
-%define HAVE_GNU_WINDRES 0
-%define HAVE_IBM_ASM 0
-%define HAVE_INLINE_ASM_DIRECT_SYMBOL_REFS 0
-%define HAVE_INLINE_ASM_LABELS 0
-%define HAVE_INLINE_ASM_NONLOCAL_LABELS 0
-%define HAVE_PRAGMA_DEPRECATED 1
-%define HAVE_RSYNC_CONTIMEOUT 0
-%define HAVE_SYMVER_ASM_LABEL 0
-%define HAVE_SYMVER_GNU_ASM 0
-%define HAVE_VFP_ARGS 0
-%define HAVE_XFORM_ASM 0
-%define HAVE_XMM_CLOBBERS 0
-%define HAVE_KCMVIDEOCODECTYPE_HEVC 0
-%define HAVE_SOCKLEN_T 0
-%define HAVE_STRUCT_ADDRINFO 0
-%define HAVE_STRUCT_GROUP_SOURCE_REQ 0
-%define HAVE_STRUCT_IP_MREQ_SOURCE 0
-%define HAVE_STRUCT_IPV6_MREQ 0
-%define HAVE_STRUCT_MSGHDR_MSG_FLAGS 0
-%define HAVE_STRUCT_POLLFD 0
-%define HAVE_STRUCT_RUSAGE_RU_MAXRSS 0
-%define HAVE_STRUCT_SCTP_EVENT_SUBSCRIBE 0
-%define HAVE_STRUCT_SOCKADDR_IN6 0
-%define HAVE_STRUCT_SOCKADDR_SA_LEN 0
-%define HAVE_STRUCT_SOCKADDR_STORAGE 0
-%define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-%define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-%define HAVE_MAKEINFO 1
-%define HAVE_MAKEINFO_HTML 0
-%define HAVE_OPENCL_D3D11 0
-%define HAVE_OPENCL_DRM_ARM 0
-%define HAVE_OPENCL_DRM_BEIGNET 0
-%define HAVE_OPENCL_DXVA2 0
-%define HAVE_OPENCL_VAAPI_BEIGNET 0
-%define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-%define HAVE_PERL 1
-%define HAVE_POD2MAN 0
-%define HAVE_TEXI2HTML 0
-%define CONFIG_DOC 0
-%define CONFIG_HTMLPAGES 0
-%define CONFIG_MANPAGES 0
-%define CONFIG_PODPAGES 1
-%define CONFIG_TXTPAGES 1
-%define CONFIG_AVIO_DIR_CMD_EXAMPLE 1
-%define CONFIG_AVIO_READING_EXAMPLE 1
-%define CONFIG_DECODE_AUDIO_EXAMPLE 1
-%define CONFIG_DECODE_VIDEO_EXAMPLE 1
-%define CONFIG_DEMUXING_DECODING_EXAMPLE 1
-%define CONFIG_ENCODE_AUDIO_EXAMPLE 1
-%define CONFIG_ENCODE_VIDEO_EXAMPLE 1
-%define CONFIG_EXTRACT_MVS_EXAMPLE 1
-%define CONFIG_FILTER_AUDIO_EXAMPLE 0
-%define CONFIG_FILTERING_AUDIO_EXAMPLE 0
-%define CONFIG_FILTERING_VIDEO_EXAMPLE 0
-%define CONFIG_HTTP_MULTICLIENT_EXAMPLE 0
-%define CONFIG_HW_DECODE_EXAMPLE 1
-%define CONFIG_METADATA_EXAMPLE 1
-%define CONFIG_MUXING_EXAMPLE 1
-%define CONFIG_QSVDEC_EXAMPLE 0
-%define CONFIG_REMUXING_EXAMPLE 1
-%define CONFIG_RESAMPLING_AUDIO_EXAMPLE 1
-%define CONFIG_SCALING_VIDEO_EXAMPLE 1
-%define CONFIG_TRANSCODE_AAC_EXAMPLE 1
-%define CONFIG_TRANSCODING_EXAMPLE 0
-%define CONFIG_VAAPI_ENCODE_EXAMPLE 0
-%define CONFIG_VAAPI_TRANSCODE_EXAMPLE 0
-%define CONFIG_AVISYNTH 0
-%define CONFIG_FREI0R 0
-%define CONFIG_LIBCDIO 0
-%define CONFIG_LIBDAVS2 0
-%define CONFIG_LIBRUBBERBAND 0
-%define CONFIG_LIBVIDSTAB 0
-%define CONFIG_LIBX264 0
-%define CONFIG_LIBX265 0
-%define CONFIG_LIBXAVS 0
-%define CONFIG_LIBXAVS2 0
-%define CONFIG_LIBXVID 0
-%define CONFIG_DECKLINK 0
-%define CONFIG_LIBNDI_NEWTEK 0
-%define CONFIG_LIBFDK_AAC 0
-%define CONFIG_OPENSSL 0
-%define CONFIG_LIBTLS 0
-%define CONFIG_GMP 0
-%define CONFIG_LIBLENSFUN 0
-%define CONFIG_LIBOPENCORE_AMRNB 0
-%define CONFIG_LIBOPENCORE_AMRWB 0
-%define CONFIG_LIBVMAF 0
-%define CONFIG_LIBVO_AMRWBENC 0
-%define CONFIG_MBEDTLS 0
-%define CONFIG_RKMPP 0
-%define CONFIG_LIBSMBCLIENT 0
-%define CONFIG_CHROMAPRINT 0
-%define CONFIG_GCRYPT 0
-%define CONFIG_GNUTLS 0
-%define CONFIG_JNI 0
-%define CONFIG_LADSPA 0
-%define CONFIG_LIBAOM 0
-%define CONFIG_LIBASS 0
-%define CONFIG_LIBBLURAY 0
-%define CONFIG_LIBBS2B 0
-%define CONFIG_LIBCACA 0
-%define CONFIG_LIBCELT 0
-%define CONFIG_LIBCODEC2 0
-%define CONFIG_LIBDAV1D 0
-%define CONFIG_LIBDC1394 0
-%define CONFIG_LIBDRM 0
-%define CONFIG_LIBFLITE 0
-%define CONFIG_LIBFONTCONFIG 0
-%define CONFIG_LIBFREETYPE 0
-%define CONFIG_LIBFRIBIDI 0
-%define CONFIG_LIBGME 0
-%define CONFIG_LIBGSM 0
-%define CONFIG_LIBIEC61883 0
-%define CONFIG_LIBILBC 0
-%define CONFIG_LIBJACK 0
-%define CONFIG_LIBKLVANC 0
-%define CONFIG_LIBKVAZAAR 0
-%define CONFIG_LIBMODPLUG 0
-%define CONFIG_LIBMP3LAME 0
-%define CONFIG_LIBMYSOFA 0
-%define CONFIG_LIBOPENCV 0
-%define CONFIG_LIBOPENH264 0
-%define CONFIG_LIBOPENJPEG 0
-%define CONFIG_LIBOPENMPT 0
-%define CONFIG_LIBOPUS 0
-%define CONFIG_LIBPULSE 0
-%define CONFIG_LIBRSVG 0
-%define CONFIG_LIBRTMP 0
-%define CONFIG_LIBSHINE 0
-%define CONFIG_LIBSMBCLIENT 0
-%define CONFIG_LIBSNAPPY 0
-%define CONFIG_LIBSOXR 0
-%define CONFIG_LIBSPEEX 0
-%define CONFIG_LIBSRT 0
-%define CONFIG_LIBSSH 0
-%define CONFIG_LIBTENSORFLOW 0
-%define CONFIG_LIBTESSERACT 0
-%define CONFIG_LIBTHEORA 0
-%define CONFIG_LIBTWOLAME 0
-%define CONFIG_LIBV4L2 0
-%define CONFIG_LIBVORBIS 0
-%define CONFIG_LIBVPX 0
-%define CONFIG_LIBWAVPACK 0
-%define CONFIG_LIBWEBP 0
-%define CONFIG_LIBXML2 0
-%define CONFIG_LIBZIMG 0
-%define CONFIG_LIBZMQ 0
-%define CONFIG_LIBZVBI 0
-%define CONFIG_LV2 0
-%define CONFIG_MEDIACODEC 0
-%define CONFIG_OPENAL 0
-%define CONFIG_OPENGL 0
-%define CONFIG_VAPOURSYNTH 0
-%define CONFIG_ALSA 0
-%define CONFIG_APPKIT 0
-%define CONFIG_AVFOUNDATION 0
-%define CONFIG_BZLIB 0
-%define CONFIG_COREIMAGE 0
-%define CONFIG_ICONV 0
-%define CONFIG_LIBXCB 0
-%define CONFIG_LIBXCB_SHM 0
-%define CONFIG_LIBXCB_SHAPE 0
-%define CONFIG_LIBXCB_XFIXES 0
-%define CONFIG_LZMA 0
-%define CONFIG_SCHANNEL 1
-%define CONFIG_SDL2 0
-%define CONFIG_SECURETRANSPORT 0
-%define CONFIG_SNDIO 0
-%define CONFIG_XLIB 0
-%define CONFIG_ZLIB 1
-%define CONFIG_CUDA_SDK 0
-%define CONFIG_LIBNPP 0
-%define CONFIG_LIBMFX 0
-%define CONFIG_MMAL 0
-%define CONFIG_OMX 0
-%define CONFIG_OPENCL 0
-%define CONFIG_AMF 0
-%define CONFIG_AUDIOTOOLBOX 0
-%define CONFIG_CRYSTALHD 0
-%define CONFIG_CUDA 0
-%define CONFIG_CUVID 0
-%define CONFIG_D3D11VA 0
-%define CONFIG_DXVA2 0
-%define CONFIG_FFNVCODEC 0
-%define CONFIG_NVDEC 0
-%define CONFIG_NVENC 0
-%define CONFIG_VAAPI 0
-%define CONFIG_VDPAU 0
-%define CONFIG_VIDEOTOOLBOX 0
-%define CONFIG_V4L2_M2M 0
-%define CONFIG_XVMC 0
-%define CONFIG_FTRAPV 0
-%define CONFIG_GRAY 0
-%define CONFIG_HARDCODED_TABLES 0
-%define CONFIG_OMX_RPI 0
-%define CONFIG_RUNTIME_CPUDETECT 1
-%define CONFIG_SAFE_BITSTREAM_READER 1
-%define CONFIG_SHARED 0
-%define CONFIG_SMALL 1
-%define CONFIG_STATIC 1
-%define CONFIG_SWSCALE_ALPHA 1
-%define CONFIG_GPL 1
-%define CONFIG_NONFREE 0
-%define CONFIG_VERSION3 0
-%define CONFIG_AVDEVICE 1
-%define CONFIG_AVFILTER 0
-%define CONFIG_SWSCALE 1
-%define CONFIG_POSTPROC 0
-%define CONFIG_AVFORMAT 1
-%define CONFIG_AVCODEC 1
-%define CONFIG_SWRESAMPLE 1
-%define CONFIG_AVRESAMPLE 0
-%define CONFIG_AVUTIL 1
-%define CONFIG_FFPLAY 0
-%define CONFIG_FFPROBE 0
-%define CONFIG_FFMPEG 0
-%define CONFIG_DCT 1
-%define CONFIG_DWT 1
-%define CONFIG_ERROR_RESILIENCE 1
-%define CONFIG_FAAN 1
-%define CONFIG_FAST_UNALIGNED 1
-%define CONFIG_FFT 1
-%define CONFIG_LSP 1
-%define CONFIG_LZO 1
-%define CONFIG_MDCT 1
-%define CONFIG_PIXELUTILS 0
-%define CONFIG_NETWORK 0
-%define CONFIG_RDFT 1
-%define CONFIG_AUTODETECT 0
-%define CONFIG_FONTCONFIG 0
-%define CONFIG_LINUX_PERF 0
-%define CONFIG_MEMORY_POISONING 0
-%define CONFIG_NEON_CLOBBER_TEST 0
-%define CONFIG_OSSFUZZ 0
-%define CONFIG_PIC 0
-%define CONFIG_THUMB 0
-%define CONFIG_VALGRIND_BACKTRACE 0
-%define CONFIG_XMM_CLOBBER_TEST 0
-%define CONFIG_BSFS 1
-%define CONFIG_DECODERS 1
-%define CONFIG_ENCODERS 0
-%define CONFIG_HWACCELS 0
-%define CONFIG_PARSERS 1
-%define CONFIG_INDEVS 0
-%define CONFIG_OUTDEVS 0
-%define CONFIG_FILTERS 0
-%define CONFIG_DEMUXERS 1
-%define CONFIG_MUXERS 0
-%define CONFIG_PROTOCOLS 1
-%define CONFIG_AANDCTTABLES 1
-%define CONFIG_AC3DSP 1
-%define CONFIG_ADTS_HEADER 1
-%define CONFIG_AUDIO_FRAME_QUEUE 1
-%define CONFIG_AUDIODSP 1
-%define CONFIG_BLOCKDSP 1
-%define CONFIG_BSWAPDSP 1
-%define CONFIG_CABAC 1
-%define CONFIG_CBS 1
-%define CONFIG_CBS_AV1 1
-%define CONFIG_CBS_H264 1
-%define CONFIG_CBS_H265 1
-%define CONFIG_CBS_JPEG 0
-%define CONFIG_CBS_MPEG2 1
-%define CONFIG_CBS_VP9 1
-%define CONFIG_DIRAC_PARSE 1
-%define CONFIG_DNN 0
-%define CONFIG_DVPROFILE 1
-%define CONFIG_EXIF 1
-%define CONFIG_FAANDCT 1
-%define CONFIG_FAANIDCT 1
-%define CONFIG_FDCTDSP 1
-%define CONFIG_FLACDSP 1
-%define CONFIG_FMTCONVERT 1
-%define CONFIG_FRAME_THREAD_ENCODER 0
-%define CONFIG_G722DSP 1
-%define CONFIG_GOLOMB 1
-%define CONFIG_GPLV3 0
-%define CONFIG_H263DSP 1
-%define CONFIG_H264CHROMA 1
-%define CONFIG_H264DSP 1
-%define CONFIG_H264PARSE 1
-%define CONFIG_H264PRED 1
-%define CONFIG_H264QPEL 1
-%define CONFIG_HEVCPARSE 1
-%define CONFIG_HPELDSP 1
-%define CONFIG_HUFFMAN 1
-%define CONFIG_HUFFYUVDSP 1
-%define CONFIG_HUFFYUVENCDSP 0
-%define CONFIG_IDCTDSP 1
-%define CONFIG_IIRFILTER 0
-%define CONFIG_MDCT15 1
-%define CONFIG_INTRAX8 1
-%define CONFIG_ISO_MEDIA 1
-%define CONFIG_IVIDSP 0
-%define CONFIG_JPEGTABLES 1
-%define CONFIG_LGPLV3 0
-%define CONFIG_LIBX262 0
-%define CONFIG_LLAUDDSP 1
-%define CONFIG_LLVIDDSP 1
-%define CONFIG_LLVIDENCDSP 0
-%define CONFIG_LPC 0
-%define CONFIG_LZF 1
-%define CONFIG_ME_CMP 1
-%define CONFIG_MPEG_ER 1
-%define CONFIG_MPEGAUDIO 1
-%define CONFIG_MPEGAUDIODSP 1
-%define CONFIG_MPEGAUDIOHEADER 1
-%define CONFIG_MPEGVIDEO 1
-%define CONFIG_MPEGVIDEOENC 1
-%define CONFIG_MSS34DSP 1
-%define CONFIG_PIXBLOCKDSP 1
-%define CONFIG_QPELDSP 1
-%define CONFIG_QSV 0
-%define CONFIG_QSVDEC 0
-%define CONFIG_QSVENC 0
-%define CONFIG_QSVVPP 0
-%define CONFIG_RANGECODER 1
-%define CONFIG_RIFFDEC 1
-%define CONFIG_RIFFENC 0
-%define CONFIG_RTPDEC 0
-%define CONFIG_RTPENC_CHAIN 0
-%define CONFIG_RV34DSP 1
-%define CONFIG_SCENE_SAD 0
-%define CONFIG_SINEWIN 1
-%define CONFIG_SNAPPY 1
-%define CONFIG_SRTP 0
-%define CONFIG_STARTCODE 1
-%define CONFIG_TEXTUREDSP 1
-%define CONFIG_TEXTUREDSPENC 0
-%define CONFIG_TPELDSP 1
-%define CONFIG_VAAPI_1 0
-%define CONFIG_VAAPI_ENCODE 0
-%define CONFIG_VC1DSP 1
-%define CONFIG_VIDEODSP 1
-%define CONFIG_VP3DSP 1
-%define CONFIG_VP56DSP 1
-%define CONFIG_VP8DSP 1
-%define CONFIG_WMA_FREQS 1
-%define CONFIG_WMV2DSP 1
-%define CONFIG_AAC_ADTSTOASC_BSF 1
-%define CONFIG_AV1_METADATA_BSF 1
-%define CONFIG_CHOMP_BSF 1
-%define CONFIG_DUMP_EXTRADATA_BSF 1
-%define CONFIG_DCA_CORE_BSF 1
-%define CONFIG_EAC3_CORE_BSF 1
-%define CONFIG_EXTRACT_EXTRADATA_BSF 1
-%define CONFIG_FILTER_UNITS_BSF 1
-%define CONFIG_H264_METADATA_BSF 1
-%define CONFIG_H264_MP4TOANNEXB_BSF 1
-%define CONFIG_H264_REDUNDANT_PPS_BSF 1
-%define CONFIG_HAPQA_EXTRACT_BSF 1
-%define CONFIG_HEVC_METADATA_BSF 1
-%define CONFIG_HEVC_MP4TOANNEXB_BSF 1
-%define CONFIG_IMX_DUMP_HEADER_BSF 1
-%define CONFIG_MJPEG2JPEG_BSF 1
-%define CONFIG_MJPEGA_DUMP_HEADER_BSF 1
-%define CONFIG_MP3_HEADER_DECOMPRESS_BSF 1
-%define CONFIG_MPEG2_METADATA_BSF 1
-%define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 1
-%define CONFIG_MOV2TEXTSUB_BSF 1
-%define CONFIG_NOISE_BSF 1
-%define CONFIG_NULL_BSF 1
-%define CONFIG_PRORES_METADATA_BSF 1
-%define CONFIG_REMOVE_EXTRADATA_BSF 1
-%define CONFIG_TEXT2MOVSUB_BSF 1
-%define CONFIG_TRACE_HEADERS_BSF 1
-%define CONFIG_VP9_METADATA_BSF 1
-%define CONFIG_VP9_RAW_REORDER_BSF 1
-%define CONFIG_VP9_SUPERFRAME_BSF 1
-%define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 1
-%define CONFIG_AASC_DECODER 1
-%define CONFIG_AIC_DECODER 1
-%define CONFIG_ALIAS_PIX_DECODER 1
-%define CONFIG_AMV_DECODER 1
-%define CONFIG_ANM_DECODER 1
-%define CONFIG_ANSI_DECODER 1
-%define CONFIG_APNG_DECODER 1
-%define CONFIG_ASV1_DECODER 1
-%define CONFIG_ASV2_DECODER 1
-%define CONFIG_AURA_DECODER 1
-%define CONFIG_AURA2_DECODER 1
-%define CONFIG_AVRP_DECODER 1
-%define CONFIG_AVRN_DECODER 1
-%define CONFIG_AVS_DECODER 1
-%define CONFIG_AVUI_DECODER 1
-%define CONFIG_AYUV_DECODER 1
-%define CONFIG_BETHSOFTVID_DECODER 1
-%define CONFIG_BFI_DECODER 1
-%define CONFIG_BINK_DECODER 1
-%define CONFIG_BITPACKED_DECODER 1
-%define CONFIG_BMP_DECODER 1
-%define CONFIG_BMV_VIDEO_DECODER 1
-%define CONFIG_BRENDER_PIX_DECODER 1
-%define CONFIG_C93_DECODER 1
-%define CONFIG_CAVS_DECODER 1
-%define CONFIG_CDGRAPHICS_DECODER 1
-%define CONFIG_CDXL_DECODER 1
-%define CONFIG_CFHD_DECODER 1
-%define CONFIG_CINEPAK_DECODER 1
-%define CONFIG_CLEARVIDEO_DECODER 1
-%define CONFIG_CLJR_DECODER 1
-%define CONFIG_CLLC_DECODER 1
-%define CONFIG_COMFORTNOISE_DECODER 1
-%define CONFIG_CPIA_DECODER 1
-%define CONFIG_CSCD_DECODER 1
-%define CONFIG_CYUV_DECODER 1
-%define CONFIG_DDS_DECODER 1
-%define CONFIG_DFA_DECODER 1
-%define CONFIG_DIRAC_DECODER 1
-%define CONFIG_DNXHD_DECODER 1
-%define CONFIG_DPX_DECODER 1
-%define CONFIG_DSICINVIDEO_DECODER 1
-%define CONFIG_DVAUDIO_DECODER 1
-%define CONFIG_DVVIDEO_DECODER 1
-%define CONFIG_DXA_DECODER 1
-%define CONFIG_DXTORY_DECODER 1
-%define CONFIG_DXV_DECODER 1
-%define CONFIG_EACMV_DECODER 1
-%define CONFIG_EAMAD_DECODER 1
-%define CONFIG_EATGQ_DECODER 1
-%define CONFIG_EATGV_DECODER 1
-%define CONFIG_EATQI_DECODER 1
-%define CONFIG_EIGHTBPS_DECODER 1
-%define CONFIG_EIGHTSVX_EXP_DECODER 1
-%define CONFIG_EIGHTSVX_FIB_DECODER 1
-%define CONFIG_ESCAPE124_DECODER 1
-%define CONFIG_ESCAPE130_DECODER 1
-%define CONFIG_EXR_DECODER 1
-%define CONFIG_FFV1_DECODER 1
-%define CONFIG_FFVHUFF_DECODER 1
-%define CONFIG_FIC_DECODER 1
-%define CONFIG_FITS_DECODER 1
-%define CONFIG_FLASHSV_DECODER 1
-%define CONFIG_FLASHSV2_DECODER 1
-%define CONFIG_FLIC_DECODER 1
-%define CONFIG_FLV_DECODER 1
-%define CONFIG_FMVC_DECODER 1
-%define CONFIG_FOURXM_DECODER 1
-%define CONFIG_FRAPS_DECODER 1
-%define CONFIG_FRWU_DECODER 1
-%define CONFIG_G2M_DECODER 1
-%define CONFIG_GDV_DECODER 1
-%define CONFIG_GIF_DECODER 1
-%define CONFIG_H261_DECODER 1
-%define CONFIG_H263_DECODER 1
-%define CONFIG_H263I_DECODER 1
-%define CONFIG_H263P_DECODER 1
-%define CONFIG_H263_V4L2M2M_DECODER 0
-%define CONFIG_H264_DECODER 1
-%define CONFIG_H264_CRYSTALHD_DECODER 0
-%define CONFIG_H264_V4L2M2M_DECODER 0
-%define CONFIG_H264_MEDIACODEC_DECODER 0
-%define CONFIG_H264_MMAL_DECODER 0
-%define CONFIG_H264_QSV_DECODER 0
-%define CONFIG_H264_RKMPP_DECODER 0
-%define CONFIG_HAP_DECODER 1
-%define CONFIG_HEVC_DECODER 1
-%define CONFIG_HEVC_QSV_DECODER 0
-%define CONFIG_HEVC_RKMPP_DECODER 0
-%define CONFIG_HEVC_V4L2M2M_DECODER 0
-%define CONFIG_HNM4_VIDEO_DECODER 1
-%define CONFIG_HQ_HQA_DECODER 1
-%define CONFIG_HQX_DECODER 1
-%define CONFIG_HUFFYUV_DECODER 1
-%define CONFIG_IDCIN_DECODER 1
-%define CONFIG_IFF_ILBM_DECODER 1
-%define CONFIG_IMM4_DECODER 1
-%define CONFIG_INDEO2_DECODER 0
-%define CONFIG_INDEO3_DECODER 0
-%define CONFIG_INDEO4_DECODER 0
-%define CONFIG_INDEO5_DECODER 0
-%define CONFIG_INTERPLAY_VIDEO_DECODER 1
-%define CONFIG_JPEG2000_DECODER 1
-%define CONFIG_JPEGLS_DECODER 1
-%define CONFIG_JV_DECODER 1
-%define CONFIG_KGV1_DECODER 1
-%define CONFIG_KMVC_DECODER 1
-%define CONFIG_LAGARITH_DECODER 1
-%define CONFIG_LOCO_DECODER 1
-%define CONFIG_M101_DECODER 1
-%define CONFIG_MAGICYUV_DECODER 1
-%define CONFIG_MDEC_DECODER 1
-%define CONFIG_MIMIC_DECODER 1
-%define CONFIG_MJPEG_DECODER 1
-%define CONFIG_MJPEGB_DECODER 1
-%define CONFIG_MMVIDEO_DECODER 1
-%define CONFIG_MOTIONPIXELS_DECODER 1
-%define CONFIG_MPEG1VIDEO_DECODER 1
-%define CONFIG_MPEG2VIDEO_DECODER 1
-%define CONFIG_MPEG4_DECODER 1
-%define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-%define CONFIG_MPEG4_V4L2M2M_DECODER 0
-%define CONFIG_MPEG4_MMAL_DECODER 0
-%define CONFIG_MPEGVIDEO_DECODER 1
-%define CONFIG_MPEG1_V4L2M2M_DECODER 0
-%define CONFIG_MPEG2_MMAL_DECODER 0
-%define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-%define CONFIG_MPEG2_V4L2M2M_DECODER 0
-%define CONFIG_MPEG2_QSV_DECODER 0
-%define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-%define CONFIG_MSA1_DECODER 1
-%define CONFIG_MSCC_DECODER 1
-%define CONFIG_MSMPEG4V1_DECODER 1
-%define CONFIG_MSMPEG4V2_DECODER 1
-%define CONFIG_MSMPEG4V3_DECODER 1
-%define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-%define CONFIG_MSRLE_DECODER 1
-%define CONFIG_MSS1_DECODER 1
-%define CONFIG_MSS2_DECODER 1
-%define CONFIG_MSVIDEO1_DECODER 1
-%define CONFIG_MSZH_DECODER 1
-%define CONFIG_MTS2_DECODER 1
-%define CONFIG_MVC1_DECODER 1
-%define CONFIG_MVC2_DECODER 1
-%define CONFIG_MWSC_DECODER 1
-%define CONFIG_MXPEG_DECODER 1
-%define CONFIG_NUV_DECODER 1
-%define CONFIG_PAF_VIDEO_DECODER 1
-%define CONFIG_PAM_DECODER 1
-%define CONFIG_PBM_DECODER 1
-%define CONFIG_PCX_DECODER 1
-%define CONFIG_PGM_DECODER 1
-%define CONFIG_PGMYUV_DECODER 1
-%define CONFIG_PICTOR_DECODER 1
-%define CONFIG_PIXLET_DECODER 1
-%define CONFIG_PNG_DECODER 1
-%define CONFIG_PPM_DECODER 1
-%define CONFIG_PRORES_DECODER 1
-%define CONFIG_PROSUMER_DECODER 1
-%define CONFIG_PSD_DECODER 1
-%define CONFIG_PTX_DECODER 1
-%define CONFIG_QDRAW_DECODER 1
-%define CONFIG_QPEG_DECODER 1
-%define CONFIG_QTRLE_DECODER 1
-%define CONFIG_R10K_DECODER 1
-%define CONFIG_R210_DECODER 1
-%define CONFIG_RASC_DECODER 1
-%define CONFIG_RAWVIDEO_DECODER 1
-%define CONFIG_RL2_DECODER 1
-%define CONFIG_ROQ_DECODER 1
-%define CONFIG_RPZA_DECODER 1
-%define CONFIG_RSCC_DECODER 1
-%define CONFIG_RV10_DECODER 1
-%define CONFIG_RV20_DECODER 1
-%define CONFIG_RV30_DECODER 1
-%define CONFIG_RV40_DECODER 1
-%define CONFIG_S302M_DECODER 1
-%define CONFIG_SANM_DECODER 1
-%define CONFIG_SCPR_DECODER 1
-%define CONFIG_SCREENPRESSO_DECODER 1
-%define CONFIG_SDX2_DPCM_DECODER 1
-%define CONFIG_SGI_DECODER 1
-%define CONFIG_SGIRLE_DECODER 1
-%define CONFIG_SHEERVIDEO_DECODER 1
-%define CONFIG_SMACKER_DECODER 1
-%define CONFIG_SMC_DECODER 1
-%define CONFIG_SMVJPEG_DECODER 1
-%define CONFIG_SNOW_DECODER 1
-%define CONFIG_SP5X_DECODER 1
-%define CONFIG_SPEEDHQ_DECODER 1
-%define CONFIG_SRGC_DECODER 1
-%define CONFIG_SUNRAST_DECODER 1
-%define CONFIG_SVQ1_DECODER 1
-%define CONFIG_SVQ3_DECODER 1
-%define CONFIG_TARGA_DECODER 1
-%define CONFIG_TARGA_Y216_DECODER 1
-%define CONFIG_TDSC_DECODER 1
-%define CONFIG_THEORA_DECODER 1
-%define CONFIG_THP_DECODER 1
-%define CONFIG_TIERTEXSEQVIDEO_DECODER 1
-%define CONFIG_TIFF_DECODER 1
-%define CONFIG_TMV_DECODER 1
-%define CONFIG_TRUEMOTION1_DECODER 1
-%define CONFIG_TRUEMOTION2_DECODER 1
-%define CONFIG_TRUEMOTION2RT_DECODER 1
-%define CONFIG_TSCC_DECODER 1
-%define CONFIG_TSCC2_DECODER 1
-%define CONFIG_TXD_DECODER 1
-%define CONFIG_ULTI_DECODER 1
-%define CONFIG_UTVIDEO_DECODER 1
-%define CONFIG_V210_DECODER 1
-%define CONFIG_V210X_DECODER 1
-%define CONFIG_V308_DECODER 1
-%define CONFIG_V408_DECODER 1
-%define CONFIG_V410_DECODER 1
-%define CONFIG_VB_DECODER 1
-%define CONFIG_VBLE_DECODER 1
-%define CONFIG_VC1_DECODER 1
-%define CONFIG_VC1_CRYSTALHD_DECODER 0
-%define CONFIG_VC1IMAGE_DECODER 1
-%define CONFIG_VC1_MMAL_DECODER 0
-%define CONFIG_VC1_QSV_DECODER 0
-%define CONFIG_VC1_V4L2M2M_DECODER 0
-%define CONFIG_VCR1_DECODER 1
-%define CONFIG_VMDVIDEO_DECODER 1
-%define CONFIG_VMNC_DECODER 1
-%define CONFIG_VP3_DECODER 1
-%define CONFIG_VP5_DECODER 1
-%define CONFIG_VP6_DECODER 1
-%define CONFIG_VP6A_DECODER 1
-%define CONFIG_VP6F_DECODER 1
-%define CONFIG_VP7_DECODER 1
-%define CONFIG_VP8_DECODER 1
-%define CONFIG_VP8_RKMPP_DECODER 0
-%define CONFIG_VP8_V4L2M2M_DECODER 0
-%define CONFIG_VP9_DECODER 1
-%define CONFIG_VP9_RKMPP_DECODER 0
-%define CONFIG_VP9_V4L2M2M_DECODER 0
-%define CONFIG_VQA_DECODER 1
-%define CONFIG_WEBP_DECODER 1
-%define CONFIG_WCMV_DECODER 1
-%define CONFIG_WRAPPED_AVFRAME_DECODER 1
-%define CONFIG_WMV1_DECODER 1
-%define CONFIG_WMV2_DECODER 1
-%define CONFIG_WMV3_DECODER 1
-%define CONFIG_WMV3_CRYSTALHD_DECODER 0
-%define CONFIG_WMV3IMAGE_DECODER 1
-%define CONFIG_WNV1_DECODER 1
-%define CONFIG_XAN_WC3_DECODER 1
-%define CONFIG_XAN_WC4_DECODER 1
-%define CONFIG_XBM_DECODER 1
-%define CONFIG_XFACE_DECODER 1
-%define CONFIG_XL_DECODER 1
-%define CONFIG_XPM_DECODER 1
-%define CONFIG_XWD_DECODER 1
-%define CONFIG_Y41P_DECODER 1
-%define CONFIG_YLC_DECODER 1
-%define CONFIG_YOP_DECODER 1
-%define CONFIG_YUV4_DECODER 1
-%define CONFIG_ZERO12V_DECODER 1
-%define CONFIG_ZEROCODEC_DECODER 1
-%define CONFIG_ZLIB_DECODER 1
-%define CONFIG_ZMBV_DECODER 1
-%define CONFIG_AAC_DECODER 1
-%define CONFIG_AAC_FIXED_DECODER 1
-%define CONFIG_AAC_LATM_DECODER 1
-%define CONFIG_AC3_DECODER 1
-%define CONFIG_AC3_FIXED_DECODER 1
-%define CONFIG_ALAC_DECODER 1
-%define CONFIG_ALS_DECODER 1
-%define CONFIG_AMRNB_DECODER 1
-%define CONFIG_AMRWB_DECODER 1
-%define CONFIG_APE_DECODER 1
-%define CONFIG_APTX_DECODER 1
-%define CONFIG_APTX_HD_DECODER 1
-%define CONFIG_ATRAC1_DECODER 1
-%define CONFIG_ATRAC3_DECODER 1
-%define CONFIG_ATRAC3AL_DECODER 1
-%define CONFIG_ATRAC3P_DECODER 0
-%define CONFIG_ATRAC3PAL_DECODER 1
-%define CONFIG_ATRAC9_DECODER 1
-%define CONFIG_BINKAUDIO_DCT_DECODER 1
-%define CONFIG_BINKAUDIO_RDFT_DECODER 1
-%define CONFIG_BMV_AUDIO_DECODER 1
-%define CONFIG_COOK_DECODER 1
-%define CONFIG_DCA_DECODER 1
-%define CONFIG_DOLBY_E_DECODER 1
-%define CONFIG_DSD_LSBF_DECODER 1
-%define CONFIG_DSD_MSBF_DECODER 1
-%define CONFIG_DSD_LSBF_PLANAR_DECODER 1
-%define CONFIG_DSD_MSBF_PLANAR_DECODER 1
-%define CONFIG_DSICINAUDIO_DECODER 1
-%define CONFIG_DSS_SP_DECODER 1
-%define CONFIG_DST_DECODER 1
-%define CONFIG_EAC3_DECODER 1
-%define CONFIG_EVRC_DECODER 1
-%define CONFIG_FFWAVESYNTH_DECODER 1
-%define CONFIG_FLAC_DECODER 1
-%define CONFIG_G723_1_DECODER 1
-%define CONFIG_G729_DECODER 1
-%define CONFIG_GSM_DECODER 1
-%define CONFIG_GSM_MS_DECODER 1
-%define CONFIG_IAC_DECODER 1
-%define CONFIG_ILBC_DECODER 1
-%define CONFIG_IMC_DECODER 1
-%define CONFIG_INTERPLAY_ACM_DECODER 1
-%define CONFIG_MACE3_DECODER 1
-%define CONFIG_MACE6_DECODER 1
-%define CONFIG_METASOUND_DECODER 1
-%define CONFIG_MLP_DECODER 1
-%define CONFIG_MP1_DECODER 1
-%define CONFIG_MP1FLOAT_DECODER 1
-%define CONFIG_MP2_DECODER 1
-%define CONFIG_MP2FLOAT_DECODER 1
-%define CONFIG_MP3FLOAT_DECODER 1
-%define CONFIG_MP3_DECODER 1
-%define CONFIG_MP3ADUFLOAT_DECODER 1
-%define CONFIG_MP3ADU_DECODER 1
-%define CONFIG_MP3ON4FLOAT_DECODER 1
-%define CONFIG_MP3ON4_DECODER 1
-%define CONFIG_MPC7_DECODER 1
-%define CONFIG_MPC8_DECODER 1
-%define CONFIG_NELLYMOSER_DECODER 1
-%define CONFIG_ON2AVC_DECODER 1
-%define CONFIG_OPUS_DECODER 1
-%define CONFIG_PAF_AUDIO_DECODER 1
-%define CONFIG_QCELP_DECODER 1
-%define CONFIG_QDM2_DECODER 1
-%define CONFIG_QDMC_DECODER 1
-%define CONFIG_RA_144_DECODER 1
-%define CONFIG_RA_288_DECODER 1
-%define CONFIG_RALF_DECODER 1
-%define CONFIG_SBC_DECODER 1
-%define CONFIG_SHORTEN_DECODER 1
-%define CONFIG_SIPR_DECODER 1
-%define CONFIG_SMACKAUD_DECODER 1
-%define CONFIG_SONIC_DECODER 1
-%define CONFIG_TAK_DECODER 1
-%define CONFIG_TRUEHD_DECODER 1
-%define CONFIG_TRUESPEECH_DECODER 1
-%define CONFIG_TTA_DECODER 1
-%define CONFIG_TWINVQ_DECODER 0
-%define CONFIG_VMDAUDIO_DECODER 1
-%define CONFIG_VORBIS_DECODER 1
-%define CONFIG_WAVPACK_DECODER 1
-%define CONFIG_WMALOSSLESS_DECODER 1
-%define CONFIG_WMAPRO_DECODER 1
-%define CONFIG_WMAV1_DECODER 1
-%define CONFIG_WMAV2_DECODER 1
-%define CONFIG_WMAVOICE_DECODER 1
-%define CONFIG_WS_SND1_DECODER 1
-%define CONFIG_XMA1_DECODER 1
-%define CONFIG_XMA2_DECODER 1
-%define CONFIG_PCM_ALAW_DECODER 1
-%define CONFIG_PCM_BLURAY_DECODER 1
-%define CONFIG_PCM_DVD_DECODER 1
-%define CONFIG_PCM_F16LE_DECODER 1
-%define CONFIG_PCM_F24LE_DECODER 1
-%define CONFIG_PCM_F32BE_DECODER 1
-%define CONFIG_PCM_F32LE_DECODER 1
-%define CONFIG_PCM_F64BE_DECODER 1
-%define CONFIG_PCM_F64LE_DECODER 1
-%define CONFIG_PCM_LXF_DECODER 1
-%define CONFIG_PCM_MULAW_DECODER 1
-%define CONFIG_PCM_S8_DECODER 1
-%define CONFIG_PCM_S8_PLANAR_DECODER 1
-%define CONFIG_PCM_S16BE_DECODER 1
-%define CONFIG_PCM_S16BE_PLANAR_DECODER 1
-%define CONFIG_PCM_S16LE_DECODER 1
-%define CONFIG_PCM_S16LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S24BE_DECODER 1
-%define CONFIG_PCM_S24DAUD_DECODER 1
-%define CONFIG_PCM_S24LE_DECODER 1
-%define CONFIG_PCM_S24LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S32BE_DECODER 1
-%define CONFIG_PCM_S32LE_DECODER 1
-%define CONFIG_PCM_S32LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S64BE_DECODER 1
-%define CONFIG_PCM_S64LE_DECODER 1
-%define CONFIG_PCM_U8_DECODER 1
-%define CONFIG_PCM_U16BE_DECODER 1
-%define CONFIG_PCM_U16LE_DECODER 1
-%define CONFIG_PCM_U24BE_DECODER 1
-%define CONFIG_PCM_U24LE_DECODER 1
-%define CONFIG_PCM_U32BE_DECODER 1
-%define CONFIG_PCM_U32LE_DECODER 1
-%define CONFIG_PCM_VIDC_DECODER 1
-%define CONFIG_PCM_ZORK_DECODER 1
-%define CONFIG_GREMLIN_DPCM_DECODER 1
-%define CONFIG_INTERPLAY_DPCM_DECODER 1
-%define CONFIG_ROQ_DPCM_DECODER 1
-%define CONFIG_SOL_DPCM_DECODER 1
-%define CONFIG_XAN_DPCM_DECODER 1
-%define CONFIG_ADPCM_4XM_DECODER 1
-%define CONFIG_ADPCM_ADX_DECODER 1
-%define CONFIG_ADPCM_AFC_DECODER 1
-%define CONFIG_ADPCM_AICA_DECODER 1
-%define CONFIG_ADPCM_CT_DECODER 1
-%define CONFIG_ADPCM_DTK_DECODER 1
-%define CONFIG_ADPCM_EA_DECODER 1
-%define CONFIG_ADPCM_EA_MAXIS_XA_DECODER 1
-%define CONFIG_ADPCM_EA_R1_DECODER 1
-%define CONFIG_ADPCM_EA_R2_DECODER 1
-%define CONFIG_ADPCM_EA_R3_DECODER 1
-%define CONFIG_ADPCM_EA_XAS_DECODER 1
-%define CONFIG_ADPCM_G722_DECODER 1
-%define CONFIG_ADPCM_G726_DECODER 1
-%define CONFIG_ADPCM_G726LE_DECODER 1
-%define CONFIG_ADPCM_IMA_AMV_DECODER 1
-%define CONFIG_ADPCM_IMA_APC_DECODER 1
-%define CONFIG_ADPCM_IMA_DAT4_DECODER 1
-%define CONFIG_ADPCM_IMA_DK3_DECODER 1
-%define CONFIG_ADPCM_IMA_DK4_DECODER 1
-%define CONFIG_ADPCM_IMA_EA_EACS_DECODER 1
-%define CONFIG_ADPCM_IMA_EA_SEAD_DECODER 1
-%define CONFIG_ADPCM_IMA_ISS_DECODER 1
-%define CONFIG_ADPCM_IMA_OKI_DECODER 1
-%define CONFIG_ADPCM_IMA_QT_DECODER 1
-%define CONFIG_ADPCM_IMA_RAD_DECODER 1
-%define CONFIG_ADPCM_IMA_SMJPEG_DECODER 1
-%define CONFIG_ADPCM_IMA_WAV_DECODER 1
-%define CONFIG_ADPCM_IMA_WS_DECODER 1
-%define CONFIG_ADPCM_MS_DECODER 1
-%define CONFIG_ADPCM_MTAF_DECODER 1
-%define CONFIG_ADPCM_PSX_DECODER 1
-%define CONFIG_ADPCM_SBPRO_2_DECODER 1
-%define CONFIG_ADPCM_SBPRO_3_DECODER 1
-%define CONFIG_ADPCM_SBPRO_4_DECODER 1
-%define CONFIG_ADPCM_SWF_DECODER 1
-%define CONFIG_ADPCM_THP_DECODER 1
-%define CONFIG_ADPCM_THP_LE_DECODER 1
-%define CONFIG_ADPCM_VIMA_DECODER 1
-%define CONFIG_ADPCM_XA_DECODER 1
-%define CONFIG_ADPCM_YAMAHA_DECODER 1
-%define CONFIG_SSA_DECODER 1
-%define CONFIG_ASS_DECODER 1
-%define CONFIG_CCAPTION_DECODER 1
-%define CONFIG_DVBSUB_DECODER 1
-%define CONFIG_DVDSUB_DECODER 1
-%define CONFIG_JACOSUB_DECODER 1
-%define CONFIG_MICRODVD_DECODER 1
-%define CONFIG_MOVTEXT_DECODER 1
-%define CONFIG_MPL2_DECODER 1
-%define CONFIG_PGSSUB_DECODER 1
-%define CONFIG_PJS_DECODER 1
-%define CONFIG_REALTEXT_DECODER 1
-%define CONFIG_SAMI_DECODER 1
-%define CONFIG_SRT_DECODER 1
-%define CONFIG_STL_DECODER 1
-%define CONFIG_SUBRIP_DECODER 1
-%define CONFIG_SUBVIEWER_DECODER 1
-%define CONFIG_SUBVIEWER1_DECODER 1
-%define CONFIG_TEXT_DECODER 1
-%define CONFIG_VPLAYER_DECODER 1
-%define CONFIG_WEBVTT_DECODER 1
-%define CONFIG_XSUB_DECODER 1
-%define CONFIG_AAC_AT_DECODER 0
-%define CONFIG_AC3_AT_DECODER 0
-%define CONFIG_ADPCM_IMA_QT_AT_DECODER 0
-%define CONFIG_ALAC_AT_DECODER 0
-%define CONFIG_AMR_NB_AT_DECODER 0
-%define CONFIG_EAC3_AT_DECODER 0
-%define CONFIG_GSM_MS_AT_DECODER 0
-%define CONFIG_ILBC_AT_DECODER 0
-%define CONFIG_MP1_AT_DECODER 0
-%define CONFIG_MP2_AT_DECODER 0
-%define CONFIG_MP3_AT_DECODER 0
-%define CONFIG_PCM_ALAW_AT_DECODER 0
-%define CONFIG_PCM_MULAW_AT_DECODER 0
-%define CONFIG_QDMC_AT_DECODER 0
-%define CONFIG_QDM2_AT_DECODER 0
-%define CONFIG_LIBAOM_AV1_DECODER 0
-%define CONFIG_LIBCELT_DECODER 0
-%define CONFIG_LIBCODEC2_DECODER 0
-%define CONFIG_LIBDAV1D_DECODER 0
-%define CONFIG_LIBDAVS2_DECODER 0
-%define CONFIG_LIBFDK_AAC_DECODER 0
-%define CONFIG_LIBGSM_DECODER 0
-%define CONFIG_LIBGSM_MS_DECODER 0
-%define CONFIG_LIBILBC_DECODER 0
-%define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-%define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-%define CONFIG_LIBOPENJPEG_DECODER 0
-%define CONFIG_LIBOPUS_DECODER 0
-%define CONFIG_LIBRSVG_DECODER 0
-%define CONFIG_LIBSPEEX_DECODER 0
-%define CONFIG_LIBVORBIS_DECODER 0
-%define CONFIG_LIBVPX_VP8_DECODER 0
-%define CONFIG_LIBVPX_VP9_DECODER 0
-%define CONFIG_LIBZVBI_TELETEXT_DECODER 0
-%define CONFIG_BINTEXT_DECODER 1
-%define CONFIG_XBIN_DECODER 1
-%define CONFIG_IDF_DECODER 1
-%define CONFIG_LIBOPENH264_DECODER 0
-%define CONFIG_H264_CUVID_DECODER 0
-%define CONFIG_HEVC_CUVID_DECODER 0
-%define CONFIG_HEVC_MEDIACODEC_DECODER 0
-%define CONFIG_MJPEG_CUVID_DECODER 0
-%define CONFIG_MPEG1_CUVID_DECODER 0
-%define CONFIG_MPEG2_CUVID_DECODER 0
-%define CONFIG_MPEG4_CUVID_DECODER 0
-%define CONFIG_MPEG4_MEDIACODEC_DECODER 0
-%define CONFIG_VC1_CUVID_DECODER 0
-%define CONFIG_VP8_CUVID_DECODER 0
-%define CONFIG_VP8_MEDIACODEC_DECODER 0
-%define CONFIG_VP8_QSV_DECODER 0
-%define CONFIG_VP9_CUVID_DECODER 0
-%define CONFIG_VP9_MEDIACODEC_DECODER 0
-%define CONFIG_A64MULTI_ENCODER 0
-%define CONFIG_A64MULTI5_ENCODER 0
-%define CONFIG_ALIAS_PIX_ENCODER 0
-%define CONFIG_AMV_ENCODER 0
-%define CONFIG_APNG_ENCODER 0
-%define CONFIG_ASV1_ENCODER 0
-%define CONFIG_ASV2_ENCODER 0
-%define CONFIG_AVRP_ENCODER 0
-%define CONFIG_AVUI_ENCODER 0
-%define CONFIG_AYUV_ENCODER 0
-%define CONFIG_BMP_ENCODER 0
-%define CONFIG_CINEPAK_ENCODER 0
-%define CONFIG_CLJR_ENCODER 0
-%define CONFIG_COMFORTNOISE_ENCODER 0
-%define CONFIG_DNXHD_ENCODER 0
-%define CONFIG_DPX_ENCODER 0
-%define CONFIG_DVVIDEO_ENCODER 0
-%define CONFIG_FFV1_ENCODER 0
-%define CONFIG_FFVHUFF_ENCODER 0
-%define CONFIG_FITS_ENCODER 0
-%define CONFIG_FLASHSV_ENCODER 0
-%define CONFIG_FLASHSV2_ENCODER 0
-%define CONFIG_FLV_ENCODER 0
-%define CONFIG_GIF_ENCODER 0
-%define CONFIG_H261_ENCODER 0
-%define CONFIG_H263_ENCODER 0
-%define CONFIG_H263P_ENCODER 0
-%define CONFIG_HAP_ENCODER 0
-%define CONFIG_HUFFYUV_ENCODER 0
-%define CONFIG_JPEG2000_ENCODER 0
-%define CONFIG_JPEGLS_ENCODER 0
-%define CONFIG_LJPEG_ENCODER 0
-%define CONFIG_MAGICYUV_ENCODER 0
-%define CONFIG_MJPEG_ENCODER 0
-%define CONFIG_MPEG1VIDEO_ENCODER 0
-%define CONFIG_MPEG2VIDEO_ENCODER 0
-%define CONFIG_MPEG4_ENCODER 0
-%define CONFIG_MSMPEG4V2_ENCODER 0
-%define CONFIG_MSMPEG4V3_ENCODER 0
-%define CONFIG_MSVIDEO1_ENCODER 0
-%define CONFIG_PAM_ENCODER 0
-%define CONFIG_PBM_ENCODER 0
-%define CONFIG_PCX_ENCODER 0
-%define CONFIG_PGM_ENCODER 0
-%define CONFIG_PGMYUV_ENCODER 0
-%define CONFIG_PNG_ENCODER 0
-%define CONFIG_PPM_ENCODER 0
-%define CONFIG_PRORES_ENCODER 0
-%define CONFIG_PRORES_AW_ENCODER 0
-%define CONFIG_PRORES_KS_ENCODER 0
-%define CONFIG_QTRLE_ENCODER 0
-%define CONFIG_R10K_ENCODER 0
-%define CONFIG_R210_ENCODER 0
-%define CONFIG_RAWVIDEO_ENCODER 0
-%define CONFIG_ROQ_ENCODER 0
-%define CONFIG_RV10_ENCODER 0
-%define CONFIG_RV20_ENCODER 0
-%define CONFIG_S302M_ENCODER 0
-%define CONFIG_SGI_ENCODER 0
-%define CONFIG_SNOW_ENCODER 0
-%define CONFIG_SUNRAST_ENCODER 0
-%define CONFIG_SVQ1_ENCODER 0
-%define CONFIG_TARGA_ENCODER 0
-%define CONFIG_TIFF_ENCODER 0
-%define CONFIG_UTVIDEO_ENCODER 0
-%define CONFIG_V210_ENCODER 0
-%define CONFIG_V308_ENCODER 0
-%define CONFIG_V408_ENCODER 0
-%define CONFIG_V410_ENCODER 0
-%define CONFIG_VC2_ENCODER 0
-%define CONFIG_WRAPPED_AVFRAME_ENCODER 0
-%define CONFIG_WMV1_ENCODER 0
-%define CONFIG_WMV2_ENCODER 0
-%define CONFIG_XBM_ENCODER 0
-%define CONFIG_XFACE_ENCODER 0
-%define CONFIG_XWD_ENCODER 0
-%define CONFIG_Y41P_ENCODER 0
-%define CONFIG_YUV4_ENCODER 0
-%define CONFIG_ZLIB_ENCODER 0
-%define CONFIG_ZMBV_ENCODER 0
-%define CONFIG_AAC_ENCODER 0
-%define CONFIG_AC3_ENCODER 0
-%define CONFIG_AC3_FIXED_ENCODER 0
-%define CONFIG_ALAC_ENCODER 0
-%define CONFIG_APTX_ENCODER 0
-%define CONFIG_APTX_HD_ENCODER 0
-%define CONFIG_DCA_ENCODER 0
-%define CONFIG_EAC3_ENCODER 0
-%define CONFIG_FLAC_ENCODER 0
-%define CONFIG_G723_1_ENCODER 0
-%define CONFIG_MLP_ENCODER 0
-%define CONFIG_MP2_ENCODER 0
-%define CONFIG_MP2FIXED_ENCODER 0
-%define CONFIG_NELLYMOSER_ENCODER 0
-%define CONFIG_OPUS_ENCODER 0
-%define CONFIG_RA_144_ENCODER 0
-%define CONFIG_SBC_ENCODER 0
-%define CONFIG_SONIC_ENCODER 0
-%define CONFIG_SONIC_LS_ENCODER 0
-%define CONFIG_TRUEHD_ENCODER 0
-%define CONFIG_TTA_ENCODER 0
-%define CONFIG_VORBIS_ENCODER 0
-%define CONFIG_WAVPACK_ENCODER 0
-%define CONFIG_WMAV1_ENCODER 0
-%define CONFIG_WMAV2_ENCODER 0
-%define CONFIG_PCM_ALAW_ENCODER 0
-%define CONFIG_PCM_F32BE_ENCODER 0
-%define CONFIG_PCM_F32LE_ENCODER 0
-%define CONFIG_PCM_F64BE_ENCODER 0
-%define CONFIG_PCM_F64LE_ENCODER 0
-%define CONFIG_PCM_MULAW_ENCODER 0
-%define CONFIG_PCM_S8_ENCODER 0
-%define CONFIG_PCM_S8_PLANAR_ENCODER 0
-%define CONFIG_PCM_S16BE_ENCODER 0
-%define CONFIG_PCM_S16BE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S16LE_ENCODER 0
-%define CONFIG_PCM_S16LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S24BE_ENCODER 0
-%define CONFIG_PCM_S24DAUD_ENCODER 0
-%define CONFIG_PCM_S24LE_ENCODER 0
-%define CONFIG_PCM_S24LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S32BE_ENCODER 0
-%define CONFIG_PCM_S32LE_ENCODER 0
-%define CONFIG_PCM_S32LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S64BE_ENCODER 0
-%define CONFIG_PCM_S64LE_ENCODER 0
-%define CONFIG_PCM_U8_ENCODER 0
-%define CONFIG_PCM_U16BE_ENCODER 0
-%define CONFIG_PCM_U16LE_ENCODER 0
-%define CONFIG_PCM_U24BE_ENCODER 0
-%define CONFIG_PCM_U24LE_ENCODER 0
-%define CONFIG_PCM_U32BE_ENCODER 0
-%define CONFIG_PCM_U32LE_ENCODER 0
-%define CONFIG_PCM_VIDC_ENCODER 0
-%define CONFIG_ROQ_DPCM_ENCODER 0
-%define CONFIG_ADPCM_ADX_ENCODER 0
-%define CONFIG_ADPCM_G722_ENCODER 0
-%define CONFIG_ADPCM_G726_ENCODER 0
-%define CONFIG_ADPCM_G726LE_ENCODER 0
-%define CONFIG_ADPCM_IMA_QT_ENCODER 0
-%define CONFIG_ADPCM_IMA_WAV_ENCODER 0
-%define CONFIG_ADPCM_MS_ENCODER 0
-%define CONFIG_ADPCM_SWF_ENCODER 0
-%define CONFIG_ADPCM_YAMAHA_ENCODER 0
-%define CONFIG_SSA_ENCODER 0
-%define CONFIG_ASS_ENCODER 0
-%define CONFIG_DVBSUB_ENCODER 0
-%define CONFIG_DVDSUB_ENCODER 0
-%define CONFIG_MOVTEXT_ENCODER 0
-%define CONFIG_SRT_ENCODER 0
-%define CONFIG_SUBRIP_ENCODER 0
-%define CONFIG_TEXT_ENCODER 0
-%define CONFIG_WEBVTT_ENCODER 0
-%define CONFIG_XSUB_ENCODER 0
-%define CONFIG_AAC_AT_ENCODER 0
-%define CONFIG_ALAC_AT_ENCODER 0
-%define CONFIG_ILBC_AT_ENCODER 0
-%define CONFIG_PCM_ALAW_AT_ENCODER 0
-%define CONFIG_PCM_MULAW_AT_ENCODER 0
-%define CONFIG_LIBAOM_AV1_ENCODER 0
-%define CONFIG_LIBCODEC2_ENCODER 0
-%define CONFIG_LIBFDK_AAC_ENCODER 0
-%define CONFIG_LIBGSM_ENCODER 0
-%define CONFIG_LIBGSM_MS_ENCODER 0
-%define CONFIG_LIBILBC_ENCODER 0
-%define CONFIG_LIBMP3LAME_ENCODER 0
-%define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-%define CONFIG_LIBOPENJPEG_ENCODER 0
-%define CONFIG_LIBOPUS_ENCODER 0
-%define CONFIG_LIBSHINE_ENCODER 0
-%define CONFIG_LIBSPEEX_ENCODER 0
-%define CONFIG_LIBTHEORA_ENCODER 0
-%define CONFIG_LIBTWOLAME_ENCODER 0
-%define CONFIG_LIBVO_AMRWBENC_ENCODER 0
-%define CONFIG_LIBVORBIS_ENCODER 0
-%define CONFIG_LIBVPX_VP8_ENCODER 0
-%define CONFIG_LIBVPX_VP9_ENCODER 0
-%define CONFIG_LIBWAVPACK_ENCODER 0
-%define CONFIG_LIBWEBP_ANIM_ENCODER 0
-%define CONFIG_LIBWEBP_ENCODER 0
-%define CONFIG_LIBX262_ENCODER 0
-%define CONFIG_LIBX264_ENCODER 0
-%define CONFIG_LIBX264RGB_ENCODER 0
-%define CONFIG_LIBX265_ENCODER 0
-%define CONFIG_LIBXAVS_ENCODER 0
-%define CONFIG_LIBXAVS2_ENCODER 0
-%define CONFIG_LIBXVID_ENCODER 0
-%define CONFIG_H263_V4L2M2M_ENCODER 0
-%define CONFIG_LIBOPENH264_ENCODER 0
-%define CONFIG_H264_AMF_ENCODER 0
-%define CONFIG_H264_NVENC_ENCODER 0
-%define CONFIG_H264_OMX_ENCODER 0
-%define CONFIG_H264_QSV_ENCODER 0
-%define CONFIG_H264_V4L2M2M_ENCODER 0
-%define CONFIG_H264_VAAPI_ENCODER 0
-%define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
-%define CONFIG_NVENC_ENCODER 0
-%define CONFIG_NVENC_H264_ENCODER 0
-%define CONFIG_NVENC_HEVC_ENCODER 0
-%define CONFIG_HEVC_AMF_ENCODER 0
-%define CONFIG_HEVC_NVENC_ENCODER 0
-%define CONFIG_HEVC_QSV_ENCODER 0
-%define CONFIG_HEVC_V4L2M2M_ENCODER 0
-%define CONFIG_HEVC_VAAPI_ENCODER 0
-%define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
-%define CONFIG_LIBKVAZAAR_ENCODER 0
-%define CONFIG_MJPEG_QSV_ENCODER 0
-%define CONFIG_MJPEG_VAAPI_ENCODER 0
-%define CONFIG_MPEG2_QSV_ENCODER 0
-%define CONFIG_MPEG2_VAAPI_ENCODER 0
-%define CONFIG_MPEG4_V4L2M2M_ENCODER 0
-%define CONFIG_VP8_V4L2M2M_ENCODER 0
-%define CONFIG_VP8_VAAPI_ENCODER 0
-%define CONFIG_VP9_VAAPI_ENCODER 0
-%define CONFIG_H263_VAAPI_HWACCEL 0
-%define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_H264_D3D11VA_HWACCEL 0
-%define CONFIG_H264_D3D11VA2_HWACCEL 0
-%define CONFIG_H264_DXVA2_HWACCEL 0
-%define CONFIG_H264_NVDEC_HWACCEL 0
-%define CONFIG_H264_VAAPI_HWACCEL 0
-%define CONFIG_H264_VDPAU_HWACCEL 0
-%define CONFIG_H264_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_HEVC_D3D11VA_HWACCEL 0
-%define CONFIG_HEVC_D3D11VA2_HWACCEL 0
-%define CONFIG_HEVC_DXVA2_HWACCEL 0
-%define CONFIG_HEVC_NVDEC_HWACCEL 0
-%define CONFIG_HEVC_VAAPI_HWACCEL 0
-%define CONFIG_HEVC_VDPAU_HWACCEL 0
-%define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MJPEG_NVDEC_HWACCEL 0
-%define CONFIG_MJPEG_VAAPI_HWACCEL 0
-%define CONFIG_MPEG1_NVDEC_HWACCEL 0
-%define CONFIG_MPEG1_VDPAU_HWACCEL 0
-%define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MPEG1_XVMC_HWACCEL 0
-%define CONFIG_MPEG2_D3D11VA_HWACCEL 0
-%define CONFIG_MPEG2_D3D11VA2_HWACCEL 0
-%define CONFIG_MPEG2_NVDEC_HWACCEL 0
-%define CONFIG_MPEG2_DXVA2_HWACCEL 0
-%define CONFIG_MPEG2_VAAPI_HWACCEL 0
-%define CONFIG_MPEG2_VDPAU_HWACCEL 0
-%define CONFIG_MPEG2_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MPEG2_XVMC_HWACCEL 0
-%define CONFIG_MPEG4_NVDEC_HWACCEL 0
-%define CONFIG_MPEG4_VAAPI_HWACCEL 0
-%define CONFIG_MPEG4_VDPAU_HWACCEL 0
-%define CONFIG_MPEG4_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_VC1_D3D11VA_HWACCEL 0
-%define CONFIG_VC1_D3D11VA2_HWACCEL 0
-%define CONFIG_VC1_DXVA2_HWACCEL 0
-%define CONFIG_VC1_NVDEC_HWACCEL 0
-%define CONFIG_VC1_VAAPI_HWACCEL 0
-%define CONFIG_VC1_VDPAU_HWACCEL 0
-%define CONFIG_VP8_NVDEC_HWACCEL 0
-%define CONFIG_VP8_VAAPI_HWACCEL 0
-%define CONFIG_VP9_D3D11VA_HWACCEL 0
-%define CONFIG_VP9_D3D11VA2_HWACCEL 0
-%define CONFIG_VP9_DXVA2_HWACCEL 0
-%define CONFIG_VP9_NVDEC_HWACCEL 0
-%define CONFIG_VP9_VAAPI_HWACCEL 0
-%define CONFIG_WMV3_D3D11VA_HWACCEL 0
-%define CONFIG_WMV3_D3D11VA2_HWACCEL 0
-%define CONFIG_WMV3_DXVA2_HWACCEL 0
-%define CONFIG_WMV3_NVDEC_HWACCEL 0
-%define CONFIG_WMV3_VAAPI_HWACCEL 0
-%define CONFIG_WMV3_VDPAU_HWACCEL 0
-%define CONFIG_AAC_PARSER 1
-%define CONFIG_AAC_LATM_PARSER 1
-%define CONFIG_AC3_PARSER 1
-%define CONFIG_ADX_PARSER 1
-%define CONFIG_AV1_PARSER 1
-%define CONFIG_AVS2_PARSER 1
-%define CONFIG_BMP_PARSER 1
-%define CONFIG_CAVSVIDEO_PARSER 1
-%define CONFIG_COOK_PARSER 1
-%define CONFIG_DCA_PARSER 1
-%define CONFIG_DIRAC_PARSER 1
-%define CONFIG_DNXHD_PARSER 1
-%define CONFIG_DPX_PARSER 1
-%define CONFIG_DVAUDIO_PARSER 1
-%define CONFIG_DVBSUB_PARSER 1
-%define CONFIG_DVDSUB_PARSER 1
-%define CONFIG_DVD_NAV_PARSER 1
-%define CONFIG_FLAC_PARSER 1
-%define CONFIG_G729_PARSER 1
-%define CONFIG_GSM_PARSER 1
-%define CONFIG_H261_PARSER 1
-%define CONFIG_H263_PARSER 1
-%define CONFIG_H264_PARSER 1
-%define CONFIG_HEVC_PARSER 1
-%define CONFIG_MJPEG_PARSER 1
-%define CONFIG_MLP_PARSER 1
-%define CONFIG_MPEG4VIDEO_PARSER 1
-%define CONFIG_MPEGAUDIO_PARSER 1
-%define CONFIG_MPEGVIDEO_PARSER 1
-%define CONFIG_OPUS_PARSER 1
-%define CONFIG_PNG_PARSER 1
-%define CONFIG_PNM_PARSER 1
-%define CONFIG_RV30_PARSER 1
-%define CONFIG_RV40_PARSER 1
-%define CONFIG_SBC_PARSER 1
-%define CONFIG_SIPR_PARSER 1
-%define CONFIG_TAK_PARSER 1
-%define CONFIG_VC1_PARSER 1
-%define CONFIG_VORBIS_PARSER 1
-%define CONFIG_VP3_PARSER 1
-%define CONFIG_VP8_PARSER 1
-%define CONFIG_VP9_PARSER 1
-%define CONFIG_XMA_PARSER 1
-%define CONFIG_ALSA_INDEV 0
-%define CONFIG_ANDROID_CAMERA_INDEV 0
-%define CONFIG_AVFOUNDATION_INDEV 0
-%define CONFIG_BKTR_INDEV 0
-%define CONFIG_DECKLINK_INDEV 0
-%define CONFIG_LIBNDI_NEWTEK_INDEV 0
-%define CONFIG_DSHOW_INDEV 0
-%define CONFIG_FBDEV_INDEV 0
-%define CONFIG_GDIGRAB_INDEV 0
-%define CONFIG_IEC61883_INDEV 0
-%define CONFIG_JACK_INDEV 0
-%define CONFIG_KMSGRAB_INDEV 0
-%define CONFIG_LAVFI_INDEV 0
-%define CONFIG_OPENAL_INDEV 0
-%define CONFIG_OSS_INDEV 0
-%define CONFIG_PULSE_INDEV 0
-%define CONFIG_SNDIO_INDEV 0
-%define CONFIG_V4L2_INDEV 0
-%define CONFIG_VFWCAP_INDEV 0
-%define CONFIG_XCBGRAB_INDEV 0
-%define CONFIG_LIBCDIO_INDEV 0
-%define CONFIG_LIBDC1394_INDEV 0
-%define CONFIG_ALSA_OUTDEV 0
-%define CONFIG_CACA_OUTDEV 0
-%define CONFIG_DECKLINK_OUTDEV 0
-%define CONFIG_LIBNDI_NEWTEK_OUTDEV 0
-%define CONFIG_FBDEV_OUTDEV 0
-%define CONFIG_OPENGL_OUTDEV 0
-%define CONFIG_OSS_OUTDEV 0
-%define CONFIG_PULSE_OUTDEV 0
-%define CONFIG_SDL2_OUTDEV 0
-%define CONFIG_SNDIO_OUTDEV 0
-%define CONFIG_V4L2_OUTDEV 0
-%define CONFIG_XV_OUTDEV 0
-%define CONFIG_ABENCH_FILTER 0
-%define CONFIG_ACOMPRESSOR_FILTER 0
-%define CONFIG_ACONTRAST_FILTER 0
-%define CONFIG_ACOPY_FILTER 0
-%define CONFIG_ACUE_FILTER 0
-%define CONFIG_ACROSSFADE_FILTER 0
-%define CONFIG_ACROSSOVER_FILTER 0
-%define CONFIG_ACRUSHER_FILTER 0
-%define CONFIG_ADECLICK_FILTER 0
-%define CONFIG_ADECLIP_FILTER 0
-%define CONFIG_ADELAY_FILTER 0
-%define CONFIG_ADERIVATIVE_FILTER 0
-%define CONFIG_AECHO_FILTER 0
-%define CONFIG_AEMPHASIS_FILTER 0
-%define CONFIG_AEVAL_FILTER 0
-%define CONFIG_AFADE_FILTER 0
-%define CONFIG_AFFTDN_FILTER 0
-%define CONFIG_AFFTFILT_FILTER 0
-%define CONFIG_AFIR_FILTER 0
-%define CONFIG_AFORMAT_FILTER 0
-%define CONFIG_AGATE_FILTER 0
-%define CONFIG_AIIR_FILTER 0
-%define CONFIG_AINTEGRAL_FILTER 0
-%define CONFIG_AINTERLEAVE_FILTER 0
-%define CONFIG_ALIMITER_FILTER 0
-%define CONFIG_ALLPASS_FILTER 0
-%define CONFIG_ALOOP_FILTER 0
-%define CONFIG_AMERGE_FILTER 0
-%define CONFIG_AMETADATA_FILTER 0
-%define CONFIG_AMIX_FILTER 0
-%define CONFIG_AMULTIPLY_FILTER 0
-%define CONFIG_ANEQUALIZER_FILTER 0
-%define CONFIG_ANULL_FILTER 0
-%define CONFIG_APAD_FILTER 0
-%define CONFIG_APERMS_FILTER 0
-%define CONFIG_APHASER_FILTER 0
-%define CONFIG_APULSATOR_FILTER 0
-%define CONFIG_AREALTIME_FILTER 0
-%define CONFIG_ARESAMPLE_FILTER 0
-%define CONFIG_AREVERSE_FILTER 0
-%define CONFIG_ASELECT_FILTER 0
-%define CONFIG_ASENDCMD_FILTER 0
-%define CONFIG_ASETNSAMPLES_FILTER 0
-%define CONFIG_ASETPTS_FILTER 0
-%define CONFIG_ASETRATE_FILTER 0
-%define CONFIG_ASETTB_FILTER 0
-%define CONFIG_ASHOWINFO_FILTER 0
-%define CONFIG_ASIDEDATA_FILTER 0
-%define CONFIG_ASPLIT_FILTER 0
-%define CONFIG_ASTATS_FILTER 0
-%define CONFIG_ASTREAMSELECT_FILTER 0
-%define CONFIG_ATEMPO_FILTER 0
-%define CONFIG_ATRIM_FILTER 0
-%define CONFIG_AZMQ_FILTER 0
-%define CONFIG_BANDPASS_FILTER 0
-%define CONFIG_BANDREJECT_FILTER 0
-%define CONFIG_BASS_FILTER 0
-%define CONFIG_BIQUAD_FILTER 0
-%define CONFIG_BS2B_FILTER 0
-%define CONFIG_CHANNELMAP_FILTER 0
-%define CONFIG_CHANNELSPLIT_FILTER 0
-%define CONFIG_CHORUS_FILTER 0
-%define CONFIG_COMPAND_FILTER 0
-%define CONFIG_COMPENSATIONDELAY_FILTER 0
-%define CONFIG_CROSSFEED_FILTER 0
-%define CONFIG_CRYSTALIZER_FILTER 0
-%define CONFIG_DCSHIFT_FILTER 0
-%define CONFIG_DRMETER_FILTER 0
-%define CONFIG_DYNAUDNORM_FILTER 0
-%define CONFIG_EARWAX_FILTER 0
-%define CONFIG_EBUR128_FILTER 0
-%define CONFIG_EQUALIZER_FILTER 0
-%define CONFIG_EXTRASTEREO_FILTER 0
-%define CONFIG_FIREQUALIZER_FILTER 0
-%define CONFIG_FLANGER_FILTER 0
-%define CONFIG_HAAS_FILTER 0
-%define CONFIG_HDCD_FILTER 0
-%define CONFIG_HEADPHONE_FILTER 0
-%define CONFIG_HIGHPASS_FILTER 0
-%define CONFIG_HIGHSHELF_FILTER 0
-%define CONFIG_JOIN_FILTER 0
-%define CONFIG_LADSPA_FILTER 0
-%define CONFIG_LOUDNORM_FILTER 0
-%define CONFIG_LOWPASS_FILTER 0
-%define CONFIG_LOWSHELF_FILTER 0
-%define CONFIG_LV2_FILTER 0
-%define CONFIG_MCOMPAND_FILTER 0
-%define CONFIG_PAN_FILTER 0
-%define CONFIG_REPLAYGAIN_FILTER 0
-%define CONFIG_RESAMPLE_FILTER 0
-%define CONFIG_RUBBERBAND_FILTER 0
-%define CONFIG_SIDECHAINCOMPRESS_FILTER 0
-%define CONFIG_SIDECHAINGATE_FILTER 0
-%define CONFIG_SILENCEDETECT_FILTER 0
-%define CONFIG_SILENCEREMOVE_FILTER 0
-%define CONFIG_SOFALIZER_FILTER 0
-%define CONFIG_STEREOTOOLS_FILTER 0
-%define CONFIG_STEREOWIDEN_FILTER 0
-%define CONFIG_SUPEREQUALIZER_FILTER 0
-%define CONFIG_SURROUND_FILTER 0
-%define CONFIG_TREBLE_FILTER 0
-%define CONFIG_TREMOLO_FILTER 0
-%define CONFIG_VIBRATO_FILTER 0
-%define CONFIG_VOLUME_FILTER 0
-%define CONFIG_VOLUMEDETECT_FILTER 0
-%define CONFIG_AEVALSRC_FILTER 0
-%define CONFIG_ANOISESRC_FILTER 0
-%define CONFIG_ANULLSRC_FILTER 0
-%define CONFIG_FLITE_FILTER 0
-%define CONFIG_HILBERT_FILTER 0
-%define CONFIG_SINC_FILTER 0
-%define CONFIG_SINE_FILTER 0
-%define CONFIG_ANULLSINK_FILTER 0
-%define CONFIG_ALPHAEXTRACT_FILTER 0
-%define CONFIG_ALPHAMERGE_FILTER 0
-%define CONFIG_AMPLIFY_FILTER 0
-%define CONFIG_ASS_FILTER 0
-%define CONFIG_ATADENOISE_FILTER 0
-%define CONFIG_AVGBLUR_FILTER 0
-%define CONFIG_AVGBLUR_OPENCL_FILTER 0
-%define CONFIG_BBOX_FILTER 0
-%define CONFIG_BENCH_FILTER 0
-%define CONFIG_BITPLANENOISE_FILTER 0
-%define CONFIG_BLACKDETECT_FILTER 0
-%define CONFIG_BLACKFRAME_FILTER 0
-%define CONFIG_BLEND_FILTER 0
-%define CONFIG_BM3D_FILTER 0
-%define CONFIG_BOXBLUR_FILTER 0
-%define CONFIG_BOXBLUR_OPENCL_FILTER 0
-%define CONFIG_BWDIF_FILTER 0
-%define CONFIG_CHROMAHOLD_FILTER 0
-%define CONFIG_CHROMAKEY_FILTER 0
-%define CONFIG_CHROMASHIFT_FILTER 0
-%define CONFIG_CIESCOPE_FILTER 0
-%define CONFIG_CODECVIEW_FILTER 0
-%define CONFIG_COLORBALANCE_FILTER 0
-%define CONFIG_COLORCHANNELMIXER_FILTER 0
-%define CONFIG_COLORKEY_FILTER 0
-%define CONFIG_COLORLEVELS_FILTER 0
-%define CONFIG_COLORMATRIX_FILTER 0
-%define CONFIG_COLORSPACE_FILTER 0
-%define CONFIG_CONVOLUTION_FILTER 0
-%define CONFIG_CONVOLUTION_OPENCL_FILTER 0
-%define CONFIG_CONVOLVE_FILTER 0
-%define CONFIG_COPY_FILTER 0
-%define CONFIG_COREIMAGE_FILTER 0
-%define CONFIG_COVER_RECT_FILTER 0
-%define CONFIG_CROP_FILTER 0
-%define CONFIG_CROPDETECT_FILTER 0
-%define CONFIG_CUE_FILTER 0
-%define CONFIG_CURVES_FILTER 0
-%define CONFIG_DATASCOPE_FILTER 0
-%define CONFIG_DCTDNOIZ_FILTER 0
-%define CONFIG_DEBAND_FILTER 0
-%define CONFIG_DEBLOCK_FILTER 0
-%define CONFIG_DECIMATE_FILTER 0
-%define CONFIG_DECONVOLVE_FILTER 0
-%define CONFIG_DEDOT_FILTER 0
-%define CONFIG_DEFLATE_FILTER 0
-%define CONFIG_DEFLICKER_FILTER 0
-%define CONFIG_DEINTERLACE_QSV_FILTER 0
-%define CONFIG_DEINTERLACE_VAAPI_FILTER 0
-%define CONFIG_DEJUDDER_FILTER 0
-%define CONFIG_DELOGO_FILTER 0
-%define CONFIG_DENOISE_VAAPI_FILTER 0
-%define CONFIG_DESHAKE_FILTER 0
-%define CONFIG_DESPILL_FILTER 0
-%define CONFIG_DETELECINE_FILTER 0
-%define CONFIG_DILATION_FILTER 0
-%define CONFIG_DILATION_OPENCL_FILTER 0
-%define CONFIG_DISPLACE_FILTER 0
-%define CONFIG_DOUBLEWEAVE_FILTER 0
-%define CONFIG_DRAWBOX_FILTER 0
-%define CONFIG_DRAWGRAPH_FILTER 0
-%define CONFIG_DRAWGRID_FILTER 0
-%define CONFIG_DRAWTEXT_FILTER 0
-%define CONFIG_EDGEDETECT_FILTER 0
-%define CONFIG_ELBG_FILTER 0
-%define CONFIG_ENTROPY_FILTER 0
-%define CONFIG_EQ_FILTER 0
-%define CONFIG_EROSION_FILTER 0
-%define CONFIG_EROSION_OPENCL_FILTER 0
-%define CONFIG_EXTRACTPLANES_FILTER 0
-%define CONFIG_FADE_FILTER 0
-%define CONFIG_FFTDNOIZ_FILTER 0
-%define CONFIG_FFTFILT_FILTER 0
-%define CONFIG_FIELD_FILTER 0
-%define CONFIG_FIELDHINT_FILTER 0
-%define CONFIG_FIELDMATCH_FILTER 0
-%define CONFIG_FIELDORDER_FILTER 0
-%define CONFIG_FILLBORDERS_FILTER 0
-%define CONFIG_FIND_RECT_FILTER 0
-%define CONFIG_FLOODFILL_FILTER 0
-%define CONFIG_FORMAT_FILTER 0
-%define CONFIG_FPS_FILTER 0
-%define CONFIG_FRAMEPACK_FILTER 0
-%define CONFIG_FRAMERATE_FILTER 0
-%define CONFIG_FRAMESTEP_FILTER 0
-%define CONFIG_FREEZEDETECT_FILTER 0
-%define CONFIG_FREI0R_FILTER 0
-%define CONFIG_FSPP_FILTER 0
-%define CONFIG_GBLUR_FILTER 0
-%define CONFIG_GEQ_FILTER 0
-%define CONFIG_GRADFUN_FILTER 0
-%define CONFIG_GRAPHMONITOR_FILTER 0
-%define CONFIG_GREYEDGE_FILTER 0
-%define CONFIG_HALDCLUT_FILTER 0
-%define CONFIG_HFLIP_FILTER 0
-%define CONFIG_HISTEQ_FILTER 0
-%define CONFIG_HISTOGRAM_FILTER 0
-%define CONFIG_HQDN3D_FILTER 0
-%define CONFIG_HQX_FILTER 0
-%define CONFIG_HSTACK_FILTER 0
-%define CONFIG_HUE_FILTER 0
-%define CONFIG_HWDOWNLOAD_FILTER 0
-%define CONFIG_HWMAP_FILTER 0
-%define CONFIG_HWUPLOAD_FILTER 0
-%define CONFIG_HWUPLOAD_CUDA_FILTER 0
-%define CONFIG_HYSTERESIS_FILTER 0
-%define CONFIG_IDET_FILTER 0
-%define CONFIG_IL_FILTER 0
-%define CONFIG_INFLATE_FILTER 0
-%define CONFIG_INTERLACE_FILTER 0
-%define CONFIG_INTERLEAVE_FILTER 0
-%define CONFIG_KERNDEINT_FILTER 0
-%define CONFIG_LENSCORRECTION_FILTER 0
-%define CONFIG_LENSFUN_FILTER 0
-%define CONFIG_LIBVMAF_FILTER 0
-%define CONFIG_LIMITER_FILTER 0
-%define CONFIG_LOOP_FILTER 0
-%define CONFIG_LUMAKEY_FILTER 0
-%define CONFIG_LUT_FILTER 0
-%define CONFIG_LUT1D_FILTER 0
-%define CONFIG_LUT2_FILTER 0
-%define CONFIG_LUT3D_FILTER 0
-%define CONFIG_LUTRGB_FILTER 0
-%define CONFIG_LUTYUV_FILTER 0
-%define CONFIG_MASKEDCLAMP_FILTER 0
-%define CONFIG_MASKEDMERGE_FILTER 0
-%define CONFIG_MCDEINT_FILTER 0
-%define CONFIG_MERGEPLANES_FILTER 0
-%define CONFIG_MESTIMATE_FILTER 0
-%define CONFIG_METADATA_FILTER 0
-%define CONFIG_MIDEQUALIZER_FILTER 0
-%define CONFIG_MINTERPOLATE_FILTER 0
-%define CONFIG_MIX_FILTER 0
-%define CONFIG_MPDECIMATE_FILTER 0
-%define CONFIG_NEGATE_FILTER 0
-%define CONFIG_NLMEANS_FILTER 0
-%define CONFIG_NNEDI_FILTER 0
-%define CONFIG_NOFORMAT_FILTER 0
-%define CONFIG_NOISE_FILTER 0
-%define CONFIG_NORMALIZE_FILTER 0
-%define CONFIG_NULL_FILTER 0
-%define CONFIG_OCR_FILTER 0
-%define CONFIG_OCV_FILTER 0
-%define CONFIG_OSCILLOSCOPE_FILTER 0
-%define CONFIG_OVERLAY_FILTER 0
-%define CONFIG_OVERLAY_OPENCL_FILTER 0
-%define CONFIG_OVERLAY_QSV_FILTER 0
-%define CONFIG_OWDENOISE_FILTER 0
-%define CONFIG_PAD_FILTER 0
-%define CONFIG_PALETTEGEN_FILTER 0
-%define CONFIG_PALETTEUSE_FILTER 0
-%define CONFIG_PERMS_FILTER 0
-%define CONFIG_PERSPECTIVE_FILTER 0
-%define CONFIG_PHASE_FILTER 0
-%define CONFIG_PIXDESCTEST_FILTER 0
-%define CONFIG_PIXSCOPE_FILTER 0
-%define CONFIG_PP_FILTER 0
-%define CONFIG_PP7_FILTER 0
-%define CONFIG_PREMULTIPLY_FILTER 0
-%define CONFIG_PREWITT_FILTER 0
-%define CONFIG_PREWITT_OPENCL_FILTER 0
-%define CONFIG_PROCAMP_VAAPI_FILTER 0
-%define CONFIG_PROGRAM_OPENCL_FILTER 0
-%define CONFIG_PSEUDOCOLOR_FILTER 0
-%define CONFIG_PSNR_FILTER 0
-%define CONFIG_PULLUP_FILTER 0
-%define CONFIG_QP_FILTER 0
-%define CONFIG_RANDOM_FILTER 0
-%define CONFIG_READEIA608_FILTER 0
-%define CONFIG_READVITC_FILTER 0
-%define CONFIG_REALTIME_FILTER 0
-%define CONFIG_REMAP_FILTER 0
-%define CONFIG_REMOVEGRAIN_FILTER 0
-%define CONFIG_REMOVELOGO_FILTER 0
-%define CONFIG_REPEATFIELDS_FILTER 0
-%define CONFIG_REVERSE_FILTER 0
-%define CONFIG_RGBASHIFT_FILTER 0
-%define CONFIG_ROBERTS_FILTER 0
-%define CONFIG_ROBERTS_OPENCL_FILTER 0
-%define CONFIG_ROTATE_FILTER 0
-%define CONFIG_SAB_FILTER 0
-%define CONFIG_SCALE_FILTER 0
-%define CONFIG_SCALE_CUDA_FILTER 0
-%define CONFIG_SCALE_NPP_FILTER 0
-%define CONFIG_SCALE_QSV_FILTER 0
-%define CONFIG_SCALE_VAAPI_FILTER 0
-%define CONFIG_SCALE2REF_FILTER 0
-%define CONFIG_SELECT_FILTER 0
-%define CONFIG_SELECTIVECOLOR_FILTER 0
-%define CONFIG_SENDCMD_FILTER 0
-%define CONFIG_SEPARATEFIELDS_FILTER 0
-%define CONFIG_SETDAR_FILTER 0
-%define CONFIG_SETFIELD_FILTER 0
-%define CONFIG_SETPARAMS_FILTER 0
-%define CONFIG_SETPTS_FILTER 0
-%define CONFIG_SETRANGE_FILTER 0
-%define CONFIG_SETSAR_FILTER 0
-%define CONFIG_SETTB_FILTER 0
-%define CONFIG_SHARPNESS_VAAPI_FILTER 0
-%define CONFIG_SHOWINFO_FILTER 0
-%define CONFIG_SHOWPALETTE_FILTER 0
-%define CONFIG_SHUFFLEFRAMES_FILTER 0
-%define CONFIG_SHUFFLEPLANES_FILTER 0
-%define CONFIG_SIDEDATA_FILTER 0
-%define CONFIG_SIGNALSTATS_FILTER 0
-%define CONFIG_SIGNATURE_FILTER 0
-%define CONFIG_SMARTBLUR_FILTER 0
-%define CONFIG_SOBEL_FILTER 0
-%define CONFIG_SOBEL_OPENCL_FILTER 0
-%define CONFIG_SPLIT_FILTER 0
-%define CONFIG_SPP_FILTER 0
-%define CONFIG_SR_FILTER 0
-%define CONFIG_SSIM_FILTER 0
-%define CONFIG_STEREO3D_FILTER 0
-%define CONFIG_STREAMSELECT_FILTER 0
-%define CONFIG_SUBTITLES_FILTER 0
-%define CONFIG_SUPER2XSAI_FILTER 0
-%define CONFIG_SWAPRECT_FILTER 0
-%define CONFIG_SWAPUV_FILTER 0
-%define CONFIG_TBLEND_FILTER 0
-%define CONFIG_TELECINE_FILTER 0
-%define CONFIG_THRESHOLD_FILTER 0
-%define CONFIG_THUMBNAIL_FILTER 0
-%define CONFIG_THUMBNAIL_CUDA_FILTER 0
-%define CONFIG_TILE_FILTER 0
-%define CONFIG_TINTERLACE_FILTER 0
-%define CONFIG_TLUT2_FILTER 0
-%define CONFIG_TMIX_FILTER 0
-%define CONFIG_TONEMAP_FILTER 0
-%define CONFIG_TONEMAP_OPENCL_FILTER 0
-%define CONFIG_TPAD_FILTER 0
-%define CONFIG_TRANSPOSE_FILTER 0
-%define CONFIG_TRANSPOSE_NPP_FILTER 0
-%define CONFIG_TRIM_FILTER 0
-%define CONFIG_UNPREMULTIPLY_FILTER 0
-%define CONFIG_UNSHARP_FILTER 0
-%define CONFIG_UNSHARP_OPENCL_FILTER 0
-%define CONFIG_USPP_FILTER 0
-%define CONFIG_VAGUEDENOISER_FILTER 0
-%define CONFIG_VECTORSCOPE_FILTER 0
-%define CONFIG_VFLIP_FILTER 0
-%define CONFIG_VFRDET_FILTER 0
-%define CONFIG_VIBRANCE_FILTER 0
-%define CONFIG_VIDSTABDETECT_FILTER 0
-%define CONFIG_VIDSTABTRANSFORM_FILTER 0
-%define CONFIG_VIGNETTE_FILTER 0
-%define CONFIG_VMAFMOTION_FILTER 0
-%define CONFIG_VPP_QSV_FILTER 0
-%define CONFIG_VSTACK_FILTER 0
-%define CONFIG_W3FDIF_FILTER 0
-%define CONFIG_WAVEFORM_FILTER 0
-%define CONFIG_WEAVE_FILTER 0
-%define CONFIG_XBR_FILTER 0
-%define CONFIG_XSTACK_FILTER 0
-%define CONFIG_YADIF_FILTER 0
-%define CONFIG_YADIF_CUDA_FILTER 0
-%define CONFIG_ZMQ_FILTER 0
-%define CONFIG_ZOOMPAN_FILTER 0
-%define CONFIG_ZSCALE_FILTER 0
-%define CONFIG_ALLRGB_FILTER 0
-%define CONFIG_ALLYUV_FILTER 0
-%define CONFIG_CELLAUTO_FILTER 0
-%define CONFIG_COLOR_FILTER 0
-%define CONFIG_COREIMAGESRC_FILTER 0
-%define CONFIG_FREI0R_SRC_FILTER 0
-%define CONFIG_HALDCLUTSRC_FILTER 0
-%define CONFIG_LIFE_FILTER 0
-%define CONFIG_MANDELBROT_FILTER 0
-%define CONFIG_MPTESTSRC_FILTER 0
-%define CONFIG_NULLSRC_FILTER 0
-%define CONFIG_OPENCLSRC_FILTER 0
-%define CONFIG_PAL75BARS_FILTER 0
-%define CONFIG_PAL100BARS_FILTER 0
-%define CONFIG_RGBTESTSRC_FILTER 0
-%define CONFIG_SMPTEBARS_FILTER 0
-%define CONFIG_SMPTEHDBARS_FILTER 0
-%define CONFIG_TESTSRC_FILTER 0
-%define CONFIG_TESTSRC2_FILTER 0
-%define CONFIG_YUVTESTSRC_FILTER 0
-%define CONFIG_NULLSINK_FILTER 0
-%define CONFIG_ABITSCOPE_FILTER 0
-%define CONFIG_ADRAWGRAPH_FILTER 0
-%define CONFIG_AGRAPHMONITOR_FILTER 0
-%define CONFIG_AHISTOGRAM_FILTER 0
-%define CONFIG_APHASEMETER_FILTER 0
-%define CONFIG_AVECTORSCOPE_FILTER 0
-%define CONFIG_CONCAT_FILTER 0
-%define CONFIG_SHOWCQT_FILTER 0
-%define CONFIG_SHOWFREQS_FILTER 0
-%define CONFIG_SHOWSPECTRUM_FILTER 0
-%define CONFIG_SHOWSPECTRUMPIC_FILTER 0
-%define CONFIG_SHOWVOLUME_FILTER 0
-%define CONFIG_SHOWWAVES_FILTER 0
-%define CONFIG_SHOWWAVESPIC_FILTER 0
-%define CONFIG_SPECTRUMSYNTH_FILTER 0
-%define CONFIG_AMOVIE_FILTER 0
-%define CONFIG_MOVIE_FILTER 0
-%define CONFIG_AFIFO_FILTER 0
-%define CONFIG_FIFO_FILTER 0
-%define CONFIG_AA_DEMUXER 1
-%define CONFIG_AAC_DEMUXER 1
-%define CONFIG_AC3_DEMUXER 1
-%define CONFIG_ACM_DEMUXER 1
-%define CONFIG_ACT_DEMUXER 1
-%define CONFIG_ADF_DEMUXER 1
-%define CONFIG_ADP_DEMUXER 1
-%define CONFIG_ADS_DEMUXER 1
-%define CONFIG_ADX_DEMUXER 1
-%define CONFIG_AEA_DEMUXER 1
-%define CONFIG_AFC_DEMUXER 1
-%define CONFIG_AIFF_DEMUXER 1
-%define CONFIG_AIX_DEMUXER 1
-%define CONFIG_AMR_DEMUXER 1
-%define CONFIG_AMRNB_DEMUXER 1
-%define CONFIG_AMRWB_DEMUXER 1
-%define CONFIG_ANM_DEMUXER 1
-%define CONFIG_APC_DEMUXER 1
-%define CONFIG_APE_DEMUXER 1
-%define CONFIG_APNG_DEMUXER 1
-%define CONFIG_APTX_DEMUXER 1
-%define CONFIG_APTX_HD_DEMUXER 1
-%define CONFIG_AQTITLE_DEMUXER 1
-%define CONFIG_ASF_DEMUXER 1
-%define CONFIG_ASF_O_DEMUXER 1
-%define CONFIG_ASS_DEMUXER 1
-%define CONFIG_AST_DEMUXER 1
-%define CONFIG_AU_DEMUXER 1
-%define CONFIG_AVI_DEMUXER 1
-%define CONFIG_AVISYNTH_DEMUXER 0
-%define CONFIG_AVR_DEMUXER 1
-%define CONFIG_AVS_DEMUXER 1
-%define CONFIG_AVS2_DEMUXER 1
-%define CONFIG_BETHSOFTVID_DEMUXER 1
-%define CONFIG_BFI_DEMUXER 1
-%define CONFIG_BINTEXT_DEMUXER 1
-%define CONFIG_BINK_DEMUXER 1
-%define CONFIG_BIT_DEMUXER 1
-%define CONFIG_BMV_DEMUXER 1
-%define CONFIG_BFSTM_DEMUXER 1
-%define CONFIG_BRSTM_DEMUXER 1
-%define CONFIG_BOA_DEMUXER 1
-%define CONFIG_C93_DEMUXER 1
-%define CONFIG_CAF_DEMUXER 1
-%define CONFIG_CAVSVIDEO_DEMUXER 1
-%define CONFIG_CDG_DEMUXER 1
-%define CONFIG_CDXL_DEMUXER 1
-%define CONFIG_CINE_DEMUXER 1
-%define CONFIG_CODEC2_DEMUXER 1
-%define CONFIG_CODEC2RAW_DEMUXER 1
-%define CONFIG_CONCAT_DEMUXER 1
-%define CONFIG_DASH_DEMUXER 0
-%define CONFIG_DATA_DEMUXER 1
-%define CONFIG_DAUD_DEMUXER 1
-%define CONFIG_DCSTR_DEMUXER 1
-%define CONFIG_DFA_DEMUXER 1
-%define CONFIG_DIRAC_DEMUXER 1
-%define CONFIG_DNXHD_DEMUXER 1
-%define CONFIG_DSF_DEMUXER 1
-%define CONFIG_DSICIN_DEMUXER 1
-%define CONFIG_DSS_DEMUXER 1
-%define CONFIG_DTS_DEMUXER 1
-%define CONFIG_DTSHD_DEMUXER 1
-%define CONFIG_DV_DEMUXER 1
-%define CONFIG_DVBSUB_DEMUXER 1
-%define CONFIG_DVBTXT_DEMUXER 1
-%define CONFIG_DXA_DEMUXER 1
-%define CONFIG_EA_DEMUXER 1
-%define CONFIG_EA_CDATA_DEMUXER 1
-%define CONFIG_EAC3_DEMUXER 1
-%define CONFIG_EPAF_DEMUXER 1
-%define CONFIG_FFMETADATA_DEMUXER 1
-%define CONFIG_FILMSTRIP_DEMUXER 1
-%define CONFIG_FITS_DEMUXER 1
-%define CONFIG_FLAC_DEMUXER 1
-%define CONFIG_FLIC_DEMUXER 1
-%define CONFIG_FLV_DEMUXER 1
-%define CONFIG_LIVE_FLV_DEMUXER 1
-%define CONFIG_FOURXM_DEMUXER 1
-%define CONFIG_FRM_DEMUXER 1
-%define CONFIG_FSB_DEMUXER 1
-%define CONFIG_G722_DEMUXER 1
-%define CONFIG_G723_1_DEMUXER 1
-%define CONFIG_G726_DEMUXER 1
-%define CONFIG_G726LE_DEMUXER 1
-%define CONFIG_G729_DEMUXER 1
-%define CONFIG_GDV_DEMUXER 1
-%define CONFIG_GENH_DEMUXER 1
-%define CONFIG_GIF_DEMUXER 1
-%define CONFIG_GSM_DEMUXER 1
-%define CONFIG_GXF_DEMUXER 1
-%define CONFIG_H261_DEMUXER 1
-%define CONFIG_H263_DEMUXER 1
-%define CONFIG_H264_DEMUXER 1
-%define CONFIG_HEVC_DEMUXER 1
-%define CONFIG_HLS_DEMUXER 1
-%define CONFIG_HNM_DEMUXER 1
-%define CONFIG_ICO_DEMUXER 1
-%define CONFIG_IDCIN_DEMUXER 1
-%define CONFIG_IDF_DEMUXER 1
-%define CONFIG_IFF_DEMUXER 1
-%define CONFIG_ILBC_DEMUXER 1
-%define CONFIG_IMAGE2_DEMUXER 1
-%define CONFIG_IMAGE2PIPE_DEMUXER 1
-%define CONFIG_IMAGE2_ALIAS_PIX_DEMUXER 1
-%define CONFIG_IMAGE2_BRENDER_PIX_DEMUXER 1
-%define CONFIG_INGENIENT_DEMUXER 1
-%define CONFIG_IPMOVIE_DEMUXER 1
-%define CONFIG_IRCAM_DEMUXER 1
-%define CONFIG_ISS_DEMUXER 1
-%define CONFIG_IV8_DEMUXER 1
-%define CONFIG_IVF_DEMUXER 1
-%define CONFIG_IVR_DEMUXER 1
-%define CONFIG_JACOSUB_DEMUXER 1
-%define CONFIG_JV_DEMUXER 1
-%define CONFIG_LMLM4_DEMUXER 1
-%define CONFIG_LOAS_DEMUXER 1
-%define CONFIG_LRC_DEMUXER 1
-%define CONFIG_LVF_DEMUXER 1
-%define CONFIG_LXF_DEMUXER 1
-%define CONFIG_M4V_DEMUXER 1
-%define CONFIG_MATROSKA_DEMUXER 1
-%define CONFIG_MGSTS_DEMUXER 1
-%define CONFIG_MICRODVD_DEMUXER 1
-%define CONFIG_MJPEG_DEMUXER 1
-%define CONFIG_MJPEG_2000_DEMUXER 1
-%define CONFIG_MLP_DEMUXER 1
-%define CONFIG_MLV_DEMUXER 1
-%define CONFIG_MM_DEMUXER 1
-%define CONFIG_MMF_DEMUXER 1
-%define CONFIG_MOV_DEMUXER 1
-%define CONFIG_MP3_DEMUXER 1
-%define CONFIG_MPC_DEMUXER 1
-%define CONFIG_MPC8_DEMUXER 1
-%define CONFIG_MPEGPS_DEMUXER 1
-%define CONFIG_MPEGTS_DEMUXER 1
-%define CONFIG_MPEGTSRAW_DEMUXER 1
-%define CONFIG_MPEGVIDEO_DEMUXER 1
-%define CONFIG_MPJPEG_DEMUXER 1
-%define CONFIG_MPL2_DEMUXER 1
-%define CONFIG_MPSUB_DEMUXER 1
-%define CONFIG_MSF_DEMUXER 1
-%define CONFIG_MSNWC_TCP_DEMUXER 1
-%define CONFIG_MTAF_DEMUXER 1
-%define CONFIG_MTV_DEMUXER 1
-%define CONFIG_MUSX_DEMUXER 1
-%define CONFIG_MV_DEMUXER 1
-%define CONFIG_MVI_DEMUXER 1
-%define CONFIG_MXF_DEMUXER 1
-%define CONFIG_MXG_DEMUXER 1
-%define CONFIG_NC_DEMUXER 1
-%define CONFIG_NISTSPHERE_DEMUXER 1
-%define CONFIG_NSP_DEMUXER 1
-%define CONFIG_NSV_DEMUXER 1
-%define CONFIG_NUT_DEMUXER 1
-%define CONFIG_NUV_DEMUXER 1
-%define CONFIG_OGG_DEMUXER 1
-%define CONFIG_OMA_DEMUXER 1
-%define CONFIG_PAF_DEMUXER 1
-%define CONFIG_PCM_ALAW_DEMUXER 1
-%define CONFIG_PCM_MULAW_DEMUXER 1
-%define CONFIG_PCM_VIDC_DEMUXER 1
-%define CONFIG_PCM_F64BE_DEMUXER 1
-%define CONFIG_PCM_F64LE_DEMUXER 1
-%define CONFIG_PCM_F32BE_DEMUXER 1
-%define CONFIG_PCM_F32LE_DEMUXER 1
-%define CONFIG_PCM_S32BE_DEMUXER 1
-%define CONFIG_PCM_S32LE_DEMUXER 1
-%define CONFIG_PCM_S24BE_DEMUXER 1
-%define CONFIG_PCM_S24LE_DEMUXER 1
-%define CONFIG_PCM_S16BE_DEMUXER 1
-%define CONFIG_PCM_S16LE_DEMUXER 1
-%define CONFIG_PCM_S8_DEMUXER 1
-%define CONFIG_PCM_U32BE_DEMUXER 1
-%define CONFIG_PCM_U32LE_DEMUXER 1
-%define CONFIG_PCM_U24BE_DEMUXER 1
-%define CONFIG_PCM_U24LE_DEMUXER 1
-%define CONFIG_PCM_U16BE_DEMUXER 1
-%define CONFIG_PCM_U16LE_DEMUXER 1
-%define CONFIG_PCM_U8_DEMUXER 1
-%define CONFIG_PJS_DEMUXER 1
-%define CONFIG_PMP_DEMUXER 1
-%define CONFIG_PVA_DEMUXER 1
-%define CONFIG_PVF_DEMUXER 1
-%define CONFIG_QCP_DEMUXER 1
-%define CONFIG_R3D_DEMUXER 1
-%define CONFIG_RAWVIDEO_DEMUXER 1
-%define CONFIG_REALTEXT_DEMUXER 1
-%define CONFIG_REDSPARK_DEMUXER 1
-%define CONFIG_RL2_DEMUXER 1
-%define CONFIG_RM_DEMUXER 1
-%define CONFIG_ROQ_DEMUXER 1
-%define CONFIG_RPL_DEMUXER 1
-%define CONFIG_RSD_DEMUXER 1
-%define CONFIG_RSO_DEMUXER 1
-%define CONFIG_RTP_DEMUXER 0
-%define CONFIG_RTSP_DEMUXER 0
-%define CONFIG_S337M_DEMUXER 1
-%define CONFIG_SAMI_DEMUXER 1
-%define CONFIG_SAP_DEMUXER 0
-%define CONFIG_SBC_DEMUXER 1
-%define CONFIG_SBG_DEMUXER 1
-%define CONFIG_SCC_DEMUXER 1
-%define CONFIG_SDP_DEMUXER 0
-%define CONFIG_SDR2_DEMUXER 1
-%define CONFIG_SDS_DEMUXER 1
-%define CONFIG_SDX_DEMUXER 1
-%define CONFIG_SEGAFILM_DEMUXER 1
-%define CONFIG_SER_DEMUXER 1
-%define CONFIG_SHORTEN_DEMUXER 1
-%define CONFIG_SIFF_DEMUXER 1
-%define CONFIG_SLN_DEMUXER 1
-%define CONFIG_SMACKER_DEMUXER 1
-%define CONFIG_SMJPEG_DEMUXER 1
-%define CONFIG_SMUSH_DEMUXER 1
-%define CONFIG_SOL_DEMUXER 1
-%define CONFIG_SOX_DEMUXER 1
-%define CONFIG_SPDIF_DEMUXER 1
-%define CONFIG_SRT_DEMUXER 1
-%define CONFIG_STR_DEMUXER 1
-%define CONFIG_STL_DEMUXER 1
-%define CONFIG_SUBVIEWER1_DEMUXER 1
-%define CONFIG_SUBVIEWER_DEMUXER 1
-%define CONFIG_SUP_DEMUXER 1
-%define CONFIG_SVAG_DEMUXER 1
-%define CONFIG_SWF_DEMUXER 1
-%define CONFIG_TAK_DEMUXER 1
-%define CONFIG_TEDCAPTIONS_DEMUXER 1
-%define CONFIG_THP_DEMUXER 1
-%define CONFIG_THREEDOSTR_DEMUXER 1
-%define CONFIG_TIERTEXSEQ_DEMUXER 1
-%define CONFIG_TMV_DEMUXER 1
-%define CONFIG_TRUEHD_DEMUXER 1
-%define CONFIG_TTA_DEMUXER 1
-%define CONFIG_TXD_DEMUXER 1
-%define CONFIG_TTY_DEMUXER 1
-%define CONFIG_TY_DEMUXER 1
-%define CONFIG_V210_DEMUXER 1
-%define CONFIG_V210X_DEMUXER 1
-%define CONFIG_VAG_DEMUXER 1
-%define CONFIG_VC1_DEMUXER 1
-%define CONFIG_VC1T_DEMUXER 1
-%define CONFIG_VIVO_DEMUXER 1
-%define CONFIG_VMD_DEMUXER 1
-%define CONFIG_VOBSUB_DEMUXER 1
-%define CONFIG_VOC_DEMUXER 1
-%define CONFIG_VPK_DEMUXER 1
-%define CONFIG_VPLAYER_DEMUXER 1
-%define CONFIG_VQF_DEMUXER 1
-%define CONFIG_W64_DEMUXER 1
-%define CONFIG_WAV_DEMUXER 1
-%define CONFIG_WC3_DEMUXER 1
-%define CONFIG_WEBM_DASH_MANIFEST_DEMUXER 1
-%define CONFIG_WEBVTT_DEMUXER 1
-%define CONFIG_WSAUD_DEMUXER 1
-%define CONFIG_WSD_DEMUXER 1
-%define CONFIG_WSVQA_DEMUXER 1
-%define CONFIG_WTV_DEMUXER 1
-%define CONFIG_WVE_DEMUXER 1
-%define CONFIG_WV_DEMUXER 1
-%define CONFIG_XA_DEMUXER 1
-%define CONFIG_XBIN_DEMUXER 1
-%define CONFIG_XMV_DEMUXER 1
-%define CONFIG_XVAG_DEMUXER 1
-%define CONFIG_XWMA_DEMUXER 1
-%define CONFIG_YOP_DEMUXER 1
-%define CONFIG_YUV4MPEGPIPE_DEMUXER 1
-%define CONFIG_IMAGE_BMP_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_DDS_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_DPX_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_EXR_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_J2K_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_JPEG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PAM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PBM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PCX_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PGM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PICTOR_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PNG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PPM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PSD_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_QDRAW_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SGI_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SVG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_TIFF_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_WEBP_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_XPM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_XWD_PIPE_DEMUXER 1
-%define CONFIG_LIBGME_DEMUXER 0
-%define CONFIG_LIBMODPLUG_DEMUXER 0
-%define CONFIG_LIBOPENMPT_DEMUXER 0
-%define CONFIG_VAPOURSYNTH_DEMUXER 0
-%define CONFIG_A64_MUXER 0
-%define CONFIG_AC3_MUXER 0
-%define CONFIG_ADTS_MUXER 0
-%define CONFIG_ADX_MUXER 0
-%define CONFIG_AIFF_MUXER 0
-%define CONFIG_AMR_MUXER 0
-%define CONFIG_APNG_MUXER 0
-%define CONFIG_APTX_MUXER 0
-%define CONFIG_APTX_HD_MUXER 0
-%define CONFIG_ASF_MUXER 0
-%define CONFIG_ASS_MUXER 0
-%define CONFIG_AST_MUXER 0
-%define CONFIG_ASF_STREAM_MUXER 0
-%define CONFIG_AU_MUXER 0
-%define CONFIG_AVI_MUXER 0
-%define CONFIG_AVM2_MUXER 0
-%define CONFIG_AVS2_MUXER 0
-%define CONFIG_BIT_MUXER 0
-%define CONFIG_CAF_MUXER 0
-%define CONFIG_CAVSVIDEO_MUXER 0
-%define CONFIG_CODEC2_MUXER 0
-%define CONFIG_CODEC2RAW_MUXER 0
-%define CONFIG_CRC_MUXER 0
-%define CONFIG_DASH_MUXER 0
-%define CONFIG_DATA_MUXER 0
-%define CONFIG_DAUD_MUXER 0
-%define CONFIG_DIRAC_MUXER 0
-%define CONFIG_DNXHD_MUXER 0
-%define CONFIG_DTS_MUXER 0
-%define CONFIG_DV_MUXER 0
-%define CONFIG_EAC3_MUXER 0
-%define CONFIG_F4V_MUXER 0
-%define CONFIG_FFMETADATA_MUXER 0
-%define CONFIG_FIFO_MUXER 0
-%define CONFIG_FIFO_TEST_MUXER 0
-%define CONFIG_FILMSTRIP_MUXER 0
-%define CONFIG_FITS_MUXER 0
-%define CONFIG_FLAC_MUXER 0
-%define CONFIG_FLV_MUXER 0
-%define CONFIG_FRAMECRC_MUXER 0
-%define CONFIG_FRAMEHASH_MUXER 0
-%define CONFIG_FRAMEMD5_MUXER 0
-%define CONFIG_G722_MUXER 0
-%define CONFIG_G723_1_MUXER 0
-%define CONFIG_G726_MUXER 0
-%define CONFIG_G726LE_MUXER 0
-%define CONFIG_GIF_MUXER 0
-%define CONFIG_GSM_MUXER 0
-%define CONFIG_GXF_MUXER 0
-%define CONFIG_H261_MUXER 0
-%define CONFIG_H263_MUXER 0
-%define CONFIG_H264_MUXER 0
-%define CONFIG_HASH_MUXER 0
-%define CONFIG_HDS_MUXER 0
-%define CONFIG_HEVC_MUXER 0
-%define CONFIG_HLS_MUXER 0
-%define CONFIG_ICO_MUXER 0
-%define CONFIG_ILBC_MUXER 0
-%define CONFIG_IMAGE2_MUXER 0
-%define CONFIG_IMAGE2PIPE_MUXER 0
-%define CONFIG_IPOD_MUXER 0
-%define CONFIG_IRCAM_MUXER 0
-%define CONFIG_ISMV_MUXER 0
-%define CONFIG_IVF_MUXER 0
-%define CONFIG_JACOSUB_MUXER 0
-%define CONFIG_LATM_MUXER 0
-%define CONFIG_LRC_MUXER 0
-%define CONFIG_M4V_MUXER 0
-%define CONFIG_MD5_MUXER 0
-%define CONFIG_MATROSKA_MUXER 0
-%define CONFIG_MATROSKA_AUDIO_MUXER 0
-%define CONFIG_MICRODVD_MUXER 0
-%define CONFIG_MJPEG_MUXER 0
-%define CONFIG_MLP_MUXER 0
-%define CONFIG_MMF_MUXER 0
-%define CONFIG_MOV_MUXER 0
-%define CONFIG_MP2_MUXER 0
-%define CONFIG_MP3_MUXER 0
-%define CONFIG_MP4_MUXER 0
-%define CONFIG_MPEG1SYSTEM_MUXER 0
-%define CONFIG_MPEG1VCD_MUXER 0
-%define CONFIG_MPEG1VIDEO_MUXER 0
-%define CONFIG_MPEG2DVD_MUXER 0
-%define CONFIG_MPEG2SVCD_MUXER 0
-%define CONFIG_MPEG2VIDEO_MUXER 0
-%define CONFIG_MPEG2VOB_MUXER 0
-%define CONFIG_MPEGTS_MUXER 0
-%define CONFIG_MPJPEG_MUXER 0
-%define CONFIG_MXF_MUXER 0
-%define CONFIG_MXF_D10_MUXER 0
-%define CONFIG_MXF_OPATOM_MUXER 0
-%define CONFIG_NULL_MUXER 0
-%define CONFIG_NUT_MUXER 0
-%define CONFIG_OGA_MUXER 0
-%define CONFIG_OGG_MUXER 0
-%define CONFIG_OGV_MUXER 0
-%define CONFIG_OMA_MUXER 0
-%define CONFIG_OPUS_MUXER 0
-%define CONFIG_PCM_ALAW_MUXER 0
-%define CONFIG_PCM_MULAW_MUXER 0
-%define CONFIG_PCM_VIDC_MUXER 0
-%define CONFIG_PCM_F64BE_MUXER 0
-%define CONFIG_PCM_F64LE_MUXER 0
-%define CONFIG_PCM_F32BE_MUXER 0
-%define CONFIG_PCM_F32LE_MUXER 0
-%define CONFIG_PCM_S32BE_MUXER 0
-%define CONFIG_PCM_S32LE_MUXER 0
-%define CONFIG_PCM_S24BE_MUXER 0
-%define CONFIG_PCM_S24LE_MUXER 0
-%define CONFIG_PCM_S16BE_MUXER 0
-%define CONFIG_PCM_S16LE_MUXER 0
-%define CONFIG_PCM_S8_MUXER 0
-%define CONFIG_PCM_U32BE_MUXER 0
-%define CONFIG_PCM_U32LE_MUXER 0
-%define CONFIG_PCM_U24BE_MUXER 0
-%define CONFIG_PCM_U24LE_MUXER 0
-%define CONFIG_PCM_U16BE_MUXER 0
-%define CONFIG_PCM_U16LE_MUXER 0
-%define CONFIG_PCM_U8_MUXER 0
-%define CONFIG_PSP_MUXER 0
-%define CONFIG_RAWVIDEO_MUXER 0
-%define CONFIG_RM_MUXER 0
-%define CONFIG_ROQ_MUXER 0
-%define CONFIG_RSO_MUXER 0
-%define CONFIG_RTP_MUXER 0
-%define CONFIG_RTP_MPEGTS_MUXER 0
-%define CONFIG_RTSP_MUXER 0
-%define CONFIG_SAP_MUXER 0
-%define CONFIG_SBC_MUXER 0
-%define CONFIG_SCC_MUXER 0
-%define CONFIG_SEGAFILM_MUXER 0
-%define CONFIG_SEGMENT_MUXER 0
-%define CONFIG_STREAM_SEGMENT_MUXER 0
-%define CONFIG_SINGLEJPEG_MUXER 0
-%define CONFIG_SMJPEG_MUXER 0
-%define CONFIG_SMOOTHSTREAMING_MUXER 0
-%define CONFIG_SOX_MUXER 0
-%define CONFIG_SPX_MUXER 0
-%define CONFIG_SPDIF_MUXER 0
-%define CONFIG_SRT_MUXER 0
-%define CONFIG_SUP_MUXER 0
-%define CONFIG_SWF_MUXER 0
-%define CONFIG_TEE_MUXER 0
-%define CONFIG_TG2_MUXER 0
-%define CONFIG_TGP_MUXER 0
-%define CONFIG_MKVTIMESTAMP_V2_MUXER 0
-%define CONFIG_TRUEHD_MUXER 0
-%define CONFIG_TTA_MUXER 0
-%define CONFIG_UNCODEDFRAMECRC_MUXER 0
-%define CONFIG_VC1_MUXER 0
-%define CONFIG_VC1T_MUXER 0
-%define CONFIG_VOC_MUXER 0
-%define CONFIG_W64_MUXER 0
-%define CONFIG_WAV_MUXER 0
-%define CONFIG_WEBM_MUXER 0
-%define CONFIG_WEBM_DASH_MANIFEST_MUXER 0
-%define CONFIG_WEBM_CHUNK_MUXER 0
-%define CONFIG_WEBP_MUXER 0
-%define CONFIG_WEBVTT_MUXER 0
-%define CONFIG_WTV_MUXER 0
-%define CONFIG_WV_MUXER 0
-%define CONFIG_YUV4MPEGPIPE_MUXER 0
-%define CONFIG_CHROMAPRINT_MUXER 0
-%define CONFIG_ASYNC_PROTOCOL 1
-%define CONFIG_BLURAY_PROTOCOL 0
-%define CONFIG_CACHE_PROTOCOL 1
-%define CONFIG_CONCAT_PROTOCOL 1
-%define CONFIG_CRYPTO_PROTOCOL 1
-%define CONFIG_DATA_PROTOCOL 1
-%define CONFIG_FFRTMPCRYPT_PROTOCOL 0
-%define CONFIG_FFRTMPHTTP_PROTOCOL 0
-%define CONFIG_FILE_PROTOCOL 1
-%define CONFIG_FTP_PROTOCOL 0
-%define CONFIG_GOPHER_PROTOCOL 0
-%define CONFIG_HLS_PROTOCOL 1
-%define CONFIG_HTTP_PROTOCOL 0
-%define CONFIG_HTTPPROXY_PROTOCOL 0
-%define CONFIG_HTTPS_PROTOCOL 0
-%define CONFIG_ICECAST_PROTOCOL 0
-%define CONFIG_MMSH_PROTOCOL 0
-%define CONFIG_MMST_PROTOCOL 0
-%define CONFIG_MD5_PROTOCOL 1
-%define CONFIG_PIPE_PROTOCOL 1
-%define CONFIG_PROMPEG_PROTOCOL 1
-%define CONFIG_RTMP_PROTOCOL 0
-%define CONFIG_RTMPE_PROTOCOL 0
-%define CONFIG_RTMPS_PROTOCOL 0
-%define CONFIG_RTMPT_PROTOCOL 0
-%define CONFIG_RTMPTE_PROTOCOL 0
-%define CONFIG_RTMPTS_PROTOCOL 0
-%define CONFIG_RTP_PROTOCOL 0
-%define CONFIG_SCTP_PROTOCOL 0
-%define CONFIG_SRTP_PROTOCOL 0
-%define CONFIG_SUBFILE_PROTOCOL 1
-%define CONFIG_TEE_PROTOCOL 1
-%define CONFIG_TCP_PROTOCOL 0
-%define CONFIG_TLS_PROTOCOL 0
-%define CONFIG_UDP_PROTOCOL 0
-%define CONFIG_UDPLITE_PROTOCOL 0
-%define CONFIG_UNIX_PROTOCOL 0
-%define CONFIG_LIBRTMP_PROTOCOL 0
-%define CONFIG_LIBRTMPE_PROTOCOL 0
-%define CONFIG_LIBRTMPS_PROTOCOL 0
-%define CONFIG_LIBRTMPT_PROTOCOL 0
-%define CONFIG_LIBRTMPTE_PROTOCOL 0
-%define CONFIG_LIBSRT_PROTOCOL 0
-%define CONFIG_LIBSSH_PROTOCOL 0
-%define CONFIG_LIBSMBCLIENT_PROTOCOL 0
diff --git a/build/ffmpeg/config-x64.h b/build/ffmpeg/config-x64.h
deleted file mode 100755
index 2cd55a896..000000000
--- a/build/ffmpeg/config-x64.h
+++ /dev/null
@@ -1,2476 +0,0 @@
-/* Automatically generated by configure - do not modify! */
-#ifndef FFMPEG_CONFIG_H
-#define FFMPEG_CONFIG_H
-#define FFMPEG_CONFIGURATION "--disable-avfilter --disable-avresample --disable-bzlib --disable-d3d11va --disable-dxva2 --disable-decoder='atrac3p,indeo2,indeo3,indeo4,indeo5,twinvq' --disable-devices --disable-doc --disable-encoders --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-filters --disable-hwaccels --disable-muxers --disable-network --disable-postproc --disable-pthreads --disable-shared --enable-gpl --enable-runtime-cpudetect --enable-static --enable-small --enable-x86asm --x86asmexe=yasm --enable-zlib --extra-cflags=-D_SYSCRT --extra-cflags=-I../../include --extra-cflags=-MD --extra-cflags=-wd4005 --extra-cflags=-wd4189 --extra-ldflags='-LIBPATH:../../lib/x64/Release' --toolchain=msvc"
-#define FFMPEG_LICENSE "GPL version 2 or later"
-#define CONFIG_THIS_YEAR 2018
-#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
-#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-#define CC_IDENT "Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64"
-#define av_restrict __restrict
-#define EXTERN_PREFIX ""
-#define EXTERN_ASM
-#define BUILDSUF ""
-#define SLIBSUF ".dll"
-#define HAVE_MMX2 HAVE_MMXEXT
-#define SWS_MAX_FILTER_SIZE 256
-#define ARCH_AARCH64 0
-#define ARCH_ALPHA 0
-#define ARCH_ARM 0
-#define ARCH_AVR32 0
-#define ARCH_AVR32_AP 0
-#define ARCH_AVR32_UC 0
-#define ARCH_BFIN 0
-#define ARCH_IA64 0
-#define ARCH_M68K 0
-#define ARCH_MIPS 0
-#define ARCH_MIPS64 0
-#define ARCH_PARISC 0
-#define ARCH_PPC 0
-#define ARCH_PPC64 0
-#define ARCH_S390 0
-#define ARCH_SH4 0
-#define ARCH_SPARC 0
-#define ARCH_SPARC64 0
-#define ARCH_TILEGX 0
-#define ARCH_TILEPRO 0
-#define ARCH_TOMI 0
-#define ARCH_X86 1
-#define ARCH_X86_32 0
-#define ARCH_X86_64 1
-#define HAVE_ARMV5TE 0
-#define HAVE_ARMV6 0
-#define HAVE_ARMV6T2 0
-#define HAVE_ARMV8 0
-#define HAVE_NEON 0
-#define HAVE_VFP 0
-#define HAVE_VFPV3 0
-#define HAVE_SETEND 0
-#define HAVE_ALTIVEC 0
-#define HAVE_DCBZL 0
-#define HAVE_LDBRX 0
-#define HAVE_POWER8 0
-#define HAVE_PPC4XX 0
-#define HAVE_VSX 0
-#define HAVE_AESNI 1
-#define HAVE_AMD3DNOW 1
-#define HAVE_AMD3DNOWEXT 1
-#define HAVE_AVX 1
-#define HAVE_AVX2 1
-#define HAVE_AVX512 1
-#define HAVE_FMA3 1
-#define HAVE_FMA4 1
-#define HAVE_MMX 1
-#define HAVE_MMXEXT 1
-#define HAVE_SSE 1
-#define HAVE_SSE2 1
-#define HAVE_SSE3 1
-#define HAVE_SSE4 1
-#define HAVE_SSE42 1
-#define HAVE_SSSE3 1
-#define HAVE_XOP 1
-#define HAVE_CPUNOP 1
-#define HAVE_I686 1
-#define HAVE_MIPSFPU 0
-#define HAVE_MIPS32R2 0
-#define HAVE_MIPS32R5 0
-#define HAVE_MIPS64R2 0
-#define HAVE_MIPS32R6 0
-#define HAVE_MIPS64R6 0
-#define HAVE_MIPSDSP 0
-#define HAVE_MIPSDSPR2 0
-#define HAVE_MSA 0
-#define HAVE_LOONGSON2 0
-#define HAVE_LOONGSON3 0
-#define HAVE_MMI 0
-#define HAVE_ARMV5TE_EXTERNAL 0
-#define HAVE_ARMV6_EXTERNAL 0
-#define HAVE_ARMV6T2_EXTERNAL 0
-#define HAVE_ARMV8_EXTERNAL 0
-#define HAVE_NEON_EXTERNAL 0
-#define HAVE_VFP_EXTERNAL 0
-#define HAVE_VFPV3_EXTERNAL 0
-#define HAVE_SETEND_EXTERNAL 0
-#define HAVE_ALTIVEC_EXTERNAL 0
-#define HAVE_DCBZL_EXTERNAL 0
-#define HAVE_LDBRX_EXTERNAL 0
-#define HAVE_POWER8_EXTERNAL 0
-#define HAVE_PPC4XX_EXTERNAL 0
-#define HAVE_VSX_EXTERNAL 0
-#define HAVE_AESNI_EXTERNAL 1
-#define HAVE_AMD3DNOW_EXTERNAL 1
-#define HAVE_AMD3DNOWEXT_EXTERNAL 1
-#define HAVE_AVX_EXTERNAL 1
-#define HAVE_AVX2_EXTERNAL 0
-#define HAVE_AVX512_EXTERNAL 0
-#define HAVE_FMA3_EXTERNAL 1
-#define HAVE_FMA4_EXTERNAL 1
-#define HAVE_MMX_EXTERNAL 1
-#define HAVE_MMXEXT_EXTERNAL 1
-#define HAVE_SSE_EXTERNAL 1
-#define HAVE_SSE2_EXTERNAL 1
-#define HAVE_SSE3_EXTERNAL 1
-#define HAVE_SSE4_EXTERNAL 1
-#define HAVE_SSE42_EXTERNAL 1
-#define HAVE_SSSE3_EXTERNAL 1
-#define HAVE_XOP_EXTERNAL 1
-#define HAVE_CPUNOP_EXTERNAL 0
-#define HAVE_I686_EXTERNAL 0
-#define HAVE_MIPSFPU_EXTERNAL 0
-#define HAVE_MIPS32R2_EXTERNAL 0
-#define HAVE_MIPS32R5_EXTERNAL 0
-#define HAVE_MIPS64R2_EXTERNAL 0
-#define HAVE_MIPS32R6_EXTERNAL 0
-#define HAVE_MIPS64R6_EXTERNAL 0
-#define HAVE_MIPSDSP_EXTERNAL 0
-#define HAVE_MIPSDSPR2_EXTERNAL 0
-#define HAVE_MSA_EXTERNAL 0
-#define HAVE_LOONGSON2_EXTERNAL 0
-#define HAVE_LOONGSON3_EXTERNAL 0
-#define HAVE_MMI_EXTERNAL 0
-#define HAVE_ARMV5TE_INLINE 0
-#define HAVE_ARMV6_INLINE 0
-#define HAVE_ARMV6T2_INLINE 0
-#define HAVE_ARMV8_INLINE 0
-#define HAVE_NEON_INLINE 0
-#define HAVE_VFP_INLINE 0
-#define HAVE_VFPV3_INLINE 0
-#define HAVE_SETEND_INLINE 0
-#define HAVE_ALTIVEC_INLINE 0
-#define HAVE_DCBZL_INLINE 0
-#define HAVE_LDBRX_INLINE 0
-#define HAVE_POWER8_INLINE 0
-#define HAVE_PPC4XX_INLINE 0
-#define HAVE_VSX_INLINE 0
-#define HAVE_AESNI_INLINE 0
-#define HAVE_AMD3DNOW_INLINE 0
-#define HAVE_AMD3DNOWEXT_INLINE 0
-#define HAVE_AVX_INLINE 0
-#define HAVE_AVX2_INLINE 0
-#define HAVE_AVX512_INLINE 0
-#define HAVE_FMA3_INLINE 0
-#define HAVE_FMA4_INLINE 0
-#define HAVE_MMX_INLINE 0
-#define HAVE_MMXEXT_INLINE 0
-#define HAVE_SSE_INLINE 0
-#define HAVE_SSE2_INLINE 0
-#define HAVE_SSE3_INLINE 0
-#define HAVE_SSE4_INLINE 0
-#define HAVE_SSE42_INLINE 0
-#define HAVE_SSSE3_INLINE 0
-#define HAVE_XOP_INLINE 0
-#define HAVE_CPUNOP_INLINE 0
-#define HAVE_I686_INLINE 0
-#define HAVE_MIPSFPU_INLINE 0
-#define HAVE_MIPS32R2_INLINE 0
-#define HAVE_MIPS32R5_INLINE 0
-#define HAVE_MIPS64R2_INLINE 0
-#define HAVE_MIPS32R6_INLINE 0
-#define HAVE_MIPS64R6_INLINE 0
-#define HAVE_MIPSDSP_INLINE 0
-#define HAVE_MIPSDSPR2_INLINE 0
-#define HAVE_MSA_INLINE 0
-#define HAVE_LOONGSON2_INLINE 0
-#define HAVE_LOONGSON3_INLINE 0
-#define HAVE_MMI_INLINE 0
-#define HAVE_ALIGNED_STACK 1
-#define HAVE_FAST_64BIT 1
-#define HAVE_FAST_CLZ 1
-#define HAVE_FAST_CMOV 1
-#define HAVE_LOCAL_ALIGNED 1
-#define HAVE_SIMD_ALIGN_16 1
-#define HAVE_SIMD_ALIGN_32 1
-#define HAVE_SIMD_ALIGN_64 1
-#define HAVE_ATOMIC_CAS_PTR 0
-#define HAVE_MACHINE_RW_BARRIER 0
-#define HAVE_MEMORYBARRIER 1
-#define HAVE_MM_EMPTY 0
-#define HAVE_RDTSC 1
-#define HAVE_SEM_TIMEDWAIT 0
-#define HAVE_SYNC_VAL_COMPARE_AND_SWAP 0
-#define HAVE_CABS 0
-#define HAVE_CEXP 0
-#define HAVE_INLINE_ASM 0
-#define HAVE_SYMVER 0
-#define HAVE_X86ASM 1
-#define HAVE_BIGENDIAN 0
-#define HAVE_FAST_UNALIGNED 1
-#define HAVE_ARPA_INET_H 0
-#define HAVE_ASM_TYPES_H 0
-#define HAVE_CDIO_PARANOIA_H 0
-#define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-#define HAVE_CUDA_H 0
-#define HAVE_DISPATCH_DISPATCH_H 0
-#define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-#define HAVE_DEV_IC_BT8XX_H 0
-#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
-#define HAVE_DIRECT_H 1
-#define HAVE_DIRENT_H 0
-#define HAVE_DXGIDEBUG_H 1
-#define HAVE_DXVA_H 1
-#define HAVE_ES2_GL_H 0
-#define HAVE_GSM_H 0
-#define HAVE_IO_H 1
-#define HAVE_LINUX_PERF_EVENT_H 0
-#define HAVE_MACHINE_IOCTL_BT848_H 0
-#define HAVE_MACHINE_IOCTL_METEOR_H 0
-#define HAVE_MALLOC_H 1
-#define HAVE_OPENCV2_CORE_CORE_C_H 0
-#define HAVE_OPENGL_GL3_H 0
-#define HAVE_POLL_H 0
-#define HAVE_SYS_PARAM_H 0
-#define HAVE_SYS_RESOURCE_H 0
-#define HAVE_SYS_SELECT_H 0
-#define HAVE_SYS_SOUNDCARD_H 0
-#define HAVE_SYS_TIME_H 0
-#define HAVE_SYS_UN_H 0
-#define HAVE_SYS_VIDEOIO_H 0
-#define HAVE_TERMIOS_H 0
-#define HAVE_UDPLITE_H 0
-#define HAVE_UNISTD_H 0
-#define HAVE_VALGRIND_VALGRIND_H 0
-#define HAVE_WINDOWS_H 1
-#define HAVE_WINSOCK2_H 0
-#define HAVE_INTRINSICS_NEON 0
-#define HAVE_ATANF 1
-#define HAVE_ATAN2F 1
-#define HAVE_CBRT 1
-#define HAVE_CBRTF 1
-#define HAVE_COPYSIGN 1
-#define HAVE_COSF 1
-#define HAVE_ERF 1
-#define HAVE_EXP2 1
-#define HAVE_EXP2F 1
-#define HAVE_EXPF 1
-#define HAVE_HYPOT 1
-#define HAVE_ISFINITE 1
-#define HAVE_ISINF 1
-#define HAVE_ISNAN 1
-#define HAVE_LDEXPF 1
-#define HAVE_LLRINT 1
-#define HAVE_LLRINTF 1
-#define HAVE_LOG2 1
-#define HAVE_LOG2F 1
-#define HAVE_LOG10F 1
-#define HAVE_LRINT 1
-#define HAVE_LRINTF 1
-#define HAVE_POWF 1
-#define HAVE_RINT 1
-#define HAVE_ROUND 1
-#define HAVE_ROUNDF 1
-#define HAVE_SINF 1
-#define HAVE_TRUNC 1
-#define HAVE_TRUNCF 1
-#define HAVE_DOS_PATHS 1
-#define HAVE_LIBC_MSVCRT 1
-#define HAVE_MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS 0
-#define HAVE_SECTION_DATA_REL_RO 0
-#define HAVE_THREADS 1
-#define HAVE_UWP 0
-#define HAVE_WINRT 0
-#define HAVE_ACCESS 1
-#define HAVE_ALIGNED_MALLOC 1
-#define HAVE_ARC4RANDOM 0
-#define HAVE_CLOCK_GETTIME 0
-#define HAVE_CLOSESOCKET 0
-#define HAVE_COMMANDLINETOARGVW 1
-#define HAVE_FCNTL 0
-#define HAVE_GETADDRINFO 0
-#define HAVE_GETHRTIME 0
-#define HAVE_GETOPT 0
-#define HAVE_GETPROCESSAFFINITYMASK 1
-#define HAVE_GETPROCESSMEMORYINFO 1
-#define HAVE_GETPROCESSTIMES 1
-#define HAVE_GETRUSAGE 0
-#define HAVE_GETSYSTEMTIMEASFILETIME 1
-#define HAVE_GETTIMEOFDAY 0
-#define HAVE_GLOB 0
-#define HAVE_GLXGETPROCADDRESS 0
-#define HAVE_GMTIME_R 0
-#define HAVE_INET_ATON 0
-#define HAVE_ISATTY 1
-#define HAVE_KBHIT 1
-#define HAVE_LOCALTIME_R 0
-#define HAVE_LSTAT 0
-#define HAVE_LZO1X_999_COMPRESS 0
-#define HAVE_MACH_ABSOLUTE_TIME 0
-#define HAVE_MAPVIEWOFFILE 1
-#define HAVE_MEMALIGN 0
-#define HAVE_MKSTEMP 0
-#define HAVE_MMAP 0
-#define HAVE_MPROTECT 0
-#define HAVE_NANOSLEEP 0
-#define HAVE_PEEKNAMEDPIPE 1
-#define HAVE_POSIX_MEMALIGN 0
-#define HAVE_PTHREAD_CANCEL 0
-#define HAVE_SCHED_GETAFFINITY 0
-#define HAVE_SECITEMIMPORT 0
-#define HAVE_SETCONSOLETEXTATTRIBUTE 1
-#define HAVE_SETCONSOLECTRLHANDLER 1
-#define HAVE_SETMODE 1
-#define HAVE_SETRLIMIT 0
-#define HAVE_SLEEP 1
-#define HAVE_STRERROR_R 0
-#define HAVE_SYSCONF 0
-#define HAVE_SYSCTL 0
-#define HAVE_USLEEP 0
-#define HAVE_UTGETOSTYPEFROMSTRING 0
-#define HAVE_VIRTUALALLOC 1
-#define HAVE_WGLGETPROCADDRESS 0
-#define HAVE_BCRYPT 1
-#define HAVE_VAAPI_DRM 0
-#define HAVE_VAAPI_X11 0
-#define HAVE_VDPAU_X11 0
-#define HAVE_PTHREADS 0
-#define HAVE_OS2THREADS 0
-#define HAVE_W32THREADS 1
-#define HAVE_AS_ARCH_DIRECTIVE 0
-#define HAVE_AS_DN_DIRECTIVE 0
-#define HAVE_AS_FPU_DIRECTIVE 0
-#define HAVE_AS_FUNC 0
-#define HAVE_AS_OBJECT_ARCH 0
-#define HAVE_ASM_MOD_Q 0
-#define HAVE_BLOCKS_EXTENSION 0
-#define HAVE_EBP_AVAILABLE 0
-#define HAVE_EBX_AVAILABLE 0
-#define HAVE_GNU_AS 0
-#define HAVE_GNU_WINDRES 0
-#define HAVE_IBM_ASM 0
-#define HAVE_INLINE_ASM_DIRECT_SYMBOL_REFS 0
-#define HAVE_INLINE_ASM_LABELS 0
-#define HAVE_INLINE_ASM_NONLOCAL_LABELS 0
-#define HAVE_PRAGMA_DEPRECATED 1
-#define HAVE_RSYNC_CONTIMEOUT 0
-#define HAVE_SYMVER_ASM_LABEL 0
-#define HAVE_SYMVER_GNU_ASM 0
-#define HAVE_VFP_ARGS 0
-#define HAVE_XFORM_ASM 0
-#define HAVE_XMM_CLOBBERS 0
-#define HAVE_KCMVIDEOCODECTYPE_HEVC 0
-#define HAVE_SOCKLEN_T 0
-#define HAVE_STRUCT_ADDRINFO 0
-#define HAVE_STRUCT_GROUP_SOURCE_REQ 0
-#define HAVE_STRUCT_IP_MREQ_SOURCE 0
-#define HAVE_STRUCT_IPV6_MREQ 0
-#define HAVE_STRUCT_MSGHDR_MSG_FLAGS 0
-#define HAVE_STRUCT_POLLFD 0
-#define HAVE_STRUCT_RUSAGE_RU_MAXRSS 0
-#define HAVE_STRUCT_SCTP_EVENT_SUBSCRIBE 0
-#define HAVE_STRUCT_SOCKADDR_IN6 0
-#define HAVE_STRUCT_SOCKADDR_SA_LEN 0
-#define HAVE_STRUCT_SOCKADDR_STORAGE 0
-#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-#define HAVE_MAKEINFO 1
-#define HAVE_MAKEINFO_HTML 0
-#define HAVE_OPENCL_D3D11 0
-#define HAVE_OPENCL_DRM_ARM 0
-#define HAVE_OPENCL_DRM_BEIGNET 0
-#define HAVE_OPENCL_DXVA2 0
-#define HAVE_OPENCL_VAAPI_BEIGNET 0
-#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-#define HAVE_PERL 1
-#define HAVE_POD2MAN 0
-#define HAVE_TEXI2HTML 0
-#define CONFIG_DOC 0
-#define CONFIG_HTMLPAGES 0
-#define CONFIG_MANPAGES 0
-#define CONFIG_PODPAGES 1
-#define CONFIG_TXTPAGES 1
-#define CONFIG_AVIO_DIR_CMD_EXAMPLE 1
-#define CONFIG_AVIO_READING_EXAMPLE 1
-#define CONFIG_DECODE_AUDIO_EXAMPLE 1
-#define CONFIG_DECODE_VIDEO_EXAMPLE 1
-#define CONFIG_DEMUXING_DECODING_EXAMPLE 1
-#define CONFIG_ENCODE_AUDIO_EXAMPLE 1
-#define CONFIG_ENCODE_VIDEO_EXAMPLE 1
-#define CONFIG_EXTRACT_MVS_EXAMPLE 1
-#define CONFIG_FILTER_AUDIO_EXAMPLE 0
-#define CONFIG_FILTERING_AUDIO_EXAMPLE 0
-#define CONFIG_FILTERING_VIDEO_EXAMPLE 0
-#define CONFIG_HTTP_MULTICLIENT_EXAMPLE 0
-#define CONFIG_HW_DECODE_EXAMPLE 1
-#define CONFIG_METADATA_EXAMPLE 1
-#define CONFIG_MUXING_EXAMPLE 1
-#define CONFIG_QSVDEC_EXAMPLE 0
-#define CONFIG_REMUXING_EXAMPLE 1
-#define CONFIG_RESAMPLING_AUDIO_EXAMPLE 1
-#define CONFIG_SCALING_VIDEO_EXAMPLE 1
-#define CONFIG_TRANSCODE_AAC_EXAMPLE 1
-#define CONFIG_TRANSCODING_EXAMPLE 0
-#define CONFIG_VAAPI_ENCODE_EXAMPLE 0
-#define CONFIG_VAAPI_TRANSCODE_EXAMPLE 0
-#define CONFIG_AVISYNTH 0
-#define CONFIG_FREI0R 0
-#define CONFIG_LIBCDIO 0
-#define CONFIG_LIBDAVS2 0
-#define CONFIG_LIBRUBBERBAND 0
-#define CONFIG_LIBVIDSTAB 0
-#define CONFIG_LIBX264 0
-#define CONFIG_LIBX265 0
-#define CONFIG_LIBXAVS 0
-#define CONFIG_LIBXAVS2 0
-#define CONFIG_LIBXVID 0
-#define CONFIG_DECKLINK 0
-#define CONFIG_LIBNDI_NEWTEK 0
-#define CONFIG_LIBFDK_AAC 0
-#define CONFIG_OPENSSL 0
-#define CONFIG_LIBTLS 0
-#define CONFIG_GMP 0
-#define CONFIG_LIBLENSFUN 0
-#define CONFIG_LIBOPENCORE_AMRNB 0
-#define CONFIG_LIBOPENCORE_AMRWB 0
-#define CONFIG_LIBVMAF 0
-#define CONFIG_LIBVO_AMRWBENC 0
-#define CONFIG_MBEDTLS 0
-#define CONFIG_RKMPP 0
-#define CONFIG_LIBSMBCLIENT 0
-#define CONFIG_CHROMAPRINT 0
-#define CONFIG_GCRYPT 0
-#define CONFIG_GNUTLS 0
-#define CONFIG_JNI 0
-#define CONFIG_LADSPA 0
-#define CONFIG_LIBAOM 0
-#define CONFIG_LIBASS 0
-#define CONFIG_LIBBLURAY 0
-#define CONFIG_LIBBS2B 0
-#define CONFIG_LIBCACA 0
-#define CONFIG_LIBCELT 0
-#define CONFIG_LIBCODEC2 0
-#define CONFIG_LIBDAV1D 0
-#define CONFIG_LIBDC1394 0
-#define CONFIG_LIBDRM 0
-#define CONFIG_LIBFLITE 0
-#define CONFIG_LIBFONTCONFIG 0
-#define CONFIG_LIBFREETYPE 0
-#define CONFIG_LIBFRIBIDI 0
-#define CONFIG_LIBGME 0
-#define CONFIG_LIBGSM 0
-#define CONFIG_LIBIEC61883 0
-#define CONFIG_LIBILBC 0
-#define CONFIG_LIBJACK 0
-#define CONFIG_LIBKLVANC 0
-#define CONFIG_LIBKVAZAAR 0
-#define CONFIG_LIBMODPLUG 0
-#define CONFIG_LIBMP3LAME 0
-#define CONFIG_LIBMYSOFA 0
-#define CONFIG_LIBOPENCV 0
-#define CONFIG_LIBOPENH264 0
-#define CONFIG_LIBOPENJPEG 0
-#define CONFIG_LIBOPENMPT 0
-#define CONFIG_LIBOPUS 0
-#define CONFIG_LIBPULSE 0
-#define CONFIG_LIBRSVG 0
-#define CONFIG_LIBRTMP 0
-#define CONFIG_LIBSHINE 0
-#define CONFIG_LIBSMBCLIENT 0
-#define CONFIG_LIBSNAPPY 0
-#define CONFIG_LIBSOXR 0
-#define CONFIG_LIBSPEEX 0
-#define CONFIG_LIBSRT 0
-#define CONFIG_LIBSSH 0
-#define CONFIG_LIBTENSORFLOW 0
-#define CONFIG_LIBTESSERACT 0
-#define CONFIG_LIBTHEORA 0
-#define CONFIG_LIBTWOLAME 0
-#define CONFIG_LIBV4L2 0
-#define CONFIG_LIBVORBIS 0
-#define CONFIG_LIBVPX 0
-#define CONFIG_LIBWAVPACK 0
-#define CONFIG_LIBWEBP 0
-#define CONFIG_LIBXML2 0
-#define CONFIG_LIBZIMG 0
-#define CONFIG_LIBZMQ 0
-#define CONFIG_LIBZVBI 0
-#define CONFIG_LV2 0
-#define CONFIG_MEDIACODEC 0
-#define CONFIG_OPENAL 0
-#define CONFIG_OPENGL 0
-#define CONFIG_VAPOURSYNTH 0
-#define CONFIG_ALSA 0
-#define CONFIG_APPKIT 0
-#define CONFIG_AVFOUNDATION 0
-#define CONFIG_BZLIB 0
-#define CONFIG_COREIMAGE 0
-#define CONFIG_ICONV 0
-#define CONFIG_LIBXCB 0
-#define CONFIG_LIBXCB_SHM 0
-#define CONFIG_LIBXCB_SHAPE 0
-#define CONFIG_LIBXCB_XFIXES 0
-#define CONFIG_LZMA 0
-#define CONFIG_SCHANNEL 1
-#define CONFIG_SDL2 0
-#define CONFIG_SECURETRANSPORT 0
-#define CONFIG_SNDIO 0
-#define CONFIG_XLIB 0
-#define CONFIG_ZLIB 1
-#define CONFIG_CUDA_SDK 0
-#define CONFIG_LIBNPP 0
-#define CONFIG_LIBMFX 0
-#define CONFIG_MMAL 0
-#define CONFIG_OMX 0
-#define CONFIG_OPENCL 0
-#define CONFIG_AMF 0
-#define CONFIG_AUDIOTOOLBOX 0
-#define CONFIG_CRYSTALHD 0
-#define CONFIG_CUDA 0
-#define CONFIG_CUVID 0
-#define CONFIG_D3D11VA 0
-#define CONFIG_DXVA2 0
-#define CONFIG_FFNVCODEC 0
-#define CONFIG_NVDEC 0
-#define CONFIG_NVENC 0
-#define CONFIG_VAAPI 0
-#define CONFIG_VDPAU 0
-#define CONFIG_VIDEOTOOLBOX 0
-#define CONFIG_V4L2_M2M 0
-#define CONFIG_XVMC 0
-#define CONFIG_FTRAPV 0
-#define CONFIG_GRAY 0
-#define CONFIG_HARDCODED_TABLES 0
-#define CONFIG_OMX_RPI 0
-#define CONFIG_RUNTIME_CPUDETECT 1
-#define CONFIG_SAFE_BITSTREAM_READER 1
-#define CONFIG_SHARED 0
-#define CONFIG_SMALL 1
-#define CONFIG_STATIC 1
-#define CONFIG_SWSCALE_ALPHA 1
-#define CONFIG_GPL 1
-#define CONFIG_NONFREE 0
-#define CONFIG_VERSION3 0
-#define CONFIG_AVDEVICE 1
-#define CONFIG_AVFILTER 0
-#define CONFIG_SWSCALE 1
-#define CONFIG_POSTPROC 0
-#define CONFIG_AVFORMAT 1
-#define CONFIG_AVCODEC 1
-#define CONFIG_SWRESAMPLE 1
-#define CONFIG_AVRESAMPLE 0
-#define CONFIG_AVUTIL 1
-#define CONFIG_FFPLAY 0
-#define CONFIG_FFPROBE 0
-#define CONFIG_FFMPEG 0
-#define CONFIG_DCT 1
-#define CONFIG_DWT 1
-#define CONFIG_ERROR_RESILIENCE 1
-#define CONFIG_FAAN 1
-#define CONFIG_FAST_UNALIGNED 1
-#define CONFIG_FFT 1
-#define CONFIG_LSP 1
-#define CONFIG_LZO 1
-#define CONFIG_MDCT 1
-#define CONFIG_PIXELUTILS 0
-#define CONFIG_NETWORK 0
-#define CONFIG_RDFT 1
-#define CONFIG_AUTODETECT 0
-#define CONFIG_FONTCONFIG 0
-#define CONFIG_LINUX_PERF 0
-#define CONFIG_MEMORY_POISONING 0
-#define CONFIG_NEON_CLOBBER_TEST 0
-#define CONFIG_OSSFUZZ 0
-#define CONFIG_PIC 0
-#define CONFIG_THUMB 0
-#define CONFIG_VALGRIND_BACKTRACE 0
-#define CONFIG_XMM_CLOBBER_TEST 0
-#define CONFIG_BSFS 1
-#define CONFIG_DECODERS 1
-#define CONFIG_ENCODERS 0
-#define CONFIG_HWACCELS 0
-#define CONFIG_PARSERS 1
-#define CONFIG_INDEVS 0
-#define CONFIG_OUTDEVS 0
-#define CONFIG_FILTERS 0
-#define CONFIG_DEMUXERS 1
-#define CONFIG_MUXERS 0
-#define CONFIG_PROTOCOLS 1
-#define CONFIG_AANDCTTABLES 1
-#define CONFIG_AC3DSP 1
-#define CONFIG_ADTS_HEADER 1
-#define CONFIG_AUDIO_FRAME_QUEUE 1
-#define CONFIG_AUDIODSP 1
-#define CONFIG_BLOCKDSP 1
-#define CONFIG_BSWAPDSP 1
-#define CONFIG_CABAC 1
-#define CONFIG_CBS 1
-#define CONFIG_CBS_AV1 1
-#define CONFIG_CBS_H264 1
-#define CONFIG_CBS_H265 1
-#define CONFIG_CBS_JPEG 0
-#define CONFIG_CBS_MPEG2 1
-#define CONFIG_CBS_VP9 1
-#define CONFIG_DIRAC_PARSE 1
-#define CONFIG_DNN 0
-#define CONFIG_DVPROFILE 1
-#define CONFIG_EXIF 1
-#define CONFIG_FAANDCT 1
-#define CONFIG_FAANIDCT 1
-#define CONFIG_FDCTDSP 1
-#define CONFIG_FLACDSP 1
-#define CONFIG_FMTCONVERT 1
-#define CONFIG_FRAME_THREAD_ENCODER 0
-#define CONFIG_G722DSP 1
-#define CONFIG_GOLOMB 1
-#define CONFIG_GPLV3 0
-#define CONFIG_H263DSP 1
-#define CONFIG_H264CHROMA 1
-#define CONFIG_H264DSP 1
-#define CONFIG_H264PARSE 1
-#define CONFIG_H264PRED 1
-#define CONFIG_H264QPEL 1
-#define CONFIG_HEVCPARSE 1
-#define CONFIG_HPELDSP 1
-#define CONFIG_HUFFMAN 1
-#define CONFIG_HUFFYUVDSP 1
-#define CONFIG_HUFFYUVENCDSP 0
-#define CONFIG_IDCTDSP 1
-#define CONFIG_IIRFILTER 0
-#define CONFIG_MDCT15 1
-#define CONFIG_INTRAX8 1
-#define CONFIG_ISO_MEDIA 1
-#define CONFIG_IVIDSP 0
-#define CONFIG_JPEGTABLES 1
-#define CONFIG_LGPLV3 0
-#define CONFIG_LIBX262 0
-#define CONFIG_LLAUDDSP 1
-#define CONFIG_LLVIDDSP 1
-#define CONFIG_LLVIDENCDSP 0
-#define CONFIG_LPC 0
-#define CONFIG_LZF 1
-#define CONFIG_ME_CMP 1
-#define CONFIG_MPEG_ER 1
-#define CONFIG_MPEGAUDIO 1
-#define CONFIG_MPEGAUDIODSP 1
-#define CONFIG_MPEGAUDIOHEADER 1
-#define CONFIG_MPEGVIDEO 1
-#define CONFIG_MPEGVIDEOENC 1
-#define CONFIG_MSS34DSP 1
-#define CONFIG_PIXBLOCKDSP 1
-#define CONFIG_QPELDSP 1
-#define CONFIG_QSV 0
-#define CONFIG_QSVDEC 0
-#define CONFIG_QSVENC 0
-#define CONFIG_QSVVPP 0
-#define CONFIG_RANGECODER 1
-#define CONFIG_RIFFDEC 1
-#define CONFIG_RIFFENC 0
-#define CONFIG_RTPDEC 0
-#define CONFIG_RTPENC_CHAIN 0
-#define CONFIG_RV34DSP 1
-#define CONFIG_SCENE_SAD 0
-#define CONFIG_SINEWIN 1
-#define CONFIG_SNAPPY 1
-#define CONFIG_SRTP 0
-#define CONFIG_STARTCODE 1
-#define CONFIG_TEXTUREDSP 1
-#define CONFIG_TEXTUREDSPENC 0
-#define CONFIG_TPELDSP 1
-#define CONFIG_VAAPI_1 0
-#define CONFIG_VAAPI_ENCODE 0
-#define CONFIG_VC1DSP 1
-#define CONFIG_VIDEODSP 1
-#define CONFIG_VP3DSP 1
-#define CONFIG_VP56DSP 1
-#define CONFIG_VP8DSP 1
-#define CONFIG_WMA_FREQS 1
-#define CONFIG_WMV2DSP 1
-#define CONFIG_AAC_ADTSTOASC_BSF 1
-#define CONFIG_AV1_METADATA_BSF 1
-#define CONFIG_CHOMP_BSF 1
-#define CONFIG_DUMP_EXTRADATA_BSF 1
-#define CONFIG_DCA_CORE_BSF 1
-#define CONFIG_EAC3_CORE_BSF 1
-#define CONFIG_EXTRACT_EXTRADATA_BSF 1
-#define CONFIG_FILTER_UNITS_BSF 1
-#define CONFIG_H264_METADATA_BSF 1
-#define CONFIG_H264_MP4TOANNEXB_BSF 1
-#define CONFIG_H264_REDUNDANT_PPS_BSF 1
-#define CONFIG_HAPQA_EXTRACT_BSF 1
-#define CONFIG_HEVC_METADATA_BSF 1
-#define CONFIG_HEVC_MP4TOANNEXB_BSF 1
-#define CONFIG_IMX_DUMP_HEADER_BSF 1
-#define CONFIG_MJPEG2JPEG_BSF 1
-#define CONFIG_MJPEGA_DUMP_HEADER_BSF 1
-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 1
-#define CONFIG_MPEG2_METADATA_BSF 1
-#define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 1
-#define CONFIG_MOV2TEXTSUB_BSF 1
-#define CONFIG_NOISE_BSF 1
-#define CONFIG_NULL_BSF 1
-#define CONFIG_PRORES_METADATA_BSF 1
-#define CONFIG_REMOVE_EXTRADATA_BSF 1
-#define CONFIG_TEXT2MOVSUB_BSF 1
-#define CONFIG_TRACE_HEADERS_BSF 1
-#define CONFIG_VP9_METADATA_BSF 1
-#define CONFIG_VP9_RAW_REORDER_BSF 1
-#define CONFIG_VP9_SUPERFRAME_BSF 1
-#define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 1
-#define CONFIG_AASC_DECODER 1
-#define CONFIG_AIC_DECODER 1
-#define CONFIG_ALIAS_PIX_DECODER 1
-#define CONFIG_AMV_DECODER 1
-#define CONFIG_ANM_DECODER 1
-#define CONFIG_ANSI_DECODER 1
-#define CONFIG_APNG_DECODER 1
-#define CONFIG_ASV1_DECODER 1
-#define CONFIG_ASV2_DECODER 1
-#define CONFIG_AURA_DECODER 1
-#define CONFIG_AURA2_DECODER 1
-#define CONFIG_AVRP_DECODER 1
-#define CONFIG_AVRN_DECODER 1
-#define CONFIG_AVS_DECODER 1
-#define CONFIG_AVUI_DECODER 1
-#define CONFIG_AYUV_DECODER 1
-#define CONFIG_BETHSOFTVID_DECODER 1
-#define CONFIG_BFI_DECODER 1
-#define CONFIG_BINK_DECODER 1
-#define CONFIG_BITPACKED_DECODER 1
-#define CONFIG_BMP_DECODER 1
-#define CONFIG_BMV_VIDEO_DECODER 1
-#define CONFIG_BRENDER_PIX_DECODER 1
-#define CONFIG_C93_DECODER 1
-#define CONFIG_CAVS_DECODER 1
-#define CONFIG_CDGRAPHICS_DECODER 1
-#define CONFIG_CDXL_DECODER 1
-#define CONFIG_CFHD_DECODER 1
-#define CONFIG_CINEPAK_DECODER 1
-#define CONFIG_CLEARVIDEO_DECODER 1
-#define CONFIG_CLJR_DECODER 1
-#define CONFIG_CLLC_DECODER 1
-#define CONFIG_COMFORTNOISE_DECODER 1
-#define CONFIG_CPIA_DECODER 1
-#define CONFIG_CSCD_DECODER 1
-#define CONFIG_CYUV_DECODER 1
-#define CONFIG_DDS_DECODER 1
-#define CONFIG_DFA_DECODER 1
-#define CONFIG_DIRAC_DECODER 1
-#define CONFIG_DNXHD_DECODER 1
-#define CONFIG_DPX_DECODER 1
-#define CONFIG_DSICINVIDEO_DECODER 1
-#define CONFIG_DVAUDIO_DECODER 1
-#define CONFIG_DVVIDEO_DECODER 1
-#define CONFIG_DXA_DECODER 1
-#define CONFIG_DXTORY_DECODER 1
-#define CONFIG_DXV_DECODER 1
-#define CONFIG_EACMV_DECODER 1
-#define CONFIG_EAMAD_DECODER 1
-#define CONFIG_EATGQ_DECODER 1
-#define CONFIG_EATGV_DECODER 1
-#define CONFIG_EATQI_DECODER 1
-#define CONFIG_EIGHTBPS_DECODER 1
-#define CONFIG_EIGHTSVX_EXP_DECODER 1
-#define CONFIG_EIGHTSVX_FIB_DECODER 1
-#define CONFIG_ESCAPE124_DECODER 1
-#define CONFIG_ESCAPE130_DECODER 1
-#define CONFIG_EXR_DECODER 1
-#define CONFIG_FFV1_DECODER 1
-#define CONFIG_FFVHUFF_DECODER 1
-#define CONFIG_FIC_DECODER 1
-#define CONFIG_FITS_DECODER 1
-#define CONFIG_FLASHSV_DECODER 1
-#define CONFIG_FLASHSV2_DECODER 1
-#define CONFIG_FLIC_DECODER 1
-#define CONFIG_FLV_DECODER 1
-#define CONFIG_FMVC_DECODER 1
-#define CONFIG_FOURXM_DECODER 1
-#define CONFIG_FRAPS_DECODER 1
-#define CONFIG_FRWU_DECODER 1
-#define CONFIG_G2M_DECODER 1
-#define CONFIG_GDV_DECODER 1
-#define CONFIG_GIF_DECODER 1
-#define CONFIG_H261_DECODER 1
-#define CONFIG_H263_DECODER 1
-#define CONFIG_H263I_DECODER 1
-#define CONFIG_H263P_DECODER 1
-#define CONFIG_H263_V4L2M2M_DECODER 0
-#define CONFIG_H264_DECODER 1
-#define CONFIG_H264_CRYSTALHD_DECODER 0
-#define CONFIG_H264_V4L2M2M_DECODER 0
-#define CONFIG_H264_MEDIACODEC_DECODER 0
-#define CONFIG_H264_MMAL_DECODER 0
-#define CONFIG_H264_QSV_DECODER 0
-#define CONFIG_H264_RKMPP_DECODER 0
-#define CONFIG_HAP_DECODER 1
-#define CONFIG_HEVC_DECODER 1
-#define CONFIG_HEVC_QSV_DECODER 0
-#define CONFIG_HEVC_RKMPP_DECODER 0
-#define CONFIG_HEVC_V4L2M2M_DECODER 0
-#define CONFIG_HNM4_VIDEO_DECODER 1
-#define CONFIG_HQ_HQA_DECODER 1
-#define CONFIG_HQX_DECODER 1
-#define CONFIG_HUFFYUV_DECODER 1
-#define CONFIG_IDCIN_DECODER 1
-#define CONFIG_IFF_ILBM_DECODER 1
-#define CONFIG_IMM4_DECODER 1
-#define CONFIG_INDEO2_DECODER 0
-#define CONFIG_INDEO3_DECODER 0
-#define CONFIG_INDEO4_DECODER 0
-#define CONFIG_INDEO5_DECODER 0
-#define CONFIG_INTERPLAY_VIDEO_DECODER 1
-#define CONFIG_JPEG2000_DECODER 1
-#define CONFIG_JPEGLS_DECODER 1
-#define CONFIG_JV_DECODER 1
-#define CONFIG_KGV1_DECODER 1
-#define CONFIG_KMVC_DECODER 1
-#define CONFIG_LAGARITH_DECODER 1
-#define CONFIG_LOCO_DECODER 1
-#define CONFIG_M101_DECODER 1
-#define CONFIG_MAGICYUV_DECODER 1
-#define CONFIG_MDEC_DECODER 1
-#define CONFIG_MIMIC_DECODER 1
-#define CONFIG_MJPEG_DECODER 1
-#define CONFIG_MJPEGB_DECODER 1
-#define CONFIG_MMVIDEO_DECODER 1
-#define CONFIG_MOTIONPIXELS_DECODER 1
-#define CONFIG_MPEG1VIDEO_DECODER 1
-#define CONFIG_MPEG2VIDEO_DECODER 1
-#define CONFIG_MPEG4_DECODER 1
-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-#define CONFIG_MPEG4_V4L2M2M_DECODER 0
-#define CONFIG_MPEG4_MMAL_DECODER 0
-#define CONFIG_MPEGVIDEO_DECODER 1
-#define CONFIG_MPEG1_V4L2M2M_DECODER 0
-#define CONFIG_MPEG2_MMAL_DECODER 0
-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-#define CONFIG_MPEG2_V4L2M2M_DECODER 0
-#define CONFIG_MPEG2_QSV_DECODER 0
-#define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-#define CONFIG_MSA1_DECODER 1
-#define CONFIG_MSCC_DECODER 1
-#define CONFIG_MSMPEG4V1_DECODER 1
-#define CONFIG_MSMPEG4V2_DECODER 1
-#define CONFIG_MSMPEG4V3_DECODER 1
-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-#define CONFIG_MSRLE_DECODER 1
-#define CONFIG_MSS1_DECODER 1
-#define CONFIG_MSS2_DECODER 1
-#define CONFIG_MSVIDEO1_DECODER 1
-#define CONFIG_MSZH_DECODER 1
-#define CONFIG_MTS2_DECODER 1
-#define CONFIG_MVC1_DECODER 1
-#define CONFIG_MVC2_DECODER 1
-#define CONFIG_MWSC_DECODER 1
-#define CONFIG_MXPEG_DECODER 1
-#define CONFIG_NUV_DECODER 1
-#define CONFIG_PAF_VIDEO_DECODER 1
-#define CONFIG_PAM_DECODER 1
-#define CONFIG_PBM_DECODER 1
-#define CONFIG_PCX_DECODER 1
-#define CONFIG_PGM_DECODER 1
-#define CONFIG_PGMYUV_DECODER 1
-#define CONFIG_PICTOR_DECODER 1
-#define CONFIG_PIXLET_DECODER 1
-#define CONFIG_PNG_DECODER 1
-#define CONFIG_PPM_DECODER 1
-#define CONFIG_PRORES_DECODER 1
-#define CONFIG_PROSUMER_DECODER 1
-#define CONFIG_PSD_DECODER 1
-#define CONFIG_PTX_DECODER 1
-#define CONFIG_QDRAW_DECODER 1
-#define CONFIG_QPEG_DECODER 1
-#define CONFIG_QTRLE_DECODER 1
-#define CONFIG_R10K_DECODER 1
-#define CONFIG_R210_DECODER 1
-#define CONFIG_RASC_DECODER 1
-#define CONFIG_RAWVIDEO_DECODER 1
-#define CONFIG_RL2_DECODER 1
-#define CONFIG_ROQ_DECODER 1
-#define CONFIG_RPZA_DECODER 1
-#define CONFIG_RSCC_DECODER 1
-#define CONFIG_RV10_DECODER 1
-#define CONFIG_RV20_DECODER 1
-#define CONFIG_RV30_DECODER 1
-#define CONFIG_RV40_DECODER 1
-#define CONFIG_S302M_DECODER 1
-#define CONFIG_SANM_DECODER 1
-#define CONFIG_SCPR_DECODER 1
-#define CONFIG_SCREENPRESSO_DECODER 1
-#define CONFIG_SDX2_DPCM_DECODER 1
-#define CONFIG_SGI_DECODER 1
-#define CONFIG_SGIRLE_DECODER 1
-#define CONFIG_SHEERVIDEO_DECODER 1
-#define CONFIG_SMACKER_DECODER 1
-#define CONFIG_SMC_DECODER 1
-#define CONFIG_SMVJPEG_DECODER 1
-#define CONFIG_SNOW_DECODER 1
-#define CONFIG_SP5X_DECODER 1
-#define CONFIG_SPEEDHQ_DECODER 1
-#define CONFIG_SRGC_DECODER 1
-#define CONFIG_SUNRAST_DECODER 1
-#define CONFIG_SVQ1_DECODER 1
-#define CONFIG_SVQ3_DECODER 1
-#define CONFIG_TARGA_DECODER 1
-#define CONFIG_TARGA_Y216_DECODER 1
-#define CONFIG_TDSC_DECODER 1
-#define CONFIG_THEORA_DECODER 1
-#define CONFIG_THP_DECODER 1
-#define CONFIG_TIERTEXSEQVIDEO_DECODER 1
-#define CONFIG_TIFF_DECODER 1
-#define CONFIG_TMV_DECODER 1
-#define CONFIG_TRUEMOTION1_DECODER 1
-#define CONFIG_TRUEMOTION2_DECODER 1
-#define CONFIG_TRUEMOTION2RT_DECODER 1
-#define CONFIG_TSCC_DECODER 1
-#define CONFIG_TSCC2_DECODER 1
-#define CONFIG_TXD_DECODER 1
-#define CONFIG_ULTI_DECODER 1
-#define CONFIG_UTVIDEO_DECODER 1
-#define CONFIG_V210_DECODER 1
-#define CONFIG_V210X_DECODER 1
-#define CONFIG_V308_DECODER 1
-#define CONFIG_V408_DECODER 1
-#define CONFIG_V410_DECODER 1
-#define CONFIG_VB_DECODER 1
-#define CONFIG_VBLE_DECODER 1
-#define CONFIG_VC1_DECODER 1
-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-#define CONFIG_VC1IMAGE_DECODER 1
-#define CONFIG_VC1_MMAL_DECODER 0
-#define CONFIG_VC1_QSV_DECODER 0
-#define CONFIG_VC1_V4L2M2M_DECODER 0
-#define CONFIG_VCR1_DECODER 1
-#define CONFIG_VMDVIDEO_DECODER 1
-#define CONFIG_VMNC_DECODER 1
-#define CONFIG_VP3_DECODER 1
-#define CONFIG_VP5_DECODER 1
-#define CONFIG_VP6_DECODER 1
-#define CONFIG_VP6A_DECODER 1
-#define CONFIG_VP6F_DECODER 1
-#define CONFIG_VP7_DECODER 1
-#define CONFIG_VP8_DECODER 1
-#define CONFIG_VP8_RKMPP_DECODER 0
-#define CONFIG_VP8_V4L2M2M_DECODER 0
-#define CONFIG_VP9_DECODER 1
-#define CONFIG_VP9_RKMPP_DECODER 0
-#define CONFIG_VP9_V4L2M2M_DECODER 0
-#define CONFIG_VQA_DECODER 1
-#define CONFIG_WEBP_DECODER 1
-#define CONFIG_WCMV_DECODER 1
-#define CONFIG_WRAPPED_AVFRAME_DECODER 1
-#define CONFIG_WMV1_DECODER 1
-#define CONFIG_WMV2_DECODER 1
-#define CONFIG_WMV3_DECODER 1
-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-#define CONFIG_WMV3IMAGE_DECODER 1
-#define CONFIG_WNV1_DECODER 1
-#define CONFIG_XAN_WC3_DECODER 1
-#define CONFIG_XAN_WC4_DECODER 1
-#define CONFIG_XBM_DECODER 1
-#define CONFIG_XFACE_DECODER 1
-#define CONFIG_XL_DECODER 1
-#define CONFIG_XPM_DECODER 1
-#define CONFIG_XWD_DECODER 1
-#define CONFIG_Y41P_DECODER 1
-#define CONFIG_YLC_DECODER 1
-#define CONFIG_YOP_DECODER 1
-#define CONFIG_YUV4_DECODER 1
-#define CONFIG_ZERO12V_DECODER 1
-#define CONFIG_ZEROCODEC_DECODER 1
-#define CONFIG_ZLIB_DECODER 1
-#define CONFIG_ZMBV_DECODER 1
-#define CONFIG_AAC_DECODER 1
-#define CONFIG_AAC_FIXED_DECODER 1
-#define CONFIG_AAC_LATM_DECODER 1
-#define CONFIG_AC3_DECODER 1
-#define CONFIG_AC3_FIXED_DECODER 1
-#define CONFIG_ALAC_DECODER 1
-#define CONFIG_ALS_DECODER 1
-#define CONFIG_AMRNB_DECODER 1
-#define CONFIG_AMRWB_DECODER 1
-#define CONFIG_APE_DECODER 1
-#define CONFIG_APTX_DECODER 1
-#define CONFIG_APTX_HD_DECODER 1
-#define CONFIG_ATRAC1_DECODER 1
-#define CONFIG_ATRAC3_DECODER 1
-#define CONFIG_ATRAC3AL_DECODER 1
-#define CONFIG_ATRAC3P_DECODER 0
-#define CONFIG_ATRAC3PAL_DECODER 1
-#define CONFIG_ATRAC9_DECODER 1
-#define CONFIG_BINKAUDIO_DCT_DECODER 1
-#define CONFIG_BINKAUDIO_RDFT_DECODER 1
-#define CONFIG_BMV_AUDIO_DECODER 1
-#define CONFIG_COOK_DECODER 1
-#define CONFIG_DCA_DECODER 1
-#define CONFIG_DOLBY_E_DECODER 1
-#define CONFIG_DSD_LSBF_DECODER 1
-#define CONFIG_DSD_MSBF_DECODER 1
-#define CONFIG_DSD_LSBF_PLANAR_DECODER 1
-#define CONFIG_DSD_MSBF_PLANAR_DECODER 1
-#define CONFIG_DSICINAUDIO_DECODER 1
-#define CONFIG_DSS_SP_DECODER 1
-#define CONFIG_DST_DECODER 1
-#define CONFIG_EAC3_DECODER 1
-#define CONFIG_EVRC_DECODER 1
-#define CONFIG_FFWAVESYNTH_DECODER 1
-#define CONFIG_FLAC_DECODER 1
-#define CONFIG_G723_1_DECODER 1
-#define CONFIG_G729_DECODER 1
-#define CONFIG_GSM_DECODER 1
-#define CONFIG_GSM_MS_DECODER 1
-#define CONFIG_IAC_DECODER 1
-#define CONFIG_ILBC_DECODER 1
-#define CONFIG_IMC_DECODER 1
-#define CONFIG_INTERPLAY_ACM_DECODER 1
-#define CONFIG_MACE3_DECODER 1
-#define CONFIG_MACE6_DECODER 1
-#define CONFIG_METASOUND_DECODER 1
-#define CONFIG_MLP_DECODER 1
-#define CONFIG_MP1_DECODER 1
-#define CONFIG_MP1FLOAT_DECODER 1
-#define CONFIG_MP2_DECODER 1
-#define CONFIG_MP2FLOAT_DECODER 1
-#define CONFIG_MP3FLOAT_DECODER 1
-#define CONFIG_MP3_DECODER 1
-#define CONFIG_MP3ADUFLOAT_DECODER 1
-#define CONFIG_MP3ADU_DECODER 1
-#define CONFIG_MP3ON4FLOAT_DECODER 1
-#define CONFIG_MP3ON4_DECODER 1
-#define CONFIG_MPC7_DECODER 1
-#define CONFIG_MPC8_DECODER 1
-#define CONFIG_NELLYMOSER_DECODER 1
-#define CONFIG_ON2AVC_DECODER 1
-#define CONFIG_OPUS_DECODER 1
-#define CONFIG_PAF_AUDIO_DECODER 1
-#define CONFIG_QCELP_DECODER 1
-#define CONFIG_QDM2_DECODER 1
-#define CONFIG_QDMC_DECODER 1
-#define CONFIG_RA_144_DECODER 1
-#define CONFIG_RA_288_DECODER 1
-#define CONFIG_RALF_DECODER 1
-#define CONFIG_SBC_DECODER 1
-#define CONFIG_SHORTEN_DECODER 1
-#define CONFIG_SIPR_DECODER 1
-#define CONFIG_SMACKAUD_DECODER 1
-#define CONFIG_SONIC_DECODER 1
-#define CONFIG_TAK_DECODER 1
-#define CONFIG_TRUEHD_DECODER 1
-#define CONFIG_TRUESPEECH_DECODER 1
-#define CONFIG_TTA_DECODER 1
-#define CONFIG_TWINVQ_DECODER 0
-#define CONFIG_VMDAUDIO_DECODER 1
-#define CONFIG_VORBIS_DECODER 1
-#define CONFIG_WAVPACK_DECODER 1
-#define CONFIG_WMALOSSLESS_DECODER 1
-#define CONFIG_WMAPRO_DECODER 1
-#define CONFIG_WMAV1_DECODER 1
-#define CONFIG_WMAV2_DECODER 1
-#define CONFIG_WMAVOICE_DECODER 1
-#define CONFIG_WS_SND1_DECODER 1
-#define CONFIG_XMA1_DECODER 1
-#define CONFIG_XMA2_DECODER 1
-#define CONFIG_PCM_ALAW_DECODER 1
-#define CONFIG_PCM_BLURAY_DECODER 1
-#define CONFIG_PCM_DVD_DECODER 1
-#define CONFIG_PCM_F16LE_DECODER 1
-#define CONFIG_PCM_F24LE_DECODER 1
-#define CONFIG_PCM_F32BE_DECODER 1
-#define CONFIG_PCM_F32LE_DECODER 1
-#define CONFIG_PCM_F64BE_DECODER 1
-#define CONFIG_PCM_F64LE_DECODER 1
-#define CONFIG_PCM_LXF_DECODER 1
-#define CONFIG_PCM_MULAW_DECODER 1
-#define CONFIG_PCM_S8_DECODER 1
-#define CONFIG_PCM_S8_PLANAR_DECODER 1
-#define CONFIG_PCM_S16BE_DECODER 1
-#define CONFIG_PCM_S16BE_PLANAR_DECODER 1
-#define CONFIG_PCM_S16LE_DECODER 1
-#define CONFIG_PCM_S16LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S24BE_DECODER 1
-#define CONFIG_PCM_S24DAUD_DECODER 1
-#define CONFIG_PCM_S24LE_DECODER 1
-#define CONFIG_PCM_S24LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S32BE_DECODER 1
-#define CONFIG_PCM_S32LE_DECODER 1
-#define CONFIG_PCM_S32LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S64BE_DECODER 1
-#define CONFIG_PCM_S64LE_DECODER 1
-#define CONFIG_PCM_U8_DECODER 1
-#define CONFIG_PCM_U16BE_DECODER 1
-#define CONFIG_PCM_U16LE_DECODER 1
-#define CONFIG_PCM_U24BE_DECODER 1
-#define CONFIG_PCM_U24LE_DECODER 1
-#define CONFIG_PCM_U32BE_DECODER 1
-#define CONFIG_PCM_U32LE_DECODER 1
-#define CONFIG_PCM_VIDC_DECODER 1
-#define CONFIG_PCM_ZORK_DECODER 1
-#define CONFIG_GREMLIN_DPCM_DECODER 1
-#define CONFIG_INTERPLAY_DPCM_DECODER 1
-#define CONFIG_ROQ_DPCM_DECODER 1
-#define CONFIG_SOL_DPCM_DECODER 1
-#define CONFIG_XAN_DPCM_DECODER 1
-#define CONFIG_ADPCM_4XM_DECODER 1
-#define CONFIG_ADPCM_ADX_DECODER 1
-#define CONFIG_ADPCM_AFC_DECODER 1
-#define CONFIG_ADPCM_AICA_DECODER 1
-#define CONFIG_ADPCM_CT_DECODER 1
-#define CONFIG_ADPCM_DTK_DECODER 1
-#define CONFIG_ADPCM_EA_DECODER 1
-#define CONFIG_ADPCM_EA_MAXIS_XA_DECODER 1
-#define CONFIG_ADPCM_EA_R1_DECODER 1
-#define CONFIG_ADPCM_EA_R2_DECODER 1
-#define CONFIG_ADPCM_EA_R3_DECODER 1
-#define CONFIG_ADPCM_EA_XAS_DECODER 1
-#define CONFIG_ADPCM_G722_DECODER 1
-#define CONFIG_ADPCM_G726_DECODER 1
-#define CONFIG_ADPCM_G726LE_DECODER 1
-#define CONFIG_ADPCM_IMA_AMV_DECODER 1
-#define CONFIG_ADPCM_IMA_APC_DECODER 1
-#define CONFIG_ADPCM_IMA_DAT4_DECODER 1
-#define CONFIG_ADPCM_IMA_DK3_DECODER 1
-#define CONFIG_ADPCM_IMA_DK4_DECODER 1
-#define CONFIG_ADPCM_IMA_EA_EACS_DECODER 1
-#define CONFIG_ADPCM_IMA_EA_SEAD_DECODER 1
-#define CONFIG_ADPCM_IMA_ISS_DECODER 1
-#define CONFIG_ADPCM_IMA_OKI_DECODER 1
-#define CONFIG_ADPCM_IMA_QT_DECODER 1
-#define CONFIG_ADPCM_IMA_RAD_DECODER 1
-#define CONFIG_ADPCM_IMA_SMJPEG_DECODER 1
-#define CONFIG_ADPCM_IMA_WAV_DECODER 1
-#define CONFIG_ADPCM_IMA_WS_DECODER 1
-#define CONFIG_ADPCM_MS_DECODER 1
-#define CONFIG_ADPCM_MTAF_DECODER 1
-#define CONFIG_ADPCM_PSX_DECODER 1
-#define CONFIG_ADPCM_SBPRO_2_DECODER 1
-#define CONFIG_ADPCM_SBPRO_3_DECODER 1
-#define CONFIG_ADPCM_SBPRO_4_DECODER 1
-#define CONFIG_ADPCM_SWF_DECODER 1
-#define CONFIG_ADPCM_THP_DECODER 1
-#define CONFIG_ADPCM_THP_LE_DECODER 1
-#define CONFIG_ADPCM_VIMA_DECODER 1
-#define CONFIG_ADPCM_XA_DECODER 1
-#define CONFIG_ADPCM_YAMAHA_DECODER 1
-#define CONFIG_SSA_DECODER 1
-#define CONFIG_ASS_DECODER 1
-#define CONFIG_CCAPTION_DECODER 1
-#define CONFIG_DVBSUB_DECODER 1
-#define CONFIG_DVDSUB_DECODER 1
-#define CONFIG_JACOSUB_DECODER 1
-#define CONFIG_MICRODVD_DECODER 1
-#define CONFIG_MOVTEXT_DECODER 1
-#define CONFIG_MPL2_DECODER 1
-#define CONFIG_PGSSUB_DECODER 1
-#define CONFIG_PJS_DECODER 1
-#define CONFIG_REALTEXT_DECODER 1
-#define CONFIG_SAMI_DECODER 1
-#define CONFIG_SRT_DECODER 1
-#define CONFIG_STL_DECODER 1
-#define CONFIG_SUBRIP_DECODER 1
-#define CONFIG_SUBVIEWER_DECODER 1
-#define CONFIG_SUBVIEWER1_DECODER 1
-#define CONFIG_TEXT_DECODER 1
-#define CONFIG_VPLAYER_DECODER 1
-#define CONFIG_WEBVTT_DECODER 1
-#define CONFIG_XSUB_DECODER 1
-#define CONFIG_AAC_AT_DECODER 0
-#define CONFIG_AC3_AT_DECODER 0
-#define CONFIG_ADPCM_IMA_QT_AT_DECODER 0
-#define CONFIG_ALAC_AT_DECODER 0
-#define CONFIG_AMR_NB_AT_DECODER 0
-#define CONFIG_EAC3_AT_DECODER 0
-#define CONFIG_GSM_MS_AT_DECODER 0
-#define CONFIG_ILBC_AT_DECODER 0
-#define CONFIG_MP1_AT_DECODER 0
-#define CONFIG_MP2_AT_DECODER 0
-#define CONFIG_MP3_AT_DECODER 0
-#define CONFIG_PCM_ALAW_AT_DECODER 0
-#define CONFIG_PCM_MULAW_AT_DECODER 0
-#define CONFIG_QDMC_AT_DECODER 0
-#define CONFIG_QDM2_AT_DECODER 0
-#define CONFIG_LIBAOM_AV1_DECODER 0
-#define CONFIG_LIBCELT_DECODER 0
-#define CONFIG_LIBCODEC2_DECODER 0
-#define CONFIG_LIBDAV1D_DECODER 0
-#define CONFIG_LIBDAVS2_DECODER 0
-#define CONFIG_LIBFDK_AAC_DECODER 0
-#define CONFIG_LIBGSM_DECODER 0
-#define CONFIG_LIBGSM_MS_DECODER 0
-#define CONFIG_LIBILBC_DECODER 0
-#define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-#define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-#define CONFIG_LIBOPENJPEG_DECODER 0
-#define CONFIG_LIBOPUS_DECODER 0
-#define CONFIG_LIBRSVG_DECODER 0
-#define CONFIG_LIBSPEEX_DECODER 0
-#define CONFIG_LIBVORBIS_DECODER 0
-#define CONFIG_LIBVPX_VP8_DECODER 0
-#define CONFIG_LIBVPX_VP9_DECODER 0
-#define CONFIG_LIBZVBI_TELETEXT_DECODER 0
-#define CONFIG_BINTEXT_DECODER 1
-#define CONFIG_XBIN_DECODER 1
-#define CONFIG_IDF_DECODER 1
-#define CONFIG_LIBOPENH264_DECODER 0
-#define CONFIG_H264_CUVID_DECODER 0
-#define CONFIG_HEVC_CUVID_DECODER 0
-#define CONFIG_HEVC_MEDIACODEC_DECODER 0
-#define CONFIG_MJPEG_CUVID_DECODER 0
-#define CONFIG_MPEG1_CUVID_DECODER 0
-#define CONFIG_MPEG2_CUVID_DECODER 0
-#define CONFIG_MPEG4_CUVID_DECODER 0
-#define CONFIG_MPEG4_MEDIACODEC_DECODER 0
-#define CONFIG_VC1_CUVID_DECODER 0
-#define CONFIG_VP8_CUVID_DECODER 0
-#define CONFIG_VP8_MEDIACODEC_DECODER 0
-#define CONFIG_VP8_QSV_DECODER 0
-#define CONFIG_VP9_CUVID_DECODER 0
-#define CONFIG_VP9_MEDIACODEC_DECODER 0
-#define CONFIG_A64MULTI_ENCODER 0
-#define CONFIG_A64MULTI5_ENCODER 0
-#define CONFIG_ALIAS_PIX_ENCODER 0
-#define CONFIG_AMV_ENCODER 0
-#define CONFIG_APNG_ENCODER 0
-#define CONFIG_ASV1_ENCODER 0
-#define CONFIG_ASV2_ENCODER 0
-#define CONFIG_AVRP_ENCODER 0
-#define CONFIG_AVUI_ENCODER 0
-#define CONFIG_AYUV_ENCODER 0
-#define CONFIG_BMP_ENCODER 0
-#define CONFIG_CINEPAK_ENCODER 0
-#define CONFIG_CLJR_ENCODER 0
-#define CONFIG_COMFORTNOISE_ENCODER 0
-#define CONFIG_DNXHD_ENCODER 0
-#define CONFIG_DPX_ENCODER 0
-#define CONFIG_DVVIDEO_ENCODER 0
-#define CONFIG_FFV1_ENCODER 0
-#define CONFIG_FFVHUFF_ENCODER 0
-#define CONFIG_FITS_ENCODER 0
-#define CONFIG_FLASHSV_ENCODER 0
-#define CONFIG_FLASHSV2_ENCODER 0
-#define CONFIG_FLV_ENCODER 0
-#define CONFIG_GIF_ENCODER 0
-#define CONFIG_H261_ENCODER 0
-#define CONFIG_H263_ENCODER 0
-#define CONFIG_H263P_ENCODER 0
-#define CONFIG_HAP_ENCODER 0
-#define CONFIG_HUFFYUV_ENCODER 0
-#define CONFIG_JPEG2000_ENCODER 0
-#define CONFIG_JPEGLS_ENCODER 0
-#define CONFIG_LJPEG_ENCODER 0
-#define CONFIG_MAGICYUV_ENCODER 0
-#define CONFIG_MJPEG_ENCODER 0
-#define CONFIG_MPEG1VIDEO_ENCODER 0
-#define CONFIG_MPEG2VIDEO_ENCODER 0
-#define CONFIG_MPEG4_ENCODER 0
-#define CONFIG_MSMPEG4V2_ENCODER 0
-#define CONFIG_MSMPEG4V3_ENCODER 0
-#define CONFIG_MSVIDEO1_ENCODER 0
-#define CONFIG_PAM_ENCODER 0
-#define CONFIG_PBM_ENCODER 0
-#define CONFIG_PCX_ENCODER 0
-#define CONFIG_PGM_ENCODER 0
-#define CONFIG_PGMYUV_ENCODER 0
-#define CONFIG_PNG_ENCODER 0
-#define CONFIG_PPM_ENCODER 0
-#define CONFIG_PRORES_ENCODER 0
-#define CONFIG_PRORES_AW_ENCODER 0
-#define CONFIG_PRORES_KS_ENCODER 0
-#define CONFIG_QTRLE_ENCODER 0
-#define CONFIG_R10K_ENCODER 0
-#define CONFIG_R210_ENCODER 0
-#define CONFIG_RAWVIDEO_ENCODER 0
-#define CONFIG_ROQ_ENCODER 0
-#define CONFIG_RV10_ENCODER 0
-#define CONFIG_RV20_ENCODER 0
-#define CONFIG_S302M_ENCODER 0
-#define CONFIG_SGI_ENCODER 0
-#define CONFIG_SNOW_ENCODER 0
-#define CONFIG_SUNRAST_ENCODER 0
-#define CONFIG_SVQ1_ENCODER 0
-#define CONFIG_TARGA_ENCODER 0
-#define CONFIG_TIFF_ENCODER 0
-#define CONFIG_UTVIDEO_ENCODER 0
-#define CONFIG_V210_ENCODER 0
-#define CONFIG_V308_ENCODER 0
-#define CONFIG_V408_ENCODER 0
-#define CONFIG_V410_ENCODER 0
-#define CONFIG_VC2_ENCODER 0
-#define CONFIG_WRAPPED_AVFRAME_ENCODER 0
-#define CONFIG_WMV1_ENCODER 0
-#define CONFIG_WMV2_ENCODER 0
-#define CONFIG_XBM_ENCODER 0
-#define CONFIG_XFACE_ENCODER 0
-#define CONFIG_XWD_ENCODER 0
-#define CONFIG_Y41P_ENCODER 0
-#define CONFIG_YUV4_ENCODER 0
-#define CONFIG_ZLIB_ENCODER 0
-#define CONFIG_ZMBV_ENCODER 0
-#define CONFIG_AAC_ENCODER 0
-#define CONFIG_AC3_ENCODER 0
-#define CONFIG_AC3_FIXED_ENCODER 0
-#define CONFIG_ALAC_ENCODER 0
-#define CONFIG_APTX_ENCODER 0
-#define CONFIG_APTX_HD_ENCODER 0
-#define CONFIG_DCA_ENCODER 0
-#define CONFIG_EAC3_ENCODER 0
-#define CONFIG_FLAC_ENCODER 0
-#define CONFIG_G723_1_ENCODER 0
-#define CONFIG_MLP_ENCODER 0
-#define CONFIG_MP2_ENCODER 0
-#define CONFIG_MP2FIXED_ENCODER 0
-#define CONFIG_NELLYMOSER_ENCODER 0
-#define CONFIG_OPUS_ENCODER 0
-#define CONFIG_RA_144_ENCODER 0
-#define CONFIG_SBC_ENCODER 0
-#define CONFIG_SONIC_ENCODER 0
-#define CONFIG_SONIC_LS_ENCODER 0
-#define CONFIG_TRUEHD_ENCODER 0
-#define CONFIG_TTA_ENCODER 0
-#define CONFIG_VORBIS_ENCODER 0
-#define CONFIG_WAVPACK_ENCODER 0
-#define CONFIG_WMAV1_ENCODER 0
-#define CONFIG_WMAV2_ENCODER 0
-#define CONFIG_PCM_ALAW_ENCODER 0
-#define CONFIG_PCM_F32BE_ENCODER 0
-#define CONFIG_PCM_F32LE_ENCODER 0
-#define CONFIG_PCM_F64BE_ENCODER 0
-#define CONFIG_PCM_F64LE_ENCODER 0
-#define CONFIG_PCM_MULAW_ENCODER 0
-#define CONFIG_PCM_S8_ENCODER 0
-#define CONFIG_PCM_S8_PLANAR_ENCODER 0
-#define CONFIG_PCM_S16BE_ENCODER 0
-#define CONFIG_PCM_S16BE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S16LE_ENCODER 0
-#define CONFIG_PCM_S16LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S24BE_ENCODER 0
-#define CONFIG_PCM_S24DAUD_ENCODER 0
-#define CONFIG_PCM_S24LE_ENCODER 0
-#define CONFIG_PCM_S24LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S32BE_ENCODER 0
-#define CONFIG_PCM_S32LE_ENCODER 0
-#define CONFIG_PCM_S32LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S64BE_ENCODER 0
-#define CONFIG_PCM_S64LE_ENCODER 0
-#define CONFIG_PCM_U8_ENCODER 0
-#define CONFIG_PCM_U16BE_ENCODER 0
-#define CONFIG_PCM_U16LE_ENCODER 0
-#define CONFIG_PCM_U24BE_ENCODER 0
-#define CONFIG_PCM_U24LE_ENCODER 0
-#define CONFIG_PCM_U32BE_ENCODER 0
-#define CONFIG_PCM_U32LE_ENCODER 0
-#define CONFIG_PCM_VIDC_ENCODER 0
-#define CONFIG_ROQ_DPCM_ENCODER 0
-#define CONFIG_ADPCM_ADX_ENCODER 0
-#define CONFIG_ADPCM_G722_ENCODER 0
-#define CONFIG_ADPCM_G726_ENCODER 0
-#define CONFIG_ADPCM_G726LE_ENCODER 0
-#define CONFIG_ADPCM_IMA_QT_ENCODER 0
-#define CONFIG_ADPCM_IMA_WAV_ENCODER 0
-#define CONFIG_ADPCM_MS_ENCODER 0
-#define CONFIG_ADPCM_SWF_ENCODER 0
-#define CONFIG_ADPCM_YAMAHA_ENCODER 0
-#define CONFIG_SSA_ENCODER 0
-#define CONFIG_ASS_ENCODER 0
-#define CONFIG_DVBSUB_ENCODER 0
-#define CONFIG_DVDSUB_ENCODER 0
-#define CONFIG_MOVTEXT_ENCODER 0
-#define CONFIG_SRT_ENCODER 0
-#define CONFIG_SUBRIP_ENCODER 0
-#define CONFIG_TEXT_ENCODER 0
-#define CONFIG_WEBVTT_ENCODER 0
-#define CONFIG_XSUB_ENCODER 0
-#define CONFIG_AAC_AT_ENCODER 0
-#define CONFIG_ALAC_AT_ENCODER 0
-#define CONFIG_ILBC_AT_ENCODER 0
-#define CONFIG_PCM_ALAW_AT_ENCODER 0
-#define CONFIG_PCM_MULAW_AT_ENCODER 0
-#define CONFIG_LIBAOM_AV1_ENCODER 0
-#define CONFIG_LIBCODEC2_ENCODER 0
-#define CONFIG_LIBFDK_AAC_ENCODER 0
-#define CONFIG_LIBGSM_ENCODER 0
-#define CONFIG_LIBGSM_MS_ENCODER 0
-#define CONFIG_LIBILBC_ENCODER 0
-#define CONFIG_LIBMP3LAME_ENCODER 0
-#define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-#define CONFIG_LIBOPENJPEG_ENCODER 0
-#define CONFIG_LIBOPUS_ENCODER 0
-#define CONFIG_LIBSHINE_ENCODER 0
-#define CONFIG_LIBSPEEX_ENCODER 0
-#define CONFIG_LIBTHEORA_ENCODER 0
-#define CONFIG_LIBTWOLAME_ENCODER 0
-#define CONFIG_LIBVO_AMRWBENC_ENCODER 0
-#define CONFIG_LIBVORBIS_ENCODER 0
-#define CONFIG_LIBVPX_VP8_ENCODER 0
-#define CONFIG_LIBVPX_VP9_ENCODER 0
-#define CONFIG_LIBWAVPACK_ENCODER 0
-#define CONFIG_LIBWEBP_ANIM_ENCODER 0
-#define CONFIG_LIBWEBP_ENCODER 0
-#define CONFIG_LIBX262_ENCODER 0
-#define CONFIG_LIBX264_ENCODER 0
-#define CONFIG_LIBX264RGB_ENCODER 0
-#define CONFIG_LIBX265_ENCODER 0
-#define CONFIG_LIBXAVS_ENCODER 0
-#define CONFIG_LIBXAVS2_ENCODER 0
-#define CONFIG_LIBXVID_ENCODER 0
-#define CONFIG_H263_V4L2M2M_ENCODER 0
-#define CONFIG_LIBOPENH264_ENCODER 0
-#define CONFIG_H264_AMF_ENCODER 0
-#define CONFIG_H264_NVENC_ENCODER 0
-#define CONFIG_H264_OMX_ENCODER 0
-#define CONFIG_H264_QSV_ENCODER 0
-#define CONFIG_H264_V4L2M2M_ENCODER 0
-#define CONFIG_H264_VAAPI_ENCODER 0
-#define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
-#define CONFIG_NVENC_ENCODER 0
-#define CONFIG_NVENC_H264_ENCODER 0
-#define CONFIG_NVENC_HEVC_ENCODER 0
-#define CONFIG_HEVC_AMF_ENCODER 0
-#define CONFIG_HEVC_NVENC_ENCODER 0
-#define CONFIG_HEVC_QSV_ENCODER 0
-#define CONFIG_HEVC_V4L2M2M_ENCODER 0
-#define CONFIG_HEVC_VAAPI_ENCODER 0
-#define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
-#define CONFIG_LIBKVAZAAR_ENCODER 0
-#define CONFIG_MJPEG_QSV_ENCODER 0
-#define CONFIG_MJPEG_VAAPI_ENCODER 0
-#define CONFIG_MPEG2_QSV_ENCODER 0
-#define CONFIG_MPEG2_VAAPI_ENCODER 0
-#define CONFIG_MPEG4_V4L2M2M_ENCODER 0
-#define CONFIG_VP8_V4L2M2M_ENCODER 0
-#define CONFIG_VP8_VAAPI_ENCODER 0
-#define CONFIG_VP9_VAAPI_ENCODER 0
-#define CONFIG_H263_VAAPI_HWACCEL 0
-#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_H264_D3D11VA_HWACCEL 0
-#define CONFIG_H264_D3D11VA2_HWACCEL 0
-#define CONFIG_H264_DXVA2_HWACCEL 0
-#define CONFIG_H264_NVDEC_HWACCEL 0
-#define CONFIG_H264_VAAPI_HWACCEL 0
-#define CONFIG_H264_VDPAU_HWACCEL 0
-#define CONFIG_H264_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_HEVC_D3D11VA_HWACCEL 0
-#define CONFIG_HEVC_D3D11VA2_HWACCEL 0
-#define CONFIG_HEVC_DXVA2_HWACCEL 0
-#define CONFIG_HEVC_NVDEC_HWACCEL 0
-#define CONFIG_HEVC_VAAPI_HWACCEL 0
-#define CONFIG_HEVC_VDPAU_HWACCEL 0
-#define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MJPEG_NVDEC_HWACCEL 0
-#define CONFIG_MJPEG_VAAPI_HWACCEL 0
-#define CONFIG_MPEG1_NVDEC_HWACCEL 0
-#define CONFIG_MPEG1_VDPAU_HWACCEL 0
-#define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MPEG1_XVMC_HWACCEL 0
-#define CONFIG_MPEG2_D3D11VA_HWACCEL 0
-#define CONFIG_MPEG2_D3D11VA2_HWACCEL 0
-#define CONFIG_MPEG2_NVDEC_HWACCEL 0
-#define CONFIG_MPEG2_DXVA2_HWACCEL 0
-#define CONFIG_MPEG2_VAAPI_HWACCEL 0
-#define CONFIG_MPEG2_VDPAU_HWACCEL 0
-#define CONFIG_MPEG2_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MPEG2_XVMC_HWACCEL 0
-#define CONFIG_MPEG4_NVDEC_HWACCEL 0
-#define CONFIG_MPEG4_VAAPI_HWACCEL 0
-#define CONFIG_MPEG4_VDPAU_HWACCEL 0
-#define CONFIG_MPEG4_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_VC1_D3D11VA_HWACCEL 0
-#define CONFIG_VC1_D3D11VA2_HWACCEL 0
-#define CONFIG_VC1_DXVA2_HWACCEL 0
-#define CONFIG_VC1_NVDEC_HWACCEL 0
-#define CONFIG_VC1_VAAPI_HWACCEL 0
-#define CONFIG_VC1_VDPAU_HWACCEL 0
-#define CONFIG_VP8_NVDEC_HWACCEL 0
-#define CONFIG_VP8_VAAPI_HWACCEL 0
-#define CONFIG_VP9_D3D11VA_HWACCEL 0
-#define CONFIG_VP9_D3D11VA2_HWACCEL 0
-#define CONFIG_VP9_DXVA2_HWACCEL 0
-#define CONFIG_VP9_NVDEC_HWACCEL 0
-#define CONFIG_VP9_VAAPI_HWACCEL 0
-#define CONFIG_WMV3_D3D11VA_HWACCEL 0
-#define CONFIG_WMV3_D3D11VA2_HWACCEL 0
-#define CONFIG_WMV3_DXVA2_HWACCEL 0
-#define CONFIG_WMV3_NVDEC_HWACCEL 0
-#define CONFIG_WMV3_VAAPI_HWACCEL 0
-#define CONFIG_WMV3_VDPAU_HWACCEL 0
-#define CONFIG_AAC_PARSER 1
-#define CONFIG_AAC_LATM_PARSER 1
-#define CONFIG_AC3_PARSER 1
-#define CONFIG_ADX_PARSER 1
-#define CONFIG_AV1_PARSER 1
-#define CONFIG_AVS2_PARSER 1
-#define CONFIG_BMP_PARSER 1
-#define CONFIG_CAVSVIDEO_PARSER 1
-#define CONFIG_COOK_PARSER 1
-#define CONFIG_DCA_PARSER 1
-#define CONFIG_DIRAC_PARSER 1
-#define CONFIG_DNXHD_PARSER 1
-#define CONFIG_DPX_PARSER 1
-#define CONFIG_DVAUDIO_PARSER 1
-#define CONFIG_DVBSUB_PARSER 1
-#define CONFIG_DVDSUB_PARSER 1
-#define CONFIG_DVD_NAV_PARSER 1
-#define CONFIG_FLAC_PARSER 1
-#define CONFIG_G729_PARSER 1
-#define CONFIG_GSM_PARSER 1
-#define CONFIG_H261_PARSER 1
-#define CONFIG_H263_PARSER 1
-#define CONFIG_H264_PARSER 1
-#define CONFIG_HEVC_PARSER 1
-#define CONFIG_MJPEG_PARSER 1
-#define CONFIG_MLP_PARSER 1
-#define CONFIG_MPEG4VIDEO_PARSER 1
-#define CONFIG_MPEGAUDIO_PARSER 1
-#define CONFIG_MPEGVIDEO_PARSER 1
-#define CONFIG_OPUS_PARSER 1
-#define CONFIG_PNG_PARSER 1
-#define CONFIG_PNM_PARSER 1
-#define CONFIG_RV30_PARSER 1
-#define CONFIG_RV40_PARSER 1
-#define CONFIG_SBC_PARSER 1
-#define CONFIG_SIPR_PARSER 1
-#define CONFIG_TAK_PARSER 1
-#define CONFIG_VC1_PARSER 1
-#define CONFIG_VORBIS_PARSER 1
-#define CONFIG_VP3_PARSER 1
-#define CONFIG_VP8_PARSER 1
-#define CONFIG_VP9_PARSER 1
-#define CONFIG_XMA_PARSER 1
-#define CONFIG_ALSA_INDEV 0
-#define CONFIG_ANDROID_CAMERA_INDEV 0
-#define CONFIG_AVFOUNDATION_INDEV 0
-#define CONFIG_BKTR_INDEV 0
-#define CONFIG_DECKLINK_INDEV 0
-#define CONFIG_LIBNDI_NEWTEK_INDEV 0
-#define CONFIG_DSHOW_INDEV 0
-#define CONFIG_FBDEV_INDEV 0
-#define CONFIG_GDIGRAB_INDEV 0
-#define CONFIG_IEC61883_INDEV 0
-#define CONFIG_JACK_INDEV 0
-#define CONFIG_KMSGRAB_INDEV 0
-#define CONFIG_LAVFI_INDEV 0
-#define CONFIG_OPENAL_INDEV 0
-#define CONFIG_OSS_INDEV 0
-#define CONFIG_PULSE_INDEV 0
-#define CONFIG_SNDIO_INDEV 0
-#define CONFIG_V4L2_INDEV 0
-#define CONFIG_VFWCAP_INDEV 0
-#define CONFIG_XCBGRAB_INDEV 0
-#define CONFIG_LIBCDIO_INDEV 0
-#define CONFIG_LIBDC1394_INDEV 0
-#define CONFIG_ALSA_OUTDEV 0
-#define CONFIG_CACA_OUTDEV 0
-#define CONFIG_DECKLINK_OUTDEV 0
-#define CONFIG_LIBNDI_NEWTEK_OUTDEV 0
-#define CONFIG_FBDEV_OUTDEV 0
-#define CONFIG_OPENGL_OUTDEV 0
-#define CONFIG_OSS_OUTDEV 0
-#define CONFIG_PULSE_OUTDEV 0
-#define CONFIG_SDL2_OUTDEV 0
-#define CONFIG_SNDIO_OUTDEV 0
-#define CONFIG_V4L2_OUTDEV 0
-#define CONFIG_XV_OUTDEV 0
-#define CONFIG_ABENCH_FILTER 0
-#define CONFIG_ACOMPRESSOR_FILTER 0
-#define CONFIG_ACONTRAST_FILTER 0
-#define CONFIG_ACOPY_FILTER 0
-#define CONFIG_ACUE_FILTER 0
-#define CONFIG_ACROSSFADE_FILTER 0
-#define CONFIG_ACROSSOVER_FILTER 0
-#define CONFIG_ACRUSHER_FILTER 0
-#define CONFIG_ADECLICK_FILTER 0
-#define CONFIG_ADECLIP_FILTER 0
-#define CONFIG_ADELAY_FILTER 0
-#define CONFIG_ADERIVATIVE_FILTER 0
-#define CONFIG_AECHO_FILTER 0
-#define CONFIG_AEMPHASIS_FILTER 0
-#define CONFIG_AEVAL_FILTER 0
-#define CONFIG_AFADE_FILTER 0
-#define CONFIG_AFFTDN_FILTER 0
-#define CONFIG_AFFTFILT_FILTER 0
-#define CONFIG_AFIR_FILTER 0
-#define CONFIG_AFORMAT_FILTER 0
-#define CONFIG_AGATE_FILTER 0
-#define CONFIG_AIIR_FILTER 0
-#define CONFIG_AINTEGRAL_FILTER 0
-#define CONFIG_AINTERLEAVE_FILTER 0
-#define CONFIG_ALIMITER_FILTER 0
-#define CONFIG_ALLPASS_FILTER 0
-#define CONFIG_ALOOP_FILTER 0
-#define CONFIG_AMERGE_FILTER 0
-#define CONFIG_AMETADATA_FILTER 0
-#define CONFIG_AMIX_FILTER 0
-#define CONFIG_AMULTIPLY_FILTER 0
-#define CONFIG_ANEQUALIZER_FILTER 0
-#define CONFIG_ANULL_FILTER 0
-#define CONFIG_APAD_FILTER 0
-#define CONFIG_APERMS_FILTER 0
-#define CONFIG_APHASER_FILTER 0
-#define CONFIG_APULSATOR_FILTER 0
-#define CONFIG_AREALTIME_FILTER 0
-#define CONFIG_ARESAMPLE_FILTER 0
-#define CONFIG_AREVERSE_FILTER 0
-#define CONFIG_ASELECT_FILTER 0
-#define CONFIG_ASENDCMD_FILTER 0
-#define CONFIG_ASETNSAMPLES_FILTER 0
-#define CONFIG_ASETPTS_FILTER 0
-#define CONFIG_ASETRATE_FILTER 0
-#define CONFIG_ASETTB_FILTER 0
-#define CONFIG_ASHOWINFO_FILTER 0
-#define CONFIG_ASIDEDATA_FILTER 0
-#define CONFIG_ASPLIT_FILTER 0
-#define CONFIG_ASTATS_FILTER 0
-#define CONFIG_ASTREAMSELECT_FILTER 0
-#define CONFIG_ATEMPO_FILTER 0
-#define CONFIG_ATRIM_FILTER 0
-#define CONFIG_AZMQ_FILTER 0
-#define CONFIG_BANDPASS_FILTER 0
-#define CONFIG_BANDREJECT_FILTER 0
-#define CONFIG_BASS_FILTER 0
-#define CONFIG_BIQUAD_FILTER 0
-#define CONFIG_BS2B_FILTER 0
-#define CONFIG_CHANNELMAP_FILTER 0
-#define CONFIG_CHANNELSPLIT_FILTER 0
-#define CONFIG_CHORUS_FILTER 0
-#define CONFIG_COMPAND_FILTER 0
-#define CONFIG_COMPENSATIONDELAY_FILTER 0
-#define CONFIG_CROSSFEED_FILTER 0
-#define CONFIG_CRYSTALIZER_FILTER 0
-#define CONFIG_DCSHIFT_FILTER 0
-#define CONFIG_DRMETER_FILTER 0
-#define CONFIG_DYNAUDNORM_FILTER 0
-#define CONFIG_EARWAX_FILTER 0
-#define CONFIG_EBUR128_FILTER 0
-#define CONFIG_EQUALIZER_FILTER 0
-#define CONFIG_EXTRASTEREO_FILTER 0
-#define CONFIG_FIREQUALIZER_FILTER 0
-#define CONFIG_FLANGER_FILTER 0
-#define CONFIG_HAAS_FILTER 0
-#define CONFIG_HDCD_FILTER 0
-#define CONFIG_HEADPHONE_FILTER 0
-#define CONFIG_HIGHPASS_FILTER 0
-#define CONFIG_HIGHSHELF_FILTER 0
-#define CONFIG_JOIN_FILTER 0
-#define CONFIG_LADSPA_FILTER 0
-#define CONFIG_LOUDNORM_FILTER 0
-#define CONFIG_LOWPASS_FILTER 0
-#define CONFIG_LOWSHELF_FILTER 0
-#define CONFIG_LV2_FILTER 0
-#define CONFIG_MCOMPAND_FILTER 0
-#define CONFIG_PAN_FILTER 0
-#define CONFIG_REPLAYGAIN_FILTER 0
-#define CONFIG_RESAMPLE_FILTER 0
-#define CONFIG_RUBBERBAND_FILTER 0
-#define CONFIG_SIDECHAINCOMPRESS_FILTER 0
-#define CONFIG_SIDECHAINGATE_FILTER 0
-#define CONFIG_SILENCEDETECT_FILTER 0
-#define CONFIG_SILENCEREMOVE_FILTER 0
-#define CONFIG_SOFALIZER_FILTER 0
-#define CONFIG_STEREOTOOLS_FILTER 0
-#define CONFIG_STEREOWIDEN_FILTER 0
-#define CONFIG_SUPEREQUALIZER_FILTER 0
-#define CONFIG_SURROUND_FILTER 0
-#define CONFIG_TREBLE_FILTER 0
-#define CONFIG_TREMOLO_FILTER 0
-#define CONFIG_VIBRATO_FILTER 0
-#define CONFIG_VOLUME_FILTER 0
-#define CONFIG_VOLUMEDETECT_FILTER 0
-#define CONFIG_AEVALSRC_FILTER 0
-#define CONFIG_ANOISESRC_FILTER 0
-#define CONFIG_ANULLSRC_FILTER 0
-#define CONFIG_FLITE_FILTER 0
-#define CONFIG_HILBERT_FILTER 0
-#define CONFIG_SINC_FILTER 0
-#define CONFIG_SINE_FILTER 0
-#define CONFIG_ANULLSINK_FILTER 0
-#define CONFIG_ALPHAEXTRACT_FILTER 0
-#define CONFIG_ALPHAMERGE_FILTER 0
-#define CONFIG_AMPLIFY_FILTER 0
-#define CONFIG_ASS_FILTER 0
-#define CONFIG_ATADENOISE_FILTER 0
-#define CONFIG_AVGBLUR_FILTER 0
-#define CONFIG_AVGBLUR_OPENCL_FILTER 0
-#define CONFIG_BBOX_FILTER 0
-#define CONFIG_BENCH_FILTER 0
-#define CONFIG_BITPLANENOISE_FILTER 0
-#define CONFIG_BLACKDETECT_FILTER 0
-#define CONFIG_BLACKFRAME_FILTER 0
-#define CONFIG_BLEND_FILTER 0
-#define CONFIG_BM3D_FILTER 0
-#define CONFIG_BOXBLUR_FILTER 0
-#define CONFIG_BOXBLUR_OPENCL_FILTER 0
-#define CONFIG_BWDIF_FILTER 0
-#define CONFIG_CHROMAHOLD_FILTER 0
-#define CONFIG_CHROMAKEY_FILTER 0
-#define CONFIG_CHROMASHIFT_FILTER 0
-#define CONFIG_CIESCOPE_FILTER 0
-#define CONFIG_CODECVIEW_FILTER 0
-#define CONFIG_COLORBALANCE_FILTER 0
-#define CONFIG_COLORCHANNELMIXER_FILTER 0
-#define CONFIG_COLORKEY_FILTER 0
-#define CONFIG_COLORLEVELS_FILTER 0
-#define CONFIG_COLORMATRIX_FILTER 0
-#define CONFIG_COLORSPACE_FILTER 0
-#define CONFIG_CONVOLUTION_FILTER 0
-#define CONFIG_CONVOLUTION_OPENCL_FILTER 0
-#define CONFIG_CONVOLVE_FILTER 0
-#define CONFIG_COPY_FILTER 0
-#define CONFIG_COREIMAGE_FILTER 0
-#define CONFIG_COVER_RECT_FILTER 0
-#define CONFIG_CROP_FILTER 0
-#define CONFIG_CROPDETECT_FILTER 0
-#define CONFIG_CUE_FILTER 0
-#define CONFIG_CURVES_FILTER 0
-#define CONFIG_DATASCOPE_FILTER 0
-#define CONFIG_DCTDNOIZ_FILTER 0
-#define CONFIG_DEBAND_FILTER 0
-#define CONFIG_DEBLOCK_FILTER 0
-#define CONFIG_DECIMATE_FILTER 0
-#define CONFIG_DECONVOLVE_FILTER 0
-#define CONFIG_DEDOT_FILTER 0
-#define CONFIG_DEFLATE_FILTER 0
-#define CONFIG_DEFLICKER_FILTER 0
-#define CONFIG_DEINTERLACE_QSV_FILTER 0
-#define CONFIG_DEINTERLACE_VAAPI_FILTER 0
-#define CONFIG_DEJUDDER_FILTER 0
-#define CONFIG_DELOGO_FILTER 0
-#define CONFIG_DENOISE_VAAPI_FILTER 0
-#define CONFIG_DESHAKE_FILTER 0
-#define CONFIG_DESPILL_FILTER 0
-#define CONFIG_DETELECINE_FILTER 0
-#define CONFIG_DILATION_FILTER 0
-#define CONFIG_DILATION_OPENCL_FILTER 0
-#define CONFIG_DISPLACE_FILTER 0
-#define CONFIG_DOUBLEWEAVE_FILTER 0
-#define CONFIG_DRAWBOX_FILTER 0
-#define CONFIG_DRAWGRAPH_FILTER 0
-#define CONFIG_DRAWGRID_FILTER 0
-#define CONFIG_DRAWTEXT_FILTER 0
-#define CONFIG_EDGEDETECT_FILTER 0
-#define CONFIG_ELBG_FILTER 0
-#define CONFIG_ENTROPY_FILTER 0
-#define CONFIG_EQ_FILTER 0
-#define CONFIG_EROSION_FILTER 0
-#define CONFIG_EROSION_OPENCL_FILTER 0
-#define CONFIG_EXTRACTPLANES_FILTER 0
-#define CONFIG_FADE_FILTER 0
-#define CONFIG_FFTDNOIZ_FILTER 0
-#define CONFIG_FFTFILT_FILTER 0
-#define CONFIG_FIELD_FILTER 0
-#define CONFIG_FIELDHINT_FILTER 0
-#define CONFIG_FIELDMATCH_FILTER 0
-#define CONFIG_FIELDORDER_FILTER 0
-#define CONFIG_FILLBORDERS_FILTER 0
-#define CONFIG_FIND_RECT_FILTER 0
-#define CONFIG_FLOODFILL_FILTER 0
-#define CONFIG_FORMAT_FILTER 0
-#define CONFIG_FPS_FILTER 0
-#define CONFIG_FRAMEPACK_FILTER 0
-#define CONFIG_FRAMERATE_FILTER 0
-#define CONFIG_FRAMESTEP_FILTER 0
-#define CONFIG_FREEZEDETECT_FILTER 0
-#define CONFIG_FREI0R_FILTER 0
-#define CONFIG_FSPP_FILTER 0
-#define CONFIG_GBLUR_FILTER 0
-#define CONFIG_GEQ_FILTER 0
-#define CONFIG_GRADFUN_FILTER 0
-#define CONFIG_GRAPHMONITOR_FILTER 0
-#define CONFIG_GREYEDGE_FILTER 0
-#define CONFIG_HALDCLUT_FILTER 0
-#define CONFIG_HFLIP_FILTER 0
-#define CONFIG_HISTEQ_FILTER 0
-#define CONFIG_HISTOGRAM_FILTER 0
-#define CONFIG_HQDN3D_FILTER 0
-#define CONFIG_HQX_FILTER 0
-#define CONFIG_HSTACK_FILTER 0
-#define CONFIG_HUE_FILTER 0
-#define CONFIG_HWDOWNLOAD_FILTER 0
-#define CONFIG_HWMAP_FILTER 0
-#define CONFIG_HWUPLOAD_FILTER 0
-#define CONFIG_HWUPLOAD_CUDA_FILTER 0
-#define CONFIG_HYSTERESIS_FILTER 0
-#define CONFIG_IDET_FILTER 0
-#define CONFIG_IL_FILTER 0
-#define CONFIG_INFLATE_FILTER 0
-#define CONFIG_INTERLACE_FILTER 0
-#define CONFIG_INTERLEAVE_FILTER 0
-#define CONFIG_KERNDEINT_FILTER 0
-#define CONFIG_LENSCORRECTION_FILTER 0
-#define CONFIG_LENSFUN_FILTER 0
-#define CONFIG_LIBVMAF_FILTER 0
-#define CONFIG_LIMITER_FILTER 0
-#define CONFIG_LOOP_FILTER 0
-#define CONFIG_LUMAKEY_FILTER 0
-#define CONFIG_LUT_FILTER 0
-#define CONFIG_LUT1D_FILTER 0
-#define CONFIG_LUT2_FILTER 0
-#define CONFIG_LUT3D_FILTER 0
-#define CONFIG_LUTRGB_FILTER 0
-#define CONFIG_LUTYUV_FILTER 0
-#define CONFIG_MASKEDCLAMP_FILTER 0
-#define CONFIG_MASKEDMERGE_FILTER 0
-#define CONFIG_MCDEINT_FILTER 0
-#define CONFIG_MERGEPLANES_FILTER 0
-#define CONFIG_MESTIMATE_FILTER 0
-#define CONFIG_METADATA_FILTER 0
-#define CONFIG_MIDEQUALIZER_FILTER 0
-#define CONFIG_MINTERPOLATE_FILTER 0
-#define CONFIG_MIX_FILTER 0
-#define CONFIG_MPDECIMATE_FILTER 0
-#define CONFIG_NEGATE_FILTER 0
-#define CONFIG_NLMEANS_FILTER 0
-#define CONFIG_NNEDI_FILTER 0
-#define CONFIG_NOFORMAT_FILTER 0
-#define CONFIG_NOISE_FILTER 0
-#define CONFIG_NORMALIZE_FILTER 0
-#define CONFIG_NULL_FILTER 0
-#define CONFIG_OCR_FILTER 0
-#define CONFIG_OCV_FILTER 0
-#define CONFIG_OSCILLOSCOPE_FILTER 0
-#define CONFIG_OVERLAY_FILTER 0
-#define CONFIG_OVERLAY_OPENCL_FILTER 0
-#define CONFIG_OVERLAY_QSV_FILTER 0
-#define CONFIG_OWDENOISE_FILTER 0
-#define CONFIG_PAD_FILTER 0
-#define CONFIG_PALETTEGEN_FILTER 0
-#define CONFIG_PALETTEUSE_FILTER 0
-#define CONFIG_PERMS_FILTER 0
-#define CONFIG_PERSPECTIVE_FILTER 0
-#define CONFIG_PHASE_FILTER 0
-#define CONFIG_PIXDESCTEST_FILTER 0
-#define CONFIG_PIXSCOPE_FILTER 0
-#define CONFIG_PP_FILTER 0
-#define CONFIG_PP7_FILTER 0
-#define CONFIG_PREMULTIPLY_FILTER 0
-#define CONFIG_PREWITT_FILTER 0
-#define CONFIG_PREWITT_OPENCL_FILTER 0
-#define CONFIG_PROCAMP_VAAPI_FILTER 0
-#define CONFIG_PROGRAM_OPENCL_FILTER 0
-#define CONFIG_PSEUDOCOLOR_FILTER 0
-#define CONFIG_PSNR_FILTER 0
-#define CONFIG_PULLUP_FILTER 0
-#define CONFIG_QP_FILTER 0
-#define CONFIG_RANDOM_FILTER 0
-#define CONFIG_READEIA608_FILTER 0
-#define CONFIG_READVITC_FILTER 0
-#define CONFIG_REALTIME_FILTER 0
-#define CONFIG_REMAP_FILTER 0
-#define CONFIG_REMOVEGRAIN_FILTER 0
-#define CONFIG_REMOVELOGO_FILTER 0
-#define CONFIG_REPEATFIELDS_FILTER 0
-#define CONFIG_REVERSE_FILTER 0
-#define CONFIG_RGBASHIFT_FILTER 0
-#define CONFIG_ROBERTS_FILTER 0
-#define CONFIG_ROBERTS_OPENCL_FILTER 0
-#define CONFIG_ROTATE_FILTER 0
-#define CONFIG_SAB_FILTER 0
-#define CONFIG_SCALE_FILTER 0
-#define CONFIG_SCALE_CUDA_FILTER 0
-#define CONFIG_SCALE_NPP_FILTER 0
-#define CONFIG_SCALE_QSV_FILTER 0
-#define CONFIG_SCALE_VAAPI_FILTER 0
-#define CONFIG_SCALE2REF_FILTER 0
-#define CONFIG_SELECT_FILTER 0
-#define CONFIG_SELECTIVECOLOR_FILTER 0
-#define CONFIG_SENDCMD_FILTER 0
-#define CONFIG_SEPARATEFIELDS_FILTER 0
-#define CONFIG_SETDAR_FILTER 0
-#define CONFIG_SETFIELD_FILTER 0
-#define CONFIG_SETPARAMS_FILTER 0
-#define CONFIG_SETPTS_FILTER 0
-#define CONFIG_SETRANGE_FILTER 0
-#define CONFIG_SETSAR_FILTER 0
-#define CONFIG_SETTB_FILTER 0
-#define CONFIG_SHARPNESS_VAAPI_FILTER 0
-#define CONFIG_SHOWINFO_FILTER 0
-#define CONFIG_SHOWPALETTE_FILTER 0
-#define CONFIG_SHUFFLEFRAMES_FILTER 0
-#define CONFIG_SHUFFLEPLANES_FILTER 0
-#define CONFIG_SIDEDATA_FILTER 0
-#define CONFIG_SIGNALSTATS_FILTER 0
-#define CONFIG_SIGNATURE_FILTER 0
-#define CONFIG_SMARTBLUR_FILTER 0
-#define CONFIG_SOBEL_FILTER 0
-#define CONFIG_SOBEL_OPENCL_FILTER 0
-#define CONFIG_SPLIT_FILTER 0
-#define CONFIG_SPP_FILTER 0
-#define CONFIG_SR_FILTER 0
-#define CONFIG_SSIM_FILTER 0
-#define CONFIG_STEREO3D_FILTER 0
-#define CONFIG_STREAMSELECT_FILTER 0
-#define CONFIG_SUBTITLES_FILTER 0
-#define CONFIG_SUPER2XSAI_FILTER 0
-#define CONFIG_SWAPRECT_FILTER 0
-#define CONFIG_SWAPUV_FILTER 0
-#define CONFIG_TBLEND_FILTER 0
-#define CONFIG_TELECINE_FILTER 0
-#define CONFIG_THRESHOLD_FILTER 0
-#define CONFIG_THUMBNAIL_FILTER 0
-#define CONFIG_THUMBNAIL_CUDA_FILTER 0
-#define CONFIG_TILE_FILTER 0
-#define CONFIG_TINTERLACE_FILTER 0
-#define CONFIG_TLUT2_FILTER 0
-#define CONFIG_TMIX_FILTER 0
-#define CONFIG_TONEMAP_FILTER 0
-#define CONFIG_TONEMAP_OPENCL_FILTER 0
-#define CONFIG_TPAD_FILTER 0
-#define CONFIG_TRANSPOSE_FILTER 0
-#define CONFIG_TRANSPOSE_NPP_FILTER 0
-#define CONFIG_TRIM_FILTER 0
-#define CONFIG_UNPREMULTIPLY_FILTER 0
-#define CONFIG_UNSHARP_FILTER 0
-#define CONFIG_UNSHARP_OPENCL_FILTER 0
-#define CONFIG_USPP_FILTER 0
-#define CONFIG_VAGUEDENOISER_FILTER 0
-#define CONFIG_VECTORSCOPE_FILTER 0
-#define CONFIG_VFLIP_FILTER 0
-#define CONFIG_VFRDET_FILTER 0
-#define CONFIG_VIBRANCE_FILTER 0
-#define CONFIG_VIDSTABDETECT_FILTER 0
-#define CONFIG_VIDSTABTRANSFORM_FILTER 0
-#define CONFIG_VIGNETTE_FILTER 0
-#define CONFIG_VMAFMOTION_FILTER 0
-#define CONFIG_VPP_QSV_FILTER 0
-#define CONFIG_VSTACK_FILTER 0
-#define CONFIG_W3FDIF_FILTER 0
-#define CONFIG_WAVEFORM_FILTER 0
-#define CONFIG_WEAVE_FILTER 0
-#define CONFIG_XBR_FILTER 0
-#define CONFIG_XSTACK_FILTER 0
-#define CONFIG_YADIF_FILTER 0
-#define CONFIG_YADIF_CUDA_FILTER 0
-#define CONFIG_ZMQ_FILTER 0
-#define CONFIG_ZOOMPAN_FILTER 0
-#define CONFIG_ZSCALE_FILTER 0
-#define CONFIG_ALLRGB_FILTER 0
-#define CONFIG_ALLYUV_FILTER 0
-#define CONFIG_CELLAUTO_FILTER 0
-#define CONFIG_COLOR_FILTER 0
-#define CONFIG_COREIMAGESRC_FILTER 0
-#define CONFIG_FREI0R_SRC_FILTER 0
-#define CONFIG_HALDCLUTSRC_FILTER 0
-#define CONFIG_LIFE_FILTER 0
-#define CONFIG_MANDELBROT_FILTER 0
-#define CONFIG_MPTESTSRC_FILTER 0
-#define CONFIG_NULLSRC_FILTER 0
-#define CONFIG_OPENCLSRC_FILTER 0
-#define CONFIG_PAL75BARS_FILTER 0
-#define CONFIG_PAL100BARS_FILTER 0
-#define CONFIG_RGBTESTSRC_FILTER 0
-#define CONFIG_SMPTEBARS_FILTER 0
-#define CONFIG_SMPTEHDBARS_FILTER 0
-#define CONFIG_TESTSRC_FILTER 0
-#define CONFIG_TESTSRC2_FILTER 0
-#define CONFIG_YUVTESTSRC_FILTER 0
-#define CONFIG_NULLSINK_FILTER 0
-#define CONFIG_ABITSCOPE_FILTER 0
-#define CONFIG_ADRAWGRAPH_FILTER 0
-#define CONFIG_AGRAPHMONITOR_FILTER 0
-#define CONFIG_AHISTOGRAM_FILTER 0
-#define CONFIG_APHASEMETER_FILTER 0
-#define CONFIG_AVECTORSCOPE_FILTER 0
-#define CONFIG_CONCAT_FILTER 0
-#define CONFIG_SHOWCQT_FILTER 0
-#define CONFIG_SHOWFREQS_FILTER 0
-#define CONFIG_SHOWSPECTRUM_FILTER 0
-#define CONFIG_SHOWSPECTRUMPIC_FILTER 0
-#define CONFIG_SHOWVOLUME_FILTER 0
-#define CONFIG_SHOWWAVES_FILTER 0
-#define CONFIG_SHOWWAVESPIC_FILTER 0
-#define CONFIG_SPECTRUMSYNTH_FILTER 0
-#define CONFIG_AMOVIE_FILTER 0
-#define CONFIG_MOVIE_FILTER 0
-#define CONFIG_AFIFO_FILTER 0
-#define CONFIG_FIFO_FILTER 0
-#define CONFIG_AA_DEMUXER 1
-#define CONFIG_AAC_DEMUXER 1
-#define CONFIG_AC3_DEMUXER 1
-#define CONFIG_ACM_DEMUXER 1
-#define CONFIG_ACT_DEMUXER 1
-#define CONFIG_ADF_DEMUXER 1
-#define CONFIG_ADP_DEMUXER 1
-#define CONFIG_ADS_DEMUXER 1
-#define CONFIG_ADX_DEMUXER 1
-#define CONFIG_AEA_DEMUXER 1
-#define CONFIG_AFC_DEMUXER 1
-#define CONFIG_AIFF_DEMUXER 1
-#define CONFIG_AIX_DEMUXER 1
-#define CONFIG_AMR_DEMUXER 1
-#define CONFIG_AMRNB_DEMUXER 1
-#define CONFIG_AMRWB_DEMUXER 1
-#define CONFIG_ANM_DEMUXER 1
-#define CONFIG_APC_DEMUXER 1
-#define CONFIG_APE_DEMUXER 1
-#define CONFIG_APNG_DEMUXER 1
-#define CONFIG_APTX_DEMUXER 1
-#define CONFIG_APTX_HD_DEMUXER 1
-#define CONFIG_AQTITLE_DEMUXER 1
-#define CONFIG_ASF_DEMUXER 1
-#define CONFIG_ASF_O_DEMUXER 1
-#define CONFIG_ASS_DEMUXER 1
-#define CONFIG_AST_DEMUXER 1
-#define CONFIG_AU_DEMUXER 1
-#define CONFIG_AVI_DEMUXER 1
-#define CONFIG_AVISYNTH_DEMUXER 0
-#define CONFIG_AVR_DEMUXER 1
-#define CONFIG_AVS_DEMUXER 1
-#define CONFIG_AVS2_DEMUXER 1
-#define CONFIG_BETHSOFTVID_DEMUXER 1
-#define CONFIG_BFI_DEMUXER 1
-#define CONFIG_BINTEXT_DEMUXER 1
-#define CONFIG_BINK_DEMUXER 1
-#define CONFIG_BIT_DEMUXER 1
-#define CONFIG_BMV_DEMUXER 1
-#define CONFIG_BFSTM_DEMUXER 1
-#define CONFIG_BRSTM_DEMUXER 1
-#define CONFIG_BOA_DEMUXER 1
-#define CONFIG_C93_DEMUXER 1
-#define CONFIG_CAF_DEMUXER 1
-#define CONFIG_CAVSVIDEO_DEMUXER 1
-#define CONFIG_CDG_DEMUXER 1
-#define CONFIG_CDXL_DEMUXER 1
-#define CONFIG_CINE_DEMUXER 1
-#define CONFIG_CODEC2_DEMUXER 1
-#define CONFIG_CODEC2RAW_DEMUXER 1
-#define CONFIG_CONCAT_DEMUXER 1
-#define CONFIG_DASH_DEMUXER 0
-#define CONFIG_DATA_DEMUXER 1
-#define CONFIG_DAUD_DEMUXER 1
-#define CONFIG_DCSTR_DEMUXER 1
-#define CONFIG_DFA_DEMUXER 1
-#define CONFIG_DIRAC_DEMUXER 1
-#define CONFIG_DNXHD_DEMUXER 1
-#define CONFIG_DSF_DEMUXER 1
-#define CONFIG_DSICIN_DEMUXER 1
-#define CONFIG_DSS_DEMUXER 1
-#define CONFIG_DTS_DEMUXER 1
-#define CONFIG_DTSHD_DEMUXER 1
-#define CONFIG_DV_DEMUXER 1
-#define CONFIG_DVBSUB_DEMUXER 1
-#define CONFIG_DVBTXT_DEMUXER 1
-#define CONFIG_DXA_DEMUXER 1
-#define CONFIG_EA_DEMUXER 1
-#define CONFIG_EA_CDATA_DEMUXER 1
-#define CONFIG_EAC3_DEMUXER 1
-#define CONFIG_EPAF_DEMUXER 1
-#define CONFIG_FFMETADATA_DEMUXER 1
-#define CONFIG_FILMSTRIP_DEMUXER 1
-#define CONFIG_FITS_DEMUXER 1
-#define CONFIG_FLAC_DEMUXER 1
-#define CONFIG_FLIC_DEMUXER 1
-#define CONFIG_FLV_DEMUXER 1
-#define CONFIG_LIVE_FLV_DEMUXER 1
-#define CONFIG_FOURXM_DEMUXER 1
-#define CONFIG_FRM_DEMUXER 1
-#define CONFIG_FSB_DEMUXER 1
-#define CONFIG_G722_DEMUXER 1
-#define CONFIG_G723_1_DEMUXER 1
-#define CONFIG_G726_DEMUXER 1
-#define CONFIG_G726LE_DEMUXER 1
-#define CONFIG_G729_DEMUXER 1
-#define CONFIG_GDV_DEMUXER 1
-#define CONFIG_GENH_DEMUXER 1
-#define CONFIG_GIF_DEMUXER 1
-#define CONFIG_GSM_DEMUXER 1
-#define CONFIG_GXF_DEMUXER 1
-#define CONFIG_H261_DEMUXER 1
-#define CONFIG_H263_DEMUXER 1
-#define CONFIG_H264_DEMUXER 1
-#define CONFIG_HEVC_DEMUXER 1
-#define CONFIG_HLS_DEMUXER 1
-#define CONFIG_HNM_DEMUXER 1
-#define CONFIG_ICO_DEMUXER 1
-#define CONFIG_IDCIN_DEMUXER 1
-#define CONFIG_IDF_DEMUXER 1
-#define CONFIG_IFF_DEMUXER 1
-#define CONFIG_ILBC_DEMUXER 1
-#define CONFIG_IMAGE2_DEMUXER 1
-#define CONFIG_IMAGE2PIPE_DEMUXER 1
-#define CONFIG_IMAGE2_ALIAS_PIX_DEMUXER 1
-#define CONFIG_IMAGE2_BRENDER_PIX_DEMUXER 1
-#define CONFIG_INGENIENT_DEMUXER 1
-#define CONFIG_IPMOVIE_DEMUXER 1
-#define CONFIG_IRCAM_DEMUXER 1
-#define CONFIG_ISS_DEMUXER 1
-#define CONFIG_IV8_DEMUXER 1
-#define CONFIG_IVF_DEMUXER 1
-#define CONFIG_IVR_DEMUXER 1
-#define CONFIG_JACOSUB_DEMUXER 1
-#define CONFIG_JV_DEMUXER 1
-#define CONFIG_LMLM4_DEMUXER 1
-#define CONFIG_LOAS_DEMUXER 1
-#define CONFIG_LRC_DEMUXER 1
-#define CONFIG_LVF_DEMUXER 1
-#define CONFIG_LXF_DEMUXER 1
-#define CONFIG_M4V_DEMUXER 1
-#define CONFIG_MATROSKA_DEMUXER 1
-#define CONFIG_MGSTS_DEMUXER 1
-#define CONFIG_MICRODVD_DEMUXER 1
-#define CONFIG_MJPEG_DEMUXER 1
-#define CONFIG_MJPEG_2000_DEMUXER 1
-#define CONFIG_MLP_DEMUXER 1
-#define CONFIG_MLV_DEMUXER 1
-#define CONFIG_MM_DEMUXER 1
-#define CONFIG_MMF_DEMUXER 1
-#define CONFIG_MOV_DEMUXER 1
-#define CONFIG_MP3_DEMUXER 1
-#define CONFIG_MPC_DEMUXER 1
-#define CONFIG_MPC8_DEMUXER 1
-#define CONFIG_MPEGPS_DEMUXER 1
-#define CONFIG_MPEGTS_DEMUXER 1
-#define CONFIG_MPEGTSRAW_DEMUXER 1
-#define CONFIG_MPEGVIDEO_DEMUXER 1
-#define CONFIG_MPJPEG_DEMUXER 1
-#define CONFIG_MPL2_DEMUXER 1
-#define CONFIG_MPSUB_DEMUXER 1
-#define CONFIG_MSF_DEMUXER 1
-#define CONFIG_MSNWC_TCP_DEMUXER 1
-#define CONFIG_MTAF_DEMUXER 1
-#define CONFIG_MTV_DEMUXER 1
-#define CONFIG_MUSX_DEMUXER 1
-#define CONFIG_MV_DEMUXER 1
-#define CONFIG_MVI_DEMUXER 1
-#define CONFIG_MXF_DEMUXER 1
-#define CONFIG_MXG_DEMUXER 1
-#define CONFIG_NC_DEMUXER 1
-#define CONFIG_NISTSPHERE_DEMUXER 1
-#define CONFIG_NSP_DEMUXER 1
-#define CONFIG_NSV_DEMUXER 1
-#define CONFIG_NUT_DEMUXER 1
-#define CONFIG_NUV_DEMUXER 1
-#define CONFIG_OGG_DEMUXER 1
-#define CONFIG_OMA_DEMUXER 1
-#define CONFIG_PAF_DEMUXER 1
-#define CONFIG_PCM_ALAW_DEMUXER 1
-#define CONFIG_PCM_MULAW_DEMUXER 1
-#define CONFIG_PCM_VIDC_DEMUXER 1
-#define CONFIG_PCM_F64BE_DEMUXER 1
-#define CONFIG_PCM_F64LE_DEMUXER 1
-#define CONFIG_PCM_F32BE_DEMUXER 1
-#define CONFIG_PCM_F32LE_DEMUXER 1
-#define CONFIG_PCM_S32BE_DEMUXER 1
-#define CONFIG_PCM_S32LE_DEMUXER 1
-#define CONFIG_PCM_S24BE_DEMUXER 1
-#define CONFIG_PCM_S24LE_DEMUXER 1
-#define CONFIG_PCM_S16BE_DEMUXER 1
-#define CONFIG_PCM_S16LE_DEMUXER 1
-#define CONFIG_PCM_S8_DEMUXER 1
-#define CONFIG_PCM_U32BE_DEMUXER 1
-#define CONFIG_PCM_U32LE_DEMUXER 1
-#define CONFIG_PCM_U24BE_DEMUXER 1
-#define CONFIG_PCM_U24LE_DEMUXER 1
-#define CONFIG_PCM_U16BE_DEMUXER 1
-#define CONFIG_PCM_U16LE_DEMUXER 1
-#define CONFIG_PCM_U8_DEMUXER 1
-#define CONFIG_PJS_DEMUXER 1
-#define CONFIG_PMP_DEMUXER 1
-#define CONFIG_PVA_DEMUXER 1
-#define CONFIG_PVF_DEMUXER 1
-#define CONFIG_QCP_DEMUXER 1
-#define CONFIG_R3D_DEMUXER 1
-#define CONFIG_RAWVIDEO_DEMUXER 1
-#define CONFIG_REALTEXT_DEMUXER 1
-#define CONFIG_REDSPARK_DEMUXER 1
-#define CONFIG_RL2_DEMUXER 1
-#define CONFIG_RM_DEMUXER 1
-#define CONFIG_ROQ_DEMUXER 1
-#define CONFIG_RPL_DEMUXER 1
-#define CONFIG_RSD_DEMUXER 1
-#define CONFIG_RSO_DEMUXER 1
-#define CONFIG_RTP_DEMUXER 0
-#define CONFIG_RTSP_DEMUXER 0
-#define CONFIG_S337M_DEMUXER 1
-#define CONFIG_SAMI_DEMUXER 1
-#define CONFIG_SAP_DEMUXER 0
-#define CONFIG_SBC_DEMUXER 1
-#define CONFIG_SBG_DEMUXER 1
-#define CONFIG_SCC_DEMUXER 1
-#define CONFIG_SDP_DEMUXER 0
-#define CONFIG_SDR2_DEMUXER 1
-#define CONFIG_SDS_DEMUXER 1
-#define CONFIG_SDX_DEMUXER 1
-#define CONFIG_SEGAFILM_DEMUXER 1
-#define CONFIG_SER_DEMUXER 1
-#define CONFIG_SHORTEN_DEMUXER 1
-#define CONFIG_SIFF_DEMUXER 1
-#define CONFIG_SLN_DEMUXER 1
-#define CONFIG_SMACKER_DEMUXER 1
-#define CONFIG_SMJPEG_DEMUXER 1
-#define CONFIG_SMUSH_DEMUXER 1
-#define CONFIG_SOL_DEMUXER 1
-#define CONFIG_SOX_DEMUXER 1
-#define CONFIG_SPDIF_DEMUXER 1
-#define CONFIG_SRT_DEMUXER 1
-#define CONFIG_STR_DEMUXER 1
-#define CONFIG_STL_DEMUXER 1
-#define CONFIG_SUBVIEWER1_DEMUXER 1
-#define CONFIG_SUBVIEWER_DEMUXER 1
-#define CONFIG_SUP_DEMUXER 1
-#define CONFIG_SVAG_DEMUXER 1
-#define CONFIG_SWF_DEMUXER 1
-#define CONFIG_TAK_DEMUXER 1
-#define CONFIG_TEDCAPTIONS_DEMUXER 1
-#define CONFIG_THP_DEMUXER 1
-#define CONFIG_THREEDOSTR_DEMUXER 1
-#define CONFIG_TIERTEXSEQ_DEMUXER 1
-#define CONFIG_TMV_DEMUXER 1
-#define CONFIG_TRUEHD_DEMUXER 1
-#define CONFIG_TTA_DEMUXER 1
-#define CONFIG_TXD_DEMUXER 1
-#define CONFIG_TTY_DEMUXER 1
-#define CONFIG_TY_DEMUXER 1
-#define CONFIG_V210_DEMUXER 1
-#define CONFIG_V210X_DEMUXER 1
-#define CONFIG_VAG_DEMUXER 1
-#define CONFIG_VC1_DEMUXER 1
-#define CONFIG_VC1T_DEMUXER 1
-#define CONFIG_VIVO_DEMUXER 1
-#define CONFIG_VMD_DEMUXER 1
-#define CONFIG_VOBSUB_DEMUXER 1
-#define CONFIG_VOC_DEMUXER 1
-#define CONFIG_VPK_DEMUXER 1
-#define CONFIG_VPLAYER_DEMUXER 1
-#define CONFIG_VQF_DEMUXER 1
-#define CONFIG_W64_DEMUXER 1
-#define CONFIG_WAV_DEMUXER 1
-#define CONFIG_WC3_DEMUXER 1
-#define CONFIG_WEBM_DASH_MANIFEST_DEMUXER 1
-#define CONFIG_WEBVTT_DEMUXER 1
-#define CONFIG_WSAUD_DEMUXER 1
-#define CONFIG_WSD_DEMUXER 1
-#define CONFIG_WSVQA_DEMUXER 1
-#define CONFIG_WTV_DEMUXER 1
-#define CONFIG_WVE_DEMUXER 1
-#define CONFIG_WV_DEMUXER 1
-#define CONFIG_XA_DEMUXER 1
-#define CONFIG_XBIN_DEMUXER 1
-#define CONFIG_XMV_DEMUXER 1
-#define CONFIG_XVAG_DEMUXER 1
-#define CONFIG_XWMA_DEMUXER 1
-#define CONFIG_YOP_DEMUXER 1
-#define CONFIG_YUV4MPEGPIPE_DEMUXER 1
-#define CONFIG_IMAGE_BMP_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_DDS_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_DPX_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_EXR_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_J2K_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_JPEG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PAM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PBM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PCX_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PGM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PICTOR_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PNG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PPM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PSD_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_QDRAW_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SGI_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SVG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_TIFF_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_WEBP_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_XPM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_XWD_PIPE_DEMUXER 1
-#define CONFIG_LIBGME_DEMUXER 0
-#define CONFIG_LIBMODPLUG_DEMUXER 0
-#define CONFIG_LIBOPENMPT_DEMUXER 0
-#define CONFIG_VAPOURSYNTH_DEMUXER 0
-#define CONFIG_A64_MUXER 0
-#define CONFIG_AC3_MUXER 0
-#define CONFIG_ADTS_MUXER 0
-#define CONFIG_ADX_MUXER 0
-#define CONFIG_AIFF_MUXER 0
-#define CONFIG_AMR_MUXER 0
-#define CONFIG_APNG_MUXER 0
-#define CONFIG_APTX_MUXER 0
-#define CONFIG_APTX_HD_MUXER 0
-#define CONFIG_ASF_MUXER 0
-#define CONFIG_ASS_MUXER 0
-#define CONFIG_AST_MUXER 0
-#define CONFIG_ASF_STREAM_MUXER 0
-#define CONFIG_AU_MUXER 0
-#define CONFIG_AVI_MUXER 0
-#define CONFIG_AVM2_MUXER 0
-#define CONFIG_AVS2_MUXER 0
-#define CONFIG_BIT_MUXER 0
-#define CONFIG_CAF_MUXER 0
-#define CONFIG_CAVSVIDEO_MUXER 0
-#define CONFIG_CODEC2_MUXER 0
-#define CONFIG_CODEC2RAW_MUXER 0
-#define CONFIG_CRC_MUXER 0
-#define CONFIG_DASH_MUXER 0
-#define CONFIG_DATA_MUXER 0
-#define CONFIG_DAUD_MUXER 0
-#define CONFIG_DIRAC_MUXER 0
-#define CONFIG_DNXHD_MUXER 0
-#define CONFIG_DTS_MUXER 0
-#define CONFIG_DV_MUXER 0
-#define CONFIG_EAC3_MUXER 0
-#define CONFIG_F4V_MUXER 0
-#define CONFIG_FFMETADATA_MUXER 0
-#define CONFIG_FIFO_MUXER 0
-#define CONFIG_FIFO_TEST_MUXER 0
-#define CONFIG_FILMSTRIP_MUXER 0
-#define CONFIG_FITS_MUXER 0
-#define CONFIG_FLAC_MUXER 0
-#define CONFIG_FLV_MUXER 0
-#define CONFIG_FRAMECRC_MUXER 0
-#define CONFIG_FRAMEHASH_MUXER 0
-#define CONFIG_FRAMEMD5_MUXER 0
-#define CONFIG_G722_MUXER 0
-#define CONFIG_G723_1_MUXER 0
-#define CONFIG_G726_MUXER 0
-#define CONFIG_G726LE_MUXER 0
-#define CONFIG_GIF_MUXER 0
-#define CONFIG_GSM_MUXER 0
-#define CONFIG_GXF_MUXER 0
-#define CONFIG_H261_MUXER 0
-#define CONFIG_H263_MUXER 0
-#define CONFIG_H264_MUXER 0
-#define CONFIG_HASH_MUXER 0
-#define CONFIG_HDS_MUXER 0
-#define CONFIG_HEVC_MUXER 0
-#define CONFIG_HLS_MUXER 0
-#define CONFIG_ICO_MUXER 0
-#define CONFIG_ILBC_MUXER 0
-#define CONFIG_IMAGE2_MUXER 0
-#define CONFIG_IMAGE2PIPE_MUXER 0
-#define CONFIG_IPOD_MUXER 0
-#define CONFIG_IRCAM_MUXER 0
-#define CONFIG_ISMV_MUXER 0
-#define CONFIG_IVF_MUXER 0
-#define CONFIG_JACOSUB_MUXER 0
-#define CONFIG_LATM_MUXER 0
-#define CONFIG_LRC_MUXER 0
-#define CONFIG_M4V_MUXER 0
-#define CONFIG_MD5_MUXER 0
-#define CONFIG_MATROSKA_MUXER 0
-#define CONFIG_MATROSKA_AUDIO_MUXER 0
-#define CONFIG_MICRODVD_MUXER 0
-#define CONFIG_MJPEG_MUXER 0
-#define CONFIG_MLP_MUXER 0
-#define CONFIG_MMF_MUXER 0
-#define CONFIG_MOV_MUXER 0
-#define CONFIG_MP2_MUXER 0
-#define CONFIG_MP3_MUXER 0
-#define CONFIG_MP4_MUXER 0
-#define CONFIG_MPEG1SYSTEM_MUXER 0
-#define CONFIG_MPEG1VCD_MUXER 0
-#define CONFIG_MPEG1VIDEO_MUXER 0
-#define CONFIG_MPEG2DVD_MUXER 0
-#define CONFIG_MPEG2SVCD_MUXER 0
-#define CONFIG_MPEG2VIDEO_MUXER 0
-#define CONFIG_MPEG2VOB_MUXER 0
-#define CONFIG_MPEGTS_MUXER 0
-#define CONFIG_MPJPEG_MUXER 0
-#define CONFIG_MXF_MUXER 0
-#define CONFIG_MXF_D10_MUXER 0
-#define CONFIG_MXF_OPATOM_MUXER 0
-#define CONFIG_NULL_MUXER 0
-#define CONFIG_NUT_MUXER 0
-#define CONFIG_OGA_MUXER 0
-#define CONFIG_OGG_MUXER 0
-#define CONFIG_OGV_MUXER 0
-#define CONFIG_OMA_MUXER 0
-#define CONFIG_OPUS_MUXER 0
-#define CONFIG_PCM_ALAW_MUXER 0
-#define CONFIG_PCM_MULAW_MUXER 0
-#define CONFIG_PCM_VIDC_MUXER 0
-#define CONFIG_PCM_F64BE_MUXER 0
-#define CONFIG_PCM_F64LE_MUXER 0
-#define CONFIG_PCM_F32BE_MUXER 0
-#define CONFIG_PCM_F32LE_MUXER 0
-#define CONFIG_PCM_S32BE_MUXER 0
-#define CONFIG_PCM_S32LE_MUXER 0
-#define CONFIG_PCM_S24BE_MUXER 0
-#define CONFIG_PCM_S24LE_MUXER 0
-#define CONFIG_PCM_S16BE_MUXER 0
-#define CONFIG_PCM_S16LE_MUXER 0
-#define CONFIG_PCM_S8_MUXER 0
-#define CONFIG_PCM_U32BE_MUXER 0
-#define CONFIG_PCM_U32LE_MUXER 0
-#define CONFIG_PCM_U24BE_MUXER 0
-#define CONFIG_PCM_U24LE_MUXER 0
-#define CONFIG_PCM_U16BE_MUXER 0
-#define CONFIG_PCM_U16LE_MUXER 0
-#define CONFIG_PCM_U8_MUXER 0
-#define CONFIG_PSP_MUXER 0
-#define CONFIG_RAWVIDEO_MUXER 0
-#define CONFIG_RM_MUXER 0
-#define CONFIG_ROQ_MUXER 0
-#define CONFIG_RSO_MUXER 0
-#define CONFIG_RTP_MUXER 0
-#define CONFIG_RTP_MPEGTS_MUXER 0
-#define CONFIG_RTSP_MUXER 0
-#define CONFIG_SAP_MUXER 0
-#define CONFIG_SBC_MUXER 0
-#define CONFIG_SCC_MUXER 0
-#define CONFIG_SEGAFILM_MUXER 0
-#define CONFIG_SEGMENT_MUXER 0
-#define CONFIG_STREAM_SEGMENT_MUXER 0
-#define CONFIG_SINGLEJPEG_MUXER 0
-#define CONFIG_SMJPEG_MUXER 0
-#define CONFIG_SMOOTHSTREAMING_MUXER 0
-#define CONFIG_SOX_MUXER 0
-#define CONFIG_SPX_MUXER 0
-#define CONFIG_SPDIF_MUXER 0
-#define CONFIG_SRT_MUXER 0
-#define CONFIG_SUP_MUXER 0
-#define CONFIG_SWF_MUXER 0
-#define CONFIG_TEE_MUXER 0
-#define CONFIG_TG2_MUXER 0
-#define CONFIG_TGP_MUXER 0
-#define CONFIG_MKVTIMESTAMP_V2_MUXER 0
-#define CONFIG_TRUEHD_MUXER 0
-#define CONFIG_TTA_MUXER 0
-#define CONFIG_UNCODEDFRAMECRC_MUXER 0
-#define CONFIG_VC1_MUXER 0
-#define CONFIG_VC1T_MUXER 0
-#define CONFIG_VOC_MUXER 0
-#define CONFIG_W64_MUXER 0
-#define CONFIG_WAV_MUXER 0
-#define CONFIG_WEBM_MUXER 0
-#define CONFIG_WEBM_DASH_MANIFEST_MUXER 0
-#define CONFIG_WEBM_CHUNK_MUXER 0
-#define CONFIG_WEBP_MUXER 0
-#define CONFIG_WEBVTT_MUXER 0
-#define CONFIG_WTV_MUXER 0
-#define CONFIG_WV_MUXER 0
-#define CONFIG_YUV4MPEGPIPE_MUXER 0
-#define CONFIG_CHROMAPRINT_MUXER 0
-#define CONFIG_ASYNC_PROTOCOL 1
-#define CONFIG_BLURAY_PROTOCOL 0
-#define CONFIG_CACHE_PROTOCOL 1
-#define CONFIG_CONCAT_PROTOCOL 1
-#define CONFIG_CRYPTO_PROTOCOL 1
-#define CONFIG_DATA_PROTOCOL 1
-#define CONFIG_FFRTMPCRYPT_PROTOCOL 0
-#define CONFIG_FFRTMPHTTP_PROTOCOL 0
-#define CONFIG_FILE_PROTOCOL 1
-#define CONFIG_FTP_PROTOCOL 0
-#define CONFIG_GOPHER_PROTOCOL 0
-#define CONFIG_HLS_PROTOCOL 1
-#define CONFIG_HTTP_PROTOCOL 0
-#define CONFIG_HTTPPROXY_PROTOCOL 0
-#define CONFIG_HTTPS_PROTOCOL 0
-#define CONFIG_ICECAST_PROTOCOL 0
-#define CONFIG_MMSH_PROTOCOL 0
-#define CONFIG_MMST_PROTOCOL 0
-#define CONFIG_MD5_PROTOCOL 1
-#define CONFIG_PIPE_PROTOCOL 1
-#define CONFIG_PROMPEG_PROTOCOL 1
-#define CONFIG_RTMP_PROTOCOL 0
-#define CONFIG_RTMPE_PROTOCOL 0
-#define CONFIG_RTMPS_PROTOCOL 0
-#define CONFIG_RTMPT_PROTOCOL 0
-#define CONFIG_RTMPTE_PROTOCOL 0
-#define CONFIG_RTMPTS_PROTOCOL 0
-#define CONFIG_RTP_PROTOCOL 0
-#define CONFIG_SCTP_PROTOCOL 0
-#define CONFIG_SRTP_PROTOCOL 0
-#define CONFIG_SUBFILE_PROTOCOL 1
-#define CONFIG_TEE_PROTOCOL 1
-#define CONFIG_TCP_PROTOCOL 0
-#define CONFIG_TLS_PROTOCOL 0
-#define CONFIG_UDP_PROTOCOL 0
-#define CONFIG_UDPLITE_PROTOCOL 0
-#define CONFIG_UNIX_PROTOCOL 0
-#define CONFIG_LIBRTMP_PROTOCOL 0
-#define CONFIG_LIBRTMPE_PROTOCOL 0
-#define CONFIG_LIBRTMPS_PROTOCOL 0
-#define CONFIG_LIBRTMPT_PROTOCOL 0
-#define CONFIG_LIBRTMPTE_PROTOCOL 0
-#define CONFIG_LIBSRT_PROTOCOL 0
-#define CONFIG_LIBSSH_PROTOCOL 0
-#define CONFIG_LIBSMBCLIENT_PROTOCOL 0
-#endif /* FFMPEG_CONFIG_H */
diff --git a/build/ffmpeg/config-x86.asm b/build/ffmpeg/config-x86.asm
deleted file mode 100755
index 5475555d4..000000000
--- a/build/ffmpeg/config-x86.asm
+++ /dev/null
@@ -1,2460 +0,0 @@
-; Automatically generated by configure - do not modify!
-%define ARCH_AARCH64 0
-%define ARCH_ALPHA 0
-%define ARCH_ARM 0
-%define ARCH_AVR32 0
-%define ARCH_AVR32_AP 0
-%define ARCH_AVR32_UC 0
-%define ARCH_BFIN 0
-%define ARCH_IA64 0
-%define ARCH_M68K 0
-%define ARCH_MIPS 0
-%define ARCH_MIPS64 0
-%define ARCH_PARISC 0
-%define ARCH_PPC 0
-%define ARCH_PPC64 0
-%define ARCH_S390 0
-%define ARCH_SH4 0
-%define ARCH_SPARC 0
-%define ARCH_SPARC64 0
-%define ARCH_TILEGX 0
-%define ARCH_TILEPRO 0
-%define ARCH_TOMI 0
-%define ARCH_X86 1
-%define ARCH_X86_32 1
-%define ARCH_X86_64 0
-%define HAVE_ARMV5TE 0
-%define HAVE_ARMV6 0
-%define HAVE_ARMV6T2 0
-%define HAVE_ARMV8 0
-%define HAVE_NEON 0
-%define HAVE_VFP 0
-%define HAVE_VFPV3 0
-%define HAVE_SETEND 0
-%define HAVE_ALTIVEC 0
-%define HAVE_DCBZL 0
-%define HAVE_LDBRX 0
-%define HAVE_POWER8 0
-%define HAVE_PPC4XX 0
-%define HAVE_VSX 0
-%define HAVE_AESNI 1
-%define HAVE_AMD3DNOW 1
-%define HAVE_AMD3DNOWEXT 1
-%define HAVE_AVX 1
-%define HAVE_AVX2 1
-%define HAVE_AVX512 1
-%define HAVE_FMA3 1
-%define HAVE_FMA4 1
-%define HAVE_MMX 1
-%define HAVE_MMXEXT 1
-%define HAVE_SSE 1
-%define HAVE_SSE2 1
-%define HAVE_SSE3 1
-%define HAVE_SSE4 1
-%define HAVE_SSE42 1
-%define HAVE_SSSE3 1
-%define HAVE_XOP 1
-%define HAVE_CPUNOP 1
-%define HAVE_I686 1
-%define HAVE_MIPSFPU 0
-%define HAVE_MIPS32R2 0
-%define HAVE_MIPS32R5 0
-%define HAVE_MIPS64R2 0
-%define HAVE_MIPS32R6 0
-%define HAVE_MIPS64R6 0
-%define HAVE_MIPSDSP 0
-%define HAVE_MIPSDSPR2 0
-%define HAVE_MSA 0
-%define HAVE_LOONGSON2 0
-%define HAVE_LOONGSON3 0
-%define HAVE_MMI 0
-%define HAVE_ARMV5TE_EXTERNAL 0
-%define HAVE_ARMV6_EXTERNAL 0
-%define HAVE_ARMV6T2_EXTERNAL 0
-%define HAVE_ARMV8_EXTERNAL 0
-%define HAVE_NEON_EXTERNAL 0
-%define HAVE_VFP_EXTERNAL 0
-%define HAVE_VFPV3_EXTERNAL 0
-%define HAVE_SETEND_EXTERNAL 0
-%define HAVE_ALTIVEC_EXTERNAL 0
-%define HAVE_DCBZL_EXTERNAL 0
-%define HAVE_LDBRX_EXTERNAL 0
-%define HAVE_POWER8_EXTERNAL 0
-%define HAVE_PPC4XX_EXTERNAL 0
-%define HAVE_VSX_EXTERNAL 0
-%define HAVE_AESNI_EXTERNAL 1
-%define HAVE_AMD3DNOW_EXTERNAL 1
-%define HAVE_AMD3DNOWEXT_EXTERNAL 1
-%define HAVE_AVX_EXTERNAL 1
-%define HAVE_AVX2_EXTERNAL 0
-%define HAVE_AVX512_EXTERNAL 0
-%define HAVE_FMA3_EXTERNAL 1
-%define HAVE_FMA4_EXTERNAL 1
-%define HAVE_MMX_EXTERNAL 1
-%define HAVE_MMXEXT_EXTERNAL 1
-%define HAVE_SSE_EXTERNAL 1
-%define HAVE_SSE2_EXTERNAL 1
-%define HAVE_SSE3_EXTERNAL 1
-%define HAVE_SSE4_EXTERNAL 1
-%define HAVE_SSE42_EXTERNAL 1
-%define HAVE_SSSE3_EXTERNAL 1
-%define HAVE_XOP_EXTERNAL 1
-%define HAVE_CPUNOP_EXTERNAL 0
-%define HAVE_I686_EXTERNAL 0
-%define HAVE_MIPSFPU_EXTERNAL 0
-%define HAVE_MIPS32R2_EXTERNAL 0
-%define HAVE_MIPS32R5_EXTERNAL 0
-%define HAVE_MIPS64R2_EXTERNAL 0
-%define HAVE_MIPS32R6_EXTERNAL 0
-%define HAVE_MIPS64R6_EXTERNAL 0
-%define HAVE_MIPSDSP_EXTERNAL 0
-%define HAVE_MIPSDSPR2_EXTERNAL 0
-%define HAVE_MSA_EXTERNAL 0
-%define HAVE_LOONGSON2_EXTERNAL 0
-%define HAVE_LOONGSON3_EXTERNAL 0
-%define HAVE_MMI_EXTERNAL 0
-%define HAVE_ARMV5TE_INLINE 0
-%define HAVE_ARMV6_INLINE 0
-%define HAVE_ARMV6T2_INLINE 0
-%define HAVE_ARMV8_INLINE 0
-%define HAVE_NEON_INLINE 0
-%define HAVE_VFP_INLINE 0
-%define HAVE_VFPV3_INLINE 0
-%define HAVE_SETEND_INLINE 0
-%define HAVE_ALTIVEC_INLINE 0
-%define HAVE_DCBZL_INLINE 0
-%define HAVE_LDBRX_INLINE 0
-%define HAVE_POWER8_INLINE 0
-%define HAVE_PPC4XX_INLINE 0
-%define HAVE_VSX_INLINE 0
-%define HAVE_AESNI_INLINE 0
-%define HAVE_AMD3DNOW_INLINE 0
-%define HAVE_AMD3DNOWEXT_INLINE 0
-%define HAVE_AVX_INLINE 0
-%define HAVE_AVX2_INLINE 0
-%define HAVE_AVX512_INLINE 0
-%define HAVE_FMA3_INLINE 0
-%define HAVE_FMA4_INLINE 0
-%define HAVE_MMX_INLINE 0
-%define HAVE_MMXEXT_INLINE 0
-%define HAVE_SSE_INLINE 0
-%define HAVE_SSE2_INLINE 0
-%define HAVE_SSE3_INLINE 0
-%define HAVE_SSE4_INLINE 0
-%define HAVE_SSE42_INLINE 0
-%define HAVE_SSSE3_INLINE 0
-%define HAVE_XOP_INLINE 0
-%define HAVE_CPUNOP_INLINE 0
-%define HAVE_I686_INLINE 0
-%define HAVE_MIPSFPU_INLINE 0
-%define HAVE_MIPS32R2_INLINE 0
-%define HAVE_MIPS32R5_INLINE 0
-%define HAVE_MIPS64R2_INLINE 0
-%define HAVE_MIPS32R6_INLINE 0
-%define HAVE_MIPS64R6_INLINE 0
-%define HAVE_MIPSDSP_INLINE 0
-%define HAVE_MIPSDSPR2_INLINE 0
-%define HAVE_MSA_INLINE 0
-%define HAVE_LOONGSON2_INLINE 0
-%define HAVE_LOONGSON3_INLINE 0
-%define HAVE_MMI_INLINE 0
-%define HAVE_ALIGNED_STACK 0
-%define HAVE_FAST_64BIT 0
-%define HAVE_FAST_CLZ 1
-%define HAVE_FAST_CMOV 0
-%define HAVE_LOCAL_ALIGNED 1
-%define HAVE_SIMD_ALIGN_16 1
-%define HAVE_SIMD_ALIGN_32 1
-%define HAVE_SIMD_ALIGN_64 1
-%define HAVE_ATOMIC_CAS_PTR 0
-%define HAVE_MACHINE_RW_BARRIER 0
-%define HAVE_MEMORYBARRIER 1
-%define HAVE_MM_EMPTY 1
-%define HAVE_RDTSC 1
-%define HAVE_SEM_TIMEDWAIT 0
-%define HAVE_SYNC_VAL_COMPARE_AND_SWAP 0
-%define HAVE_CABS 0
-%define HAVE_CEXP 0
-%define HAVE_INLINE_ASM 0
-%define HAVE_SYMVER 0
-%define HAVE_X86ASM 1
-%define HAVE_BIGENDIAN 0
-%define HAVE_FAST_UNALIGNED 1
-%define HAVE_ARPA_INET_H 0
-%define HAVE_ASM_TYPES_H 0
-%define HAVE_CDIO_PARANOIA_H 0
-%define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-%define HAVE_CUDA_H 0
-%define HAVE_DISPATCH_DISPATCH_H 0
-%define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-%define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-%define HAVE_DEV_IC_BT8XX_H 0
-%define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-%define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
-%define HAVE_DIRECT_H 1
-%define HAVE_DIRENT_H 0
-%define HAVE_DXGIDEBUG_H 1
-%define HAVE_DXVA_H 1
-%define HAVE_ES2_GL_H 0
-%define HAVE_GSM_H 0
-%define HAVE_IO_H 1
-%define HAVE_LINUX_PERF_EVENT_H 0
-%define HAVE_MACHINE_IOCTL_BT848_H 0
-%define HAVE_MACHINE_IOCTL_METEOR_H 0
-%define HAVE_MALLOC_H 1
-%define HAVE_OPENCV2_CORE_CORE_C_H 0
-%define HAVE_OPENGL_GL3_H 0
-%define HAVE_POLL_H 0
-%define HAVE_SYS_PARAM_H 0
-%define HAVE_SYS_RESOURCE_H 0
-%define HAVE_SYS_SELECT_H 0
-%define HAVE_SYS_SOUNDCARD_H 0
-%define HAVE_SYS_TIME_H 0
-%define HAVE_SYS_UN_H 0
-%define HAVE_SYS_VIDEOIO_H 0
-%define HAVE_TERMIOS_H 0
-%define HAVE_UDPLITE_H 0
-%define HAVE_UNISTD_H 0
-%define HAVE_VALGRIND_VALGRIND_H 0
-%define HAVE_WINDOWS_H 1
-%define HAVE_WINSOCK2_H 0
-%define HAVE_INTRINSICS_NEON 0
-%define HAVE_ATANF 1
-%define HAVE_ATAN2F 1
-%define HAVE_CBRT 1
-%define HAVE_CBRTF 1
-%define HAVE_COPYSIGN 1
-%define HAVE_COSF 1
-%define HAVE_ERF 1
-%define HAVE_EXP2 1
-%define HAVE_EXP2F 1
-%define HAVE_EXPF 1
-%define HAVE_HYPOT 1
-%define HAVE_ISFINITE 1
-%define HAVE_ISINF 1
-%define HAVE_ISNAN 1
-%define HAVE_LDEXPF 1
-%define HAVE_LLRINT 1
-%define HAVE_LLRINTF 1
-%define HAVE_LOG2 1
-%define HAVE_LOG2F 1
-%define HAVE_LOG10F 1
-%define HAVE_LRINT 1
-%define HAVE_LRINTF 1
-%define HAVE_POWF 1
-%define HAVE_RINT 1
-%define HAVE_ROUND 1
-%define HAVE_ROUNDF 1
-%define HAVE_SINF 1
-%define HAVE_TRUNC 1
-%define HAVE_TRUNCF 1
-%define HAVE_DOS_PATHS 1
-%define HAVE_LIBC_MSVCRT 1
-%define HAVE_MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS 0
-%define HAVE_SECTION_DATA_REL_RO 0
-%define HAVE_THREADS 1
-%define HAVE_UWP 0
-%define HAVE_WINRT 0
-%define HAVE_ACCESS 1
-%define HAVE_ALIGNED_MALLOC 1
-%define HAVE_ARC4RANDOM 0
-%define HAVE_CLOCK_GETTIME 0
-%define HAVE_CLOSESOCKET 0
-%define HAVE_COMMANDLINETOARGVW 1
-%define HAVE_FCNTL 0
-%define HAVE_GETADDRINFO 0
-%define HAVE_GETHRTIME 0
-%define HAVE_GETOPT 0
-%define HAVE_GETPROCESSAFFINITYMASK 1
-%define HAVE_GETPROCESSMEMORYINFO 1
-%define HAVE_GETPROCESSTIMES 1
-%define HAVE_GETRUSAGE 0
-%define HAVE_GETSYSTEMTIMEASFILETIME 1
-%define HAVE_GETTIMEOFDAY 0
-%define HAVE_GLOB 0
-%define HAVE_GLXGETPROCADDRESS 0
-%define HAVE_GMTIME_R 0
-%define HAVE_INET_ATON 0
-%define HAVE_ISATTY 1
-%define HAVE_KBHIT 1
-%define HAVE_LOCALTIME_R 0
-%define HAVE_LSTAT 0
-%define HAVE_LZO1X_999_COMPRESS 0
-%define HAVE_MACH_ABSOLUTE_TIME 0
-%define HAVE_MAPVIEWOFFILE 1
-%define HAVE_MEMALIGN 0
-%define HAVE_MKSTEMP 0
-%define HAVE_MMAP 0
-%define HAVE_MPROTECT 0
-%define HAVE_NANOSLEEP 0
-%define HAVE_PEEKNAMEDPIPE 1
-%define HAVE_POSIX_MEMALIGN 0
-%define HAVE_PTHREAD_CANCEL 0
-%define HAVE_SCHED_GETAFFINITY 0
-%define HAVE_SECITEMIMPORT 0
-%define HAVE_SETCONSOLETEXTATTRIBUTE 1
-%define HAVE_SETCONSOLECTRLHANDLER 1
-%define HAVE_SETMODE 1
-%define HAVE_SETRLIMIT 0
-%define HAVE_SLEEP 1
-%define HAVE_STRERROR_R 0
-%define HAVE_SYSCONF 0
-%define HAVE_SYSCTL 0
-%define HAVE_USLEEP 0
-%define HAVE_UTGETOSTYPEFROMSTRING 0
-%define HAVE_VIRTUALALLOC 1
-%define HAVE_WGLGETPROCADDRESS 0
-%define HAVE_BCRYPT 1
-%define HAVE_VAAPI_DRM 0
-%define HAVE_VAAPI_X11 0
-%define HAVE_VDPAU_X11 0
-%define HAVE_PTHREADS 0
-%define HAVE_OS2THREADS 0
-%define HAVE_W32THREADS 1
-%define HAVE_AS_ARCH_DIRECTIVE 0
-%define HAVE_AS_DN_DIRECTIVE 0
-%define HAVE_AS_FPU_DIRECTIVE 0
-%define HAVE_AS_FUNC 0
-%define HAVE_AS_OBJECT_ARCH 0
-%define HAVE_ASM_MOD_Q 0
-%define HAVE_BLOCKS_EXTENSION 0
-%define HAVE_EBP_AVAILABLE 0
-%define HAVE_EBX_AVAILABLE 0
-%define HAVE_GNU_AS 0
-%define HAVE_GNU_WINDRES 0
-%define HAVE_IBM_ASM 0
-%define HAVE_INLINE_ASM_DIRECT_SYMBOL_REFS 0
-%define HAVE_INLINE_ASM_LABELS 0
-%define HAVE_INLINE_ASM_NONLOCAL_LABELS 0
-%define HAVE_PRAGMA_DEPRECATED 1
-%define HAVE_RSYNC_CONTIMEOUT 0
-%define HAVE_SYMVER_ASM_LABEL 0
-%define HAVE_SYMVER_GNU_ASM 0
-%define HAVE_VFP_ARGS 0
-%define HAVE_XFORM_ASM 0
-%define HAVE_XMM_CLOBBERS 0
-%define HAVE_KCMVIDEOCODECTYPE_HEVC 0
-%define HAVE_SOCKLEN_T 0
-%define HAVE_STRUCT_ADDRINFO 0
-%define HAVE_STRUCT_GROUP_SOURCE_REQ 0
-%define HAVE_STRUCT_IP_MREQ_SOURCE 0
-%define HAVE_STRUCT_IPV6_MREQ 0
-%define HAVE_STRUCT_MSGHDR_MSG_FLAGS 0
-%define HAVE_STRUCT_POLLFD 0
-%define HAVE_STRUCT_RUSAGE_RU_MAXRSS 0
-%define HAVE_STRUCT_SCTP_EVENT_SUBSCRIBE 0
-%define HAVE_STRUCT_SOCKADDR_IN6 0
-%define HAVE_STRUCT_SOCKADDR_SA_LEN 0
-%define HAVE_STRUCT_SOCKADDR_STORAGE 0
-%define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-%define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-%define HAVE_MAKEINFO 1
-%define HAVE_MAKEINFO_HTML 0
-%define HAVE_OPENCL_D3D11 0
-%define HAVE_OPENCL_DRM_ARM 0
-%define HAVE_OPENCL_DRM_BEIGNET 0
-%define HAVE_OPENCL_DXVA2 0
-%define HAVE_OPENCL_VAAPI_BEIGNET 0
-%define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-%define HAVE_PERL 1
-%define HAVE_POD2MAN 0
-%define HAVE_TEXI2HTML 0
-%define CONFIG_DOC 0
-%define CONFIG_HTMLPAGES 0
-%define CONFIG_MANPAGES 0
-%define CONFIG_PODPAGES 1
-%define CONFIG_TXTPAGES 1
-%define CONFIG_AVIO_DIR_CMD_EXAMPLE 1
-%define CONFIG_AVIO_READING_EXAMPLE 1
-%define CONFIG_DECODE_AUDIO_EXAMPLE 1
-%define CONFIG_DECODE_VIDEO_EXAMPLE 1
-%define CONFIG_DEMUXING_DECODING_EXAMPLE 1
-%define CONFIG_ENCODE_AUDIO_EXAMPLE 1
-%define CONFIG_ENCODE_VIDEO_EXAMPLE 1
-%define CONFIG_EXTRACT_MVS_EXAMPLE 1
-%define CONFIG_FILTER_AUDIO_EXAMPLE 0
-%define CONFIG_FILTERING_AUDIO_EXAMPLE 0
-%define CONFIG_FILTERING_VIDEO_EXAMPLE 0
-%define CONFIG_HTTP_MULTICLIENT_EXAMPLE 0
-%define CONFIG_HW_DECODE_EXAMPLE 1
-%define CONFIG_METADATA_EXAMPLE 1
-%define CONFIG_MUXING_EXAMPLE 1
-%define CONFIG_QSVDEC_EXAMPLE 0
-%define CONFIG_REMUXING_EXAMPLE 1
-%define CONFIG_RESAMPLING_AUDIO_EXAMPLE 1
-%define CONFIG_SCALING_VIDEO_EXAMPLE 1
-%define CONFIG_TRANSCODE_AAC_EXAMPLE 1
-%define CONFIG_TRANSCODING_EXAMPLE 0
-%define CONFIG_VAAPI_ENCODE_EXAMPLE 0
-%define CONFIG_VAAPI_TRANSCODE_EXAMPLE 0
-%define CONFIG_AVISYNTH 0
-%define CONFIG_FREI0R 0
-%define CONFIG_LIBCDIO 0
-%define CONFIG_LIBDAVS2 0
-%define CONFIG_LIBRUBBERBAND 0
-%define CONFIG_LIBVIDSTAB 0
-%define CONFIG_LIBX264 0
-%define CONFIG_LIBX265 0
-%define CONFIG_LIBXAVS 0
-%define CONFIG_LIBXAVS2 0
-%define CONFIG_LIBXVID 0
-%define CONFIG_DECKLINK 0
-%define CONFIG_LIBNDI_NEWTEK 0
-%define CONFIG_LIBFDK_AAC 0
-%define CONFIG_OPENSSL 0
-%define CONFIG_LIBTLS 0
-%define CONFIG_GMP 0
-%define CONFIG_LIBLENSFUN 0
-%define CONFIG_LIBOPENCORE_AMRNB 0
-%define CONFIG_LIBOPENCORE_AMRWB 0
-%define CONFIG_LIBVMAF 0
-%define CONFIG_LIBVO_AMRWBENC 0
-%define CONFIG_MBEDTLS 0
-%define CONFIG_RKMPP 0
-%define CONFIG_LIBSMBCLIENT 0
-%define CONFIG_CHROMAPRINT 0
-%define CONFIG_GCRYPT 0
-%define CONFIG_GNUTLS 0
-%define CONFIG_JNI 0
-%define CONFIG_LADSPA 0
-%define CONFIG_LIBAOM 0
-%define CONFIG_LIBASS 0
-%define CONFIG_LIBBLURAY 0
-%define CONFIG_LIBBS2B 0
-%define CONFIG_LIBCACA 0
-%define CONFIG_LIBCELT 0
-%define CONFIG_LIBCODEC2 0
-%define CONFIG_LIBDAV1D 0
-%define CONFIG_LIBDC1394 0
-%define CONFIG_LIBDRM 0
-%define CONFIG_LIBFLITE 0
-%define CONFIG_LIBFONTCONFIG 0
-%define CONFIG_LIBFREETYPE 0
-%define CONFIG_LIBFRIBIDI 0
-%define CONFIG_LIBGME 0
-%define CONFIG_LIBGSM 0
-%define CONFIG_LIBIEC61883 0
-%define CONFIG_LIBILBC 0
-%define CONFIG_LIBJACK 0
-%define CONFIG_LIBKLVANC 0
-%define CONFIG_LIBKVAZAAR 0
-%define CONFIG_LIBMODPLUG 0
-%define CONFIG_LIBMP3LAME 0
-%define CONFIG_LIBMYSOFA 0
-%define CONFIG_LIBOPENCV 0
-%define CONFIG_LIBOPENH264 0
-%define CONFIG_LIBOPENJPEG 0
-%define CONFIG_LIBOPENMPT 0
-%define CONFIG_LIBOPUS 0
-%define CONFIG_LIBPULSE 0
-%define CONFIG_LIBRSVG 0
-%define CONFIG_LIBRTMP 0
-%define CONFIG_LIBSHINE 0
-%define CONFIG_LIBSMBCLIENT 0
-%define CONFIG_LIBSNAPPY 0
-%define CONFIG_LIBSOXR 0
-%define CONFIG_LIBSPEEX 0
-%define CONFIG_LIBSRT 0
-%define CONFIG_LIBSSH 0
-%define CONFIG_LIBTENSORFLOW 0
-%define CONFIG_LIBTESSERACT 0
-%define CONFIG_LIBTHEORA 0
-%define CONFIG_LIBTWOLAME 0
-%define CONFIG_LIBV4L2 0
-%define CONFIG_LIBVORBIS 0
-%define CONFIG_LIBVPX 0
-%define CONFIG_LIBWAVPACK 0
-%define CONFIG_LIBWEBP 0
-%define CONFIG_LIBXML2 0
-%define CONFIG_LIBZIMG 0
-%define CONFIG_LIBZMQ 0
-%define CONFIG_LIBZVBI 0
-%define CONFIG_LV2 0
-%define CONFIG_MEDIACODEC 0
-%define CONFIG_OPENAL 0
-%define CONFIG_OPENGL 0
-%define CONFIG_VAPOURSYNTH 0
-%define CONFIG_ALSA 0
-%define CONFIG_APPKIT 0
-%define CONFIG_AVFOUNDATION 0
-%define CONFIG_BZLIB 0
-%define CONFIG_COREIMAGE 0
-%define CONFIG_ICONV 0
-%define CONFIG_LIBXCB 0
-%define CONFIG_LIBXCB_SHM 0
-%define CONFIG_LIBXCB_SHAPE 0
-%define CONFIG_LIBXCB_XFIXES 0
-%define CONFIG_LZMA 0
-%define CONFIG_SCHANNEL 1
-%define CONFIG_SDL2 0
-%define CONFIG_SECURETRANSPORT 0
-%define CONFIG_SNDIO 0
-%define CONFIG_XLIB 0
-%define CONFIG_ZLIB 1
-%define CONFIG_CUDA_SDK 0
-%define CONFIG_LIBNPP 0
-%define CONFIG_LIBMFX 0
-%define CONFIG_MMAL 0
-%define CONFIG_OMX 0
-%define CONFIG_OPENCL 0
-%define CONFIG_AMF 0
-%define CONFIG_AUDIOTOOLBOX 0
-%define CONFIG_CRYSTALHD 0
-%define CONFIG_CUDA 0
-%define CONFIG_CUVID 0
-%define CONFIG_D3D11VA 0
-%define CONFIG_DXVA2 0
-%define CONFIG_FFNVCODEC 0
-%define CONFIG_NVDEC 0
-%define CONFIG_NVENC 0
-%define CONFIG_VAAPI 0
-%define CONFIG_VDPAU 0
-%define CONFIG_VIDEOTOOLBOX 0
-%define CONFIG_V4L2_M2M 0
-%define CONFIG_XVMC 0
-%define CONFIG_FTRAPV 0
-%define CONFIG_GRAY 0
-%define CONFIG_HARDCODED_TABLES 0
-%define CONFIG_OMX_RPI 0
-%define CONFIG_RUNTIME_CPUDETECT 1
-%define CONFIG_SAFE_BITSTREAM_READER 1
-%define CONFIG_SHARED 0
-%define CONFIG_SMALL 1
-%define CONFIG_STATIC 1
-%define CONFIG_SWSCALE_ALPHA 1
-%define CONFIG_GPL 1
-%define CONFIG_NONFREE 0
-%define CONFIG_VERSION3 0
-%define CONFIG_AVDEVICE 1
-%define CONFIG_AVFILTER 0
-%define CONFIG_SWSCALE 1
-%define CONFIG_POSTPROC 0
-%define CONFIG_AVFORMAT 1
-%define CONFIG_AVCODEC 1
-%define CONFIG_SWRESAMPLE 1
-%define CONFIG_AVRESAMPLE 0
-%define CONFIG_AVUTIL 1
-%define CONFIG_FFPLAY 0
-%define CONFIG_FFPROBE 0
-%define CONFIG_FFMPEG 0
-%define CONFIG_DCT 1
-%define CONFIG_DWT 1
-%define CONFIG_ERROR_RESILIENCE 1
-%define CONFIG_FAAN 1
-%define CONFIG_FAST_UNALIGNED 1
-%define CONFIG_FFT 1
-%define CONFIG_LSP 1
-%define CONFIG_LZO 1
-%define CONFIG_MDCT 1
-%define CONFIG_PIXELUTILS 0
-%define CONFIG_NETWORK 0
-%define CONFIG_RDFT 1
-%define CONFIG_AUTODETECT 0
-%define CONFIG_FONTCONFIG 0
-%define CONFIG_LINUX_PERF 0
-%define CONFIG_MEMORY_POISONING 0
-%define CONFIG_NEON_CLOBBER_TEST 0
-%define CONFIG_OSSFUZZ 0
-%define CONFIG_PIC 0
-%define CONFIG_THUMB 0
-%define CONFIG_VALGRIND_BACKTRACE 0
-%define CONFIG_XMM_CLOBBER_TEST 0
-%define CONFIG_BSFS 1
-%define CONFIG_DECODERS 1
-%define CONFIG_ENCODERS 0
-%define CONFIG_HWACCELS 0
-%define CONFIG_PARSERS 1
-%define CONFIG_INDEVS 0
-%define CONFIG_OUTDEVS 0
-%define CONFIG_FILTERS 0
-%define CONFIG_DEMUXERS 1
-%define CONFIG_MUXERS 0
-%define CONFIG_PROTOCOLS 1
-%define CONFIG_AANDCTTABLES 1
-%define CONFIG_AC3DSP 1
-%define CONFIG_ADTS_HEADER 1
-%define CONFIG_AUDIO_FRAME_QUEUE 1
-%define CONFIG_AUDIODSP 1
-%define CONFIG_BLOCKDSP 1
-%define CONFIG_BSWAPDSP 1
-%define CONFIG_CABAC 1
-%define CONFIG_CBS 1
-%define CONFIG_CBS_AV1 1
-%define CONFIG_CBS_H264 1
-%define CONFIG_CBS_H265 1
-%define CONFIG_CBS_JPEG 0
-%define CONFIG_CBS_MPEG2 1
-%define CONFIG_CBS_VP9 1
-%define CONFIG_DIRAC_PARSE 1
-%define CONFIG_DNN 0
-%define CONFIG_DVPROFILE 1
-%define CONFIG_EXIF 1
-%define CONFIG_FAANDCT 1
-%define CONFIG_FAANIDCT 1
-%define CONFIG_FDCTDSP 1
-%define CONFIG_FLACDSP 1
-%define CONFIG_FMTCONVERT 1
-%define CONFIG_FRAME_THREAD_ENCODER 0
-%define CONFIG_G722DSP 1
-%define CONFIG_GOLOMB 1
-%define CONFIG_GPLV3 0
-%define CONFIG_H263DSP 1
-%define CONFIG_H264CHROMA 1
-%define CONFIG_H264DSP 1
-%define CONFIG_H264PARSE 1
-%define CONFIG_H264PRED 1
-%define CONFIG_H264QPEL 1
-%define CONFIG_HEVCPARSE 1
-%define CONFIG_HPELDSP 1
-%define CONFIG_HUFFMAN 1
-%define CONFIG_HUFFYUVDSP 1
-%define CONFIG_HUFFYUVENCDSP 0
-%define CONFIG_IDCTDSP 1
-%define CONFIG_IIRFILTER 0
-%define CONFIG_MDCT15 1
-%define CONFIG_INTRAX8 1
-%define CONFIG_ISO_MEDIA 1
-%define CONFIG_IVIDSP 0
-%define CONFIG_JPEGTABLES 1
-%define CONFIG_LGPLV3 0
-%define CONFIG_LIBX262 0
-%define CONFIG_LLAUDDSP 1
-%define CONFIG_LLVIDDSP 1
-%define CONFIG_LLVIDENCDSP 0
-%define CONFIG_LPC 0
-%define CONFIG_LZF 1
-%define CONFIG_ME_CMP 1
-%define CONFIG_MPEG_ER 1
-%define CONFIG_MPEGAUDIO 1
-%define CONFIG_MPEGAUDIODSP 1
-%define CONFIG_MPEGAUDIOHEADER 1
-%define CONFIG_MPEGVIDEO 1
-%define CONFIG_MPEGVIDEOENC 1
-%define CONFIG_MSS34DSP 1
-%define CONFIG_PIXBLOCKDSP 1
-%define CONFIG_QPELDSP 1
-%define CONFIG_QSV 0
-%define CONFIG_QSVDEC 0
-%define CONFIG_QSVENC 0
-%define CONFIG_QSVVPP 0
-%define CONFIG_RANGECODER 1
-%define CONFIG_RIFFDEC 1
-%define CONFIG_RIFFENC 0
-%define CONFIG_RTPDEC 0
-%define CONFIG_RTPENC_CHAIN 0
-%define CONFIG_RV34DSP 1
-%define CONFIG_SCENE_SAD 0
-%define CONFIG_SINEWIN 1
-%define CONFIG_SNAPPY 1
-%define CONFIG_SRTP 0
-%define CONFIG_STARTCODE 1
-%define CONFIG_TEXTUREDSP 1
-%define CONFIG_TEXTUREDSPENC 0
-%define CONFIG_TPELDSP 1
-%define CONFIG_VAAPI_1 0
-%define CONFIG_VAAPI_ENCODE 0
-%define CONFIG_VC1DSP 1
-%define CONFIG_VIDEODSP 1
-%define CONFIG_VP3DSP 1
-%define CONFIG_VP56DSP 1
-%define CONFIG_VP8DSP 1
-%define CONFIG_WMA_FREQS 1
-%define CONFIG_WMV2DSP 1
-%define CONFIG_AAC_ADTSTOASC_BSF 1
-%define CONFIG_AV1_METADATA_BSF 1
-%define CONFIG_CHOMP_BSF 1
-%define CONFIG_DUMP_EXTRADATA_BSF 1
-%define CONFIG_DCA_CORE_BSF 1
-%define CONFIG_EAC3_CORE_BSF 1
-%define CONFIG_EXTRACT_EXTRADATA_BSF 1
-%define CONFIG_FILTER_UNITS_BSF 1
-%define CONFIG_H264_METADATA_BSF 1
-%define CONFIG_H264_MP4TOANNEXB_BSF 1
-%define CONFIG_H264_REDUNDANT_PPS_BSF 1
-%define CONFIG_HAPQA_EXTRACT_BSF 1
-%define CONFIG_HEVC_METADATA_BSF 1
-%define CONFIG_HEVC_MP4TOANNEXB_BSF 1
-%define CONFIG_IMX_DUMP_HEADER_BSF 1
-%define CONFIG_MJPEG2JPEG_BSF 1
-%define CONFIG_MJPEGA_DUMP_HEADER_BSF 1
-%define CONFIG_MP3_HEADER_DECOMPRESS_BSF 1
-%define CONFIG_MPEG2_METADATA_BSF 1
-%define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 1
-%define CONFIG_MOV2TEXTSUB_BSF 1
-%define CONFIG_NOISE_BSF 1
-%define CONFIG_NULL_BSF 1
-%define CONFIG_PRORES_METADATA_BSF 1
-%define CONFIG_REMOVE_EXTRADATA_BSF 1
-%define CONFIG_TEXT2MOVSUB_BSF 1
-%define CONFIG_TRACE_HEADERS_BSF 1
-%define CONFIG_VP9_METADATA_BSF 1
-%define CONFIG_VP9_RAW_REORDER_BSF 1
-%define CONFIG_VP9_SUPERFRAME_BSF 1
-%define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 1
-%define CONFIG_AASC_DECODER 1
-%define CONFIG_AIC_DECODER 1
-%define CONFIG_ALIAS_PIX_DECODER 1
-%define CONFIG_AMV_DECODER 1
-%define CONFIG_ANM_DECODER 1
-%define CONFIG_ANSI_DECODER 1
-%define CONFIG_APNG_DECODER 1
-%define CONFIG_ASV1_DECODER 1
-%define CONFIG_ASV2_DECODER 1
-%define CONFIG_AURA_DECODER 1
-%define CONFIG_AURA2_DECODER 1
-%define CONFIG_AVRP_DECODER 1
-%define CONFIG_AVRN_DECODER 1
-%define CONFIG_AVS_DECODER 1
-%define CONFIG_AVUI_DECODER 1
-%define CONFIG_AYUV_DECODER 1
-%define CONFIG_BETHSOFTVID_DECODER 1
-%define CONFIG_BFI_DECODER 1
-%define CONFIG_BINK_DECODER 1
-%define CONFIG_BITPACKED_DECODER 1
-%define CONFIG_BMP_DECODER 1
-%define CONFIG_BMV_VIDEO_DECODER 1
-%define CONFIG_BRENDER_PIX_DECODER 1
-%define CONFIG_C93_DECODER 1
-%define CONFIG_CAVS_DECODER 1
-%define CONFIG_CDGRAPHICS_DECODER 1
-%define CONFIG_CDXL_DECODER 1
-%define CONFIG_CFHD_DECODER 1
-%define CONFIG_CINEPAK_DECODER 1
-%define CONFIG_CLEARVIDEO_DECODER 1
-%define CONFIG_CLJR_DECODER 1
-%define CONFIG_CLLC_DECODER 1
-%define CONFIG_COMFORTNOISE_DECODER 1
-%define CONFIG_CPIA_DECODER 1
-%define CONFIG_CSCD_DECODER 1
-%define CONFIG_CYUV_DECODER 1
-%define CONFIG_DDS_DECODER 1
-%define CONFIG_DFA_DECODER 1
-%define CONFIG_DIRAC_DECODER 1
-%define CONFIG_DNXHD_DECODER 1
-%define CONFIG_DPX_DECODER 1
-%define CONFIG_DSICINVIDEO_DECODER 1
-%define CONFIG_DVAUDIO_DECODER 1
-%define CONFIG_DVVIDEO_DECODER 1
-%define CONFIG_DXA_DECODER 1
-%define CONFIG_DXTORY_DECODER 1
-%define CONFIG_DXV_DECODER 1
-%define CONFIG_EACMV_DECODER 1
-%define CONFIG_EAMAD_DECODER 1
-%define CONFIG_EATGQ_DECODER 1
-%define CONFIG_EATGV_DECODER 1
-%define CONFIG_EATQI_DECODER 1
-%define CONFIG_EIGHTBPS_DECODER 1
-%define CONFIG_EIGHTSVX_EXP_DECODER 1
-%define CONFIG_EIGHTSVX_FIB_DECODER 1
-%define CONFIG_ESCAPE124_DECODER 1
-%define CONFIG_ESCAPE130_DECODER 1
-%define CONFIG_EXR_DECODER 1
-%define CONFIG_FFV1_DECODER 1
-%define CONFIG_FFVHUFF_DECODER 1
-%define CONFIG_FIC_DECODER 1
-%define CONFIG_FITS_DECODER 1
-%define CONFIG_FLASHSV_DECODER 1
-%define CONFIG_FLASHSV2_DECODER 1
-%define CONFIG_FLIC_DECODER 1
-%define CONFIG_FLV_DECODER 1
-%define CONFIG_FMVC_DECODER 1
-%define CONFIG_FOURXM_DECODER 1
-%define CONFIG_FRAPS_DECODER 1
-%define CONFIG_FRWU_DECODER 1
-%define CONFIG_G2M_DECODER 1
-%define CONFIG_GDV_DECODER 1
-%define CONFIG_GIF_DECODER 1
-%define CONFIG_H261_DECODER 1
-%define CONFIG_H263_DECODER 1
-%define CONFIG_H263I_DECODER 1
-%define CONFIG_H263P_DECODER 1
-%define CONFIG_H263_V4L2M2M_DECODER 0
-%define CONFIG_H264_DECODER 1
-%define CONFIG_H264_CRYSTALHD_DECODER 0
-%define CONFIG_H264_V4L2M2M_DECODER 0
-%define CONFIG_H264_MEDIACODEC_DECODER 0
-%define CONFIG_H264_MMAL_DECODER 0
-%define CONFIG_H264_QSV_DECODER 0
-%define CONFIG_H264_RKMPP_DECODER 0
-%define CONFIG_HAP_DECODER 1
-%define CONFIG_HEVC_DECODER 1
-%define CONFIG_HEVC_QSV_DECODER 0
-%define CONFIG_HEVC_RKMPP_DECODER 0
-%define CONFIG_HEVC_V4L2M2M_DECODER 0
-%define CONFIG_HNM4_VIDEO_DECODER 1
-%define CONFIG_HQ_HQA_DECODER 1
-%define CONFIG_HQX_DECODER 1
-%define CONFIG_HUFFYUV_DECODER 1
-%define CONFIG_IDCIN_DECODER 1
-%define CONFIG_IFF_ILBM_DECODER 1
-%define CONFIG_IMM4_DECODER 1
-%define CONFIG_INDEO2_DECODER 0
-%define CONFIG_INDEO3_DECODER 0
-%define CONFIG_INDEO4_DECODER 0
-%define CONFIG_INDEO5_DECODER 0
-%define CONFIG_INTERPLAY_VIDEO_DECODER 1
-%define CONFIG_JPEG2000_DECODER 1
-%define CONFIG_JPEGLS_DECODER 1
-%define CONFIG_JV_DECODER 1
-%define CONFIG_KGV1_DECODER 1
-%define CONFIG_KMVC_DECODER 1
-%define CONFIG_LAGARITH_DECODER 1
-%define CONFIG_LOCO_DECODER 1
-%define CONFIG_M101_DECODER 1
-%define CONFIG_MAGICYUV_DECODER 1
-%define CONFIG_MDEC_DECODER 1
-%define CONFIG_MIMIC_DECODER 1
-%define CONFIG_MJPEG_DECODER 1
-%define CONFIG_MJPEGB_DECODER 1
-%define CONFIG_MMVIDEO_DECODER 1
-%define CONFIG_MOTIONPIXELS_DECODER 1
-%define CONFIG_MPEG1VIDEO_DECODER 1
-%define CONFIG_MPEG2VIDEO_DECODER 1
-%define CONFIG_MPEG4_DECODER 1
-%define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-%define CONFIG_MPEG4_V4L2M2M_DECODER 0
-%define CONFIG_MPEG4_MMAL_DECODER 0
-%define CONFIG_MPEGVIDEO_DECODER 1
-%define CONFIG_MPEG1_V4L2M2M_DECODER 0
-%define CONFIG_MPEG2_MMAL_DECODER 0
-%define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-%define CONFIG_MPEG2_V4L2M2M_DECODER 0
-%define CONFIG_MPEG2_QSV_DECODER 0
-%define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-%define CONFIG_MSA1_DECODER 1
-%define CONFIG_MSCC_DECODER 1
-%define CONFIG_MSMPEG4V1_DECODER 1
-%define CONFIG_MSMPEG4V2_DECODER 1
-%define CONFIG_MSMPEG4V3_DECODER 1
-%define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-%define CONFIG_MSRLE_DECODER 1
-%define CONFIG_MSS1_DECODER 1
-%define CONFIG_MSS2_DECODER 1
-%define CONFIG_MSVIDEO1_DECODER 1
-%define CONFIG_MSZH_DECODER 1
-%define CONFIG_MTS2_DECODER 1
-%define CONFIG_MVC1_DECODER 1
-%define CONFIG_MVC2_DECODER 1
-%define CONFIG_MWSC_DECODER 1
-%define CONFIG_MXPEG_DECODER 1
-%define CONFIG_NUV_DECODER 1
-%define CONFIG_PAF_VIDEO_DECODER 1
-%define CONFIG_PAM_DECODER 1
-%define CONFIG_PBM_DECODER 1
-%define CONFIG_PCX_DECODER 1
-%define CONFIG_PGM_DECODER 1
-%define CONFIG_PGMYUV_DECODER 1
-%define CONFIG_PICTOR_DECODER 1
-%define CONFIG_PIXLET_DECODER 1
-%define CONFIG_PNG_DECODER 1
-%define CONFIG_PPM_DECODER 1
-%define CONFIG_PRORES_DECODER 1
-%define CONFIG_PROSUMER_DECODER 1
-%define CONFIG_PSD_DECODER 1
-%define CONFIG_PTX_DECODER 1
-%define CONFIG_QDRAW_DECODER 1
-%define CONFIG_QPEG_DECODER 1
-%define CONFIG_QTRLE_DECODER 1
-%define CONFIG_R10K_DECODER 1
-%define CONFIG_R210_DECODER 1
-%define CONFIG_RASC_DECODER 1
-%define CONFIG_RAWVIDEO_DECODER 1
-%define CONFIG_RL2_DECODER 1
-%define CONFIG_ROQ_DECODER 1
-%define CONFIG_RPZA_DECODER 1
-%define CONFIG_RSCC_DECODER 1
-%define CONFIG_RV10_DECODER 1
-%define CONFIG_RV20_DECODER 1
-%define CONFIG_RV30_DECODER 1
-%define CONFIG_RV40_DECODER 1
-%define CONFIG_S302M_DECODER 1
-%define CONFIG_SANM_DECODER 1
-%define CONFIG_SCPR_DECODER 1
-%define CONFIG_SCREENPRESSO_DECODER 1
-%define CONFIG_SDX2_DPCM_DECODER 1
-%define CONFIG_SGI_DECODER 1
-%define CONFIG_SGIRLE_DECODER 1
-%define CONFIG_SHEERVIDEO_DECODER 1
-%define CONFIG_SMACKER_DECODER 1
-%define CONFIG_SMC_DECODER 1
-%define CONFIG_SMVJPEG_DECODER 1
-%define CONFIG_SNOW_DECODER 1
-%define CONFIG_SP5X_DECODER 1
-%define CONFIG_SPEEDHQ_DECODER 1
-%define CONFIG_SRGC_DECODER 1
-%define CONFIG_SUNRAST_DECODER 1
-%define CONFIG_SVQ1_DECODER 1
-%define CONFIG_SVQ3_DECODER 1
-%define CONFIG_TARGA_DECODER 1
-%define CONFIG_TARGA_Y216_DECODER 1
-%define CONFIG_TDSC_DECODER 1
-%define CONFIG_THEORA_DECODER 1
-%define CONFIG_THP_DECODER 1
-%define CONFIG_TIERTEXSEQVIDEO_DECODER 1
-%define CONFIG_TIFF_DECODER 1
-%define CONFIG_TMV_DECODER 1
-%define CONFIG_TRUEMOTION1_DECODER 1
-%define CONFIG_TRUEMOTION2_DECODER 1
-%define CONFIG_TRUEMOTION2RT_DECODER 1
-%define CONFIG_TSCC_DECODER 1
-%define CONFIG_TSCC2_DECODER 1
-%define CONFIG_TXD_DECODER 1
-%define CONFIG_ULTI_DECODER 1
-%define CONFIG_UTVIDEO_DECODER 1
-%define CONFIG_V210_DECODER 1
-%define CONFIG_V210X_DECODER 1
-%define CONFIG_V308_DECODER 1
-%define CONFIG_V408_DECODER 1
-%define CONFIG_V410_DECODER 1
-%define CONFIG_VB_DECODER 1
-%define CONFIG_VBLE_DECODER 1
-%define CONFIG_VC1_DECODER 1
-%define CONFIG_VC1_CRYSTALHD_DECODER 0
-%define CONFIG_VC1IMAGE_DECODER 1
-%define CONFIG_VC1_MMAL_DECODER 0
-%define CONFIG_VC1_QSV_DECODER 0
-%define CONFIG_VC1_V4L2M2M_DECODER 0
-%define CONFIG_VCR1_DECODER 1
-%define CONFIG_VMDVIDEO_DECODER 1
-%define CONFIG_VMNC_DECODER 1
-%define CONFIG_VP3_DECODER 1
-%define CONFIG_VP5_DECODER 1
-%define CONFIG_VP6_DECODER 1
-%define CONFIG_VP6A_DECODER 1
-%define CONFIG_VP6F_DECODER 1
-%define CONFIG_VP7_DECODER 1
-%define CONFIG_VP8_DECODER 1
-%define CONFIG_VP8_RKMPP_DECODER 0
-%define CONFIG_VP8_V4L2M2M_DECODER 0
-%define CONFIG_VP9_DECODER 1
-%define CONFIG_VP9_RKMPP_DECODER 0
-%define CONFIG_VP9_V4L2M2M_DECODER 0
-%define CONFIG_VQA_DECODER 1
-%define CONFIG_WEBP_DECODER 1
-%define CONFIG_WCMV_DECODER 1
-%define CONFIG_WRAPPED_AVFRAME_DECODER 1
-%define CONFIG_WMV1_DECODER 1
-%define CONFIG_WMV2_DECODER 1
-%define CONFIG_WMV3_DECODER 1
-%define CONFIG_WMV3_CRYSTALHD_DECODER 0
-%define CONFIG_WMV3IMAGE_DECODER 1
-%define CONFIG_WNV1_DECODER 1
-%define CONFIG_XAN_WC3_DECODER 1
-%define CONFIG_XAN_WC4_DECODER 1
-%define CONFIG_XBM_DECODER 1
-%define CONFIG_XFACE_DECODER 1
-%define CONFIG_XL_DECODER 1
-%define CONFIG_XPM_DECODER 1
-%define CONFIG_XWD_DECODER 1
-%define CONFIG_Y41P_DECODER 1
-%define CONFIG_YLC_DECODER 1
-%define CONFIG_YOP_DECODER 1
-%define CONFIG_YUV4_DECODER 1
-%define CONFIG_ZERO12V_DECODER 1
-%define CONFIG_ZEROCODEC_DECODER 1
-%define CONFIG_ZLIB_DECODER 1
-%define CONFIG_ZMBV_DECODER 1
-%define CONFIG_AAC_DECODER 1
-%define CONFIG_AAC_FIXED_DECODER 1
-%define CONFIG_AAC_LATM_DECODER 1
-%define CONFIG_AC3_DECODER 1
-%define CONFIG_AC3_FIXED_DECODER 1
-%define CONFIG_ALAC_DECODER 1
-%define CONFIG_ALS_DECODER 1
-%define CONFIG_AMRNB_DECODER 1
-%define CONFIG_AMRWB_DECODER 1
-%define CONFIG_APE_DECODER 1
-%define CONFIG_APTX_DECODER 1
-%define CONFIG_APTX_HD_DECODER 1
-%define CONFIG_ATRAC1_DECODER 1
-%define CONFIG_ATRAC3_DECODER 1
-%define CONFIG_ATRAC3AL_DECODER 1
-%define CONFIG_ATRAC3P_DECODER 0
-%define CONFIG_ATRAC3PAL_DECODER 1
-%define CONFIG_ATRAC9_DECODER 1
-%define CONFIG_BINKAUDIO_DCT_DECODER 1
-%define CONFIG_BINKAUDIO_RDFT_DECODER 1
-%define CONFIG_BMV_AUDIO_DECODER 1
-%define CONFIG_COOK_DECODER 1
-%define CONFIG_DCA_DECODER 1
-%define CONFIG_DOLBY_E_DECODER 1
-%define CONFIG_DSD_LSBF_DECODER 1
-%define CONFIG_DSD_MSBF_DECODER 1
-%define CONFIG_DSD_LSBF_PLANAR_DECODER 1
-%define CONFIG_DSD_MSBF_PLANAR_DECODER 1
-%define CONFIG_DSICINAUDIO_DECODER 1
-%define CONFIG_DSS_SP_DECODER 1
-%define CONFIG_DST_DECODER 1
-%define CONFIG_EAC3_DECODER 1
-%define CONFIG_EVRC_DECODER 1
-%define CONFIG_FFWAVESYNTH_DECODER 1
-%define CONFIG_FLAC_DECODER 1
-%define CONFIG_G723_1_DECODER 1
-%define CONFIG_G729_DECODER 1
-%define CONFIG_GSM_DECODER 1
-%define CONFIG_GSM_MS_DECODER 1
-%define CONFIG_IAC_DECODER 1
-%define CONFIG_ILBC_DECODER 1
-%define CONFIG_IMC_DECODER 1
-%define CONFIG_INTERPLAY_ACM_DECODER 1
-%define CONFIG_MACE3_DECODER 1
-%define CONFIG_MACE6_DECODER 1
-%define CONFIG_METASOUND_DECODER 1
-%define CONFIG_MLP_DECODER 1
-%define CONFIG_MP1_DECODER 1
-%define CONFIG_MP1FLOAT_DECODER 1
-%define CONFIG_MP2_DECODER 1
-%define CONFIG_MP2FLOAT_DECODER 1
-%define CONFIG_MP3FLOAT_DECODER 1
-%define CONFIG_MP3_DECODER 1
-%define CONFIG_MP3ADUFLOAT_DECODER 1
-%define CONFIG_MP3ADU_DECODER 1
-%define CONFIG_MP3ON4FLOAT_DECODER 1
-%define CONFIG_MP3ON4_DECODER 1
-%define CONFIG_MPC7_DECODER 1
-%define CONFIG_MPC8_DECODER 1
-%define CONFIG_NELLYMOSER_DECODER 1
-%define CONFIG_ON2AVC_DECODER 1
-%define CONFIG_OPUS_DECODER 1
-%define CONFIG_PAF_AUDIO_DECODER 1
-%define CONFIG_QCELP_DECODER 1
-%define CONFIG_QDM2_DECODER 1
-%define CONFIG_QDMC_DECODER 1
-%define CONFIG_RA_144_DECODER 1
-%define CONFIG_RA_288_DECODER 1
-%define CONFIG_RALF_DECODER 1
-%define CONFIG_SBC_DECODER 1
-%define CONFIG_SHORTEN_DECODER 1
-%define CONFIG_SIPR_DECODER 1
-%define CONFIG_SMACKAUD_DECODER 1
-%define CONFIG_SONIC_DECODER 1
-%define CONFIG_TAK_DECODER 1
-%define CONFIG_TRUEHD_DECODER 1
-%define CONFIG_TRUESPEECH_DECODER 1
-%define CONFIG_TTA_DECODER 1
-%define CONFIG_TWINVQ_DECODER 0
-%define CONFIG_VMDAUDIO_DECODER 1
-%define CONFIG_VORBIS_DECODER 1
-%define CONFIG_WAVPACK_DECODER 1
-%define CONFIG_WMALOSSLESS_DECODER 1
-%define CONFIG_WMAPRO_DECODER 1
-%define CONFIG_WMAV1_DECODER 1
-%define CONFIG_WMAV2_DECODER 1
-%define CONFIG_WMAVOICE_DECODER 1
-%define CONFIG_WS_SND1_DECODER 1
-%define CONFIG_XMA1_DECODER 1
-%define CONFIG_XMA2_DECODER 1
-%define CONFIG_PCM_ALAW_DECODER 1
-%define CONFIG_PCM_BLURAY_DECODER 1
-%define CONFIG_PCM_DVD_DECODER 1
-%define CONFIG_PCM_F16LE_DECODER 1
-%define CONFIG_PCM_F24LE_DECODER 1
-%define CONFIG_PCM_F32BE_DECODER 1
-%define CONFIG_PCM_F32LE_DECODER 1
-%define CONFIG_PCM_F64BE_DECODER 1
-%define CONFIG_PCM_F64LE_DECODER 1
-%define CONFIG_PCM_LXF_DECODER 1
-%define CONFIG_PCM_MULAW_DECODER 1
-%define CONFIG_PCM_S8_DECODER 1
-%define CONFIG_PCM_S8_PLANAR_DECODER 1
-%define CONFIG_PCM_S16BE_DECODER 1
-%define CONFIG_PCM_S16BE_PLANAR_DECODER 1
-%define CONFIG_PCM_S16LE_DECODER 1
-%define CONFIG_PCM_S16LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S24BE_DECODER 1
-%define CONFIG_PCM_S24DAUD_DECODER 1
-%define CONFIG_PCM_S24LE_DECODER 1
-%define CONFIG_PCM_S24LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S32BE_DECODER 1
-%define CONFIG_PCM_S32LE_DECODER 1
-%define CONFIG_PCM_S32LE_PLANAR_DECODER 1
-%define CONFIG_PCM_S64BE_DECODER 1
-%define CONFIG_PCM_S64LE_DECODER 1
-%define CONFIG_PCM_U8_DECODER 1
-%define CONFIG_PCM_U16BE_DECODER 1
-%define CONFIG_PCM_U16LE_DECODER 1
-%define CONFIG_PCM_U24BE_DECODER 1
-%define CONFIG_PCM_U24LE_DECODER 1
-%define CONFIG_PCM_U32BE_DECODER 1
-%define CONFIG_PCM_U32LE_DECODER 1
-%define CONFIG_PCM_VIDC_DECODER 1
-%define CONFIG_PCM_ZORK_DECODER 1
-%define CONFIG_GREMLIN_DPCM_DECODER 1
-%define CONFIG_INTERPLAY_DPCM_DECODER 1
-%define CONFIG_ROQ_DPCM_DECODER 1
-%define CONFIG_SOL_DPCM_DECODER 1
-%define CONFIG_XAN_DPCM_DECODER 1
-%define CONFIG_ADPCM_4XM_DECODER 1
-%define CONFIG_ADPCM_ADX_DECODER 1
-%define CONFIG_ADPCM_AFC_DECODER 1
-%define CONFIG_ADPCM_AICA_DECODER 1
-%define CONFIG_ADPCM_CT_DECODER 1
-%define CONFIG_ADPCM_DTK_DECODER 1
-%define CONFIG_ADPCM_EA_DECODER 1
-%define CONFIG_ADPCM_EA_MAXIS_XA_DECODER 1
-%define CONFIG_ADPCM_EA_R1_DECODER 1
-%define CONFIG_ADPCM_EA_R2_DECODER 1
-%define CONFIG_ADPCM_EA_R3_DECODER 1
-%define CONFIG_ADPCM_EA_XAS_DECODER 1
-%define CONFIG_ADPCM_G722_DECODER 1
-%define CONFIG_ADPCM_G726_DECODER 1
-%define CONFIG_ADPCM_G726LE_DECODER 1
-%define CONFIG_ADPCM_IMA_AMV_DECODER 1
-%define CONFIG_ADPCM_IMA_APC_DECODER 1
-%define CONFIG_ADPCM_IMA_DAT4_DECODER 1
-%define CONFIG_ADPCM_IMA_DK3_DECODER 1
-%define CONFIG_ADPCM_IMA_DK4_DECODER 1
-%define CONFIG_ADPCM_IMA_EA_EACS_DECODER 1
-%define CONFIG_ADPCM_IMA_EA_SEAD_DECODER 1
-%define CONFIG_ADPCM_IMA_ISS_DECODER 1
-%define CONFIG_ADPCM_IMA_OKI_DECODER 1
-%define CONFIG_ADPCM_IMA_QT_DECODER 1
-%define CONFIG_ADPCM_IMA_RAD_DECODER 1
-%define CONFIG_ADPCM_IMA_SMJPEG_DECODER 1
-%define CONFIG_ADPCM_IMA_WAV_DECODER 1
-%define CONFIG_ADPCM_IMA_WS_DECODER 1
-%define CONFIG_ADPCM_MS_DECODER 1
-%define CONFIG_ADPCM_MTAF_DECODER 1
-%define CONFIG_ADPCM_PSX_DECODER 1
-%define CONFIG_ADPCM_SBPRO_2_DECODER 1
-%define CONFIG_ADPCM_SBPRO_3_DECODER 1
-%define CONFIG_ADPCM_SBPRO_4_DECODER 1
-%define CONFIG_ADPCM_SWF_DECODER 1
-%define CONFIG_ADPCM_THP_DECODER 1
-%define CONFIG_ADPCM_THP_LE_DECODER 1
-%define CONFIG_ADPCM_VIMA_DECODER 1
-%define CONFIG_ADPCM_XA_DECODER 1
-%define CONFIG_ADPCM_YAMAHA_DECODER 1
-%define CONFIG_SSA_DECODER 1
-%define CONFIG_ASS_DECODER 1
-%define CONFIG_CCAPTION_DECODER 1
-%define CONFIG_DVBSUB_DECODER 1
-%define CONFIG_DVDSUB_DECODER 1
-%define CONFIG_JACOSUB_DECODER 1
-%define CONFIG_MICRODVD_DECODER 1
-%define CONFIG_MOVTEXT_DECODER 1
-%define CONFIG_MPL2_DECODER 1
-%define CONFIG_PGSSUB_DECODER 1
-%define CONFIG_PJS_DECODER 1
-%define CONFIG_REALTEXT_DECODER 1
-%define CONFIG_SAMI_DECODER 1
-%define CONFIG_SRT_DECODER 1
-%define CONFIG_STL_DECODER 1
-%define CONFIG_SUBRIP_DECODER 1
-%define CONFIG_SUBVIEWER_DECODER 1
-%define CONFIG_SUBVIEWER1_DECODER 1
-%define CONFIG_TEXT_DECODER 1
-%define CONFIG_VPLAYER_DECODER 1
-%define CONFIG_WEBVTT_DECODER 1
-%define CONFIG_XSUB_DECODER 1
-%define CONFIG_AAC_AT_DECODER 0
-%define CONFIG_AC3_AT_DECODER 0
-%define CONFIG_ADPCM_IMA_QT_AT_DECODER 0
-%define CONFIG_ALAC_AT_DECODER 0
-%define CONFIG_AMR_NB_AT_DECODER 0
-%define CONFIG_EAC3_AT_DECODER 0
-%define CONFIG_GSM_MS_AT_DECODER 0
-%define CONFIG_ILBC_AT_DECODER 0
-%define CONFIG_MP1_AT_DECODER 0
-%define CONFIG_MP2_AT_DECODER 0
-%define CONFIG_MP3_AT_DECODER 0
-%define CONFIG_PCM_ALAW_AT_DECODER 0
-%define CONFIG_PCM_MULAW_AT_DECODER 0
-%define CONFIG_QDMC_AT_DECODER 0
-%define CONFIG_QDM2_AT_DECODER 0
-%define CONFIG_LIBAOM_AV1_DECODER 0
-%define CONFIG_LIBCELT_DECODER 0
-%define CONFIG_LIBCODEC2_DECODER 0
-%define CONFIG_LIBDAV1D_DECODER 0
-%define CONFIG_LIBDAVS2_DECODER 0
-%define CONFIG_LIBFDK_AAC_DECODER 0
-%define CONFIG_LIBGSM_DECODER 0
-%define CONFIG_LIBGSM_MS_DECODER 0
-%define CONFIG_LIBILBC_DECODER 0
-%define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-%define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-%define CONFIG_LIBOPENJPEG_DECODER 0
-%define CONFIG_LIBOPUS_DECODER 0
-%define CONFIG_LIBRSVG_DECODER 0
-%define CONFIG_LIBSPEEX_DECODER 0
-%define CONFIG_LIBVORBIS_DECODER 0
-%define CONFIG_LIBVPX_VP8_DECODER 0
-%define CONFIG_LIBVPX_VP9_DECODER 0
-%define CONFIG_LIBZVBI_TELETEXT_DECODER 0
-%define CONFIG_BINTEXT_DECODER 1
-%define CONFIG_XBIN_DECODER 1
-%define CONFIG_IDF_DECODER 1
-%define CONFIG_LIBOPENH264_DECODER 0
-%define CONFIG_H264_CUVID_DECODER 0
-%define CONFIG_HEVC_CUVID_DECODER 0
-%define CONFIG_HEVC_MEDIACODEC_DECODER 0
-%define CONFIG_MJPEG_CUVID_DECODER 0
-%define CONFIG_MPEG1_CUVID_DECODER 0
-%define CONFIG_MPEG2_CUVID_DECODER 0
-%define CONFIG_MPEG4_CUVID_DECODER 0
-%define CONFIG_MPEG4_MEDIACODEC_DECODER 0
-%define CONFIG_VC1_CUVID_DECODER 0
-%define CONFIG_VP8_CUVID_DECODER 0
-%define CONFIG_VP8_MEDIACODEC_DECODER 0
-%define CONFIG_VP8_QSV_DECODER 0
-%define CONFIG_VP9_CUVID_DECODER 0
-%define CONFIG_VP9_MEDIACODEC_DECODER 0
-%define CONFIG_A64MULTI_ENCODER 0
-%define CONFIG_A64MULTI5_ENCODER 0
-%define CONFIG_ALIAS_PIX_ENCODER 0
-%define CONFIG_AMV_ENCODER 0
-%define CONFIG_APNG_ENCODER 0
-%define CONFIG_ASV1_ENCODER 0
-%define CONFIG_ASV2_ENCODER 0
-%define CONFIG_AVRP_ENCODER 0
-%define CONFIG_AVUI_ENCODER 0
-%define CONFIG_AYUV_ENCODER 0
-%define CONFIG_BMP_ENCODER 0
-%define CONFIG_CINEPAK_ENCODER 0
-%define CONFIG_CLJR_ENCODER 0
-%define CONFIG_COMFORTNOISE_ENCODER 0
-%define CONFIG_DNXHD_ENCODER 0
-%define CONFIG_DPX_ENCODER 0
-%define CONFIG_DVVIDEO_ENCODER 0
-%define CONFIG_FFV1_ENCODER 0
-%define CONFIG_FFVHUFF_ENCODER 0
-%define CONFIG_FITS_ENCODER 0
-%define CONFIG_FLASHSV_ENCODER 0
-%define CONFIG_FLASHSV2_ENCODER 0
-%define CONFIG_FLV_ENCODER 0
-%define CONFIG_GIF_ENCODER 0
-%define CONFIG_H261_ENCODER 0
-%define CONFIG_H263_ENCODER 0
-%define CONFIG_H263P_ENCODER 0
-%define CONFIG_HAP_ENCODER 0
-%define CONFIG_HUFFYUV_ENCODER 0
-%define CONFIG_JPEG2000_ENCODER 0
-%define CONFIG_JPEGLS_ENCODER 0
-%define CONFIG_LJPEG_ENCODER 0
-%define CONFIG_MAGICYUV_ENCODER 0
-%define CONFIG_MJPEG_ENCODER 0
-%define CONFIG_MPEG1VIDEO_ENCODER 0
-%define CONFIG_MPEG2VIDEO_ENCODER 0
-%define CONFIG_MPEG4_ENCODER 0
-%define CONFIG_MSMPEG4V2_ENCODER 0
-%define CONFIG_MSMPEG4V3_ENCODER 0
-%define CONFIG_MSVIDEO1_ENCODER 0
-%define CONFIG_PAM_ENCODER 0
-%define CONFIG_PBM_ENCODER 0
-%define CONFIG_PCX_ENCODER 0
-%define CONFIG_PGM_ENCODER 0
-%define CONFIG_PGMYUV_ENCODER 0
-%define CONFIG_PNG_ENCODER 0
-%define CONFIG_PPM_ENCODER 0
-%define CONFIG_PRORES_ENCODER 0
-%define CONFIG_PRORES_AW_ENCODER 0
-%define CONFIG_PRORES_KS_ENCODER 0
-%define CONFIG_QTRLE_ENCODER 0
-%define CONFIG_R10K_ENCODER 0
-%define CONFIG_R210_ENCODER 0
-%define CONFIG_RAWVIDEO_ENCODER 0
-%define CONFIG_ROQ_ENCODER 0
-%define CONFIG_RV10_ENCODER 0
-%define CONFIG_RV20_ENCODER 0
-%define CONFIG_S302M_ENCODER 0
-%define CONFIG_SGI_ENCODER 0
-%define CONFIG_SNOW_ENCODER 0
-%define CONFIG_SUNRAST_ENCODER 0
-%define CONFIG_SVQ1_ENCODER 0
-%define CONFIG_TARGA_ENCODER 0
-%define CONFIG_TIFF_ENCODER 0
-%define CONFIG_UTVIDEO_ENCODER 0
-%define CONFIG_V210_ENCODER 0
-%define CONFIG_V308_ENCODER 0
-%define CONFIG_V408_ENCODER 0
-%define CONFIG_V410_ENCODER 0
-%define CONFIG_VC2_ENCODER 0
-%define CONFIG_WRAPPED_AVFRAME_ENCODER 0
-%define CONFIG_WMV1_ENCODER 0
-%define CONFIG_WMV2_ENCODER 0
-%define CONFIG_XBM_ENCODER 0
-%define CONFIG_XFACE_ENCODER 0
-%define CONFIG_XWD_ENCODER 0
-%define CONFIG_Y41P_ENCODER 0
-%define CONFIG_YUV4_ENCODER 0
-%define CONFIG_ZLIB_ENCODER 0
-%define CONFIG_ZMBV_ENCODER 0
-%define CONFIG_AAC_ENCODER 0
-%define CONFIG_AC3_ENCODER 0
-%define CONFIG_AC3_FIXED_ENCODER 0
-%define CONFIG_ALAC_ENCODER 0
-%define CONFIG_APTX_ENCODER 0
-%define CONFIG_APTX_HD_ENCODER 0
-%define CONFIG_DCA_ENCODER 0
-%define CONFIG_EAC3_ENCODER 0
-%define CONFIG_FLAC_ENCODER 0
-%define CONFIG_G723_1_ENCODER 0
-%define CONFIG_MLP_ENCODER 0
-%define CONFIG_MP2_ENCODER 0
-%define CONFIG_MP2FIXED_ENCODER 0
-%define CONFIG_NELLYMOSER_ENCODER 0
-%define CONFIG_OPUS_ENCODER 0
-%define CONFIG_RA_144_ENCODER 0
-%define CONFIG_SBC_ENCODER 0
-%define CONFIG_SONIC_ENCODER 0
-%define CONFIG_SONIC_LS_ENCODER 0
-%define CONFIG_TRUEHD_ENCODER 0
-%define CONFIG_TTA_ENCODER 0
-%define CONFIG_VORBIS_ENCODER 0
-%define CONFIG_WAVPACK_ENCODER 0
-%define CONFIG_WMAV1_ENCODER 0
-%define CONFIG_WMAV2_ENCODER 0
-%define CONFIG_PCM_ALAW_ENCODER 0
-%define CONFIG_PCM_F32BE_ENCODER 0
-%define CONFIG_PCM_F32LE_ENCODER 0
-%define CONFIG_PCM_F64BE_ENCODER 0
-%define CONFIG_PCM_F64LE_ENCODER 0
-%define CONFIG_PCM_MULAW_ENCODER 0
-%define CONFIG_PCM_S8_ENCODER 0
-%define CONFIG_PCM_S8_PLANAR_ENCODER 0
-%define CONFIG_PCM_S16BE_ENCODER 0
-%define CONFIG_PCM_S16BE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S16LE_ENCODER 0
-%define CONFIG_PCM_S16LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S24BE_ENCODER 0
-%define CONFIG_PCM_S24DAUD_ENCODER 0
-%define CONFIG_PCM_S24LE_ENCODER 0
-%define CONFIG_PCM_S24LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S32BE_ENCODER 0
-%define CONFIG_PCM_S32LE_ENCODER 0
-%define CONFIG_PCM_S32LE_PLANAR_ENCODER 0
-%define CONFIG_PCM_S64BE_ENCODER 0
-%define CONFIG_PCM_S64LE_ENCODER 0
-%define CONFIG_PCM_U8_ENCODER 0
-%define CONFIG_PCM_U16BE_ENCODER 0
-%define CONFIG_PCM_U16LE_ENCODER 0
-%define CONFIG_PCM_U24BE_ENCODER 0
-%define CONFIG_PCM_U24LE_ENCODER 0
-%define CONFIG_PCM_U32BE_ENCODER 0
-%define CONFIG_PCM_U32LE_ENCODER 0
-%define CONFIG_PCM_VIDC_ENCODER 0
-%define CONFIG_ROQ_DPCM_ENCODER 0
-%define CONFIG_ADPCM_ADX_ENCODER 0
-%define CONFIG_ADPCM_G722_ENCODER 0
-%define CONFIG_ADPCM_G726_ENCODER 0
-%define CONFIG_ADPCM_G726LE_ENCODER 0
-%define CONFIG_ADPCM_IMA_QT_ENCODER 0
-%define CONFIG_ADPCM_IMA_WAV_ENCODER 0
-%define CONFIG_ADPCM_MS_ENCODER 0
-%define CONFIG_ADPCM_SWF_ENCODER 0
-%define CONFIG_ADPCM_YAMAHA_ENCODER 0
-%define CONFIG_SSA_ENCODER 0
-%define CONFIG_ASS_ENCODER 0
-%define CONFIG_DVBSUB_ENCODER 0
-%define CONFIG_DVDSUB_ENCODER 0
-%define CONFIG_MOVTEXT_ENCODER 0
-%define CONFIG_SRT_ENCODER 0
-%define CONFIG_SUBRIP_ENCODER 0
-%define CONFIG_TEXT_ENCODER 0
-%define CONFIG_WEBVTT_ENCODER 0
-%define CONFIG_XSUB_ENCODER 0
-%define CONFIG_AAC_AT_ENCODER 0
-%define CONFIG_ALAC_AT_ENCODER 0
-%define CONFIG_ILBC_AT_ENCODER 0
-%define CONFIG_PCM_ALAW_AT_ENCODER 0
-%define CONFIG_PCM_MULAW_AT_ENCODER 0
-%define CONFIG_LIBAOM_AV1_ENCODER 0
-%define CONFIG_LIBCODEC2_ENCODER 0
-%define CONFIG_LIBFDK_AAC_ENCODER 0
-%define CONFIG_LIBGSM_ENCODER 0
-%define CONFIG_LIBGSM_MS_ENCODER 0
-%define CONFIG_LIBILBC_ENCODER 0
-%define CONFIG_LIBMP3LAME_ENCODER 0
-%define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-%define CONFIG_LIBOPENJPEG_ENCODER 0
-%define CONFIG_LIBOPUS_ENCODER 0
-%define CONFIG_LIBSHINE_ENCODER 0
-%define CONFIG_LIBSPEEX_ENCODER 0
-%define CONFIG_LIBTHEORA_ENCODER 0
-%define CONFIG_LIBTWOLAME_ENCODER 0
-%define CONFIG_LIBVO_AMRWBENC_ENCODER 0
-%define CONFIG_LIBVORBIS_ENCODER 0
-%define CONFIG_LIBVPX_VP8_ENCODER 0
-%define CONFIG_LIBVPX_VP9_ENCODER 0
-%define CONFIG_LIBWAVPACK_ENCODER 0
-%define CONFIG_LIBWEBP_ANIM_ENCODER 0
-%define CONFIG_LIBWEBP_ENCODER 0
-%define CONFIG_LIBX262_ENCODER 0
-%define CONFIG_LIBX264_ENCODER 0
-%define CONFIG_LIBX264RGB_ENCODER 0
-%define CONFIG_LIBX265_ENCODER 0
-%define CONFIG_LIBXAVS_ENCODER 0
-%define CONFIG_LIBXAVS2_ENCODER 0
-%define CONFIG_LIBXVID_ENCODER 0
-%define CONFIG_H263_V4L2M2M_ENCODER 0
-%define CONFIG_LIBOPENH264_ENCODER 0
-%define CONFIG_H264_AMF_ENCODER 0
-%define CONFIG_H264_NVENC_ENCODER 0
-%define CONFIG_H264_OMX_ENCODER 0
-%define CONFIG_H264_QSV_ENCODER 0
-%define CONFIG_H264_V4L2M2M_ENCODER 0
-%define CONFIG_H264_VAAPI_ENCODER 0
-%define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
-%define CONFIG_NVENC_ENCODER 0
-%define CONFIG_NVENC_H264_ENCODER 0
-%define CONFIG_NVENC_HEVC_ENCODER 0
-%define CONFIG_HEVC_AMF_ENCODER 0
-%define CONFIG_HEVC_NVENC_ENCODER 0
-%define CONFIG_HEVC_QSV_ENCODER 0
-%define CONFIG_HEVC_V4L2M2M_ENCODER 0
-%define CONFIG_HEVC_VAAPI_ENCODER 0
-%define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
-%define CONFIG_LIBKVAZAAR_ENCODER 0
-%define CONFIG_MJPEG_QSV_ENCODER 0
-%define CONFIG_MJPEG_VAAPI_ENCODER 0
-%define CONFIG_MPEG2_QSV_ENCODER 0
-%define CONFIG_MPEG2_VAAPI_ENCODER 0
-%define CONFIG_MPEG4_V4L2M2M_ENCODER 0
-%define CONFIG_VP8_V4L2M2M_ENCODER 0
-%define CONFIG_VP8_VAAPI_ENCODER 0
-%define CONFIG_VP9_VAAPI_ENCODER 0
-%define CONFIG_H263_VAAPI_HWACCEL 0
-%define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_H264_D3D11VA_HWACCEL 0
-%define CONFIG_H264_D3D11VA2_HWACCEL 0
-%define CONFIG_H264_DXVA2_HWACCEL 0
-%define CONFIG_H264_NVDEC_HWACCEL 0
-%define CONFIG_H264_VAAPI_HWACCEL 0
-%define CONFIG_H264_VDPAU_HWACCEL 0
-%define CONFIG_H264_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_HEVC_D3D11VA_HWACCEL 0
-%define CONFIG_HEVC_D3D11VA2_HWACCEL 0
-%define CONFIG_HEVC_DXVA2_HWACCEL 0
-%define CONFIG_HEVC_NVDEC_HWACCEL 0
-%define CONFIG_HEVC_VAAPI_HWACCEL 0
-%define CONFIG_HEVC_VDPAU_HWACCEL 0
-%define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MJPEG_NVDEC_HWACCEL 0
-%define CONFIG_MJPEG_VAAPI_HWACCEL 0
-%define CONFIG_MPEG1_NVDEC_HWACCEL 0
-%define CONFIG_MPEG1_VDPAU_HWACCEL 0
-%define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MPEG1_XVMC_HWACCEL 0
-%define CONFIG_MPEG2_D3D11VA_HWACCEL 0
-%define CONFIG_MPEG2_D3D11VA2_HWACCEL 0
-%define CONFIG_MPEG2_NVDEC_HWACCEL 0
-%define CONFIG_MPEG2_DXVA2_HWACCEL 0
-%define CONFIG_MPEG2_VAAPI_HWACCEL 0
-%define CONFIG_MPEG2_VDPAU_HWACCEL 0
-%define CONFIG_MPEG2_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_MPEG2_XVMC_HWACCEL 0
-%define CONFIG_MPEG4_NVDEC_HWACCEL 0
-%define CONFIG_MPEG4_VAAPI_HWACCEL 0
-%define CONFIG_MPEG4_VDPAU_HWACCEL 0
-%define CONFIG_MPEG4_VIDEOTOOLBOX_HWACCEL 0
-%define CONFIG_VC1_D3D11VA_HWACCEL 0
-%define CONFIG_VC1_D3D11VA2_HWACCEL 0
-%define CONFIG_VC1_DXVA2_HWACCEL 0
-%define CONFIG_VC1_NVDEC_HWACCEL 0
-%define CONFIG_VC1_VAAPI_HWACCEL 0
-%define CONFIG_VC1_VDPAU_HWACCEL 0
-%define CONFIG_VP8_NVDEC_HWACCEL 0
-%define CONFIG_VP8_VAAPI_HWACCEL 0
-%define CONFIG_VP9_D3D11VA_HWACCEL 0
-%define CONFIG_VP9_D3D11VA2_HWACCEL 0
-%define CONFIG_VP9_DXVA2_HWACCEL 0
-%define CONFIG_VP9_NVDEC_HWACCEL 0
-%define CONFIG_VP9_VAAPI_HWACCEL 0
-%define CONFIG_WMV3_D3D11VA_HWACCEL 0
-%define CONFIG_WMV3_D3D11VA2_HWACCEL 0
-%define CONFIG_WMV3_DXVA2_HWACCEL 0
-%define CONFIG_WMV3_NVDEC_HWACCEL 0
-%define CONFIG_WMV3_VAAPI_HWACCEL 0
-%define CONFIG_WMV3_VDPAU_HWACCEL 0
-%define CONFIG_AAC_PARSER 1
-%define CONFIG_AAC_LATM_PARSER 1
-%define CONFIG_AC3_PARSER 1
-%define CONFIG_ADX_PARSER 1
-%define CONFIG_AV1_PARSER 1
-%define CONFIG_AVS2_PARSER 1
-%define CONFIG_BMP_PARSER 1
-%define CONFIG_CAVSVIDEO_PARSER 1
-%define CONFIG_COOK_PARSER 1
-%define CONFIG_DCA_PARSER 1
-%define CONFIG_DIRAC_PARSER 1
-%define CONFIG_DNXHD_PARSER 1
-%define CONFIG_DPX_PARSER 1
-%define CONFIG_DVAUDIO_PARSER 1
-%define CONFIG_DVBSUB_PARSER 1
-%define CONFIG_DVDSUB_PARSER 1
-%define CONFIG_DVD_NAV_PARSER 1
-%define CONFIG_FLAC_PARSER 1
-%define CONFIG_G729_PARSER 1
-%define CONFIG_GSM_PARSER 1
-%define CONFIG_H261_PARSER 1
-%define CONFIG_H263_PARSER 1
-%define CONFIG_H264_PARSER 1
-%define CONFIG_HEVC_PARSER 1
-%define CONFIG_MJPEG_PARSER 1
-%define CONFIG_MLP_PARSER 1
-%define CONFIG_MPEG4VIDEO_PARSER 1
-%define CONFIG_MPEGAUDIO_PARSER 1
-%define CONFIG_MPEGVIDEO_PARSER 1
-%define CONFIG_OPUS_PARSER 1
-%define CONFIG_PNG_PARSER 1
-%define CONFIG_PNM_PARSER 1
-%define CONFIG_RV30_PARSER 1
-%define CONFIG_RV40_PARSER 1
-%define CONFIG_SBC_PARSER 1
-%define CONFIG_SIPR_PARSER 1
-%define CONFIG_TAK_PARSER 1
-%define CONFIG_VC1_PARSER 1
-%define CONFIG_VORBIS_PARSER 1
-%define CONFIG_VP3_PARSER 1
-%define CONFIG_VP8_PARSER 1
-%define CONFIG_VP9_PARSER 1
-%define CONFIG_XMA_PARSER 1
-%define CONFIG_ALSA_INDEV 0
-%define CONFIG_ANDROID_CAMERA_INDEV 0
-%define CONFIG_AVFOUNDATION_INDEV 0
-%define CONFIG_BKTR_INDEV 0
-%define CONFIG_DECKLINK_INDEV 0
-%define CONFIG_LIBNDI_NEWTEK_INDEV 0
-%define CONFIG_DSHOW_INDEV 0
-%define CONFIG_FBDEV_INDEV 0
-%define CONFIG_GDIGRAB_INDEV 0
-%define CONFIG_IEC61883_INDEV 0
-%define CONFIG_JACK_INDEV 0
-%define CONFIG_KMSGRAB_INDEV 0
-%define CONFIG_LAVFI_INDEV 0
-%define CONFIG_OPENAL_INDEV 0
-%define CONFIG_OSS_INDEV 0
-%define CONFIG_PULSE_INDEV 0
-%define CONFIG_SNDIO_INDEV 0
-%define CONFIG_V4L2_INDEV 0
-%define CONFIG_VFWCAP_INDEV 0
-%define CONFIG_XCBGRAB_INDEV 0
-%define CONFIG_LIBCDIO_INDEV 0
-%define CONFIG_LIBDC1394_INDEV 0
-%define CONFIG_ALSA_OUTDEV 0
-%define CONFIG_CACA_OUTDEV 0
-%define CONFIG_DECKLINK_OUTDEV 0
-%define CONFIG_LIBNDI_NEWTEK_OUTDEV 0
-%define CONFIG_FBDEV_OUTDEV 0
-%define CONFIG_OPENGL_OUTDEV 0
-%define CONFIG_OSS_OUTDEV 0
-%define CONFIG_PULSE_OUTDEV 0
-%define CONFIG_SDL2_OUTDEV 0
-%define CONFIG_SNDIO_OUTDEV 0
-%define CONFIG_V4L2_OUTDEV 0
-%define CONFIG_XV_OUTDEV 0
-%define CONFIG_ABENCH_FILTER 0
-%define CONFIG_ACOMPRESSOR_FILTER 0
-%define CONFIG_ACONTRAST_FILTER 0
-%define CONFIG_ACOPY_FILTER 0
-%define CONFIG_ACUE_FILTER 0
-%define CONFIG_ACROSSFADE_FILTER 0
-%define CONFIG_ACROSSOVER_FILTER 0
-%define CONFIG_ACRUSHER_FILTER 0
-%define CONFIG_ADECLICK_FILTER 0
-%define CONFIG_ADECLIP_FILTER 0
-%define CONFIG_ADELAY_FILTER 0
-%define CONFIG_ADERIVATIVE_FILTER 0
-%define CONFIG_AECHO_FILTER 0
-%define CONFIG_AEMPHASIS_FILTER 0
-%define CONFIG_AEVAL_FILTER 0
-%define CONFIG_AFADE_FILTER 0
-%define CONFIG_AFFTDN_FILTER 0
-%define CONFIG_AFFTFILT_FILTER 0
-%define CONFIG_AFIR_FILTER 0
-%define CONFIG_AFORMAT_FILTER 0
-%define CONFIG_AGATE_FILTER 0
-%define CONFIG_AIIR_FILTER 0
-%define CONFIG_AINTEGRAL_FILTER 0
-%define CONFIG_AINTERLEAVE_FILTER 0
-%define CONFIG_ALIMITER_FILTER 0
-%define CONFIG_ALLPASS_FILTER 0
-%define CONFIG_ALOOP_FILTER 0
-%define CONFIG_AMERGE_FILTER 0
-%define CONFIG_AMETADATA_FILTER 0
-%define CONFIG_AMIX_FILTER 0
-%define CONFIG_AMULTIPLY_FILTER 0
-%define CONFIG_ANEQUALIZER_FILTER 0
-%define CONFIG_ANULL_FILTER 0
-%define CONFIG_APAD_FILTER 0
-%define CONFIG_APERMS_FILTER 0
-%define CONFIG_APHASER_FILTER 0
-%define CONFIG_APULSATOR_FILTER 0
-%define CONFIG_AREALTIME_FILTER 0
-%define CONFIG_ARESAMPLE_FILTER 0
-%define CONFIG_AREVERSE_FILTER 0
-%define CONFIG_ASELECT_FILTER 0
-%define CONFIG_ASENDCMD_FILTER 0
-%define CONFIG_ASETNSAMPLES_FILTER 0
-%define CONFIG_ASETPTS_FILTER 0
-%define CONFIG_ASETRATE_FILTER 0
-%define CONFIG_ASETTB_FILTER 0
-%define CONFIG_ASHOWINFO_FILTER 0
-%define CONFIG_ASIDEDATA_FILTER 0
-%define CONFIG_ASPLIT_FILTER 0
-%define CONFIG_ASTATS_FILTER 0
-%define CONFIG_ASTREAMSELECT_FILTER 0
-%define CONFIG_ATEMPO_FILTER 0
-%define CONFIG_ATRIM_FILTER 0
-%define CONFIG_AZMQ_FILTER 0
-%define CONFIG_BANDPASS_FILTER 0
-%define CONFIG_BANDREJECT_FILTER 0
-%define CONFIG_BASS_FILTER 0
-%define CONFIG_BIQUAD_FILTER 0
-%define CONFIG_BS2B_FILTER 0
-%define CONFIG_CHANNELMAP_FILTER 0
-%define CONFIG_CHANNELSPLIT_FILTER 0
-%define CONFIG_CHORUS_FILTER 0
-%define CONFIG_COMPAND_FILTER 0
-%define CONFIG_COMPENSATIONDELAY_FILTER 0
-%define CONFIG_CROSSFEED_FILTER 0
-%define CONFIG_CRYSTALIZER_FILTER 0
-%define CONFIG_DCSHIFT_FILTER 0
-%define CONFIG_DRMETER_FILTER 0
-%define CONFIG_DYNAUDNORM_FILTER 0
-%define CONFIG_EARWAX_FILTER 0
-%define CONFIG_EBUR128_FILTER 0
-%define CONFIG_EQUALIZER_FILTER 0
-%define CONFIG_EXTRASTEREO_FILTER 0
-%define CONFIG_FIREQUALIZER_FILTER 0
-%define CONFIG_FLANGER_FILTER 0
-%define CONFIG_HAAS_FILTER 0
-%define CONFIG_HDCD_FILTER 0
-%define CONFIG_HEADPHONE_FILTER 0
-%define CONFIG_HIGHPASS_FILTER 0
-%define CONFIG_HIGHSHELF_FILTER 0
-%define CONFIG_JOIN_FILTER 0
-%define CONFIG_LADSPA_FILTER 0
-%define CONFIG_LOUDNORM_FILTER 0
-%define CONFIG_LOWPASS_FILTER 0
-%define CONFIG_LOWSHELF_FILTER 0
-%define CONFIG_LV2_FILTER 0
-%define CONFIG_MCOMPAND_FILTER 0
-%define CONFIG_PAN_FILTER 0
-%define CONFIG_REPLAYGAIN_FILTER 0
-%define CONFIG_RESAMPLE_FILTER 0
-%define CONFIG_RUBBERBAND_FILTER 0
-%define CONFIG_SIDECHAINCOMPRESS_FILTER 0
-%define CONFIG_SIDECHAINGATE_FILTER 0
-%define CONFIG_SILENCEDETECT_FILTER 0
-%define CONFIG_SILENCEREMOVE_FILTER 0
-%define CONFIG_SOFALIZER_FILTER 0
-%define CONFIG_STEREOTOOLS_FILTER 0
-%define CONFIG_STEREOWIDEN_FILTER 0
-%define CONFIG_SUPEREQUALIZER_FILTER 0
-%define CONFIG_SURROUND_FILTER 0
-%define CONFIG_TREBLE_FILTER 0
-%define CONFIG_TREMOLO_FILTER 0
-%define CONFIG_VIBRATO_FILTER 0
-%define CONFIG_VOLUME_FILTER 0
-%define CONFIG_VOLUMEDETECT_FILTER 0
-%define CONFIG_AEVALSRC_FILTER 0
-%define CONFIG_ANOISESRC_FILTER 0
-%define CONFIG_ANULLSRC_FILTER 0
-%define CONFIG_FLITE_FILTER 0
-%define CONFIG_HILBERT_FILTER 0
-%define CONFIG_SINC_FILTER 0
-%define CONFIG_SINE_FILTER 0
-%define CONFIG_ANULLSINK_FILTER 0
-%define CONFIG_ALPHAEXTRACT_FILTER 0
-%define CONFIG_ALPHAMERGE_FILTER 0
-%define CONFIG_AMPLIFY_FILTER 0
-%define CONFIG_ASS_FILTER 0
-%define CONFIG_ATADENOISE_FILTER 0
-%define CONFIG_AVGBLUR_FILTER 0
-%define CONFIG_AVGBLUR_OPENCL_FILTER 0
-%define CONFIG_BBOX_FILTER 0
-%define CONFIG_BENCH_FILTER 0
-%define CONFIG_BITPLANENOISE_FILTER 0
-%define CONFIG_BLACKDETECT_FILTER 0
-%define CONFIG_BLACKFRAME_FILTER 0
-%define CONFIG_BLEND_FILTER 0
-%define CONFIG_BM3D_FILTER 0
-%define CONFIG_BOXBLUR_FILTER 0
-%define CONFIG_BOXBLUR_OPENCL_FILTER 0
-%define CONFIG_BWDIF_FILTER 0
-%define CONFIG_CHROMAHOLD_FILTER 0
-%define CONFIG_CHROMAKEY_FILTER 0
-%define CONFIG_CHROMASHIFT_FILTER 0
-%define CONFIG_CIESCOPE_FILTER 0
-%define CONFIG_CODECVIEW_FILTER 0
-%define CONFIG_COLORBALANCE_FILTER 0
-%define CONFIG_COLORCHANNELMIXER_FILTER 0
-%define CONFIG_COLORKEY_FILTER 0
-%define CONFIG_COLORLEVELS_FILTER 0
-%define CONFIG_COLORMATRIX_FILTER 0
-%define CONFIG_COLORSPACE_FILTER 0
-%define CONFIG_CONVOLUTION_FILTER 0
-%define CONFIG_CONVOLUTION_OPENCL_FILTER 0
-%define CONFIG_CONVOLVE_FILTER 0
-%define CONFIG_COPY_FILTER 0
-%define CONFIG_COREIMAGE_FILTER 0
-%define CONFIG_COVER_RECT_FILTER 0
-%define CONFIG_CROP_FILTER 0
-%define CONFIG_CROPDETECT_FILTER 0
-%define CONFIG_CUE_FILTER 0
-%define CONFIG_CURVES_FILTER 0
-%define CONFIG_DATASCOPE_FILTER 0
-%define CONFIG_DCTDNOIZ_FILTER 0
-%define CONFIG_DEBAND_FILTER 0
-%define CONFIG_DEBLOCK_FILTER 0
-%define CONFIG_DECIMATE_FILTER 0
-%define CONFIG_DECONVOLVE_FILTER 0
-%define CONFIG_DEDOT_FILTER 0
-%define CONFIG_DEFLATE_FILTER 0
-%define CONFIG_DEFLICKER_FILTER 0
-%define CONFIG_DEINTERLACE_QSV_FILTER 0
-%define CONFIG_DEINTERLACE_VAAPI_FILTER 0
-%define CONFIG_DEJUDDER_FILTER 0
-%define CONFIG_DELOGO_FILTER 0
-%define CONFIG_DENOISE_VAAPI_FILTER 0
-%define CONFIG_DESHAKE_FILTER 0
-%define CONFIG_DESPILL_FILTER 0
-%define CONFIG_DETELECINE_FILTER 0
-%define CONFIG_DILATION_FILTER 0
-%define CONFIG_DILATION_OPENCL_FILTER 0
-%define CONFIG_DISPLACE_FILTER 0
-%define CONFIG_DOUBLEWEAVE_FILTER 0
-%define CONFIG_DRAWBOX_FILTER 0
-%define CONFIG_DRAWGRAPH_FILTER 0
-%define CONFIG_DRAWGRID_FILTER 0
-%define CONFIG_DRAWTEXT_FILTER 0
-%define CONFIG_EDGEDETECT_FILTER 0
-%define CONFIG_ELBG_FILTER 0
-%define CONFIG_ENTROPY_FILTER 0
-%define CONFIG_EQ_FILTER 0
-%define CONFIG_EROSION_FILTER 0
-%define CONFIG_EROSION_OPENCL_FILTER 0
-%define CONFIG_EXTRACTPLANES_FILTER 0
-%define CONFIG_FADE_FILTER 0
-%define CONFIG_FFTDNOIZ_FILTER 0
-%define CONFIG_FFTFILT_FILTER 0
-%define CONFIG_FIELD_FILTER 0
-%define CONFIG_FIELDHINT_FILTER 0
-%define CONFIG_FIELDMATCH_FILTER 0
-%define CONFIG_FIELDORDER_FILTER 0
-%define CONFIG_FILLBORDERS_FILTER 0
-%define CONFIG_FIND_RECT_FILTER 0
-%define CONFIG_FLOODFILL_FILTER 0
-%define CONFIG_FORMAT_FILTER 0
-%define CONFIG_FPS_FILTER 0
-%define CONFIG_FRAMEPACK_FILTER 0
-%define CONFIG_FRAMERATE_FILTER 0
-%define CONFIG_FRAMESTEP_FILTER 0
-%define CONFIG_FREEZEDETECT_FILTER 0
-%define CONFIG_FREI0R_FILTER 0
-%define CONFIG_FSPP_FILTER 0
-%define CONFIG_GBLUR_FILTER 0
-%define CONFIG_GEQ_FILTER 0
-%define CONFIG_GRADFUN_FILTER 0
-%define CONFIG_GRAPHMONITOR_FILTER 0
-%define CONFIG_GREYEDGE_FILTER 0
-%define CONFIG_HALDCLUT_FILTER 0
-%define CONFIG_HFLIP_FILTER 0
-%define CONFIG_HISTEQ_FILTER 0
-%define CONFIG_HISTOGRAM_FILTER 0
-%define CONFIG_HQDN3D_FILTER 0
-%define CONFIG_HQX_FILTER 0
-%define CONFIG_HSTACK_FILTER 0
-%define CONFIG_HUE_FILTER 0
-%define CONFIG_HWDOWNLOAD_FILTER 0
-%define CONFIG_HWMAP_FILTER 0
-%define CONFIG_HWUPLOAD_FILTER 0
-%define CONFIG_HWUPLOAD_CUDA_FILTER 0
-%define CONFIG_HYSTERESIS_FILTER 0
-%define CONFIG_IDET_FILTER 0
-%define CONFIG_IL_FILTER 0
-%define CONFIG_INFLATE_FILTER 0
-%define CONFIG_INTERLACE_FILTER 0
-%define CONFIG_INTERLEAVE_FILTER 0
-%define CONFIG_KERNDEINT_FILTER 0
-%define CONFIG_LENSCORRECTION_FILTER 0
-%define CONFIG_LENSFUN_FILTER 0
-%define CONFIG_LIBVMAF_FILTER 0
-%define CONFIG_LIMITER_FILTER 0
-%define CONFIG_LOOP_FILTER 0
-%define CONFIG_LUMAKEY_FILTER 0
-%define CONFIG_LUT_FILTER 0
-%define CONFIG_LUT1D_FILTER 0
-%define CONFIG_LUT2_FILTER 0
-%define CONFIG_LUT3D_FILTER 0
-%define CONFIG_LUTRGB_FILTER 0
-%define CONFIG_LUTYUV_FILTER 0
-%define CONFIG_MASKEDCLAMP_FILTER 0
-%define CONFIG_MASKEDMERGE_FILTER 0
-%define CONFIG_MCDEINT_FILTER 0
-%define CONFIG_MERGEPLANES_FILTER 0
-%define CONFIG_MESTIMATE_FILTER 0
-%define CONFIG_METADATA_FILTER 0
-%define CONFIG_MIDEQUALIZER_FILTER 0
-%define CONFIG_MINTERPOLATE_FILTER 0
-%define CONFIG_MIX_FILTER 0
-%define CONFIG_MPDECIMATE_FILTER 0
-%define CONFIG_NEGATE_FILTER 0
-%define CONFIG_NLMEANS_FILTER 0
-%define CONFIG_NNEDI_FILTER 0
-%define CONFIG_NOFORMAT_FILTER 0
-%define CONFIG_NOISE_FILTER 0
-%define CONFIG_NORMALIZE_FILTER 0
-%define CONFIG_NULL_FILTER 0
-%define CONFIG_OCR_FILTER 0
-%define CONFIG_OCV_FILTER 0
-%define CONFIG_OSCILLOSCOPE_FILTER 0
-%define CONFIG_OVERLAY_FILTER 0
-%define CONFIG_OVERLAY_OPENCL_FILTER 0
-%define CONFIG_OVERLAY_QSV_FILTER 0
-%define CONFIG_OWDENOISE_FILTER 0
-%define CONFIG_PAD_FILTER 0
-%define CONFIG_PALETTEGEN_FILTER 0
-%define CONFIG_PALETTEUSE_FILTER 0
-%define CONFIG_PERMS_FILTER 0
-%define CONFIG_PERSPECTIVE_FILTER 0
-%define CONFIG_PHASE_FILTER 0
-%define CONFIG_PIXDESCTEST_FILTER 0
-%define CONFIG_PIXSCOPE_FILTER 0
-%define CONFIG_PP_FILTER 0
-%define CONFIG_PP7_FILTER 0
-%define CONFIG_PREMULTIPLY_FILTER 0
-%define CONFIG_PREWITT_FILTER 0
-%define CONFIG_PREWITT_OPENCL_FILTER 0
-%define CONFIG_PROCAMP_VAAPI_FILTER 0
-%define CONFIG_PROGRAM_OPENCL_FILTER 0
-%define CONFIG_PSEUDOCOLOR_FILTER 0
-%define CONFIG_PSNR_FILTER 0
-%define CONFIG_PULLUP_FILTER 0
-%define CONFIG_QP_FILTER 0
-%define CONFIG_RANDOM_FILTER 0
-%define CONFIG_READEIA608_FILTER 0
-%define CONFIG_READVITC_FILTER 0
-%define CONFIG_REALTIME_FILTER 0
-%define CONFIG_REMAP_FILTER 0
-%define CONFIG_REMOVEGRAIN_FILTER 0
-%define CONFIG_REMOVELOGO_FILTER 0
-%define CONFIG_REPEATFIELDS_FILTER 0
-%define CONFIG_REVERSE_FILTER 0
-%define CONFIG_RGBASHIFT_FILTER 0
-%define CONFIG_ROBERTS_FILTER 0
-%define CONFIG_ROBERTS_OPENCL_FILTER 0
-%define CONFIG_ROTATE_FILTER 0
-%define CONFIG_SAB_FILTER 0
-%define CONFIG_SCALE_FILTER 0
-%define CONFIG_SCALE_CUDA_FILTER 0
-%define CONFIG_SCALE_NPP_FILTER 0
-%define CONFIG_SCALE_QSV_FILTER 0
-%define CONFIG_SCALE_VAAPI_FILTER 0
-%define CONFIG_SCALE2REF_FILTER 0
-%define CONFIG_SELECT_FILTER 0
-%define CONFIG_SELECTIVECOLOR_FILTER 0
-%define CONFIG_SENDCMD_FILTER 0
-%define CONFIG_SEPARATEFIELDS_FILTER 0
-%define CONFIG_SETDAR_FILTER 0
-%define CONFIG_SETFIELD_FILTER 0
-%define CONFIG_SETPARAMS_FILTER 0
-%define CONFIG_SETPTS_FILTER 0
-%define CONFIG_SETRANGE_FILTER 0
-%define CONFIG_SETSAR_FILTER 0
-%define CONFIG_SETTB_FILTER 0
-%define CONFIG_SHARPNESS_VAAPI_FILTER 0
-%define CONFIG_SHOWINFO_FILTER 0
-%define CONFIG_SHOWPALETTE_FILTER 0
-%define CONFIG_SHUFFLEFRAMES_FILTER 0
-%define CONFIG_SHUFFLEPLANES_FILTER 0
-%define CONFIG_SIDEDATA_FILTER 0
-%define CONFIG_SIGNALSTATS_FILTER 0
-%define CONFIG_SIGNATURE_FILTER 0
-%define CONFIG_SMARTBLUR_FILTER 0
-%define CONFIG_SOBEL_FILTER 0
-%define CONFIG_SOBEL_OPENCL_FILTER 0
-%define CONFIG_SPLIT_FILTER 0
-%define CONFIG_SPP_FILTER 0
-%define CONFIG_SR_FILTER 0
-%define CONFIG_SSIM_FILTER 0
-%define CONFIG_STEREO3D_FILTER 0
-%define CONFIG_STREAMSELECT_FILTER 0
-%define CONFIG_SUBTITLES_FILTER 0
-%define CONFIG_SUPER2XSAI_FILTER 0
-%define CONFIG_SWAPRECT_FILTER 0
-%define CONFIG_SWAPUV_FILTER 0
-%define CONFIG_TBLEND_FILTER 0
-%define CONFIG_TELECINE_FILTER 0
-%define CONFIG_THRESHOLD_FILTER 0
-%define CONFIG_THUMBNAIL_FILTER 0
-%define CONFIG_THUMBNAIL_CUDA_FILTER 0
-%define CONFIG_TILE_FILTER 0
-%define CONFIG_TINTERLACE_FILTER 0
-%define CONFIG_TLUT2_FILTER 0
-%define CONFIG_TMIX_FILTER 0
-%define CONFIG_TONEMAP_FILTER 0
-%define CONFIG_TONEMAP_OPENCL_FILTER 0
-%define CONFIG_TPAD_FILTER 0
-%define CONFIG_TRANSPOSE_FILTER 0
-%define CONFIG_TRANSPOSE_NPP_FILTER 0
-%define CONFIG_TRIM_FILTER 0
-%define CONFIG_UNPREMULTIPLY_FILTER 0
-%define CONFIG_UNSHARP_FILTER 0
-%define CONFIG_UNSHARP_OPENCL_FILTER 0
-%define CONFIG_USPP_FILTER 0
-%define CONFIG_VAGUEDENOISER_FILTER 0
-%define CONFIG_VECTORSCOPE_FILTER 0
-%define CONFIG_VFLIP_FILTER 0
-%define CONFIG_VFRDET_FILTER 0
-%define CONFIG_VIBRANCE_FILTER 0
-%define CONFIG_VIDSTABDETECT_FILTER 0
-%define CONFIG_VIDSTABTRANSFORM_FILTER 0
-%define CONFIG_VIGNETTE_FILTER 0
-%define CONFIG_VMAFMOTION_FILTER 0
-%define CONFIG_VPP_QSV_FILTER 0
-%define CONFIG_VSTACK_FILTER 0
-%define CONFIG_W3FDIF_FILTER 0
-%define CONFIG_WAVEFORM_FILTER 0
-%define CONFIG_WEAVE_FILTER 0
-%define CONFIG_XBR_FILTER 0
-%define CONFIG_XSTACK_FILTER 0
-%define CONFIG_YADIF_FILTER 0
-%define CONFIG_YADIF_CUDA_FILTER 0
-%define CONFIG_ZMQ_FILTER 0
-%define CONFIG_ZOOMPAN_FILTER 0
-%define CONFIG_ZSCALE_FILTER 0
-%define CONFIG_ALLRGB_FILTER 0
-%define CONFIG_ALLYUV_FILTER 0
-%define CONFIG_CELLAUTO_FILTER 0
-%define CONFIG_COLOR_FILTER 0
-%define CONFIG_COREIMAGESRC_FILTER 0
-%define CONFIG_FREI0R_SRC_FILTER 0
-%define CONFIG_HALDCLUTSRC_FILTER 0
-%define CONFIG_LIFE_FILTER 0
-%define CONFIG_MANDELBROT_FILTER 0
-%define CONFIG_MPTESTSRC_FILTER 0
-%define CONFIG_NULLSRC_FILTER 0
-%define CONFIG_OPENCLSRC_FILTER 0
-%define CONFIG_PAL75BARS_FILTER 0
-%define CONFIG_PAL100BARS_FILTER 0
-%define CONFIG_RGBTESTSRC_FILTER 0
-%define CONFIG_SMPTEBARS_FILTER 0
-%define CONFIG_SMPTEHDBARS_FILTER 0
-%define CONFIG_TESTSRC_FILTER 0
-%define CONFIG_TESTSRC2_FILTER 0
-%define CONFIG_YUVTESTSRC_FILTER 0
-%define CONFIG_NULLSINK_FILTER 0
-%define CONFIG_ABITSCOPE_FILTER 0
-%define CONFIG_ADRAWGRAPH_FILTER 0
-%define CONFIG_AGRAPHMONITOR_FILTER 0
-%define CONFIG_AHISTOGRAM_FILTER 0
-%define CONFIG_APHASEMETER_FILTER 0
-%define CONFIG_AVECTORSCOPE_FILTER 0
-%define CONFIG_CONCAT_FILTER 0
-%define CONFIG_SHOWCQT_FILTER 0
-%define CONFIG_SHOWFREQS_FILTER 0
-%define CONFIG_SHOWSPECTRUM_FILTER 0
-%define CONFIG_SHOWSPECTRUMPIC_FILTER 0
-%define CONFIG_SHOWVOLUME_FILTER 0
-%define CONFIG_SHOWWAVES_FILTER 0
-%define CONFIG_SHOWWAVESPIC_FILTER 0
-%define CONFIG_SPECTRUMSYNTH_FILTER 0
-%define CONFIG_AMOVIE_FILTER 0
-%define CONFIG_MOVIE_FILTER 0
-%define CONFIG_AFIFO_FILTER 0
-%define CONFIG_FIFO_FILTER 0
-%define CONFIG_AA_DEMUXER 1
-%define CONFIG_AAC_DEMUXER 1
-%define CONFIG_AC3_DEMUXER 1
-%define CONFIG_ACM_DEMUXER 1
-%define CONFIG_ACT_DEMUXER 1
-%define CONFIG_ADF_DEMUXER 1
-%define CONFIG_ADP_DEMUXER 1
-%define CONFIG_ADS_DEMUXER 1
-%define CONFIG_ADX_DEMUXER 1
-%define CONFIG_AEA_DEMUXER 1
-%define CONFIG_AFC_DEMUXER 1
-%define CONFIG_AIFF_DEMUXER 1
-%define CONFIG_AIX_DEMUXER 1
-%define CONFIG_AMR_DEMUXER 1
-%define CONFIG_AMRNB_DEMUXER 1
-%define CONFIG_AMRWB_DEMUXER 1
-%define CONFIG_ANM_DEMUXER 1
-%define CONFIG_APC_DEMUXER 1
-%define CONFIG_APE_DEMUXER 1
-%define CONFIG_APNG_DEMUXER 1
-%define CONFIG_APTX_DEMUXER 1
-%define CONFIG_APTX_HD_DEMUXER 1
-%define CONFIG_AQTITLE_DEMUXER 1
-%define CONFIG_ASF_DEMUXER 1
-%define CONFIG_ASF_O_DEMUXER 1
-%define CONFIG_ASS_DEMUXER 1
-%define CONFIG_AST_DEMUXER 1
-%define CONFIG_AU_DEMUXER 1
-%define CONFIG_AVI_DEMUXER 1
-%define CONFIG_AVISYNTH_DEMUXER 0
-%define CONFIG_AVR_DEMUXER 1
-%define CONFIG_AVS_DEMUXER 1
-%define CONFIG_AVS2_DEMUXER 1
-%define CONFIG_BETHSOFTVID_DEMUXER 1
-%define CONFIG_BFI_DEMUXER 1
-%define CONFIG_BINTEXT_DEMUXER 1
-%define CONFIG_BINK_DEMUXER 1
-%define CONFIG_BIT_DEMUXER 1
-%define CONFIG_BMV_DEMUXER 1
-%define CONFIG_BFSTM_DEMUXER 1
-%define CONFIG_BRSTM_DEMUXER 1
-%define CONFIG_BOA_DEMUXER 1
-%define CONFIG_C93_DEMUXER 1
-%define CONFIG_CAF_DEMUXER 1
-%define CONFIG_CAVSVIDEO_DEMUXER 1
-%define CONFIG_CDG_DEMUXER 1
-%define CONFIG_CDXL_DEMUXER 1
-%define CONFIG_CINE_DEMUXER 1
-%define CONFIG_CODEC2_DEMUXER 1
-%define CONFIG_CODEC2RAW_DEMUXER 1
-%define CONFIG_CONCAT_DEMUXER 1
-%define CONFIG_DASH_DEMUXER 0
-%define CONFIG_DATA_DEMUXER 1
-%define CONFIG_DAUD_DEMUXER 1
-%define CONFIG_DCSTR_DEMUXER 1
-%define CONFIG_DFA_DEMUXER 1
-%define CONFIG_DIRAC_DEMUXER 1
-%define CONFIG_DNXHD_DEMUXER 1
-%define CONFIG_DSF_DEMUXER 1
-%define CONFIG_DSICIN_DEMUXER 1
-%define CONFIG_DSS_DEMUXER 1
-%define CONFIG_DTS_DEMUXER 1
-%define CONFIG_DTSHD_DEMUXER 1
-%define CONFIG_DV_DEMUXER 1
-%define CONFIG_DVBSUB_DEMUXER 1
-%define CONFIG_DVBTXT_DEMUXER 1
-%define CONFIG_DXA_DEMUXER 1
-%define CONFIG_EA_DEMUXER 1
-%define CONFIG_EA_CDATA_DEMUXER 1
-%define CONFIG_EAC3_DEMUXER 1
-%define CONFIG_EPAF_DEMUXER 1
-%define CONFIG_FFMETADATA_DEMUXER 1
-%define CONFIG_FILMSTRIP_DEMUXER 1
-%define CONFIG_FITS_DEMUXER 1
-%define CONFIG_FLAC_DEMUXER 1
-%define CONFIG_FLIC_DEMUXER 1
-%define CONFIG_FLV_DEMUXER 1
-%define CONFIG_LIVE_FLV_DEMUXER 1
-%define CONFIG_FOURXM_DEMUXER 1
-%define CONFIG_FRM_DEMUXER 1
-%define CONFIG_FSB_DEMUXER 1
-%define CONFIG_G722_DEMUXER 1
-%define CONFIG_G723_1_DEMUXER 1
-%define CONFIG_G726_DEMUXER 1
-%define CONFIG_G726LE_DEMUXER 1
-%define CONFIG_G729_DEMUXER 1
-%define CONFIG_GDV_DEMUXER 1
-%define CONFIG_GENH_DEMUXER 1
-%define CONFIG_GIF_DEMUXER 1
-%define CONFIG_GSM_DEMUXER 1
-%define CONFIG_GXF_DEMUXER 1
-%define CONFIG_H261_DEMUXER 1
-%define CONFIG_H263_DEMUXER 1
-%define CONFIG_H264_DEMUXER 1
-%define CONFIG_HEVC_DEMUXER 1
-%define CONFIG_HLS_DEMUXER 1
-%define CONFIG_HNM_DEMUXER 1
-%define CONFIG_ICO_DEMUXER 1
-%define CONFIG_IDCIN_DEMUXER 1
-%define CONFIG_IDF_DEMUXER 1
-%define CONFIG_IFF_DEMUXER 1
-%define CONFIG_ILBC_DEMUXER 1
-%define CONFIG_IMAGE2_DEMUXER 1
-%define CONFIG_IMAGE2PIPE_DEMUXER 1
-%define CONFIG_IMAGE2_ALIAS_PIX_DEMUXER 1
-%define CONFIG_IMAGE2_BRENDER_PIX_DEMUXER 1
-%define CONFIG_INGENIENT_DEMUXER 1
-%define CONFIG_IPMOVIE_DEMUXER 1
-%define CONFIG_IRCAM_DEMUXER 1
-%define CONFIG_ISS_DEMUXER 1
-%define CONFIG_IV8_DEMUXER 1
-%define CONFIG_IVF_DEMUXER 1
-%define CONFIG_IVR_DEMUXER 1
-%define CONFIG_JACOSUB_DEMUXER 1
-%define CONFIG_JV_DEMUXER 1
-%define CONFIG_LMLM4_DEMUXER 1
-%define CONFIG_LOAS_DEMUXER 1
-%define CONFIG_LRC_DEMUXER 1
-%define CONFIG_LVF_DEMUXER 1
-%define CONFIG_LXF_DEMUXER 1
-%define CONFIG_M4V_DEMUXER 1
-%define CONFIG_MATROSKA_DEMUXER 1
-%define CONFIG_MGSTS_DEMUXER 1
-%define CONFIG_MICRODVD_DEMUXER 1
-%define CONFIG_MJPEG_DEMUXER 1
-%define CONFIG_MJPEG_2000_DEMUXER 1
-%define CONFIG_MLP_DEMUXER 1
-%define CONFIG_MLV_DEMUXER 1
-%define CONFIG_MM_DEMUXER 1
-%define CONFIG_MMF_DEMUXER 1
-%define CONFIG_MOV_DEMUXER 1
-%define CONFIG_MP3_DEMUXER 1
-%define CONFIG_MPC_DEMUXER 1
-%define CONFIG_MPC8_DEMUXER 1
-%define CONFIG_MPEGPS_DEMUXER 1
-%define CONFIG_MPEGTS_DEMUXER 1
-%define CONFIG_MPEGTSRAW_DEMUXER 1
-%define CONFIG_MPEGVIDEO_DEMUXER 1
-%define CONFIG_MPJPEG_DEMUXER 1
-%define CONFIG_MPL2_DEMUXER 1
-%define CONFIG_MPSUB_DEMUXER 1
-%define CONFIG_MSF_DEMUXER 1
-%define CONFIG_MSNWC_TCP_DEMUXER 1
-%define CONFIG_MTAF_DEMUXER 1
-%define CONFIG_MTV_DEMUXER 1
-%define CONFIG_MUSX_DEMUXER 1
-%define CONFIG_MV_DEMUXER 1
-%define CONFIG_MVI_DEMUXER 1
-%define CONFIG_MXF_DEMUXER 1
-%define CONFIG_MXG_DEMUXER 1
-%define CONFIG_NC_DEMUXER 1
-%define CONFIG_NISTSPHERE_DEMUXER 1
-%define CONFIG_NSP_DEMUXER 1
-%define CONFIG_NSV_DEMUXER 1
-%define CONFIG_NUT_DEMUXER 1
-%define CONFIG_NUV_DEMUXER 1
-%define CONFIG_OGG_DEMUXER 1
-%define CONFIG_OMA_DEMUXER 1
-%define CONFIG_PAF_DEMUXER 1
-%define CONFIG_PCM_ALAW_DEMUXER 1
-%define CONFIG_PCM_MULAW_DEMUXER 1
-%define CONFIG_PCM_VIDC_DEMUXER 1
-%define CONFIG_PCM_F64BE_DEMUXER 1
-%define CONFIG_PCM_F64LE_DEMUXER 1
-%define CONFIG_PCM_F32BE_DEMUXER 1
-%define CONFIG_PCM_F32LE_DEMUXER 1
-%define CONFIG_PCM_S32BE_DEMUXER 1
-%define CONFIG_PCM_S32LE_DEMUXER 1
-%define CONFIG_PCM_S24BE_DEMUXER 1
-%define CONFIG_PCM_S24LE_DEMUXER 1
-%define CONFIG_PCM_S16BE_DEMUXER 1
-%define CONFIG_PCM_S16LE_DEMUXER 1
-%define CONFIG_PCM_S8_DEMUXER 1
-%define CONFIG_PCM_U32BE_DEMUXER 1
-%define CONFIG_PCM_U32LE_DEMUXER 1
-%define CONFIG_PCM_U24BE_DEMUXER 1
-%define CONFIG_PCM_U24LE_DEMUXER 1
-%define CONFIG_PCM_U16BE_DEMUXER 1
-%define CONFIG_PCM_U16LE_DEMUXER 1
-%define CONFIG_PCM_U8_DEMUXER 1
-%define CONFIG_PJS_DEMUXER 1
-%define CONFIG_PMP_DEMUXER 1
-%define CONFIG_PVA_DEMUXER 1
-%define CONFIG_PVF_DEMUXER 1
-%define CONFIG_QCP_DEMUXER 1
-%define CONFIG_R3D_DEMUXER 1
-%define CONFIG_RAWVIDEO_DEMUXER 1
-%define CONFIG_REALTEXT_DEMUXER 1
-%define CONFIG_REDSPARK_DEMUXER 1
-%define CONFIG_RL2_DEMUXER 1
-%define CONFIG_RM_DEMUXER 1
-%define CONFIG_ROQ_DEMUXER 1
-%define CONFIG_RPL_DEMUXER 1
-%define CONFIG_RSD_DEMUXER 1
-%define CONFIG_RSO_DEMUXER 1
-%define CONFIG_RTP_DEMUXER 0
-%define CONFIG_RTSP_DEMUXER 0
-%define CONFIG_S337M_DEMUXER 1
-%define CONFIG_SAMI_DEMUXER 1
-%define CONFIG_SAP_DEMUXER 0
-%define CONFIG_SBC_DEMUXER 1
-%define CONFIG_SBG_DEMUXER 1
-%define CONFIG_SCC_DEMUXER 1
-%define CONFIG_SDP_DEMUXER 0
-%define CONFIG_SDR2_DEMUXER 1
-%define CONFIG_SDS_DEMUXER 1
-%define CONFIG_SDX_DEMUXER 1
-%define CONFIG_SEGAFILM_DEMUXER 1
-%define CONFIG_SER_DEMUXER 1
-%define CONFIG_SHORTEN_DEMUXER 1
-%define CONFIG_SIFF_DEMUXER 1
-%define CONFIG_SLN_DEMUXER 1
-%define CONFIG_SMACKER_DEMUXER 1
-%define CONFIG_SMJPEG_DEMUXER 1
-%define CONFIG_SMUSH_DEMUXER 1
-%define CONFIG_SOL_DEMUXER 1
-%define CONFIG_SOX_DEMUXER 1
-%define CONFIG_SPDIF_DEMUXER 1
-%define CONFIG_SRT_DEMUXER 1
-%define CONFIG_STR_DEMUXER 1
-%define CONFIG_STL_DEMUXER 1
-%define CONFIG_SUBVIEWER1_DEMUXER 1
-%define CONFIG_SUBVIEWER_DEMUXER 1
-%define CONFIG_SUP_DEMUXER 1
-%define CONFIG_SVAG_DEMUXER 1
-%define CONFIG_SWF_DEMUXER 1
-%define CONFIG_TAK_DEMUXER 1
-%define CONFIG_TEDCAPTIONS_DEMUXER 1
-%define CONFIG_THP_DEMUXER 1
-%define CONFIG_THREEDOSTR_DEMUXER 1
-%define CONFIG_TIERTEXSEQ_DEMUXER 1
-%define CONFIG_TMV_DEMUXER 1
-%define CONFIG_TRUEHD_DEMUXER 1
-%define CONFIG_TTA_DEMUXER 1
-%define CONFIG_TXD_DEMUXER 1
-%define CONFIG_TTY_DEMUXER 1
-%define CONFIG_TY_DEMUXER 1
-%define CONFIG_V210_DEMUXER 1
-%define CONFIG_V210X_DEMUXER 1
-%define CONFIG_VAG_DEMUXER 1
-%define CONFIG_VC1_DEMUXER 1
-%define CONFIG_VC1T_DEMUXER 1
-%define CONFIG_VIVO_DEMUXER 1
-%define CONFIG_VMD_DEMUXER 1
-%define CONFIG_VOBSUB_DEMUXER 1
-%define CONFIG_VOC_DEMUXER 1
-%define CONFIG_VPK_DEMUXER 1
-%define CONFIG_VPLAYER_DEMUXER 1
-%define CONFIG_VQF_DEMUXER 1
-%define CONFIG_W64_DEMUXER 1
-%define CONFIG_WAV_DEMUXER 1
-%define CONFIG_WC3_DEMUXER 1
-%define CONFIG_WEBM_DASH_MANIFEST_DEMUXER 1
-%define CONFIG_WEBVTT_DEMUXER 1
-%define CONFIG_WSAUD_DEMUXER 1
-%define CONFIG_WSD_DEMUXER 1
-%define CONFIG_WSVQA_DEMUXER 1
-%define CONFIG_WTV_DEMUXER 1
-%define CONFIG_WVE_DEMUXER 1
-%define CONFIG_WV_DEMUXER 1
-%define CONFIG_XA_DEMUXER 1
-%define CONFIG_XBIN_DEMUXER 1
-%define CONFIG_XMV_DEMUXER 1
-%define CONFIG_XVAG_DEMUXER 1
-%define CONFIG_XWMA_DEMUXER 1
-%define CONFIG_YOP_DEMUXER 1
-%define CONFIG_YUV4MPEGPIPE_DEMUXER 1
-%define CONFIG_IMAGE_BMP_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_DDS_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_DPX_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_EXR_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_J2K_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_JPEG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PAM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PBM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PCX_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PGM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PICTOR_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PNG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PPM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_PSD_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_QDRAW_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SGI_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SVG_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_TIFF_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_WEBP_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_XPM_PIPE_DEMUXER 1
-%define CONFIG_IMAGE_XWD_PIPE_DEMUXER 1
-%define CONFIG_LIBGME_DEMUXER 0
-%define CONFIG_LIBMODPLUG_DEMUXER 0
-%define CONFIG_LIBOPENMPT_DEMUXER 0
-%define CONFIG_VAPOURSYNTH_DEMUXER 0
-%define CONFIG_A64_MUXER 0
-%define CONFIG_AC3_MUXER 0
-%define CONFIG_ADTS_MUXER 0
-%define CONFIG_ADX_MUXER 0
-%define CONFIG_AIFF_MUXER 0
-%define CONFIG_AMR_MUXER 0
-%define CONFIG_APNG_MUXER 0
-%define CONFIG_APTX_MUXER 0
-%define CONFIG_APTX_HD_MUXER 0
-%define CONFIG_ASF_MUXER 0
-%define CONFIG_ASS_MUXER 0
-%define CONFIG_AST_MUXER 0
-%define CONFIG_ASF_STREAM_MUXER 0
-%define CONFIG_AU_MUXER 0
-%define CONFIG_AVI_MUXER 0
-%define CONFIG_AVM2_MUXER 0
-%define CONFIG_AVS2_MUXER 0
-%define CONFIG_BIT_MUXER 0
-%define CONFIG_CAF_MUXER 0
-%define CONFIG_CAVSVIDEO_MUXER 0
-%define CONFIG_CODEC2_MUXER 0
-%define CONFIG_CODEC2RAW_MUXER 0
-%define CONFIG_CRC_MUXER 0
-%define CONFIG_DASH_MUXER 0
-%define CONFIG_DATA_MUXER 0
-%define CONFIG_DAUD_MUXER 0
-%define CONFIG_DIRAC_MUXER 0
-%define CONFIG_DNXHD_MUXER 0
-%define CONFIG_DTS_MUXER 0
-%define CONFIG_DV_MUXER 0
-%define CONFIG_EAC3_MUXER 0
-%define CONFIG_F4V_MUXER 0
-%define CONFIG_FFMETADATA_MUXER 0
-%define CONFIG_FIFO_MUXER 0
-%define CONFIG_FIFO_TEST_MUXER 0
-%define CONFIG_FILMSTRIP_MUXER 0
-%define CONFIG_FITS_MUXER 0
-%define CONFIG_FLAC_MUXER 0
-%define CONFIG_FLV_MUXER 0
-%define CONFIG_FRAMECRC_MUXER 0
-%define CONFIG_FRAMEHASH_MUXER 0
-%define CONFIG_FRAMEMD5_MUXER 0
-%define CONFIG_G722_MUXER 0
-%define CONFIG_G723_1_MUXER 0
-%define CONFIG_G726_MUXER 0
-%define CONFIG_G726LE_MUXER 0
-%define CONFIG_GIF_MUXER 0
-%define CONFIG_GSM_MUXER 0
-%define CONFIG_GXF_MUXER 0
-%define CONFIG_H261_MUXER 0
-%define CONFIG_H263_MUXER 0
-%define CONFIG_H264_MUXER 0
-%define CONFIG_HASH_MUXER 0
-%define CONFIG_HDS_MUXER 0
-%define CONFIG_HEVC_MUXER 0
-%define CONFIG_HLS_MUXER 0
-%define CONFIG_ICO_MUXER 0
-%define CONFIG_ILBC_MUXER 0
-%define CONFIG_IMAGE2_MUXER 0
-%define CONFIG_IMAGE2PIPE_MUXER 0
-%define CONFIG_IPOD_MUXER 0
-%define CONFIG_IRCAM_MUXER 0
-%define CONFIG_ISMV_MUXER 0
-%define CONFIG_IVF_MUXER 0
-%define CONFIG_JACOSUB_MUXER 0
-%define CONFIG_LATM_MUXER 0
-%define CONFIG_LRC_MUXER 0
-%define CONFIG_M4V_MUXER 0
-%define CONFIG_MD5_MUXER 0
-%define CONFIG_MATROSKA_MUXER 0
-%define CONFIG_MATROSKA_AUDIO_MUXER 0
-%define CONFIG_MICRODVD_MUXER 0
-%define CONFIG_MJPEG_MUXER 0
-%define CONFIG_MLP_MUXER 0
-%define CONFIG_MMF_MUXER 0
-%define CONFIG_MOV_MUXER 0
-%define CONFIG_MP2_MUXER 0
-%define CONFIG_MP3_MUXER 0
-%define CONFIG_MP4_MUXER 0
-%define CONFIG_MPEG1SYSTEM_MUXER 0
-%define CONFIG_MPEG1VCD_MUXER 0
-%define CONFIG_MPEG1VIDEO_MUXER 0
-%define CONFIG_MPEG2DVD_MUXER 0
-%define CONFIG_MPEG2SVCD_MUXER 0
-%define CONFIG_MPEG2VIDEO_MUXER 0
-%define CONFIG_MPEG2VOB_MUXER 0
-%define CONFIG_MPEGTS_MUXER 0
-%define CONFIG_MPJPEG_MUXER 0
-%define CONFIG_MXF_MUXER 0
-%define CONFIG_MXF_D10_MUXER 0
-%define CONFIG_MXF_OPATOM_MUXER 0
-%define CONFIG_NULL_MUXER 0
-%define CONFIG_NUT_MUXER 0
-%define CONFIG_OGA_MUXER 0
-%define CONFIG_OGG_MUXER 0
-%define CONFIG_OGV_MUXER 0
-%define CONFIG_OMA_MUXER 0
-%define CONFIG_OPUS_MUXER 0
-%define CONFIG_PCM_ALAW_MUXER 0
-%define CONFIG_PCM_MULAW_MUXER 0
-%define CONFIG_PCM_VIDC_MUXER 0
-%define CONFIG_PCM_F64BE_MUXER 0
-%define CONFIG_PCM_F64LE_MUXER 0
-%define CONFIG_PCM_F32BE_MUXER 0
-%define CONFIG_PCM_F32LE_MUXER 0
-%define CONFIG_PCM_S32BE_MUXER 0
-%define CONFIG_PCM_S32LE_MUXER 0
-%define CONFIG_PCM_S24BE_MUXER 0
-%define CONFIG_PCM_S24LE_MUXER 0
-%define CONFIG_PCM_S16BE_MUXER 0
-%define CONFIG_PCM_S16LE_MUXER 0
-%define CONFIG_PCM_S8_MUXER 0
-%define CONFIG_PCM_U32BE_MUXER 0
-%define CONFIG_PCM_U32LE_MUXER 0
-%define CONFIG_PCM_U24BE_MUXER 0
-%define CONFIG_PCM_U24LE_MUXER 0
-%define CONFIG_PCM_U16BE_MUXER 0
-%define CONFIG_PCM_U16LE_MUXER 0
-%define CONFIG_PCM_U8_MUXER 0
-%define CONFIG_PSP_MUXER 0
-%define CONFIG_RAWVIDEO_MUXER 0
-%define CONFIG_RM_MUXER 0
-%define CONFIG_ROQ_MUXER 0
-%define CONFIG_RSO_MUXER 0
-%define CONFIG_RTP_MUXER 0
-%define CONFIG_RTP_MPEGTS_MUXER 0
-%define CONFIG_RTSP_MUXER 0
-%define CONFIG_SAP_MUXER 0
-%define CONFIG_SBC_MUXER 0
-%define CONFIG_SCC_MUXER 0
-%define CONFIG_SEGAFILM_MUXER 0
-%define CONFIG_SEGMENT_MUXER 0
-%define CONFIG_STREAM_SEGMENT_MUXER 0
-%define CONFIG_SINGLEJPEG_MUXER 0
-%define CONFIG_SMJPEG_MUXER 0
-%define CONFIG_SMOOTHSTREAMING_MUXER 0
-%define CONFIG_SOX_MUXER 0
-%define CONFIG_SPX_MUXER 0
-%define CONFIG_SPDIF_MUXER 0
-%define CONFIG_SRT_MUXER 0
-%define CONFIG_SUP_MUXER 0
-%define CONFIG_SWF_MUXER 0
-%define CONFIG_TEE_MUXER 0
-%define CONFIG_TG2_MUXER 0
-%define CONFIG_TGP_MUXER 0
-%define CONFIG_MKVTIMESTAMP_V2_MUXER 0
-%define CONFIG_TRUEHD_MUXER 0
-%define CONFIG_TTA_MUXER 0
-%define CONFIG_UNCODEDFRAMECRC_MUXER 0
-%define CONFIG_VC1_MUXER 0
-%define CONFIG_VC1T_MUXER 0
-%define CONFIG_VOC_MUXER 0
-%define CONFIG_W64_MUXER 0
-%define CONFIG_WAV_MUXER 0
-%define CONFIG_WEBM_MUXER 0
-%define CONFIG_WEBM_DASH_MANIFEST_MUXER 0
-%define CONFIG_WEBM_CHUNK_MUXER 0
-%define CONFIG_WEBP_MUXER 0
-%define CONFIG_WEBVTT_MUXER 0
-%define CONFIG_WTV_MUXER 0
-%define CONFIG_WV_MUXER 0
-%define CONFIG_YUV4MPEGPIPE_MUXER 0
-%define CONFIG_CHROMAPRINT_MUXER 0
-%define CONFIG_ASYNC_PROTOCOL 1
-%define CONFIG_BLURAY_PROTOCOL 0
-%define CONFIG_CACHE_PROTOCOL 1
-%define CONFIG_CONCAT_PROTOCOL 1
-%define CONFIG_CRYPTO_PROTOCOL 1
-%define CONFIG_DATA_PROTOCOL 1
-%define CONFIG_FFRTMPCRYPT_PROTOCOL 0
-%define CONFIG_FFRTMPHTTP_PROTOCOL 0
-%define CONFIG_FILE_PROTOCOL 1
-%define CONFIG_FTP_PROTOCOL 0
-%define CONFIG_GOPHER_PROTOCOL 0
-%define CONFIG_HLS_PROTOCOL 1
-%define CONFIG_HTTP_PROTOCOL 0
-%define CONFIG_HTTPPROXY_PROTOCOL 0
-%define CONFIG_HTTPS_PROTOCOL 0
-%define CONFIG_ICECAST_PROTOCOL 0
-%define CONFIG_MMSH_PROTOCOL 0
-%define CONFIG_MMST_PROTOCOL 0
-%define CONFIG_MD5_PROTOCOL 1
-%define CONFIG_PIPE_PROTOCOL 1
-%define CONFIG_PROMPEG_PROTOCOL 1
-%define CONFIG_RTMP_PROTOCOL 0
-%define CONFIG_RTMPE_PROTOCOL 0
-%define CONFIG_RTMPS_PROTOCOL 0
-%define CONFIG_RTMPT_PROTOCOL 0
-%define CONFIG_RTMPTE_PROTOCOL 0
-%define CONFIG_RTMPTS_PROTOCOL 0
-%define CONFIG_RTP_PROTOCOL 0
-%define CONFIG_SCTP_PROTOCOL 0
-%define CONFIG_SRTP_PROTOCOL 0
-%define CONFIG_SUBFILE_PROTOCOL 1
-%define CONFIG_TEE_PROTOCOL 1
-%define CONFIG_TCP_PROTOCOL 0
-%define CONFIG_TLS_PROTOCOL 0
-%define CONFIG_UDP_PROTOCOL 0
-%define CONFIG_UDPLITE_PROTOCOL 0
-%define CONFIG_UNIX_PROTOCOL 0
-%define CONFIG_LIBRTMP_PROTOCOL 0
-%define CONFIG_LIBRTMPE_PROTOCOL 0
-%define CONFIG_LIBRTMPS_PROTOCOL 0
-%define CONFIG_LIBRTMPT_PROTOCOL 0
-%define CONFIG_LIBRTMPTE_PROTOCOL 0
-%define CONFIG_LIBSRT_PROTOCOL 0
-%define CONFIG_LIBSSH_PROTOCOL 0
-%define CONFIG_LIBSMBCLIENT_PROTOCOL 0
diff --git a/build/ffmpeg/config-x86.h b/build/ffmpeg/config-x86.h
deleted file mode 100755
index 0a1483e3b..000000000
--- a/build/ffmpeg/config-x86.h
+++ /dev/null
@@ -1,2476 +0,0 @@
-/* Automatically generated by configure - do not modify! */
-#ifndef FFMPEG_CONFIG_H
-#define FFMPEG_CONFIG_H
-#define FFMPEG_CONFIGURATION "--disable-avfilter --disable-avresample --disable-bzlib --disable-d3d11va --disable-dxva2 --disable-decoder='atrac3p,indeo2,indeo3,indeo4,indeo5,twinvq' --disable-devices --disable-doc --disable-encoders --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-filters --disable-hwaccels --disable-muxers --disable-network --disable-postproc --disable-pthreads --disable-shared --enable-gpl --enable-runtime-cpudetect --enable-static --enable-small --enable-x86asm --x86asmexe=yasm --enable-zlib --extra-cflags=-D_SYSCRT --extra-cflags=-I../../include --extra-cflags=-MD --extra-cflags=-wd4005 --extra-cflags=-wd4189 --extra-ldflags='-LIBPATH:../../lib/Win32/Release' --toolchain=msvc"
-#define FFMPEG_LICENSE "GPL version 2 or later"
-#define CONFIG_THIS_YEAR 2018
-#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
-#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-#define CC_IDENT "Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x86"
-#define av_restrict __restrict
-#define EXTERN_PREFIX "_"
-#define EXTERN_ASM _
-#define BUILDSUF ""
-#define SLIBSUF ".dll"
-#define HAVE_MMX2 HAVE_MMXEXT
-#define SWS_MAX_FILTER_SIZE 256
-#define ARCH_AARCH64 0
-#define ARCH_ALPHA 0
-#define ARCH_ARM 0
-#define ARCH_AVR32 0
-#define ARCH_AVR32_AP 0
-#define ARCH_AVR32_UC 0
-#define ARCH_BFIN 0
-#define ARCH_IA64 0
-#define ARCH_M68K 0
-#define ARCH_MIPS 0
-#define ARCH_MIPS64 0
-#define ARCH_PARISC 0
-#define ARCH_PPC 0
-#define ARCH_PPC64 0
-#define ARCH_S390 0
-#define ARCH_SH4 0
-#define ARCH_SPARC 0
-#define ARCH_SPARC64 0
-#define ARCH_TILEGX 0
-#define ARCH_TILEPRO 0
-#define ARCH_TOMI 0
-#define ARCH_X86 1
-#define ARCH_X86_32 1
-#define ARCH_X86_64 0
-#define HAVE_ARMV5TE 0
-#define HAVE_ARMV6 0
-#define HAVE_ARMV6T2 0
-#define HAVE_ARMV8 0
-#define HAVE_NEON 0
-#define HAVE_VFP 0
-#define HAVE_VFPV3 0
-#define HAVE_SETEND 0
-#define HAVE_ALTIVEC 0
-#define HAVE_DCBZL 0
-#define HAVE_LDBRX 0
-#define HAVE_POWER8 0
-#define HAVE_PPC4XX 0
-#define HAVE_VSX 0
-#define HAVE_AESNI 1
-#define HAVE_AMD3DNOW 1
-#define HAVE_AMD3DNOWEXT 1
-#define HAVE_AVX 1
-#define HAVE_AVX2 1
-#define HAVE_AVX512 1
-#define HAVE_FMA3 1
-#define HAVE_FMA4 1
-#define HAVE_MMX 1
-#define HAVE_MMXEXT 1
-#define HAVE_SSE 1
-#define HAVE_SSE2 1
-#define HAVE_SSE3 1
-#define HAVE_SSE4 1
-#define HAVE_SSE42 1
-#define HAVE_SSSE3 1
-#define HAVE_XOP 1
-#define HAVE_CPUNOP 1
-#define HAVE_I686 1
-#define HAVE_MIPSFPU 0
-#define HAVE_MIPS32R2 0
-#define HAVE_MIPS32R5 0
-#define HAVE_MIPS64R2 0
-#define HAVE_MIPS32R6 0
-#define HAVE_MIPS64R6 0
-#define HAVE_MIPSDSP 0
-#define HAVE_MIPSDSPR2 0
-#define HAVE_MSA 0
-#define HAVE_LOONGSON2 0
-#define HAVE_LOONGSON3 0
-#define HAVE_MMI 0
-#define HAVE_ARMV5TE_EXTERNAL 0
-#define HAVE_ARMV6_EXTERNAL 0
-#define HAVE_ARMV6T2_EXTERNAL 0
-#define HAVE_ARMV8_EXTERNAL 0
-#define HAVE_NEON_EXTERNAL 0
-#define HAVE_VFP_EXTERNAL 0
-#define HAVE_VFPV3_EXTERNAL 0
-#define HAVE_SETEND_EXTERNAL 0
-#define HAVE_ALTIVEC_EXTERNAL 0
-#define HAVE_DCBZL_EXTERNAL 0
-#define HAVE_LDBRX_EXTERNAL 0
-#define HAVE_POWER8_EXTERNAL 0
-#define HAVE_PPC4XX_EXTERNAL 0
-#define HAVE_VSX_EXTERNAL 0
-#define HAVE_AESNI_EXTERNAL 1
-#define HAVE_AMD3DNOW_EXTERNAL 1
-#define HAVE_AMD3DNOWEXT_EXTERNAL 1
-#define HAVE_AVX_EXTERNAL 1
-#define HAVE_AVX2_EXTERNAL 0
-#define HAVE_AVX512_EXTERNAL 0
-#define HAVE_FMA3_EXTERNAL 1
-#define HAVE_FMA4_EXTERNAL 1
-#define HAVE_MMX_EXTERNAL 1
-#define HAVE_MMXEXT_EXTERNAL 1
-#define HAVE_SSE_EXTERNAL 1
-#define HAVE_SSE2_EXTERNAL 1
-#define HAVE_SSE3_EXTERNAL 1
-#define HAVE_SSE4_EXTERNAL 1
-#define HAVE_SSE42_EXTERNAL 1
-#define HAVE_SSSE3_EXTERNAL 1
-#define HAVE_XOP_EXTERNAL 1
-#define HAVE_CPUNOP_EXTERNAL 0
-#define HAVE_I686_EXTERNAL 0
-#define HAVE_MIPSFPU_EXTERNAL 0
-#define HAVE_MIPS32R2_EXTERNAL 0
-#define HAVE_MIPS32R5_EXTERNAL 0
-#define HAVE_MIPS64R2_EXTERNAL 0
-#define HAVE_MIPS32R6_EXTERNAL 0
-#define HAVE_MIPS64R6_EXTERNAL 0
-#define HAVE_MIPSDSP_EXTERNAL 0
-#define HAVE_MIPSDSPR2_EXTERNAL 0
-#define HAVE_MSA_EXTERNAL 0
-#define HAVE_LOONGSON2_EXTERNAL 0
-#define HAVE_LOONGSON3_EXTERNAL 0
-#define HAVE_MMI_EXTERNAL 0
-#define HAVE_ARMV5TE_INLINE 0
-#define HAVE_ARMV6_INLINE 0
-#define HAVE_ARMV6T2_INLINE 0
-#define HAVE_ARMV8_INLINE 0
-#define HAVE_NEON_INLINE 0
-#define HAVE_VFP_INLINE 0
-#define HAVE_VFPV3_INLINE 0
-#define HAVE_SETEND_INLINE 0
-#define HAVE_ALTIVEC_INLINE 0
-#define HAVE_DCBZL_INLINE 0
-#define HAVE_LDBRX_INLINE 0
-#define HAVE_POWER8_INLINE 0
-#define HAVE_PPC4XX_INLINE 0
-#define HAVE_VSX_INLINE 0
-#define HAVE_AESNI_INLINE 0
-#define HAVE_AMD3DNOW_INLINE 0
-#define HAVE_AMD3DNOWEXT_INLINE 0
-#define HAVE_AVX_INLINE 0
-#define HAVE_AVX2_INLINE 0
-#define HAVE_AVX512_INLINE 0
-#define HAVE_FMA3_INLINE 0
-#define HAVE_FMA4_INLINE 0
-#define HAVE_MMX_INLINE 0
-#define HAVE_MMXEXT_INLINE 0
-#define HAVE_SSE_INLINE 0
-#define HAVE_SSE2_INLINE 0
-#define HAVE_SSE3_INLINE 0
-#define HAVE_SSE4_INLINE 0
-#define HAVE_SSE42_INLINE 0
-#define HAVE_SSSE3_INLINE 0
-#define HAVE_XOP_INLINE 0
-#define HAVE_CPUNOP_INLINE 0
-#define HAVE_I686_INLINE 0
-#define HAVE_MIPSFPU_INLINE 0
-#define HAVE_MIPS32R2_INLINE 0
-#define HAVE_MIPS32R5_INLINE 0
-#define HAVE_MIPS64R2_INLINE 0
-#define HAVE_MIPS32R6_INLINE 0
-#define HAVE_MIPS64R6_INLINE 0
-#define HAVE_MIPSDSP_INLINE 0
-#define HAVE_MIPSDSPR2_INLINE 0
-#define HAVE_MSA_INLINE 0
-#define HAVE_LOONGSON2_INLINE 0
-#define HAVE_LOONGSON3_INLINE 0
-#define HAVE_MMI_INLINE 0
-#define HAVE_ALIGNED_STACK 0
-#define HAVE_FAST_64BIT 0
-#define HAVE_FAST_CLZ 1
-#define HAVE_FAST_CMOV 0
-#define HAVE_LOCAL_ALIGNED 1
-#define HAVE_SIMD_ALIGN_16 1
-#define HAVE_SIMD_ALIGN_32 1
-#define HAVE_SIMD_ALIGN_64 1
-#define HAVE_ATOMIC_CAS_PTR 0
-#define HAVE_MACHINE_RW_BARRIER 0
-#define HAVE_MEMORYBARRIER 1
-#define HAVE_MM_EMPTY 1
-#define HAVE_RDTSC 1
-#define HAVE_SEM_TIMEDWAIT 0
-#define HAVE_SYNC_VAL_COMPARE_AND_SWAP 0
-#define HAVE_CABS 0
-#define HAVE_CEXP 0
-#define HAVE_INLINE_ASM 0
-#define HAVE_SYMVER 0
-#define HAVE_X86ASM 1
-#define HAVE_BIGENDIAN 0
-#define HAVE_FAST_UNALIGNED 1
-#define HAVE_ARPA_INET_H 0
-#define HAVE_ASM_TYPES_H 0
-#define HAVE_CDIO_PARANOIA_H 0
-#define HAVE_CDIO_PARANOIA_PARANOIA_H 0
-#define HAVE_CUDA_H 0
-#define HAVE_DISPATCH_DISPATCH_H 0
-#define HAVE_DEV_BKTR_IOCTL_BT848_H 0
-#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
-#define HAVE_DEV_IC_BT8XX_H 0
-#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
-#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
-#define HAVE_DIRECT_H 1
-#define HAVE_DIRENT_H 0
-#define HAVE_DXGIDEBUG_H 1
-#define HAVE_DXVA_H 1
-#define HAVE_ES2_GL_H 0
-#define HAVE_GSM_H 0
-#define HAVE_IO_H 1
-#define HAVE_LINUX_PERF_EVENT_H 0
-#define HAVE_MACHINE_IOCTL_BT848_H 0
-#define HAVE_MACHINE_IOCTL_METEOR_H 0
-#define HAVE_MALLOC_H 1
-#define HAVE_OPENCV2_CORE_CORE_C_H 0
-#define HAVE_OPENGL_GL3_H 0
-#define HAVE_POLL_H 0
-#define HAVE_SYS_PARAM_H 0
-#define HAVE_SYS_RESOURCE_H 0
-#define HAVE_SYS_SELECT_H 0
-#define HAVE_SYS_SOUNDCARD_H 0
-#define HAVE_SYS_TIME_H 0
-#define HAVE_SYS_UN_H 0
-#define HAVE_SYS_VIDEOIO_H 0
-#define HAVE_TERMIOS_H 0
-#define HAVE_UDPLITE_H 0
-#define HAVE_UNISTD_H 0
-#define HAVE_VALGRIND_VALGRIND_H 0
-#define HAVE_WINDOWS_H 1
-#define HAVE_WINSOCK2_H 0
-#define HAVE_INTRINSICS_NEON 0
-#define HAVE_ATANF 1
-#define HAVE_ATAN2F 1
-#define HAVE_CBRT 1
-#define HAVE_CBRTF 1
-#define HAVE_COPYSIGN 1
-#define HAVE_COSF 1
-#define HAVE_ERF 1
-#define HAVE_EXP2 1
-#define HAVE_EXP2F 1
-#define HAVE_EXPF 1
-#define HAVE_HYPOT 1
-#define HAVE_ISFINITE 1
-#define HAVE_ISINF 1
-#define HAVE_ISNAN 1
-#define HAVE_LDEXPF 1
-#define HAVE_LLRINT 1
-#define HAVE_LLRINTF 1
-#define HAVE_LOG2 1
-#define HAVE_LOG2F 1
-#define HAVE_LOG10F 1
-#define HAVE_LRINT 1
-#define HAVE_LRINTF 1
-#define HAVE_POWF 1
-#define HAVE_RINT 1
-#define HAVE_ROUND 1
-#define HAVE_ROUNDF 1
-#define HAVE_SINF 1
-#define HAVE_TRUNC 1
-#define HAVE_TRUNCF 1
-#define HAVE_DOS_PATHS 1
-#define HAVE_LIBC_MSVCRT 1
-#define HAVE_MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS 0
-#define HAVE_SECTION_DATA_REL_RO 0
-#define HAVE_THREADS 1
-#define HAVE_UWP 0
-#define HAVE_WINRT 0
-#define HAVE_ACCESS 1
-#define HAVE_ALIGNED_MALLOC 1
-#define HAVE_ARC4RANDOM 0
-#define HAVE_CLOCK_GETTIME 0
-#define HAVE_CLOSESOCKET 0
-#define HAVE_COMMANDLINETOARGVW 1
-#define HAVE_FCNTL 0
-#define HAVE_GETADDRINFO 0
-#define HAVE_GETHRTIME 0
-#define HAVE_GETOPT 0
-#define HAVE_GETPROCESSAFFINITYMASK 1
-#define HAVE_GETPROCESSMEMORYINFO 1
-#define HAVE_GETPROCESSTIMES 1
-#define HAVE_GETRUSAGE 0
-#define HAVE_GETSYSTEMTIMEASFILETIME 1
-#define HAVE_GETTIMEOFDAY 0
-#define HAVE_GLOB 0
-#define HAVE_GLXGETPROCADDRESS 0
-#define HAVE_GMTIME_R 0
-#define HAVE_INET_ATON 0
-#define HAVE_ISATTY 1
-#define HAVE_KBHIT 1
-#define HAVE_LOCALTIME_R 0
-#define HAVE_LSTAT 0
-#define HAVE_LZO1X_999_COMPRESS 0
-#define HAVE_MACH_ABSOLUTE_TIME 0
-#define HAVE_MAPVIEWOFFILE 1
-#define HAVE_MEMALIGN 0
-#define HAVE_MKSTEMP 0
-#define HAVE_MMAP 0
-#define HAVE_MPROTECT 0
-#define HAVE_NANOSLEEP 0
-#define HAVE_PEEKNAMEDPIPE 1
-#define HAVE_POSIX_MEMALIGN 0
-#define HAVE_PTHREAD_CANCEL 0
-#define HAVE_SCHED_GETAFFINITY 0
-#define HAVE_SECITEMIMPORT 0
-#define HAVE_SETCONSOLETEXTATTRIBUTE 1
-#define HAVE_SETCONSOLECTRLHANDLER 1
-#define HAVE_SETMODE 1
-#define HAVE_SETRLIMIT 0
-#define HAVE_SLEEP 1
-#define HAVE_STRERROR_R 0
-#define HAVE_SYSCONF 0
-#define HAVE_SYSCTL 0
-#define HAVE_USLEEP 0
-#define HAVE_UTGETOSTYPEFROMSTRING 0
-#define HAVE_VIRTUALALLOC 1
-#define HAVE_WGLGETPROCADDRESS 0
-#define HAVE_BCRYPT 1
-#define HAVE_VAAPI_DRM 0
-#define HAVE_VAAPI_X11 0
-#define HAVE_VDPAU_X11 0
-#define HAVE_PTHREADS 0
-#define HAVE_OS2THREADS 0
-#define HAVE_W32THREADS 1
-#define HAVE_AS_ARCH_DIRECTIVE 0
-#define HAVE_AS_DN_DIRECTIVE 0
-#define HAVE_AS_FPU_DIRECTIVE 0
-#define HAVE_AS_FUNC 0
-#define HAVE_AS_OBJECT_ARCH 0
-#define HAVE_ASM_MOD_Q 0
-#define HAVE_BLOCKS_EXTENSION 0
-#define HAVE_EBP_AVAILABLE 0
-#define HAVE_EBX_AVAILABLE 0
-#define HAVE_GNU_AS 0
-#define HAVE_GNU_WINDRES 0
-#define HAVE_IBM_ASM 0
-#define HAVE_INLINE_ASM_DIRECT_SYMBOL_REFS 0
-#define HAVE_INLINE_ASM_LABELS 0
-#define HAVE_INLINE_ASM_NONLOCAL_LABELS 0
-#define HAVE_PRAGMA_DEPRECATED 1
-#define HAVE_RSYNC_CONTIMEOUT 0
-#define HAVE_SYMVER_ASM_LABEL 0
-#define HAVE_SYMVER_GNU_ASM 0
-#define HAVE_VFP_ARGS 0
-#define HAVE_XFORM_ASM 0
-#define HAVE_XMM_CLOBBERS 0
-#define HAVE_KCMVIDEOCODECTYPE_HEVC 0
-#define HAVE_SOCKLEN_T 0
-#define HAVE_STRUCT_ADDRINFO 0
-#define HAVE_STRUCT_GROUP_SOURCE_REQ 0
-#define HAVE_STRUCT_IP_MREQ_SOURCE 0
-#define HAVE_STRUCT_IPV6_MREQ 0
-#define HAVE_STRUCT_MSGHDR_MSG_FLAGS 0
-#define HAVE_STRUCT_POLLFD 0
-#define HAVE_STRUCT_RUSAGE_RU_MAXRSS 0
-#define HAVE_STRUCT_SCTP_EVENT_SUBSCRIBE 0
-#define HAVE_STRUCT_SOCKADDR_IN6 0
-#define HAVE_STRUCT_SOCKADDR_SA_LEN 0
-#define HAVE_STRUCT_SOCKADDR_STORAGE 0
-#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0
-#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 0
-#define HAVE_MAKEINFO 1
-#define HAVE_MAKEINFO_HTML 0
-#define HAVE_OPENCL_D3D11 0
-#define HAVE_OPENCL_DRM_ARM 0
-#define HAVE_OPENCL_DRM_BEIGNET 0
-#define HAVE_OPENCL_DXVA2 0
-#define HAVE_OPENCL_VAAPI_BEIGNET 0
-#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
-#define HAVE_PERL 1
-#define HAVE_POD2MAN 0
-#define HAVE_TEXI2HTML 0
-#define CONFIG_DOC 0
-#define CONFIG_HTMLPAGES 0
-#define CONFIG_MANPAGES 0
-#define CONFIG_PODPAGES 1
-#define CONFIG_TXTPAGES 1
-#define CONFIG_AVIO_DIR_CMD_EXAMPLE 1
-#define CONFIG_AVIO_READING_EXAMPLE 1
-#define CONFIG_DECODE_AUDIO_EXAMPLE 1
-#define CONFIG_DECODE_VIDEO_EXAMPLE 1
-#define CONFIG_DEMUXING_DECODING_EXAMPLE 1
-#define CONFIG_ENCODE_AUDIO_EXAMPLE 1
-#define CONFIG_ENCODE_VIDEO_EXAMPLE 1
-#define CONFIG_EXTRACT_MVS_EXAMPLE 1
-#define CONFIG_FILTER_AUDIO_EXAMPLE 0
-#define CONFIG_FILTERING_AUDIO_EXAMPLE 0
-#define CONFIG_FILTERING_VIDEO_EXAMPLE 0
-#define CONFIG_HTTP_MULTICLIENT_EXAMPLE 0
-#define CONFIG_HW_DECODE_EXAMPLE 1
-#define CONFIG_METADATA_EXAMPLE 1
-#define CONFIG_MUXING_EXAMPLE 1
-#define CONFIG_QSVDEC_EXAMPLE 0
-#define CONFIG_REMUXING_EXAMPLE 1
-#define CONFIG_RESAMPLING_AUDIO_EXAMPLE 1
-#define CONFIG_SCALING_VIDEO_EXAMPLE 1
-#define CONFIG_TRANSCODE_AAC_EXAMPLE 1
-#define CONFIG_TRANSCODING_EXAMPLE 0
-#define CONFIG_VAAPI_ENCODE_EXAMPLE 0
-#define CONFIG_VAAPI_TRANSCODE_EXAMPLE 0
-#define CONFIG_AVISYNTH 0
-#define CONFIG_FREI0R 0
-#define CONFIG_LIBCDIO 0
-#define CONFIG_LIBDAVS2 0
-#define CONFIG_LIBRUBBERBAND 0
-#define CONFIG_LIBVIDSTAB 0
-#define CONFIG_LIBX264 0
-#define CONFIG_LIBX265 0
-#define CONFIG_LIBXAVS 0
-#define CONFIG_LIBXAVS2 0
-#define CONFIG_LIBXVID 0
-#define CONFIG_DECKLINK 0
-#define CONFIG_LIBNDI_NEWTEK 0
-#define CONFIG_LIBFDK_AAC 0
-#define CONFIG_OPENSSL 0
-#define CONFIG_LIBTLS 0
-#define CONFIG_GMP 0
-#define CONFIG_LIBLENSFUN 0
-#define CONFIG_LIBOPENCORE_AMRNB 0
-#define CONFIG_LIBOPENCORE_AMRWB 0
-#define CONFIG_LIBVMAF 0
-#define CONFIG_LIBVO_AMRWBENC 0
-#define CONFIG_MBEDTLS 0
-#define CONFIG_RKMPP 0
-#define CONFIG_LIBSMBCLIENT 0
-#define CONFIG_CHROMAPRINT 0
-#define CONFIG_GCRYPT 0
-#define CONFIG_GNUTLS 0
-#define CONFIG_JNI 0
-#define CONFIG_LADSPA 0
-#define CONFIG_LIBAOM 0
-#define CONFIG_LIBASS 0
-#define CONFIG_LIBBLURAY 0
-#define CONFIG_LIBBS2B 0
-#define CONFIG_LIBCACA 0
-#define CONFIG_LIBCELT 0
-#define CONFIG_LIBCODEC2 0
-#define CONFIG_LIBDAV1D 0
-#define CONFIG_LIBDC1394 0
-#define CONFIG_LIBDRM 0
-#define CONFIG_LIBFLITE 0
-#define CONFIG_LIBFONTCONFIG 0
-#define CONFIG_LIBFREETYPE 0
-#define CONFIG_LIBFRIBIDI 0
-#define CONFIG_LIBGME 0
-#define CONFIG_LIBGSM 0
-#define CONFIG_LIBIEC61883 0
-#define CONFIG_LIBILBC 0
-#define CONFIG_LIBJACK 0
-#define CONFIG_LIBKLVANC 0
-#define CONFIG_LIBKVAZAAR 0
-#define CONFIG_LIBMODPLUG 0
-#define CONFIG_LIBMP3LAME 0
-#define CONFIG_LIBMYSOFA 0
-#define CONFIG_LIBOPENCV 0
-#define CONFIG_LIBOPENH264 0
-#define CONFIG_LIBOPENJPEG 0
-#define CONFIG_LIBOPENMPT 0
-#define CONFIG_LIBOPUS 0
-#define CONFIG_LIBPULSE 0
-#define CONFIG_LIBRSVG 0
-#define CONFIG_LIBRTMP 0
-#define CONFIG_LIBSHINE 0
-#define CONFIG_LIBSMBCLIENT 0
-#define CONFIG_LIBSNAPPY 0
-#define CONFIG_LIBSOXR 0
-#define CONFIG_LIBSPEEX 0
-#define CONFIG_LIBSRT 0
-#define CONFIG_LIBSSH 0
-#define CONFIG_LIBTENSORFLOW 0
-#define CONFIG_LIBTESSERACT 0
-#define CONFIG_LIBTHEORA 0
-#define CONFIG_LIBTWOLAME 0
-#define CONFIG_LIBV4L2 0
-#define CONFIG_LIBVORBIS 0
-#define CONFIG_LIBVPX 0
-#define CONFIG_LIBWAVPACK 0
-#define CONFIG_LIBWEBP 0
-#define CONFIG_LIBXML2 0
-#define CONFIG_LIBZIMG 0
-#define CONFIG_LIBZMQ 0
-#define CONFIG_LIBZVBI 0
-#define CONFIG_LV2 0
-#define CONFIG_MEDIACODEC 0
-#define CONFIG_OPENAL 0
-#define CONFIG_OPENGL 0
-#define CONFIG_VAPOURSYNTH 0
-#define CONFIG_ALSA 0
-#define CONFIG_APPKIT 0
-#define CONFIG_AVFOUNDATION 0
-#define CONFIG_BZLIB 0
-#define CONFIG_COREIMAGE 0
-#define CONFIG_ICONV 0
-#define CONFIG_LIBXCB 0
-#define CONFIG_LIBXCB_SHM 0
-#define CONFIG_LIBXCB_SHAPE 0
-#define CONFIG_LIBXCB_XFIXES 0
-#define CONFIG_LZMA 0
-#define CONFIG_SCHANNEL 1
-#define CONFIG_SDL2 0
-#define CONFIG_SECURETRANSPORT 0
-#define CONFIG_SNDIO 0
-#define CONFIG_XLIB 0
-#define CONFIG_ZLIB 1
-#define CONFIG_CUDA_SDK 0
-#define CONFIG_LIBNPP 0
-#define CONFIG_LIBMFX 0
-#define CONFIG_MMAL 0
-#define CONFIG_OMX 0
-#define CONFIG_OPENCL 0
-#define CONFIG_AMF 0
-#define CONFIG_AUDIOTOOLBOX 0
-#define CONFIG_CRYSTALHD 0
-#define CONFIG_CUDA 0
-#define CONFIG_CUVID 0
-#define CONFIG_D3D11VA 0
-#define CONFIG_DXVA2 0
-#define CONFIG_FFNVCODEC 0
-#define CONFIG_NVDEC 0
-#define CONFIG_NVENC 0
-#define CONFIG_VAAPI 0
-#define CONFIG_VDPAU 0
-#define CONFIG_VIDEOTOOLBOX 0
-#define CONFIG_V4L2_M2M 0
-#define CONFIG_XVMC 0
-#define CONFIG_FTRAPV 0
-#define CONFIG_GRAY 0
-#define CONFIG_HARDCODED_TABLES 0
-#define CONFIG_OMX_RPI 0
-#define CONFIG_RUNTIME_CPUDETECT 1
-#define CONFIG_SAFE_BITSTREAM_READER 1
-#define CONFIG_SHARED 0
-#define CONFIG_SMALL 1
-#define CONFIG_STATIC 1
-#define CONFIG_SWSCALE_ALPHA 1
-#define CONFIG_GPL 1
-#define CONFIG_NONFREE 0
-#define CONFIG_VERSION3 0
-#define CONFIG_AVDEVICE 1
-#define CONFIG_AVFILTER 0
-#define CONFIG_SWSCALE 1
-#define CONFIG_POSTPROC 0
-#define CONFIG_AVFORMAT 1
-#define CONFIG_AVCODEC 1
-#define CONFIG_SWRESAMPLE 1
-#define CONFIG_AVRESAMPLE 0
-#define CONFIG_AVUTIL 1
-#define CONFIG_FFPLAY 0
-#define CONFIG_FFPROBE 0
-#define CONFIG_FFMPEG 0
-#define CONFIG_DCT 1
-#define CONFIG_DWT 1
-#define CONFIG_ERROR_RESILIENCE 1
-#define CONFIG_FAAN 1
-#define CONFIG_FAST_UNALIGNED 1
-#define CONFIG_FFT 1
-#define CONFIG_LSP 1
-#define CONFIG_LZO 1
-#define CONFIG_MDCT 1
-#define CONFIG_PIXELUTILS 0
-#define CONFIG_NETWORK 0
-#define CONFIG_RDFT 1
-#define CONFIG_AUTODETECT 0
-#define CONFIG_FONTCONFIG 0
-#define CONFIG_LINUX_PERF 0
-#define CONFIG_MEMORY_POISONING 0
-#define CONFIG_NEON_CLOBBER_TEST 0
-#define CONFIG_OSSFUZZ 0
-#define CONFIG_PIC 0
-#define CONFIG_THUMB 0
-#define CONFIG_VALGRIND_BACKTRACE 0
-#define CONFIG_XMM_CLOBBER_TEST 0
-#define CONFIG_BSFS 1
-#define CONFIG_DECODERS 1
-#define CONFIG_ENCODERS 0
-#define CONFIG_HWACCELS 0
-#define CONFIG_PARSERS 1
-#define CONFIG_INDEVS 0
-#define CONFIG_OUTDEVS 0
-#define CONFIG_FILTERS 0
-#define CONFIG_DEMUXERS 1
-#define CONFIG_MUXERS 0
-#define CONFIG_PROTOCOLS 1
-#define CONFIG_AANDCTTABLES 1
-#define CONFIG_AC3DSP 1
-#define CONFIG_ADTS_HEADER 1
-#define CONFIG_AUDIO_FRAME_QUEUE 1
-#define CONFIG_AUDIODSP 1
-#define CONFIG_BLOCKDSP 1
-#define CONFIG_BSWAPDSP 1
-#define CONFIG_CABAC 1
-#define CONFIG_CBS 1
-#define CONFIG_CBS_AV1 1
-#define CONFIG_CBS_H264 1
-#define CONFIG_CBS_H265 1
-#define CONFIG_CBS_JPEG 0
-#define CONFIG_CBS_MPEG2 1
-#define CONFIG_CBS_VP9 1
-#define CONFIG_DIRAC_PARSE 1
-#define CONFIG_DNN 0
-#define CONFIG_DVPROFILE 1
-#define CONFIG_EXIF 1
-#define CONFIG_FAANDCT 1
-#define CONFIG_FAANIDCT 1
-#define CONFIG_FDCTDSP 1
-#define CONFIG_FLACDSP 1
-#define CONFIG_FMTCONVERT 1
-#define CONFIG_FRAME_THREAD_ENCODER 0
-#define CONFIG_G722DSP 1
-#define CONFIG_GOLOMB 1
-#define CONFIG_GPLV3 0
-#define CONFIG_H263DSP 1
-#define CONFIG_H264CHROMA 1
-#define CONFIG_H264DSP 1
-#define CONFIG_H264PARSE 1
-#define CONFIG_H264PRED 1
-#define CONFIG_H264QPEL 1
-#define CONFIG_HEVCPARSE 1
-#define CONFIG_HPELDSP 1
-#define CONFIG_HUFFMAN 1
-#define CONFIG_HUFFYUVDSP 1
-#define CONFIG_HUFFYUVENCDSP 0
-#define CONFIG_IDCTDSP 1
-#define CONFIG_IIRFILTER 0
-#define CONFIG_MDCT15 1
-#define CONFIG_INTRAX8 1
-#define CONFIG_ISO_MEDIA 1
-#define CONFIG_IVIDSP 0
-#define CONFIG_JPEGTABLES 1
-#define CONFIG_LGPLV3 0
-#define CONFIG_LIBX262 0
-#define CONFIG_LLAUDDSP 1
-#define CONFIG_LLVIDDSP 1
-#define CONFIG_LLVIDENCDSP 0
-#define CONFIG_LPC 0
-#define CONFIG_LZF 1
-#define CONFIG_ME_CMP 1
-#define CONFIG_MPEG_ER 1
-#define CONFIG_MPEGAUDIO 1
-#define CONFIG_MPEGAUDIODSP 1
-#define CONFIG_MPEGAUDIOHEADER 1
-#define CONFIG_MPEGVIDEO 1
-#define CONFIG_MPEGVIDEOENC 1
-#define CONFIG_MSS34DSP 1
-#define CONFIG_PIXBLOCKDSP 1
-#define CONFIG_QPELDSP 1
-#define CONFIG_QSV 0
-#define CONFIG_QSVDEC 0
-#define CONFIG_QSVENC 0
-#define CONFIG_QSVVPP 0
-#define CONFIG_RANGECODER 1
-#define CONFIG_RIFFDEC 1
-#define CONFIG_RIFFENC 0
-#define CONFIG_RTPDEC 0
-#define CONFIG_RTPENC_CHAIN 0
-#define CONFIG_RV34DSP 1
-#define CONFIG_SCENE_SAD 0
-#define CONFIG_SINEWIN 1
-#define CONFIG_SNAPPY 1
-#define CONFIG_SRTP 0
-#define CONFIG_STARTCODE 1
-#define CONFIG_TEXTUREDSP 1
-#define CONFIG_TEXTUREDSPENC 0
-#define CONFIG_TPELDSP 1
-#define CONFIG_VAAPI_1 0
-#define CONFIG_VAAPI_ENCODE 0
-#define CONFIG_VC1DSP 1
-#define CONFIG_VIDEODSP 1
-#define CONFIG_VP3DSP 1
-#define CONFIG_VP56DSP 1
-#define CONFIG_VP8DSP 1
-#define CONFIG_WMA_FREQS 1
-#define CONFIG_WMV2DSP 1
-#define CONFIG_AAC_ADTSTOASC_BSF 1
-#define CONFIG_AV1_METADATA_BSF 1
-#define CONFIG_CHOMP_BSF 1
-#define CONFIG_DUMP_EXTRADATA_BSF 1
-#define CONFIG_DCA_CORE_BSF 1
-#define CONFIG_EAC3_CORE_BSF 1
-#define CONFIG_EXTRACT_EXTRADATA_BSF 1
-#define CONFIG_FILTER_UNITS_BSF 1
-#define CONFIG_H264_METADATA_BSF 1
-#define CONFIG_H264_MP4TOANNEXB_BSF 1
-#define CONFIG_H264_REDUNDANT_PPS_BSF 1
-#define CONFIG_HAPQA_EXTRACT_BSF 1
-#define CONFIG_HEVC_METADATA_BSF 1
-#define CONFIG_HEVC_MP4TOANNEXB_BSF 1
-#define CONFIG_IMX_DUMP_HEADER_BSF 1
-#define CONFIG_MJPEG2JPEG_BSF 1
-#define CONFIG_MJPEGA_DUMP_HEADER_BSF 1
-#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 1
-#define CONFIG_MPEG2_METADATA_BSF 1
-#define CONFIG_MPEG4_UNPACK_BFRAMES_BSF 1
-#define CONFIG_MOV2TEXTSUB_BSF 1
-#define CONFIG_NOISE_BSF 1
-#define CONFIG_NULL_BSF 1
-#define CONFIG_PRORES_METADATA_BSF 1
-#define CONFIG_REMOVE_EXTRADATA_BSF 1
-#define CONFIG_TEXT2MOVSUB_BSF 1
-#define CONFIG_TRACE_HEADERS_BSF 1
-#define CONFIG_VP9_METADATA_BSF 1
-#define CONFIG_VP9_RAW_REORDER_BSF 1
-#define CONFIG_VP9_SUPERFRAME_BSF 1
-#define CONFIG_VP9_SUPERFRAME_SPLIT_BSF 1
-#define CONFIG_AASC_DECODER 1
-#define CONFIG_AIC_DECODER 1
-#define CONFIG_ALIAS_PIX_DECODER 1
-#define CONFIG_AMV_DECODER 1
-#define CONFIG_ANM_DECODER 1
-#define CONFIG_ANSI_DECODER 1
-#define CONFIG_APNG_DECODER 1
-#define CONFIG_ASV1_DECODER 1
-#define CONFIG_ASV2_DECODER 1
-#define CONFIG_AURA_DECODER 1
-#define CONFIG_AURA2_DECODER 1
-#define CONFIG_AVRP_DECODER 1
-#define CONFIG_AVRN_DECODER 1
-#define CONFIG_AVS_DECODER 1
-#define CONFIG_AVUI_DECODER 1
-#define CONFIG_AYUV_DECODER 1
-#define CONFIG_BETHSOFTVID_DECODER 1
-#define CONFIG_BFI_DECODER 1
-#define CONFIG_BINK_DECODER 1
-#define CONFIG_BITPACKED_DECODER 1
-#define CONFIG_BMP_DECODER 1
-#define CONFIG_BMV_VIDEO_DECODER 1
-#define CONFIG_BRENDER_PIX_DECODER 1
-#define CONFIG_C93_DECODER 1
-#define CONFIG_CAVS_DECODER 1
-#define CONFIG_CDGRAPHICS_DECODER 1
-#define CONFIG_CDXL_DECODER 1
-#define CONFIG_CFHD_DECODER 1
-#define CONFIG_CINEPAK_DECODER 1
-#define CONFIG_CLEARVIDEO_DECODER 1
-#define CONFIG_CLJR_DECODER 1
-#define CONFIG_CLLC_DECODER 1
-#define CONFIG_COMFORTNOISE_DECODER 1
-#define CONFIG_CPIA_DECODER 1
-#define CONFIG_CSCD_DECODER 1
-#define CONFIG_CYUV_DECODER 1
-#define CONFIG_DDS_DECODER 1
-#define CONFIG_DFA_DECODER 1
-#define CONFIG_DIRAC_DECODER 1
-#define CONFIG_DNXHD_DECODER 1
-#define CONFIG_DPX_DECODER 1
-#define CONFIG_DSICINVIDEO_DECODER 1
-#define CONFIG_DVAUDIO_DECODER 1
-#define CONFIG_DVVIDEO_DECODER 1
-#define CONFIG_DXA_DECODER 1
-#define CONFIG_DXTORY_DECODER 1
-#define CONFIG_DXV_DECODER 1
-#define CONFIG_EACMV_DECODER 1
-#define CONFIG_EAMAD_DECODER 1
-#define CONFIG_EATGQ_DECODER 1
-#define CONFIG_EATGV_DECODER 1
-#define CONFIG_EATQI_DECODER 1
-#define CONFIG_EIGHTBPS_DECODER 1
-#define CONFIG_EIGHTSVX_EXP_DECODER 1
-#define CONFIG_EIGHTSVX_FIB_DECODER 1
-#define CONFIG_ESCAPE124_DECODER 1
-#define CONFIG_ESCAPE130_DECODER 1
-#define CONFIG_EXR_DECODER 1
-#define CONFIG_FFV1_DECODER 1
-#define CONFIG_FFVHUFF_DECODER 1
-#define CONFIG_FIC_DECODER 1
-#define CONFIG_FITS_DECODER 1
-#define CONFIG_FLASHSV_DECODER 1
-#define CONFIG_FLASHSV2_DECODER 1
-#define CONFIG_FLIC_DECODER 1
-#define CONFIG_FLV_DECODER 1
-#define CONFIG_FMVC_DECODER 1
-#define CONFIG_FOURXM_DECODER 1
-#define CONFIG_FRAPS_DECODER 1
-#define CONFIG_FRWU_DECODER 1
-#define CONFIG_G2M_DECODER 1
-#define CONFIG_GDV_DECODER 1
-#define CONFIG_GIF_DECODER 1
-#define CONFIG_H261_DECODER 1
-#define CONFIG_H263_DECODER 1
-#define CONFIG_H263I_DECODER 1
-#define CONFIG_H263P_DECODER 1
-#define CONFIG_H263_V4L2M2M_DECODER 0
-#define CONFIG_H264_DECODER 1
-#define CONFIG_H264_CRYSTALHD_DECODER 0
-#define CONFIG_H264_V4L2M2M_DECODER 0
-#define CONFIG_H264_MEDIACODEC_DECODER 0
-#define CONFIG_H264_MMAL_DECODER 0
-#define CONFIG_H264_QSV_DECODER 0
-#define CONFIG_H264_RKMPP_DECODER 0
-#define CONFIG_HAP_DECODER 1
-#define CONFIG_HEVC_DECODER 1
-#define CONFIG_HEVC_QSV_DECODER 0
-#define CONFIG_HEVC_RKMPP_DECODER 0
-#define CONFIG_HEVC_V4L2M2M_DECODER 0
-#define CONFIG_HNM4_VIDEO_DECODER 1
-#define CONFIG_HQ_HQA_DECODER 1
-#define CONFIG_HQX_DECODER 1
-#define CONFIG_HUFFYUV_DECODER 1
-#define CONFIG_IDCIN_DECODER 1
-#define CONFIG_IFF_ILBM_DECODER 1
-#define CONFIG_IMM4_DECODER 1
-#define CONFIG_INDEO2_DECODER 0
-#define CONFIG_INDEO3_DECODER 0
-#define CONFIG_INDEO4_DECODER 0
-#define CONFIG_INDEO5_DECODER 0
-#define CONFIG_INTERPLAY_VIDEO_DECODER 1
-#define CONFIG_JPEG2000_DECODER 1
-#define CONFIG_JPEGLS_DECODER 1
-#define CONFIG_JV_DECODER 1
-#define CONFIG_KGV1_DECODER 1
-#define CONFIG_KMVC_DECODER 1
-#define CONFIG_LAGARITH_DECODER 1
-#define CONFIG_LOCO_DECODER 1
-#define CONFIG_M101_DECODER 1
-#define CONFIG_MAGICYUV_DECODER 1
-#define CONFIG_MDEC_DECODER 1
-#define CONFIG_MIMIC_DECODER 1
-#define CONFIG_MJPEG_DECODER 1
-#define CONFIG_MJPEGB_DECODER 1
-#define CONFIG_MMVIDEO_DECODER 1
-#define CONFIG_MOTIONPIXELS_DECODER 1
-#define CONFIG_MPEG1VIDEO_DECODER 1
-#define CONFIG_MPEG2VIDEO_DECODER 1
-#define CONFIG_MPEG4_DECODER 1
-#define CONFIG_MPEG4_CRYSTALHD_DECODER 0
-#define CONFIG_MPEG4_V4L2M2M_DECODER 0
-#define CONFIG_MPEG4_MMAL_DECODER 0
-#define CONFIG_MPEGVIDEO_DECODER 1
-#define CONFIG_MPEG1_V4L2M2M_DECODER 0
-#define CONFIG_MPEG2_MMAL_DECODER 0
-#define CONFIG_MPEG2_CRYSTALHD_DECODER 0
-#define CONFIG_MPEG2_V4L2M2M_DECODER 0
-#define CONFIG_MPEG2_QSV_DECODER 0
-#define CONFIG_MPEG2_MEDIACODEC_DECODER 0
-#define CONFIG_MSA1_DECODER 1
-#define CONFIG_MSCC_DECODER 1
-#define CONFIG_MSMPEG4V1_DECODER 1
-#define CONFIG_MSMPEG4V2_DECODER 1
-#define CONFIG_MSMPEG4V3_DECODER 1
-#define CONFIG_MSMPEG4_CRYSTALHD_DECODER 0
-#define CONFIG_MSRLE_DECODER 1
-#define CONFIG_MSS1_DECODER 1
-#define CONFIG_MSS2_DECODER 1
-#define CONFIG_MSVIDEO1_DECODER 1
-#define CONFIG_MSZH_DECODER 1
-#define CONFIG_MTS2_DECODER 1
-#define CONFIG_MVC1_DECODER 1
-#define CONFIG_MVC2_DECODER 1
-#define CONFIG_MWSC_DECODER 1
-#define CONFIG_MXPEG_DECODER 1
-#define CONFIG_NUV_DECODER 1
-#define CONFIG_PAF_VIDEO_DECODER 1
-#define CONFIG_PAM_DECODER 1
-#define CONFIG_PBM_DECODER 1
-#define CONFIG_PCX_DECODER 1
-#define CONFIG_PGM_DECODER 1
-#define CONFIG_PGMYUV_DECODER 1
-#define CONFIG_PICTOR_DECODER 1
-#define CONFIG_PIXLET_DECODER 1
-#define CONFIG_PNG_DECODER 1
-#define CONFIG_PPM_DECODER 1
-#define CONFIG_PRORES_DECODER 1
-#define CONFIG_PROSUMER_DECODER 1
-#define CONFIG_PSD_DECODER 1
-#define CONFIG_PTX_DECODER 1
-#define CONFIG_QDRAW_DECODER 1
-#define CONFIG_QPEG_DECODER 1
-#define CONFIG_QTRLE_DECODER 1
-#define CONFIG_R10K_DECODER 1
-#define CONFIG_R210_DECODER 1
-#define CONFIG_RASC_DECODER 1
-#define CONFIG_RAWVIDEO_DECODER 1
-#define CONFIG_RL2_DECODER 1
-#define CONFIG_ROQ_DECODER 1
-#define CONFIG_RPZA_DECODER 1
-#define CONFIG_RSCC_DECODER 1
-#define CONFIG_RV10_DECODER 1
-#define CONFIG_RV20_DECODER 1
-#define CONFIG_RV30_DECODER 1
-#define CONFIG_RV40_DECODER 1
-#define CONFIG_S302M_DECODER 1
-#define CONFIG_SANM_DECODER 1
-#define CONFIG_SCPR_DECODER 1
-#define CONFIG_SCREENPRESSO_DECODER 1
-#define CONFIG_SDX2_DPCM_DECODER 1
-#define CONFIG_SGI_DECODER 1
-#define CONFIG_SGIRLE_DECODER 1
-#define CONFIG_SHEERVIDEO_DECODER 1
-#define CONFIG_SMACKER_DECODER 1
-#define CONFIG_SMC_DECODER 1
-#define CONFIG_SMVJPEG_DECODER 1
-#define CONFIG_SNOW_DECODER 1
-#define CONFIG_SP5X_DECODER 1
-#define CONFIG_SPEEDHQ_DECODER 1
-#define CONFIG_SRGC_DECODER 1
-#define CONFIG_SUNRAST_DECODER 1
-#define CONFIG_SVQ1_DECODER 1
-#define CONFIG_SVQ3_DECODER 1
-#define CONFIG_TARGA_DECODER 1
-#define CONFIG_TARGA_Y216_DECODER 1
-#define CONFIG_TDSC_DECODER 1
-#define CONFIG_THEORA_DECODER 1
-#define CONFIG_THP_DECODER 1
-#define CONFIG_TIERTEXSEQVIDEO_DECODER 1
-#define CONFIG_TIFF_DECODER 1
-#define CONFIG_TMV_DECODER 1
-#define CONFIG_TRUEMOTION1_DECODER 1
-#define CONFIG_TRUEMOTION2_DECODER 1
-#define CONFIG_TRUEMOTION2RT_DECODER 1
-#define CONFIG_TSCC_DECODER 1
-#define CONFIG_TSCC2_DECODER 1
-#define CONFIG_TXD_DECODER 1
-#define CONFIG_ULTI_DECODER 1
-#define CONFIG_UTVIDEO_DECODER 1
-#define CONFIG_V210_DECODER 1
-#define CONFIG_V210X_DECODER 1
-#define CONFIG_V308_DECODER 1
-#define CONFIG_V408_DECODER 1
-#define CONFIG_V410_DECODER 1
-#define CONFIG_VB_DECODER 1
-#define CONFIG_VBLE_DECODER 1
-#define CONFIG_VC1_DECODER 1
-#define CONFIG_VC1_CRYSTALHD_DECODER 0
-#define CONFIG_VC1IMAGE_DECODER 1
-#define CONFIG_VC1_MMAL_DECODER 0
-#define CONFIG_VC1_QSV_DECODER 0
-#define CONFIG_VC1_V4L2M2M_DECODER 0
-#define CONFIG_VCR1_DECODER 1
-#define CONFIG_VMDVIDEO_DECODER 1
-#define CONFIG_VMNC_DECODER 1
-#define CONFIG_VP3_DECODER 1
-#define CONFIG_VP5_DECODER 1
-#define CONFIG_VP6_DECODER 1
-#define CONFIG_VP6A_DECODER 1
-#define CONFIG_VP6F_DECODER 1
-#define CONFIG_VP7_DECODER 1
-#define CONFIG_VP8_DECODER 1
-#define CONFIG_VP8_RKMPP_DECODER 0
-#define CONFIG_VP8_V4L2M2M_DECODER 0
-#define CONFIG_VP9_DECODER 1
-#define CONFIG_VP9_RKMPP_DECODER 0
-#define CONFIG_VP9_V4L2M2M_DECODER 0
-#define CONFIG_VQA_DECODER 1
-#define CONFIG_WEBP_DECODER 1
-#define CONFIG_WCMV_DECODER 1
-#define CONFIG_WRAPPED_AVFRAME_DECODER 1
-#define CONFIG_WMV1_DECODER 1
-#define CONFIG_WMV2_DECODER 1
-#define CONFIG_WMV3_DECODER 1
-#define CONFIG_WMV3_CRYSTALHD_DECODER 0
-#define CONFIG_WMV3IMAGE_DECODER 1
-#define CONFIG_WNV1_DECODER 1
-#define CONFIG_XAN_WC3_DECODER 1
-#define CONFIG_XAN_WC4_DECODER 1
-#define CONFIG_XBM_DECODER 1
-#define CONFIG_XFACE_DECODER 1
-#define CONFIG_XL_DECODER 1
-#define CONFIG_XPM_DECODER 1
-#define CONFIG_XWD_DECODER 1
-#define CONFIG_Y41P_DECODER 1
-#define CONFIG_YLC_DECODER 1
-#define CONFIG_YOP_DECODER 1
-#define CONFIG_YUV4_DECODER 1
-#define CONFIG_ZERO12V_DECODER 1
-#define CONFIG_ZEROCODEC_DECODER 1
-#define CONFIG_ZLIB_DECODER 1
-#define CONFIG_ZMBV_DECODER 1
-#define CONFIG_AAC_DECODER 1
-#define CONFIG_AAC_FIXED_DECODER 1
-#define CONFIG_AAC_LATM_DECODER 1
-#define CONFIG_AC3_DECODER 1
-#define CONFIG_AC3_FIXED_DECODER 1
-#define CONFIG_ALAC_DECODER 1
-#define CONFIG_ALS_DECODER 1
-#define CONFIG_AMRNB_DECODER 1
-#define CONFIG_AMRWB_DECODER 1
-#define CONFIG_APE_DECODER 1
-#define CONFIG_APTX_DECODER 1
-#define CONFIG_APTX_HD_DECODER 1
-#define CONFIG_ATRAC1_DECODER 1
-#define CONFIG_ATRAC3_DECODER 1
-#define CONFIG_ATRAC3AL_DECODER 1
-#define CONFIG_ATRAC3P_DECODER 0
-#define CONFIG_ATRAC3PAL_DECODER 1
-#define CONFIG_ATRAC9_DECODER 1
-#define CONFIG_BINKAUDIO_DCT_DECODER 1
-#define CONFIG_BINKAUDIO_RDFT_DECODER 1
-#define CONFIG_BMV_AUDIO_DECODER 1
-#define CONFIG_COOK_DECODER 1
-#define CONFIG_DCA_DECODER 1
-#define CONFIG_DOLBY_E_DECODER 1
-#define CONFIG_DSD_LSBF_DECODER 1
-#define CONFIG_DSD_MSBF_DECODER 1
-#define CONFIG_DSD_LSBF_PLANAR_DECODER 1
-#define CONFIG_DSD_MSBF_PLANAR_DECODER 1
-#define CONFIG_DSICINAUDIO_DECODER 1
-#define CONFIG_DSS_SP_DECODER 1
-#define CONFIG_DST_DECODER 1
-#define CONFIG_EAC3_DECODER 1
-#define CONFIG_EVRC_DECODER 1
-#define CONFIG_FFWAVESYNTH_DECODER 1
-#define CONFIG_FLAC_DECODER 1
-#define CONFIG_G723_1_DECODER 1
-#define CONFIG_G729_DECODER 1
-#define CONFIG_GSM_DECODER 1
-#define CONFIG_GSM_MS_DECODER 1
-#define CONFIG_IAC_DECODER 1
-#define CONFIG_ILBC_DECODER 1
-#define CONFIG_IMC_DECODER 1
-#define CONFIG_INTERPLAY_ACM_DECODER 1
-#define CONFIG_MACE3_DECODER 1
-#define CONFIG_MACE6_DECODER 1
-#define CONFIG_METASOUND_DECODER 1
-#define CONFIG_MLP_DECODER 1
-#define CONFIG_MP1_DECODER 1
-#define CONFIG_MP1FLOAT_DECODER 1
-#define CONFIG_MP2_DECODER 1
-#define CONFIG_MP2FLOAT_DECODER 1
-#define CONFIG_MP3FLOAT_DECODER 1
-#define CONFIG_MP3_DECODER 1
-#define CONFIG_MP3ADUFLOAT_DECODER 1
-#define CONFIG_MP3ADU_DECODER 1
-#define CONFIG_MP3ON4FLOAT_DECODER 1
-#define CONFIG_MP3ON4_DECODER 1
-#define CONFIG_MPC7_DECODER 1
-#define CONFIG_MPC8_DECODER 1
-#define CONFIG_NELLYMOSER_DECODER 1
-#define CONFIG_ON2AVC_DECODER 1
-#define CONFIG_OPUS_DECODER 1
-#define CONFIG_PAF_AUDIO_DECODER 1
-#define CONFIG_QCELP_DECODER 1
-#define CONFIG_QDM2_DECODER 1
-#define CONFIG_QDMC_DECODER 1
-#define CONFIG_RA_144_DECODER 1
-#define CONFIG_RA_288_DECODER 1
-#define CONFIG_RALF_DECODER 1
-#define CONFIG_SBC_DECODER 1
-#define CONFIG_SHORTEN_DECODER 1
-#define CONFIG_SIPR_DECODER 1
-#define CONFIG_SMACKAUD_DECODER 1
-#define CONFIG_SONIC_DECODER 1
-#define CONFIG_TAK_DECODER 1
-#define CONFIG_TRUEHD_DECODER 1
-#define CONFIG_TRUESPEECH_DECODER 1
-#define CONFIG_TTA_DECODER 1
-#define CONFIG_TWINVQ_DECODER 0
-#define CONFIG_VMDAUDIO_DECODER 1
-#define CONFIG_VORBIS_DECODER 1
-#define CONFIG_WAVPACK_DECODER 1
-#define CONFIG_WMALOSSLESS_DECODER 1
-#define CONFIG_WMAPRO_DECODER 1
-#define CONFIG_WMAV1_DECODER 1
-#define CONFIG_WMAV2_DECODER 1
-#define CONFIG_WMAVOICE_DECODER 1
-#define CONFIG_WS_SND1_DECODER 1
-#define CONFIG_XMA1_DECODER 1
-#define CONFIG_XMA2_DECODER 1
-#define CONFIG_PCM_ALAW_DECODER 1
-#define CONFIG_PCM_BLURAY_DECODER 1
-#define CONFIG_PCM_DVD_DECODER 1
-#define CONFIG_PCM_F16LE_DECODER 1
-#define CONFIG_PCM_F24LE_DECODER 1
-#define CONFIG_PCM_F32BE_DECODER 1
-#define CONFIG_PCM_F32LE_DECODER 1
-#define CONFIG_PCM_F64BE_DECODER 1
-#define CONFIG_PCM_F64LE_DECODER 1
-#define CONFIG_PCM_LXF_DECODER 1
-#define CONFIG_PCM_MULAW_DECODER 1
-#define CONFIG_PCM_S8_DECODER 1
-#define CONFIG_PCM_S8_PLANAR_DECODER 1
-#define CONFIG_PCM_S16BE_DECODER 1
-#define CONFIG_PCM_S16BE_PLANAR_DECODER 1
-#define CONFIG_PCM_S16LE_DECODER 1
-#define CONFIG_PCM_S16LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S24BE_DECODER 1
-#define CONFIG_PCM_S24DAUD_DECODER 1
-#define CONFIG_PCM_S24LE_DECODER 1
-#define CONFIG_PCM_S24LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S32BE_DECODER 1
-#define CONFIG_PCM_S32LE_DECODER 1
-#define CONFIG_PCM_S32LE_PLANAR_DECODER 1
-#define CONFIG_PCM_S64BE_DECODER 1
-#define CONFIG_PCM_S64LE_DECODER 1
-#define CONFIG_PCM_U8_DECODER 1
-#define CONFIG_PCM_U16BE_DECODER 1
-#define CONFIG_PCM_U16LE_DECODER 1
-#define CONFIG_PCM_U24BE_DECODER 1
-#define CONFIG_PCM_U24LE_DECODER 1
-#define CONFIG_PCM_U32BE_DECODER 1
-#define CONFIG_PCM_U32LE_DECODER 1
-#define CONFIG_PCM_VIDC_DECODER 1
-#define CONFIG_PCM_ZORK_DECODER 1
-#define CONFIG_GREMLIN_DPCM_DECODER 1
-#define CONFIG_INTERPLAY_DPCM_DECODER 1
-#define CONFIG_ROQ_DPCM_DECODER 1
-#define CONFIG_SOL_DPCM_DECODER 1
-#define CONFIG_XAN_DPCM_DECODER 1
-#define CONFIG_ADPCM_4XM_DECODER 1
-#define CONFIG_ADPCM_ADX_DECODER 1
-#define CONFIG_ADPCM_AFC_DECODER 1
-#define CONFIG_ADPCM_AICA_DECODER 1
-#define CONFIG_ADPCM_CT_DECODER 1
-#define CONFIG_ADPCM_DTK_DECODER 1
-#define CONFIG_ADPCM_EA_DECODER 1
-#define CONFIG_ADPCM_EA_MAXIS_XA_DECODER 1
-#define CONFIG_ADPCM_EA_R1_DECODER 1
-#define CONFIG_ADPCM_EA_R2_DECODER 1
-#define CONFIG_ADPCM_EA_R3_DECODER 1
-#define CONFIG_ADPCM_EA_XAS_DECODER 1
-#define CONFIG_ADPCM_G722_DECODER 1
-#define CONFIG_ADPCM_G726_DECODER 1
-#define CONFIG_ADPCM_G726LE_DECODER 1
-#define CONFIG_ADPCM_IMA_AMV_DECODER 1
-#define CONFIG_ADPCM_IMA_APC_DECODER 1
-#define CONFIG_ADPCM_IMA_DAT4_DECODER 1
-#define CONFIG_ADPCM_IMA_DK3_DECODER 1
-#define CONFIG_ADPCM_IMA_DK4_DECODER 1
-#define CONFIG_ADPCM_IMA_EA_EACS_DECODER 1
-#define CONFIG_ADPCM_IMA_EA_SEAD_DECODER 1
-#define CONFIG_ADPCM_IMA_ISS_DECODER 1
-#define CONFIG_ADPCM_IMA_OKI_DECODER 1
-#define CONFIG_ADPCM_IMA_QT_DECODER 1
-#define CONFIG_ADPCM_IMA_RAD_DECODER 1
-#define CONFIG_ADPCM_IMA_SMJPEG_DECODER 1
-#define CONFIG_ADPCM_IMA_WAV_DECODER 1
-#define CONFIG_ADPCM_IMA_WS_DECODER 1
-#define CONFIG_ADPCM_MS_DECODER 1
-#define CONFIG_ADPCM_MTAF_DECODER 1
-#define CONFIG_ADPCM_PSX_DECODER 1
-#define CONFIG_ADPCM_SBPRO_2_DECODER 1
-#define CONFIG_ADPCM_SBPRO_3_DECODER 1
-#define CONFIG_ADPCM_SBPRO_4_DECODER 1
-#define CONFIG_ADPCM_SWF_DECODER 1
-#define CONFIG_ADPCM_THP_DECODER 1
-#define CONFIG_ADPCM_THP_LE_DECODER 1
-#define CONFIG_ADPCM_VIMA_DECODER 1
-#define CONFIG_ADPCM_XA_DECODER 1
-#define CONFIG_ADPCM_YAMAHA_DECODER 1
-#define CONFIG_SSA_DECODER 1
-#define CONFIG_ASS_DECODER 1
-#define CONFIG_CCAPTION_DECODER 1
-#define CONFIG_DVBSUB_DECODER 1
-#define CONFIG_DVDSUB_DECODER 1
-#define CONFIG_JACOSUB_DECODER 1
-#define CONFIG_MICRODVD_DECODER 1
-#define CONFIG_MOVTEXT_DECODER 1
-#define CONFIG_MPL2_DECODER 1
-#define CONFIG_PGSSUB_DECODER 1
-#define CONFIG_PJS_DECODER 1
-#define CONFIG_REALTEXT_DECODER 1
-#define CONFIG_SAMI_DECODER 1
-#define CONFIG_SRT_DECODER 1
-#define CONFIG_STL_DECODER 1
-#define CONFIG_SUBRIP_DECODER 1
-#define CONFIG_SUBVIEWER_DECODER 1
-#define CONFIG_SUBVIEWER1_DECODER 1
-#define CONFIG_TEXT_DECODER 1
-#define CONFIG_VPLAYER_DECODER 1
-#define CONFIG_WEBVTT_DECODER 1
-#define CONFIG_XSUB_DECODER 1
-#define CONFIG_AAC_AT_DECODER 0
-#define CONFIG_AC3_AT_DECODER 0
-#define CONFIG_ADPCM_IMA_QT_AT_DECODER 0
-#define CONFIG_ALAC_AT_DECODER 0
-#define CONFIG_AMR_NB_AT_DECODER 0
-#define CONFIG_EAC3_AT_DECODER 0
-#define CONFIG_GSM_MS_AT_DECODER 0
-#define CONFIG_ILBC_AT_DECODER 0
-#define CONFIG_MP1_AT_DECODER 0
-#define CONFIG_MP2_AT_DECODER 0
-#define CONFIG_MP3_AT_DECODER 0
-#define CONFIG_PCM_ALAW_AT_DECODER 0
-#define CONFIG_PCM_MULAW_AT_DECODER 0
-#define CONFIG_QDMC_AT_DECODER 0
-#define CONFIG_QDM2_AT_DECODER 0
-#define CONFIG_LIBAOM_AV1_DECODER 0
-#define CONFIG_LIBCELT_DECODER 0
-#define CONFIG_LIBCODEC2_DECODER 0
-#define CONFIG_LIBDAV1D_DECODER 0
-#define CONFIG_LIBDAVS2_DECODER 0
-#define CONFIG_LIBFDK_AAC_DECODER 0
-#define CONFIG_LIBGSM_DECODER 0
-#define CONFIG_LIBGSM_MS_DECODER 0
-#define CONFIG_LIBILBC_DECODER 0
-#define CONFIG_LIBOPENCORE_AMRNB_DECODER 0
-#define CONFIG_LIBOPENCORE_AMRWB_DECODER 0
-#define CONFIG_LIBOPENJPEG_DECODER 0
-#define CONFIG_LIBOPUS_DECODER 0
-#define CONFIG_LIBRSVG_DECODER 0
-#define CONFIG_LIBSPEEX_DECODER 0
-#define CONFIG_LIBVORBIS_DECODER 0
-#define CONFIG_LIBVPX_VP8_DECODER 0
-#define CONFIG_LIBVPX_VP9_DECODER 0
-#define CONFIG_LIBZVBI_TELETEXT_DECODER 0
-#define CONFIG_BINTEXT_DECODER 1
-#define CONFIG_XBIN_DECODER 1
-#define CONFIG_IDF_DECODER 1
-#define CONFIG_LIBOPENH264_DECODER 0
-#define CONFIG_H264_CUVID_DECODER 0
-#define CONFIG_HEVC_CUVID_DECODER 0
-#define CONFIG_HEVC_MEDIACODEC_DECODER 0
-#define CONFIG_MJPEG_CUVID_DECODER 0
-#define CONFIG_MPEG1_CUVID_DECODER 0
-#define CONFIG_MPEG2_CUVID_DECODER 0
-#define CONFIG_MPEG4_CUVID_DECODER 0
-#define CONFIG_MPEG4_MEDIACODEC_DECODER 0
-#define CONFIG_VC1_CUVID_DECODER 0
-#define CONFIG_VP8_CUVID_DECODER 0
-#define CONFIG_VP8_MEDIACODEC_DECODER 0
-#define CONFIG_VP8_QSV_DECODER 0
-#define CONFIG_VP9_CUVID_DECODER 0
-#define CONFIG_VP9_MEDIACODEC_DECODER 0
-#define CONFIG_A64MULTI_ENCODER 0
-#define CONFIG_A64MULTI5_ENCODER 0
-#define CONFIG_ALIAS_PIX_ENCODER 0
-#define CONFIG_AMV_ENCODER 0
-#define CONFIG_APNG_ENCODER 0
-#define CONFIG_ASV1_ENCODER 0
-#define CONFIG_ASV2_ENCODER 0
-#define CONFIG_AVRP_ENCODER 0
-#define CONFIG_AVUI_ENCODER 0
-#define CONFIG_AYUV_ENCODER 0
-#define CONFIG_BMP_ENCODER 0
-#define CONFIG_CINEPAK_ENCODER 0
-#define CONFIG_CLJR_ENCODER 0
-#define CONFIG_COMFORTNOISE_ENCODER 0
-#define CONFIG_DNXHD_ENCODER 0
-#define CONFIG_DPX_ENCODER 0
-#define CONFIG_DVVIDEO_ENCODER 0
-#define CONFIG_FFV1_ENCODER 0
-#define CONFIG_FFVHUFF_ENCODER 0
-#define CONFIG_FITS_ENCODER 0
-#define CONFIG_FLASHSV_ENCODER 0
-#define CONFIG_FLASHSV2_ENCODER 0
-#define CONFIG_FLV_ENCODER 0
-#define CONFIG_GIF_ENCODER 0
-#define CONFIG_H261_ENCODER 0
-#define CONFIG_H263_ENCODER 0
-#define CONFIG_H263P_ENCODER 0
-#define CONFIG_HAP_ENCODER 0
-#define CONFIG_HUFFYUV_ENCODER 0
-#define CONFIG_JPEG2000_ENCODER 0
-#define CONFIG_JPEGLS_ENCODER 0
-#define CONFIG_LJPEG_ENCODER 0
-#define CONFIG_MAGICYUV_ENCODER 0
-#define CONFIG_MJPEG_ENCODER 0
-#define CONFIG_MPEG1VIDEO_ENCODER 0
-#define CONFIG_MPEG2VIDEO_ENCODER 0
-#define CONFIG_MPEG4_ENCODER 0
-#define CONFIG_MSMPEG4V2_ENCODER 0
-#define CONFIG_MSMPEG4V3_ENCODER 0
-#define CONFIG_MSVIDEO1_ENCODER 0
-#define CONFIG_PAM_ENCODER 0
-#define CONFIG_PBM_ENCODER 0
-#define CONFIG_PCX_ENCODER 0
-#define CONFIG_PGM_ENCODER 0
-#define CONFIG_PGMYUV_ENCODER 0
-#define CONFIG_PNG_ENCODER 0
-#define CONFIG_PPM_ENCODER 0
-#define CONFIG_PRORES_ENCODER 0
-#define CONFIG_PRORES_AW_ENCODER 0
-#define CONFIG_PRORES_KS_ENCODER 0
-#define CONFIG_QTRLE_ENCODER 0
-#define CONFIG_R10K_ENCODER 0
-#define CONFIG_R210_ENCODER 0
-#define CONFIG_RAWVIDEO_ENCODER 0
-#define CONFIG_ROQ_ENCODER 0
-#define CONFIG_RV10_ENCODER 0
-#define CONFIG_RV20_ENCODER 0
-#define CONFIG_S302M_ENCODER 0
-#define CONFIG_SGI_ENCODER 0
-#define CONFIG_SNOW_ENCODER 0
-#define CONFIG_SUNRAST_ENCODER 0
-#define CONFIG_SVQ1_ENCODER 0
-#define CONFIG_TARGA_ENCODER 0
-#define CONFIG_TIFF_ENCODER 0
-#define CONFIG_UTVIDEO_ENCODER 0
-#define CONFIG_V210_ENCODER 0
-#define CONFIG_V308_ENCODER 0
-#define CONFIG_V408_ENCODER 0
-#define CONFIG_V410_ENCODER 0
-#define CONFIG_VC2_ENCODER 0
-#define CONFIG_WRAPPED_AVFRAME_ENCODER 0
-#define CONFIG_WMV1_ENCODER 0
-#define CONFIG_WMV2_ENCODER 0
-#define CONFIG_XBM_ENCODER 0
-#define CONFIG_XFACE_ENCODER 0
-#define CONFIG_XWD_ENCODER 0
-#define CONFIG_Y41P_ENCODER 0
-#define CONFIG_YUV4_ENCODER 0
-#define CONFIG_ZLIB_ENCODER 0
-#define CONFIG_ZMBV_ENCODER 0
-#define CONFIG_AAC_ENCODER 0
-#define CONFIG_AC3_ENCODER 0
-#define CONFIG_AC3_FIXED_ENCODER 0
-#define CONFIG_ALAC_ENCODER 0
-#define CONFIG_APTX_ENCODER 0
-#define CONFIG_APTX_HD_ENCODER 0
-#define CONFIG_DCA_ENCODER 0
-#define CONFIG_EAC3_ENCODER 0
-#define CONFIG_FLAC_ENCODER 0
-#define CONFIG_G723_1_ENCODER 0
-#define CONFIG_MLP_ENCODER 0
-#define CONFIG_MP2_ENCODER 0
-#define CONFIG_MP2FIXED_ENCODER 0
-#define CONFIG_NELLYMOSER_ENCODER 0
-#define CONFIG_OPUS_ENCODER 0
-#define CONFIG_RA_144_ENCODER 0
-#define CONFIG_SBC_ENCODER 0
-#define CONFIG_SONIC_ENCODER 0
-#define CONFIG_SONIC_LS_ENCODER 0
-#define CONFIG_TRUEHD_ENCODER 0
-#define CONFIG_TTA_ENCODER 0
-#define CONFIG_VORBIS_ENCODER 0
-#define CONFIG_WAVPACK_ENCODER 0
-#define CONFIG_WMAV1_ENCODER 0
-#define CONFIG_WMAV2_ENCODER 0
-#define CONFIG_PCM_ALAW_ENCODER 0
-#define CONFIG_PCM_F32BE_ENCODER 0
-#define CONFIG_PCM_F32LE_ENCODER 0
-#define CONFIG_PCM_F64BE_ENCODER 0
-#define CONFIG_PCM_F64LE_ENCODER 0
-#define CONFIG_PCM_MULAW_ENCODER 0
-#define CONFIG_PCM_S8_ENCODER 0
-#define CONFIG_PCM_S8_PLANAR_ENCODER 0
-#define CONFIG_PCM_S16BE_ENCODER 0
-#define CONFIG_PCM_S16BE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S16LE_ENCODER 0
-#define CONFIG_PCM_S16LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S24BE_ENCODER 0
-#define CONFIG_PCM_S24DAUD_ENCODER 0
-#define CONFIG_PCM_S24LE_ENCODER 0
-#define CONFIG_PCM_S24LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S32BE_ENCODER 0
-#define CONFIG_PCM_S32LE_ENCODER 0
-#define CONFIG_PCM_S32LE_PLANAR_ENCODER 0
-#define CONFIG_PCM_S64BE_ENCODER 0
-#define CONFIG_PCM_S64LE_ENCODER 0
-#define CONFIG_PCM_U8_ENCODER 0
-#define CONFIG_PCM_U16BE_ENCODER 0
-#define CONFIG_PCM_U16LE_ENCODER 0
-#define CONFIG_PCM_U24BE_ENCODER 0
-#define CONFIG_PCM_U24LE_ENCODER 0
-#define CONFIG_PCM_U32BE_ENCODER 0
-#define CONFIG_PCM_U32LE_ENCODER 0
-#define CONFIG_PCM_VIDC_ENCODER 0
-#define CONFIG_ROQ_DPCM_ENCODER 0
-#define CONFIG_ADPCM_ADX_ENCODER 0
-#define CONFIG_ADPCM_G722_ENCODER 0
-#define CONFIG_ADPCM_G726_ENCODER 0
-#define CONFIG_ADPCM_G726LE_ENCODER 0
-#define CONFIG_ADPCM_IMA_QT_ENCODER 0
-#define CONFIG_ADPCM_IMA_WAV_ENCODER 0
-#define CONFIG_ADPCM_MS_ENCODER 0
-#define CONFIG_ADPCM_SWF_ENCODER 0
-#define CONFIG_ADPCM_YAMAHA_ENCODER 0
-#define CONFIG_SSA_ENCODER 0
-#define CONFIG_ASS_ENCODER 0
-#define CONFIG_DVBSUB_ENCODER 0
-#define CONFIG_DVDSUB_ENCODER 0
-#define CONFIG_MOVTEXT_ENCODER 0
-#define CONFIG_SRT_ENCODER 0
-#define CONFIG_SUBRIP_ENCODER 0
-#define CONFIG_TEXT_ENCODER 0
-#define CONFIG_WEBVTT_ENCODER 0
-#define CONFIG_XSUB_ENCODER 0
-#define CONFIG_AAC_AT_ENCODER 0
-#define CONFIG_ALAC_AT_ENCODER 0
-#define CONFIG_ILBC_AT_ENCODER 0
-#define CONFIG_PCM_ALAW_AT_ENCODER 0
-#define CONFIG_PCM_MULAW_AT_ENCODER 0
-#define CONFIG_LIBAOM_AV1_ENCODER 0
-#define CONFIG_LIBCODEC2_ENCODER 0
-#define CONFIG_LIBFDK_AAC_ENCODER 0
-#define CONFIG_LIBGSM_ENCODER 0
-#define CONFIG_LIBGSM_MS_ENCODER 0
-#define CONFIG_LIBILBC_ENCODER 0
-#define CONFIG_LIBMP3LAME_ENCODER 0
-#define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0
-#define CONFIG_LIBOPENJPEG_ENCODER 0
-#define CONFIG_LIBOPUS_ENCODER 0
-#define CONFIG_LIBSHINE_ENCODER 0
-#define CONFIG_LIBSPEEX_ENCODER 0
-#define CONFIG_LIBTHEORA_ENCODER 0
-#define CONFIG_LIBTWOLAME_ENCODER 0
-#define CONFIG_LIBVO_AMRWBENC_ENCODER 0
-#define CONFIG_LIBVORBIS_ENCODER 0
-#define CONFIG_LIBVPX_VP8_ENCODER 0
-#define CONFIG_LIBVPX_VP9_ENCODER 0
-#define CONFIG_LIBWAVPACK_ENCODER 0
-#define CONFIG_LIBWEBP_ANIM_ENCODER 0
-#define CONFIG_LIBWEBP_ENCODER 0
-#define CONFIG_LIBX262_ENCODER 0
-#define CONFIG_LIBX264_ENCODER 0
-#define CONFIG_LIBX264RGB_ENCODER 0
-#define CONFIG_LIBX265_ENCODER 0
-#define CONFIG_LIBXAVS_ENCODER 0
-#define CONFIG_LIBXAVS2_ENCODER 0
-#define CONFIG_LIBXVID_ENCODER 0
-#define CONFIG_H263_V4L2M2M_ENCODER 0
-#define CONFIG_LIBOPENH264_ENCODER 0
-#define CONFIG_H264_AMF_ENCODER 0
-#define CONFIG_H264_NVENC_ENCODER 0
-#define CONFIG_H264_OMX_ENCODER 0
-#define CONFIG_H264_QSV_ENCODER 0
-#define CONFIG_H264_V4L2M2M_ENCODER 0
-#define CONFIG_H264_VAAPI_ENCODER 0
-#define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
-#define CONFIG_NVENC_ENCODER 0
-#define CONFIG_NVENC_H264_ENCODER 0
-#define CONFIG_NVENC_HEVC_ENCODER 0
-#define CONFIG_HEVC_AMF_ENCODER 0
-#define CONFIG_HEVC_NVENC_ENCODER 0
-#define CONFIG_HEVC_QSV_ENCODER 0
-#define CONFIG_HEVC_V4L2M2M_ENCODER 0
-#define CONFIG_HEVC_VAAPI_ENCODER 0
-#define CONFIG_HEVC_VIDEOTOOLBOX_ENCODER 0
-#define CONFIG_LIBKVAZAAR_ENCODER 0
-#define CONFIG_MJPEG_QSV_ENCODER 0
-#define CONFIG_MJPEG_VAAPI_ENCODER 0
-#define CONFIG_MPEG2_QSV_ENCODER 0
-#define CONFIG_MPEG2_VAAPI_ENCODER 0
-#define CONFIG_MPEG4_V4L2M2M_ENCODER 0
-#define CONFIG_VP8_V4L2M2M_ENCODER 0
-#define CONFIG_VP8_VAAPI_ENCODER 0
-#define CONFIG_VP9_VAAPI_ENCODER 0
-#define CONFIG_H263_VAAPI_HWACCEL 0
-#define CONFIG_H263_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_H264_D3D11VA_HWACCEL 0
-#define CONFIG_H264_D3D11VA2_HWACCEL 0
-#define CONFIG_H264_DXVA2_HWACCEL 0
-#define CONFIG_H264_NVDEC_HWACCEL 0
-#define CONFIG_H264_VAAPI_HWACCEL 0
-#define CONFIG_H264_VDPAU_HWACCEL 0
-#define CONFIG_H264_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_HEVC_D3D11VA_HWACCEL 0
-#define CONFIG_HEVC_D3D11VA2_HWACCEL 0
-#define CONFIG_HEVC_DXVA2_HWACCEL 0
-#define CONFIG_HEVC_NVDEC_HWACCEL 0
-#define CONFIG_HEVC_VAAPI_HWACCEL 0
-#define CONFIG_HEVC_VDPAU_HWACCEL 0
-#define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MJPEG_NVDEC_HWACCEL 0
-#define CONFIG_MJPEG_VAAPI_HWACCEL 0
-#define CONFIG_MPEG1_NVDEC_HWACCEL 0
-#define CONFIG_MPEG1_VDPAU_HWACCEL 0
-#define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MPEG1_XVMC_HWACCEL 0
-#define CONFIG_MPEG2_D3D11VA_HWACCEL 0
-#define CONFIG_MPEG2_D3D11VA2_HWACCEL 0
-#define CONFIG_MPEG2_NVDEC_HWACCEL 0
-#define CONFIG_MPEG2_DXVA2_HWACCEL 0
-#define CONFIG_MPEG2_VAAPI_HWACCEL 0
-#define CONFIG_MPEG2_VDPAU_HWACCEL 0
-#define CONFIG_MPEG2_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_MPEG2_XVMC_HWACCEL 0
-#define CONFIG_MPEG4_NVDEC_HWACCEL 0
-#define CONFIG_MPEG4_VAAPI_HWACCEL 0
-#define CONFIG_MPEG4_VDPAU_HWACCEL 0
-#define CONFIG_MPEG4_VIDEOTOOLBOX_HWACCEL 0
-#define CONFIG_VC1_D3D11VA_HWACCEL 0
-#define CONFIG_VC1_D3D11VA2_HWACCEL 0
-#define CONFIG_VC1_DXVA2_HWACCEL 0
-#define CONFIG_VC1_NVDEC_HWACCEL 0
-#define CONFIG_VC1_VAAPI_HWACCEL 0
-#define CONFIG_VC1_VDPAU_HWACCEL 0
-#define CONFIG_VP8_NVDEC_HWACCEL 0
-#define CONFIG_VP8_VAAPI_HWACCEL 0
-#define CONFIG_VP9_D3D11VA_HWACCEL 0
-#define CONFIG_VP9_D3D11VA2_HWACCEL 0
-#define CONFIG_VP9_DXVA2_HWACCEL 0
-#define CONFIG_VP9_NVDEC_HWACCEL 0
-#define CONFIG_VP9_VAAPI_HWACCEL 0
-#define CONFIG_WMV3_D3D11VA_HWACCEL 0
-#define CONFIG_WMV3_D3D11VA2_HWACCEL 0
-#define CONFIG_WMV3_DXVA2_HWACCEL 0
-#define CONFIG_WMV3_NVDEC_HWACCEL 0
-#define CONFIG_WMV3_VAAPI_HWACCEL 0
-#define CONFIG_WMV3_VDPAU_HWACCEL 0
-#define CONFIG_AAC_PARSER 1
-#define CONFIG_AAC_LATM_PARSER 1
-#define CONFIG_AC3_PARSER 1
-#define CONFIG_ADX_PARSER 1
-#define CONFIG_AV1_PARSER 1
-#define CONFIG_AVS2_PARSER 1
-#define CONFIG_BMP_PARSER 1
-#define CONFIG_CAVSVIDEO_PARSER 1
-#define CONFIG_COOK_PARSER 1
-#define CONFIG_DCA_PARSER 1
-#define CONFIG_DIRAC_PARSER 1
-#define CONFIG_DNXHD_PARSER 1
-#define CONFIG_DPX_PARSER 1
-#define CONFIG_DVAUDIO_PARSER 1
-#define CONFIG_DVBSUB_PARSER 1
-#define CONFIG_DVDSUB_PARSER 1
-#define CONFIG_DVD_NAV_PARSER 1
-#define CONFIG_FLAC_PARSER 1
-#define CONFIG_G729_PARSER 1
-#define CONFIG_GSM_PARSER 1
-#define CONFIG_H261_PARSER 1
-#define CONFIG_H263_PARSER 1
-#define CONFIG_H264_PARSER 1
-#define CONFIG_HEVC_PARSER 1
-#define CONFIG_MJPEG_PARSER 1
-#define CONFIG_MLP_PARSER 1
-#define CONFIG_MPEG4VIDEO_PARSER 1
-#define CONFIG_MPEGAUDIO_PARSER 1
-#define CONFIG_MPEGVIDEO_PARSER 1
-#define CONFIG_OPUS_PARSER 1
-#define CONFIG_PNG_PARSER 1
-#define CONFIG_PNM_PARSER 1
-#define CONFIG_RV30_PARSER 1
-#define CONFIG_RV40_PARSER 1
-#define CONFIG_SBC_PARSER 1
-#define CONFIG_SIPR_PARSER 1
-#define CONFIG_TAK_PARSER 1
-#define CONFIG_VC1_PARSER 1
-#define CONFIG_VORBIS_PARSER 1
-#define CONFIG_VP3_PARSER 1
-#define CONFIG_VP8_PARSER 1
-#define CONFIG_VP9_PARSER 1
-#define CONFIG_XMA_PARSER 1
-#define CONFIG_ALSA_INDEV 0
-#define CONFIG_ANDROID_CAMERA_INDEV 0
-#define CONFIG_AVFOUNDATION_INDEV 0
-#define CONFIG_BKTR_INDEV 0
-#define CONFIG_DECKLINK_INDEV 0
-#define CONFIG_LIBNDI_NEWTEK_INDEV 0
-#define CONFIG_DSHOW_INDEV 0
-#define CONFIG_FBDEV_INDEV 0
-#define CONFIG_GDIGRAB_INDEV 0
-#define CONFIG_IEC61883_INDEV 0
-#define CONFIG_JACK_INDEV 0
-#define CONFIG_KMSGRAB_INDEV 0
-#define CONFIG_LAVFI_INDEV 0
-#define CONFIG_OPENAL_INDEV 0
-#define CONFIG_OSS_INDEV 0
-#define CONFIG_PULSE_INDEV 0
-#define CONFIG_SNDIO_INDEV 0
-#define CONFIG_V4L2_INDEV 0
-#define CONFIG_VFWCAP_INDEV 0
-#define CONFIG_XCBGRAB_INDEV 0
-#define CONFIG_LIBCDIO_INDEV 0
-#define CONFIG_LIBDC1394_INDEV 0
-#define CONFIG_ALSA_OUTDEV 0
-#define CONFIG_CACA_OUTDEV 0
-#define CONFIG_DECKLINK_OUTDEV 0
-#define CONFIG_LIBNDI_NEWTEK_OUTDEV 0
-#define CONFIG_FBDEV_OUTDEV 0
-#define CONFIG_OPENGL_OUTDEV 0
-#define CONFIG_OSS_OUTDEV 0
-#define CONFIG_PULSE_OUTDEV 0
-#define CONFIG_SDL2_OUTDEV 0
-#define CONFIG_SNDIO_OUTDEV 0
-#define CONFIG_V4L2_OUTDEV 0
-#define CONFIG_XV_OUTDEV 0
-#define CONFIG_ABENCH_FILTER 0
-#define CONFIG_ACOMPRESSOR_FILTER 0
-#define CONFIG_ACONTRAST_FILTER 0
-#define CONFIG_ACOPY_FILTER 0
-#define CONFIG_ACUE_FILTER 0
-#define CONFIG_ACROSSFADE_FILTER 0
-#define CONFIG_ACROSSOVER_FILTER 0
-#define CONFIG_ACRUSHER_FILTER 0
-#define CONFIG_ADECLICK_FILTER 0
-#define CONFIG_ADECLIP_FILTER 0
-#define CONFIG_ADELAY_FILTER 0
-#define CONFIG_ADERIVATIVE_FILTER 0
-#define CONFIG_AECHO_FILTER 0
-#define CONFIG_AEMPHASIS_FILTER 0
-#define CONFIG_AEVAL_FILTER 0
-#define CONFIG_AFADE_FILTER 0
-#define CONFIG_AFFTDN_FILTER 0
-#define CONFIG_AFFTFILT_FILTER 0
-#define CONFIG_AFIR_FILTER 0
-#define CONFIG_AFORMAT_FILTER 0
-#define CONFIG_AGATE_FILTER 0
-#define CONFIG_AIIR_FILTER 0
-#define CONFIG_AINTEGRAL_FILTER 0
-#define CONFIG_AINTERLEAVE_FILTER 0
-#define CONFIG_ALIMITER_FILTER 0
-#define CONFIG_ALLPASS_FILTER 0
-#define CONFIG_ALOOP_FILTER 0
-#define CONFIG_AMERGE_FILTER 0
-#define CONFIG_AMETADATA_FILTER 0
-#define CONFIG_AMIX_FILTER 0
-#define CONFIG_AMULTIPLY_FILTER 0
-#define CONFIG_ANEQUALIZER_FILTER 0
-#define CONFIG_ANULL_FILTER 0
-#define CONFIG_APAD_FILTER 0
-#define CONFIG_APERMS_FILTER 0
-#define CONFIG_APHASER_FILTER 0
-#define CONFIG_APULSATOR_FILTER 0
-#define CONFIG_AREALTIME_FILTER 0
-#define CONFIG_ARESAMPLE_FILTER 0
-#define CONFIG_AREVERSE_FILTER 0
-#define CONFIG_ASELECT_FILTER 0
-#define CONFIG_ASENDCMD_FILTER 0
-#define CONFIG_ASETNSAMPLES_FILTER 0
-#define CONFIG_ASETPTS_FILTER 0
-#define CONFIG_ASETRATE_FILTER 0
-#define CONFIG_ASETTB_FILTER 0
-#define CONFIG_ASHOWINFO_FILTER 0
-#define CONFIG_ASIDEDATA_FILTER 0
-#define CONFIG_ASPLIT_FILTER 0
-#define CONFIG_ASTATS_FILTER 0
-#define CONFIG_ASTREAMSELECT_FILTER 0
-#define CONFIG_ATEMPO_FILTER 0
-#define CONFIG_ATRIM_FILTER 0
-#define CONFIG_AZMQ_FILTER 0
-#define CONFIG_BANDPASS_FILTER 0
-#define CONFIG_BANDREJECT_FILTER 0
-#define CONFIG_BASS_FILTER 0
-#define CONFIG_BIQUAD_FILTER 0
-#define CONFIG_BS2B_FILTER 0
-#define CONFIG_CHANNELMAP_FILTER 0
-#define CONFIG_CHANNELSPLIT_FILTER 0
-#define CONFIG_CHORUS_FILTER 0
-#define CONFIG_COMPAND_FILTER 0
-#define CONFIG_COMPENSATIONDELAY_FILTER 0
-#define CONFIG_CROSSFEED_FILTER 0
-#define CONFIG_CRYSTALIZER_FILTER 0
-#define CONFIG_DCSHIFT_FILTER 0
-#define CONFIG_DRMETER_FILTER 0
-#define CONFIG_DYNAUDNORM_FILTER 0
-#define CONFIG_EARWAX_FILTER 0
-#define CONFIG_EBUR128_FILTER 0
-#define CONFIG_EQUALIZER_FILTER 0
-#define CONFIG_EXTRASTEREO_FILTER 0
-#define CONFIG_FIREQUALIZER_FILTER 0
-#define CONFIG_FLANGER_FILTER 0
-#define CONFIG_HAAS_FILTER 0
-#define CONFIG_HDCD_FILTER 0
-#define CONFIG_HEADPHONE_FILTER 0
-#define CONFIG_HIGHPASS_FILTER 0
-#define CONFIG_HIGHSHELF_FILTER 0
-#define CONFIG_JOIN_FILTER 0
-#define CONFIG_LADSPA_FILTER 0
-#define CONFIG_LOUDNORM_FILTER 0
-#define CONFIG_LOWPASS_FILTER 0
-#define CONFIG_LOWSHELF_FILTER 0
-#define CONFIG_LV2_FILTER 0
-#define CONFIG_MCOMPAND_FILTER 0
-#define CONFIG_PAN_FILTER 0
-#define CONFIG_REPLAYGAIN_FILTER 0
-#define CONFIG_RESAMPLE_FILTER 0
-#define CONFIG_RUBBERBAND_FILTER 0
-#define CONFIG_SIDECHAINCOMPRESS_FILTER 0
-#define CONFIG_SIDECHAINGATE_FILTER 0
-#define CONFIG_SILENCEDETECT_FILTER 0
-#define CONFIG_SILENCEREMOVE_FILTER 0
-#define CONFIG_SOFALIZER_FILTER 0
-#define CONFIG_STEREOTOOLS_FILTER 0
-#define CONFIG_STEREOWIDEN_FILTER 0
-#define CONFIG_SUPEREQUALIZER_FILTER 0
-#define CONFIG_SURROUND_FILTER 0
-#define CONFIG_TREBLE_FILTER 0
-#define CONFIG_TREMOLO_FILTER 0
-#define CONFIG_VIBRATO_FILTER 0
-#define CONFIG_VOLUME_FILTER 0
-#define CONFIG_VOLUMEDETECT_FILTER 0
-#define CONFIG_AEVALSRC_FILTER 0
-#define CONFIG_ANOISESRC_FILTER 0
-#define CONFIG_ANULLSRC_FILTER 0
-#define CONFIG_FLITE_FILTER 0
-#define CONFIG_HILBERT_FILTER 0
-#define CONFIG_SINC_FILTER 0
-#define CONFIG_SINE_FILTER 0
-#define CONFIG_ANULLSINK_FILTER 0
-#define CONFIG_ALPHAEXTRACT_FILTER 0
-#define CONFIG_ALPHAMERGE_FILTER 0
-#define CONFIG_AMPLIFY_FILTER 0
-#define CONFIG_ASS_FILTER 0
-#define CONFIG_ATADENOISE_FILTER 0
-#define CONFIG_AVGBLUR_FILTER 0
-#define CONFIG_AVGBLUR_OPENCL_FILTER 0
-#define CONFIG_BBOX_FILTER 0
-#define CONFIG_BENCH_FILTER 0
-#define CONFIG_BITPLANENOISE_FILTER 0
-#define CONFIG_BLACKDETECT_FILTER 0
-#define CONFIG_BLACKFRAME_FILTER 0
-#define CONFIG_BLEND_FILTER 0
-#define CONFIG_BM3D_FILTER 0
-#define CONFIG_BOXBLUR_FILTER 0
-#define CONFIG_BOXBLUR_OPENCL_FILTER 0
-#define CONFIG_BWDIF_FILTER 0
-#define CONFIG_CHROMAHOLD_FILTER 0
-#define CONFIG_CHROMAKEY_FILTER 0
-#define CONFIG_CHROMASHIFT_FILTER 0
-#define CONFIG_CIESCOPE_FILTER 0
-#define CONFIG_CODECVIEW_FILTER 0
-#define CONFIG_COLORBALANCE_FILTER 0
-#define CONFIG_COLORCHANNELMIXER_FILTER 0
-#define CONFIG_COLORKEY_FILTER 0
-#define CONFIG_COLORLEVELS_FILTER 0
-#define CONFIG_COLORMATRIX_FILTER 0
-#define CONFIG_COLORSPACE_FILTER 0
-#define CONFIG_CONVOLUTION_FILTER 0
-#define CONFIG_CONVOLUTION_OPENCL_FILTER 0
-#define CONFIG_CONVOLVE_FILTER 0
-#define CONFIG_COPY_FILTER 0
-#define CONFIG_COREIMAGE_FILTER 0
-#define CONFIG_COVER_RECT_FILTER 0
-#define CONFIG_CROP_FILTER 0
-#define CONFIG_CROPDETECT_FILTER 0
-#define CONFIG_CUE_FILTER 0
-#define CONFIG_CURVES_FILTER 0
-#define CONFIG_DATASCOPE_FILTER 0
-#define CONFIG_DCTDNOIZ_FILTER 0
-#define CONFIG_DEBAND_FILTER 0
-#define CONFIG_DEBLOCK_FILTER 0
-#define CONFIG_DECIMATE_FILTER 0
-#define CONFIG_DECONVOLVE_FILTER 0
-#define CONFIG_DEDOT_FILTER 0
-#define CONFIG_DEFLATE_FILTER 0
-#define CONFIG_DEFLICKER_FILTER 0
-#define CONFIG_DEINTERLACE_QSV_FILTER 0
-#define CONFIG_DEINTERLACE_VAAPI_FILTER 0
-#define CONFIG_DEJUDDER_FILTER 0
-#define CONFIG_DELOGO_FILTER 0
-#define CONFIG_DENOISE_VAAPI_FILTER 0
-#define CONFIG_DESHAKE_FILTER 0
-#define CONFIG_DESPILL_FILTER 0
-#define CONFIG_DETELECINE_FILTER 0
-#define CONFIG_DILATION_FILTER 0
-#define CONFIG_DILATION_OPENCL_FILTER 0
-#define CONFIG_DISPLACE_FILTER 0
-#define CONFIG_DOUBLEWEAVE_FILTER 0
-#define CONFIG_DRAWBOX_FILTER 0
-#define CONFIG_DRAWGRAPH_FILTER 0
-#define CONFIG_DRAWGRID_FILTER 0
-#define CONFIG_DRAWTEXT_FILTER 0
-#define CONFIG_EDGEDETECT_FILTER 0
-#define CONFIG_ELBG_FILTER 0
-#define CONFIG_ENTROPY_FILTER 0
-#define CONFIG_EQ_FILTER 0
-#define CONFIG_EROSION_FILTER 0
-#define CONFIG_EROSION_OPENCL_FILTER 0
-#define CONFIG_EXTRACTPLANES_FILTER 0
-#define CONFIG_FADE_FILTER 0
-#define CONFIG_FFTDNOIZ_FILTER 0
-#define CONFIG_FFTFILT_FILTER 0
-#define CONFIG_FIELD_FILTER 0
-#define CONFIG_FIELDHINT_FILTER 0
-#define CONFIG_FIELDMATCH_FILTER 0
-#define CONFIG_FIELDORDER_FILTER 0
-#define CONFIG_FILLBORDERS_FILTER 0
-#define CONFIG_FIND_RECT_FILTER 0
-#define CONFIG_FLOODFILL_FILTER 0
-#define CONFIG_FORMAT_FILTER 0
-#define CONFIG_FPS_FILTER 0
-#define CONFIG_FRAMEPACK_FILTER 0
-#define CONFIG_FRAMERATE_FILTER 0
-#define CONFIG_FRAMESTEP_FILTER 0
-#define CONFIG_FREEZEDETECT_FILTER 0
-#define CONFIG_FREI0R_FILTER 0
-#define CONFIG_FSPP_FILTER 0
-#define CONFIG_GBLUR_FILTER 0
-#define CONFIG_GEQ_FILTER 0
-#define CONFIG_GRADFUN_FILTER 0
-#define CONFIG_GRAPHMONITOR_FILTER 0
-#define CONFIG_GREYEDGE_FILTER 0
-#define CONFIG_HALDCLUT_FILTER 0
-#define CONFIG_HFLIP_FILTER 0
-#define CONFIG_HISTEQ_FILTER 0
-#define CONFIG_HISTOGRAM_FILTER 0
-#define CONFIG_HQDN3D_FILTER 0
-#define CONFIG_HQX_FILTER 0
-#define CONFIG_HSTACK_FILTER 0
-#define CONFIG_HUE_FILTER 0
-#define CONFIG_HWDOWNLOAD_FILTER 0
-#define CONFIG_HWMAP_FILTER 0
-#define CONFIG_HWUPLOAD_FILTER 0
-#define CONFIG_HWUPLOAD_CUDA_FILTER 0
-#define CONFIG_HYSTERESIS_FILTER 0
-#define CONFIG_IDET_FILTER 0
-#define CONFIG_IL_FILTER 0
-#define CONFIG_INFLATE_FILTER 0
-#define CONFIG_INTERLACE_FILTER 0
-#define CONFIG_INTERLEAVE_FILTER 0
-#define CONFIG_KERNDEINT_FILTER 0
-#define CONFIG_LENSCORRECTION_FILTER 0
-#define CONFIG_LENSFUN_FILTER 0
-#define CONFIG_LIBVMAF_FILTER 0
-#define CONFIG_LIMITER_FILTER 0
-#define CONFIG_LOOP_FILTER 0
-#define CONFIG_LUMAKEY_FILTER 0
-#define CONFIG_LUT_FILTER 0
-#define CONFIG_LUT1D_FILTER 0
-#define CONFIG_LUT2_FILTER 0
-#define CONFIG_LUT3D_FILTER 0
-#define CONFIG_LUTRGB_FILTER 0
-#define CONFIG_LUTYUV_FILTER 0
-#define CONFIG_MASKEDCLAMP_FILTER 0
-#define CONFIG_MASKEDMERGE_FILTER 0
-#define CONFIG_MCDEINT_FILTER 0
-#define CONFIG_MERGEPLANES_FILTER 0
-#define CONFIG_MESTIMATE_FILTER 0
-#define CONFIG_METADATA_FILTER 0
-#define CONFIG_MIDEQUALIZER_FILTER 0
-#define CONFIG_MINTERPOLATE_FILTER 0
-#define CONFIG_MIX_FILTER 0
-#define CONFIG_MPDECIMATE_FILTER 0
-#define CONFIG_NEGATE_FILTER 0
-#define CONFIG_NLMEANS_FILTER 0
-#define CONFIG_NNEDI_FILTER 0
-#define CONFIG_NOFORMAT_FILTER 0
-#define CONFIG_NOISE_FILTER 0
-#define CONFIG_NORMALIZE_FILTER 0
-#define CONFIG_NULL_FILTER 0
-#define CONFIG_OCR_FILTER 0
-#define CONFIG_OCV_FILTER 0
-#define CONFIG_OSCILLOSCOPE_FILTER 0
-#define CONFIG_OVERLAY_FILTER 0
-#define CONFIG_OVERLAY_OPENCL_FILTER 0
-#define CONFIG_OVERLAY_QSV_FILTER 0
-#define CONFIG_OWDENOISE_FILTER 0
-#define CONFIG_PAD_FILTER 0
-#define CONFIG_PALETTEGEN_FILTER 0
-#define CONFIG_PALETTEUSE_FILTER 0
-#define CONFIG_PERMS_FILTER 0
-#define CONFIG_PERSPECTIVE_FILTER 0
-#define CONFIG_PHASE_FILTER 0
-#define CONFIG_PIXDESCTEST_FILTER 0
-#define CONFIG_PIXSCOPE_FILTER 0
-#define CONFIG_PP_FILTER 0
-#define CONFIG_PP7_FILTER 0
-#define CONFIG_PREMULTIPLY_FILTER 0
-#define CONFIG_PREWITT_FILTER 0
-#define CONFIG_PREWITT_OPENCL_FILTER 0
-#define CONFIG_PROCAMP_VAAPI_FILTER 0
-#define CONFIG_PROGRAM_OPENCL_FILTER 0
-#define CONFIG_PSEUDOCOLOR_FILTER 0
-#define CONFIG_PSNR_FILTER 0
-#define CONFIG_PULLUP_FILTER 0
-#define CONFIG_QP_FILTER 0
-#define CONFIG_RANDOM_FILTER 0
-#define CONFIG_READEIA608_FILTER 0
-#define CONFIG_READVITC_FILTER 0
-#define CONFIG_REALTIME_FILTER 0
-#define CONFIG_REMAP_FILTER 0
-#define CONFIG_REMOVEGRAIN_FILTER 0
-#define CONFIG_REMOVELOGO_FILTER 0
-#define CONFIG_REPEATFIELDS_FILTER 0
-#define CONFIG_REVERSE_FILTER 0
-#define CONFIG_RGBASHIFT_FILTER 0
-#define CONFIG_ROBERTS_FILTER 0
-#define CONFIG_ROBERTS_OPENCL_FILTER 0
-#define CONFIG_ROTATE_FILTER 0
-#define CONFIG_SAB_FILTER 0
-#define CONFIG_SCALE_FILTER 0
-#define CONFIG_SCALE_CUDA_FILTER 0
-#define CONFIG_SCALE_NPP_FILTER 0
-#define CONFIG_SCALE_QSV_FILTER 0
-#define CONFIG_SCALE_VAAPI_FILTER 0
-#define CONFIG_SCALE2REF_FILTER 0
-#define CONFIG_SELECT_FILTER 0
-#define CONFIG_SELECTIVECOLOR_FILTER 0
-#define CONFIG_SENDCMD_FILTER 0
-#define CONFIG_SEPARATEFIELDS_FILTER 0
-#define CONFIG_SETDAR_FILTER 0
-#define CONFIG_SETFIELD_FILTER 0
-#define CONFIG_SETPARAMS_FILTER 0
-#define CONFIG_SETPTS_FILTER 0
-#define CONFIG_SETRANGE_FILTER 0
-#define CONFIG_SETSAR_FILTER 0
-#define CONFIG_SETTB_FILTER 0
-#define CONFIG_SHARPNESS_VAAPI_FILTER 0
-#define CONFIG_SHOWINFO_FILTER 0
-#define CONFIG_SHOWPALETTE_FILTER 0
-#define CONFIG_SHUFFLEFRAMES_FILTER 0
-#define CONFIG_SHUFFLEPLANES_FILTER 0
-#define CONFIG_SIDEDATA_FILTER 0
-#define CONFIG_SIGNALSTATS_FILTER 0
-#define CONFIG_SIGNATURE_FILTER 0
-#define CONFIG_SMARTBLUR_FILTER 0
-#define CONFIG_SOBEL_FILTER 0
-#define CONFIG_SOBEL_OPENCL_FILTER 0
-#define CONFIG_SPLIT_FILTER 0
-#define CONFIG_SPP_FILTER 0
-#define CONFIG_SR_FILTER 0
-#define CONFIG_SSIM_FILTER 0
-#define CONFIG_STEREO3D_FILTER 0
-#define CONFIG_STREAMSELECT_FILTER 0
-#define CONFIG_SUBTITLES_FILTER 0
-#define CONFIG_SUPER2XSAI_FILTER 0
-#define CONFIG_SWAPRECT_FILTER 0
-#define CONFIG_SWAPUV_FILTER 0
-#define CONFIG_TBLEND_FILTER 0
-#define CONFIG_TELECINE_FILTER 0
-#define CONFIG_THRESHOLD_FILTER 0
-#define CONFIG_THUMBNAIL_FILTER 0
-#define CONFIG_THUMBNAIL_CUDA_FILTER 0
-#define CONFIG_TILE_FILTER 0
-#define CONFIG_TINTERLACE_FILTER 0
-#define CONFIG_TLUT2_FILTER 0
-#define CONFIG_TMIX_FILTER 0
-#define CONFIG_TONEMAP_FILTER 0
-#define CONFIG_TONEMAP_OPENCL_FILTER 0
-#define CONFIG_TPAD_FILTER 0
-#define CONFIG_TRANSPOSE_FILTER 0
-#define CONFIG_TRANSPOSE_NPP_FILTER 0
-#define CONFIG_TRIM_FILTER 0
-#define CONFIG_UNPREMULTIPLY_FILTER 0
-#define CONFIG_UNSHARP_FILTER 0
-#define CONFIG_UNSHARP_OPENCL_FILTER 0
-#define CONFIG_USPP_FILTER 0
-#define CONFIG_VAGUEDENOISER_FILTER 0
-#define CONFIG_VECTORSCOPE_FILTER 0
-#define CONFIG_VFLIP_FILTER 0
-#define CONFIG_VFRDET_FILTER 0
-#define CONFIG_VIBRANCE_FILTER 0
-#define CONFIG_VIDSTABDETECT_FILTER 0
-#define CONFIG_VIDSTABTRANSFORM_FILTER 0
-#define CONFIG_VIGNETTE_FILTER 0
-#define CONFIG_VMAFMOTION_FILTER 0
-#define CONFIG_VPP_QSV_FILTER 0
-#define CONFIG_VSTACK_FILTER 0
-#define CONFIG_W3FDIF_FILTER 0
-#define CONFIG_WAVEFORM_FILTER 0
-#define CONFIG_WEAVE_FILTER 0
-#define CONFIG_XBR_FILTER 0
-#define CONFIG_XSTACK_FILTER 0
-#define CONFIG_YADIF_FILTER 0
-#define CONFIG_YADIF_CUDA_FILTER 0
-#define CONFIG_ZMQ_FILTER 0
-#define CONFIG_ZOOMPAN_FILTER 0
-#define CONFIG_ZSCALE_FILTER 0
-#define CONFIG_ALLRGB_FILTER 0
-#define CONFIG_ALLYUV_FILTER 0
-#define CONFIG_CELLAUTO_FILTER 0
-#define CONFIG_COLOR_FILTER 0
-#define CONFIG_COREIMAGESRC_FILTER 0
-#define CONFIG_FREI0R_SRC_FILTER 0
-#define CONFIG_HALDCLUTSRC_FILTER 0
-#define CONFIG_LIFE_FILTER 0
-#define CONFIG_MANDELBROT_FILTER 0
-#define CONFIG_MPTESTSRC_FILTER 0
-#define CONFIG_NULLSRC_FILTER 0
-#define CONFIG_OPENCLSRC_FILTER 0
-#define CONFIG_PAL75BARS_FILTER 0
-#define CONFIG_PAL100BARS_FILTER 0
-#define CONFIG_RGBTESTSRC_FILTER 0
-#define CONFIG_SMPTEBARS_FILTER 0
-#define CONFIG_SMPTEHDBARS_FILTER 0
-#define CONFIG_TESTSRC_FILTER 0
-#define CONFIG_TESTSRC2_FILTER 0
-#define CONFIG_YUVTESTSRC_FILTER 0
-#define CONFIG_NULLSINK_FILTER 0
-#define CONFIG_ABITSCOPE_FILTER 0
-#define CONFIG_ADRAWGRAPH_FILTER 0
-#define CONFIG_AGRAPHMONITOR_FILTER 0
-#define CONFIG_AHISTOGRAM_FILTER 0
-#define CONFIG_APHASEMETER_FILTER 0
-#define CONFIG_AVECTORSCOPE_FILTER 0
-#define CONFIG_CONCAT_FILTER 0
-#define CONFIG_SHOWCQT_FILTER 0
-#define CONFIG_SHOWFREQS_FILTER 0
-#define CONFIG_SHOWSPECTRUM_FILTER 0
-#define CONFIG_SHOWSPECTRUMPIC_FILTER 0
-#define CONFIG_SHOWVOLUME_FILTER 0
-#define CONFIG_SHOWWAVES_FILTER 0
-#define CONFIG_SHOWWAVESPIC_FILTER 0
-#define CONFIG_SPECTRUMSYNTH_FILTER 0
-#define CONFIG_AMOVIE_FILTER 0
-#define CONFIG_MOVIE_FILTER 0
-#define CONFIG_AFIFO_FILTER 0
-#define CONFIG_FIFO_FILTER 0
-#define CONFIG_AA_DEMUXER 1
-#define CONFIG_AAC_DEMUXER 1
-#define CONFIG_AC3_DEMUXER 1
-#define CONFIG_ACM_DEMUXER 1
-#define CONFIG_ACT_DEMUXER 1
-#define CONFIG_ADF_DEMUXER 1
-#define CONFIG_ADP_DEMUXER 1
-#define CONFIG_ADS_DEMUXER 1
-#define CONFIG_ADX_DEMUXER 1
-#define CONFIG_AEA_DEMUXER 1
-#define CONFIG_AFC_DEMUXER 1
-#define CONFIG_AIFF_DEMUXER 1
-#define CONFIG_AIX_DEMUXER 1
-#define CONFIG_AMR_DEMUXER 1
-#define CONFIG_AMRNB_DEMUXER 1
-#define CONFIG_AMRWB_DEMUXER 1
-#define CONFIG_ANM_DEMUXER 1
-#define CONFIG_APC_DEMUXER 1
-#define CONFIG_APE_DEMUXER 1
-#define CONFIG_APNG_DEMUXER 1
-#define CONFIG_APTX_DEMUXER 1
-#define CONFIG_APTX_HD_DEMUXER 1
-#define CONFIG_AQTITLE_DEMUXER 1
-#define CONFIG_ASF_DEMUXER 1
-#define CONFIG_ASF_O_DEMUXER 1
-#define CONFIG_ASS_DEMUXER 1
-#define CONFIG_AST_DEMUXER 1
-#define CONFIG_AU_DEMUXER 1
-#define CONFIG_AVI_DEMUXER 1
-#define CONFIG_AVISYNTH_DEMUXER 0
-#define CONFIG_AVR_DEMUXER 1
-#define CONFIG_AVS_DEMUXER 1
-#define CONFIG_AVS2_DEMUXER 1
-#define CONFIG_BETHSOFTVID_DEMUXER 1
-#define CONFIG_BFI_DEMUXER 1
-#define CONFIG_BINTEXT_DEMUXER 1
-#define CONFIG_BINK_DEMUXER 1
-#define CONFIG_BIT_DEMUXER 1
-#define CONFIG_BMV_DEMUXER 1
-#define CONFIG_BFSTM_DEMUXER 1
-#define CONFIG_BRSTM_DEMUXER 1
-#define CONFIG_BOA_DEMUXER 1
-#define CONFIG_C93_DEMUXER 1
-#define CONFIG_CAF_DEMUXER 1
-#define CONFIG_CAVSVIDEO_DEMUXER 1
-#define CONFIG_CDG_DEMUXER 1
-#define CONFIG_CDXL_DEMUXER 1
-#define CONFIG_CINE_DEMUXER 1
-#define CONFIG_CODEC2_DEMUXER 1
-#define CONFIG_CODEC2RAW_DEMUXER 1
-#define CONFIG_CONCAT_DEMUXER 1
-#define CONFIG_DASH_DEMUXER 0
-#define CONFIG_DATA_DEMUXER 1
-#define CONFIG_DAUD_DEMUXER 1
-#define CONFIG_DCSTR_DEMUXER 1
-#define CONFIG_DFA_DEMUXER 1
-#define CONFIG_DIRAC_DEMUXER 1
-#define CONFIG_DNXHD_DEMUXER 1
-#define CONFIG_DSF_DEMUXER 1
-#define CONFIG_DSICIN_DEMUXER 1
-#define CONFIG_DSS_DEMUXER 1
-#define CONFIG_DTS_DEMUXER 1
-#define CONFIG_DTSHD_DEMUXER 1
-#define CONFIG_DV_DEMUXER 1
-#define CONFIG_DVBSUB_DEMUXER 1
-#define CONFIG_DVBTXT_DEMUXER 1
-#define CONFIG_DXA_DEMUXER 1
-#define CONFIG_EA_DEMUXER 1
-#define CONFIG_EA_CDATA_DEMUXER 1
-#define CONFIG_EAC3_DEMUXER 1
-#define CONFIG_EPAF_DEMUXER 1
-#define CONFIG_FFMETADATA_DEMUXER 1
-#define CONFIG_FILMSTRIP_DEMUXER 1
-#define CONFIG_FITS_DEMUXER 1
-#define CONFIG_FLAC_DEMUXER 1
-#define CONFIG_FLIC_DEMUXER 1
-#define CONFIG_FLV_DEMUXER 1
-#define CONFIG_LIVE_FLV_DEMUXER 1
-#define CONFIG_FOURXM_DEMUXER 1
-#define CONFIG_FRM_DEMUXER 1
-#define CONFIG_FSB_DEMUXER 1
-#define CONFIG_G722_DEMUXER 1
-#define CONFIG_G723_1_DEMUXER 1
-#define CONFIG_G726_DEMUXER 1
-#define CONFIG_G726LE_DEMUXER 1
-#define CONFIG_G729_DEMUXER 1
-#define CONFIG_GDV_DEMUXER 1
-#define CONFIG_GENH_DEMUXER 1
-#define CONFIG_GIF_DEMUXER 1
-#define CONFIG_GSM_DEMUXER 1
-#define CONFIG_GXF_DEMUXER 1
-#define CONFIG_H261_DEMUXER 1
-#define CONFIG_H263_DEMUXER 1
-#define CONFIG_H264_DEMUXER 1
-#define CONFIG_HEVC_DEMUXER 1
-#define CONFIG_HLS_DEMUXER 1
-#define CONFIG_HNM_DEMUXER 1
-#define CONFIG_ICO_DEMUXER 1
-#define CONFIG_IDCIN_DEMUXER 1
-#define CONFIG_IDF_DEMUXER 1
-#define CONFIG_IFF_DEMUXER 1
-#define CONFIG_ILBC_DEMUXER 1
-#define CONFIG_IMAGE2_DEMUXER 1
-#define CONFIG_IMAGE2PIPE_DEMUXER 1
-#define CONFIG_IMAGE2_ALIAS_PIX_DEMUXER 1
-#define CONFIG_IMAGE2_BRENDER_PIX_DEMUXER 1
-#define CONFIG_INGENIENT_DEMUXER 1
-#define CONFIG_IPMOVIE_DEMUXER 1
-#define CONFIG_IRCAM_DEMUXER 1
-#define CONFIG_ISS_DEMUXER 1
-#define CONFIG_IV8_DEMUXER 1
-#define CONFIG_IVF_DEMUXER 1
-#define CONFIG_IVR_DEMUXER 1
-#define CONFIG_JACOSUB_DEMUXER 1
-#define CONFIG_JV_DEMUXER 1
-#define CONFIG_LMLM4_DEMUXER 1
-#define CONFIG_LOAS_DEMUXER 1
-#define CONFIG_LRC_DEMUXER 1
-#define CONFIG_LVF_DEMUXER 1
-#define CONFIG_LXF_DEMUXER 1
-#define CONFIG_M4V_DEMUXER 1
-#define CONFIG_MATROSKA_DEMUXER 1
-#define CONFIG_MGSTS_DEMUXER 1
-#define CONFIG_MICRODVD_DEMUXER 1
-#define CONFIG_MJPEG_DEMUXER 1
-#define CONFIG_MJPEG_2000_DEMUXER 1
-#define CONFIG_MLP_DEMUXER 1
-#define CONFIG_MLV_DEMUXER 1
-#define CONFIG_MM_DEMUXER 1
-#define CONFIG_MMF_DEMUXER 1
-#define CONFIG_MOV_DEMUXER 1
-#define CONFIG_MP3_DEMUXER 1
-#define CONFIG_MPC_DEMUXER 1
-#define CONFIG_MPC8_DEMUXER 1
-#define CONFIG_MPEGPS_DEMUXER 1
-#define CONFIG_MPEGTS_DEMUXER 1
-#define CONFIG_MPEGTSRAW_DEMUXER 1
-#define CONFIG_MPEGVIDEO_DEMUXER 1
-#define CONFIG_MPJPEG_DEMUXER 1
-#define CONFIG_MPL2_DEMUXER 1
-#define CONFIG_MPSUB_DEMUXER 1
-#define CONFIG_MSF_DEMUXER 1
-#define CONFIG_MSNWC_TCP_DEMUXER 1
-#define CONFIG_MTAF_DEMUXER 1
-#define CONFIG_MTV_DEMUXER 1
-#define CONFIG_MUSX_DEMUXER 1
-#define CONFIG_MV_DEMUXER 1
-#define CONFIG_MVI_DEMUXER 1
-#define CONFIG_MXF_DEMUXER 1
-#define CONFIG_MXG_DEMUXER 1
-#define CONFIG_NC_DEMUXER 1
-#define CONFIG_NISTSPHERE_DEMUXER 1
-#define CONFIG_NSP_DEMUXER 1
-#define CONFIG_NSV_DEMUXER 1
-#define CONFIG_NUT_DEMUXER 1
-#define CONFIG_NUV_DEMUXER 1
-#define CONFIG_OGG_DEMUXER 1
-#define CONFIG_OMA_DEMUXER 1
-#define CONFIG_PAF_DEMUXER 1
-#define CONFIG_PCM_ALAW_DEMUXER 1
-#define CONFIG_PCM_MULAW_DEMUXER 1
-#define CONFIG_PCM_VIDC_DEMUXER 1
-#define CONFIG_PCM_F64BE_DEMUXER 1
-#define CONFIG_PCM_F64LE_DEMUXER 1
-#define CONFIG_PCM_F32BE_DEMUXER 1
-#define CONFIG_PCM_F32LE_DEMUXER 1
-#define CONFIG_PCM_S32BE_DEMUXER 1
-#define CONFIG_PCM_S32LE_DEMUXER 1
-#define CONFIG_PCM_S24BE_DEMUXER 1
-#define CONFIG_PCM_S24LE_DEMUXER 1
-#define CONFIG_PCM_S16BE_DEMUXER 1
-#define CONFIG_PCM_S16LE_DEMUXER 1
-#define CONFIG_PCM_S8_DEMUXER 1
-#define CONFIG_PCM_U32BE_DEMUXER 1
-#define CONFIG_PCM_U32LE_DEMUXER 1
-#define CONFIG_PCM_U24BE_DEMUXER 1
-#define CONFIG_PCM_U24LE_DEMUXER 1
-#define CONFIG_PCM_U16BE_DEMUXER 1
-#define CONFIG_PCM_U16LE_DEMUXER 1
-#define CONFIG_PCM_U8_DEMUXER 1
-#define CONFIG_PJS_DEMUXER 1
-#define CONFIG_PMP_DEMUXER 1
-#define CONFIG_PVA_DEMUXER 1
-#define CONFIG_PVF_DEMUXER 1
-#define CONFIG_QCP_DEMUXER 1
-#define CONFIG_R3D_DEMUXER 1
-#define CONFIG_RAWVIDEO_DEMUXER 1
-#define CONFIG_REALTEXT_DEMUXER 1
-#define CONFIG_REDSPARK_DEMUXER 1
-#define CONFIG_RL2_DEMUXER 1
-#define CONFIG_RM_DEMUXER 1
-#define CONFIG_ROQ_DEMUXER 1
-#define CONFIG_RPL_DEMUXER 1
-#define CONFIG_RSD_DEMUXER 1
-#define CONFIG_RSO_DEMUXER 1
-#define CONFIG_RTP_DEMUXER 0
-#define CONFIG_RTSP_DEMUXER 0
-#define CONFIG_S337M_DEMUXER 1
-#define CONFIG_SAMI_DEMUXER 1
-#define CONFIG_SAP_DEMUXER 0
-#define CONFIG_SBC_DEMUXER 1
-#define CONFIG_SBG_DEMUXER 1
-#define CONFIG_SCC_DEMUXER 1
-#define CONFIG_SDP_DEMUXER 0
-#define CONFIG_SDR2_DEMUXER 1
-#define CONFIG_SDS_DEMUXER 1
-#define CONFIG_SDX_DEMUXER 1
-#define CONFIG_SEGAFILM_DEMUXER 1
-#define CONFIG_SER_DEMUXER 1
-#define CONFIG_SHORTEN_DEMUXER 1
-#define CONFIG_SIFF_DEMUXER 1
-#define CONFIG_SLN_DEMUXER 1
-#define CONFIG_SMACKER_DEMUXER 1
-#define CONFIG_SMJPEG_DEMUXER 1
-#define CONFIG_SMUSH_DEMUXER 1
-#define CONFIG_SOL_DEMUXER 1
-#define CONFIG_SOX_DEMUXER 1
-#define CONFIG_SPDIF_DEMUXER 1
-#define CONFIG_SRT_DEMUXER 1
-#define CONFIG_STR_DEMUXER 1
-#define CONFIG_STL_DEMUXER 1
-#define CONFIG_SUBVIEWER1_DEMUXER 1
-#define CONFIG_SUBVIEWER_DEMUXER 1
-#define CONFIG_SUP_DEMUXER 1
-#define CONFIG_SVAG_DEMUXER 1
-#define CONFIG_SWF_DEMUXER 1
-#define CONFIG_TAK_DEMUXER 1
-#define CONFIG_TEDCAPTIONS_DEMUXER 1
-#define CONFIG_THP_DEMUXER 1
-#define CONFIG_THREEDOSTR_DEMUXER 1
-#define CONFIG_TIERTEXSEQ_DEMUXER 1
-#define CONFIG_TMV_DEMUXER 1
-#define CONFIG_TRUEHD_DEMUXER 1
-#define CONFIG_TTA_DEMUXER 1
-#define CONFIG_TXD_DEMUXER 1
-#define CONFIG_TTY_DEMUXER 1
-#define CONFIG_TY_DEMUXER 1
-#define CONFIG_V210_DEMUXER 1
-#define CONFIG_V210X_DEMUXER 1
-#define CONFIG_VAG_DEMUXER 1
-#define CONFIG_VC1_DEMUXER 1
-#define CONFIG_VC1T_DEMUXER 1
-#define CONFIG_VIVO_DEMUXER 1
-#define CONFIG_VMD_DEMUXER 1
-#define CONFIG_VOBSUB_DEMUXER 1
-#define CONFIG_VOC_DEMUXER 1
-#define CONFIG_VPK_DEMUXER 1
-#define CONFIG_VPLAYER_DEMUXER 1
-#define CONFIG_VQF_DEMUXER 1
-#define CONFIG_W64_DEMUXER 1
-#define CONFIG_WAV_DEMUXER 1
-#define CONFIG_WC3_DEMUXER 1
-#define CONFIG_WEBM_DASH_MANIFEST_DEMUXER 1
-#define CONFIG_WEBVTT_DEMUXER 1
-#define CONFIG_WSAUD_DEMUXER 1
-#define CONFIG_WSD_DEMUXER 1
-#define CONFIG_WSVQA_DEMUXER 1
-#define CONFIG_WTV_DEMUXER 1
-#define CONFIG_WVE_DEMUXER 1
-#define CONFIG_WV_DEMUXER 1
-#define CONFIG_XA_DEMUXER 1
-#define CONFIG_XBIN_DEMUXER 1
-#define CONFIG_XMV_DEMUXER 1
-#define CONFIG_XVAG_DEMUXER 1
-#define CONFIG_XWMA_DEMUXER 1
-#define CONFIG_YOP_DEMUXER 1
-#define CONFIG_YUV4MPEGPIPE_DEMUXER 1
-#define CONFIG_IMAGE_BMP_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_DDS_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_DPX_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_EXR_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_J2K_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_JPEG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PAM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PBM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PCX_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PGM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PICTOR_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PNG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PPM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_PSD_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_QDRAW_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SGI_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SVG_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_TIFF_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_WEBP_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_XPM_PIPE_DEMUXER 1
-#define CONFIG_IMAGE_XWD_PIPE_DEMUXER 1
-#define CONFIG_LIBGME_DEMUXER 0
-#define CONFIG_LIBMODPLUG_DEMUXER 0
-#define CONFIG_LIBOPENMPT_DEMUXER 0
-#define CONFIG_VAPOURSYNTH_DEMUXER 0
-#define CONFIG_A64_MUXER 0
-#define CONFIG_AC3_MUXER 0
-#define CONFIG_ADTS_MUXER 0
-#define CONFIG_ADX_MUXER 0
-#define CONFIG_AIFF_MUXER 0
-#define CONFIG_AMR_MUXER 0
-#define CONFIG_APNG_MUXER 0
-#define CONFIG_APTX_MUXER 0
-#define CONFIG_APTX_HD_MUXER 0
-#define CONFIG_ASF_MUXER 0
-#define CONFIG_ASS_MUXER 0
-#define CONFIG_AST_MUXER 0
-#define CONFIG_ASF_STREAM_MUXER 0
-#define CONFIG_AU_MUXER 0
-#define CONFIG_AVI_MUXER 0
-#define CONFIG_AVM2_MUXER 0
-#define CONFIG_AVS2_MUXER 0
-#define CONFIG_BIT_MUXER 0
-#define CONFIG_CAF_MUXER 0
-#define CONFIG_CAVSVIDEO_MUXER 0
-#define CONFIG_CODEC2_MUXER 0
-#define CONFIG_CODEC2RAW_MUXER 0
-#define CONFIG_CRC_MUXER 0
-#define CONFIG_DASH_MUXER 0
-#define CONFIG_DATA_MUXER 0
-#define CONFIG_DAUD_MUXER 0
-#define CONFIG_DIRAC_MUXER 0
-#define CONFIG_DNXHD_MUXER 0
-#define CONFIG_DTS_MUXER 0
-#define CONFIG_DV_MUXER 0
-#define CONFIG_EAC3_MUXER 0
-#define CONFIG_F4V_MUXER 0
-#define CONFIG_FFMETADATA_MUXER 0
-#define CONFIG_FIFO_MUXER 0
-#define CONFIG_FIFO_TEST_MUXER 0
-#define CONFIG_FILMSTRIP_MUXER 0
-#define CONFIG_FITS_MUXER 0
-#define CONFIG_FLAC_MUXER 0
-#define CONFIG_FLV_MUXER 0
-#define CONFIG_FRAMECRC_MUXER 0
-#define CONFIG_FRAMEHASH_MUXER 0
-#define CONFIG_FRAMEMD5_MUXER 0
-#define CONFIG_G722_MUXER 0
-#define CONFIG_G723_1_MUXER 0
-#define CONFIG_G726_MUXER 0
-#define CONFIG_G726LE_MUXER 0
-#define CONFIG_GIF_MUXER 0
-#define CONFIG_GSM_MUXER 0
-#define CONFIG_GXF_MUXER 0
-#define CONFIG_H261_MUXER 0
-#define CONFIG_H263_MUXER 0
-#define CONFIG_H264_MUXER 0
-#define CONFIG_HASH_MUXER 0
-#define CONFIG_HDS_MUXER 0
-#define CONFIG_HEVC_MUXER 0
-#define CONFIG_HLS_MUXER 0
-#define CONFIG_ICO_MUXER 0
-#define CONFIG_ILBC_MUXER 0
-#define CONFIG_IMAGE2_MUXER 0
-#define CONFIG_IMAGE2PIPE_MUXER 0
-#define CONFIG_IPOD_MUXER 0
-#define CONFIG_IRCAM_MUXER 0
-#define CONFIG_ISMV_MUXER 0
-#define CONFIG_IVF_MUXER 0
-#define CONFIG_JACOSUB_MUXER 0
-#define CONFIG_LATM_MUXER 0
-#define CONFIG_LRC_MUXER 0
-#define CONFIG_M4V_MUXER 0
-#define CONFIG_MD5_MUXER 0
-#define CONFIG_MATROSKA_MUXER 0
-#define CONFIG_MATROSKA_AUDIO_MUXER 0
-#define CONFIG_MICRODVD_MUXER 0
-#define CONFIG_MJPEG_MUXER 0
-#define CONFIG_MLP_MUXER 0
-#define CONFIG_MMF_MUXER 0
-#define CONFIG_MOV_MUXER 0
-#define CONFIG_MP2_MUXER 0
-#define CONFIG_MP3_MUXER 0
-#define CONFIG_MP4_MUXER 0
-#define CONFIG_MPEG1SYSTEM_MUXER 0
-#define CONFIG_MPEG1VCD_MUXER 0
-#define CONFIG_MPEG1VIDEO_MUXER 0
-#define CONFIG_MPEG2DVD_MUXER 0
-#define CONFIG_MPEG2SVCD_MUXER 0
-#define CONFIG_MPEG2VIDEO_MUXER 0
-#define CONFIG_MPEG2VOB_MUXER 0
-#define CONFIG_MPEGTS_MUXER 0
-#define CONFIG_MPJPEG_MUXER 0
-#define CONFIG_MXF_MUXER 0
-#define CONFIG_MXF_D10_MUXER 0
-#define CONFIG_MXF_OPATOM_MUXER 0
-#define CONFIG_NULL_MUXER 0
-#define CONFIG_NUT_MUXER 0
-#define CONFIG_OGA_MUXER 0
-#define CONFIG_OGG_MUXER 0
-#define CONFIG_OGV_MUXER 0
-#define CONFIG_OMA_MUXER 0
-#define CONFIG_OPUS_MUXER 0
-#define CONFIG_PCM_ALAW_MUXER 0
-#define CONFIG_PCM_MULAW_MUXER 0
-#define CONFIG_PCM_VIDC_MUXER 0
-#define CONFIG_PCM_F64BE_MUXER 0
-#define CONFIG_PCM_F64LE_MUXER 0
-#define CONFIG_PCM_F32BE_MUXER 0
-#define CONFIG_PCM_F32LE_MUXER 0
-#define CONFIG_PCM_S32BE_MUXER 0
-#define CONFIG_PCM_S32LE_MUXER 0
-#define CONFIG_PCM_S24BE_MUXER 0
-#define CONFIG_PCM_S24LE_MUXER 0
-#define CONFIG_PCM_S16BE_MUXER 0
-#define CONFIG_PCM_S16LE_MUXER 0
-#define CONFIG_PCM_S8_MUXER 0
-#define CONFIG_PCM_U32BE_MUXER 0
-#define CONFIG_PCM_U32LE_MUXER 0
-#define CONFIG_PCM_U24BE_MUXER 0
-#define CONFIG_PCM_U24LE_MUXER 0
-#define CONFIG_PCM_U16BE_MUXER 0
-#define CONFIG_PCM_U16LE_MUXER 0
-#define CONFIG_PCM_U8_MUXER 0
-#define CONFIG_PSP_MUXER 0
-#define CONFIG_RAWVIDEO_MUXER 0
-#define CONFIG_RM_MUXER 0
-#define CONFIG_ROQ_MUXER 0
-#define CONFIG_RSO_MUXER 0
-#define CONFIG_RTP_MUXER 0
-#define CONFIG_RTP_MPEGTS_MUXER 0
-#define CONFIG_RTSP_MUXER 0
-#define CONFIG_SAP_MUXER 0
-#define CONFIG_SBC_MUXER 0
-#define CONFIG_SCC_MUXER 0
-#define CONFIG_SEGAFILM_MUXER 0
-#define CONFIG_SEGMENT_MUXER 0
-#define CONFIG_STREAM_SEGMENT_MUXER 0
-#define CONFIG_SINGLEJPEG_MUXER 0
-#define CONFIG_SMJPEG_MUXER 0
-#define CONFIG_SMOOTHSTREAMING_MUXER 0
-#define CONFIG_SOX_MUXER 0
-#define CONFIG_SPX_MUXER 0
-#define CONFIG_SPDIF_MUXER 0
-#define CONFIG_SRT_MUXER 0
-#define CONFIG_SUP_MUXER 0
-#define CONFIG_SWF_MUXER 0
-#define CONFIG_TEE_MUXER 0
-#define CONFIG_TG2_MUXER 0
-#define CONFIG_TGP_MUXER 0
-#define CONFIG_MKVTIMESTAMP_V2_MUXER 0
-#define CONFIG_TRUEHD_MUXER 0
-#define CONFIG_TTA_MUXER 0
-#define CONFIG_UNCODEDFRAMECRC_MUXER 0
-#define CONFIG_VC1_MUXER 0
-#define CONFIG_VC1T_MUXER 0
-#define CONFIG_VOC_MUXER 0
-#define CONFIG_W64_MUXER 0
-#define CONFIG_WAV_MUXER 0
-#define CONFIG_WEBM_MUXER 0
-#define CONFIG_WEBM_DASH_MANIFEST_MUXER 0
-#define CONFIG_WEBM_CHUNK_MUXER 0
-#define CONFIG_WEBP_MUXER 0
-#define CONFIG_WEBVTT_MUXER 0
-#define CONFIG_WTV_MUXER 0
-#define CONFIG_WV_MUXER 0
-#define CONFIG_YUV4MPEGPIPE_MUXER 0
-#define CONFIG_CHROMAPRINT_MUXER 0
-#define CONFIG_ASYNC_PROTOCOL 1
-#define CONFIG_BLURAY_PROTOCOL 0
-#define CONFIG_CACHE_PROTOCOL 1
-#define CONFIG_CONCAT_PROTOCOL 1
-#define CONFIG_CRYPTO_PROTOCOL 1
-#define CONFIG_DATA_PROTOCOL 1
-#define CONFIG_FFRTMPCRYPT_PROTOCOL 0
-#define CONFIG_FFRTMPHTTP_PROTOCOL 0
-#define CONFIG_FILE_PROTOCOL 1
-#define CONFIG_FTP_PROTOCOL 0
-#define CONFIG_GOPHER_PROTOCOL 0
-#define CONFIG_HLS_PROTOCOL 1
-#define CONFIG_HTTP_PROTOCOL 0
-#define CONFIG_HTTPPROXY_PROTOCOL 0
-#define CONFIG_HTTPS_PROTOCOL 0
-#define CONFIG_ICECAST_PROTOCOL 0
-#define CONFIG_MMSH_PROTOCOL 0
-#define CONFIG_MMST_PROTOCOL 0
-#define CONFIG_MD5_PROTOCOL 1
-#define CONFIG_PIPE_PROTOCOL 1
-#define CONFIG_PROMPEG_PROTOCOL 1
-#define CONFIG_RTMP_PROTOCOL 0
-#define CONFIG_RTMPE_PROTOCOL 0
-#define CONFIG_RTMPS_PROTOCOL 0
-#define CONFIG_RTMPT_PROTOCOL 0
-#define CONFIG_RTMPTE_PROTOCOL 0
-#define CONFIG_RTMPTS_PROTOCOL 0
-#define CONFIG_RTP_PROTOCOL 0
-#define CONFIG_SCTP_PROTOCOL 0
-#define CONFIG_SRTP_PROTOCOL 0
-#define CONFIG_SUBFILE_PROTOCOL 1
-#define CONFIG_TEE_PROTOCOL 1
-#define CONFIG_TCP_PROTOCOL 0
-#define CONFIG_TLS_PROTOCOL 0
-#define CONFIG_UDP_PROTOCOL 0
-#define CONFIG_UDPLITE_PROTOCOL 0
-#define CONFIG_UNIX_PROTOCOL 0
-#define CONFIG_LIBRTMP_PROTOCOL 0
-#define CONFIG_LIBRTMPE_PROTOCOL 0
-#define CONFIG_LIBRTMPS_PROTOCOL 0
-#define CONFIG_LIBRTMPT_PROTOCOL 0
-#define CONFIG_LIBRTMPTE_PROTOCOL 0
-#define CONFIG_LIBSRT_PROTOCOL 0
-#define CONFIG_LIBSSH_PROTOCOL 0
-#define CONFIG_LIBSMBCLIENT_PROTOCOL 0
-#endif /* FFMPEG_CONFIG_H */
diff --git a/build/ffmpeg/config.h b/build/ffmpeg/config.h
deleted file mode 100644
index 40152db8c..000000000
--- a/build/ffmpeg/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#ifdef _WIN64
-#include "config-x64.h"
-#else
-#include "config-x86.h"
-#endif
diff --git a/build/ffmpeg/configure.sh b/build/ffmpeg/configure.sh
deleted file mode 100755
index b73d79a81..000000000
--- a/build/ffmpeg/configure.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-platform='Win32'
-suffix='x86'
-if [[ $LIB =~ x64 ]]; then
- platform='x64'
- suffix='x64'
-fi
-
-./configure $@ \
- --disable-avfilter \
- --disable-avresample \
- --disable-bzlib \
- --disable-d3d11va \
- --disable-dxva2 \
- --disable-decoder=atrac3p,indeo2,indeo3,indeo4,indeo5,twinvq \
- --disable-devices \
- --disable-doc \
- --disable-encoders \
- --disable-ffmpeg \
- --disable-ffplay \
- --disable-ffprobe \
- --disable-filters \
- --disable-hwaccels \
- --disable-muxers \
- --disable-network \
- --disable-postproc \
- --disable-pthreads \
- --disable-shared \
- --enable-gpl \
- --enable-runtime-cpudetect \
- --enable-static \
- --enable-small \
- --enable-x86asm \
- --x86asmexe=yasm \
- --enable-zlib \
- --extra-cflags=-D_SYSCRT \
- --extra-cflags=-I../../include \
- --extra-cflags=-MD \
- --extra-cflags=-wd4005 \
- --extra-cflags=-wd4189 \
- --extra-ldflags=-LIBPATH:../../lib/$platform/Release \
- --toolchain=msvc
-
-mv config.h ../../build/ffmpeg/config-$suffix.h
-mv config.asm ../../build/ffmpeg/config-$suffix.asm
diff --git a/build/ffmpeg/ffmpeg.vcxproj b/build/ffmpeg/ffmpeg.vcxproj
deleted file mode 100644
index d1663004b..000000000
--- a/build/ffmpeg/ffmpeg.vcxproj
+++ /dev/null
@@ -1,1415 +0,0 @@
-
-
-
- {F934AB7B-186B-4E96-B20C-A58C38C1B819}
- ffmpeg
- lib
- $(FfmpegSrcDir)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(MSBuildThisFileDirectory);
- $(FfmpegSrcDir);
- $(FfmpegSrcDir)\compat\atomics\win32;
- $(AegisubSourceBase)\include;
-
-
- HAVE_AV_CONFIG_H;
- _CRT_SECURE_NO_WARNINGS;
- _FILE_OFFSET_BITS=64;
- _ISOC99_SOURCE;
- _LARGEFILE_SOURCE;
- _SYSCRT;
- _USE_MATH_DEFINES;
- _WIN32_WINNT=0x0602;
- inline=__inline;
- %(PreprocessorDefinitions)
-
- stdlib.h;%(ForcedIncludeFiles)
- Level1
-
-
- MinSpace
- ProgramDatabase
- Default
- true
- false
- $(FfmpegSrcDir)
-
-
- $(FfmpegSrcDir)
-
-
- $(FfmpegSrcDir)\
- %(Include) -I$(MSBuildThisFileDirectory) -I$(FfmpegSrcDir)
- %(Config) -DPREFIX -Pconfig-x86.asm
- %(Config) -Pconfig-x64.asm
-
-
-
-
-
-
- {10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(MSBuildThisFileDirectory)
-
-
- $(MSBuildThisFileDirectory)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/ffmpeg/ffmpeg.vcxproj.filters b/build/ffmpeg/ffmpeg.vcxproj.filters
deleted file mode 100644
index 25c259cfc..000000000
--- a/build/ffmpeg/ffmpeg.vcxproj.filters
+++ /dev/null
@@ -1,2659 +0,0 @@
-
-
-
-
- libavdevice
-
-
- libavdevice
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavformat
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavresample
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libavcodec
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- libswscale
-
-
- compat
-
-
- compat
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
- libavutil
-
-
-
-
- {37917d7c-3879-482a-bb0c-36ad05f4b6ff}
-
-
- {6b42873d-3fb7-4135-a5a0-0c80b081519f}
-
-
- {aa5c6ccd-b317-41a7-9fc5-e319d1154e97}
-
-
- {a667d61f-5608-4726-9052-28df0130c602}
-
-
- {2ca1cbec-46c2-41d7-b3e0-94bafb352413}
-
-
- {b3cb6744-99da-450a-86f6-914bebe58ff2}
-
-
- {ad571b1a-bdc8-4b66-bfee-9a2695bd50c3}
-
-
-
diff --git a/build/ffmpeg/get-file-list.sh b/build/ffmpeg/get-file-list.sh
deleted file mode 100755
index d5b5b5213..000000000
--- a/build/ffmpeg/get-file-list.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-rm -f make-dry
-make -n > make-dry
-grep '^cl' make-dry \
- | sed 's/.*\(lib[^ ]*.c\) .*/\1/' \
- | sed 's/\//\\/g' \
- | sed 's/\(.*\)//' \
- | sort
-echo
-grep '^yasm' make-dry \
- | sed 's/.*\(lib[^ ]*.asm\) .*/\1/' \
- | sed 's/\//\\/g' \
- | sed 's/\(.*\)//' \
- | sort
diff --git a/build/ffmpeg/libavutil/avconfig.h b/build/ffmpeg/libavutil/avconfig.h
deleted file mode 100644
index 36a8cd14d..000000000
--- a/build/ffmpeg/libavutil/avconfig.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* Generated by ffconf */
-#ifndef AVUTIL_AVCONFIG_H
-#define AVUTIL_AVCONFIG_H
-#define AV_HAVE_BIGENDIAN 0
-#define AV_HAVE_FAST_UNALIGNED 1
-#define AV_HAVE_INCOMPATIBLE_LIBAV_ABI 0
-#endif /* AVUTIL_AVCONFIG_H */
diff --git a/build/ffmpeg/libavutil/ffversion.h b/build/ffmpeg/libavutil/ffversion.h
deleted file mode 100644
index 3322c7d0e..000000000
--- a/build/ffmpeg/libavutil/ffversion.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef AVUTIL_FFVERSION_H
-#define AVUTIL_FFVERSION_H
-#define FFMPEG_VERSION "N-74177-g802e512"
-#endif /* AVUTIL_FFVERSION_H */
diff --git a/build/ffms2/ffms2.vcxproj b/build/ffms2/ffms2.vcxproj
deleted file mode 100644
index a8dd49750..000000000
--- a/build/ffms2/ffms2.vcxproj
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
- {AA137613-96A1-4388-8905-71345B4F8F87}
- ffms2
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
-
- $(FfmsSrcDir)\include;
- %(AdditionalIncludeDirectories)
-
-
- WITH_SWRESAMPLE;
- FFMS_EXPORTS;
- FFMS_STATIC;
- _CRT_SECURE_NO_WARNINGS;
- _CRT_NONSTDC_NO_DEPRECATE;
- _SCL_SECURE_NO_WARNINGS;
- __STDC_CONSTANT_MACROS;
- %(PreprocessorDefinitions)
-
- 4250;%(DisableSpecificWarnings)
- false
-
-
- $(AegisubLibraryDir);%(AdditionalLibraryDirectories)
-
-
- $(FfmsSrcDir)\include
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {f934ab7b-186b-4e96-b20c-a58c38c1b819}
-
-
- {10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}
-
-
-
diff --git a/build/ffms2/ffms2.vcxproj.filters b/build/ffms2/ffms2.vcxproj.filters
deleted file mode 100644
index 6e948bff6..000000000
--- a/build/ffms2/ffms2.vcxproj.filters
+++ /dev/null
@@ -1,126 +0,0 @@
-
-
-
-
- {ed366ac0-ef41-4c15-b40e-4db3c76b17db}
-
-
- {a5f150b5-ae8e-448c-a724-bbdca106ea10}
-
-
- {14a03221-39fc-4803-b677-e90f2290666b}
-
-
- {132a91ed-71ff-4574-aba8-09d496869832}
-
-
- {7e197647-eb8c-44bc-b6d8-6368b242478c}
-
-
- {fab6c2c7-eeae-4009-a932-fc079402db63}
-
-
- {8a87437e-fe04-4b74-a917-f8c108247e3f}
-
-
-
-
- Audio
-
-
- Indexing
-
-
- Video
-
-
- API
-
-
- Utils
-
-
- Avisynth
-
-
- Avisynth
-
-
- Avisynth
-
-
- Avisynth
-
-
- Video
-
-
- VapourSynth
-
-
- VapourSynth
-
-
- Utils
-
-
- Utils
-
-
- Utils
-
-
- Indexing
-
-
-
-
- Audio
-
-
- Indexing
-
-
- Video
-
-
- API
-
-
- Utils
-
-
- Utils
-
-
- Avisynth
-
-
- Avisynth
-
-
- Avisynth
-
-
- Avisynth
-
-
- Video
-
-
- VapourSynth
-
-
- VapourSynth
-
-
- Utils
-
-
- Utils
-
-
- Indexing
-
-
-
diff --git a/build/fftw/config.h b/build/fftw/config.h
deleted file mode 100755
index 9b69b7c1b..000000000
--- a/build/fftw/config.h
+++ /dev/null
@@ -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 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 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 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 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 */
-#undef HAVE_HRTIME_T
-
-/* Define to 1 if you have the header file. */
-#undef HAVE_INTRINSICS_H
-
-/* Define to 1 if you have the header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define if the isnan() function/macro is available. */
-#undef HAVE_ISNAN
-
-/* Define to 1 if you have the 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 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 header file. */
-#undef HAVE_MACH_MACH_TIME_H
-
-/* Define to 1 if you have the 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 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 header file. */
-#define HAVE_STDDEF_H 1
-
-/* Define to 1 if you have the header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the 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 header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the header file. */
-#undef HAVE_SYS_SYSCTL_H
-
-/* Define to 1 if you have the header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the 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 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 and . */
-#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 does not define. */
-#undef size_t
diff --git a/build/fftw/fftw.vcxproj b/build/fftw/fftw.vcxproj
deleted file mode 100644
index d33267b42..000000000
--- a/build/fftw/fftw.vcxproj
+++ /dev/null
@@ -1,677 +0,0 @@
-
-
-
- {EA3DCC95-2423-4EA0-A508-7A427B4C0594}
- fftw
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
-
- $(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)
-
- StreamingSIMDExtensions2
- true
- Default
- $(FftwSrcDir)
-
-
- $(FftwSrcDir)\api
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/fftw/fftw.vcxproj.filters b/build/fftw/fftw.vcxproj.filters
deleted file mode 100644
index 94f248c47..000000000
--- a/build/fftw/fftw.vcxproj.filters
+++ /dev/null
@@ -1,1937 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {3dd1ffe6-144b-43e1-8a12-fb7f8aafb1e2}
-
-
- {da4b7e4d-80be-454f-bfc7-1b2c1166c53e}
-
-
- {f0807dd9-20c0-4fbd-8628-cee199b26f80}
-
-
- {b2393625-a2c0-4936-a3fe-af75442e1b88}
-
-
- {07faef18-6f66-4a44-af6c-7147c0f36a05}
-
-
- {8ed8b906-1abd-4a9c-96a1-ade012dcffa9}
-
-
- {d74e2c56-219c-4720-a426-3af6711fff69}
-
-
- {6259dc8b-53b4-4a22-b39a-bf803ceb5678}
-
-
- {e2e67124-a7eb-4f3e-af46-2b104ff6b27c}
-
-
- {e1e8f092-fc93-41bc-b81d-6cb49c8e3d70}
-
-
- {b14b7826-b537-4773-ab25-01b0b6d3b3f2}
-
-
- {c39e48d8-19e1-4029-b066-9ea7de26dd9e}
-
-
- {d36658fc-ec66-4810-8e07-4b62cc98fd67}
-
-
- {1fb426ff-71da-4196-9b6a-4cd5b0996ac0}
-
-
- {ea0ee65f-3857-436a-877e-65585dc398b7}
-
-
- {49fa6be1-8f5c-4f77-a35b-337d7affb158}
-
-
- {a004fba2-72cd-4762-b21e-7982b7801d79}
-
-
-
-
- Header Files
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
diff --git a/build/freetype2/freetype.vcxproj b/build/freetype2/freetype.vcxproj
deleted file mode 100644
index fdb8fbdf4..000000000
--- a/build/freetype2/freetype.vcxproj
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
- {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}
- freetype
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
- $(Freetype2SrcDir)\include;%(AdditionalIncludeDirectories)
- _LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)
- true
- true
- 4001
-
-
- 0x0409
-
-
- $(Freetype2SrcDir)\include
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/freetype2/freetype.vcxproj.filters b/build/freetype2/freetype.vcxproj.filters
deleted file mode 100644
index 9787c9d06..000000000
--- a/build/freetype2/freetype.vcxproj.filters
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
-
- {b4c15893-ec11-491d-9507-0ac184f9cc78}
- cpp;c;cxx;rc;def;r;odl;idl;hpj;bat
-
-
- {4d3e4eff-3fbc-4b20-b413-2743b23b7109}
-
-
- {e6cf6a0f-0404-4024-8bf8-ff5b29f35657}
- h;hpp;hxx;hm;inl
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
diff --git a/build/freetype2/ftsystem.cpp b/build/freetype2/ftsystem.cpp
deleted file mode 100644
index c380bb058..000000000
--- a/build/freetype2/ftsystem.cpp
+++ /dev/null
@@ -1,75 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-// The non-unix version of ftsystem.c uses stdio functions, but freetype uses
-// streams as if they had mmap's performance characteristics (as it uses mmap
-// on unix), which results in mind-blowingly poor performance (35%+ of the
-// fontconfig caching runtime is spent on fseek).
-
-#include
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_STREAM_H
-#include FT_SYSTEM_H
-#include FT_ERRORS_H
-
-#include
-#include
-
-extern "C" FT_Error FT_Stream_Open(FT_Stream stream, const char *filepathname) {
- if (!stream)
- return FT_THROW(Invalid_Stream_Handle);
-
- stream->descriptor.pointer = nullptr;
- stream->pathname.pointer = const_cast(filepathname);
- stream->base = nullptr;
- stream->pos = 0;
- stream->read = nullptr;
- stream->close = nullptr;
-
- std::wstring_convert, wchar_t> converter;
- std::ifstream file(converter.from_bytes(filepathname), std::ios::binary);
- if (!file.good())
- return FT_THROW(Cannot_Open_Resource);
-
- file.seekg(0, std::ios::end);
- stream->size = (unsigned long)file.tellg();
- if (!stream->size)
- return FT_THROW(Cannot_Open_Stream);
- file.seekg(0, std::ios::beg);
-
- stream->base = (unsigned char *)malloc(stream->size);
- file.read((char *)stream->base, stream->size);
-
- stream->close = [](FT_Stream stream) {
- free(stream->base);
- stream->size = 0;
- stream->base = nullptr;
- };
-
- return FT_Err_Ok;
-}
-
-extern "C" FT_Memory FT_New_Memory() {
- return new FT_MemoryRec_{
- nullptr,
- [](FT_Memory, long size) { return malloc(size); },
- [](FT_Memory, void *ptr) { free(ptr); },
- [](FT_Memory, long, long size, void *ptr) { return realloc(ptr, size); }};
-}
-
-extern "C" void FT_Done_Memory(FT_Memory memory) {
- delete memory;
-}
diff --git a/build/fribidi/fribidi-config.h b/build/fribidi/fribidi-config.h
deleted file mode 100644
index 43af643a9..000000000
--- a/build/fribidi/fribidi-config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef FRIBIDI_CONFIG_H
-#define FRIBIDI_CONFIG_H
-
-#define FRIBIDI "fribidi"
-#define FRIBIDI_NAME "GNU FriBidi"
-#define FRIBIDI_BUGREPORT "http://bugs.freedesktop.org/enter_bug.cgi?product=fribidi"
-
-#define FRIBIDI_VERSION "0.19.6"
-#define FRIBIDI_MAJOR_VERSION 0
-#define FRIBIDI_MINOR_VERSION 19
-#define FRIBIDI_MICRO_VERSION 6
-#define FRIBIDI_INTERFACE_VERSION 3
-#define FRIBIDI_INTERFACE_VERSION_STRING "3"
-
-#define FRIBIDI_CHARSETS 0
-#define FRIBIDI_USE_GLIB 0
-#define FRIBIDI_SIZEOF_INT 4
-#define HAVE_STDLIB_H 1
-#define USE_SIMPLE_MALLOC 1
-
-#define HAVE_STRINGIZE 1
-#endif
diff --git a/build/fribidi/fribidi.vcxproj b/build/fribidi/fribidi.vcxproj
deleted file mode 100644
index 860a6767d..000000000
--- a/build/fribidi/fribidi.vcxproj
+++ /dev/null
@@ -1,64 +0,0 @@
-
-
-
- {FB8E8D19-A4D6-4181-943C-282075F49B41}
- fribidi
- lib
-
-
-
-
-
-
-
-
-
-
-
- $(FribidiSrcDir)\lib;
- $(MSBuildThisFileDirectory);
- %(AdditionalIncludeDirectories)
-
-
- FRIBIDI_ENTRY=;
- %(PreprocessorDefinitions)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(FribidiSrcDir)\lib
-
-
- $(MSBuildThisFileDirectory)
-
-
-
diff --git a/build/fribidi/fribidi.vcxproj.filters b/build/fribidi/fribidi.vcxproj.filters
deleted file mode 100644
index c9768c8a5..000000000
--- a/build/fribidi/fribidi.vcxproj.filters
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/build/googletest/googletest.vcxproj b/build/googletest/googletest.vcxproj
deleted file mode 100644
index ff7e14560..000000000
--- a/build/googletest/googletest.vcxproj
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
- {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}
- googletest
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
- GTEST_HAS_TR1_TUPLE=0;
- %(PreprocessorDefinitions)
-
-
- $(GtestSrcDir);
- %(AdditionalIncludeDirectories)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/googletest/googletest.vcxproj.filters b/build/googletest/googletest.vcxproj.filters
deleted file mode 100644
index 883838a26..000000000
--- a/build/googletest/googletest.vcxproj.filters
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {ad1eaa10-1448-406d-924c-ec1a608cec0b}
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
-
-
- Header Files
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
- Header Files\internal
-
-
-
-
- Source Files
-
-
-
diff --git a/build/hunspell/hunspell.vcxproj b/build/hunspell/hunspell.vcxproj
deleted file mode 100644
index 0de22503f..000000000
--- a/build/hunspell/hunspell.vcxproj
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
- {CC791693-6B28-40AC-879D-64A6C16468E3}
- hunspell
-
-
-
-
- lib
- ..\..\vendor\hunspell\src\
-
-
-
-
-
-
-
-
- HUNSPELL_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- $(SrcDir)win_api;$(SrcDir)hunspell;%(AdditionalIncludeDirectories)
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/hunspell/hunspell.vcxproj.filters b/build/hunspell/hunspell.vcxproj.filters
deleted file mode 100644
index fdb464513..000000000
--- a/build/hunspell/hunspell.vcxproj.filters
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
\ No newline at end of file
diff --git a/build/icu/icu.vcxproj b/build/icu/icu.vcxproj
deleted file mode 100644
index 602b7e3e9..000000000
--- a/build/icu/icu.vcxproj
+++ /dev/null
@@ -1,703 +0,0 @@
-
-
-
- {F934AB7B-186B-4E96-B20C-A58C38C1B818}
- icu
- lib
- true
-
-
-
-
-
-
-
-
-
-
-
- $(IcuSrcDir)\common;
- $(IcuSrcDir)\common\unicode;
- $(IcuSrcDir)\i18n;
- $(IcuSrcDir)\i18n\unicode;
- %(AdditionalIncludeDirectories)
-
-
- U_ENABLE_DYLOAD=0;
- U_CHECK_DYLOAD=0;
- UCONFIG_NO_FILE_IO=1;
- UCONFIG_NO_LEGACY_CONVERSION=1;
- U_CHARSET_IS_UTF8=1;
- UCONFIG_NO_IDNA=1;
- UCONFIG_NO_FORMATTING=1;
- UCONFIG_NO_TRANSLITERATION=1;
-
- U_ATTRIBUTE_DEPRECATED=;
- _CRT_SECURE_NO_DEPRECATE;
- U_COMMON_IMPLEMENTATION;
- U_I18N_IMPLEMENTATION;
- %(PreprocessorDefinitions)
-
-
-
-
-
-
- $(AegisubBinaryDir)luajit-minilua$(AegisubPlatformSuffix)
- $(MSBuildThisFileDirectory)pack-dt.lua
- icudt53l
- MultiByte
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(IcuSrcDir)\i18n
-
-
- $(IcuSrcDir)\common
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
-
-
- false
-
-
-
- false
-
-
-
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
-
-
-
-
-
-
- false
-
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
-
-
- false
-
-
- false
-
-
-
-
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {fcaed410-90ef-4ef9-916c-4b86dc13a3cf}
-
-
-
diff --git a/build/icu/icu.vcxproj.filters b/build/icu/icu.vcxproj.filters
deleted file mode 100644
index d638dafec..000000000
--- a/build/icu/icu.vcxproj.filters
+++ /dev/null
@@ -1,1744 +0,0 @@
-
-
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
-
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- common
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
- i18n
-
-
-
-
- {12edb004-4c5b-4b0d-ae85-3dd475dbb4c3}
-
-
- {7d3ae04e-88bb-462a-8923-eb7438de142e}
-
-
-
diff --git a/build/icu/pack-dt.lua b/build/icu/pack-dt.lua
deleted file mode 100644
index 0e95ed1e7..000000000
--- a/build/icu/pack-dt.lua
+++ /dev/null
@@ -1,47 +0,0 @@
--- Copyright (c) 2014, Thomas Goyne
---
--- 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/
-
-local ICU_VERSION = 'icudt53'
-
-local function try_open(filename, mode)
- local file, err = io.open(filename, mode)
- if not file then
- io.stdout:write(string.format('Failed to open "%s": %s\n', filename, err))
- os.exit(1)
- end
- return file
-end
-
-local icu_root, out_path = ...
-
-local infile = try_open(string.format('%s/data/in/%sl.dat', icu_root, ICU_VERSION), 'rb')
-local outfile = try_open(out_path, 'w')
-
-outfile:write("const unsigned char " .. ICU_VERSION .. "_dat[] = {")
-
-local len = 0
-while true do
- local bytes = infile:read(65536)
- if not bytes then break end
-
- for i = 1, #bytes do
- if len > 0 then outfile:write(',') end
- outfile:write(string.format('%d', bytes:byte(i)))
- len = len + 1
- end
-end
-outfile:write('};\n')
-
diff --git a/build/install.targets b/build/install.targets
deleted file mode 100644
index 818536fbb..000000000
--- a/build/install.targets
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/libaegisub/libaegisub.vcxproj b/build/libaegisub/libaegisub.vcxproj
deleted file mode 100644
index a431eb5eb..000000000
--- a/build/libaegisub/libaegisub.vcxproj
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
-
- {BB3FED86-DB7A-4DC7-964A-260FB86CDE61}
- libaegisub
-
-
-
- lib
- ..\..\libaegisub\
-
-
-
-
-
-
-
-
- $(WindowsSDK_IncludePath);
- $(SrcDir);
- $(SrcDir)include;
- %(AdditionalIncludeDirectories)
-
-
- NOMINMAX;
- _WIN32_WINNT=0x0602;
- _CRT_NONSTDC_NO_DEPRECATE;
- WITH_UCHARDET;
- %(PreprocessorDefinitions)
-
- Use
- lagi_pre.h
- lagi_pre.h
- $(SrcDir)
-
-
-
-
-
-
- {a649d828-a399-4d81-adef-94cfdba7847f}
-
-
- {f934ab7b-186b-4e96-b20c-a58c38c1b818}
-
-
- {965054d2-44f2-4eb2-9879-051cc3d7ef08}
-
-
- {A7A30702-8162-4E1A-A010-EF51B590C121}
-
-
- {5391a8b1-9c70-4dc4-92ad-d3e34c6b803f}
-
-
- {7b56955d-5162-4698-aa5b-47484edc8783}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Create
- lagi_pre.h
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- NotUsing
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/libaegisub/libaegisub.vcxproj.filters b/build/libaegisub/libaegisub.vcxproj.filters
deleted file mode 100644
index 157c48198..000000000
--- a/build/libaegisub/libaegisub.vcxproj.filters
+++ /dev/null
@@ -1,388 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {4084442f-51e9-4c31-8d5a-c825e076c012}
-
-
- {1d2e187a-1681-4c30-8912-a4b5a5d0ab9d}
-
-
- {c97bd8a3-ebb7-4c43-9ca0-4ab8479d9388}
-
-
- {ce495b25-1630-42e1-8ab0-053c313448f0}
-
-
- {2cf3ad94-e8a9-4a89-b47e-29523d90fd08}
-
-
- {fce4f3aa-dc34-44fe-9a6a-99b0914e3436}
-
-
- {5af331b5-ea1f-493f-abf9-f5912e2350df}
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- cajun
-
-
- cajun
-
-
- cajun
-
-
- cajun
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- ASS
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Lua
-
-
- Lua
-
-
- Lua\Modules
-
-
- Lua
-
-
- Lua
-
-
- Header Files
-
-
- Audio
-
-
-
-
- Source Files
-
-
- Source Files\Windows
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Windows
-
-
- Source Files\Windows
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Windows
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Windows
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- cajun
-
-
- cajun
-
-
- cajun
-
-
- ASS
-
-
- ASS
-
-
- ASS
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Windows
-
-
- Source Files\Windows
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Source Files\Common
-
-
- Lua
-
-
- Lua
-
-
- Lua\Modules
-
-
- Lua\Modules
-
-
- Lua\Modules
-
-
- Lua
-
-
- Lua\Modules
-
-
- Source Files\Common
-
-
- Audio
-
-
- Audio
-
-
- Audio
-
-
- Audio
-
-
- Audio
-
-
- Audio
-
-
- Audio
-
-
-
-
- Header Files
-
-
-
diff --git a/build/libass/config.h b/build/libass/config.h
deleted file mode 100644
index d2fc12117..000000000
--- a/build/libass/config.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#define _CRT_SECURE_NO_WARNINGS
-#define _CRT_NONSTDC_NO_DEPRECATE
-
-#define CONFIG_ASM 1
-#define CONFIG_RASTERIZER 1
-#define CONFIG_DIRECTWRITE 1
diff --git a/build/libass/dirent.h b/build/libass/dirent.h
deleted file mode 100644
index fcbd0289b..000000000
--- a/build/libass/dirent.h
+++ /dev/null
@@ -1,6 +0,0 @@
-// libass uses dirent in a function we don't use, so just provide a dummy version
-typedef struct DIR { int dummy; } DIR;
-typedef struct dirent { char *d_name; } dirent;
-static inline DIR *opendir(const char *x) { return 0; }
-static inline struct dirent *readdir(DIR *x) { return 0; }
-static inline void closedir(DIR *x) { }
diff --git a/build/libass/libass.vcxproj b/build/libass/libass.vcxproj
deleted file mode 100644
index 61408f354..000000000
--- a/build/libass/libass.vcxproj
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
- {8804F253-DA67-4CC4-926B-0CD2AEE5778D}
- libass
-
-
-
-
- lib
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(LibassSrcDir)\libass;
- $(MSBuildThisFileDirectory);
- $(AegisubSourceBase)\include\fribidi;
- %(AdditionalIncludeDirectories)
-
-
- inline=__inline;
- FRIBIDI_ENTRY=;
- %(PreprocessorDefinitions)
-
-
-
- $(LibassSrcDir)\libass
- ass\
-
-
- %(Config) -DARCH_X86_64=0 -DPREFIX -DHAVE_ALIGNED_STACK=0
- %(Config) -DARCH_X86_64=1 -DHAVE_ALIGNED_STACK=1
-
-
-
-
-
-
-
-
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {78b079bd-9fc7-4b9e-b4a6-96da0f00248b}
-
-
- {fb8e8d19-a4d6-4181-943c-282075f49b41}
-
-
-
\ No newline at end of file
diff --git a/build/libass/libass.vcxproj.filters b/build/libass/libass.vcxproj.filters
deleted file mode 100644
index db35379ba..000000000
--- a/build/libass/libass.vcxproj.filters
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {56793734-89BD-4b04-88EB-625FBE52EBFB}
- asm
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
- Assembly Files
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
\ No newline at end of file
diff --git a/build/libass/strings.h b/build/libass/strings.h
deleted file mode 100644
index 8279fd78d..000000000
--- a/build/libass/strings.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#define strncasecmp _strnicmp
-#define strcasecmp _stricmp
-
diff --git a/build/libass/unistd.h b/build/libass/unistd.h
deleted file mode 100644
index e69de29bb..000000000
diff --git a/build/libiconv/libiconv.vcxproj b/build/libiconv/libiconv.vcxproj
deleted file mode 100644
index 712551531..000000000
--- a/build/libiconv/libiconv.vcxproj
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
- {965054D2-44F2-4EB2-9879-051CC3D7EF08}
- libiconv
-
-
-
-
- lib
- ..\..\vendor\iconv\
-
-
-
-
-
-
-
-
- $(SrcDir)include;%(AdditionalIncludeDirectories)
- _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- CompileAsC
-
-
- $(SrcDir)include
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/libiconv/libiconv.vcxproj.filters b/build/libiconv/libiconv.vcxproj.filters
deleted file mode 100644
index 4e4a8972b..000000000
--- a/build/libiconv/libiconv.vcxproj.filters
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
-
- Source Files
-
-
- Source Files
-
-
-
diff --git a/build/libpng/libpng.vcxproj b/build/libpng/libpng.vcxproj
deleted file mode 100644
index 9d57ff478..000000000
--- a/build/libpng/libpng.vcxproj
+++ /dev/null
@@ -1,64 +0,0 @@
-
-
-
- {5CABCBEF-E79A-4D27-94A5-CF4EAAF1DD96}
- libpng
-
-
-
-
- lib
- ..\..\vendor\wxWidgets\src\png\
-
-
-
-
-
-
-
-
- {10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}
-
-
-
-
-
- $(SrcDir)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/libpng/libpng.vcxproj.filters b/build/libpng/libpng.vcxproj.filters
deleted file mode 100644
index 355924ee7..000000000
--- a/build/libpng/libpng.vcxproj.filters
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hh;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
\ No newline at end of file
diff --git a/build/libresrc/libresrc.vcxproj b/build/libresrc/libresrc.vcxproj
deleted file mode 100644
index 5a5fafee1..000000000
--- a/build/libresrc/libresrc.vcxproj
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
-
- {BD00D65F-24DA-4784-8860-3B972EA125FC}
- libresrc
-
-
-
-
- lib
- $(MSBuildThisFileDirectory)..\..\src\libresrc\
-
-
-
-
-
-
-
-
- _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
-
-
-
-
-
-
-
-
-
-
-
-
-
- {0518d6c0-7bf6-4fd1-91fb-191bd10db2ac}
-
-
- {fcaed410-90ef-4ef9-916c-4b86dc13a3cf}
-
-
- {5cabcbef-e79a-4d27-94a5-cf4eaaf1dd96}
-
-
-
-
-
-
- default_config
- $(SrcDir)
-
-
- bitmap
- $(SrcDir)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/libresrc/libresrc.vcxproj.filters b/build/libresrc/libresrc.vcxproj.filters
deleted file mode 100644
index 9cedcca48..000000000
--- a/build/libresrc/libresrc.vcxproj.filters
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
-
-
- Resource Files
-
-
- Resource Files
-
-
- Resource Files
-
-
-
diff --git a/build/luabins/luabins.vcxproj b/build/luabins/luabins.vcxproj
deleted file mode 100644
index ef162ac35..000000000
--- a/build/luabins/luabins.vcxproj
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
- {A7A30702-8162-4E1A-A010-EF51B590C121}
- luabins
-
-
-
-
- lib
- ..\..\vendor\luabins\src\
-
-
-
-
-
-
-
-
- _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- $(SrcDir)..\..\lua51\src;%(AdditionalIncludeDirectories)
-
-
-
-
-
-
- {5391a8b1-9c70-4dc4-92ad-d3e34c6b803f}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/luabins/luabins.vcxproj.filters b/build/luabins/luabins.vcxproj.filters
deleted file mode 100644
index 67677205b..000000000
--- a/build/luabins/luabins.vcxproj.filters
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
- {0A33FF05-970D-49a7-B722-73E8EA350084}
-
-
- {2C50401A-5AC6-4630-B633-DFCC190306A8}
-
-
-
-
- Source
-
-
- Source
-
-
- Source
-
-
- Source
-
-
- Source
-
-
- Source
-
-
- Source
-
-
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
-
diff --git a/build/luajit-buildvm/luajit-buildvm.vcxproj b/build/luajit-buildvm/luajit-buildvm.vcxproj
deleted file mode 100644
index 3132e2ab4..000000000
--- a/build/luajit-buildvm/luajit-buildvm.vcxproj
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
- {7CA6A4EB-A11B-4975-8F3A-F633111C6213}
- luajitbuildvm
-
-
-
-
- exe
- ..\..\vendor\luajit\
-
-
-
-
-
-
-
- $(ProjectDir)
- luajit-buildvm$(AegisubPlatformSuffix)
-
-
-
-
- _CRT_SECURE_NO_WARNINGS;
- LUAJIT_ENABLE_LUA52COMPAT;
- %(PreprocessorDefinitions)
-
-
- $(AegisubObjectDir);
- $(SrcDir)dynasm;
- $(SrcDir)src;
- $(SrcDir)src/host;
- %(AdditionalIncludeDirectories)
-
-
-
- $(AegisubLibraryDir);%(AdditionalLibraryDirectories)
- Console
-
-
-
-
-
- $(AegisubBinaryDir)luajit-minilua$(AegisubPlatformSuffix)
- -D P64
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {fcaed410-90ef-4ef9-916c-4b86dc13a3cf}
-
-
-
diff --git a/build/luajit-buildvm/luajit-buildvm.vcxproj.filters b/build/luajit-buildvm/luajit-buildvm.vcxproj.filters
deleted file mode 100644
index e9cb57b99..000000000
--- a/build/luajit-buildvm/luajit-buildvm.vcxproj.filters
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/luajit-minilua/luajit-minilua.vcxproj b/build/luajit-minilua/luajit-minilua.vcxproj
deleted file mode 100644
index f27dbca75..000000000
--- a/build/luajit-minilua/luajit-minilua.vcxproj
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
- {FCAED410-90EF-4EF9-916C-4B86DC13A3CF}
- luajitminilua
-
-
-
-
- exe
-
-
-
-
-
-
-
- $(ProjectDir)
- luajit-minilua$(AegisubPlatformSuffix)
-
-
-
- _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
-
-
- $(AegisubLibraryDir);%(AdditionalLibraryDirectories)
- Console
-
-
-
-
-
-
-
-
diff --git a/build/luajit-minilua/luajit-minilua.vcxproj.filters b/build/luajit-minilua/luajit-minilua.vcxproj.filters
deleted file mode 100644
index 5243cbd1d..000000000
--- a/build/luajit-minilua/luajit-minilua.vcxproj.filters
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/build/luajit/luajit.vcxproj b/build/luajit/luajit.vcxproj
deleted file mode 100644
index 58a34500d..000000000
--- a/build/luajit/luajit.vcxproj
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
- {5391A8B1-9C70-4DC4-92AD-D3E34C6B803F}
- luajit
-
-
-
-
- lib
- ..\..\vendor\luajit\
-
-
-
-
-
-
-
-
-
- _CRT_SECURE_NO_WARNINGS;
- LUAJIT_ENABLE_LUA52COMPAT;
- %(PreprocessorDefinitions)
-
- $(AegisubObjectDir);%(AdditionalIncludeDirectories)
-
-
- $(SrcDir)include
-
-
-
-
-
- $(AegisubBinaryDir)luajit-buildvm$(AegisubPlatformSuffix)
-
- BuildVM;
- ComputeLibDefNames;
- BuildLibDefs;
- $(BuildCompileTargets)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {7ca6a4eb-a11b-4975-8f3a-f633111c6213}
-
-
-
diff --git a/build/luajit/luajit.vcxproj.filters b/build/luajit/luajit.vcxproj.filters
deleted file mode 100644
index 59e9479a1..000000000
--- a/build/luajit/luajit.vcxproj.filters
+++ /dev/null
@@ -1,447 +0,0 @@
-
-
-
-
- {dfbe0704-0805-42a9-b221-0eb02d38e473}
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
-
-
- {46f51bca-6fac-4e83-b18b-5e8145f11f3c}
-
-
- {947aec3e-b05b-404f-bd0d-27dfec92f4d0}
-
-
- {5877d6d7-abc5-4e4d-9c16-64ae7538072e}
-
-
-
-
-
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
- Core
-
-
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
- Headers
-
-
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
- Internal headers
-
-
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
- Standard library
-
-
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
- JIT
-
-
-
diff --git a/build/paths.props b/build/paths.props
deleted file mode 100644
index cc6e5d677..000000000
--- a/build/paths.props
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- <_PropertySheetDisplayName>Path definitions
-
-
-
-
- $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\'))
-
- $(AegisubSourceBase)vendor\
-
- $(AegisubSourceBase)
-
- $(AegisubOutputBase)bin\
-
- $(AegisubOutputBase)lib\$(Platform)\$(Configuration)\
-
- $(AegisubOutputBase)obj\$(ProjectName)-$(Platform)-$(Configuration)\
-
- $(PlatformArchitecture)d
- $(PlatformArchitecture)
- (unk)
-
-
diff --git a/build/respack.targets b/build/respack.targets
deleted file mode 100644
index 5d8cf0194..000000000
--- a/build/respack.targets
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
- $(AegisubBinaryDir)luajit-minilua$(AegisubPlatformSuffix)
- $(AegisubSourceBase)tools\respack.lua
-
-
-
-
-
-
-
-
-
-
diff --git a/build/scintilla/catalogue.cpp b/build/scintilla/catalogue.cpp
deleted file mode 100644
index a424dcd50..000000000
--- a/build/scintilla/catalogue.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
-// A dummy replacement for Catalogue.cxx that doesn't support any lexers
-
-#include
-
-#include "ILexer.h"
-#include "LexerModule.h"
-#include "Catalogue.h"
-
-const LexerModule *Catalogue::Find(int language) { return nullptr; }
-const LexerModule *Catalogue::Find(const char *languageName) { return nullptr; }
-void Catalogue::AddLexerModule(LexerModule *plm) { }
-int Scintilla_LinkLexers() { return 1; }
-
diff --git a/build/scintilla/scintilla.vcxproj b/build/scintilla/scintilla.vcxproj
deleted file mode 100644
index 70c1b6e27..000000000
--- a/build/scintilla/scintilla.vcxproj
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
-
- {D6EA54FD-F15C-42F6-929B-A83F299A4582}
- scintilla
-
-
-
-
- lib
- ..\..\vendor\wxWidgets\src\stc\scintilla
-
-
-
-
-
-
-
-
- $(SrcDir)\include\;$(SrcDir)\lexlib\;$(SrcDir)\src\;%(AdditionalIncludeDirectories)
- _CRT_SECURE_NO_WARNINGS;__WX__;PreprocessorDefinitions)
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/scintilla/scintilla.vcxproj.filters b/build/scintilla/scintilla.vcxproj.filters
deleted file mode 100644
index 355924ee7..000000000
--- a/build/scintilla/scintilla.vcxproj.filters
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hh;hpp;hxx;hm;inl;inc;xsd
-
-
- {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
- rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
-
-
-
\ No newline at end of file
diff --git a/build/standard-outdirs.props b/build/standard-outdirs.props
deleted file mode 100644
index ba4f2b275..000000000
--- a/build/standard-outdirs.props
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
- <_PropertySheetDisplayName>Output directories
-
-
-
- $(AegisubBinaryDir)
- $(AegisubBinaryDir)
- $(AegisubLibraryDir)
- $(AegisubObjectDir)
- $(ProjectName)_$(AegisubPlatformSuffix)
- $(ProjectName)$(AegisubPlatformSuffix)
- $(ProjectName)
-
-
-
-
-
-
- $(AegisubBinaryDir)$(TargetName)$(TargetExt)
- $(AegisubBinaryDir)$(TargetName).pdb
- $(AegisubLibraryDir)$(ProjectName).lib
-
-
- $(AegisubLibraryDir)$(ProjectName).lib
-
-
-
-
-
-
- ComputeClRelativeObjectFileName;
- $(ComputeCompileInputsTargets)
-
-
-
-
-
-
-
-
-
- <_RelativeClCompile Condition="'%(_RelativeClCompile.OutputDir)' != ''">
- $(IntDir)%(_RelativeClCompile.OutputDir)
-
-
-
-
-
- <_RelativeClCompile Remove="@(_RelativeClCompile)" />
-
-
-
diff --git a/build/standard-settings.props b/build/standard-settings.props
deleted file mode 100644
index 04b290fa7..000000000
--- a/build/standard-settings.props
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
- <_PropertySheetDisplayName>Compiler settings
-
-
-
- true
-
-
- false
-
-
-
-
- true
- false
- Level3
-
- BOOST_ALL_NO_LIB;
- BOOST_HAS_ICU;
- BOOST_SYSTEM_NO_DEPRECATED;
- BOOST_MULTI_INDEX_DISABLE_SERIALIZATION;
- U_STATIC_IMPLEMENTATION;
- WIN32;
- _WINDOWS;
- %(PreprocessorDefinitions)
-
- $(AegisubSourceBase)\include;
- $(BoostPath);
- $(GtestSrcDir)\include;
- $(IcuSrcDir)\include;
- %(AdditionalIncludeDirectories)
-
- 4345
-
-
- $(AegisubSourceBase)include;%(AdditionalIncludeDirectories)
-
-
- Windows
- true
- true
- true
-
-
-
-
-
- MultiThreadedDebugDLL
- Disabled
- _DEBUG;%(PreprocessorDefinitions)
-
-
-
-
-
- MultiThreaded
- MaxSpeed
- true
- true
- NDEBUG;%(PreprocessorDefinitions)
- /Gw %(AdditionalOptions)
-
-
- true
- true
-
-
-
-
diff --git a/build/tasks.props b/build/tasks.props
deleted file mode 100644
index 39c594f90..000000000
--- a/build/tasks.props
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
- <_PropertySheetDisplayName>Custom Tasks
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/tests/tests.vcxproj b/build/tests/tests.vcxproj
deleted file mode 100644
index 1dbbfb1af..000000000
--- a/build/tests/tests.vcxproj
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
- {49766286-2B5D-4177-A860-BD7CE1846EEF}
- tests
-
-
-
-
- exe
- ..\..\tests\
-
-
-
-
-
-
-
-
-
- GTEST_HAS_TR1_TUPLE=0;
- %(PreprocessorDefinitions)
-
-
- $(AegisubSourceBase)libaegisub\include;
- $(SrcDir)support;
- %(AdditionalIncludeDirectories)
-
- $(SrcDir)
-
-
- $(AegisubLibraryDir);%(AdditionalLibraryDirectories)
- Console
-
-
- $(SrcDir)setup.bat "$(AegisubBinaryDir)"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {a649d828-a399-4d81-adef-94cfdba7847f}
-
-
- {fbe51b37-8b12-41e8-b5e0-f00a06b4bcd2}
-
-
- {f934ab7b-186b-4e96-b20c-a58c38c1b818}
-
-
- {bb3fed86-db7a-4dc7-964a-260fb86cde61}
-
-
- {965054d2-44f2-4eb2-9879-051cc3d7ef08}
-
-
- {7b56955d-5162-4698-aa5b-47484edc8783}
-
-
-
diff --git a/build/tests/tests.vcxproj.filters b/build/tests/tests.vcxproj.filters
deleted file mode 100644
index dceeba91b..000000000
--- a/build/tests/tests.vcxproj.filters
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
-
-
- Support
-
-
- Support
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
- Tests
-
-
-
-
- Support
-
-
- Support
-
-
-
-
- Support
-
-
- Support
-
-
-
diff --git a/build/universalchardet/universalchardet.vcxproj b/build/universalchardet/universalchardet.vcxproj
deleted file mode 100644
index 42da68840..000000000
--- a/build/universalchardet/universalchardet.vcxproj
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
-
- {7B56955D-5162-4698-AA5B-47484EDC8783}
- universalchardet
-
-
-
-
- lib
- ..\..\vendor\uchardet\src\
-
-
-
-
-
-
-
-
- false
- false
-
- _CRT_NONSTDC_NO_DEPRECATE;
- %(PreprocessorDefinitions)
-
-
-
- $(SrcDir)
- uchardet\
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/universalchardet/universalchardet.vcxproj.filters b/build/universalchardet/universalchardet.vcxproj.filters
deleted file mode 100644
index 46af9a952..000000000
--- a/build/universalchardet/universalchardet.vcxproj.filters
+++ /dev/null
@@ -1,198 +0,0 @@
-
-
-
-
- {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
- cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
-
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hpp;hxx;hm;inl;inc;xsd
-
-
- {f628048a-0e81-4ea7-b20c-09e14f767db1}
- *.tab
-
-
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
- Source Files
-
-
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Header Files
-
-
- Frequency tables
-
-
- Frequency tables
-
-
- Frequency tables
-
-
- Frequency tables
-
-
- Frequency tables
-
-
-
diff --git a/build/userconfig/ft2.props.sample b/build/userconfig/ft2.props.sample
deleted file mode 100644
index 926813596..000000000
--- a/build/userconfig/ft2.props.sample
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-
-
- C:\Dev\freetype-2.4.3\include
-
- C:\Dev\freetype-2.4.3\objs\win32\vc2010
-
- freetype2.4.3_32d.lib
- freetype2.4.3_32.lib
- freetype2.4.3_64d.lib
- freetype2.4.3_64.lib
-
-
diff --git a/build/userconfig/paths.props.sample b/build/userconfig/paths.props.sample
deleted file mode 100644
index 8b57248e3..000000000
--- a/build/userconfig/paths.props.sample
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
- C:\Dev\Aegisub\BuildFiles\
-
- C:\Dev\Aegisub\BuiltBinaries\$(Platform)\
-
-
diff --git a/build/userconfig/readme.txt b/build/userconfig/readme.txt
deleted file mode 100644
index 58e634860..000000000
--- a/build/userconfig/readme.txt
+++ /dev/null
@@ -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.
diff --git a/build/userconfig/wx.props.sample b/build/userconfig/wx.props.sample
deleted file mode 100644
index 0fdeba05d..000000000
--- a/build/userconfig/wx.props.sample
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
- C:\Dev\wxWidgets-2.9\install-vc10
-
- $(WxBasePath)\lib32
- $(WxBasePath)\lib64
-
- $(WxBasePath)\include
-
-
diff --git a/build/wx/setup-build.h b/build/wx/setup-build.h
deleted file mode 100644
index caf5b8fbd..000000000
--- a/build/wx/setup-build.h
+++ /dev/null
@@ -1,262 +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 0
-#define wxUSE_DEBUGREPORT 0
-#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 0
-#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 0
-#define wxUSE_TEXTFILE 0
-#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 0
-#define wxUSE_IPV6 0
-#define wxUSE_FILESYSTEM 0
-#define wxUSE_FS_ZIP 0
-#define wxUSE_FS_ARCHIVE 0
-#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 0
-#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 0
-#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_GRAPHICS_GDIPLUS 1
-#define wxUSE_CONTROLS 1
-#define wxUSE_POPUPWIN 1
-#define wxUSE_TIPWINDOW 0
-#define wxUSE_ANIMATIONCTRL 0
-#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 0
-#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 0
-#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 0
-#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 0
-#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 2
-#define wxUSE_PREFERENCES_EDITOR 0
-#define wxUSE_STD_CONTAINERS_COMPATIBLY 0
-#define wxUSE_TASKBARBUTTON 0
-#define wxUSE_ADDREMOVECTRL 0
-#define wxUSE_ACTIVITYINDICATOR 0
-#define wxUSE_WINRT 0
-#endif
diff --git a/build/wx/setup-installed.h b/build/wx/setup-installed.h
deleted file mode 100644
index 791db0ffc..000000000
--- a/build/wx/setup-installed.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#include "wx/version.h"
-#include "wx/cpp.h"
-#include "wx/msw/setup.h"
diff --git a/build/wx/stc-fi.h b/build/wx/stc-fi.h
deleted file mode 100644
index 053e86b0d..000000000
--- a/build/wx/stc-fi.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#include
-
-#include "Platform.h"
-#include "SciLexer.h"
-#include "ILexer.h"
-#include "LexerModule.h"
-
diff --git a/build/wx/wxWidgets.vcxproj b/build/wx/wxWidgets.vcxproj
deleted file mode 100644
index 4567381ed..000000000
--- a/build/wx/wxWidgets.vcxproj
+++ /dev/null
@@ -1,425 +0,0 @@
-
-
-
- {0518D6C0-7BF6-4FD1-91FB-191BD10DB2AC}
- wxWidgets
-
-
-
-
- lib
- ..\..\vendor\wxWidgets\
-
-
-
-
-
-
-
-
- _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;__WXMSW__;__WX__;WXBUILDING;%(PreprocessorDefinitions)
- $(SrcDir)include;%(AdditionalIncludeDirectories)
- Use
- wx/wxprec.h
- /Zm150 %(AdditionalOptions)
-
-
- $(SrcDir)include
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Create
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(SrcDir)src\stc\scintilla\include;$(SrcDir)src\stc\scintilla\src;$(SrcDir)src\stc\scintilla\lexlib;%(AdditionalIncludeDirectories)
-
-
-
- $(MSBuildThisFileDirectory)stc-fi.h
- NotUsing
- $(SrcDir)src\stc\scintilla\include;$(SrcDir)src\stc\scintilla\src;$(SrcDir)src\stc\scintilla\lexlib;%(AdditionalIncludeDirectories)
-
-
- SCI_LEXER;%(PreprocessorDefinitions)
- $(SrcDir)src\stc\scintilla\include;$(SrcDir)src\stc\scintilla\src;$(SrcDir)src\stc\scintilla\lexlib;%(AdditionalIncludeDirectories)
-
-
-
-
-
-
-
- {d6ba6815-0aac-48fa-8372-d32cde8bf07a}
-
-
- {5cabcbef-e79a-4d27-94a5-cf4eaaf1dd96}
-
-
- {d6ea54fd-f15c-42f6-929b-a83f299a4582}
-
-
- {10f22a5a-dd9e-44a1-ba2e-2a9a7c78b0ee}
-
-
-
diff --git a/build/yasm.targets b/build/yasm.targets
deleted file mode 100644
index bacd151e6..000000000
--- a/build/yasm.targets
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
- <_PropertySheetDisplayName>Yasm compile targets
-
-
-
-
- _YasmAssemble;
- $(BuildCompileTargets)
-
-
-
-
-
-
- false
- -m x86
- -m amd64
-
-
-
-
-
-
-
-
-
-
-
-
- <_Yasm Include="@(Yasm)" Condition="'%(Yasm.InputRelativeSourceDir)' == ''">
-
-
-
- <_Yasm Remove="@(_Yasm->WithMetadataValue('ExcludeFromBuild','true'))" />
-
-
-
-
- <_Yasm>
- %(Include) -I%(RootDir)%(Directory)
-
- %(OutputDir)
- $(AegisubObjectDir)%(OutputDir)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/zlib/zconf.h b/build/zlib/zconf.h
deleted file mode 100644
index 69610ac37..000000000
--- a/build/zlib/zconf.h
+++ /dev/null
@@ -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
- /* 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
-# 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 /* for off_t */
-# endif
-#endif
-
-#ifdef _WIN32
-# include /* 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 /* for SEEK_*, off_t, and _LFS64_LARGEFILE */
-# endif
-# ifdef VMS
-# include /* 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 */
-
diff --git a/build/zlib/zlib.vcxproj b/build/zlib/zlib.vcxproj
deleted file mode 100644
index 1dbf4345d..000000000
--- a/build/zlib/zlib.vcxproj
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
- {10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}
- zlib
- lib
-
-
-
-
-
-
-
-
-
- $(ZlibSrcDir)\
- 4996;%(DisableSpecificWarnings)
-
-
-
-
-
-
- $(ZlibSrcDir)
-
-
- $(MSBuildThisFileDirectory)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/config.guess b/config.guess
deleted file mode 100755
index 883a6713b..000000000
--- a/config.guess
+++ /dev/null
@@ -1,1476 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright 1992-2018 Free Software Foundation, Inc.
-
-timestamp='2018-05-19'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see .
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that
-# program. This Exception is an additional permission under section 7
-# of the GNU General Public License, version 3 ("GPLv3").
-#
-# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
-#
-# You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
-#
-# Please send patches to .
-
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Options:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to ."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright 1992-2018 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
- ,,) echo "int x;" > "$dummy.c" ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-case "$UNAME_SYSTEM" in
-Linux|GNU|GNU/*)
- # If the system lacks a compiler, then just pick glibc.
- # We could probably try harder.
- LIBC=gnu
-
- eval "$set_cc_for_build"
- cat <<-EOF > "$dummy.c"
- #include
- #if defined(__UCLIBC__)
- LIBC=uclibc
- #elif defined(__dietlibc__)
- LIBC=dietlibc
- #else
- LIBC=gnu
- #endif
- EOF
- eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
-
- # If ldd exists, use it to detect musl libc.
- if command -v ldd >/dev/null && \
- ldd --version 2>&1 | grep -q ^musl
- then
- LIBC=musl
- fi
- ;;
-esac
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
- "/sbin/$sysctl" 2>/dev/null || \
- "/usr/sbin/$sysctl" 2>/dev/null || \
- echo unknown)`
- case "$UNAME_MACHINE_ARCH" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- sh5el) machine=sh5le-unknown ;;
- earmv*)
- arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
- endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
- machine="${arch}${endian}"-unknown
- ;;
- *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently (or will in the future) and ABI.
- case "$UNAME_MACHINE_ARCH" in
- earm*)
- os=netbsdelf
- ;;
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval "$set_cc_for_build"
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ELF__
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # Determine ABI tags.
- case "$UNAME_MACHINE_ARCH" in
- earm*)
- expr='s/^earmv[0-9]/-eabi/;s/eb$//'
- abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "$UNAME_VERSION" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "$machine-${os}${release}${abi-}"
- exit ;;
- *:Bitrig:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
- exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
- exit ;;
- *:LibertyBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
- exit ;;
- *:MidnightBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
- exit ;;
- *:ekkoBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
- exit ;;
- *:SolidBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
- exit ;;
- macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
- exit ;;
- *:MirBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
- exit ;;
- *:Sortix:*:*)
- echo "$UNAME_MACHINE"-unknown-sortix
- exit ;;
- *:Redox:*:*)
- echo "$UNAME_MACHINE"-unknown-redox
- exit ;;
- mips:OSF1:*.*)
- echo mips-dec-osf1
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
- *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
- *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE=alpha ;;
- "EV4.5 (21064)")
- UNAME_MACHINE=alpha ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE=alpha ;;
- "EV5 (21164)")
- UNAME_MACHINE=alphaev5 ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE=alphaev56 ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE=alphapca56 ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE=alphapca57 ;;
- "EV6 (21264)")
- UNAME_MACHINE=alphaev6 ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE=alphaev67 ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE=alphaev68 ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE=alphaev68 ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE=alphaev68 ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE=alphaev69 ;;
- "EV7 (21364)")
- UNAME_MACHINE=alphaev7 ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE=alphaev79 ;;
- esac
- # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
- # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
- exitcode=$?
- trap '' 0
- exit $exitcode ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo "$UNAME_MACHINE"-unknown-amigaos
- exit ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo "$UNAME_MACHINE"-unknown-morphos
- exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
- *:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix"$UNAME_RELEASE"
- exit ;;
- arm*:riscos:*:*|arm*:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
- echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
- exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
- exit ;;
- i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux"$UNAME_RELEASE"
- exit ;;
- i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval "$set_cc_for_build"
- SUN_ARCH=i386
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH=x86_64
- fi
- fi
- echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
- exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos"$UNAME_RELEASE"
- exit ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos"$UNAME_RELEASE"
- ;;
- sun4)
- echo sparc-sun-sunos"$UNAME_RELEASE"
- ;;
- esac
- exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos"$UNAME_RELEASE"
- exit ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint"$UNAME_RELEASE"
- exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint"$UNAME_RELEASE"
- exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint"$UNAME_RELEASE"
- exit ;;
- m68k:machten:*:*)
- echo m68k-apple-machten"$UNAME_RELEASE"
- exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten"$UNAME_RELEASE"
- exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix"$UNAME_RELEASE"
- exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix"$UNAME_RELEASE"
- exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix"$UNAME_RELEASE"
- exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval "$set_cc_for_build"
- sed 's/^ //' << EOF > "$dummy.c"
-#ifdef __cplusplus
-#include /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
- dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos"$UNAME_RELEASE"
- exit ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
- then
- if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
- [ "$TARGET_BINARY_INTERFACE"x = x ]
- then
- echo m88k-dg-dgux"$UNAME_RELEASE"
- else
- echo m88k-dg-dguxbcs"$UNAME_RELEASE"
- fi
- else
- echo i586-dg-dgux"$UNAME_RELEASE"
- fi
- exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
- exit ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
- fi
- echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
- exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval "$set_cc_for_build"
- sed 's/^ //' << EOF > "$dummy.c"
- #include
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit ;;
- *:AIX:*:[4567])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/lslpp ] ; then
- IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
- awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
- else
- IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
- fi
- echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
- exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
- ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
- case "$UNAME_MACHINE" in
- 9000/31?) HP_ARCH=m68000 ;;
- 9000/[34]??) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "$sc_cpu_version" in
- 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
- 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "$sc_kernel_bits" in
- 32) HP_ARCH=hppa2.0n ;;
- 64) HP_ARCH=hppa2.0w ;;
- '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "$HP_ARCH" = "" ]; then
- eval "$set_cc_for_build"
- sed 's/^ //' << EOF > "$dummy.c"
-
- #define _HPUX_SOURCE
- #include
- #include
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ "$HP_ARCH" = hppa2.0w ]
- then
- eval "$set_cc_for_build"
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
- grep -q __LP64__
- then
- HP_ARCH=hppa2.0w
- else
- HP_ARCH=hppa64
- fi
- fi
- echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
- exit ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux"$HPUX_REV"
- exit ;;
- 3050*:HI-UX:*:*)
- eval "$set_cc_for_build"
- sed 's/^ //' << EOF > "$dummy.c"
- #include
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
- echo hppa1.1-hp-bsd
- exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
- echo hppa1.1-hp-osf
- exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo "$UNAME_MACHINE"-unknown-osf1mk
- else
- echo "$UNAME_MACHINE"-unknown-osf1
- fi
- exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- *:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
- FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
- FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- 5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
- FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
- exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi"$UNAME_RELEASE"
- exit ;;
- *:BSD/OS:*:*)
- echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
- exit ;;
- *:FreeBSD:*:*)
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- case "$UNAME_PROCESSOR" in
- amd64)
- UNAME_PROCESSOR=x86_64 ;;
- i386)
- UNAME_PROCESSOR=i586 ;;
- esac
- echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
- exit ;;
- i*:CYGWIN*:*)
- echo "$UNAME_MACHINE"-pc-cygwin
- exit ;;
- *:MINGW64*:*)
- echo "$UNAME_MACHINE"-pc-mingw64
- exit ;;
- *:MINGW*:*)
- echo "$UNAME_MACHINE"-pc-mingw32
- exit ;;
- *:MSYS*:*)
- echo "$UNAME_MACHINE"-pc-msys
- exit ;;
- i*:PW*:*)
- echo "$UNAME_MACHINE"-pc-pw32
- exit ;;
- *:Interix*:*)
- case "$UNAME_MACHINE" in
- x86)
- echo i586-pc-interix"$UNAME_RELEASE"
- exit ;;
- authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix"$UNAME_RELEASE"
- exit ;;
- IA64)
- echo ia64-unknown-interix"$UNAME_RELEASE"
- exit ;;
- esac ;;
- i*:UWIN*:*)
- echo "$UNAME_MACHINE"-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
- *:GNU:*:*)
- # the GNU system
- echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
- echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
- exit ;;
- i*86:Minix:*:*)
- echo "$UNAME_MACHINE"-pc-minix
- exit ;;
- aarch64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- aarch64_be:Linux:*:*)
- UNAME_MACHINE=aarch64_be
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- arc:Linux:*:* | arceb:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- arm*:Linux:*:*)
- eval "$set_cc_for_build"
- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_EABI__
- then
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- else
- if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_PCS_VFP
- then
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
- else
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
- fi
- fi
- exit ;;
- avr32*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- cris:Linux:*:*)
- echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
- exit ;;
- crisv32:Linux:*:*)
- echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
- exit ;;
- e2k:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- frv:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- hexagon:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- i*86:Linux:*:*)
- echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
- exit ;;
- ia64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- k1om:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- m32r*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- m68*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval "$set_cc_for_build"
- sed 's/^ //' << EOF > "$dummy.c"
- #undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
- #else
- CPU=
- #endif
- #endif
-EOF
- eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
- test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
- ;;
- mips64el:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- openrisc*:Linux:*:*)
- echo or1k-unknown-linux-"$LIBC"
- exit ;;
- or32:Linux:*:* | or1k*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- padre:Linux:*:*)
- echo sparc-unknown-linux-"$LIBC"
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-"$LIBC"
- exit ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
- PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
- *) echo hppa-unknown-linux-"$LIBC" ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-"$LIBC"
- exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-"$LIBC"
- exit ;;
- ppc64le:Linux:*:*)
- echo powerpc64le-unknown-linux-"$LIBC"
- exit ;;
- ppcle:Linux:*:*)
- echo powerpcle-unknown-linux-"$LIBC"
- exit ;;
- riscv32:Linux:*:* | riscv64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
- exit ;;
- sh64*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- sh*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- tile*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- vax:Linux:*:*)
- echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
- exit ;;
- x86_64:Linux:*:*)
- echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
- exit ;;
- xtensa*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
- exit ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo "$UNAME_MACHINE"-pc-os2-emx
- exit ;;
- i*86:XTS-300:*:STOP)
- echo "$UNAME_MACHINE"-unknown-stop
- exit ;;
- i*86:atheos:*:*)
- echo "$UNAME_MACHINE"-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
- echo "$UNAME_MACHINE"-pc-syllable
- exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
- i*86:*DOS:*:*)
- echo "$UNAME_MACHINE"-pc-msdosdjgpp
- exit ;;
- i*86:*:4.*:*)
- UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
- else
- echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
- fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
- exit ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
- else
- echo "$UNAME_MACHINE"-pc-sysv32
- fi
- exit ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i586.
- # Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configure will decide that
- # this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
- fi
- exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
- M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv"$UNAME_RELEASE"
- exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo "$UNAME_MACHINE"-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes .
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
- *:*:*:FTX*)
- # From seanf@swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green@stratus.com.
- echo "$UNAME_MACHINE"-stratus-vos
- exit ;;
- *:VOS:*:*)
- # From Paul.Green@stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux"$UNAME_RELEASE"
- exit ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv"$UNAME_RELEASE"
- else
- echo mips-unknown-sysv"$UNAME_RELEASE"
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
- x86_64:Haiku:*:*)
- echo x86_64-unknown-haiku
- exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux"$UNAME_RELEASE"
- exit ;;
- SX-ACE:SUPER-UX:*:*)
- echo sxace-nec-superux"$UNAME_RELEASE"
- exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody"$UNAME_RELEASE"
- exit ;;
- *:Rhapsody:*:*)
- echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- eval "$set_cc_for_build"
- if test "$UNAME_PROCESSOR" = unknown ; then
- UNAME_PROCESSOR=powerpc
- fi
- if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- case $UNAME_PROCESSOR in
- i386) UNAME_PROCESSOR=x86_64 ;;
- powerpc) UNAME_PROCESSOR=powerpc64 ;;
- esac
- fi
- # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
- if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_PPC >/dev/null
- then
- UNAME_PROCESSOR=powerpc
- fi
- fi
- elif test "$UNAME_PROCESSOR" = i386 ; then
- # Avoid executing cc on OS X 10.9, as it ships with a stub
- # that puts up a graphical alert prompting to install
- # developer tools. Any system running Mac OS X 10.7 or
- # later (Darwin 11 and later) is required to have a 64-bit
- # processor. This is not true of the ARM version of Darwin
- # that Apple uses in portable devices.
- UNAME_PROCESSOR=x86_64
- fi
- echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = x86; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
- exit ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
- NEO-*:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk"$UNAME_RELEASE"
- exit ;;
- NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk"$UNAME_RELEASE"
- exit ;;
- NSR-*:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk"$UNAME_RELEASE"
- exit ;;
- NSV-*:NONSTOP_KERNEL:*:*)
- echo nsv-tandem-nsk"$UNAME_RELEASE"
- exit ;;
- NSX-*:NONSTOP_KERNEL:*:*)
- echo nsx-tandem-nsk"$UNAME_RELEASE"
- exit ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
- DS/*:UNIX_System_V:*:*)
- echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
- exit ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = 386; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo "$UNAME_MACHINE"-unknown-plan9
- exit ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux"$UNAME_RELEASE"
- exit ;;
- *:DragonFly:*:*)
- echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
- exit ;;
- *:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "$UNAME_MACHINE" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
- exit ;;
- i*86:rdos:*:*)
- echo "$UNAME_MACHINE"-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo "$UNAME_MACHINE"-pc-aros
- exit ;;
- x86_64:VMkernel:*:*)
- echo "$UNAME_MACHINE"-unknown-esx
- exit ;;
- amd64:Isilon\ OneFS:*:*)
- echo x86_64-unknown-onefs
- exit ;;
-esac
-
-echo "$0: unable to guess system type" >&2
-
-case "$UNAME_MACHINE:$UNAME_SYSTEM" in
- mips:Linux | mips64:Linux)
- # If we got here on MIPS GNU/Linux, output extra information.
- cat >&2 <&2 </dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = "$UNAME_MACHINE"
-UNAME_RELEASE = "$UNAME_RELEASE"
-UNAME_SYSTEM = "$UNAME_SYSTEM"
-UNAME_VERSION = "$UNAME_VERSION"
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/config.sub b/config.sub
deleted file mode 100755
index d1f5b5490..000000000
--- a/config.sub
+++ /dev/null
@@ -1,1808 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright 1992-2018 Free Software Foundation, Inc.
-
-timestamp='2018-05-24'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see .
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that
-# program. This Exception is an additional permission under section 7
-# of the GNU General Public License, version 3 ("GPLv3").
-
-
-# Please send patches to .
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
-
-Canonicalize a configuration name.
-
-Options:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to ."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright 1992-2018 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo "$1"
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Split fields of configuration type
-IFS="-" read -r field1 field2 field3 field4 <&2
- exit 1
- ;;
- *-*-*-*)
- basic_machine=$field1-$field2
- os=$field3-$field4
- ;;
- *-*-*)
- # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
- # parts
- maybe_os=$field2-$field3
- case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
- | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
- | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
- | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
- | storm-chaos* | os2-emx* | rtmk-nova*)
- basic_machine=$field1
- os=$maybe_os
- ;;
- android-linux)
- basic_machine=$field1-unknown
- os=linux-android
- ;;
- *)
- basic_machine=$field1-$field2
- os=$field3
- ;;
- esac
- ;;
- *-*)
- # Second component is usually, but not always the OS
- case $field2 in
- # Prevent following clause from handling this valid os
- sun*os*)
- basic_machine=$field1
- os=$field2
- ;;
- # Manufacturers
- dec* | mips* | sequent* | encore* | pc532* | sgi* | sony* \
- | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
- | unicom* | ibm* | next | hp | isi* | apollo | altos* \
- | convergent* | ncr* | news | 32* | 3600* | 3100* | hitachi* \
- | c[123]* | convex* | sun | crds | omron* | dg | ultra | tti* \
- | harris | dolphin | highlevel | gould | cbm | ns | masscomp \
- | apple | axis | knuth | cray | microblaze* \
- | sim | cisco | oki | wec | wrs | winbond)
- basic_machine=$field1-$field2
- os=
- ;;
- *)
- basic_machine=$field1
- os=$field2
- ;;
- esac
- ;;
- *)
- # Convert single-component short-hands not valid as part of
- # multi-component configurations.
- case $field1 in
- 386bsd)
- basic_machine=i386-pc
- os=bsd
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=udi
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=scout
- ;;
- am29k)
- basic_machine=a29k-none
- os=bsd
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=sysv
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=linux
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=cegcc
- ;;
- cray)
- basic_machine=j90-cray
- os=unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=unicosmp
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=msdosdjgpp
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=ebmon
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=ose
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=go32
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=sysv3
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=hpux
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=proelf
- ;;
- i386mach)
- basic_machine=i386-mach
- os=mach
- ;;
- vsta)
- basic_machine=i386-unknown
- os=vsta
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=linux
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=sysv
- ;;
- mingw64)
- basic_machine=x86_64-pc
- os=mingw64
- ;;
- mingw32)
- basic_machine=i686-pc
- os=mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=mingw32ce
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=morphos
- ;;
- moxiebox)
- basic_machine=moxie-unknown
- os=moxiebox
- ;;
- msdos)
- basic_machine=i386-pc
- os=msdos
- ;;
- msys)
- basic_machine=i686-pc
- os=msys
- ;;
- mvs)
- basic_machine=i370-ibm
- os=mvs
- ;;
- nacl)
- basic_machine=le32-unknown
- os=nacl
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=sysv
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=nonstopux
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=os68k
- ;;
- paragon)
- basic_machine=i860-intel
- os=osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=linux
- ;;
- pw32)
- basic_machine=i586-unknown
- os=pw32
- ;;
- rdos | rdos64)
- basic_machine=x86_64-pc
- os=rdos
- ;;
- rdos32)
- basic_machine=i386-pc
- os=rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=coff
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=udi
- ;;
- sei)
- basic_machine=mips-sei
- os=seiux
- ;;
- sps7)
- basic_machine=m68k-bull
- os=sysv2
- ;;
- stratus)
- basic_machine=i860-stratus
- os=sysv4
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=solaris2
- ;;
- sv1)
- basic_machine=sv1-cray
- os=unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=unicos
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=tops20
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=vms
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=vxworks
- ;;
- xbox)
- basic_machine=i686-pc
- os=mingw32
- ;;
- ymp)
- basic_machine=ymp-cray
- os=unicos
- ;;
- *)
- basic_machine=$1
- os=
- ;;
- esac
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arceb \
- | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \
- | avr | avr32 \
- | ba \
- | be32 | be64 \
- | bfin \
- | c4x | c8051 | clipper | csky \
- | d10v | d30v | dlx | dsp16xx \
- | e2k | epiphany \
- | fido | fr30 | frv | ft32 \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | hexagon \
- | i370 | i860 | i960 | ia16 | ia64 \
- | ip2k | iq2000 \
- | k1om \
- | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa32r6 | mipsisa32r6el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64r6 | mipsisa64r6el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipsr5900 | mipsr5900el \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nds32 | nds32le | nds32be \
- | nfp \
- | nios | nios2 | nios2eb | nios2el \
- | ns16k | ns32k \
- | open8 | or1k | or1knd | or32 \
- | pdp10 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pru \
- | pyramid \
- | riscv32 | riscv64 \
- | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu \
- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | visium \
- | wasm32 \
- | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- c54x)
- basic_machine=tic54x-unknown
- ;;
- c55x)
- basic_machine=tic55x-unknown
- ;;
- c6x)
- basic_machine=tic6x-unknown
- ;;
- leon|leon[3-9])
- basic_machine=sparc-$basic_machine
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
- basic_machine=$basic_machine-unknown
- os=${os:-none}
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
- ;;
- m9s12z | m68hcs12z | hcs12z | s12z)
- basic_machine=s12z-unknown
- os=${os:-none}
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
- strongarm | thumb | xscale)
- basic_machine=arm-unknown
- ;;
- xgate)
- basic_machine=$basic_machine-unknown
- os=${os:-none}
- ;;
- xscaleeb)
- basic_machine=armeb-unknown
- ;;
-
- xscaleel)
- basic_machine=armel-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | ba-* \
- | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
- | c8051-* | clipper-* | craynv-* | csky-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | e2k-* | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | hexagon-* \
- | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
- | ip2k-* | iq2000-* \
- | k1om-* \
- | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
- | microblaze-* | microblazeel-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa32r6-* | mipsisa32r6el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64r6-* | mipsisa64r6el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipsr5900-* | mipsr5900el-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
- | nfp-* \
- | nios-* | nios2-* | nios2eb-* | nios2el-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | open8-* \
- | or1k*-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pru-* \
- | pyramid-* \
- | riscv32-* | riscv64-* \
- | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
- | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile*-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
- | vax-* \
- | visium-* \
- | wasm32-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- asmjs)
- basic_machine=asmjs-unknown
- ;;
- blackfin-*)
- basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- os=linux
- ;;
- bluegene*)
- basic_machine=powerpc-ibm
- os=cnk
- ;;
- c54x-*)
- basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- c55x-*)
- basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- c6x-*)
- basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- c90)
- basic_machine=c90-cray
- os=${os:-unicos}
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=bsd
- ;;
- cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=${os:-elf}
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=${os:-elf}
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=${os:-bosx}
- ;;
- dpx2*)
- basic_machine=m68k-bull
- os=sysv3
- ;;
- e500v[12])
- basic_machine=powerpc-unknown
- os=$os"spe"
- ;;
- e500v[12]-*)
- basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- os=$os"spe"
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=${os:-bsd}
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=hiuxwe2
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
- i*86v32)
- basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
- os=sysv32
- ;;
- i*86v4*)
- basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
- os=sysv4
- ;;
- i*86v)
- basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
- os=sysv
- ;;
- i*86sol2)
- basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
- os=solaris2
- ;;
- j90 | j90-cray)
- basic_machine=j90-cray
- os=${os:-unicos}
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- irix*)
- ;;
- *)
- os=irix4
- ;;
- esac
- ;;
- leon-*|leon[3-9]-*)
- basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- os=linux
- ;;
- microblaze*)
- basic_machine=microblaze-xilinx
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=mint
- ;;
- mips3*-*)
- basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
- ;;
- ms1-*)
- basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=newsos
- ;;
- next | m*-next)
- basic_machine=m68k-next
- case $os in
- nextstep* )
- ;;
- ns2*)
- os=nextstep2
- ;;
- *)
- os=nextstep3
- ;;
- esac
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- neo-tandem)
- basic_machine=neo-tandem
- ;;
- nse-tandem)
- basic_machine=nse-tandem
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- nsv-tandem)
- basic_machine=nsv-tandem
- ;;
- nsx-tandem)
- basic_machine=nsx-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=hiuxwe2
- ;;
- parisc-*)
- basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- os=linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc | ppcbe) basic_machine=powerpc-unknown
- ;;
- ppc-* | ppcbe-*)
- basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=${os:-elf}
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- simso-wrs)
- basic_machine=sparclite-wrs
- os=vxworks
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- strongarm-* | thumb-*)
- basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- tile*)
- basic_machine=$basic_machine-unknown
- os=linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- w65*)
- basic_machine=w65-wdc
- os=none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=proelf
- ;;
- x64)
- basic_machine=x86_64-pc
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- xscale-* | xscalee[bl]-*)
- basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
- ;;
- none)
- basic_machine=none-none
- os=${os:-none}
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x$os != x ]
-then
-case $os in
- # First match some system type aliases that might get confused
- # with valid system types.
- # solaris* is a basic system type, with this one exception.
- auroraux)
- os=auroraux
- ;;
- bluegene*)
- os=cnk
- ;;
- solaris1 | solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- solaris)
- os=solaris2
- ;;
- unixware*)
- os=sysv4.2uw
- ;;
- gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # es1800 is here to avoid being matched by es* (a different OS)
- es1800*)
- os=ose
- ;;
- # Some version numbers need modification
- chorusos*)
- os=chorusos
- ;;
- isc)
- os=isc2.2
- ;;
- sco6)
- os=sco5v6
- ;;
- sco5)
- os=sco3.2v5
- ;;
- sco4)
- os=sco3.2v4
- ;;
- sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- ;;
- sco3.2v[4-9]* | sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- ;;
- scout)
- # Don't match below
- ;;
- sco*)
- os=sco3.2v2
- ;;
- psos*)
- os=psos
- ;;
- # Now accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST end in a * to match a version number.
- # sysv* is not here because it comes later, after sysvr4.
- gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
- | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
- | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
- | sym* | kopensolaris* | plan9* \
- | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
- | aos* | aros* | cloudabi* | sortix* \
- | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
- | clix* | riscos* | uniplus* | iris* | rtu* | xenix* \
- | knetbsd* | mirbsd* | netbsd* \
- | bitrig* | openbsd* | solidbsd* | libertybsd* \
- | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
- | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
- | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
- | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
- | chorusrdb* | cegcc* | glidix* \
- | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
- | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
- | linux-newlib* | linux-musl* | linux-uclibc* \
- | uxpv* | beos* | mpeix* | udk* | moxiebox* \
- | interix* | uwin* | mks* | rhapsody* | darwin* \
- | openstep* | oskit* | conix* | pw32* | nonstopux* \
- | storm-chaos* | tops10* | tenex* | tops20* | its* \
- | os2* | vos* | palmos* | uclinux* | nucleus* \
- | morphos* | superux* | rtmk* | windiss* \
- | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
- | skyos* | haiku* | rdos* | toppers* | drops* | es* \
- | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
- | midnightbsd*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=nto-$os
- ;;
- esac
- ;;
- hiux*)
- os=hiuxwe2
- ;;
- nto-qnx*)
- ;;
- nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- sim | xray | os68k* | v88r* \
- | windows* | osx | abug | netware* | os9* \
- | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
- ;;
- linux-dietlibc)
- os=linux-dietlibc
- ;;
- linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- lynx*178)
- os=lynxos178
- ;;
- lynx*5)
- os=lynxos5
- ;;
- lynx*)
- os=lynxos
- ;;
- mac*)
- os=`echo "$os" | sed -e 's|mac|macos|'`
- ;;
- opened*)
- os=openedition
- ;;
- os400*)
- os=os400
- ;;
- sunos5*)
- os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
- ;;
- sunos6*)
- os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
- ;;
- wince*)
- os=wince
- ;;
- utek*)
- os=bsd
- ;;
- dynix*)
- os=bsd
- ;;
- acis*)
- os=aos
- ;;
- atheos*)
- os=atheos
- ;;
- syllable*)
- os=syllable
- ;;
- 386bsd)
- os=bsd
- ;;
- ctix* | uts*)
- os=sysv
- ;;
- nova*)
- os=rtmk-nova
- ;;
- ns2)
- os=nextstep2
- ;;
- nsk*)
- os=nsk
- ;;
- # Preserve the version number of sinix5.
- sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- sinix*)
- os=sysv4
- ;;
- tpf*)
- os=tpf
- ;;
- triton*)
- os=sysv3
- ;;
- oss*)
- os=sysv3
- ;;
- svr4*)
- os=sysv4
- ;;
- svr3)
- os=sysv3
- ;;
- sysvr4)
- os=sysv4
- ;;
- # This must come after sysvr4.
- sysv*)
- ;;
- ose*)
- os=ose
- ;;
- *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
- os=mint
- ;;
- zvmoe)
- os=zvmoe
- ;;
- dicos*)
- os=dicos
- ;;
- pikeos*)
- # Until real need of OS specific support for
- # particular features comes up, bare metal
- # configurations are quite functional.
- case $basic_machine in
- arm*)
- os=eabi
- ;;
- *)
- os=elf
- ;;
- esac
- ;;
- nacl*)
- ;;
- ios)
- ;;
- none)
- ;;
- *-eabi)
- ;;
- *)
- echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=elf
- ;;
- spu-*)
- os=elf
- ;;
- *-acorn)
- os=riscix1.2
- ;;
- arm*-rebel)
- os=linux
- ;;
- arm*-semi)
- os=aout
- ;;
- c4x-* | tic4x-*)
- os=coff
- ;;
- c8051-*)
- os=elf
- ;;
- clipper-intergraph)
- os=clix
- ;;
- hexagon-*)
- os=elf
- ;;
- tic54x-*)
- os=coff
- ;;
- tic55x-*)
- os=coff
- ;;
- tic6x-*)
- os=coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=tops20
- ;;
- pdp11-*)
- os=none
- ;;
- *-dec | vax-*)
- os=ultrix4.2
- ;;
- m68*-apollo)
- os=domain
- ;;
- i386-sun)
- os=sunos4.0.2
- ;;
- m68000-sun)
- os=sunos3
- ;;
- m68*-cisco)
- os=aout
- ;;
- mep-*)
- os=elf
- ;;
- mips*-cisco)
- os=elf
- ;;
- mips*-*)
- os=elf
- ;;
- or32-*)
- os=coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=sysv3
- ;;
- sparc-* | *-sun)
- os=sunos4.1.1
- ;;
- pru-*)
- os=elf
- ;;
- *-be)
- os=beos
- ;;
- *-ibm)
- os=aix
- ;;
- *-knuth)
- os=mmixware
- ;;
- *-wec)
- os=proelf
- ;;
- *-winbond)
- os=proelf
- ;;
- *-oki)
- os=proelf
- ;;
- *-hp)
- os=hpux
- ;;
- *-hitachi)
- os=hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=sysv
- ;;
- *-cbm)
- os=amigaos
- ;;
- *-dg)
- os=dgux
- ;;
- *-dolphin)
- os=sysv3
- ;;
- m68k-ccur)
- os=rtu
- ;;
- m88k-omron*)
- os=luna
- ;;
- *-next)
- os=nextstep
- ;;
- *-sequent)
- os=ptx
- ;;
- *-crds)
- os=unos
- ;;
- *-ns)
- os=genix
- ;;
- i370-*)
- os=mvs
- ;;
- *-gould)
- os=sysv
- ;;
- *-highlevel)
- os=bsd
- ;;
- *-encore)
- os=bsd
- ;;
- *-sgi)
- os=irix
- ;;
- *-siemens)
- os=sysv4
- ;;
- *-masscomp)
- os=rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=uxpv
- ;;
- *-rom68k)
- os=coff
- ;;
- *-*bug)
- os=coff
- ;;
- *-apple)
- os=macos
- ;;
- *-atari*)
- os=mint
- ;;
- *-wrs)
- os=vxworks
- ;;
- *)
- os=none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- riscix*)
- vendor=acorn
- ;;
- sunos*)
- vendor=sun
- ;;
- cnk*|-aix*)
- vendor=ibm
- ;;
- beos*)
- vendor=be
- ;;
- hpux*)
- vendor=hp
- ;;
- mpeix*)
- vendor=hp
- ;;
- hiux*)
- vendor=hitachi
- ;;
- unos*)
- vendor=crds
- ;;
- dgux*)
- vendor=dg
- ;;
- luna*)
- vendor=omron
- ;;
- genix*)
- vendor=ns
- ;;
- clix*)
- vendor=intergraph
- ;;
- mvs* | opened*)
- vendor=ibm
- ;;
- os400*)
- vendor=ibm
- ;;
- ptx*)
- vendor=sequent
- ;;
- tpf*)
- vendor=ibm
- ;;
- vxsim* | vxworks* | windiss*)
- vendor=wrs
- ;;
- aux*)
- vendor=apple
- ;;
- hms*)
- vendor=hitachi
- ;;
- mpw* | macos*)
- vendor=apple
- ;;
- *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
- vendor=atari
- ;;
- vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo "$basic_machine-$os"
-exit
-
-# Local variables:
-# eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 1d8c93067..000000000
--- a/configure.ac
+++ /dev/null
@@ -1,667 +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([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"
-
-AS_CASE([$host],
- [*-*-darwin*], [build_darwin="yes"],
- [*-*-linux*], [build_linux="yes"])
-
-AC_SUBST(build_darwin)
-
-########################
-# Configurable variables
-########################
-# Name of aegisub binary.
-# This is tagged with the version on release branches.
-AEGISUB_COMMAND="aegisub"
-AC_SUBST(AEGISUB_COMMAND)
-AC_DEFINE_UNQUOTED([AEGISUB_COMMAND], ["${AEGISUB_COMMAND}"], [Name of the Aegisub executable])
-
-# Name of gettext catalog.
-# See '--enable-appimage'
-#AEGISUB_CATALOG="aegisub"
-#AC_SUBST(AEGISUB_CATALOG)
-#AC_DEFINE_UNQUOTED([AEGISUB_CATALOG], ["${AEGISUB_CATALOG}"], [Name of the Aegisub gettext catalog])
-
-# Handle location of appdata files: https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#spec-component-location
-AC_ARG_WITH(appdata-dir,
- AS_HELP_STRING([--with-appdata-dir=PATH],[appdata file locations [PREFIX/share/metainfo]]))
-
-P_APPDATA=${with_appdata_dir:-$datarootdir/metainfo}
-AC_SUBST(P_APPDATA)
-
-# 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=])
- ], [
- 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
-###################################################
-AS_IF([test x$build_darwin != xyes], [
- 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 -fno-strict-aliasing -pipe -g"
- AC_CXX_FLAG([-std=c++11])
- AC_CXX_FLAG([-Wno-c++11-narrowing])
- AC_C_FLAG([-Wno-unused-local-typedefs])
- AC_CXX_FLAG([-Wno-unused-local-typedefs])
-
- # -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_LIB([dl], [dlclose])
-AC_CHECK_HEADERS([sys/time.h])
-
-AC_ARG_ENABLE(sanity-checks,
- AS_HELP_STRING([--disable-sanity-checks],[Skip verifying that found libraries work.]))
-
-##############################
-# Program Support and Features
-##############################
-#########################
-### Required Dependencies
-#########################
-
-AS_IF([test x$build_darwin != xyes], [
- AC_PATH_XTRA
- AS_IF([test x$no_x = 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_CHECK_HEADERS([OpenGL/gl.h])
-])
-AC_SUBST(GL_CFLAGS)
-AC_SUBST(GL_LIBS)
-
-PKG_CHECK_MODULES(FREETYPE, freetype2 >= freetype_required_version)
-
-AS_IF([test x$build_darwin != xyes], [
- PKG_CHECK_MODULES(FONTCONFIG, fontconfig >= fontconfig_required_version)
- FONTCONFIG_CONF_DIR=$($PKG_CONFIG --variable=confdir fontconfig)
- AC_SUBST(FONTCONFIG_CONF_DIR)
-])
-
-PKG_CHECK_MODULES(LIBASS, libass >= libass_required_version)
-
-AX_BOOST_BASE([boost_required_version])
-AX_BOOST_CHRONO
-AX_BOOST_FILESYSTEM
-AX_BOOST_LOCALE
-AX_BOOST_REGEX
-AX_BOOST_SYSTEM
-AX_BOOST_THREAD
-
-cppflags_bak="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
-AC_CHECK_HEADERS([boost/spirit/home/phoenix/version.hpp])
-CPPFLAGS=$cppflags_bak
-
-AC_DEFINE(BOOST_SYSTEM_NO_DEPRECATED, 1,
- [Disable deprecated parts of boost.system])
-AC_DEFINE(BOOST_MULTI_INDEX_DISABLE_SERIALIZATION, 1,
- [Disable boost.serialization support for boost.multi_index])
-
-PKG_CHECK_MODULES(ICU_UC, icu-uc >= icu_required_version)
-PKG_CHECK_MODULES(ICU_I18N, icu-i18n >= icu_required_version)
-
-########
-## boost
-########
-AS_IF([test x$enable_sanity_checks != xno], [
- AC_AGI_COMPILE([boost ICU support], [boost_icu], [$BOOST_CPPFLAGS],
- [$BOOST_LDFLAGS $BOOST_REGEX_LIB $ICU_UC_LIBS $ICU_I18N_LIBS],[
- #include
- int main() {
- auto regex = boost::make_u32regex(".", boost::u32regex::perl);
- boost::smatch result;
- u32regex_search("a", result, regex, boost::match_default);
- } ])
-
- AS_IF([test x$agi_cv_with_boost_icu = xno],
- [AC_MSG_FAILURE([Aegisub requires that boost be built with ICU support.])])
-])
-
-########
-## 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
-int main() {
- return !iconv_open("UTF-8", "UTF-8");
-} ])
-
-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
-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
-#include
-#else
-#include
-#include
-#endif
-int main(void) {
- ALCdevice *device = alcOpenDevice(0);
- ALCcontext *context = alcCreateContext(device, 0);
- alcDestroyContext(context);
- alcCloseDevice(device);
- 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])
-AGI_OPT_PKG(uchardet, [build without automatic character set detection [auto]], [Enable uchardet support])
-
-########
-# LuaJIT
-########
-system_luajit="bundled"
-AC_ARG_WITH(system-luajit, AS_HELP_STRING([--without-system-luajit], [Use built-in LuaJIT [auto]]))
-# Check if it's available at all
-AS_IF([test x$with_system_luajit = xno], [],
- [PKG_CHECK_MODULES(LUAJIT, luajit >= 2.0.0, [], [
- AS_IF([test x$with_system_luajit = xyes],
- [AC_MSG_FAILURE([--with-sytem-luajit was specified, but luajit could not be found])])
- with_system_luajit="no"])])
-
-# Check if it's compiled in Lua 5.2 mode
-# This check can be skipped by manually setting agi_cv_luajit_is_52
-AS_IF([test x$with_system_luajit != xno], [
- aegisub_save_LIBS="$LIBS"
- aegisub_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $LUAJIT_CFLAGS"
- LIBS="$LIBS $LUAJIT_LIBS"
- AC_CACHE_CHECK(
- [whether LuaJIT is compiled in 5.2 mode], [agi_cv_luajit_is_52],
- [AC_RUN_IFELSE([AC_LANG_PROGRAM(
- [[#include ]],
- [[lua_State *L = luaL_newstate();
- if (!L) return 1;
- // This is valid in lua 5.2, but a syntax error in 5.1
- const char testprogram[] = "function foo() while true do break return end end";
- return luaL_loadstring(L, testprogram) == LUA_ERRSYNTAX;
- ]])], [agi_cv_luajit_is_52="yes"], [agi_cv_luajit_is_52="no"])])
- CPPFLAGS="$aegisub_save_CPPFLAGS"
- LIBS="$aegisub_save_LIBS"
-
- if test $agi_cv_luajit_is_52 != yes; then
- AS_IF([test x$with_system_luajit = xyes],
- [AC_MSG_FAILURE([LuaJIT must be compiled in Lua 5.2 mode])])
- with_system_luajit="no"
- else
- with_system_luajit="yes"
- system_luajit="system"
- fi
-])
-
-AS_IF([test $with_system_luajit = no],
- [AC_SUBST([LUAJIT_CFLAGS], ['-I$(TOP)vendor/luajit/include'])
- AC_SUBST([LUAJIT_LIBS], ['$(TOP)vendor/luajit/src/libluajit.a'])])
-
-# We also need a Lua binary to run part of the build system
-# Which version doesn't matter as the scripts are portable between them
-AC_CHECK_PROGS([LUA], [lua luajit lua5.3 lua-5.3 lua5.2 lua-5.2 lua5.1 lua-5.1])
-
-# If the user doesn't have an installed copy of Lua, just use the one built
-# as part of building LuaJIT
-AS_IF([test -z $LUA], [LUA="$srcdir/vendor/luajit/src/host/minilua"])
-
-######################################################
-# 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.])])
-
-AS_IF([test x$enable_sanity_checks != xno], [
- AC_AGI_LINK([wxWidgets OpenGL support], [wxopengl], [wx/glcanvas.h], [$GL_CFLAGS $WX_CFLAGS], [$GL_LIBS $WX_LIBS],[
-#include
-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
-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],
- [AS_IF([$WX_CONFIG_PATH --debug],[AC_CXX_FLAG([-D_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])
-AM_GNU_GETTEXT_VERSION([0.18.1])
-
-################
-# 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])
-
-####################################################################
-# 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}
-
-################
-# AppImage build
-################
-# If enabled, localization and automation data is obtained from the binary's
-# path and never from the system's root. It will also install files that
-# Aegisub will lookup next to the binary, so be careful with "make install".
-AC_ARG_ENABLE(appimage,
- AS_HELP_STRING([--enable-appimage],
- [Enable certain relocation settings useful for building AppImages or generic portable builds [no]]))
-
-P_DATA="$datarootdir/aegisub"
-AEGISUB_CATALOG="aegisub"
-
-AS_IF([test x$enable_appimage = xyes], [
- AC_DEFINE([APPIMAGE_BUILD], [], [Define to enable AppImage compatible relocations])
- P_DATA="$bindir"
- localedir="$bindir/locale"
- # use a different catalog name
- AEGISUB_CATALOG="aegisub-appimage"
-])
-
-enable_appimage=${enable_appimage:-no}
-AC_SUBST(P_DATA)
-AC_SUBST(AEGISUB_CATALOG)
-AC_DEFINE_UNQUOTED([AEGISUB_CATALOG], ["${AEGISUB_CATALOG}"], [Name of the Aegisub gettext catalog])
-
-###############
-# Misc settings
-###############
-# Files that need substitution.
-AC_CONFIG_FILES([
-packages/desktop/aegisub.desktop.template
-packages/desktop/aegisub.appdata.xml.template
-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://github.com/FFMS/ffms2
-***********************************************************************
-])])
-
-AC_MSG_RESULT([
-Configure settings
- Install prefix: $prefix
- Revision: $BUILD_GIT_VERSION_STRING
- Debug: $enable_debug
- AppImage: $enable_appimage
- 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
-
-Misc Packages
- uchardet: $with_uchardet $uchardet_disabled
- Hunspell: $with_hunspell $hunspell_disabled
- FFTW3: $with_fftw3 $fftw3_disabled
- LuaJIT: $system_luajit
-])
diff --git a/header.mk b/header.mk
deleted file mode 100644
index 613b38ff1..000000000
--- a/header.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-d := $(abspath $(dir $(lastword $(filter-out $(lastword $(MAKEFILE_LIST)),$(MAKEFILE_LIST)))))/
-
-ifndef TOP
-TOP := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))/
-include $(TOP)Makefile.inc
-
-subdirs := \
- automation \
- libaegisub \
- packages/desktop \
- po \
- src \
- tests \
- tools \
- vendor/luabins \
- vendor/luajit
-
-subdirs := $(addprefix $(TOP),$(addsuffix /Makefile,$(subdirs)))
-
-INCLUDING_CHILD_MAKEFILES=yes
-d_save := $d
-$(foreach dir,$(filter-out $(abspath $(MAKEFILE_LIST)),$(subdirs)), $(eval include $(dir)))
-d := $(d_save)
-INCLUDING_CHILD_MAKEFILES=no
-
-DISTCLEANFILES += \
- $(TOP)acconf.h \
- $(TOP)configure \
- $(TOP)acconf.h.in~ \
- $(TOP)build/git_version.h \
- $(TOP)Makefile.inc \
- $(TOP)config.log \
- $(TOP)acconf.h.in \
- $(TOP)config.status \
- $(TOP)autom4te.cache \
- $(TOP)aclocal.m4 \
-
-define MKDIR_INSTALL
-@$(BIN_MKDIR_P) $(dir $@)
-$(BIN_INSTALL) -m644 $< $@
-endef
-
-endif
diff --git a/install-sh b/install-sh
deleted file mode 100755
index 0360b79e7..000000000
--- a/install-sh
+++ /dev/null
@@ -1,501 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2016-01-11.22; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# 'make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-tab=' '
-nl='
-'
-IFS=" $tab$nl"
-
-# Set DOITPROG to "echo" to test this script.
-
-doit=${DOITPROG-}
-doit_exec=${doit:-exec}
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-is_target_a_directory=possibly
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
- or: $0 [OPTION]... SRCFILES... DIRECTORY
- or: $0 [OPTION]... -t DIRECTORY SRCFILES...
- or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
- --help display this help and exit.
- --version display version info and exit.
-
- -c (ignored)
- -C install only if different (preserve the last data modification time)
- -d create directories instead of installing files.
- -g GROUP $chgrpprog installed files to GROUP.
- -m MODE $chmodprog installed files to MODE.
- -o USER $chownprog installed files to USER.
- -s $stripprog installed files.
- -t DIRECTORY install into DIRECTORY.
- -T report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
- CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
- RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
- case $1 in
- -c) ;;
-
- -C) copy_on_change=true;;
-
- -d) dir_arg=true;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift;;
-
- --help) echo "$usage"; exit $?;;
-
- -m) mode=$2
- case $mode in
- *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
-
- -o) chowncmd="$chownprog $2"
- shift;;
-
- -s) stripcmd=$stripprog;;
-
- -t)
- is_target_a_directory=always
- dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
-
- -T) is_target_a_directory=never;;
-
- --version) echo "$0 $scriptversion"; exit $?;;
-
- --) shift
- break;;
-
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
-
- *) break;;
- esac
- shift
-done
-
-# We allow the use of options -d and -T together, by making -d
-# take the precedence; this is for compatibility with GNU install.
-
-if test -n "$dir_arg"; then
- if test -n "$dst_arg"; then
- echo "$0: target directory not allowed when installing a directory." >&2
- exit 1
- fi
-fi
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
- # When -d is used, all remaining arguments are directories to create.
- # When -t is used, the destination is already specified.
- # Otherwise, the last argument is the destination. Remove it from $@.
- for arg
- do
- if test -n "$dst_arg"; then
- # $@ is not empty: it contains at least $arg.
- set fnord "$@" "$dst_arg"
- shift # fnord
- fi
- shift # arg
- dst_arg=$arg
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- done
-fi
-
-if test $# -eq 0; then
- if test -z "$dir_arg"; then
- echo "$0: no input file specified." >&2
- exit 1
- fi
- # It's OK to call 'install-sh -d' without argument.
- # This can happen when creating conditional directories.
- exit 0
-fi
-
-if test -z "$dir_arg"; then
- if test $# -gt 1 || test "$is_target_a_directory" = always; then
- if test ! -d "$dst_arg"; then
- echo "$0: $dst_arg: Is not a directory." >&2
- exit 1
- fi
- fi
-fi
-
-if test -z "$dir_arg"; then
- do_exit='(exit $ret); exit $ret'
- trap "ret=129; $do_exit" 1
- trap "ret=130; $do_exit" 2
- trap "ret=141; $do_exit" 13
- trap "ret=143; $do_exit" 15
-
- # Set umask so as not to create temps with too-generous modes.
- # However, 'strip' requires both read and write access to temps.
- case $mode in
- # Optimize common cases.
- *644) cp_umask=133;;
- *755) cp_umask=22;;
-
- *[0-7])
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw='% 200'
- fi
- cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
- *)
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw=,u+rw
- fi
- cp_umask=$mode$u_plus_rw;;
- esac
-fi
-
-for src
-do
- # Protect names problematic for 'test' and other utilities.
- case $src in
- -* | [=\(\)!]) src=./$src;;
- esac
-
- if test -n "$dir_arg"; then
- dst=$src
- dstdir=$dst
- test -d "$dstdir"
- dstdir_status=$?
- else
-
- # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
- # might cause directories to be created, which would be especially bad
- # if $src (and thus $dsttmp) contains '*'.
- if test ! -f "$src" && test ! -d "$src"; then
- echo "$0: $src does not exist." >&2
- exit 1
- fi
-
- if test -z "$dst_arg"; then
- echo "$0: no destination specified." >&2
- exit 1
- fi
- dst=$dst_arg
-
- # If destination is a directory, append the input filename; won't work
- # if double slashes aren't ignored.
- if test -d "$dst"; then
- if test "$is_target_a_directory" = never; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
- fi
- dstdir=$dst
- dst=$dstdir/`basename "$src"`
- dstdir_status=0
- else
- dstdir=`dirname "$dst"`
- test -d "$dstdir"
- dstdir_status=$?
- fi
- fi
-
- obsolete_mkdir_used=false
-
- if test $dstdir_status != 0; then
- case $posix_mkdir in
- '')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
- esac
-
- if
- $posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
- )
- then :
- else
-
- # The umask is ridiculous, or mkdir does not conform to POSIX,
- # or it failed possibly due to a race condition. Create the
- # directory the slow way, step by step, checking for races as we go.
-
- case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
- esac
-
- oIFS=$IFS
- IFS=/
- set -f
- set fnord $dstdir
- shift
- set +f
- IFS=$oIFS
-
- prefixes=
-
- for d
- do
- test X"$d" = X && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
- done
-
- if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
- fi
- fi
- fi
-
- if test -n "$dir_arg"; then
- { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
- { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
- test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
- else
-
- # Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
-
- # Trap to clean up those temp files at exit.
- trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
- # Copy the file name to the temp name.
- (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
- # and set any options; do chmod last to preserve setuid bits.
- #
- # If any of these fail, we abort the whole thing. If we want to
- # ignore errors from any of these, just make sure not to ignore
- # errors from the above "$doit $cpprog $src $dsttmp" command.
- #
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
- { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
- { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
- # If -C, don't bother to copy if it wouldn't change the file.
- if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
- set -f &&
- set X $old && old=:$2:$4:$5:$6 &&
- set X $new && new=:$2:$4:$5:$6 &&
- set +f &&
- test "$old" = "$new" &&
- $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
- then
- rm -f "$dsttmp"
- else
- # Rename the file to the real destination.
- $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
- # support -f.
- {
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
- }
- fi || exit 1
-
- trap '' 0
- fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC0"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/libaegisub/Makefile b/libaegisub/Makefile
deleted file mode 100644
index 76fc8d6e4..000000000
--- a/libaegisub/Makefile
+++ /dev/null
@@ -1,56 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-aegisub_OBJ := \
- $(d)common/parser.o \
- $(d)ass/dialogue_parser.o \
- $(d)ass/time.o \
- $(d)ass/uuencode.o \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)audio/*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)common/cajun/*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)lua/modules/*.cpp))) \
- $(patsubst %.c,%.o,$(sort $(wildcard $(d)lua/modules/*.c))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)lua/*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)unix/*.cpp))) \
- $(d)common/calltip_provider.o \
- $(d)common/character_count.o \
- $(d)common/charset.o \
- $(d)common/charset_6937.o \
- $(d)common/charset_conv.o \
- $(d)common/color.o \
- $(d)common/file_mapping.o \
- $(d)common/format.o \
- $(d)common/fs.o \
- $(d)common/hotkey.o \
- $(d)common/io.o \
- $(d)common/json.o \
- $(d)common/kana_table.o \
- $(d)common/karaoke_matcher.o \
- $(d)common/keyframe.o \
- $(d)common/line_iterator.o \
- $(d)common/log.o \
- $(d)common/mru.o \
- $(d)common/option.o \
- $(d)common/option_value.o \
- $(d)common/path.o \
- $(d)common/thesaurus.o \
- $(d)common/util.o \
- $(d)common/vfr.o \
- $(d)common/ycbcr_conv.o
-
-ifeq (yes, $(BUILD_DARWIN))
-aegisub_OBJ += $(patsubst %.mm,%.o,$(sort $(wildcard $(d)osx/*.mm)))
-else
-aegisub_OBJ += $(d)common/dispatch.o
-endif
-
-aegisub_PCH := $(d)lagi_pre.h
-aegisub_CPPFLAGS := -I$(d)include -I$(TOP) $(CPPFLAGS_BOOST) $(CFLAGS_LUA) $(CFLAGS_PTHREAD)
-
-$(d)common/charset.o_FLAGS := $(CFLAGS_UCHARDET)
-$(d)common/charset_conv.o_FLAGS := $(CFLAGS_ICONV)
-$(d)common/parser.o_FLAGS := -ftemplate-depth=256
-$(d)unix/path.o_FLAGS := -DP_DATA=\"$(P_DATA)\"
-
-LIB += aegisub
-
-include $(TOP)Makefile.target
diff --git a/libaegisub/common/keyframe.cpp b/libaegisub/common/keyframe.cpp
index 50e537338..b2855bd11 100644
--- a/libaegisub/common/keyframe.cpp
+++ b/libaegisub/common/keyframe.cpp
@@ -19,6 +19,8 @@
#include "libaegisub/keyframe.h"
+#include
+
#include "libaegisub/io.h"
#include "libaegisub/line_iterator.h"
@@ -35,10 +37,9 @@ std::vector agi_keyframes(std::istream &file) {
return std::vector(agi::line_iterator(file), agi::line_iterator());
}
-std::vector other_keyframes(std::istream &file, char (*func)(std::string const&)) {
+std::vector enumerated_keyframes(std::istream &file, char (*func)(std::string const&)) {
int count = 0;
std::vector ret;
- agi::line_iterator end;
for (auto line : agi::line_iterator(file)) {
char c = tolower(func(line));
if (c == 'i')
@@ -49,6 +50,16 @@ std::vector other_keyframes(std::istream &file, char (*func)(std::string co
return ret;
}
+std::vector indexed_keyframes(std::istream &file, int (*func)(std::string const&)) {
+ std::vector ret;
+ for (auto line : agi::line_iterator(file)) {
+ int frame_no = func(line);
+ if (frame_no >= 0)
+ ret.push_back(frame_no);
+ }
+ return ret;
+}
+
char xvid(std::string const& line) {
return line.empty() ? 0 : line[0];
}
@@ -68,6 +79,20 @@ char x264(std::string const& line) {
if (pos == line.npos || pos + 5 >= line.size()) return 0;
return line[pos + 5];
}
+
+int wwxd(std::string const& line) {
+ if (line.empty() || line[0] == '#')
+ return -1;
+ std::istringstream ss(line);
+ int frame_no;
+ char frame_type;
+ ss >> frame_no >> frame_type;
+ if (ss.fail())
+ throw agi::keyframe::KeyframeFormatParseError("WWXD keyframe file not in qpfile format");
+ if (frame_type == 'I')
+ return frame_no;
+ return -1;
+}
}
namespace agi { namespace keyframe {
@@ -87,13 +112,14 @@ std::vector Load(agi::fs::path const& filename) {
getline(is, header);
if (header == "# keyframe format v1") return agi_keyframes(is);
- if (boost::starts_with(header, "# XviD 2pass stat file")) return other_keyframes(is, xvid);
- if (boost::starts_with(header, "# ffmpeg 2-pass log file, using xvid codec")) return other_keyframes(is, xvid);
- if (boost::starts_with(header, "# avconv 2-pass log file, using xvid codec")) return other_keyframes(is, xvid);
- if (boost::starts_with(header, "##map version")) return other_keyframes(is, divx);
- if (boost::starts_with(header, "#options:")) return other_keyframes(is, x264);
+ if (boost::starts_with(header, "# XviD 2pass stat file")) return enumerated_keyframes(is, xvid);
+ if (boost::starts_with(header, "# ffmpeg 2-pass log file, using xvid codec")) return enumerated_keyframes(is, xvid);
+ if (boost::starts_with(header, "# avconv 2-pass log file, using xvid codec")) return enumerated_keyframes(is, xvid);
+ if (boost::starts_with(header, "##map version")) return enumerated_keyframes(is, divx);
+ if (boost::starts_with(header, "#options:")) return enumerated_keyframes(is, x264);
+ if (boost::starts_with(header, "# WWXD log file, using qpfile format")) return indexed_keyframes(is, wwxd);
- throw Error("Unknown keyframe format");
+ throw UnknownKeyframeFormatError("File header does not match any known formats");
}
} }
diff --git a/libaegisub/lagi_pre.h b/libaegisub/include/lagi_pre.h
similarity index 97%
rename from libaegisub/lagi_pre.h
rename to libaegisub/include/lagi_pre.h
index 50ce877e2..7dcf1cb2e 100644
--- a/libaegisub/lagi_pre.h
+++ b/libaegisub/include/lagi_pre.h
@@ -1,7 +1,5 @@
#ifdef __cplusplus
-#ifndef _WIN32
#include "../acconf.h"
-#endif
#define WIN32_LEAN_AND_MEAN
diff --git a/libaegisub/include/lagi_pre_c.h b/libaegisub/include/lagi_pre_c.h
new file mode 100644
index 000000000..622cf2215
--- /dev/null
+++ b/libaegisub/include/lagi_pre_c.h
@@ -0,0 +1,3 @@
+#include "../acconf.h"
+
+#define WIN32_LEAN_AND_MEAN
\ No newline at end of file
diff --git a/libaegisub/include/libaegisub/keyframe.h b/libaegisub/include/libaegisub/keyframe.h
index 43fb9333f..6fc82ff49 100644
--- a/libaegisub/include/libaegisub/keyframe.h
+++ b/libaegisub/include/libaegisub/keyframe.h
@@ -29,6 +29,7 @@ namespace agi {
/// @param keyframes List of keyframes to save
void Save(agi::fs::path const& filename, std::vector const& keyframes);
- DEFINE_EXCEPTION(Error, Exception);
+ DEFINE_EXCEPTION(KeyframeFormatParseError, agi::InvalidInputException);
+ DEFINE_EXCEPTION(UnknownKeyframeFormatError, agi::InvalidInputException);
}
}
diff --git a/libaegisub/include/libaegisub/signal.h b/libaegisub/include/libaegisub/signal.h
index ca520e49f..091cc7873 100644
--- a/libaegisub/include/libaegisub/signal.h
+++ b/libaegisub/include/libaegisub/signal.h
@@ -100,6 +100,7 @@ namespace detail {
SignalBase& operator=(SignalBase const&) = delete;
protected:
SignalBase() = default;
+ virtual ~SignalBase() {};
/// @brief Notify a slot that it has been disconnected
/// @param tok Token to disconnect
///
diff --git a/libaegisub/meson.build b/libaegisub/meson.build
new file mode 100644
index 000000000..e780a399c
--- /dev/null
+++ b/libaegisub/meson.build
@@ -0,0 +1,91 @@
+libaegisub_src = [
+ 'ass/dialogue_parser.cpp',
+ 'ass/time.cpp',
+ 'ass/uuencode.cpp',
+
+ 'audio/provider_convert.cpp',
+ 'audio/provider.cpp',
+ 'audio/provider_dummy.cpp',
+ 'audio/provider_hd.cpp',
+ 'audio/provider_lock.cpp',
+ 'audio/provider_pcm.cpp',
+ 'audio/provider_ram.cpp',
+
+ 'common/calltip_provider.cpp',
+ 'common/character_count.cpp',
+ 'common/charset_6937.cpp',
+ 'common/charset_conv.cpp',
+ 'common/charset.cpp',
+ 'common/color.cpp',
+ 'common/file_mapping.cpp',
+ 'common/format.cpp',
+ 'common/fs.cpp',
+ 'common/hotkey.cpp',
+ 'common/io.cpp',
+ 'common/json.cpp',
+ 'common/kana_table.cpp',
+ 'common/karaoke_matcher.cpp',
+ 'common/keyframe.cpp',
+ 'common/line_iterator.cpp',
+ 'common/log.cpp',
+ 'common/mru.cpp',
+ 'common/option.cpp',
+ 'common/option_value.cpp',
+ 'common/parser.cpp',
+ 'common/path.cpp',
+ 'common/thesaurus.cpp',
+ 'common/util.cpp',
+ 'common/vfr.cpp',
+ 'common/ycbcr_conv.cpp',
+ 'common/cajun/elements.cpp',
+ 'common/cajun/reader.cpp',
+ 'common/cajun/writer.cpp',
+
+ 'lua/modules.cpp',
+ 'lua/script_reader.cpp',
+ 'lua/utils.cpp',
+ 'lua/modules/lfs.cpp',
+ 'lua/modules/re.cpp',
+ 'lua/modules/unicode.cpp',
+ 'lua/modules/lpeg.c',
+]
+
+if host_machine.system() == 'darwin'
+ libaegisub_src += [
+ 'osx/dispatch.mm',
+ 'osx/spellchecker.mm',
+ 'osx/util.mm',
+ ]
+else
+ libaegisub_src += 'common/dispatch.cpp'
+endif
+
+if host_machine.system() == 'windows'
+ libaegisub_src += [
+ 'windows/access.cpp',
+ 'windows/charset_conv_win.cpp',
+ 'windows/fs.cpp',
+ 'windows/log_win.cpp',
+ 'windows/path_win.cpp',
+ 'windows/util_win.cpp',
+ ]
+else
+ libaegisub_src += [
+ 'unix/access.cpp',
+ 'unix/fs.cpp',
+ 'unix/log.cpp',
+ 'unix/path.cpp',
+ 'unix/util.cpp',
+ ]
+endif
+
+libaegisub_cpp_pch = ['include/lagi_pre.h']
+libaegisub_c_pch = ['include/lagi_pre_c.h']
+
+libaegisub_inc = include_directories('include')
+
+libaegisub = static_library('aegisub', libaegisub_src, acconf,
+ include_directories: [libaegisub_inc, deps_inc],
+ cpp_pch: libaegisub_cpp_pch,
+ c_pch: libaegisub_c_pch,
+ dependencies: deps)
diff --git a/libaegisub/windows/lagi_pre.cpp b/libaegisub/windows/lagi_pre.cpp
deleted file mode 100644
index e69de29bb..000000000
diff --git a/m4macros/ac_agi.m4 b/m4macros/ac_agi.m4
deleted file mode 100644
index e45a54767..000000000
--- a/m4macros/ac_agi.m4
+++ /dev/null
@@ -1,51 +0,0 @@
-AC_DEFUN([AC_AGI_COMPILE],[
- aegisub_save_LIBS="$LIBS"
- aegisub_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $3"
- LIBS="$LIBS $4"
- AC_LANG_PUSH(C++)
- AC_CACHE_CHECK(
- [whether $1 works], [agi_cv_with_$2],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([$5])],
- [eval agi_cv_with_$2="yes"],
- [eval agi_cv_with_$2="no"],
- [AS_IF([test $? -ne 0], [eval agi_cv_with_$2="no"], [eval agi_cv_with_$2="yes"])])])
- AC_LANG_POP(C++)
- CPPFLAGS="$aegisub_save_CPPFLAGS"
- LIBS="$aegisub_save_LIBS"
-])
-
-AC_DEFUN([AC_AGI_LINK],[
- aegisub_save_LIBS="$LIBS"
- aegisub_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $4"
- LIBS="$LIBS $5"
- AC_CHECK_HEADER([$3], [agi_cv_header="yes"], [agi_cv_header="no"])
- AS_IF([test "x$agi_cv_header" = xyes],
- [AC_CACHE_CHECK(
- [whether $1 works], [agi_cv_with_$2],
- [AC_LINK_IFELSE([AC_LANG_SOURCE([$6])], [eval agi_cv_with_$2="yes"], [eval agi_cv_with_$2="no"])])]
- [eval agi_cv_with_$2="no"])
- CPPFLAGS="$aegisub_save_CPPFLAGS"
- LIBS="$aegisub_save_LIBS"
-])
-
-# An optional dependency which requires pkg-config
-# Args: Name, AC_ARG_WITH help string, AC_DEFINE help string
-AC_DEFUN([AGI_OPT_PKG], [
- m4_define([varname], m4_bpatsubst([$1], [-.*], []))dnl
- m4_define([upper], m4_translit(varname, [a-z], [A-Z]))dnl
-
- AC_ARG_WITH(varname, AS_HELP_STRING([--without-][varname], [$2]))
- AS_IF([test x$with_]varname[ = xno],
- varname[_disabled="(disabled)"],
- [PKG_CHECK_MODULES(upper, $1 >= varname[]_required_version, [
- AC_DEFINE([WITH_]upper, 1, $3)
- with_[]varname="yes"
- ], [
- AS_IF([test x$with_]varname[ = xyes],
- [AC_MSG_FAILURE([--with-]varname[ was specified, but ]varname[ could not be found])])
- with_[]varname="no"
- ])])
- AC_SUBST([with_]varname)
-])
diff --git a/m4macros/ac_flag.m4 b/m4macros/ac_flag.m4
deleted file mode 100644
index 7b22ccad0..000000000
--- a/m4macros/ac_flag.m4
+++ /dev/null
@@ -1,56 +0,0 @@
-AC_DEFUN([AC_C_FLAG], [{
- AC_LANG_PUSH(C)
- ac_c_flag_save="$CFLAGS"
- CFLAGS="$CFLAGS -Werror $1"
- AC_MSG_CHECKING([[whether $CC supports $1]])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]])],
- [
- CFLAGS="$ac_c_flag_save $1"
- AC_MSG_RESULT([yes])
- ], [
- CFLAGS="$ac_c_flag_save"
- AC_MSG_RESULT([no])
- $2
- ])
- AC_LANG_POP(C)
- }])
-AC_DEFUN([AC_CXX_FLAG], [{
- AC_LANG_PUSH(C++)
- ac_cxx_flag_save="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -Werror $1"
- AC_MSG_CHECKING([[whether $CXX supports $1]])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]])],
- [
- CXXFLAGS="$ac_cxx_flag_save $1"
- AC_MSG_RESULT([yes])
- ],
- [
- CXXFLAGS="$ac_cxx_flag_save"
- AC_MSG_RESULT([no])
- $2
- ])
- AC_LANG_POP(C++)
- }])
-AC_DEFUN([AC_PCH_FLAG], [{
- AC_LANG_PUSH(C++)
- ac_cxx_flag_save="$CXXFLAGS"
- ac_cxx_werror_flag_save="$ac_cxx_werror_flag"
- ac_cxx_werror_flag=yes
- CXXFLAGS="$CXXFLAGS -Werror $1"
- AC_MSG_CHECKING([[whether $CXX supports $1]])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]])],
- [
- PCHFLAGS="$PCHFLAGS $1"
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- $2
- ])
- CXXFLAGS="$ac_cxx_flag_save"
- ac_cxx_werror_flag="$ac_cxx_werror_flag_save"
- AC_LANG_POP(C++)
- }])
diff --git a/m4macros/agi_find_libheader.m4 b/m4macros/agi_find_libheader.m4
deleted file mode 100644
index 7d1dea637..000000000
--- a/m4macros/agi_find_libheader.m4
+++ /dev/null
@@ -1,58 +0,0 @@
-AC_DEFUN([AGI_FIND_HEADER],[
- file=`echo $2 | $as_tr_sh`
-
- aegisub_save_CPPFLAGS="$CPPFLAGS"
-
- for dir in $3; do
- vdir=`echo $dir | $as_tr_sh`
- CPPFLAGS="-I$dir"
- AC_CACHE_CHECK(
- [for $2 in $dir],
- [agi_cv_header_${vdir}_${file}],
- [AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([#include <$2>])],
- [eval agi_cv_header_${vdir}_${file}="yes"; found="${dir}"],
- [eval agi_cv_header_${vdir}_${file}="no"; found=""])
- ])
-
- if test -n "$found"; then
- break;
- fi
- done
-
- if test -n "$found"; then
- $1_CFLAGS="-I$found"
- fi
- CPPFLAGS="$aegisub_save_CPPFLAGS"
-])
-
-
-AC_DEFUN([AGI_FIND_LIB],[
- aegisub_save_LIBS="$LIBS"
-
- if test -n "$3"; then
- LDDIR="-L$3"
- fi
-
- for lib in $2; do
- vlib=`echo $lib | $as_tr_sh`
- LIBS="$LDDIR -l$lib"
- AC_CACHE_CHECK(
- [for -l${lib}],
- [agi_cv_lib_${vlib}],
- [AC_LINK_IFELSE(
- [AC_LANG_PROGRAM()],
- [eval agi_cv_lib_${vlib}="yes"; found="${lib}"],
- [eval agi_cv_lib_${vlib}="no"; found=""])
- ])
-
- if test -n "$found"; then
- break;
- fi
- done
-
- if test -n "$found"; then
- $1_LIBS="$LDDIR -l$found"
- fi
- LIBS="$aegisub_save_LIBS"
-])
diff --git a/m4macros/ax_boost_base.m4 b/m4macros/ax_boost_base.m4
deleted file mode 100644
index 478050ff0..000000000
--- a/m4macros/ax_boost_base.m4
+++ /dev/null
@@ -1,301 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_base.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_BASE([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# DESCRIPTION
-#
-# Test for the Boost C++ libraries of a particular version (or newer)
-#
-# If no path to the installed boost library is given the macro searchs
-# under /usr, /usr/local, /opt and /opt/local and evaluates the
-# $BOOST_ROOT environment variable. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_CPPFLAGS) / AC_SUBST(BOOST_LDFLAGS)
-#
-# And sets:
-#
-# HAVE_BOOST
-#
-# LICENSE
-#
-# Copyright (c) 2008 Thomas Porschberg
-# Copyright (c) 2009 Peter Adolphs
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 42
-
-# example boost program (need to pass version)
-m4_define([_AX_BOOST_BASE_PROGRAM],
- [AC_LANG_PROGRAM([[
-#include
-]],[[
-(void) ((void)sizeof(char[1 - 2*!!((BOOST_VERSION) < ($1))]));
-]])])
-
-AC_DEFUN([AX_BOOST_BASE],
-[
-AC_ARG_WITH([boost],
- [AS_HELP_STRING([--with-boost@<:@=ARG@:>@],
- [use Boost library from a standard location (ARG=yes),
- from the specified location (ARG=),
- or disable it (ARG=no)
- @<:@ARG=yes@:>@ ])],
- [
- AS_CASE([$withval],
- [no],[want_boost="no";_AX_BOOST_BASE_boost_path=""],
- [yes],[want_boost="yes";_AX_BOOST_BASE_boost_path=""],
- [want_boost="yes";_AX_BOOST_BASE_boost_path="$withval"])
- ],
- [want_boost="yes"])
-
-
-AC_ARG_WITH([boost-libdir],
- [AS_HELP_STRING([--with-boost-libdir=LIB_DIR],
- [Force given directory for boost libraries.
- Note that this will override library path detection,
- so use this parameter only if default library detection fails
- and you know exactly where your boost libraries are located.])],
- [
- AS_IF([test -d "$withval"],
- [_AX_BOOST_BASE_boost_lib_path="$withval"],
- [AC_MSG_ERROR([--with-boost-libdir expected directory name])])
- ],
- [_AX_BOOST_BASE_boost_lib_path=""])
-
-BOOST_LDFLAGS=""
-BOOST_CPPFLAGS=""
-AS_IF([test "x$want_boost" = "xyes"],
- [_AX_BOOST_BASE_RUNDETECT([$1],[$2],[$3])])
-AC_SUBST(BOOST_CPPFLAGS)
-AC_SUBST(BOOST_LDFLAGS)
-])
-
-
-# convert a version string in $2 to numeric and affect to polymorphic var $1
-AC_DEFUN([_AX_BOOST_BASE_TONUMERICVERSION],[
- AS_IF([test "x$2" = "x"],[_AX_BOOST_BASE_TONUMERICVERSION_req="1.20.0"],[_AX_BOOST_BASE_TONUMERICVERSION_req="$2"])
- _AX_BOOST_BASE_TONUMERICVERSION_req_shorten=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '\([[0-9]]*\.[[0-9]]*\)'`
- _AX_BOOST_BASE_TONUMERICVERSION_req_major=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '\([[0-9]]*\)'`
- AS_IF([test "x$_AX_BOOST_BASE_TONUMERICVERSION_req_major" = "x"],
- [AC_MSG_ERROR([You should at least specify libboost major version])])
- _AX_BOOST_BASE_TONUMERICVERSION_req_minor=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '[[0-9]]*\.\([[0-9]]*\)'`
- AS_IF([test "x$_AX_BOOST_BASE_TONUMERICVERSION_req_minor" = "x"],
- [_AX_BOOST_BASE_TONUMERICVERSION_req_minor="0"])
- _AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'`
- AS_IF([test "X$_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor" = "X"],
- [_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor="0"])
- _AX_BOOST_BASE_TONUMERICVERSION_RET=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req_major \* 100000 \+ $_AX_BOOST_BASE_TONUMERICVERSION_req_minor \* 100 \+ $_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor`
- AS_VAR_SET($1,$_AX_BOOST_BASE_TONUMERICVERSION_RET)
-])
-
-dnl Run the detection of boost should be run only if $want_boost
-AC_DEFUN([_AX_BOOST_BASE_RUNDETECT],[
- _AX_BOOST_BASE_TONUMERICVERSION(WANT_BOOST_VERSION,[$1])
- succeeded=no
-
-
- AC_REQUIRE([AC_CANONICAL_HOST])
- dnl On 64-bit systems check for system libraries in both lib64 and lib.
- dnl The former is specified by FHS, but e.g. Debian does not adhere to
- dnl this (as it rises problems for generic multi-arch support).
- dnl The last entry in the list is chosen by default when no libraries
- dnl are found, e.g. when only header-only libraries are installed!
- AS_CASE([${host_cpu}],
- [x86_64],[libsubdirs="lib64 libx32 lib lib64"],
- [ppc64|s390x|sparc64|aarch64|ppc64le],[libsubdirs="lib64 lib lib64"],
- [libsubdirs="lib"],
- )
-
- dnl allow for real multi-arch paths e.g. /usr/lib/x86_64-linux-gnu. Give
- dnl them priority over the other paths since, if libs are found there, they
- dnl are almost assuredly the ones desired.
- AS_CASE([${host_cpu}],
- [i?86],[multiarch_libsubdir="lib/i386-${host_os}"],
- [multiarch_libsubdir="lib/${host_cpu}-${host_os}"]
- )
-
- dnl first we check the system location for boost libraries
- dnl this location ist chosen if boost libraries are installed with the --layout=system option
- dnl or if you install boost with RPM
- AS_IF([test "x$_AX_BOOST_BASE_boost_path" != "x"],[
- AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION) includes in "$_AX_BOOST_BASE_boost_path/include"])
- AS_IF([test -d "$_AX_BOOST_BASE_boost_path/include" && test -r "$_AX_BOOST_BASE_boost_path/include"],[
- AC_MSG_RESULT([yes])
- BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path/include"
- for _AX_BOOST_BASE_boost_path_tmp in $multiarch_libsubdir $libsubdirs; do
- AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION) lib path in "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp"])
- AS_IF([test -d "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp" && test -r "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp" ],[
- AC_MSG_RESULT([yes])
- BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp";
- break;
- ],
- [AC_MSG_RESULT([no])])
- done],[
- AC_MSG_RESULT([no])])
- ],[
- if test X"$cross_compiling" = Xyes; then
- search_libsubdirs=$multiarch_libsubdir
- else
- search_libsubdirs="$multiarch_libsubdir $libsubdirs"
- fi
- for _AX_BOOST_BASE_boost_path_tmp in /usr /usr/local /opt /opt/local ; do
- if test -d "$_AX_BOOST_BASE_boost_path_tmp/include/boost" && test -r "$_AX_BOOST_BASE_boost_path_tmp/include/boost" ; then
- for libsubdir in $search_libsubdirs ; do
- if ls "$_AX_BOOST_BASE_boost_path_tmp/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi
- done
- BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path_tmp/$libsubdir"
- BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path_tmp/include"
- break;
- fi
- done
- ])
-
- dnl overwrite ld flags if we have required special directory with
- dnl --with-boost-libdir parameter
- AS_IF([test "x$_AX_BOOST_BASE_boost_lib_path" != "x"],
- [BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_lib_path"])
-
- AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION)])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_REQUIRE([AC_PROG_CXX])
- AC_LANG_PUSH(C++)
- AC_COMPILE_IFELSE([_AX_BOOST_BASE_PROGRAM($WANT_BOOST_VERSION)],[
- AC_MSG_RESULT(yes)
- succeeded=yes
- found_system=yes
- ],[
- ])
- AC_LANG_POP([C++])
-
-
-
- dnl if we found no boost with system layout we search for boost libraries
- dnl built and installed without the --layout=system option or for a staged(not installed) version
- if test "x$succeeded" != "xyes" ; then
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- BOOST_CPPFLAGS=
- if test -z "$_AX_BOOST_BASE_boost_lib_path" ; then
- BOOST_LDFLAGS=
- fi
- _version=0
- if test -n "$_AX_BOOST_BASE_boost_path" ; then
- if test -d "$_AX_BOOST_BASE_boost_path" && test -r "$_AX_BOOST_BASE_boost_path"; then
- for i in `ls -d $_AX_BOOST_BASE_boost_path/include/boost-* 2>/dev/null`; do
- _version_tmp=`echo $i | sed "s#$_AX_BOOST_BASE_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'`
- V_CHECK=`expr $_version_tmp \> $_version`
- if test "x$V_CHECK" = "x1" ; then
- _version=$_version_tmp
- fi
- VERSION_UNDERSCORE=`echo $_version | sed 's/\./_/'`
- BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path/include/boost-$VERSION_UNDERSCORE"
- done
- dnl if nothing found search for layout used in Windows distributions
- if test -z "$BOOST_CPPFLAGS"; then
- if test -d "$_AX_BOOST_BASE_boost_path/boost" && test -r "$_AX_BOOST_BASE_boost_path/boost"; then
- BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path"
- fi
- fi
- dnl if we found something and BOOST_LDFLAGS was unset before
- dnl (because "$_AX_BOOST_BASE_boost_lib_path" = ""), set it here.
- if test -n "$BOOST_CPPFLAGS" && test -z "$BOOST_LDFLAGS"; then
- for libsubdir in $libsubdirs ; do
- if ls "$_AX_BOOST_BASE_boost_path/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi
- done
- BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path/$libsubdir"
- fi
- fi
- else
- if test "x$cross_compiling" != "xyes" ; then
- for _AX_BOOST_BASE_boost_path in /usr /usr/local /opt /opt/local ; do
- if test -d "$_AX_BOOST_BASE_boost_path" && test -r "$_AX_BOOST_BASE_boost_path" ; then
- for i in `ls -d $_AX_BOOST_BASE_boost_path/include/boost-* 2>/dev/null`; do
- _version_tmp=`echo $i | sed "s#$_AX_BOOST_BASE_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'`
- V_CHECK=`expr $_version_tmp \> $_version`
- if test "x$V_CHECK" = "x1" ; then
- _version=$_version_tmp
- best_path=$_AX_BOOST_BASE_boost_path
- fi
- done
- fi
- done
-
- VERSION_UNDERSCORE=`echo $_version | sed 's/\./_/'`
- BOOST_CPPFLAGS="-I$best_path/include/boost-$VERSION_UNDERSCORE"
- if test -z "$_AX_BOOST_BASE_boost_lib_path" ; then
- for libsubdir in $libsubdirs ; do
- if ls "$best_path/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi
- done
- BOOST_LDFLAGS="-L$best_path/$libsubdir"
- fi
- fi
-
- if test -n "$BOOST_ROOT" ; then
- for libsubdir in $libsubdirs ; do
- if ls "$BOOST_ROOT/stage/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi
- done
- if test -d "$BOOST_ROOT" && test -r "$BOOST_ROOT" && test -d "$BOOST_ROOT/stage/$libsubdir" && test -r "$BOOST_ROOT/stage/$libsubdir"; then
- version_dir=`expr //$BOOST_ROOT : '.*/\(.*\)'`
- stage_version=`echo $version_dir | sed 's/boost_//' | sed 's/_/./g'`
- stage_version_shorten=`expr $stage_version : '\([[0-9]]*\.[[0-9]]*\)'`
- V_CHECK=`expr $stage_version_shorten \>\= $_version`
- if test "x$V_CHECK" = "x1" && test -z "$_AX_BOOST_BASE_boost_lib_path" ; then
- AC_MSG_NOTICE(We will use a staged boost library from $BOOST_ROOT)
- BOOST_CPPFLAGS="-I$BOOST_ROOT"
- BOOST_LDFLAGS="-L$BOOST_ROOT/stage/$libsubdir"
- fi
- fi
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_LANG_PUSH(C++)
- AC_COMPILE_IFELSE([_AX_BOOST_BASE_PROGRAM($WANT_BOOST_VERSION)],[
- AC_MSG_RESULT(yes)
- succeeded=yes
- found_system=yes
- ],[
- ])
- AC_LANG_POP([C++])
- fi
-
- if test "x$succeeded" != "xyes" ; then
- if test "x$_version" = "x0" ; then
- AC_MSG_NOTICE([[We could not detect the boost libraries (version $1 or higher). If you have a staged boost library (still not installed) please specify \$BOOST_ROOT in your environment and do not give a PATH to --with-boost option. If you are sure you have boost installed, then check your version number looking in . See http://randspringer.de/boost for more documentation.]])
- else
- AC_MSG_NOTICE([Your boost libraries seems to old (version $_version).])
- fi
- # execute ACTION-IF-NOT-FOUND (if present):
- ifelse([$3], , :, [$3])
- else
- AC_DEFINE(HAVE_BOOST,,[define if the Boost library is available])
- # execute ACTION-IF-FOUND (if present):
- ifelse([$2], , :, [$2])
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
-
-])
\ No newline at end of file
diff --git a/m4macros/ax_boost_chrono.m4 b/m4macros/ax_boost_chrono.m4
deleted file mode 100644
index 6ea77b9b3..000000000
--- a/m4macros/ax_boost_chrono.m4
+++ /dev/null
@@ -1,118 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_chrono.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_CHRONO
-#
-# DESCRIPTION
-#
-# Test for Chrono library from the Boost C++ libraries. The macro requires
-# a preceding call to AX_BOOST_BASE. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_CHRONO_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_CHRONO
-#
-# LICENSE
-#
-# Copyright (c) 2012 Xiyue Deng
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 4
-
-AC_DEFUN([AX_BOOST_CHRONO],
-[
- AC_ARG_WITH([boost-chrono],
- AS_HELP_STRING([--with-boost-chrono@<:@=special-lib@:>@],
- [use the Chrono library from boost - it is possible to specify a certain library for the linker
- e.g. --with-boost-chrono=boost_chrono-gcc-mt ]),
- [
- if test "$withval" = "no"; then
- want_boost="no"
- elif test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_chrono_lib=""
- else
- want_boost="yes"
- ax_boost_user_chrono_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([AC_CANONICAL_BUILD])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_CACHE_CHECK(whether the Boost::Chrono library is available,
- ax_cv_boost_chrono,
- [AC_LANG_PUSH([C++])
- CXXFLAGS_SAVE=$CXXFLAGS
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include ]],
- [[boost::chrono::system_clock::time_point* time = new boost::chrono::system_clock::time_point; delete time;]])],
- ax_cv_boost_chrono=yes, ax_cv_boost_chrono=no)
- CXXFLAGS=$CXXFLAGS_SAVE
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_chrono" = "xyes"; then
- AC_SUBST(BOOST_CPPFLAGS)
-
- AC_DEFINE(HAVE_BOOST_CHRONO,,[define if the Boost::Chrono library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
-
- LDFLAGS_SAVE=$LDFLAGS
- if test "x$ax_boost_user_chrono_lib" = "x"; then
- for libextension in `ls $BOOSTLIBDIR/libboost_chrono*.so* $BOOSTLIBDIR/libboost_chrono*.dylib* $BOOSTLIBDIR/libboost_chrono*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_chrono.*\)\.so.*$;\1;' -e 's;^lib\(boost_chrono.*\)\.dylib.*$;\1;' -e 's;^lib\(boost_chrono.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_CHRONO_LIB="-l$ax_lib"; AC_SUBST(BOOST_CHRONO_LIB) link_chrono="yes"; break],
- [link_chrono="no"])
- done
- if test "x$link_chrono" != "xyes"; then
- for libextension in `ls $BOOSTLIBDIR/boost_chrono*.dll* $BOOSTLIBDIR/boost_chrono*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^\(boost_chrono.*\)\.dll.*$;\1;' -e 's;^\(boost_chrono.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_CHRONO_LIB="-l$ax_lib"; AC_SUBST(BOOST_CHRONO_LIB) link_chrono="yes"; break],
- [link_chrono="no"])
- done
- fi
-
- else
- for ax_lib in $ax_boost_user_chrono_lib boost_chrono-$ax_boost_user_chrono_lib; do
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_CHRONO_LIB="-l$ax_lib"; AC_SUBST(BOOST_CHRONO_LIB) link_chrono="yes"; break],
- [link_chrono="no"])
- done
-
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the library!)
- fi
- if test "x$link_chrono" = "xno"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- fi
-])
diff --git a/m4macros/ax_boost_filesystem.m4 b/m4macros/ax_boost_filesystem.m4
deleted file mode 100644
index c392f9d65..000000000
--- a/m4macros/ax_boost_filesystem.m4
+++ /dev/null
@@ -1,118 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_filesystem.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_FILESYSTEM
-#
-# DESCRIPTION
-#
-# Test for Filesystem library from the Boost C++ libraries. The macro
-# requires a preceding call to AX_BOOST_BASE. Further documentation is
-# available at .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_FILESYSTEM_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_FILESYSTEM
-#
-# LICENSE
-#
-# Copyright (c) 2009 Thomas Porschberg
-# Copyright (c) 2009 Michael Tindal
-# Copyright (c) 2009 Roman Rybalko
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 27
-
-AC_DEFUN([AX_BOOST_FILESYSTEM],
-[
- AC_ARG_WITH([boost-filesystem],
- AS_HELP_STRING([--with-boost-filesystem@<:@=special-lib@:>@],
- [use the Filesystem library from boost - it is possible to specify a certain library for the linker
- e.g. --with-boost-filesystem=boost_filesystem-gcc-mt ]),
- [
- if test "$withval" = "no"; then
- want_boost="no"
- elif test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_filesystem_lib=""
- else
- want_boost="yes"
- ax_boost_user_filesystem_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- LIBS_SAVED=$LIBS
- LIBS="$LIBS $BOOST_SYSTEM_LIB"
- export LIBS
-
- AC_CACHE_CHECK(whether the Boost::Filesystem library is available,
- ax_cv_boost_filesystem,
- [AC_LANG_PUSH([C++])
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include ]],
- [[using namespace boost::filesystem;
- path my_path( "foo/bar/data.txt" );
- return 0;]])],
- ax_cv_boost_filesystem=yes, ax_cv_boost_filesystem=no)
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_filesystem" = "xyes"; then
- AC_DEFINE(HAVE_BOOST_FILESYSTEM,,[define if the Boost::Filesystem library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
- if test "x$ax_boost_user_filesystem_lib" = "x"; then
- for libextension in `ls -r $BOOSTLIBDIR/libboost_filesystem* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_FILESYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_FILESYSTEM_LIB) link_filesystem="yes"; break],
- [link_filesystem="no"])
- done
- if test "x$link_filesystem" != "xyes"; then
- for libextension in `ls -r $BOOSTLIBDIR/boost_filesystem* 2>/dev/null | sed 's,.*/,,' | sed -e 's,\..*,,'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_FILESYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_FILESYSTEM_LIB) link_filesystem="yes"; break],
- [link_filesystem="no"])
- done
- fi
- else
- for ax_lib in $ax_boost_user_filesystem_lib boost_filesystem-$ax_boost_user_filesystem_lib; do
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_FILESYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_FILESYSTEM_LIB) link_filesystem="yes"; break],
- [link_filesystem="no"])
- done
-
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the library!)
- fi
- if test "x$link_filesystem" != "xyes"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- LIBS="$LIBS_SAVED"
- fi
-])
diff --git a/m4macros/ax_boost_locale.m4 b/m4macros/ax_boost_locale.m4
deleted file mode 100644
index adaedf09e..000000000
--- a/m4macros/ax_boost_locale.m4
+++ /dev/null
@@ -1,119 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_locale.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_LOCALE
-#
-# DESCRIPTION
-#
-# Test for System library from the Boost C++ libraries. The macro requires
-# a preceding call to AX_BOOST_BASE. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_LOCALE_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_LOCALE
-#
-# LICENSE
-#
-# Copyright (c) 2012 Xiyue Deng
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 2
-
-AC_DEFUN([AX_BOOST_LOCALE],
-[
- AC_ARG_WITH([boost-locale],
- AS_HELP_STRING([--with-boost-locale@<:@=special-lib@:>@],
- [use the Locale library from boost - it is possible to specify a certain library for the linker
- e.g. --with-boost-locale=boost_locale-gcc-mt ]),
- [
- if test "$withval" = "no"; then
- want_boost="no"
- elif test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_locale_lib=""
- else
- want_boost="yes"
- ax_boost_user_locale_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([AC_CANONICAL_BUILD])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_CACHE_CHECK(whether the Boost::Locale library is available,
- ax_cv_boost_locale,
- [AC_LANG_PUSH([C++])
- CXXFLAGS_SAVE=$CXXFLAGS
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include ]],
- [[boost::locale::generator gen;
- std::locale::global(gen(""));]])],
- ax_cv_boost_locale=yes, ax_cv_boost_locale=no)
- CXXFLAGS=$CXXFLAGS_SAVE
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_locale" = "xyes"; then
- AC_SUBST(BOOST_CPPFLAGS)
-
- AC_DEFINE(HAVE_BOOST_LOCALE,,[define if the Boost::Locale library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
-
- LDFLAGS_SAVE=$LDFLAGS
- if test "x$ax_boost_user_locale_lib" = "x"; then
- for libextension in `ls $BOOSTLIBDIR/libboost_locale*.so* $BOOSTLIBDIR/libboost_locale*.dylib* $BOOSTLIBDIR/libboost_locale*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_locale.*\)\.so.*$;\1;' -e 's;^lib\(boost_locale.*\)\.dylib.*$;\1;' -e 's;^lib\(boost_locale.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_LOCALE_LIB="-l$ax_lib"; AC_SUBST(BOOST_LOCALE_LIB) link_locale="yes"; break],
- [link_locale="no"])
- done
- if test "x$link_locale" != "xyes"; then
- for libextension in `ls $BOOSTLIBDIR/boost_locale*.dll* $BOOSTLIBDIR/boost_locale*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^\(boost_locale.*\)\.dll.*$;\1;' -e 's;^\(boost_locale.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_LOCALE_LIB="-l$ax_lib"; AC_SUBST(BOOST_LOCALE_LIB) link_locale="yes"; break],
- [link_locale="no"])
- done
- fi
-
- else
- for ax_lib in $ax_boost_user_locale_lib boost_locale-$ax_boost_user_locale_lib; do
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_LOCALE_LIB="-l$ax_lib"; AC_SUBST(BOOST_LOCALE_LIB) link_locale="yes"; break],
- [link_locale="no"])
- done
-
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the library!)
- fi
- if test "x$link_locale" = "xno"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- fi
-])
diff --git a/m4macros/ax_boost_regex.m4 b/m4macros/ax_boost_regex.m4
deleted file mode 100644
index e2413c24f..000000000
--- a/m4macros/ax_boost_regex.m4
+++ /dev/null
@@ -1,111 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_regex.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_REGEX
-#
-# DESCRIPTION
-#
-# Test for Regex library from the Boost C++ libraries. The macro requires
-# a preceding call to AX_BOOST_BASE. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_REGEX_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_REGEX
-#
-# LICENSE
-#
-# Copyright (c) 2008 Thomas Porschberg
-# Copyright (c) 2008 Michael Tindal
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 23
-
-AC_DEFUN([AX_BOOST_REGEX],
-[
- AC_ARG_WITH([boost-regex],
- AS_HELP_STRING([--with-boost-regex@<:@=special-lib@:>@],
- [use the Regex library from boost - it is possible to specify a certain library for the linker
- e.g. --with-boost-regex=boost_regex-gcc-mt-d-1_33_1 ]),
- [
- if test "$withval" = "no"; then
- want_boost="no"
- elif test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_regex_lib=""
- else
- want_boost="yes"
- ax_boost_user_regex_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_CACHE_CHECK(whether the Boost::Regex library is available,
- ax_cv_boost_regex,
- [AC_LANG_PUSH([C++])
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include
- ]],
- [[boost::regex r(); return 0;]])],
- ax_cv_boost_regex=yes, ax_cv_boost_regex=no)
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_regex" = "xyes"; then
- AC_DEFINE(HAVE_BOOST_REGEX,,[define if the Boost::Regex library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
- if test "x$ax_boost_user_regex_lib" = "x"; then
- for libextension in `ls $BOOSTLIBDIR/libboost_regex*.so* $BOOSTLIBDIR/libboost_regex*.dylib* $BOOSTLIBDIR/libboost_regex*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_regex.*\)\.so.*$;\1;' -e 's;^lib\(boost_regex.*\)\.dylib.*;\1;' -e 's;^lib\(boost_regex.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_REGEX_LIB="-l$ax_lib"; AC_SUBST(BOOST_REGEX_LIB) link_regex="yes"; break],
- [link_regex="no"])
- done
- if test "x$link_regex" != "xyes"; then
- for libextension in `ls $BOOSTLIBDIR/boost_regex*.dll* $BOOSTLIBDIR/boost_regex*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^\(boost_regex.*\)\.dll.*$;\1;' -e 's;^\(boost_regex.*\)\.a.*$;\1;'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_REGEX_LIB="-l$ax_lib"; AC_SUBST(BOOST_REGEX_LIB) link_regex="yes"; break],
- [link_regex="no"])
- done
- fi
-
- else
- for ax_lib in $ax_boost_user_regex_lib boost_regex-$ax_boost_user_regex_lib; do
- AC_CHECK_LIB($ax_lib, main,
- [BOOST_REGEX_LIB="-l$ax_lib"; AC_SUBST(BOOST_REGEX_LIB) link_regex="yes"; break],
- [link_regex="no"])
- done
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the Boost::Regex library!)
- fi
- if test "x$link_regex" != "xyes"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- fi
-])
diff --git a/m4macros/ax_boost_system.m4 b/m4macros/ax_boost_system.m4
deleted file mode 100644
index 207d7be8d..000000000
--- a/m4macros/ax_boost_system.m4
+++ /dev/null
@@ -1,121 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_system.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_SYSTEM
-#
-# DESCRIPTION
-#
-# Test for System library from the Boost C++ libraries. The macro requires
-# a preceding call to AX_BOOST_BASE. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_SYSTEM_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_SYSTEM
-#
-# LICENSE
-#
-# Copyright (c) 2008 Thomas Porschberg
-# Copyright (c) 2008 Michael Tindal
-# Copyright (c) 2008 Daniel Casimiro
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 19
-
-AC_DEFUN([AX_BOOST_SYSTEM],
-[
- AC_ARG_WITH([boost-system],
- AS_HELP_STRING([--with-boost-system@<:@=special-lib@:>@],
- [use the System library from boost - it is possible to specify a certain library for the linker
- e.g. --with-boost-system=boost_system-gcc-mt ]),
- [
- if test "$withval" = "no"; then
- want_boost="no"
- elif test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_system_lib=""
- else
- want_boost="yes"
- ax_boost_user_system_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([AC_CANONICAL_BUILD])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_CACHE_CHECK(whether the Boost::System library is available,
- ax_cv_boost_system,
- [AC_LANG_PUSH([C++])
- CXXFLAGS_SAVE=$CXXFLAGS
- CXXFLAGS=
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include ]],
- [[boost::system::error_category *a = 0;]])],
- ax_cv_boost_system=yes, ax_cv_boost_system=no)
- CXXFLAGS=$CXXFLAGS_SAVE
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_system" = "xyes"; then
- AC_SUBST(BOOST_CPPFLAGS)
-
- AC_DEFINE(HAVE_BOOST_SYSTEM,,[define if the Boost::System library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
-
- LDFLAGS_SAVE=$LDFLAGS
- if test "x$ax_boost_user_system_lib" = "x"; then
- for libextension in `ls -r $BOOSTLIBDIR/libboost_system* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break],
- [link_system="no"])
- done
- if test "x$link_system" != "xyes"; then
- for libextension in `ls -r $BOOSTLIBDIR/boost_system* 2>/dev/null | sed 's,.*/,,' | sed -e 's,\..*,,'` ; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break],
- [link_system="no"])
- done
- fi
-
- else
- for ax_lib in $ax_boost_user_system_lib boost_system-$ax_boost_user_system_lib; do
- AC_CHECK_LIB($ax_lib, exit,
- [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break],
- [link_system="no"])
- done
-
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the library!)
- fi
- if test "x$link_system" = "xno"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- fi
-])
diff --git a/m4macros/ax_boost_thread.m4 b/m4macros/ax_boost_thread.m4
deleted file mode 100644
index eee9ab61e..000000000
--- a/m4macros/ax_boost_thread.m4
+++ /dev/null
@@ -1,163 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_boost_thread.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_BOOST_THREAD
-#
-# DESCRIPTION
-#
-# Test for Thread library from the Boost C++ libraries. The macro requires
-# a preceding call to AX_BOOST_BASE. Further documentation is available at
-# .
-#
-# This macro calls:
-#
-# AC_SUBST(BOOST_THREAD_LIB)
-#
-# And sets:
-#
-# HAVE_BOOST_THREAD
-#
-# LICENSE
-#
-# Copyright (c) 2009 Thomas Porschberg
-# Copyright (c) 2009 Michael Tindal
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 31
-
-AC_DEFUN([AX_BOOST_THREAD],
-[
- AC_ARG_WITH([boost-thread],
- AS_HELP_STRING([--with-boost-thread@<:@=special-lib@:>@],
- [use the Thread library from boost -
- it is possible to specify a certain library for the linker
- e.g. --with-boost-thread=boost_thread-gcc-mt ]),
- [
- if test "$withval" = "yes"; then
- want_boost="yes"
- ax_boost_user_thread_lib=""
- else
- want_boost="yes"
- ax_boost_user_thread_lib="$withval"
- fi
- ],
- [want_boost="yes"]
- )
-
- if test "x$want_boost" = "xyes"; then
- AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([AC_CANONICAL_BUILD])
- CPPFLAGS_SAVED="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
- export CPPFLAGS
-
- LDFLAGS_SAVED="$LDFLAGS"
- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
- export LDFLAGS
-
- AC_CACHE_CHECK(whether the Boost::Thread library is available,
- ax_cv_boost_thread,
- [AC_LANG_PUSH([C++])
- CXXFLAGS_SAVE=$CXXFLAGS
-
- if test "x$host_os" = "xsolaris" ; then
- CXXFLAGS="-pthreads $CXXFLAGS"
- elif test "x$host_os" = "xmingw32" ; then
- CXXFLAGS="-mthreads $CXXFLAGS"
- else
- CXXFLAGS="-pthread $CXXFLAGS"
- fi
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM(
- [[@%:@include ]],
- [[boost::thread_group thrds;
- return 0;]])],
- ax_cv_boost_thread=yes, ax_cv_boost_thread=no)
- CXXFLAGS=$CXXFLAGS_SAVE
- AC_LANG_POP([C++])
- ])
- if test "x$ax_cv_boost_thread" = "xyes"; then
- if test "x$host_os" = "xsolaris" ; then
- BOOST_CPPFLAGS="-pthreads $BOOST_CPPFLAGS"
- elif test "x$host_os" = "xmingw32" ; then
- BOOST_CPPFLAGS="-mthreads $BOOST_CPPFLAGS"
- else
- BOOST_CPPFLAGS="-pthread $BOOST_CPPFLAGS"
- fi
-
- AC_SUBST(BOOST_CPPFLAGS)
-
- AC_DEFINE(HAVE_BOOST_THREAD,,
- [define if the Boost::Thread library is available])
- BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
-
- LDFLAGS_SAVE=$LDFLAGS
- case "x$host_os" in
- *bsd* )
- LDFLAGS="-pthread $LDFLAGS"
- break;
- ;;
- esac
- if test "x$ax_boost_user_thread_lib" = "x"; then
- for libextension in `ls -r $BOOSTLIBDIR/libboost_thread* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'`; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [link_thread="yes"; break],
- [link_thread="no"])
- done
- if test "x$link_thread" != "xyes"; then
- for libextension in `ls -r $BOOSTLIBDIR/boost_thread* 2>/dev/null | sed 's,.*/,,' | sed 's,\..*,,'`; do
- ax_lib=${libextension}
- AC_CHECK_LIB($ax_lib, exit,
- [link_thread="yes"; break],
- [link_thread="no"])
- done
- fi
-
- else
- for ax_lib in $ax_boost_user_thread_lib boost_thread-$ax_boost_user_thread_lib; do
- AC_CHECK_LIB($ax_lib, exit,
- [link_thread="yes"; break],
- [link_thread="no"])
- done
-
- fi
- if test "x$ax_lib" = "x"; then
- AC_MSG_ERROR(Could not find a version of the library!)
- fi
- if test "x$link_thread" = "xno"; then
- AC_MSG_ERROR(Could not link against $ax_lib !)
- else
- BOOST_THREAD_LIB="-l$ax_lib"
- case "x$host_os" in
- *bsd* )
- BOOST_LDFLAGS="-pthread $BOOST_LDFLAGS"
- break;
- ;;
- xsolaris )
- BOOST_THREAD_LIB="$BOOST_THREAD_LIB -lpthread"
- break;
- ;;
- xmingw32 )
- break;
- ;;
- * )
- BOOST_THREAD_LIB="$BOOST_THREAD_LIB -lpthread"
- break;
- ;;
- esac
- AC_SUBST(BOOST_THREAD_LIB)
- fi
- fi
-
- CPPFLAGS="$CPPFLAGS_SAVED"
- LDFLAGS="$LDFLAGS_SAVED"
- fi
-])
diff --git a/m4macros/ax_check_gl.m4 b/m4macros/ax_check_gl.m4
deleted file mode 100644
index 39423bf7f..000000000
--- a/m4macros/ax_check_gl.m4
+++ /dev/null
@@ -1,559 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_gl.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_GL
-#
-# DESCRIPTION
-#
-# Check for an OpenGL implementation. If GL is found, the required
-# compiler and linker flags are included in the output variables
-# "GL_CFLAGS", "GL_LIBS", "GL_LDFLAGS", respectively. If no usable GL
-# implementation is found, "no_gl" is set to "yes".
-#
-# You could disable OpenGL using --with-gl=no
-#
-# You could choose a specific OpenGL libs using --with-gl=lib_name
-#
-# Under darwin, cygwin and mingw target you could prefer the OpenGL
-# implementation that link with X setting --with-gl=x or without X support
-# with --with-gl=nox. Notes that this script try to guess the right
-# implementation.
-#
-# If the header "GL/gl.h" is found, "HAVE_GL_GL_H" is defined. If the
-# header "OpenGL/gl.h" is found, HAVE_OPENGL_GL_H is defined. These
-# preprocessor definitions may not be mutually exclusive.
-#
-# You should use something like this in your headers:
-#
-# #if defined(HAVE_WINDOWS_H) && defined(_WIN32)
-# # include
-# #endif
-# #ifdef HAVE_GL_GL_H
-# # include
-# #elif defined(HAVE_OPENGL_GL_H)
-# # include
-# #else
-# # error no gl.h
-# #endif
-#
-# LICENSE
-#
-# Copyright (c) 2009 Braden McDaniel
-# Copyright (c) 2012 Bastien Roucaries
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 2 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see .
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 17
-
-m4_define([_AX_CHECK_GL_PROGRAM],
- [AC_LANG_PROGRAM([[
-# if defined(HAVE_WINDOWS_H) && defined(_WIN32)
-# include
-# endif
-# ifdef HAVE_GL_GL_H
-# include
-# elif defined(HAVE_OPENGL_GL_H)
-# include
-# else
-# error no gl.h
-# endif
-]],[[glBegin(0)]])])
-
-dnl Default include : add windows.h
-dnl see http://www.opengl.org/wiki/Platform_specifics:_Windows
-dnl (acceded 20120801)
-AC_DEFUN([_AX_CHECK_GL_INCLUDES_DEFAULT],dnl
-[
- AC_INCLUDES_DEFAULT
- [
- # if defined(HAVE_WINDOWS_H) && defined(_WIN32)
- # include
- # endif
- ]
-])
-
-dnl local save flags
-AC_DEFUN([_AX_CHECK_GL_SAVE_FLAGS],
-[dnl
-ax_check_gl_saved_libs="${LIBS}"
-ax_check_gl_saved_cflags="${CFLAGS}"
-ax_check_gl_saved_cppflags="${CPPFLAGS}"
-ax_check_gl_saved_ldflags="${LDFLAGS}"
-])
-
-dnl local restore flags
-AC_DEFUN([_AX_CHECK_GL_RESTORE_FLAGS],
-[dnl
-LIBS="${ax_check_gl_saved_libs}"
-CFLAGS="${ax_check_gl_saved_cflags}"
-CPPFLAGS="${ax_check_gl_saved_cppflags}"
-LDFLAGS="${ax_check_gl_saved_ldflags}"
-])
-
-dnl default switch case failure
-AC_DEFUN([_AX_CHECK_MSG_FAILURE_ORDER],
-[dnl
- AC_MSG_FAILURE([Order logic in ax_check_gl is buggy])
-])
-
-# set the varible ax_check_gl_need_x
-# this variable determine if we need opengl that link with X
-# value are default aka try the first library wether if it link or not with x
-# yes that means we need a opengl with x
-# no that means we do not need an opengl with x
-AC_DEFUN([_AX_CHECK_GL_NEED_X],
-[dnl
- # do not check if empty : allow a subroutine to modify the choice
- AS_IF([test "X$ax_check_gl_need_x" = "X"],
- [ax_check_gl_need_x="default"
- AS_IF([test "X$no_x" = "Xyes"],[ax_check_gl_need_x="no"])
- AS_IF([test "X$ax_check_gl_want_gl" = "Xnox"],[ax_check_gl_need_x="no"])
- AS_IF([test "X$ax_check_gl_want_gl" = "Xx"],[ax_check_gl_need_x="yes"])])
-])
-
-# compile the example program
-AC_DEFUN([_AX_CHECK_GL_COMPILE],
-[dnl
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- AC_COMPILE_IFELSE([_AX_CHECK_GL_PROGRAM],
- [ax_check_gl_compile_opengl="yes"],
- [ax_check_gl_compile_opengl="no"])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
-])
-
-# compile the example program (cache)
-AC_DEFUN([_AX_CHECK_GL_COMPILE_CV],
-[dnl
- AC_CACHE_CHECK([for compiling a minimal OpenGL program],[ax_cv_check_gl_compile_opengl],
- [_AX_CHECK_GL_COMPILE()
- ax_cv_check_gl_compile_opengl="${ax_check_gl_compile_opengl}"])
- ax_check_gl_compile_opengl="${ax_cv_check_gl_compile_opengl}"
-])
-
-# link the example program
-AC_DEFUN([_AX_CHECK_GL_LINK],
-[dnl
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- LIBS="${GL_LIBS} ${LIBS}"
- LDFLAGS="${GL_LDFLAGS} ${LDFLAGS}"
- AC_LINK_IFELSE([_AX_CHECK_GL_PROGRAM],
- [ax_check_gl_link_opengl="yes"],
- [ax_check_gl_link_opengl="no"])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
-])
-
-# link the example program (cache)
-AC_DEFUN([_AX_CHECK_GL_LINK_CV],
-[dnl
- AC_CACHE_CHECK([for linking a minimal OpenGL program],[ax_cv_check_gl_link_opengl],
- [_AX_CHECK_GL_LINK()
- ax_cv_check_gl_link_opengl="${ax_check_gl_link_opengl}"])
- ax_check_gl_link_opengl="${ax_cv_check_gl_link_opengl}"
-])
-
-dnl Check headers manually (default case)
-AC_DEFUN([_AX_CHECK_GL_MANUAL_HEADERS_DEFAULT],
-[AC_REQUIRE([AC_PATH_XTRA])
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- # see comment in _AX_CHECK_GL_INCLUDES_DEFAULT
- AC_CHECK_HEADERS([windows.h],[],[],[AC_INCLUDES_DEFAULT])
- # FIXME: use extra cflags
- AC_CHECK_HEADERS([GL/gl.h],[ax_check_gl_have_headers="yes"],
- [ax_check_gl_have_headers_headers="no"],
- [_AX_CHECK_GL_INCLUDES_DEFAULT()])
- # do not try darwin specific OpenGl/gl.h
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
-])
-
-# darwin headers without X
-AC_DEFUN([_AX_CHECK_GL_MANUAL_HEADERS_DARWIN_NOX],[
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- # FIXME: use -framework opengl as an extra cflags
- CFLAGS="-framework opengl ${GL_CFLAGS} ${CFLAGS}"
- AC_CHECK_HEADERS([OpenGL/gl.h],[ax_check_gl_have_headers="yes"],
- [ax_check_gl_have_headers_headers="no"],
- [_AX_CHECK_GL_INCLUDES_DEFAULT()])
- AS_IF([test "X$ax_check_gl_have_headers" = "yes"],
- [GL_CFLAGS="-framework opengl ${GL_CFLAGS}"])
- _AX_CHECK_GL_SAVE_FLAGS()
- AC_LANG_POP([C])
-])
-
-# check header for darwin
-AC_DEFUN([_AX_CHECK_GL_MANUAL_HEADERS_DARWIN],
-[AC_REQUIRE([_AX_CHECK_GL_NEED_X])dnl
- AS_CASE(["$ax_check_gl_order"],
- # try to use framework
- ["gl"],[_AX_CHECK_GL_MANUAL_HEADERS_DARWIN_NOX()],
- # try to use framework then mesa (X)
- ["gl mesagl"],[
- _AX_CHECK_GL_MANUAL_HEADERS_DARWIN_NOX()
- AS_IF([test "X$ax_check_gl_have_headers" = "yes"],
- [ax_check_gl_order="gl"
- ax_check_gl_need_x="yes"],
- [ax_check_gl_order="mesagl gl"
- ax_check_gl_need_x="no"]
- # retry with general test
- _AX_CHECK_GL_MANUAL_HEADERS_DEFAULT()])],
- ["mesagl gl"],[
- _AX_CHECK_GL_MANUAL_HEADERS_DEFAULT()
- AS_IF([test "X$ax_check_gl_have_headers" = "yes"],
- [ax_check_gl_order="mesagl gl"
- ax_check_gl_need_x="no"],
- [ax_check_gl_order="gl"
- ax_check_gl_need_x="yes"
- # retry with framework
- _AX_CHECK_GL_MANUAL_HEADERS_DARWIN_NOX()])],
- [_AX_CHECK_MSG_FAILURE_ORDER()])
-])
-
-dnl Check headers manually: subroutine must set ax_check_gl_have_headers={yes,no}
-AC_DEFUN([_AX_CHECK_GL_MANUAL_HEADERS],
-[AC_REQUIRE([AC_CANONICAL_HOST])
- AS_CASE([${host}],
- [*-darwin*],[_AX_CHECK_GL_MANUAL_HEADERS_DARWIN],
- [_AX_CHECK_GL_MANUAL_HEADERS_DEFAULT()])
- AC_CACHE_CHECK([for OpenGL headers],[ax_cv_check_gl_have_headers],
- [ax_cv_check_gl_have_headers="${ax_check_gl_have_headers}"])
-])
-
-# dnl try to found library (generic case)
-# dnl $1 is set to the library to found
-AC_DEFUN([_AX_CHECK_GL_MANUAL_LIBS_GENERIC],
-[dnl
- ax_check_gl_manual_libs_generic_extra_libs="$1"
- AS_IF([test "X$ax_check_gl_manual_libs_generic_extra_libs" = "X"],
- [AC_MSG_ERROR([AX_CHECK_GL_MANUAL_LIBS_GENERIC argument must no be empty])])
-
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- LIBS="${GL_LIBS} ${LIBS}"
- AC_SEARCH_LIBS([glBegin],[$ax_check_gl_manual_libs_generic_extra_libs],
- [ax_check_gl_lib_opengl="yes"],
- [ax_check_gl_lib_opengl="no"])
- AS_CASE([$ac_cv_search_glBegin],
- ["none required"],[],
- [no],[],
- [GL_LIBS="${ac_cv_search_glBegin} ${GL_LIBS}"])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_PUSH([C])
-])
-
-# dnl try to found lib under darwin
-# darwin opengl hack
-# see http://web.archive.org/web/20090410052741/http://developer.apple.com/qa/qa2007/qa1567.html
-# and http://web.eecs.umich.edu/~sugih/courses/eecs487/glut-howto/
-AC_DEFUN([_AX_CHECK_GL_MANUAL_LIBS_DARWIN],
-[# ldhack list
- ldhack1 = "-Wl,-framework,OpenGL"
- ldhack2 = "-Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib"
- ldhack3 = "$ldhack1,$ldhack2"
-
- # select hack
- AS_IF([test "X$ax_check_gl_need_x" = "Xyes"],
- [# libs already set by -framework cflag
- darwinlibs=""
- ldhacks="$ldhack1 $ldhack2 $ldhack3"],
- [# do not use framework ldflags in case of x version
- darwinlibs="GL gl MesaGL"
- ldhack="$ldhack2"])
-
- ax_check_gl_link_opengl="no"
- for extralibs in " " $darwinlibs; do
- for extraldflags in " " ldhacks; do
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- LIBS="$extralibs ${GL_LIBS} ${LIBS}"
- LDFLAGS="$extraldflags ${GL_LDFLAGS} ${LDFLAGS}"
- AC_LINK_IFELSE([_AX_CHECK_GL_PROGRAM],
- [ax_check_gl_link_opengl="yes"],
- [ax_check_gl_link_opengl="no"])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
- AS_IF([test "X$ax_check_gl_link_opengl" = "Xyes"],[break])
- done;
- AS_IF([test "X$ax_check_gl_link_opengl" = "Xyes"],[break])
- done;
- GL_LIBS="$extralibs ${GL_LIBS}"
- GL_LDFLAGS="$extraldflags ${GL_LDFLAGS}"
-])
-
-dnl Check library manually: subroutine must set
-dnl $ax_check_gl_lib_opengl={yes,no}
-AC_DEFUN([_AX_CHECK_GL_MANUAL_LIBS],
-[AC_REQUIRE([AC_CANONICAL_HOST])
- AS_CASE([${host}],
- [*-darwin*],[_AX_CHECK_GL_MANUAL_LIBS_DARWIN()],
- # try first cygwin version
- [*-cygwin*|*-mingw*],[
- AS_CASE(["$ax_check_gl_order"],
- ["gl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([opengl32])],
- ["gl mesagl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([opengl32 GL gl MesaGL])],
- ["mesagl gl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([GL gl MesaGL opengl32])],
- [_AX_CHECK_MSG_FAILURE_ORDER()])],
- [AS_CASE(["$ax_check_gl_order"],
- ["gl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([GL gl])],
- ["gl mesagl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([GL gl MesaGL])],
- ["mesagl gl"],[_AX_CHECK_GL_MANUAL_LIBS_GENERIC([MesaGL GL gl])],
- [_AX_CHECK_MSG_FAILURE_ORDER()])]
- )
-
- AC_CACHE_CHECK([for OpenGL libraries],[ax_cv_check_gl_lib_opengl],
- [ax_cv_check_gl_lib_opengl="${ax_check_gl_lib_opengl}"])
- ax_check_gl_lib_opengl="${ax_cv_check_gl_lib_opengl}"
-])
-
-# manually check aka old way
-AC_DEFUN([_AX_CHECK_GL_MANUAL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
- AC_REQUIRE([AC_PATH_XTRA])dnl
-
- no_gl="yes"
-
- _AX_CHECK_GL_MANUAL_HEADERS()
- AS_IF([test "X$ax_check_gl_have_headers" = "Xyes"],
- [_AX_CHECK_GL_COMPILE_CV()],
- [ax_check_gl_compile_opengl=no])
-
- AS_IF([test "X$ax_check_gl_compile_opengl" = "Xyes"],
- [_AX_CHECK_GL_MANUAL_LIBS],
- [ax_check_gl_lib_opengl=no])
-
- AS_IF([test "X$ax_check_gl_lib_opengl" = "Xyes"],
- [_AX_CHECK_GL_LINK_CV()],
- [ax_check_gl_link_opengl=no])
-
- AS_IF([test "X$ax_check_gl_link_opengl" = "Xyes"],
- [no_gl="no"],
- [no_gl="yes"])
-])dnl
-
-
-# try to test using pkgconfig: set ax_check_gl_pkg_config=no if not found
-AC_DEFUN([_AX_CHECK_GL_PKG_CONFIG],dnl
-[dnl
- AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-
- dnl First try mesagl
- AS_CASE(["$ax_check_gl_order"],
- ["gl"],[PKG_CHECK_MODULES([GL],[mesagl],
- [ax_check_gl_pkg_config=yes],
- [ax_check_gl_pkg_config=no])],
- ["gl mesagl"],[PKG_CHECK_MODULES([GL],[gl],
- [ax_check_gl_pkg_config=yes],
- [PKG_CHECK_MODULES([GL],[mesagl],
- [ax_check_gl_pkg_config=yes],
- [ax_check_gl_pkg_config=no])])],
- ["mesagl gl"],[PKG_CHECK_MODULES([GL],[mesagl],
- [ax_check_gl_pkg_config=yes],
- [PKG_CHECK_MODULES([GL],[gl],
- [ax_check_gl_pkg_config=yes],
- [ax_check_gl_pkg_config=no])])],
- [_AX_CHECK_MSG_FAILURE_ORDER])
-
- AS_IF([test "X$ax_check_gl_pkg_config" = "Xyes"],[
- # check headers
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- AC_CHECK_HEADERS([windows.h],[],[],[AC_INCLUDES_DEFAULT])
- AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h],
- [ax_check_gl_have_headers="yes";break],
- [ax_check_gl_have_headers_headers="no"],
- [_AX_CHECK_GL_INCLUDES_DEFAULT()])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
- AC_CACHE_CHECK([for OpenGL headers],[ax_cv_check_gl_have_headers],
- [ax_cv_check_gl_have_headers="${ax_check_gl_have_headers}"])
-
- # pkgconfig library are suposed to work ...
- AS_IF([test "X$ax_cv_check_gl_have_headers" = "Xno"],
- [AC_MSG_ERROR("Pkgconfig detected OpenGL library has no headers!")])
-
- _AX_CHECK_GL_COMPILE_CV()
- AS_IF([test "X$ax_cv_check_gl_compile_opengl" = "Xno"],
- [AC_MSG_ERROR("Pkgconfig detected opengl library could not be used for compiling minimal program!")])
-
- _AX_CHECK_GL_LINK_CV()
- AS_IF([test "X$ax_cv_check_gl_link_opengl" = "Xno"],
- [AC_MSG_ERROR("Pkgconfig detected opengl library could not be used for linking minimal program!")])
- ],[ax_check_gl_pkg_config=no])
-])
-
-# test if gl link with X
-AC_DEFUN([_AX_CHECK_GL_WITH_X],
-[
- # try if opengl need X
- AC_LANG_PUSH([C])
- _AX_CHECK_GL_SAVE_FLAGS()
- CFLAGS="${GL_CFLAGS} ${CFLAGS}"
- LIBS="${GL_LIBS} ${LIBS}"
- LDFLAGS="${GL_LDFLAGS} ${LDFLAGS}"
- AC_LINK_IFELSE([AC_LANG_CALL([], [glXQueryVersion])],
- [ax_check_gl_link_implicitly_with_x="yes"],
- [ax_check_gl_link_implicitly_with_x="no"])
- _AX_CHECK_GL_RESTORE_FLAGS()
- AC_LANG_POP([C])
-])
-
-# internal routine: entry point if gl not disable
-AC_DEFUN([_AX_CHECK_GL],[dnl
- AC_REQUIRE([PKG_PROG_PKG_CONFIG])
- AC_REQUIRE([AC_PATH_X])dnl
-
- # does we need X or not
- _AX_CHECK_GL_NEED_X()
-
- # try first pkgconfig
- AC_MSG_CHECKING([for a working OpenGL implementation by pkg-config])
- AS_IF([test "X${PKG_CONFIG}" = "X"],
- [ AC_MSG_RESULT([no])
- ax_check_gl_pkg_config=no],
- [ AC_MSG_RESULT([yes])
- _AX_CHECK_GL_PKG_CONFIG()])
-
- # if no pkgconfig or pkgconfig fail try manual way
- AS_IF([test "X$ax_check_gl_pkg_config" = "Xno"],
- [_AX_CHECK_GL_MANUAL()],
- [no_gl=no])
-
- # test if need to test X compatibility
- AS_IF([test $no_gl = no],
- [# test X compatibility
- AS_IF([test X$ax_check_gl_need_x != "Xdefault"],
- [AC_CACHE_CHECK([wether OpenGL link implictly with X],[ax_cv_check_gl_link_with_x],
- [_AX_CHECK_GL_WITH_X()
- ax_cv_check_gl_link_with_x="${ax_check_gl_link_implicitly_with_x}"])
- AS_IF([test "X${ax_cv_check_gl_link_with_x}" = "X${ax_check_gl_need_x}"],
- [no_gl="no"],
- [no_gl=yes])])
- ])
-])
-
-# ax_check_gl entry point
-AC_DEFUN([AX_CHECK_GL],
-[AC_REQUIRE([AC_PATH_X])dnl
- AC_REQUIRE([AC_CANONICAL_HOST])
-
- AC_ARG_WITH([gl],
- [AS_HELP_STRING([--with-gl@<:@=ARG@:>@],
- [use opengl (ARG=yes),
- using the specific lib (ARG=),
- using the OpenGL lib that link with X (ARG=x),
- using the OpenGL lib that link without X (ARG=nox),
- or disable it (ARG=no)
- @<:@ARG=yes@:>@ ])],
- [
- AS_CASE(["$withval"],
- ["no"|"NO"],[ax_check_gl_want_gl="no"],
- ["yes"|"YES"],[ax_check_gl_want_gl="yes"],
- [ax_check_gl_want_gl="$withval"])
- ],
- [ax_check_gl_want_gl="yes"])
-
- dnl compatibility with AX_HAVE_OPENGL
- AC_ARG_WITH([Mesa],
- [AS_HELP_STRING([--with-Mesa@<:@=ARG@:>@],
- [Prefer the Mesa library over a vendors native OpenGL (ARG=yes except on mingw ARG=no),
- @<:@ARG=yes@:>@ ])],
- [
- AS_CASE(["$withval"],
- ["no"|"NO"],[ax_check_gl_want_mesa="no"],
- ["yes"|"YES"],[ax_check_gl_want_mesa="yes"],
- [AC_MSG_ERROR([--with-mesa flag is only yes no])])
- ],
- [ax_check_gl_want_mesa="default"])
-
- # check consistency of parameters
- AS_IF([test "X$have_x" = "Xdisabled"],
- [AS_IF([test X$ax_check_gl_want_gl = "Xx"],
- [AC_MSG_ERROR([You prefer OpenGL with X and asked for no X support])])])
-
- AS_IF([test "X$have_x" = "Xdisabled"],
- [AS_IF([test X$x_check_gl_want_mesa = "Xyes"],
- [AC_MSG_WARN([You prefer mesa but you disable X. Disable mesa because mesa need X])
- ax_check_gl_want_mesa="no"])])
-
- # mesa default means yes except on mingw
- AC_MSG_CHECKING([wether we should prefer mesa for opengl implementation])
- AS_IF([test X$ax_check_gl_want_mesa = "Xdefault"],
- [AS_CASE([${host}],
- [*-mingw*],[ax_check_gl_want_mesa=no],
- [ax_check_gl_want_mesa=yes])])
- AC_MSG_RESULT($ax_check_gl_want_mesa)
-
- # set default guess order
- AC_MSG_CHECKING([for a working OpenGL order detection])
- AS_IF([test "X$no_x" = "Xyes"],
- [ax_check_gl_order="gl"],
- [AS_IF([test X$ax_check_gl_want_mesa = "Xyes"],
- [ax_check_gl_order="mesagl gl"],
- [ax_check_gl_order="gl mesagl"])])
- AC_MSG_RESULT($ax_check_gl_order)
-
- # set flags
- no_gl="yes"
- have_GL="no"
-
- # now do the real testing
- AS_IF([test X$ax_check_gl_want_gl != "Xno"],
- [_AX_CHECK_GL()])
-
- AC_MSG_CHECKING([for a working OpenGL implementation])
- AS_IF([test "X$no_gl" = "Xno"],
- [have_GL="yes"
- AC_MSG_RESULT([yes])
- AC_MSG_CHECKING([for CFLAGS needed for OpenGL])
- AC_MSG_RESULT(["${GL_CFLAGS}"])
- AC_MSG_CHECKING([for LIBS needed for OpenGL])
- AC_MSG_RESULT(["${GL_LIBS}"])
- AC_MSG_CHECKING([for LDFLAGS needed for OpenGL])
- AC_MSG_RESULT(["${GL_LDFLAGS}"])],
- [AC_MSG_RESULT([no])
- GL_CFLAGS=""
- GL_LIBS=""
- GL_LDFLAGS=""])
-
- AC_SUBST([GL_CFLAGS])
- AC_SUBST([GL_LIBS])
- AC_SUBST([GL_LDFLAGS])
-])
diff --git a/m4macros/ax_lang_compiler_ms.m4 b/m4macros/ax_lang_compiler_ms.m4
deleted file mode 100644
index 71b3d20ec..000000000
--- a/m4macros/ax_lang_compiler_ms.m4
+++ /dev/null
@@ -1,36 +0,0 @@
-##### http://autoconf-archive.cryp.to/ax_lang_compiler_ms.html
-#
-# SYNOPSIS
-#
-# AX_LANG_COMPILER_MS
-#
-# DESCRIPTION
-#
-# Check whether the compiler for the current language is Microsoft.
-#
-# This macro is modeled after _AC_LANG_COMPILER_GNU in the GNU
-# Autoconf implementation.
-#
-# LAST MODIFICATION
-#
-# 2004-11-15
-#
-# COPYLEFT
-#
-# Copyright (c) 2004 Braden McDaniel
-#
-# Copying and distribution of this file, with or without
-# modification, are permitted in any medium without royalty provided
-# the copyright notice and this notice are preserved.
-
-AC_DEFUN([AX_LANG_COMPILER_MS],
-[AC_CACHE_CHECK([whether we are using the Microsoft _AC_LANG compiler],
- [ax_cv_[]_AC_LANG_ABBREV[]_compiler_ms],
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[#ifndef _MSC_VER
- choke me
-#endif
-]])],
- [ax_compiler_ms=yes],
- [ax_compiler_ms=no])
-ax_cv_[]_AC_LANG_ABBREV[]_compiler_ms=$ax_compiler_ms
-])])
diff --git a/m4macros/ax_pthread.m4 b/m4macros/ax_pthread.m4
deleted file mode 100644
index d383ad5c6..000000000
--- a/m4macros/ax_pthread.m4
+++ /dev/null
@@ -1,332 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_pthread.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
-#
-# DESCRIPTION
-#
-# This macro figures out how to build C programs using POSIX threads. It
-# sets the PTHREAD_LIBS output variable to the threads library and linker
-# flags, and the PTHREAD_CFLAGS output variable to any special C compiler
-# flags that are needed. (The user can also force certain compiler
-# flags/libs to be tested by setting these environment variables.)
-#
-# Also sets PTHREAD_CC to any special C compiler that is needed for
-# multi-threaded programs (defaults to the value of CC otherwise). (This
-# is necessary on AIX to use the special cc_r compiler alias.)
-#
-# NOTE: You are assumed to not only compile your program with these flags,
-# but also link it with them as well. e.g. you should link with
-# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS
-#
-# If you are only building threads programs, you may wish to use these
-# variables in your default LIBS, CFLAGS, and CC:
-#
-# LIBS="$PTHREAD_LIBS $LIBS"
-# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
-# CC="$PTHREAD_CC"
-#
-# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant
-# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name
-# (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
-#
-# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the
-# PTHREAD_PRIO_INHERIT symbol is defined when compiling with
-# PTHREAD_CFLAGS.
-#
-# ACTION-IF-FOUND is a list of shell commands to run if a threads library
-# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it
-# is not found. If ACTION-IF-FOUND is not specified, the default action
-# will define HAVE_PTHREAD.
-#
-# Please let the authors know if this macro fails on any platform, or if
-# you have any other suggestions or comments. This macro was based on work
-# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help
-# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by
-# Alejandro Forero Cuervo to the autoconf macro repository. We are also
-# grateful for the helpful feedback of numerous users.
-#
-# Updated for Autoconf 2.68 by Daniel Richard G.
-#
-# LICENSE
-#
-# Copyright (c) 2008 Steven G. Johnson
-# Copyright (c) 2011 Daniel Richard G.
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation, either version 3 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see .
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 21
-
-AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
-AC_DEFUN([AX_PTHREAD], [
-AC_REQUIRE([AC_CANONICAL_HOST])
-AC_LANG_PUSH([C])
-ax_pthread_ok=no
-
-# We used to check for pthread.h first, but this fails if pthread.h
-# requires special compiler flags (e.g. on True64 or Sequent).
-# It gets checked for in the link test anyway.
-
-# First of all, check if the user has set any of the PTHREAD_LIBS,
-# etcetera environment variables, and if threads linking works using
-# them:
-if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
- save_LIBS="$LIBS"
- LIBS="$PTHREAD_LIBS $LIBS"
- AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
- AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
- AC_MSG_RESULT([$ax_pthread_ok])
- if test x"$ax_pthread_ok" = xno; then
- PTHREAD_LIBS=""
- PTHREAD_CFLAGS=""
- fi
- LIBS="$save_LIBS"
- CFLAGS="$save_CFLAGS"
-fi
-
-# We must check for the threads library under a number of different
-# names; the ordering is very important because some systems
-# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
-# libraries is broken (non-POSIX).
-
-# Create a list of thread flags to try. Items starting with a "-" are
-# C compiler flags, and other items are library names, except for "none"
-# which indicates that we try without any flags at all, and "pthread-config"
-# which is a program returning the flags for the Pth emulation library.
-
-ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
-
-# The ordering *is* (sometimes) important. Some notes on the
-# individual items follow:
-
-# pthreads: AIX (must check this before -lpthread)
-# none: in case threads are in libc; should be tried before -Kthread and
-# other compiler flags to prevent continual compiler warnings
-# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
-# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
-# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
-# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
-# -pthreads: Solaris/gcc
-# -mthreads: Mingw32/gcc, Lynx/gcc
-# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
-# doesn't hurt to check since this sometimes defines pthreads too;
-# also defines -D_REENTRANT)
-# ... -mt is also the pthreads flag for HP/aCC
-# pthread: Linux, etcetera
-# --thread-safe: KAI C++
-# pthread-config: use pthread-config program (for GNU Pth library)
-
-case ${host_os} in
- solaris*)
-
- # On Solaris (at least, for some versions), libc contains stubbed
- # (non-functional) versions of the pthreads routines, so link-based
- # tests will erroneously succeed. (We need to link with -pthreads/-mt/
- # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
- # a function called by this macro, so we could check for that, but
- # who knows whether they'll stub that too in a future libc.) So,
- # we'll just look for -pthreads and -lpthread first:
-
- ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags"
- ;;
-
- darwin*)
- ax_pthread_flags="-pthread $ax_pthread_flags"
- ;;
-esac
-
-# Clang doesn't consider unrecognized options an error unless we specify
-# -Werror. We throw in some extra Clang-specific options to ensure that
-# this doesn't happen for GCC, which also accepts -Werror.
-
-AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
-save_CFLAGS="$CFLAGS"
-ax_pthread_extra_flags="-Werror"
-CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
- [AC_MSG_RESULT([yes])],
- [ax_pthread_extra_flags=
- AC_MSG_RESULT([no])])
-CFLAGS="$save_CFLAGS"
-
-if test x"$ax_pthread_ok" = xno; then
-for flag in $ax_pthread_flags; do
-
- case $flag in
- none)
- AC_MSG_CHECKING([whether pthreads work without any flags])
- ;;
-
- -*)
- AC_MSG_CHECKING([whether pthreads work with $flag])
- PTHREAD_CFLAGS="$flag"
- ;;
-
- pthread-config)
- AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
- if test x"$ax_pthread_config" = xno; then continue; fi
- PTHREAD_CFLAGS="`pthread-config --cflags`"
- PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
- ;;
-
- *)
- AC_MSG_CHECKING([for the pthreads library -l$flag])
- PTHREAD_LIBS="-l$flag"
- ;;
- esac
-
- save_LIBS="$LIBS"
- save_CFLAGS="$CFLAGS"
- LIBS="$PTHREAD_LIBS $LIBS"
- CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
-
- # Check for various functions. We must include pthread.h,
- # since some functions may be macros. (On the Sequent, we
- # need a special flag -Kthread to make this header compile.)
- # We check for pthread_join because it is in -lpthread on IRIX
- # while pthread_create is in libc. We check for pthread_attr_init
- # due to DEC craziness with -lpthreads. We check for
- # pthread_cleanup_push because it is one of the few pthread
- # functions on Solaris that doesn't have a non-functional libc stub.
- # We try pthread_create on general principles.
- AC_LINK_IFELSE([AC_LANG_PROGRAM([#include
- static void routine(void *a) { a = 0; }
- static void *start_routine(void *a) { return a; }],
- [pthread_t th; pthread_attr_t attr;
- pthread_create(&th, 0, start_routine, 0);
- pthread_join(th, 0);
- pthread_attr_init(&attr);
- pthread_cleanup_push(routine, 0);
- pthread_cleanup_pop(0) /* ; */])],
- [ax_pthread_ok=yes],
- [])
-
- LIBS="$save_LIBS"
- CFLAGS="$save_CFLAGS"
-
- AC_MSG_RESULT([$ax_pthread_ok])
- if test "x$ax_pthread_ok" = xyes; then
- break;
- fi
-
- PTHREAD_LIBS=""
- PTHREAD_CFLAGS=""
-done
-fi
-
-# Various other checks:
-if test "x$ax_pthread_ok" = xyes; then
- save_LIBS="$LIBS"
- LIBS="$PTHREAD_LIBS $LIBS"
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
-
- # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
- AC_MSG_CHECKING([for joinable pthread attribute])
- attr_name=unknown
- for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
- AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],
- [int attr = $attr; return attr /* ; */])],
- [attr_name=$attr; break],
- [])
- done
- AC_MSG_RESULT([$attr_name])
- if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
- AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
- [Define to necessary symbol if this constant
- uses a non-standard name on your system.])
- fi
-
- AC_MSG_CHECKING([if more special flags are required for pthreads])
- flag=no
- case ${host_os} in
- aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";;
- osf* | hpux*) flag="-D_REENTRANT";;
- solaris*)
- if test "$GCC" = "yes"; then
- flag="-D_REENTRANT"
- else
- # TODO: What about Clang on Solaris?
- flag="-mt -D_REENTRANT"
- fi
- ;;
- esac
- AC_MSG_RESULT([$flag])
- if test "x$flag" != xno; then
- PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
- fi
-
- AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
- [ax_cv_PTHREAD_PRIO_INHERIT], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]],
- [[int i = PTHREAD_PRIO_INHERIT;]])],
- [ax_cv_PTHREAD_PRIO_INHERIT=yes],
- [ax_cv_PTHREAD_PRIO_INHERIT=no])
- ])
- AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
- [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
-
- LIBS="$save_LIBS"
- CFLAGS="$save_CFLAGS"
-
- # More AIX lossage: compile with *_r variant
- if test "x$GCC" != xyes; then
- case $host_os in
- aix*)
- AS_CASE(["x/$CC"],
- [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
- [#handle absolute path differently from PATH based program lookup
- AS_CASE(["x$CC"],
- [x/*],
- [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
- [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
- ;;
- esac
- fi
-fi
-
-test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
-
-AC_SUBST([PTHREAD_LIBS])
-AC_SUBST([PTHREAD_CFLAGS])
-AC_SUBST([PTHREAD_CC])
-
-# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
-if test x"$ax_pthread_ok" = xyes; then
- ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
- :
-else
- ax_pthread_ok=no
- $2
-fi
-AC_LANG_POP
-])dnl AX_PTHREAD
diff --git a/m4macros/check_gnu_make.m4 b/m4macros/check_gnu_make.m4
deleted file mode 100644
index 44e1d9aa2..000000000
--- a/m4macros/check_gnu_make.m4
+++ /dev/null
@@ -1,78 +0,0 @@
-##### http://autoconf-archive.cryp.to/check_gnu_make.html
-#
-# SYNOPSIS
-#
-# CHECK_GNU_MAKE()
-#
-# DESCRIPTION
-#
-# This macro searches for a GNU version of make. If a match is found,
-# the makefile variable `ifGNUmake' is set to the empty string,
-# otherwise it is set to "#". This is useful for including a special
-# features in a Makefile, which cannot be handled by other versions
-# of make. The variable _cv_gnu_make_command is set to the command to
-# invoke GNU make if it exists, the empty string otherwise.
-#
-# Here is an example of its use:
-#
-# Makefile.in might contain:
-#
-# # A failsafe way of putting a dependency rule into a makefile
-# $(DEPEND):
-# $(CC) -MM $(srcdir)/*.c > $(DEPEND)
-#
-# @ifGNUmake@ ifeq ($(DEPEND),$(wildcard $(DEPEND)))
-# @ifGNUmake@ include $(DEPEND)
-# @ifGNUmake@ endif
-#
-# Then configure.in would normally contain:
-#
-# CHECK_GNU_MAKE()
-# AC_OUTPUT(Makefile)
-#
-# Then perhaps to cause gnu make to override any other make, we could
-# do something like this (note that GNU make always looks for
-# GNUmakefile first):
-#
-# if ! test x$_cv_gnu_make_command = x ; then
-# mv Makefile GNUmakefile
-# echo .DEFAULT: > Makefile ;
-# echo \ $_cv_gnu_make_command \$@ >> Makefile;
-# fi
-#
-# Then, if any (well almost any) other make is called, and GNU make
-# also exists, then the other make wraps the GNU make.
-#
-# LAST MODIFICATION
-#
-# 2002-01-04
-#
-# COPYLEFT
-#
-# Copyright (c) 2002 John Darrington
-#
-# Copying and distribution of this file, with or without
-# modification, are permitted in any medium without royalty provided
-# the copyright notice and this notice are preserved.
-
-AC_DEFUN(
- [CHECK_GNU_MAKE], [ AC_CACHE_CHECK( for GNU make,_cv_gnu_make_command,
- _cv_gnu_make_command='' ;
-dnl Search all the common names for GNU make
- for a in "$MAKE" make gmake gnumake ; do
- if test -z "$a" ; then continue ; fi ;
- if ( sh -c "$a --version" 2> /dev/null | grep GNU 2>&1 > /dev/null ) ; then
- _cv_gnu_make_command=$a ;
- break;
- fi
- done ;
- ) ;
-dnl If there was a GNU version, then set @ifGNUmake@ to the empty string, '#' otherwise
- if test "x$_cv_gnu_make_command" != "x" ; then
- ifGNUmake='' ;
- else
- ifGNUmake='#' ;
- AC_MSG_RESULT("Not found");
- fi
- AC_SUBST(ifGNUmake)
-] )
diff --git a/m4macros/wxwin.m4 b/m4macros/wxwin.m4
deleted file mode 100644
index 1c50dcc27..000000000
--- a/m4macros/wxwin.m4
+++ /dev/null
@@ -1,1060 +0,0 @@
-dnl ---------------------------------------------------------------------------
-dnl Author: wxWidgets development team,
-dnl Francesco Montorsi,
-dnl Bob McCown (Mac-testing)
-dnl Creation date: 24/11/2001
-dnl RCS-ID: $Id$
-dnl ---------------------------------------------------------------------------
-
-dnl ===========================================================================
-dnl Table of Contents of this macro file:
-dnl -------------------------------------
-dnl
-dnl SECTION A: wxWidgets main macros
-dnl - WX_CONFIG_OPTIONS
-dnl - WX_CONFIG_CHECK
-dnl - WXRC_CHECK
-dnl - WX_STANDARD_OPTIONS
-dnl - WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
-dnl - WX_DETECT_STANDARD_OPTION_VALUES
-dnl
-dnl SECTION B: wxWidgets-related utilities
-dnl - WX_LIKE_LIBNAME
-dnl - WX_ARG_ENABLE_YESNOAUTO
-dnl - WX_ARG_WITH_YESNOAUTO
-dnl
-dnl SECTION C: messages to the user
-dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG
-dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
-dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_END
-dnl - WX_BOOLOPT_SUMMARY
-dnl
-dnl The special "WX_DEBUG_CONFIGURE" variable can be set to 1 to enable extra
-dnl debug output on stdout from these macros.
-dnl ===========================================================================
-
-
-dnl ---------------------------------------------------------------------------
-dnl Macros for wxWidgets detection. Typically used in configure.in as:
-dnl
-dnl AC_ARG_ENABLE(...)
-dnl AC_ARG_WITH(...)
-dnl ...
-dnl WX_CONFIG_OPTIONS
-dnl ...
-dnl ...
-dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1])
-dnl if test "$wxWin" != 1; then
-dnl AC_MSG_ERROR([
-dnl wxWidgets must be installed on your system
-dnl but wx-config script couldn't be found.
-dnl
-dnl Please check that wx-config is in path, the directory
-dnl where wxWidgets libraries are installed (returned by
-dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
-dnl equivalent variable and wxWidgets version is 2.3.4 or above.
-dnl ])
-dnl fi
-dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
-dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
-dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
-dnl
-dnl LIBS="$LIBS $WX_LIBS"
-dnl
-dnl If you want to support standard --enable-debug/unicode/shared options, you
-dnl may do the following:
-dnl
-dnl ...
-dnl AC_CANONICAL_SYSTEM
-dnl
-dnl # define configure options
-dnl WX_CONFIG_OPTIONS
-dnl WX_STANDARD_OPTIONS([debug,unicode,shared,toolkit,wxshared])
-dnl
-dnl # basic configure checks
-dnl ...
-dnl
-dnl # we want to always have DEBUG==WX_DEBUG and UNICODE==WX_UNICODE
-dnl WX_DEBUG=$DEBUG
-dnl WX_UNICODE=$UNICODE
-dnl
-dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
-dnl WX_CONFIG_CHECK([2.8.0], [wxWin=1],,[html,core,net,base],[$WXCONFIG_FLAGS])
-dnl WX_DETECT_STANDARD_OPTION_VALUES
-dnl
-dnl # write the output files
-dnl AC_CONFIG_FILES([Makefile ...])
-dnl AC_OUTPUT
-dnl
-dnl # optional: just to show a message to the user
-dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
-dnl
-dnl ---------------------------------------------------------------------------
-
-
-dnl ---------------------------------------------------------------------------
-dnl WX_CONFIG_OPTIONS
-dnl
-dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and
-dnl --wx-config command line options
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN([WX_CONFIG_OPTIONS],
-[
- AC_ARG_WITH(wxdir,
- [ --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH],
- [ wx_config_name="$withval/wx-config"
- wx_config_args="--inplace"])
- AC_ARG_WITH(wx-config,
- [ --with-wx-config=CONFIG wx-config script to use (optional)],
- wx_config_name="$withval" )
- AC_ARG_WITH(wx-prefix,
- [ --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)],
- wx_config_prefix="$withval", wx_config_prefix="")
- AC_ARG_WITH(wx-exec-prefix,
- [ --with-wx-exec-prefix=PREFIX
- Exec prefix where wxWidgets is installed (optional)],
- wx_config_exec_prefix="$withval", wx_config_exec_prefix="")
-])
-
-dnl Helper macro for checking if wx version is at least $1.$2.$3, set's
-dnl wx_ver_ok=yes if it is:
-AC_DEFUN([_WX_PRIVATE_CHECK_VERSION],
-[
- wx_ver_ok=""
- if test "x$WX_VERSION" != x ; then
- if test $wx_config_major_version -gt $1; then
- wx_ver_ok=yes
- else
- if test $wx_config_major_version -eq $1; then
- if test $wx_config_minor_version -gt $2; then
- wx_ver_ok=yes
- else
- if test $wx_config_minor_version -eq $2; then
- if test $wx_config_micro_version -ge $3; then
- wx_ver_ok=yes
- fi
- fi
- fi
- fi
- fi
- fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_CONFIG_CHECK(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
-dnl [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]])
-dnl
-dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC
-dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME
-dnl environment variable to override the default name of the wx-config script
-dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this
-dnl case the macro won't even waste time on tests for its existence.
-dnl
-dnl Optional WX-LIBS argument contains comma- or space-separated list of
-dnl wxWidgets libraries to link against. If it is not specified then WX_LIBS
-dnl and WX_LIBS_STATIC will contain flags to link with all of the core
-dnl wxWidgets libraries.
-dnl
-dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config
-dnl invocation command in present. It can be used to fine-tune lookup of
-dnl best wxWidgets build available.
-dnl
-dnl Example use:
-dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1], [wxWin=0], [html,core,net]
-dnl [--unicode --debug])
-dnl ---------------------------------------------------------------------------
-
-dnl
-dnl Get the cflags and libraries from the wx-config script
-dnl
-AC_DEFUN([WX_CONFIG_CHECK],
-[
- dnl do we have wx-config name: it can be wx-config or wxd-config or ...
- if test x${WX_CONFIG_NAME+set} != xset ; then
- WX_CONFIG_NAME=wx-config
- fi
-
- if test "x$wx_config_name" != x ; then
- WX_CONFIG_NAME="$wx_config_name"
- fi
-
- dnl deal with optional prefixes
- if test x$wx_config_exec_prefix != x ; then
- wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix"
- WX_LOOKUP_PATH="$wx_config_exec_prefix/bin"
- fi
- if test x$wx_config_prefix != x ; then
- wx_config_args="$wx_config_args --prefix=$wx_config_prefix"
- WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin"
- fi
- if test "$cross_compiling" = "yes"; then
- wx_config_args="$wx_config_args --host=$host_alias"
- fi
-
- dnl don't search the PATH if WX_CONFIG_NAME is absolute filename
- if test -x "$WX_CONFIG_NAME" ; then
- AC_MSG_CHECKING(for wx-config)
- WX_CONFIG_PATH="$WX_CONFIG_NAME"
- AC_MSG_RESULT($WX_CONFIG_PATH)
- else
- AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH")
- fi
-
- if test "$WX_CONFIG_PATH" != "no" ; then
- WX_VERSION=""
-
- min_wx_version=ifelse([$1], ,2.2.1,$1)
- if test -z "$5" ; then
- AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version])
- else
- AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)])
- fi
-
- dnl don't add the libraries ($4) to this variable as this would result in
- dnl an error when it's used with --version below
- WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5"
-
- WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null`
- wx_config_major_version=`echo $WX_VERSION | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
- wx_config_minor_version=`echo $WX_VERSION | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
- wx_config_micro_version=`echo $WX_VERSION | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
-
- wx_requested_major_version=`echo $min_wx_version | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
- wx_requested_minor_version=`echo $min_wx_version | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
- wx_requested_micro_version=`echo $min_wx_version | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
-
- _WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version],
- [$wx_requested_minor_version],
- [$wx_requested_micro_version])
-
- if test -n "$wx_ver_ok"; then
- AC_MSG_RESULT(yes (version $WX_VERSION))
- WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs $4`
-
- dnl is this even still appropriate? --static is a real option now
- dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is
- dnl what the user actually wants, making this redundant at best.
- dnl For now keep it in case anyone actually used it in the past.
- AC_MSG_CHECKING([for wxWidgets static library])
- WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs $4 2>/dev/null`
- if test "x$WX_LIBS_STATIC" = "x"; then
- AC_MSG_RESULT(no)
- else
- AC_MSG_RESULT(yes)
- fi
-
- dnl starting with version 2.2.6 wx-config has --cppflags argument
- wx_has_cppflags=""
- if test $wx_config_major_version -gt 2; then
- wx_has_cppflags=yes
- else
- if test $wx_config_major_version -eq 2; then
- if test $wx_config_minor_version -gt 2; then
- wx_has_cppflags=yes
- else
- if test $wx_config_minor_version -eq 2; then
- if test $wx_config_micro_version -ge 6; then
- wx_has_cppflags=yes
- fi
- fi
- fi
- fi
- fi
-
- dnl starting with version 2.7.0 wx-config has --rescomp option
- wx_has_rescomp=""
- if test $wx_config_major_version -gt 2; then
- wx_has_rescomp=yes
- else
- if test $wx_config_major_version -eq 2; then
- if test $wx_config_minor_version -ge 7; then
- wx_has_rescomp=yes
- fi
- fi
- fi
- if test "x$wx_has_rescomp" = x ; then
- dnl cannot give any useful info for resource compiler
- WX_RESCOMP=
- else
- WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp`
- fi
-
- if test "x$wx_has_cppflags" = x ; then
- dnl no choice but to define all flags like CFLAGS
- WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
- WX_CPPFLAGS=$WX_CFLAGS
- WX_CXXFLAGS=$WX_CFLAGS
-
- WX_CFLAGS_ONLY=$WX_CFLAGS
- WX_CXXFLAGS_ONLY=$WX_CFLAGS
- else
- dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS
- WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags $4`
- WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags $4`
- WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4`
-
- WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"`
- WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"`
- fi
-
- ifelse([$2], , :, [$2])
-
- else
-
- if test "x$WX_VERSION" = x; then
- dnl no wx-config at all
- AC_MSG_RESULT(no)
- else
- AC_MSG_RESULT(no (version $WX_VERSION is not new enough))
- fi
-
- WX_CFLAGS=""
- WX_CPPFLAGS=""
- WX_CXXFLAGS=""
- WX_LIBS=""
- WX_LIBS_STATIC=""
- WX_RESCOMP=""
-
- if test ! -z "$5"; then
-
- wx_error_message="
- The configuration you asked for $PACKAGE_NAME requires a wxWidgets
- build with the following settings:
- $5
- but such build is not available.
-
- To see the wxWidgets builds available on this system, please use
- 'wx-config --list' command. To use the default build, returned by
- 'wx-config --selected-config', use the options with their 'auto'
- default values."
-
- fi
-
- wx_error_message="
- The requested wxWidgets build couldn't be found.
- $wx_error_message
-
- If you still get this error, then check that 'wx-config' is
- in path, the directory where wxWidgets libraries are installed
- (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH
- or equivalent variable and wxWidgets version is $1 or above."
-
- ifelse([$3], , AC_MSG_ERROR([$wx_error_message]), [$3])
-
- fi
- else
-
- WX_CFLAGS=""
- WX_CPPFLAGS=""
- WX_CXXFLAGS=""
- WX_LIBS=""
- WX_LIBS_STATIC=""
- WX_RESCOMP=""
-
- ifelse([$3], , :, [$3])
-
- fi
-
- AC_SUBST(WX_CPPFLAGS)
- AC_SUBST(WX_CFLAGS)
- AC_SUBST(WX_CXXFLAGS)
- AC_SUBST(WX_CFLAGS_ONLY)
- AC_SUBST(WX_CXXFLAGS_ONLY)
- AC_SUBST(WX_LIBS)
- AC_SUBST(WX_LIBS_STATIC)
- AC_SUBST(WX_VERSION)
- AC_SUBST(WX_RESCOMP)
-
- dnl need to export also WX_VERSION_MINOR and WX_VERSION_MAJOR symbols
- dnl to support wxpresets bakefiles (we export also WX_VERSION_MICRO for completeness):
- WX_VERSION_MAJOR="$wx_config_major_version"
- WX_VERSION_MINOR="$wx_config_minor_version"
- WX_VERSION_MICRO="$wx_config_micro_version"
- AC_SUBST(WX_VERSION_MAJOR)
- AC_SUBST(WX_VERSION_MINOR)
- AC_SUBST(WX_VERSION_MICRO)
-])
-
-dnl ---------------------------------------------------------------------------
-dnl Get information on the wxrc program for making C++, Python and xrs
-dnl resource files.
-dnl
-dnl AC_ARG_ENABLE(...)
-dnl AC_ARG_WITH(...)
-dnl ...
-dnl WX_CONFIG_OPTIONS
-dnl ...
-dnl WX_CONFIG_CHECK(2.6.0, wxWin=1)
-dnl if test "$wxWin" != 1; then
-dnl AC_MSG_ERROR([
-dnl wxWidgets must be installed on your system
-dnl but wx-config script couldn't be found.
-dnl
-dnl Please check that wx-config is in path, the directory
-dnl where wxWidgets libraries are installed (returned by
-dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
-dnl equivalent variable and wxWidgets version is 2.6.0 or above.
-dnl ])
-dnl fi
-dnl
-dnl WXRC_CHECK([HAVE_WXRC=1], [HAVE_WXRC=0])
-dnl if test "x$HAVE_WXRC" != x1; then
-dnl AC_MSG_ERROR([
-dnl The wxrc program was not installed or not found.
-dnl
-dnl Please check the wxWidgets installation.
-dnl ])
-dnl fi
-dnl
-dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
-dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
-dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
-dnl
-dnl LDFLAGS="$LDFLAGS $WX_LIBS"
-dnl ---------------------------------------------------------------------------
-
-dnl ---------------------------------------------------------------------------
-dnl WXRC_CHECK([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
-dnl
-dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS
-dnl resources. The variable WXRC will be set and substituted in the configure
-dnl script and Makefiles.
-dnl
-dnl Example use:
-dnl WXRC_CHECK([wxrc=1], [wxrc=0])
-dnl ---------------------------------------------------------------------------
-
-dnl
-dnl wxrc program from the wx-config script
-dnl
-AC_DEFUN([WXRC_CHECK],
-[
- AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler])
-
- if test "x$WX_CONFIG_NAME" = x; then
- AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.])
- else
-
- AC_MSG_CHECKING([for wxrc])
-
- if test "x$WXRC" = x ; then
- dnl wx-config --utility is a new addition to wxWidgets:
- _WX_PRIVATE_CHECK_VERSION(2,5,3)
- if test -n "$wx_ver_ok"; then
- WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc`
- fi
- fi
-
- if test "x$WXRC" = x ; then
- AC_MSG_RESULT([not found])
- ifelse([$2], , :, [$2])
- else
- AC_MSG_RESULT([$WXRC])
- ifelse([$1], , :, [$1])
- fi
-
- AC_SUBST(WXRC)
- fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_LIKE_LIBNAME([output-var] [prefix], [name])
-dnl
-dnl Sets the "output-var" variable to the name of a library named with same
-dnl wxWidgets rule.
-dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets
-dnl the $lib variable to:
-dnl 'mine_gtk2ud_test-2.8'
-dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_RELEASE=28
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_LIKE_LIBNAME],
- [
- wx_temp="$2""_""$WX_PORT"
-
- dnl add the [u][d] string
- if test "$WX_UNICODE" = "1"; then
- wx_temp="$wx_temp""u"
- fi
- if test "$WX_DEBUG" = "1"; then
- wx_temp="$wx_temp""d"
- fi
-
- dnl complete the name of the lib
- wx_temp="$wx_temp""_""$3""-$WX_VERSION_MAJOR.$WX_VERSION_MINOR"
-
- dnl save it in the user's variable
- $1=$wx_temp
- ])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_ARG_ENABLE_YESNOAUTO/WX_ARG_WITH_YESNOAUTO
-dnl
-dnl Two little custom macros which define the ENABLE/WITH configure arguments.
-dnl Macro arguments:
-dnl $1 = the name of the --enable / --with feature
-dnl $2 = the name of the variable associated
-dnl $3 = the description of that feature
-dnl $4 = the default value for that feature
-dnl $5 = additional action to do in case option is given with "yes" value
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_ARG_ENABLE_YESNOAUTO],
- [AC_ARG_ENABLE($1,
- AC_HELP_STRING([--enable-$1], [$3 (default is $4)]),
- [], [enableval="$4"])
-
- dnl Show a message to the user about this option
- AC_MSG_CHECKING([for the --enable-$1 option])
- if test "$enableval" = "yes" ; then
- AC_MSG_RESULT([yes])
- $2=1
- $5
- elif test "$enableval" = "no" ; then
- AC_MSG_RESULT([no])
- $2=0
- elif test "$enableval" = "auto" ; then
- AC_MSG_RESULT([will be automatically detected])
- $2="auto"
- else
- AC_MSG_ERROR([
- Unrecognized option value (allowed values: yes, no, auto)
- ])
- fi
- ])
-
-AC_DEFUN([WX_ARG_WITH_YESNOAUTO],
- [AC_ARG_WITH($1,
- AC_HELP_STRING([--with-$1], [$3 (default is $4)]),
- [], [withval="$4"])
-
- dnl Show a message to the user about this option
- AC_MSG_CHECKING([for the --with-$1 option])
- if test "$withval" = "yes" ; then
- AC_MSG_RESULT([yes])
- $2=1
- $5
- dnl NB: by default we don't allow --with-$1=no option
- dnl since it does not make much sense !
- elif test "$6" = "1" -a "$withval" = "no" ; then
- AC_MSG_RESULT([no])
- $2=0
- elif test "$withval" = "auto" ; then
- AC_MSG_RESULT([will be automatically detected])
- $2="auto"
- else
- AC_MSG_ERROR([
- Unrecognized option value (allowed values: yes, auto)
- ])
- fi
- ])
-
-
-dnl ---------------------------------------------------------------------------
-dnl WX_STANDARD_OPTIONS([options-to-add])
-dnl
-dnl Adds to the configure script one or more of the following options:
-dnl --enable-[debug|unicode|shared|wxshared|wxdebug]
-dnl --with-[gtk|msw|motif|x11|mac|dfb]
-dnl --with-wxversion
-dnl Then checks for their presence and eventually set the DEBUG, UNICODE, SHARED,
-dnl PORT, WX_SHARED, WX_DEBUG, variables to one of the "yes", "no", "auto" values.
-dnl
-dnl Note that e.g. UNICODE != WX_UNICODE; the first is the value of the
-dnl --enable-unicode option (in boolean format) while the second indicates
-dnl if wxWidgets was built in Unicode mode (and still is in boolean format).
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_STANDARD_OPTIONS],
- [
-
- dnl the following lines will expand to WX_ARG_ENABLE_YESNOAUTO calls if and only if
- dnl the $1 argument contains respectively the debug,unicode or shared options.
-
- dnl be careful here not to set debug flag if only "wxdebug" was specified
- ifelse(regexp([$1], [\bdebug]), [-1],,
- [WX_ARG_ENABLE_YESNOAUTO([debug], [DEBUG], [Build in debug mode], [auto])])
-
- ifelse(index([$1], [unicode]), [-1],,
- [WX_ARG_ENABLE_YESNOAUTO([unicode], [UNICODE], [Build in Unicode mode], [auto])])
-
- ifelse(regexp([$1], [\bshared]), [-1],,
- [WX_ARG_ENABLE_YESNOAUTO([shared], [SHARED], [Build as shared library], [auto])])
-
- dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-toolkit since it's an option
- dnl which must be able to accept the auto|gtk1|gtk2|msw|... values
- ifelse(index([$1], [toolkit]), [-1],,
- [
- AC_ARG_WITH([toolkit],
- AC_HELP_STRING([--with-toolkit],
- [Build against a specific wxWidgets toolkit (default is auto)]),
- [], [withval="auto"])
-
- dnl Show a message to the user about this option
- AC_MSG_CHECKING([for the --with-toolkit option])
- if test "$withval" = "auto" ; then
- AC_MSG_RESULT([will be automatically detected])
- TOOLKIT="auto"
- else
- TOOLKIT="$withval"
-
- dnl PORT must be one of the allowed values
- if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a \
- "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \
- "$TOOLKIT" != "osx_carbon" -a "$TOOLKIT" != "osx_cocoa" -a \
- "$TOOLKIT" != "dfb" -a "$TOOLKIT" != "x11"; then
- AC_MSG_ERROR([
- Unrecognized option value (allowed values: auto, gtk1, gtk2, msw, motif, osx_carbon, osx_cocoa, dfb, x11)
- ])
- fi
-
- AC_MSG_RESULT([$TOOLKIT])
- fi
- ])
-
- dnl ****** IMPORTANT *******
- dnl Unlike for the UNICODE setting, you can build your program in
- dnl shared mode against a static build of wxWidgets. Thus we have the
- dnl following option which allows these mixtures. E.g.
- dnl
- dnl ./configure --disable-shared --with-wxshared
- dnl
- dnl will build your library in static mode against the first available
- dnl shared build of wxWidgets.
- dnl
- dnl Note that's not possible to do the viceversa:
- dnl
- dnl ./configure --enable-shared --without-wxshared
- dnl
- dnl Doing so you would try to build your library in shared mode against a static
- dnl build of wxWidgets. This is not possible (you would mix PIC and non PIC code) !
- dnl A check for this combination of options is in WX_DETECT_STANDARD_OPTION_VALUES
- dnl (where we know what 'auto' should be expanded to).
- dnl
- dnl If you try to build something in ANSI mode against a UNICODE build
- dnl of wxWidgets or in RELEASE mode against a DEBUG build of wxWidgets,
- dnl then at best you'll get ton of linking errors !
- dnl ************************
-
- ifelse(index([$1], [wxshared]), [-1],,
- [
- WX_ARG_WITH_YESNOAUTO(
- [wxshared], [WX_SHARED],
- [Force building against a shared build of wxWidgets, even if --disable-shared is given],
- [auto], [], [1])
- ])
-
- dnl Just like for SHARED and WX_SHARED it may happen that some adventurous
- dnl peoples will want to mix a wxWidgets release build with a debug build of
- dnl his app/lib. So, we have both DEBUG and WX_DEBUG variables.
- ifelse(index([$1], [wxdebug]), [-1],,
- [
- WX_ARG_WITH_YESNOAUTO(
- [wxdebug], [WX_DEBUG],
- [Force building against a debug build of wxWidgets, even if --disable-debug is given],
- [auto], [], [1])
- ])
-
- dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-wxversion since it's an option
- dnl which accepts the "auto|2.6|2.7|2.8|2.9|3.0" etc etc values
- ifelse(index([$1], [wxversion]), [-1],,
- [
- AC_ARG_WITH([wxversion],
- AC_HELP_STRING([--with-wxversion],
- [Build against a specific version of wxWidgets (default is auto)]),
- [], [withval="auto"])
-
- dnl Show a message to the user about this option
- AC_MSG_CHECKING([for the --with-wxversion option])
- if test "$withval" = "auto" ; then
- AC_MSG_RESULT([will be automatically detected])
- WX_RELEASE="auto"
- else
-
- wx_requested_major_version=`echo $withval | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\1/'`
- wx_requested_minor_version=`echo $withval | \
- sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\2/'`
-
- dnl both vars above must be exactly 1 digit
- if test "${#wx_requested_major_version}" != "1" -o \
- "${#wx_requested_minor_version}" != "1" ; then
- AC_MSG_ERROR([
- Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9, 3.0)
- ])
- fi
-
- WX_RELEASE="$wx_requested_major_version"".""$wx_requested_minor_version"
- AC_MSG_RESULT([$WX_RELEASE])
- fi
- ])
-
- if test "$WX_DEBUG_CONFIGURE" = "1"; then
- echo "[[dbg]] DEBUG: $DEBUG, WX_DEBUG: $WX_DEBUG"
- echo "[[dbg]] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE"
- echo "[[dbg]] SHARED: $SHARED, WX_SHARED: $WX_SHARED"
- echo "[[dbg]] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT"
- echo "[[dbg]] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE"
- fi
- ])
-
-
-dnl ---------------------------------------------------------------------------
-dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS
-dnl
-dnl Sets the WXCONFIG_FLAGS string using the SHARED,DEBUG,UNICODE variable values
-dnl which are different from "auto".
-dnl Thus this macro needs to be called only once all options have been set.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS],
- [
- if test "$WX_SHARED" = "1" ; then
- WXCONFIG_FLAGS="--static=no "
- elif test "$WX_SHARED" = "0" ; then
- WXCONFIG_FLAGS="--static=yes "
- fi
-
- if test "$WX_DEBUG" = "1" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=yes "
- elif test "$WX_DEBUG" = "0" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=no "
- fi
-
- dnl The user should have set WX_UNICODE=UNICODE
- if test "$WX_UNICODE" = "1" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=yes "
- elif test "$WX_UNICODE" = "0" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=no "
- fi
-
- if test "$TOOLKIT" != "auto" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT "
- fi
-
- if test "$WX_RELEASE" != "auto" ; then
- WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE "
- fi
-
- dnl strip out the last space of the string
- WXCONFIG_FLAGS=${WXCONFIG_FLAGS% }
-
- if test "$WX_DEBUG_CONFIGURE" = "1"; then
- echo "[[dbg]] WXCONFIG_FLAGS: $WXCONFIG_FLAGS"
- fi
- ])
-
-
-dnl ---------------------------------------------------------------------------
-dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG]
-dnl [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
-dnl
-dnl Outputs the given MSG. Then searches the given STRING in the wxWidgets
-dnl additional CPP flags and put the result of the search in WX_$RESULTVAR
-dnl also adding the "yes" or "no" message result to MSG.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([_WX_SELECTEDCONFIG_CHECKFOR],
- [
- if test "$$1" = "auto" ; then
-
- dnl The user does not have particular preferences for this option;
- dnl so we will detect the wxWidgets relative build setting and use it
- AC_MSG_CHECKING([$3])
-
- dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2
- dnl string or to 0 otherwise.
- dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it
- dnl doesn't work; we use 'expr STRING : REGEXP' instead
- WX_$1=$(expr "$WX_SELECTEDCONFIG" : ".*$2.*")
-
- if test "$WX_$1" != "0"; then
- WX_$1=1
- AC_MSG_RESULT([yes])
- ifelse([$4], , :, [$4])
- else
- WX_$1=0
- AC_MSG_RESULT([no])
- ifelse([$5], , :, [$5])
- fi
- else
-
- dnl Use the setting given by the user
- WX_$1=$$1
- fi
- ])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_DETECT_STANDARD_OPTION_VALUES
-dnl
-dnl Detects the values of the following variables:
-dnl 1) WX_RELEASE
-dnl 2) WX_UNICODE
-dnl 3) WX_DEBUG
-dnl 4) WX_SHARED (and also WX_STATIC)
-dnl 5) WX_PORT
-dnl from the previously selected wxWidgets build; this macro in fact must be
-dnl called *after* calling the WX_CONFIG_CHECK macro.
-dnl
-dnl Note that the WX_VERSION_MAJOR, WX_VERSION_MINOR symbols are already set
-dnl by WX_CONFIG_CHECK macro
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES],
- [
- dnl IMPORTANT: WX_VERSION contains all three major.minor.micro digits,
- dnl while WX_RELEASE only the major.minor ones.
- WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR"
- if test $WX_RELEASE -lt 26 ; then
-
- AC_MSG_ERROR([
- Cannot detect the wxWidgets configuration for the selected wxWidgets build
- since its version is $WX_VERSION < 2.6.0; please install a newer
- version of wxWidgets.
- ])
- fi
-
- dnl The wx-config we are using understands the "--selected_config"
- dnl option which returns an easy-parseable string !
- WX_SELECTEDCONFIG=$($WX_CONFIG_WITH_ARGS --selected_config)
-
- if test "$WX_DEBUG_CONFIGURE" = "1"; then
- echo "[[dbg]] Using wx-config --selected-config"
- echo "[[dbg]] WX_SELECTEDCONFIG: $WX_SELECTEDCONFIG"
- fi
-
-
- dnl we could test directly for WX_SHARED with a line like:
- dnl _WX_SELECTEDCONFIG_CHECKFOR([SHARED], [shared],
- dnl [if wxWidgets was built in SHARED mode])
- dnl but wx-config --selected-config DOES NOT outputs the 'shared'
- dnl word when wx was built in shared mode; it rather outputs the
- dnl 'static' word when built in static mode.
- if test $WX_SHARED = "1"; then
- STATIC=0
- elif test $WX_SHARED = "0"; then
- STATIC=1
- elif test $WX_SHARED = "auto"; then
- STATIC="auto"
- fi
-
- dnl Now set the WX_UNICODE, WX_DEBUG, WX_STATIC variables
- _WX_SELECTEDCONFIG_CHECKFOR([UNICODE], [unicode],
- [if wxWidgets was built with UNICODE enabled])
- _WX_SELECTEDCONFIG_CHECKFOR([DEBUG], [debug],
- [if wxWidgets was built in DEBUG mode])
- _WX_SELECTEDCONFIG_CHECKFOR([STATIC], [static],
- [if wxWidgets was built in STATIC mode])
-
- dnl init WX_SHARED from WX_STATIC
- if test "$WX_STATIC" != "0"; then
- WX_SHARED=0
- else
- WX_SHARED=1
- fi
-
- AC_SUBST(WX_UNICODE)
- AC_SUBST(WX_DEBUG)
- AC_SUBST(WX_SHARED)
-
- dnl detect the WX_PORT to use
- if test "$TOOLKIT" = "auto" ; then
-
- dnl The user does not have particular preferences for this option;
- dnl so we will detect the wxWidgets relative build setting and use it
- AC_MSG_CHECKING([which wxWidgets toolkit was selected])
-
- WX_GTKPORT1=$(expr "$WX_SELECTEDCONFIG" : ".*gtk1.*")
- WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*")
- WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*")
- WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*")
- WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*")
- WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*")
- WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*")
- WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*")
-
- WX_PORT="unknown"
- if test "$WX_GTKPORT1" != "0"; then WX_PORT="gtk1"; fi
- if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi
- if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi
- if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi
- if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi
- if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi
- if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi
- if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi
-
- dnl NOTE: backward-compatible check for wx2.8; in wx2.9 the mac
- dnl ports are called 'osx_cocoa' and 'osx_carbon' (see above)
- WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*")
- if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi
-
- dnl check at least one of the WX_*PORT has been set !
-
- if test "$WX_PORT" = "unknown" ; then
- AC_MSG_ERROR([
- Cannot detect the currently installed wxWidgets port !
- Please check your 'wx-config --cxxflags'...
- ])
- fi
-
- AC_MSG_RESULT([$WX_PORT])
- else
-
- dnl Use the setting given by the user
- if test -z "$TOOLKIT" ; then
- WX_PORT=$TOOLKIT
- else
- dnl try with PORT
- WX_PORT=$PORT
- fi
- fi
-
- AC_SUBST(WX_PORT)
-
- if test "$WX_DEBUG_CONFIGURE" = "1"; then
- echo "[[dbg]] Values of all WX_* options after final detection:"
- echo "[[dbg]] WX_DEBUG: $WX_DEBUG"
- echo "[[dbg]] WX_UNICODE: $WX_UNICODE"
- echo "[[dbg]] WX_SHARED: $WX_SHARED"
- echo "[[dbg]] WX_RELEASE: $WX_RELEASE"
- echo "[[dbg]] WX_PORT: $WX_PORT"
- fi
-
- dnl Avoid problem described in the WX_STANDARD_OPTIONS which happens when
- dnl the user gives the options:
- dnl ./configure --enable-shared --without-wxshared
- dnl or just do
- dnl ./configure --enable-shared
- dnl but there is only a static build of wxWidgets available.
- if test "$WX_SHARED" = "0" -a "$SHARED" = "1"; then
- AC_MSG_ERROR([
- Cannot build shared library against a static build of wxWidgets !
- This error happens because the wxWidgets build which was selected
- has been detected as static while you asked to build $PACKAGE_NAME
- as shared library and this is not possible.
- Use the '--disable-shared' option to build $PACKAGE_NAME
- as static library or '--with-wxshared' to use wxWidgets as shared library.
- ])
- fi
-
- dnl now we can finally update the DEBUG,UNICODE,SHARED options
- dnl to their final values if they were set to 'auto'
- if test "$DEBUG" = "auto"; then
- DEBUG=$WX_DEBUG
- fi
- if test "$UNICODE" = "auto"; then
- UNICODE=$WX_UNICODE
- fi
- if test "$SHARED" = "auto"; then
- SHARED=$WX_SHARED
- fi
- if test "$TOOLKIT" = "auto"; then
- TOOLKIT=$WX_PORT
- fi
-
- dnl in case the user needs a BUILD=debug/release var...
- if test "$DEBUG" = "1"; then
- BUILD="debug"
- elif test "$DEBUG" = "0" -o "$DEBUG" = ""; then
- BUILD="release"
- fi
-
- dnl respect the DEBUG variable adding the optimize/debug flags
- dnl NOTE: the CXXFLAGS are merged together with the CPPFLAGS so we
- dnl don't need to set them, too
- if test "$DEBUG" = "1"; then
- CXXFLAGS="$CXXFLAGS -g -O0"
- CFLAGS="$CFLAGS -g -O0"
- else
- CXXFLAGS="$CXXFLAGS -O2"
- CFLAGS="$CFLAGS -O2"
- fi
- ])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_BOOLOPT_SUMMARY([name of the boolean variable to show summary for],
-dnl [what to print when var is 1],
-dnl [what to print when var is 0])
-dnl
-dnl Prints $2 when variable $1 == 1 and prints $3 when variable $1 == 0.
-dnl This macro mainly exists just to make configure.ac scripts more readable.
-dnl
-dnl NOTE: you need to use the [" my message"] syntax for 2nd and 3rd arguments
-dnl if you want that m4 avoid to throw away the spaces prefixed to the
-dnl argument value.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_BOOLOPT_SUMMARY],
- [
- if test "x$$1" = "x1" ; then
- echo $2
- elif test "x$$1" = "x0" ; then
- echo $3
- else
- echo "$1 is $$1"
- fi
- ])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_STANDARD_OPTIONS_SUMMARY_MSG
-dnl
-dnl Shows a summary message to the user about the WX_* variable contents.
-dnl This macro is used typically at the end of the configure script.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG],
- [
- echo
- echo " The wxWidgets build which will be used by $PACKAGE_NAME $PACKAGE_VERSION"
- echo " has the following settings:"
- WX_BOOLOPT_SUMMARY([WX_DEBUG], [" - DEBUG build"], [" - RELEASE build"])
- WX_BOOLOPT_SUMMARY([WX_UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
- WX_BOOLOPT_SUMMARY([WX_SHARED], [" - SHARED mode"], [" - STATIC mode"])
- echo " - VERSION: $WX_VERSION"
- echo " - PORT: $WX_PORT"
- ])
-
-
-dnl ---------------------------------------------------------------------------
-dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN, WX_STANDARD_OPTIONS_SUMMARY_MSG_END
-dnl
-dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info
-dnl about the configuration of the package which used the wxpresets.
-dnl
-dnl Typical usage:
-dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN
-dnl echo " - Package setting 1: $SETTING1"
-dnl echo " - Package setting 2: $SETTING1"
-dnl ...
-dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_END
-dnl
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN],
- [
- echo
- echo " ----------------------------------------------------------------"
- echo " Configuration for $PACKAGE_NAME $PACKAGE_VERSION successfully completed."
- echo " Summary of main configuration settings for $PACKAGE_NAME:"
- WX_BOOLOPT_SUMMARY([DEBUG], [" - DEBUG build"], [" - RELEASE build"])
- WX_BOOLOPT_SUMMARY([UNICODE], [" - UNICODE mode"], [" - ANSI mode"])
- WX_BOOLOPT_SUMMARY([SHARED], [" - SHARED mode"], [" - STATIC mode"])
- ])
-
-AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_END],
- [
- WX_STANDARD_OPTIONS_SUMMARY_MSG
- echo
- echo " Now, just run make."
- echo " ----------------------------------------------------------------"
- echo
- ])
-
-
-dnl ---------------------------------------------------------------------------
-dnl Deprecated macro wrappers
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN([AM_OPTIONS_WXCONFIG], [WX_CONFIG_OPTIONS])
-AC_DEFUN([AM_PATH_WXCONFIG], [
- WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5])
-])
-AC_DEFUN([AM_PATH_WXRC], [WXRC_CHECK([$1],[$2])])
diff --git a/meson.build b/meson.build
new file mode 100644
index 000000000..29d449597
--- /dev/null
+++ b/meson.build
@@ -0,0 +1,311 @@
+project('Aegisub', ['c', 'cpp'],
+ license: 'BSD-3-Clause',
+ meson_version: '>=0.56.1',
+ default_options: ['cpp_std=c++11', 'b_lto=true', 'buildtype=debugoptimized'],
+ version: '3.2.2')
+
+cmake = import('cmake')
+
+if host_machine.system() == 'windows'
+ sys_nasm = find_program('nasm', required: false)
+ if not sys_nasm.found()
+ nasm = subproject('nasm').get_variable('nasm')
+ meson.override_find_program('nasm', nasm)
+ endif
+endif
+
+if host_machine.system() == 'windows'
+ version_sh = find_program('tools/version.ps1')
+else
+ version_sh = find_program('tools/version.sh')
+endif
+version_inc = include_directories('.')
+version_h = custom_target('git_version.h',
+ command: [version_sh, meson.current_build_dir(), meson.current_source_dir()],
+ build_by_default: true,
+ build_always_stale: true, # has internal check whether target file will be refreshed
+ output: ['git_version.h'])
+
+if host_machine.system() == 'darwin' and get_option('build_osx_bundle')
+ prefix = meson.current_build_dir() / 'Aegisub.app' / 'Contents'
+ bindir = prefix / 'MacOS'
+ datadir = prefix / 'SharedSupport'
+ localedir = prefix / 'Resources'
+else
+ prefix = get_option('prefix')
+ bindir = prefix / get_option('bindir')
+ datadir = prefix / get_option('datadir')
+ localedir = prefix / get_option('localedir')
+endif
+docdir = prefix / 'doc'
+dataroot = datadir / 'aegisub'
+add_project_arguments('-DP_DATA="@0@"'.format(dataroot), language: 'cpp')
+
+if host_machine.system() == 'windows'
+ add_project_arguments('-DNOMINMAX', '-D_WIN32_WINNT=0x0601', language: 'cpp')
+endif
+
+# MSVC sets this automatically with -MDd, but it has a different meaning on other platforms
+if get_option('debug') and host_machine.system() != 'windows'
+ add_project_arguments('-D_DEBUG', language: 'cpp')
+endif
+
+conf = configuration_data()
+conf.set_quoted('P_DATA', dataroot)
+if get_option('credit') != ''
+ conf.set_quoted('BUILD_CREDIT', get_option('credit'))
+endif
+conf.set('WITH_UPDATE_CHECKER', get_option('enable_update_checker'))
+
+deps = []
+deps_inc = []
+
+conf.set('WITH_FONTCONFIG', '0')
+if host_machine.system() == 'darwin'
+ add_languages('objc', 'objcpp')
+ add_project_arguments('-DGL_SILENCE_DEPRECATION', language: 'cpp')
+ # meson neither supports objcpp_std nor inherits cpp_std https://github.com/mesonbuild/meson/issues/5495
+ add_project_arguments('-std=c++11', language: 'objcpp')
+elif host_machine.system() != 'windows'
+ conf.set('WITH_FONTCONFIG', '1')
+ deps += dependency('fontconfig')
+endif
+
+cxx = meson.get_compiler('cpp')
+cc = meson.get_compiler('c')
+deps += cc.find_library('m', required: false)
+deps += cc.find_library('dl', required: false)
+if not cxx.check_header('iconv.h')
+ iconv_sp = subproject('iconv') # this really needs to be replaced with a proper port
+ deps += iconv_sp.get_variable('libiconv_dep')
+endif
+
+deps += dependency('libass', version: '>=0.9.7',
+ fallback: ['libass', 'libass_dep'])
+
+boost_modules = ['chrono', 'filesystem', 'thread', 'locale', 'regex']
+if not get_option('local_boost')
+ boost_dep = dependency('boost', version: '>=1.50.0',
+ modules: boost_modules + ['system'],
+ required: false,
+ static: get_option('default_library') == 'static')
+endif
+
+if get_option('local_boost') or not boost_dep.found()
+ boost_dep = []
+ boost = subproject('boost')
+ foreach module: boost_modules
+ boost_dep += boost.get_variable('boost_' + module + '_dep')
+ endforeach
+endif
+
+deps += boost_dep
+if host_machine.system() == 'windows'
+ conf.set('BOOST_USE_WINDOWS_H', '1')
+endif
+
+deps += dependency('zlib')
+
+wx_minver = '>=3.0.0'
+if host_machine.system() == 'darwin'
+ wx_minver = '>=3.1.0'
+endif
+wx_dep = dependency('wxWidgets', version: wx_minver,
+ required: false,
+ modules: ['std', 'stc', 'gl'])
+
+if wx_dep.found()
+ deps += wx_dep
+else
+ build_shared = 'ON'
+ if get_option('default_library') == 'static'
+ build_shared = 'OFF'
+ endif
+ build_type = 'Release'
+ if get_option('buildtype') == 'debug'
+ build_type = 'Debug'
+ endif
+
+ wx = cmake.subproject('wxWidgets', cmake_options: ['-DwxBUILD_INSTALL=OFF',
+ '-DwxBUILD_PRECOMP=OFF', # otherwise breaks project generation w/ meson
+ '-DwxBUILD_SHARED=@0@'.format(build_shared),
+ '-DwxUSE_WEBVIEW=OFF', # breaks build on linux
+ '-DCMAKE_BUILD_TYPE=@0@'.format(build_type),
+ '-DwxBUILD_MONOLITHIC=ON']) # otherwise breaks project generation w/ meson
+ deps += [
+ wx.dependency('wxmono'),
+ wx.dependency('wxregex'),
+ wx.dependency('wxscintilla')
+ ]
+
+ if host_machine.system() == 'windows' or host_machine.system() == 'darwin'
+ deps += [
+ wx.dependency('wxpng'),
+ ]
+ endif
+
+ if host_machine.system() == 'windows'
+ deps += [
+ wx.dependency('wxzlib'),
+ wx.dependency('wxexpat'),
+ ]
+
+ if cc.has_header('rpc.h')
+ deps += cc.find_library('rpcrt4', required: true)
+ else
+ error('Missing Windows SDK RPC Library (rpc.h / rpcrt4.lib)')
+ endif
+ if cc.has_header('commctrl.h')
+ deps += cc.find_library('comctl32', required: true)
+ else
+ error('Missing Windows SDK Common Controls Library (commctrl.h / comctl32.lib)')
+ endif
+ endif
+endif
+
+deps += dependency('icu-uc', version: '>=4.8.1.1')
+deps += dependency('icu-i18n', version: '>=4.8.1.1')
+
+dep_avail = []
+foreach dep: [
+ # audio, in order of precedence
+ ['libpulse', '', 'PulseAudio', []],
+ ['alsa', '', 'ALSA', []],
+ ['portaudio-2.0', '', 'PortAudio', []],
+ ['openal', '>=0.0.8', 'OpenAL', []],
+ # video
+ ['ffms2', '', 'FFMS2', ['ffms2', 'ffms2_dep']],
+ # other
+ ['fftw3', '', 'FFTW3', []],
+ ['hunspell', '', 'Hunspell', []], # needs a proper port
+ ['uchardet', '', 'uchardet', []], # needs a proper port
+]
+ dep_version = dep[1] != '' ? dep[1] : '>=0'
+ # [provide] section is ignored if required is false;
+ # must provided define fallback explicitly
+ # (with meson 0.56 you can do allow_fallback: true):
+ #d = dependency(dep[0], version: dep_version,
+ # required: false, allow_fallback: true)
+ if dep[3].length() > 0
+ d = dependency(dep[0], version: dep_version, fallback: dep[3])
+ else
+ d = dependency(dep[0], version: dep_version, required: false)
+ endif
+
+ optname = dep[0].split('-')[0]
+ if d.found() and not get_option(optname).disabled()
+ deps += d
+ conf.set('WITH_@0@'.format(dep[0].split('-')[0].to_upper()), '1')
+ dep_avail += dep[2]
+ elif get_option(optname).enabled()
+ error('@0@ enabled but not found'.format(dep[2]))
+ endif
+endforeach
+
+if host_machine.system() == 'windows' and get_option('avisynth').enabled()
+ conf.set('WITH_AVISYNTH', 1) # bundled separately with installer
+endif
+
+if host_machine.system() == 'windows' and not get_option('directsound').disabled()
+ dsound_dep = cc.find_library('dsound', required: get_option('directsound'))
+ winmm_dep = cc.find_library('winmm', required: get_option('directsound'))
+ ole32_dep = cc.find_library('ole32', required: get_option('directsound'))
+ have_dsound_h = cc.has_header('dsound.h')
+ if not have_dsound_h and get_option('directsound').enabled()
+ error('DirectSound enabled but dsound.h not found')
+ endif
+
+ dxguid_dep = cc.find_library('dxguid', required: true)
+ if dsound_dep.found() and winmm_dep.found() and ole32_dep.found() and dxguid_dep.found() and have_dsound_h
+ deps += [dsound_dep, winmm_dep, ole32_dep, dxguid_dep]
+ conf.set('WITH_DIRECTSOUND', '1')
+ dep_avail += 'DirectSound'
+ endif
+endif
+
+if host_machine.system() == 'darwin'
+ frameworks_dep = dependency('appleframeworks', modules : ['CoreText', 'CoreFoundation', 'AppKit', 'Carbon'])
+ deps += frameworks_dep
+endif
+
+# TODO: OSS
+
+def_audio = get_option('default_audio_output')
+if def_audio != 'auto'
+ if not dep_avail.contains(def_audio)
+ error('Default audio output "@0@" selected but not available'.format(def_audio))
+ endif
+elif dep_avail.length() != 0
+ def_audio = dep_avail[0]
+else
+ def_audio = ''
+endif
+
+conf_platform = configuration_data()
+conf_platform.set('DEFAULT_PLAYER_AUDIO', def_audio)
+
+luajit = dependency('luajit', version: '>=2.0.0', required: get_option('system_luajit'))
+if luajit.found()
+ luajit_test = cc.run('''#include
+int main(void)
+{
+ lua_State *L = luaL_newstate();
+ if (!L) return 1;
+ // This is valid in lua 5.2, but a syntax error in 5.1
+ const char testprogram[] = "function foo() while true do break return end end";
+ return luaL_loadstring(L, testprogram) == LUA_ERRSYNTAX;
+}''', dependencies: luajit)
+
+ if luajit_test.returncode() == 1
+ if get_option('system_luajit')
+ error('System luajit found but not compiled in 5.2 mode')
+ else
+ message('System luajit found but not compiled in 5.2 mode; using built-in luajit')
+ endif
+ else
+ deps += luajit
+ endif
+else
+ message('System luajit not found; using built-in luajit')
+endif
+
+if not deps.contains(luajit)
+ luajit_sp = subproject('luajit')
+ luajit_inc = luajit_sp.get_variable('incdir')
+ deps += luajit_sp.get_variable('luajit_dep')
+else
+ luajit_inc = include_directories(luajit.get_pkgconfig_variable('includedir'))
+endif
+subdir('subprojects/luabins/src')
+
+dep_gl = dependency('gl', required: false)
+if not dep_gl.found()
+ if host_machine.system() == 'windows'
+ dep_gl = cc.find_library('opengl32', required: false)
+ else
+ dep_gl = cc.find_library('GL', required: false)
+ endif
+
+ if not cc.has_header('GL/gl.h')
+ dep_gl = dependency('', required: false)
+ endif
+endif
+if host_machine.system() == 'darwin'
+ conf.set('HAVE_OPENGL_GL_H', 1)
+endif
+
+if not dep_gl.found()
+ error('OpenGL implementation not found')
+endif
+
+deps += dep_gl
+
+# TODO: csri
+
+acconf = configure_file(output: 'acconf.h', configuration: conf)
+
+subdir('automation')
+subdir('libaegisub')
+subdir('packages')
+subdir('po')
+subdir('src')
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644
index 000000000..20bac21ae
--- /dev/null
+++ b/meson_options.txt
@@ -0,0 +1,24 @@
+option('alsa', type: 'feature', description: 'ALSA audio output')
+option('openal', type: 'feature', description: 'OpenAL audio output')
+option('libpulse', type: 'feature', description: 'PulseAudio audio output')
+option('portaudio', type: 'feature', description: 'PortAudio audio output')
+option('directsound', type: 'feature', description: 'DirectSound audio output')
+option('default_audio_output', type: 'combo', choices: ['auto', 'ALSA', 'OpenAL', 'PulseAudio', 'PortAudio', 'DirectSound'], description: 'Default audio output')
+
+option('ffms2', type: 'feature', description: 'FFMS2 video source')
+option('avisynth', type: 'feature', description: 'AviSynth video source')
+
+option('fftw3', type: 'feature', description: 'FFTW3 support')
+option('hunspell', type: 'feature', description: 'Hunspell spell checker')
+option('uchardet', type: 'feature', description: 'uchardet character encoding detection')
+
+option('system_luajit', type: 'boolean', value: false, description: 'Force using system luajit')
+option('local_boost', type: 'boolean', value: false, description: 'Force using locally compiled Boost')
+
+option('credit', type: 'string', value: '', description: 'Build credit shown in program title')
+
+option('enable_update_checker', type: 'boolean', value: false, description: 'Enable the update checker')
+option('update_server', type: 'string', value: 'updates.aegisub.org', description: 'Server to use for the update checker')
+option('update_url', type: 'string', value: '/trunk', description: 'Base path to use for the update checker')
+
+option('build_osx_bundle', type: 'boolean', value: 'false', description: 'Package Aegisub.app on OSX')
diff --git a/packages/desktop/16x16/aegisub.png b/packages/desktop/16x16/aegisub.png
new file mode 100644
index 000000000..7d5d58846
Binary files /dev/null and b/packages/desktop/16x16/aegisub.png differ
diff --git a/packages/desktop/22x22/aegisub.png b/packages/desktop/22x22/aegisub.png
new file mode 100644
index 000000000..74dd3f2c3
Binary files /dev/null and b/packages/desktop/22x22/aegisub.png differ
diff --git a/packages/desktop/24x24/aegisub.png b/packages/desktop/24x24/aegisub.png
new file mode 100644
index 000000000..f57623260
Binary files /dev/null and b/packages/desktop/24x24/aegisub.png differ
diff --git a/packages/desktop/32x32/aegisub.png b/packages/desktop/32x32/aegisub.png
new file mode 100644
index 000000000..9d609d7a2
Binary files /dev/null and b/packages/desktop/32x32/aegisub.png differ
diff --git a/packages/desktop/48x48/aegisub.png b/packages/desktop/48x48/aegisub.png
new file mode 100644
index 000000000..c4f163c21
Binary files /dev/null and b/packages/desktop/48x48/aegisub.png differ
diff --git a/packages/desktop/64x64/aegisub.png b/packages/desktop/64x64/aegisub.png
new file mode 100644
index 000000000..fbbd14dc9
Binary files /dev/null and b/packages/desktop/64x64/aegisub.png differ
diff --git a/packages/desktop/Makefile b/packages/desktop/Makefile
deleted file mode 100644
index b41a91569..000000000
--- a/packages/desktop/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../../header.mk
-DESKTOP_SRC := $(d)
-
-ICONS = $(sort $(wildcard $(d)*.png)) $(sort $(wildcard $(d)*.svg))
-ICONS_INSTALLED = $(DESTDIR)$(P_ICON)/hicolor/%/apps/aegisub.
-
-DESKTOP_FILE := $(d)aegisub.desktop
-DESKTOP_FILE_PO := $(d)../../po
-DESKTOP_FILE_INSTALLED = $(DESTDIR)$(P_DESKTOP)/$(notdir $(DESKTOP_FILE))
-
-DISTCLEANFILES += $(DESKTOP_FILE)
-
-APPDATA_FILE := $(d)aegisub.appdata.xml
-APPDATA_FILE_PO := $(d)../../po
-APPDATA_FILE_INSTALLED = $(DESTDIR)$(P_APPDATA)/$(notdir $(APPDATA_FILE))
-
-DISTCLEANFILES += $(APPDATA_FILE)
-
-%.desktop: %.desktop.template $(DESKTOP_FILE_PO)
- intltool-merge --quiet --desktop-style $(DESKTOP_FILE_PO) $< $@
-
-%.appdata.xml: %.appdata.xml.template $(APPDATA_FILE_PO)
- intltool-merge --quiet --xml-style $(APPDATA_FILE_PO) $< $@
-
-$(ICONS_INSTALLED)png: $(d)%.png ; $(MKDIR_INSTALL)
-$(ICONS_INSTALLED)svg: $(d)%.svg ; $(MKDIR_INSTALL)
-$(DESKTOP_FILE_INSTALLED): $(DESKTOP_FILE) ; $(MKDIR_INSTALL)
-$(APPDATA_FILE_INSTALLED): $(APPDATA_FILE) ; $(MKDIR_INSTALL)
-
-ifneq (yes, $(BUILD_DARWIN))
-install: \
- $(APPDATA_FILE_INSTALLED) \
- $(DESKTOP_FILE_INSTALLED) \
- $(patsubst %.png, $(ICONS_INSTALLED)png, $(patsubst %.svg, $(ICONS_INSTALLED)svg, $(notdir $(ICONS))))
-endif
-
-include $(TOP)Makefile.target
diff --git a/packages/desktop/aegisub.desktop.template.in b/packages/desktop/aegisub.desktop.template.in
index 517ced410..ce73b1417 100644
--- a/packages/desktop/aegisub.desktop.template.in
+++ b/packages/desktop/aegisub.desktop.template.in
@@ -1,9 +1,9 @@
[Desktop Entry]
Version=1.0
Type=Application
-_Name=Aegisub
-_GenericName=Subtitle Editor
-_Comment=Create and edit subtitles for film and videos.
+Name=Aegisub
+GenericName=Subtitle Editor
+Comment=Create and edit subtitles for film and videos.
Exec=@AEGISUB_COMMAND@ %f
TryExec=@AEGISUB_COMMAND@
Icon=aegisub
diff --git a/packages/desktop/scalable/aegisub.svg b/packages/desktop/scalable/aegisub.svg
new file mode 100644
index 000000000..e0dfeadb6
--- /dev/null
+++ b/packages/desktop/scalable/aegisub.svg
@@ -0,0 +1,375 @@
+
+
+
diff --git a/packages/meson.build b/packages/meson.build
new file mode 100644
index 000000000..d2298cd27
--- /dev/null
+++ b/packages/meson.build
@@ -0,0 +1,37 @@
+conf_pkg = configuration_data()
+
+if host_machine.system() == 'windows'
+ installer_setup = find_program(meson.source_root() / 'tools/win-installer-setup.ps1', )
+ run_target('win-installer',
+ command: [installer_setup, meson.build_root(), meson.source_root()])
+elif host_machine.system() == 'darwin'
+ # temporary hack until version.sh generates this properly
+ run_command('cp', meson.source_root() / 'tools' / 'osx-bundle.sed', meson.build_root())
+ fontconfig_conf = run_command('pkg-config', '--variable=confdir', 'fontconfig').stdout().strip()
+ run_target('osx-bundle',
+ command: ['../tools/osx-bundle.sh', meson.source_root(), meson.build_root(), 'wx-config', fontconfig_conf, '',
+ get_option('build_osx_bundle') ? 'TRUE' : 'FALSE'])
+else
+ conf_pkg.set('AEGISUB_COMMAND', 'aegisub')
+
+ desktop_template = configure_file(input: 'desktop/aegisub.desktop.template.in',
+ output: 'aegisub.desktop.template',
+ configuration: conf_pkg)
+
+ i18n = import('i18n')
+ i18n.merge_file(input: desktop_template,
+ output: 'aegisub.desktop',
+ type: 'desktop',
+ po_dir: '../po',
+ install: true,
+ install_dir: datadir / 'applications')
+
+ aegisub_logos = ['16x16.png', '22x22.png', '24x24.png', '32x32.png', '48x48.png', '64x64.png', 'scalable.svg']
+
+ foreach s: aegisub_logos
+ dir = s.split('.')[0]
+ ext = s.split('.')[1]
+ install_data('desktop' / dir / 'aegisub.' + ext,
+ install_dir: datadir / 'icons' / 'hicolor' / dir / 'apps')
+ endforeach
+endif
diff --git a/tools/osx-bundle.sed.in b/packages/osx_bundle/osx-bundle.sed.in
similarity index 100%
rename from tools/osx-bundle.sed.in
rename to packages/osx_bundle/osx-bundle.sed.in
diff --git a/packages/win_installer/aegisub3.iss b/packages/win_installer/aegisub3.iss
index d3c109eef..b4361a733 100644
--- a/packages/win_installer/aegisub3.iss
+++ b/packages/win_installer/aegisub3.iss
@@ -1,65 +1,22 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-#ifndef ARCH
-#define ARCH 32
-#endif
+#define ARCH 64
#include "fragment_setupbase.iss"
#include "fragment_strings.iss"
[Setup]
AppID={{24BC8B57-716C-444F-B46B-A3349B9164C5}
-DefaultDirName={pf}\Aegisub
+DefaultDirName={commonpf}\Aegisub
PrivilegesRequired=poweruser
-#ifdef ARCH64
ArchitecturesInstallIn64BitMode=x64
ArchitecturesAllowed=x64
-#endif
#include "fragment_mainprogram.iss"
#include "fragment_associations.iss"
-#ifdef ARCH64
-#include "fragment_codecs_64.iss"
-#else
-#include "fragment_codecs_32.iss"
-#endif
+#include "fragment_codecs.iss"
#include "fragment_automation.iss"
#include "fragment_translations.iss"
#include "fragment_spelling.iss"
-#include "fragment_assdraw.iss"
-
+#include "fragment_runtimes.iss"
[Code]
#include "fragment_shell_code.iss"
@@ -84,7 +41,7 @@ begin
if CurStep = ssPostInstall then
begin
- if IsTaskSelected('checkforupdates') then
+ if WizardIsTaskSelected('checkforupdates') then
Updates := 'true'
else
Updates := 'false';
@@ -97,4 +54,3 @@ begin
False);
end;
end;
-
diff --git a/packages/win_installer/aegisub3_64.iss b/packages/win_installer/aegisub3_64.iss
deleted file mode 100644
index 7231f670a..000000000
--- a/packages/win_installer/aegisub3_64.iss
+++ /dev/null
@@ -1,4 +0,0 @@
-#define ARCH64
-#define ARCH 64
-
-#include "aegisub3.iss"
diff --git a/packages/win_installer/aegisub_depctrl.iss b/packages/win_installer/aegisub_depctrl.iss
new file mode 100644
index 000000000..0cc857265
--- /dev/null
+++ b/packages/win_installer/aegisub_depctrl.iss
@@ -0,0 +1,5 @@
+#define DEPCTRL
+;#define UNOFFICIAL_LANGUAGES
+;#define ENABLE_TRANSLATIONS
+
+#include "aegisub3.iss"
diff --git a/packages/win_installer/dictionaries/fragment_dictbase.iss b/packages/win_installer/dictionaries/fragment_dictbase.iss
index 5d694f98c..6f07dcc37 100644
--- a/packages/win_installer/dictionaries/fragment_dictbase.iss
+++ b/packages/win_installer/dictionaries/fragment_dictbase.iss
@@ -1,37 +1,3 @@
-; Copyright (c) 2011, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
[Setup]
AppID={{24BC8B57-716C-444F-B46B-A3349B9164C5}
AppName=Aegisub
@@ -75,7 +41,6 @@ WelcomeLabel2=This will install {#LANGNAME} dictionaries for Aegisub 3.0 on your
DestDir: {tmp}; Flags: dontcopy; Source: welcome.bmp
DestDir: {tmp}; Flags: dontcopy; Source: aegisub.bmp
-
[Code]
#include "..\fragment_shell_code.iss"
#include "..\fragment_beautify_code.iss"
diff --git a/packages/win_installer/dictionaries/fragment_stddict.iss b/packages/win_installer/dictionaries/fragment_stddict.iss
index 7b7ee1924..acad697be 100644
--- a/packages/win_installer/dictionaries/fragment_stddict.iss
+++ b/packages/win_installer/dictionaries/fragment_stddict.iss
@@ -1,44 +1,9 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
#include "fragment_dictbase.iss"
[Setup]
OutputBaseFilename=Aegisub-3.0-dict-{#LANGCODE}
VersionInfoDescription=Aegisub 3.0 {#LANGNAME} dictionary
-
[Files]
Source: src\dictionaries\{#LANGCODE}.aff; DestDir: {app}\dictionaries; Flags: ignoreversion; Components: dic/{#LANGCODE}
Source: src\dictionaries\{#LANGCODE}.dic; DestDir: {app}\dictionaries; Flags: ignoreversion; Components: dic/{#LANGCODE}
@@ -54,4 +19,3 @@ Name: dic/{#LANGCODE}; Description: {#LANGNAME} dictionary; Types: full
Name: th; Description: Thesaurus; Types: full
Name: th/{#LANGCODE}; Description: {#LANGNAME} thesaurus; Types: full
#endif
-
diff --git a/packages/win_installer/fragment_assdraw.iss b/packages/win_installer/fragment_assdraw.iss
deleted file mode 100644
index 2acd41076..000000000
--- a/packages/win_installer/fragment_assdraw.iss
+++ /dev/null
@@ -1,43 +0,0 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
-[Files]
-; ASSDraw3
-Source: src\ASSDraw3.exe; DestDir: {app}; Flags: ignoreversion
-Source: src\ASSDraw3.chm; DestDir: {app}; Flags: ignoreversion
-
-[Icons]
-Name: {commonprograms}\ASSDraw3; Filename: {app}\ASSDraw3.exe; WorkingDir: {app}; IconIndex: 0; Flags: createonlyiffileexists; Comment: Create vector drawings for ASS-format subtitles
-
diff --git a/packages/win_installer/fragment_associations.iss b/packages/win_installer/fragment_associations.iss
index 04529dadf..15567fb61 100644
--- a/packages/win_installer/fragment_associations.iss
+++ b/packages/win_installer/fragment_associations.iss
@@ -1,38 +1,3 @@
-; Copyright (c) 2007-2011, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
[Files]
DestDir: {commontemplates}; Source: template.ass; DestName: Aegisub.ass
diff --git a/packages/win_installer/fragment_automation.iss b/packages/win_installer/fragment_automation.iss
index 00e3f545f..c754c4752 100644
--- a/packages/win_installer/fragment_automation.iss
+++ b/packages/win_installer/fragment_automation.iss
@@ -1,63 +1,64 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
; This file declares all installables related to Aegisub Automation
[Files]
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\karaoke-auto-leadin.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\macro-1-edgeblur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\macro-2-mkfullwitdh.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\strip-tags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\demos; Source: ..\..\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\demos; Source: ..\..\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
-DestDir: {app}\automation\include; Source: ..\..\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly
+DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\karaoke-auto-leadin.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: {#SOURCE_ROOT}\automation\autoload\strip-tags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+
+DestDir: {app}\automation\demos; Source: {#SOURCE_ROOT}\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
+DestDir: {app}\automation\demos; Source: {#SOURCE_ROOT}\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
+
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: {#SOURCE_ROOT}\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: {#SOURCE_ROOT}\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+
+#ifdef DEPCTRL
+; DepCtrl
+DestDir: {userappdata}\Aegisub\automation\include\l0; Source: {#DEPS_DIR}\DependencyControl\modules\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\autoload; Source: {#DEPS_DIR}\DependencyControl\macros\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include; Source: {#DEPS_DIR}\Yutils\src\Yutils.lua; Flags: ignoreversion; Components: macros\modules\yutils
+DestDir: {userappdata}\Aegisub\automation\include; Source: {#DEPS_DIR}\luajson\lua\*; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\luajson
+
+DestDir: {userappdata}\Aegisub\automation\include\requireffi; Source: {#DEPS_DIR}\ffi-experiments\build\requireffi\requireffi.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\BM\BadMutex; Source: {#DEPS_DIR}\ffi-experiments\build\bad-mutex\BadMutex.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\BM; Source: {#DEPS_DIR}\ffi-experiments\build\bad-mutex\BadMutex.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\PT\PreciseTimer; Source: {#DEPS_DIR}\ffi-experiments\build\precise-timer\PreciseTimer.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\PT; Source: {#DEPS_DIR}\ffi-experiments\build\precise-timer\PreciseTimer.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\DM\DownloadManager; Source: {#DEPS_DIR}\ffi-experiments\build\download-manager\DownloadManager.dll; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+DestDir: {userappdata}\Aegisub\automation\include\DM; Source: {#DEPS_DIR}\ffi-experiments\build\download-manager\DownloadManager.lua; Flags: ignoreversion recursesubdirs createallsubdirs; Components: macros\modules\depctrl
+
+[Dirs]
+Name: {userappdata}\Aegisub\automation\test\DepUnit\automation; Components: macros\modules\depctrl;
+Name: {userappdata}\Aegisub\automation\test\DepUnit\modules; Components: macros\modules\depctrl;
+Name: {userappdata}\Aegisub\automation\schema\DepSqlite\automation; Components: macros\modules\depctrl;
+Name: {userappdata}\Aegisub\automation\schema\DepSqlite\modules; Components: macros\modules\depctrl;
+Name: {userappdata}\Aegisub\automation\lifecycle\DepLifecycle\automation; Components: macros\modules\depctrl;
+Name: {userappdata}\Aegisub\automation\lifecycle\DepLifecycle\modules; Components: macros\modules\depctrl;
+#endif
+
+[InstallDelete]
+Type: files; Name: "{userappdata}\Aegisub\l0.UpdateFeed_*.json"
+Type: files; Name: "{userappdata}\Aegisub\DependencyControl.json"
+Type: files; Name: "{userappdata}\Aegisub\Nudge.json"
+Type: files; Name: "{userappdata}\Aegisub\PasteAILines.json"
+Type: files; Name: "{userappdata}\Aegisub\ASSWipe.json"
+Type: files; Name: "{userappdata}\Aegisub\automation\include\DM\DownloadManager.dll"
+Type: files; Name: "{userappdata}\Aegisub\automation\include\BM\BadMutex.dll"
+Type: files; Name: "{userappdata}\Aegisub\automation\include\PT\PreciseTimer.dll"
diff --git a/packages/win_installer/fragment_beautify_code.iss b/packages/win_installer/fragment_beautify_code.iss
index 25552ecdd..9e7155b91 100644
--- a/packages/win_installer/fragment_beautify_code.iss
+++ b/packages/win_installer/fragment_beautify_code.iss
@@ -1,41 +1,4 @@
[Code]
-(*
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-*)
-
-
function SHAutoComplete(hWnd: Integer; dwFlags: DWORD): Integer;
external 'SHAutoComplete@shlwapi.dll stdcall delayload';
const
@@ -81,4 +44,3 @@ begin
Log('Could not add autocomplete to dir edit box');
end;
end;
-
diff --git a/packages/win_installer/fragment_codecs.iss b/packages/win_installer/fragment_codecs.iss
new file mode 100644
index 000000000..06e73b037
--- /dev/null
+++ b/packages/win_installer/fragment_codecs.iss
@@ -0,0 +1,7 @@
+[Files]
+; Avisynth
+DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\system\DevIL.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\AviSynth.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: {#DEPS_DIR}\AvisynthPlus64\x64\plugins\DirectShowSource.dll; Flags: ignoreversion; Components: main
+; VSFilter
+DestDir: {app}\csri; Source: {#DEPS_DIR}\VSFilter\x64\VSFilter.dll; Flags: ignoreversion; Components: main
diff --git a/packages/win_installer/fragment_codecs_32.iss b/packages/win_installer/fragment_codecs_32.iss
deleted file mode 100644
index 06839e47c..000000000
--- a/packages/win_installer/fragment_codecs_32.iss
+++ /dev/null
@@ -1,43 +0,0 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
-[Files]
-; avisynth
-DestDir: {app}; Source: src\devil.dll; Flags: ignoreversion
-DestDir: {app}; Source: src\avisynth.dll; Flags: ignoreversion
-DestDir: {app}; Source: src\DirectShowSource.dll; Flags: ignoreversion
-; vsfilter
-DestDir: {app}\csri; Source: ..\..\bin\csri\xy-vsfilter-aegisub32.dll; Flags: ignoreversion
-
diff --git a/packages/win_installer/fragment_codecs_64.iss b/packages/win_installer/fragment_codecs_64.iss
deleted file mode 100644
index df1ff6ffa..000000000
--- a/packages/win_installer/fragment_codecs_64.iss
+++ /dev/null
@@ -1,39 +0,0 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
-[Files]
-; vsfilter
-DestDir: {app}\csri; Source: ..\..\bin\csri\xy-vsfilter-aegisub64.dll; Flags: ignoreversion
-
diff --git a/packages/win_installer/fragment_mainprogram.iss b/packages/win_installer/fragment_mainprogram.iss
index 41ac0d036..003efde7d 100644
--- a/packages/win_installer/fragment_mainprogram.iss
+++ b/packages/win_installer/fragment_mainprogram.iss
@@ -1,50 +1,29 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
+[Components]
+Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed
+Name: "macros"; Description: "Automation Scripts"; Types: full
+Name: "macros\bundled"; Description: "Bundled macros"; Types: full
+Name: "macros\demos"; Description: "Example macros/Demos"; Types: full
+#ifdef DEPCTRL
+Name: "macros\modules"; Description: "Modules"; Types: full
+Name: "macros\modules\depctrl"; Description: "DependencyControl"; Types: full
+Name: "macros\modules\yutils"; Description: "YUtils"; Types: full
+Name: "macros\modules\luajson"; Description: "LuaJSON"; Types: full
+#endif
+Name: "dictionaries"; Description: "Spellcheck Dictionaries"; Types: full
+Name: "dictionaries\en_US"; Description: "English (US)"; Types: full
+Name: "translations"; Description: "Aegisub Translations"; Types: full
[Tasks]
Name: "startmenuicon"; Description: "{cm:StartMenuIcon}"; GroupDescription: "{cm:AdditionalIcons}"
-Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "checkforupdates"; Description: "{cm:CheckForUpdates}"; GroupDescription: "{cm:UpdatesGroup}"
[Files]
; main
-DestDir: {app}; Source: ..\..\bin\aegisub{#ARCH}.exe; Flags: ignoreversion
-DestDir: {app}; Source: license.txt; Flags: ignoreversion; Tasks: ; Languages:
+DestDir: {app}; Source: "{#BUILD_ROOT}\src\aegisub.exe"; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: "{#INSTALLER_DIR}\license.txt"; Flags: ignoreversion; Components: main
[Icons]
Name: {commonprograms}\Aegisub; Filename: {app}\aegisub{#ARCH}.exe; WorkingDir: {app}; IconIndex: 0; Tasks: startmenuicon; Comment: Create and edit subtitle files
-Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\Aegisub; Filename: {app}\aegisub{#ARCH}.exe; WorkingDir: {app}; IconIndex: 0; Tasks: quicklaunchicon; Comment: Create and edit subtitle files
[Registry]
; Register in App Paths so the user can conveniently enter 'aegisub' in their Run box
@@ -53,3 +32,7 @@ Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\aegisub
[Run]
Filename: {app}\aegisub{#ARCH}.exe; Description: {cm:LaunchProgram,Aegisub}; Flags: nowait postinstall skipifsilent
+
+[InstallDelete]
+Type: files; Name: "{app}\ffms2_64.dll"
+Type: files; Name: "{app}\ffms2_32.dll"
diff --git a/packages/win_installer/fragment_migrate_code.iss b/packages/win_installer/fragment_migrate_code.iss
index 7be07c916..2ba53ffdd 100644
--- a/packages/win_installer/fragment_migrate_code.iss
+++ b/packages/win_installer/fragment_migrate_code.iss
@@ -1,41 +1,4 @@
[Code]
-(*
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-*)
-
-
var
HasLegacyVersion: Boolean;
LegacyStartMenuFolder: string;
@@ -68,7 +31,7 @@ end;
function InitializeSetupMigration: Boolean;
begin
LegacyStartMenuFolder := 'Aegisub';
- LegacyInstallFolder := ExpandConstant('{pf}\Aegisub');
+ LegacyInstallFolder := ExpandConstant('{commonpf32}\Aegisub');
LegacyVersionNumber := '1.x';
try
@@ -390,9 +353,3 @@ begin
CleanUpOldVersion;
end;
end;
-
-
-
-
-
-
diff --git a/packages/win_installer/fragment_opengl.iss b/packages/win_installer/fragment_opengl.iss
deleted file mode 100644
index 21cb3ee14..000000000
--- a/packages/win_installer/fragment_opengl.iss
+++ /dev/null
@@ -1,68 +0,0 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
-; Check whether the user has a possibly redundant OPENGL32.DLL file in his program folder and offer to remove it
-
-[InstallDelete]
-Type: files; Name: {app}\opengl32.dll; Tasks: RemoveRedundantOpenGL
-Type: files; Name: {app}\opengl32.txt; Tasks: RemoveRedundantOpenGL
-Type: files; Name: {app}\opengl32.lib; Tasks: RemoveRedundantOpenGL
-
-[Tasks]
-Name: RemoveRedundantOpenGL; Description: Remove OPENGL32.DLL from Aegisub folder; Check: OpenGLdllPresent
-
-[Messages]
-WizardSelectTasks=Select Additional Tasks
-SelectTasksDesc=Which additional tasks should be performed?
-SelectTasksLabel2=You appear to have a Mesa3D OPENGL32.DLL file installed in your Aegisub directory. This file has previously helped make video display more stable, but is no longer needed because Aegisub's code has been made more robust.%nThis file will be removed by default, but if you want to keep it you can unselect the option below.
-
-[Code]
-function OpenGLdllPresent: Boolean;
-begin
- try
- Result :=
- FileExists(ExpandConstant('{app}\opengl32.dll'))
- // MD5 hash of the DLL distributed on Aegisub's forum
- and (GetMD5OfFile(ExpandConstant('{app}\opengl32.dll')) = 'f928a03f4b265658589be951cbd09a27')
- ;
- except
- Result := False;
- end;
-end;
-[/Code]
-
-
-
-
diff --git a/packages/win_installer/fragment_runtimes.iss b/packages/win_installer/fragment_runtimes.iss
new file mode 100644
index 000000000..ae71daf74
--- /dev/null
+++ b/packages/win_installer/fragment_runtimes.iss
@@ -0,0 +1,7 @@
+; This file implements checking for and installing runtime libraries for Aegisub
+
+[Files]
+DestDir: {tmp}; Source: "{#DEPS_DIR}\VC_redist\VC_redist.x{#ARCH}.exe"; Flags: nocompression deleteafterinstall
+
+[Run]
+Filename: {tmp}\vcredist_{#ARCH}.exe; StatusMsg: {cm:InstallRuntime}; Parameters: "/install /quiet /norestart"
diff --git a/packages/win_installer/fragment_setupbase.iss b/packages/win_installer/fragment_setupbase.iss
index 7a517304b..1d4529587 100644
--- a/packages/win_installer/fragment_setupbase.iss
+++ b/packages/win_installer/fragment_setupbase.iss
@@ -1,38 +1,10 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
+#define CURRENT_YEAR GetDateTimeString('yyyy', '', '');
+#define BUILD_ROOT GetEnv('BUILD_ROOT')
+#define SOURCE_ROOT GetEnv('SOURCE_ROOT')
+#define INSTALLER_DIR SOURCE_ROOT + "\packages\win_installer"
+#define DEPS_DIR BUILD_ROOT + "\installer-deps"
-#include "../../build/git_version.h"
+#include BUILD_ROOT + "\git_version.h"
[Setup]
AppName=Aegisub
@@ -40,15 +12,15 @@ AppVerName=Aegisub {#BUILD_GIT_VERSION_STRING}
AppVersion={#INSTALLER_VERSION}
AppPublisher=Aegisub Team
AppPublisherURL=http://www.aegisub.org/
-AppSupportURL=http://forum.aegisub.org/
-AppCopyright= 2005-2014 The Aegisub Team
+AppSupportURL=https://github.com/TypesettingTools/Aegisub/issues
+AppCopyright=2005-{#CURRENT_YEAR} The Aegisub Team
VersionInfoVersion={#INSTALLER_VERSION}
DefaultGroupName=Aegisub
AllowNoIcons=true
-OutputDir=output
+OutputDir={#BUILD_ROOT}
Compression=lzma/ultra64
SolidCompression=true
-MinVersion=0,5.0
+MinVersion=6.1sp1
ShowLanguageDialog=yes
LanguageDetectionMethod=none
DisableProgramGroupPage=yes
@@ -56,55 +28,58 @@ UsePreviousGroup=yes
UsePreviousSetupType=no
UsePreviousAppDir=yes
UsePreviousTasks=no
+UsedUserAreasWarning=no
UninstallDisplayIcon={app}\aegisub{#ARCH}.exe
; Default to a large welcome bitmap, suitable for large fonts
; The normal fonts version is selected by code below
-WizardImageFile=welcome-large.bmp
-WizardSmallImageFile=aegisub-large.bmp
+WizardImageFile={#INSTALLER_DIR}\welcome-large.bmp
+WizardSmallImageFile={#INSTALLER_DIR}\aegisub-large.bmp
OutputBaseFilename=Aegisub-{#BUILD_GIT_VERSION_STRING}-{#ARCH}
VersionInfoDescription=Aegisub {#BUILD_GIT_VERSION_STRING} {#ARCH}-bit
[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
-Name: "bg"; MessagesFile: "compiler:Languages\Bulgarian.isl"
Name: "ca"; MessagesFile: "compiler:Languages\Catalan.isl"
Name: "cz"; MessagesFile: "compiler:Languages\Czech.isl"
Name: "da"; MessagesFile: "compiler:Languages\Danish.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"
-Name: "el"; MessagesFile: "compiler:Languages\Greek.isl"
Name: "es"; MessagesFile: "compiler:Languages\Spanish.isl"
-Name: "eu"; MessagesFile: "compiler:Languages\Basque.isl"
Name: "fi"; MessagesFile: "compiler:Languages\Finnish.isl"
Name: "fr_FR"; MessagesFile: "compiler:Languages\French.isl"
-Name: "gl"; MessagesFile: "compiler:Languages\Galician.isl"
-Name: "hu"; MessagesFile: "compiler:Languages\Hungarian.isl"
-Name: "id"; MessagesFile: "compiler:Languages\Indonesian.isl"
Name: "it"; MessagesFile: "compiler:Languages\Italian.isl"
Name: "ja"; MessagesFile: "compiler:Languages\Japanese.isl"
-Name: "ko"; MessagesFile: "compiler:Languages\Korean.isl"
-Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"
Name: "pl"; MessagesFile: "compiler:Languages\Polish.isl"
Name: "pt_BR"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
Name: "pt_PT"; MessagesFile: "compiler:Languages\Portuguese.isl"
Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl"
-Name: "sr_RS"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
-Name: "sr_RS_latin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
Name: "uk_UA"; MessagesFile: "compiler:Languages\Ukrainian.isl"
-Name: "zh_CN"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
-Name: "zh_TW"; MessagesFile: "compiler:Languages\ChineseTraditional.isl"
+#ifdef UNOFFICIAL_LANGUAGES
+; These languages are not shipped with InnoSetup by default and would need to be fetched from https://jrsoftware.org/files/istrans/
+;Name: "bg"; MessagesFile: "compiler:Languages\Bulgarian.isl"
+;Name: "el"; MessagesFile: "compiler:Languages\Greek.isl"
+;Name: "eu"; MessagesFile: "compiler:Languages\Basque.isl"
+;Name: "gl"; MessagesFile: "compiler:Languages\Galician.isl"
+;Name: "hu"; MessagesFile: "compiler:Languages\Hungarian.isl"
+;Name: "id"; MessagesFile: "compiler:Languages\Indonesian.isl"
+;Name: "ko"; MessagesFile: "compiler:Languages\Korean.isl"
+;Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"
+;Name: "sr_RS"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
+;Name: "sr_RS_latin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
+;Name: "zh_CN"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
+;Name: "zh_TW"; MessagesFile: "compiler:Languages\ChineseTraditional.isl"
+#endif
[Files]
; small bitmaps (used by beautify code)
-DestDir: {tmp}; Flags: dontcopy; Source: welcome.bmp
-DestDir: {tmp}; Flags: dontcopy; Source: aegisub.bmp
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\welcome.bmp
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\aegisub.bmp
; uninstall data (used by migration code)
-DestDir: {tmp}; Flags: dontcopy; Source: legacy_filelist.txt
-DestDir: {tmp}; Flags: dontcopy; Source: legacy_dirlist.txt
-DestDir: {tmp}; Flags: dontcopy; Source: legacy_locales.txt
-DestDir: {tmp}; Flags: dontcopy; Source: legacy_shortcutlist.txt
-DestDir: {tmp}; Flags: dontcopy; Source: old_filelist.txt
-DestDir: {tmp}; Flags: dontcopy; Source: old_dirlist.txt
-DestDir: {tmp}; Flags: dontcopy; Source: old_locales.txt
-DestDir: {tmp}; Flags: dontcopy; Source: old_shortcutlist.txt
-
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_filelist.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_dirlist.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_locales.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\legacy_shortcutlist.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_filelist.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_dirlist.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_locales.txt
+DestDir: {tmp}; Flags: dontcopy; Source: {#INSTALLER_DIR}\old_shortcutlist.txt
diff --git a/packages/win_installer/fragment_shell_code.iss b/packages/win_installer/fragment_shell_code.iss
index 259d45a06..53cea58a9 100644
--- a/packages/win_installer/fragment_shell_code.iss
+++ b/packages/win_installer/fragment_shell_code.iss
@@ -1,40 +1,4 @@
[Code]
-(*
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-*)
-
// IShellLink interface and CLSID taken from sample
const
MAX_PATH = 260;
@@ -121,4 +85,3 @@ begin
Result := '';
end;
end;
-
diff --git a/packages/win_installer/fragment_spelling.iss b/packages/win_installer/fragment_spelling.iss
index 1ce979d8f..331f3eb29 100644
--- a/packages/win_installer/fragment_spelling.iss
+++ b/packages/win_installer/fragment_spelling.iss
@@ -1,41 +1,5 @@
-; Copyright (c) 2007-2011, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
; This file declares all installables related to spell checking and thesaurii in Aegisub
[Files]
-Source: src\dictionaries\en_US.aff; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion
-Source: src\dictionaries\en_US.dic; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion
-
+Source: {#DEPS_DIR}\dictionaries\en_US.aff; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion
+Source: {#DEPS_DIR}\dictionaries\en_US.dic; DestDir: {app}\dictionaries; Flags: skipifsourcedoesntexist ignoreversion
diff --git a/packages/win_installer/fragment_strings.iss b/packages/win_installer/fragment_strings.iss
index f558865da..f572d8618 100644
--- a/packages/win_installer/fragment_strings.iss
+++ b/packages/win_installer/fragment_strings.iss
@@ -1,44 +1,57 @@
[CustomMessages]
InstallRuntime=Installing runtime libraries...
+pt_PT.InstallRuntime=A instalar livrarias de runtime...
+uk_UA.InstallRuntime=Встановлюю бібліотеки реального часу...
+#ifdef UNOFFICIAL_LANGUAGES
el.InstallRuntime=Εγκατάσταση βιβλιοθηκών...
eu.InstallRuntime=Runtime liburutegiak ezartzen...
id.InstallRuntime=Memasang runtime libraries...
-pt_PT.InstallRuntime=A instalar livrarias de runtime...
-uk_UA.InstallRuntime=Встановлюю бібліотеки реального часу...
zh_CN.InstallRuntime=正在安装运行库……
zh_TW.InstallRuntime=正在安裝運行庫……
+#endif
+
StartMenuIcon=Create a start menu icon
+pt_PT.StartMenuIcon=Criar ícone no menu iniciar
+uk_UA.StartMenuIcon=Створити піктограму в меню Запустити
+#ifdef UNOFFICIAL_LANGUAGES
el.StartMenuIcon=Δημιουργία εικονιδίου στο μενού έναρξης
eu.StartMenuIcon=Sortu hasiera menuko ikur bat
id.StartMenuIcon=Buat ikon di menu awal
-pt_PT.StartMenuIcon=Criar ícone no menu iniciar
-uk_UA.StartMenuIcon=Створити піктограму в меню Запустити
zh_CN.StartMenuIcon=创建开始菜单图标
zh_TW.StartMenuIcon=創建開始功能表圖示
+#endif
+
CheckForUpdates=Automatically check for new versions of Aegisub
+pt_PT.CheckForUpdates=Verifica automaticamente a existência de novas versões do Aegisub
+uk_UA.CheckForUpdates=Автоматично перевіряти Aegisub на нові версії
+#ifdef UNOFFICIAL_LANGUAGES
el.CheckForUpdates=Αυτόματος έλεγχος για καινούριες εκδόσεις του Aegisub
eu.CheckForUpdates=Berezgaitasunez egiaztatu Aegisub-ren bertsio berririk dagoen
id.CheckForUpdates=Otomatis cek versi terbaru Aegisub
-pt_PT.CheckForUpdates=Verifica automaticamente a existência de novas versões do Aegisub
-uk_UA.CheckForUpdates=Автоматично перевіряти Aegisub на нові версії
zh_CN.CheckForUpdates=自动检查Aegisub的新版本
zh_TW.CheckForUpdates=自動檢查Aegisub的新版本
+#endif
+
UpdatesGroup=Update Checker:
+pt_PT.UpdatesGroup=Verificar Actualizações:
+uk_UA.UpdatesGroup=Модуль Перевірки на Оновлення:
+#ifdef UNOFFICIAL_LANGUAGES
el.UpdatesGroup=Έλεγχος Ενημερώσεων:
eu.UpdatesGroup=Eguneraketa Egiaztatzailea:
id.UpdatesGroup=Pemeriksa Pembaharuan
-pt_PT.UpdatesGroup=Verificar Actualizações:
-uk_UA.UpdatesGroup=Модуль Перевірки на Оновлення:
zh_CN.UpdatesGroup=自动更新:
zh_TW.UpdatesGroup=自動更新:
+#endif
; Replacement for License page, no need to bother the user with legal mumbo-jumbo
[Messages]
WelcomeLabel2=This will install Aegisub {#BUILD_GIT_VERSION_STRING} on your computer.%n%nAegisub is covered by the GNU General Public License version 2. This means you may use the application for any purpose without charge, but that no warranties of any kind are given either.%n%nSee the Aegisub website for information on obtaining the source code.
+pt_PT.WelcomeLabel2=Irá ser instalado no seu computador a versão {#BUILD_GIT_VERSION_STRING} do Aegisub.%n%nO Aegisub está protegido sob a Licença Pública Geral GNU (GPL version 2). O que significa que poderá fazer uso da aplicação para qualquer propósito, sem que seja cobrado, mas não serão dadas quaisquer tipos de garantias.%n%nVeja a página do Aegisub para mais informações sobre como obter o código-fonte.
+uk_UA.WelcomeLabel2=Зараз буде встанвлено Aegisub {#BUILD_GIT_VERSION_STRING} на ваш комп'ютер.%n%nAegisub захищено універсальною громадською ліцензією GNU, версія 2. Це означає, що ви можете використосувати цю програму для будь яких цілей безкоштовно, але, в будь-якому випадку, ми не даємо жодних гарантій.%n%nДивіться сайт Aegisub для інформації щодо отримання вихідного коду.
+#ifdef UNOFFICIAL_LANGUAGES
el.WelcomeLabel2=Αυτό θα εγκαταστήσει το Aegisub {#BUILD_GIT_VERSION_STRING} στον υπολογιστή σας.%n%nΤο Aegisub καλύπτεται από τον άδεια GNU General Public License version 2. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε την εφαρμογή για κάθε σκοπό χωρίς χρέωση, αλλά δεν υπάρχουν εγγυήσεις καμίας φύσης.%n%nΔείτε την ιστοσελίδα του Aegisub για πληροφορίες σχετικά με την απόκτηση του πηγαίου κώδικα.
eu.WelcomeLabel2=Honek Aegisub {#BUILD_GIT_VERSION_STRING} ezarriko du zure ordenagailuan.%n%nAegisub GNU Baimen Publiko Orokorra 2. bertsioa Baimenak estalia dago. Honek esanahi du aplikazio hau edozein asmotarako erabili dezakezula ordaindu behar izan gabe, baina ez da inolako berme motarik ematen.%n%nIkusi Aegisub webgunea iturburu kodea lortzeko argibideetarako.
id.WelcomeLabel2=Ini akan memasang Aegisub {#BUILD_GIT_VERSION_STRING} di komputer Anda.%n%nAegisub dilindungi oleh Lisensi Publik Umum GNU versi 2. Artinya Anda bisa menggunakan aplikasi ini untuk tujuan apa pun tanpad dipungut biaya, tapi tidak ada jaminan yang bisa diberikan.%n%nLihat laman situs Aegisub untuk memperoleh informasi sumber kode.
-pt_PT.WelcomeLabel2=Irá ser instalado no seu computador a versão {#BUILD_GIT_VERSION_STRING} do Aegisub.%n%nO Aegisub está protegido sob a Licença Pública Geral GNU (GPL version 2). O que significa que poderá fazer uso da aplicação para qualquer propósito, sem que seja cobrado, mas não serão dadas quaisquer tipos de garantias.%n%nVeja a página do Aegisub para mais informações sobre como obter o código-fonte.
-uk_UA.WelcomeLabel2=Зараз буде встанвлено Aegisub {#BUILD_GIT_VERSION_STRING} на ваш комп'ютер.%n%nAegisub захищено універсальною громадською ліцензією GNU, версія 2. Це означає, що ви можете використосувати цю програму для будь яких цілей безкоштовно, але, в будь-якому випадку, ми не даємо жодних гарантій.%n%nДивіться сайт Aegisub для інформації щодо отримання вихідного коду.
zh_CN.WelcomeLabel2=将会在您的电脑上安装Aegisub {#BUILD_GIT_VERSION_STRING} 。%n%n Aegisub适用于GNU通用公共许可证第二版(GPLv2),这意味着您可以将该应用程序用于任何目的而不需要支付费用,但同时也不会得到任何形式的担保。%n%n您可以到Aegisub官网获取源代码信息。
zh_TW.WelcomeLabel2=將會在您的電腦上安裝Aegisub {#BUILD_GIT_VERSION_STRING} 。%n%n Aegisub適用於GNU通用公共許可證第二版(GPLv2),這意味著您可以將該應用程式用於任何目的而不需要支付費用,但同時也不會得到任何形式的擔保。%n%n您可以到Aegisub官網獲取原始程式碼資訊。
+#endif
diff --git a/packages/win_installer/fragment_translations.iss b/packages/win_installer/fragment_translations.iss
index 2c0f302c7..2e6098711 100644
--- a/packages/win_installer/fragment_translations.iss
+++ b/packages/win_installer/fragment_translations.iss
@@ -1,98 +1,64 @@
-; Copyright (c) 2007-2009, Niels Martin Hansen
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-;
-; * Redistributions of source code must retain the above copyright notice,
-; this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright notice,
-; this list of conditions and the following disclaimer in the documentation
-; and/or other materials provided with the distribution.
-; * Neither the name of the Aegisub Group nor the names of its contributors
-; may be used to endorse or promote products derived from this software
-; without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-; POSSIBILITY OF SUCH DAMAGE.
-;
-; -----------------------------------------------------------------------------
-;
-; AEGISUB
-;
-; Website: http://www.aegisub.org/
-; Contact: mailto:nielsm@indvikleren.dk
-;
-
-
-; This file declares everything related to installable translations of Aegisub
+; This file declares everything related to installable translations of Aegisub
[Files]
; localization (commented out ones are out of date; some don't have wxstd.mo)
-Source: ..\..\po\ar.mo; DestDir: {app}\locale\ar; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-ar.mo; DestDir: {app}\locale\ar; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\bg.mo; DestDir: {app}\locale\bg; DestName: aegisub.mo; Flags: ignoreversion
+#ifdef ENABLE_TRANSLATIONS
+Source: {#BUILD_ROOT}\po\ar.mo; DestDir: {app}\locale\ar; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-ar.mo; DestDir: {app}\locale\ar; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\bg.mo; DestDir: {app}\locale\bg; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
; Missing wxstd for Bulgarian
-Source: ..\..\po\ca.mo; DestDir: {app}\locale\ca; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-ca.mo; DestDir: {app}\locale\ca; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\cs.mo; DestDir: {app}\locale\cs; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-cs.mo; DestDir: {app}\locale\cs; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\da.mo; DestDir: {app}\locale\da; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-da.mo; DestDir: {app}\locale\da; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\de.mo; DestDir: {app}\locale\de; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-de.mo; DestDir: {app}\locale\de; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\el.mo; DestDir: {app}\locale\el; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-el.mo; DestDir: {app}\locale\el; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\es.mo; DestDir: {app}\locale\es; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-es.mo; DestDir: {app}\locale\es; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\eu.mo; DestDir: {app}\locale\eu; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-eu.mo; DestDir: {app}\locale\eu; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\fa.mo; DestDir: {app}\locale\fa; DestName: aegisub.mo; Flags: ignoreversion
+Source: {#BUILD_ROOT}\po\ca.mo; DestDir: {app}\locale\ca; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-ca.mo; DestDir: {app}\locale\ca; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\cs.mo; DestDir: {app}\locale\cs; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-cs.mo; DestDir: {app}\locale\cs; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\da.mo; DestDir: {app}\locale\da; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-da.mo; DestDir: {app}\locale\da; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\de.mo; DestDir: {app}\locale\de; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-de.mo; DestDir: {app}\locale\de; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\el.mo; DestDir: {app}\locale\el; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-el.mo; DestDir: {app}\locale\el; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\es.mo; DestDir: {app}\locale\es; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-es.mo; DestDir: {app}\locale\es; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\eu.mo; DestDir: {app}\locale\eu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-eu.mo; DestDir: {app}\locale\eu; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\fa.mo; DestDir: {app}\locale\fa; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
; Farsi wxstd missing
-;Source: src\mo\wxstd-fa.mo; DestDir: {app}\locale\fa; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\fi.mo; DestDir: {app}\locale\fi; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-fi.mo; DestDir: {app}\locale\fi; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\fr_FR.mo; DestDir: {app}\locale\fr_FR; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-fr.mo; DestDir: {app}\locale\fr_FR; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\gl.mo; DestDir: {app}\locale\gl; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-gl_ES.mo; DestDir: {app}\locale\gl; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\hu.mo; DestDir: {app}\locale\hu; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-hu.mo; DestDir: {app}\locale\hu; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\id.mo; DestDir: {app}\locale\id; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-id.mo; DestDir: {app}\locale\id; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\it.mo; DestDir: {app}\locale\it; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-it.mo; DestDir: {app}\locale\it; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\ja.mo; DestDir: {app}\locale\ja; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-ja.mo; DestDir: {app}\locale\ja; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\ko.mo; DestDir: {app}\locale\ko; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-ko_KR.mo; DestDir: {app}\locale\ko; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\nl.mo; DestDir: {app}\locale\nl; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-nl.mo; DestDir: {app}\locale\nl; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\pl.mo; DestDir: {app}\locale\pl; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-pl.mo; DestDir: {app}\locale\pl; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\pt_PT.mo; DestDir: {app}\locale\pt_PT; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-pt.mo; DestDir: {app}\locale\pt_PT; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\ru.mo; DestDir: {app}\locale\ru; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-ru.mo; DestDir: {app}\locale\ru; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\sr_RS.mo; DestDir: {app}\locale\sr_RS; DestName: aegisub.mo; Flags: ignoreversion
-Source: ..\..\po\sr_RS@latin.mo; DestDir: {app}\locale\sr_RS@latin; DestName: aegisub.mo; Flags: ignoreversion
+;Source: src\mo\wxstd-fa.mo; DestDir: {app}\locale\fa; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\fi.mo; DestDir: {app}\locale\fi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-fi.mo; DestDir: {app}\locale\fi; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\fr_FR.mo; DestDir: {app}\locale\fr_FR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-fr.mo; DestDir: {app}\locale\fr_FR; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\gl.mo; DestDir: {app}\locale\gl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-gl_ES.mo; DestDir: {app}\locale\gl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\hu.mo; DestDir: {app}\locale\hu; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-hu.mo; DestDir: {app}\locale\hu; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\id.mo; DestDir: {app}\locale\id; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-id.mo; DestDir: {app}\locale\id; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\it.mo; DestDir: {app}\locale\it; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-it.mo; DestDir: {app}\locale\it; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\ja.mo; DestDir: {app}\locale\ja; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-ja.mo; DestDir: {app}\locale\ja; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\ko.mo; DestDir: {app}\locale\ko; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-ko_KR.mo; DestDir: {app}\locale\ko; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\nl.mo; DestDir: {app}\locale\nl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-nl.mo; DestDir: {app}\locale\nl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\pl.mo; DestDir: {app}\locale\pl; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-pl.mo; DestDir: {app}\locale\pl; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-pt_BR.mo; DestDir: {app}\locale\pt_BR; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\pt_PT.mo; DestDir: {app}\locale\pt_PT; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-pt.mo; DestDir: {app}\locale\pt_PT; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\ru.mo; DestDir: {app}\locale\ru; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-ru.mo; DestDir: {app}\locale\ru; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\sr_RS.mo; DestDir: {app}\locale\sr_RS; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\sr_RS@latin.mo; DestDir: {app}\locale\sr_RS@latin; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
; Missing wxstd for Serbian
-Source: ..\..\po\uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\vi.mo; DestDir: {app}\locale\vi; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-vi.mo; DestDir: {app}\locale\vi; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: wxstd.mo; Flags: ignoreversion
-Source: ..\..\po\zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: aegisub.mo; Flags: ignoreversion
-Source: src\mo\wxstd-zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: wxstd.mo; Flags: ignoreversion
-
+Source: {#BUILD_ROOT}\po\uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-uk_UA.mo; DestDir: {app}\locale\uk_UA; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\vi.mo; DestDir: {app}\locale\vi; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-vi.mo; DestDir: {app}\locale\vi; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-zh_CN.mo; DestDir: {app}\locale\zh_CN; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+Source: {#BUILD_ROOT}\po\zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: aegisub.mo; Flags: ignoreversion; Components: translations
+Source: src\mo\wxstd-zh_TW.mo; DestDir: {app}\locale\zh_TW; DestName: wxstd.mo; Flags: ignoreversion; Components: translations
+#endif
diff --git a/packages/win_installer/license.txt b/packages/win_installer/license.txt
index 732874e53..d78767c5c 100644
--- a/packages/win_installer/license.txt
+++ b/packages/win_installer/license.txt
@@ -1,4 +1,4 @@
-Copyright (c) 2005-2014, the Aegisub Team.
+Copyright (c) 2005-2020, the Aegisub Team.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
diff --git a/packages/win_installer/portable/create-portable-64.bat b/packages/win_installer/portable/create-portable-64.bat
deleted file mode 100644
index 27e973d82..000000000
--- a/packages/win_installer/portable/create-portable-64.bat
+++ /dev/null
@@ -1,23 +0,0 @@
-@echo off
-
-echo Gathering files
-xcopy ..\..\..\automation\autoload\*.lua aegisub-portable\automation\autoload\ > NUL
-xcopy ..\..\..\automation\demos\*.lua aegisub-portable\automation\demos\ > NUL
-xcopy ..\..\..\automation\include\*.lua aegisub-portable\automation\include\ > NUL
-xcopy ..\..\..\bin\aegisub64.exe aegisub-portable\ > NUL
-xcopy ..\..\..\bin\ffms2_64.dll aegisub-portable\ > NUL
-xcopy ..\src\ASSDraw3.chm aegisub-portable\ > NUL
-xcopy ..\src\ASSDraw3.exe aegisub-portable\ > NUL
-xcopy ..\src\dictionaries\en_US.aff aegisub-portable\dictionaries\ > NUL
-xcopy ..\src\dictionaries\en_US.dic aegisub-portable\dictionaries\ > NUL
-xcopy ..\src\vsfilter-aegisub64.dll aegisub-portable\csri\ > NUL
-xcopy ..\src\x64\Microsoft.VC90.CRT\* aegisub-portable\Microsoft.VC90.CRT\ > NUL
-xcopy config.json aegisub-portable\ > NUL
-
-echo Creating SFX
-del ..\output\aegisub-3.1.0-portable-64.exe
-WinRAR a -sfx -s -m5 -ep1 -r -zportable-comment.txt -iimgside-logo.bmp -iiconicon.ico ..\output\aegisub-3.1.0-portable-64.exe aegisub-portable\
-
-echo Removing temp dir
-rmdir /S /Q aegisub-portable > NUL
-
diff --git a/packages/win_installer/portable/create-portable.bat b/packages/win_installer/portable/create-portable.bat
index eb624b86e..4d42b6c51 100644
--- a/packages/win_installer/portable/create-portable.bat
+++ b/packages/win_installer/portable/create-portable.bat
@@ -4,24 +4,19 @@ echo Gathering files
xcopy ..\..\..\automation\autoload\*.lua aegisub-portable\automation\autoload\ > NUL
xcopy ..\..\..\automation\demos\*.lua aegisub-portable\automation\demos\ > NUL
xcopy ..\..\..\automation\include\*.lua aegisub-portable\automation\include\ > NUL
-xcopy ..\..\..\bin\aegisub32.exe aegisub-portable\ > NUL
-xcopy ..\..\..\bin\ffms2.dll aegisub-portable\ > NUL
+xcopy ..\..\..\bin\aegisub64.exe aegisub-portable\ > NUL
+xcopy ..\..\..\bin\ffms2_64.dll aegisub-portable\ > NUL
xcopy ..\src\ASSDraw3.chm aegisub-portable\ > NUL
xcopy ..\src\ASSDraw3.exe aegisub-portable\ > NUL
-xcopy ..\src\DirectShowSource.dll aegisub-portable\ > NUL
-xcopy ..\src\avisynth.dll aegisub-portable\ > NUL
-xcopy ..\src\devil.dll aegisub-portable\ > NUL
xcopy ..\src\dictionaries\en_US.aff aegisub-portable\dictionaries\ > NUL
xcopy ..\src\dictionaries\en_US.dic aegisub-portable\dictionaries\ > NUL
-xcopy ..\src\vsfilter-aegisub32.dll aegisub-portable\csri\ > NUL
-xcopy ..\src\xy-vsfilter-aegisub.dll aegisub-portable\csri\ > NUL
-xcopy ..\src\x86\Microsoft.VC90.CRT\* aegisub-portable\Microsoft.VC90.CRT\ > NUL
+xcopy ..\src\vsfilter-aegisub64.dll aegisub-portable\csri\ > NUL
+xcopy ..\src\x64\Microsoft.VC90.CRT\* aegisub-portable\Microsoft.VC90.CRT\ > NUL
xcopy config.json aegisub-portable\ > NUL
echo Creating SFX
-del ..\output\aegisub-3.1.0-portable.exe
-WinRAR a -sfx -s -m5 -ep1 -r -zportable-comment.txt -iimgside-logo.bmp -iiconicon.ico ..\output\aegisub-3.1.0-portable.exe aegisub-portable\
+del ..\output\aegisub-3.1.0-portable-64.exe
+WinRAR a -sfx -s -m5 -ep1 -r -zportable-comment.txt -iimgside-logo.bmp -iiconicon.ico ..\output\aegisub-3.1.0-portable-64.exe aegisub-portable\
echo Removing temp dir
rmdir /S /Q aegisub-portable > NUL
-
diff --git a/po/LINGUAS b/po/LINGUAS
new file mode 100644
index 000000000..7f49d7af9
--- /dev/null
+++ b/po/LINGUAS
@@ -0,0 +1,29 @@
+ar
+bg
+ca
+cs
+da
+de
+el
+es
+eu
+fa
+fi
+fr_FR
+gl
+hu
+id
+it
+ja
+ko
+nl
+pl
+pt_BR
+pt_PT
+ru
+sr_RS@latin
+sr_RS
+uk_UA
+vi
+zh_CN
+zh_TW
diff --git a/po/Makefile b/po/Makefile
deleted file mode 100644
index 4c7832b6a..000000000
--- a/po/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-.SUFFIXES: .po .mo
-
-PO := $(wildcard $(d)*.po)
-MO := $(PO:po=mo)
-
-ifeq (yes, $(BUILD_DARWIN))
-MO_INSTALLED = $(DESTDIR)$(P_LOCALE)/%.lproj/$(AEGISUB_CATALOG).mo
-else
-MO_INSTALLED = $(DESTDIR)$(P_LOCALE)/%/LC_MESSAGES/$(AEGISUB_CATALOG).mo
-endif
-
-%.mo: %.po
- $(BIN_MSGFMT) -o $@ $<
-
-$(MO_INSTALLED): $(d)%.mo ; $(MKDIR_INSTALL)
-
-all: $(MO)
-install: $(patsubst %.mo, $(MO_INSTALLED), $(notdir $(MO)))
-
-CLEANFILES += $(MO)
-
-include $(TOP)Makefile.target
diff --git a/po/POTFILES b/po/POTFILES
new file mode 100644
index 000000000..233f76faf
--- /dev/null
+++ b/po/POTFILES
@@ -0,0 +1,81 @@
+src/ass_style.cpp
+src/audio_box.cpp
+src/audio_karaoke.cpp
+src/audio_renderer_waveform.cpp
+src/audio_timing_dialogue.cpp
+src/audio_timing_karaoke.cpp
+src/auto4_base.cpp
+src/auto4_lua.cpp
+src/charset_detect.cpp
+src/command/app.cpp
+src/command/audio.cpp
+src/command/automation.cpp
+src/command/command.cpp
+src/command/command.h
+src/command/edit.cpp
+src/command/grid.cpp
+src/command/keyframe.cpp
+src/command/recent.cpp
+src/command/subtitle.cpp
+src/command/timecode.cpp
+src/command/time.cpp
+src/command/tool.cpp
+src/command/video.cpp
+src/dialog_about.cpp
+src/dialog_attachments.cpp
+src/dialog_automation.cpp
+src/dialog_autosave.cpp
+src/dialog_colorpicker.cpp
+src/dialog_dummy_video.cpp
+src/dialog_export.cpp
+src/dialog_export_ebu3264.cpp
+src/dialog_fonts_collector.cpp
+src/dialog_jumpto.cpp
+src/dialog_kara_timing_copy.cpp
+src/dialog_log.cpp
+src/dialog_paste_over.cpp
+src/dialog_progress.cpp
+src/dialog_properties.cpp
+src/dialog_resample.cpp
+src/dialog_search_replace.cpp
+src/dialog_selected_choices.cpp
+src/dialog_selection.cpp
+src/dialog_shift_times.cpp
+src/dialog_spellchecker.cpp
+src/dialog_style_editor.cpp
+src/dialog_style_manager.cpp
+src/dialog_styling_assistant.cpp
+src/dialog_text_import.cpp
+src/dialog_timing_processor.cpp
+src/dialog_translation.cpp
+src/dialog_version_check.cpp
+src/dialog_video_details.cpp
+src/dialog_video_properties.cpp
+src/export_fixstyle.cpp
+src/export_framerate.cpp
+src/ffmpegsource_common.cpp
+src/font_file_lister.cpp
+src/font_file_lister_fontconfig.cpp
+src/font_file_lister_gdi.cpp
+src/grid_column.cpp
+src/hotkey.cpp
+src/main.cpp
+src/menu.cpp
+src/mkv_wrap.cpp
+src/preferences_base.cpp
+src/preferences.cpp
+src/project.cpp
+src/resolution_resampler.cpp
+src/search_replace_engine.cpp
+src/subs_controller.cpp
+src/subs_edit_box.cpp
+src/subs_edit_ctrl.cpp
+src/subtitle_format.cpp
+src/subtitle_format_ebu3264.cpp
+src/subtitles_provider_libass.cpp
+src/timeedit_ctrl.cpp
+src/video_box.cpp
+src/visual_tool.cpp
+src/visual_tool_cross.cpp
+src/visual_tool_drag.cpp
+src/visual_tool_vector_clip.cpp
diff --git a/po/meson.build b/po/meson.build
new file mode 100644
index 000000000..5aae381d1
--- /dev/null
+++ b/po/meson.build
@@ -0,0 +1,4 @@
+i18n = import('i18n')
+# This is currently busted on OSX
+i18n.gettext('aegisub',
+ install_dir: localedir)
diff --git a/src/Makefile b/src/Makefile
deleted file mode 100644
index 6dbe99f52..000000000
--- a/src/Makefile
+++ /dev/null
@@ -1,209 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-PROGRAM += $(d)src
-
-src_CPPFLAGS := -I$(d) -I.. -I$(d)include -I$(TOP)libaegisub/include -I$(TOP)build \
- $(CFLAGS_PTHREAD) $(CFLAGS_FFTW3) $(CFLAGS_ICU) $(CPPFLAGS_BOOST)
-src_CXXFLAGS := $(CXXFLAGS_WX)
-src_LIBS := $(LIBS_GL) $(LIBS_PTHREAD) $(LIBS_WX) $(LIBS_FREETYPE) \
- $(LIBS_LIBASS) $(LIBS_FONTCONFIG) $(LIBS_FFTW3) $(LIBS_BOOST) $(LIBS_ICU)
-src_PCH := $(d)agi_pre.h
-src_INSTALLNAME := $(AEGISUB_COMMAND)
-
-src_OBJ := \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)command/*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)dialog_*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)subtitle_format*.cpp))) \
- $(patsubst %.cpp,%.o,$(sort $(wildcard $(d)visual_tool*.cpp))) \
- $(d)MatroskaParser.o \
- $(d)aegisublocale.o \
- $(d)ass_attachment.o \
- $(d)ass_dialogue.o \
- $(d)ass_entry.o \
- $(d)ass_export_filter.o \
- $(d)ass_exporter.o \
- $(d)ass_file.o \
- $(d)ass_karaoke.o \
- $(d)ass_override.o \
- $(d)ass_parser.o \
- $(d)ass_style.o \
- $(d)ass_style_storage.o \
- $(d)async_video_provider.o \
- $(d)audio_box.o \
- $(d)audio_colorscheme.o \
- $(d)audio_controller.o \
- $(d)audio_display.o \
- $(d)audio_karaoke.o \
- $(d)audio_marker.o \
- $(d)audio_player.o \
- $(d)audio_provider_factory.o \
- $(d)audio_renderer.o \
- $(d)audio_renderer_spectrum.o \
- $(d)audio_renderer_waveform.o \
- $(d)audio_timing_dialogue.o \
- $(d)audio_timing_karaoke.o \
- $(d)auto4_base.o \
- $(d)auto4_lua.o \
- $(d)auto4_lua_assfile.o \
- $(d)auto4_lua_dialog.o \
- $(d)auto4_lua_progresssink.o \
- $(d)avisynth_wrap.o \
- $(d)base_grid.o \
- $(d)charset_detect.o \
- $(d)colorspace.o \
- $(d)colour_button.o \
- $(d)compat.o \
- $(d)context.o \
- $(d)crash_writer.o \
- $(d)export_fixstyle.o \
- $(d)export_framerate.o \
- $(d)fft.o \
- $(d)font_file_lister.o \
- $(d)frame_main.o \
- $(d)gl_text.o \
- $(d)gl_wrap.o \
- $(d)grid_column.o \
- $(d)help_button.o \
- $(d)hotkey.o \
- $(d)hotkey_data_view_model.o \
- $(d)initial_line_state.o \
- $(d)main.o \
- $(d)menu.o \
- $(d)mkv_wrap.o \
- $(d)pen.o \
- $(d)persist_location.o \
- $(d)preferences.o \
- $(d)preferences_base.o \
- $(d)project.o \
- $(d)resolution_resampler.o \
- $(d)search_replace_engine.o \
- $(d)selection_controller.o \
- $(d)spellchecker.o \
- $(d)spline.o \
- $(d)spline_curve.o \
- $(d)string_codec.o \
- $(d)subs_controller.o \
- $(d)subs_edit_box.o \
- $(d)subs_edit_ctrl.o \
- $(d)subs_preview.o \
- $(d)subtitles_provider.o \
- $(d)subtitles_provider_libass.o \
- $(d)text_file_reader.o \
- $(d)text_file_writer.o \
- $(d)text_selection_controller.o \
- $(d)thesaurus.o \
- $(d)timeedit_ctrl.o \
- $(d)toggle_bitmap.o \
- $(d)toolbar.o \
- $(d)tooltip_manager.o \
- $(d)utils.o \
- $(d)validators.o \
- $(d)vector2d.o \
- $(d)version.o \
- $(d)video_box.o \
- $(d)video_controller.o \
- $(d)video_display.o \
- $(d)video_frame.o \
- $(d)video_out_gl.o \
- $(d)video_provider_cache.o \
- $(d)video_provider_dummy.o \
- $(d)video_provider_manager.o \
- $(d)video_provider_yuv4mpeg.o \
- $(d)video_slider.o \
- $(d)visual_feature.o \
- $(LIBS_LUA) \
- $(TOP)lib/libaegisub.a \
- $(TOP)lib/libluabins.a \
- $(TOP)lib/libresrc.a \
-
-ifeq (yes, $(BUILD_DARWIN))
-src_OBJ += $(d)font_file_lister_coretext.o
-src_OBJ += $(patsubst %.mm,%.o,$(sort $(wildcard $(d)osx/*.mm)))
-$(d)font_file_lister_coretext.o_FLAGS := -fobjc-arc
-else
-src_OBJ += $(d)font_file_lister_fontconfig.o
-endif
-
-###############
-# AUDIO PLAYERS
-###############
-$(d)audio_player_alsa.o_FLAGS := $(CFLAGS_ALSA)
-$(d)audio_player_portaudio.o_FLAGS := $(CFLAGS_PORTAUDIO)
-$(d)audio_player_pulse.o_FLAGS := $(CFLAGS_LIBPULSE)
-$(d)audio_player_openal.o_FLAGS := $(CFLAGS_OPENAL)
-$(d)audio_player_oss.o_FLAGS := $(CFLAGS_OSS)
-
-ifeq (yes, $(HAVE_ALSA))
-src_LIBS += $(LIBS_ALSA)
-src_OBJ += $(d)audio_player_alsa.o
-endif
-
-ifeq (yes, $(HAVE_PORTAUDIO))
-src_LIBS += $(LIBS_PORTAUDIO)
-src_OBJ += $(d)audio_player_portaudio.o
-endif
-
-ifeq (yes, $(HAVE_LIBPULSE))
-src_LIBS += $(LIBS_LIBPULSE)
-src_OBJ += $(d)audio_player_pulse.o
-endif
-
-ifeq (yes, $(HAVE_OPENAL))
-src_LIBS += $(LIBS_OPENAL)
-src_OBJ += $(d)audio_player_openal.o
-endif
-
-ifeq (yes, $(HAVE_OSS))
-src_OBJ += $(d)audio_player_oss.o
-endif
-
-#######################
-# AUDIO / VIDEO SUPPORT
-#######################
-ifeq (yes, $(HAVE_FFMS2))
-$(d)audio_provider_ffmpegsource.o_FLAGS := $(CFLAGS_FFMS2)
-$(d)video_provider_ffmpegsource.o_FLAGS := $(CFLAGS_FFMS2)
-$(d)ffmpegsource_common.o_FLAGS := $(CFLAGS_FFMS2)
-$(d)preferences.o_FLAGS := $(CFLAGS_FFMS2)
-src_LIBS += $(LIBS_FFMS2)
-src_OBJ += \
- $(d)audio_provider_ffmpegsource.o \
- $(d)video_provider_ffmpegsource.o \
- $(d)ffmpegsource_common.o
-endif
-
-##############
-# MISCELLANOUS
-##############
-ifeq (yes, $(HAVE_HUNSPELL))
-$(d)spellchecker_hunspell.o_FLAGS := $(CFLAGS_HUNSPELL)
-src_LIBS += $(LIBS_HUNSPELL)
-src_OBJ += $(d)spellchecker_hunspell.o
-endif
-
-ifeq (yes, $(HAVE_UCHARDET))
-src_LIBS += $(LIBS_UCHARDET)
-endif
-
-#####################
-# SOURCE-LEVEL CFLAGS
-#####################
-$(d)MatroskaParser.o_FLAGS := -Wno-sometimes-uninitialized
-$(d)audio_player.o_FLAGS := $(CFLAGS_ALSA) $(CFLAGS_PORTAUDIO) $(CFLAGS_LIBPULSE) $(CFLAGS_OPENAL)
-$(d)audio_provider_factory.o_FLAGS := $(CFLAGS_FFMS2)
-$(d)auto4_base.o_FLAGS := $(CFLAGS_FREETYPE)
-$(d)charset_detect.o_FLAGS := -D_X86_
-$(d)font_file_lister_fontconfig.o_FLAGS := $(CFLAGS_FONTCONFIG)
-$(d)subtitles_provider.o_FLAGS := $(CFLAGS_LIBASS)
-$(d)subtitles_provider_libass.o_FLAGS := $(CFLAGS_LIBASS) -Wno-c++11-narrowing
-$(d)text_file_reader.o_FLAGS := -D_X86_
-$(d)video_provider_manager.o_FLAGS := $(CFLAGS_FFMS2)
-$(d)auto4_lua.o_FLAGS := $(CFLAGS_LUA)
-$(d)auto4_lua_assfile.o_FLAGS := $(CFLAGS_LUA)
-$(d)auto4_lua_dialog.o_FLAGS := $(CFLAGS_LUA)
-$(d)auto4_lua_progresssink.o_FLAGS := $(CFLAGS_LUA)
-$(d)aegisublocale.o_FLAGS := -DP_LOCALE=\"$(P_LOCALE)\"
-
-$(src_OBJ): $(d)libresrc/bitmap.h $(d)libresrc/default_config.h
-
-include $(d)libresrc/Makefile
diff --git a/src/agi_pre.cpp b/src/agi_pre.cpp
deleted file mode 100644
index a9486c83e..000000000
--- a/src/agi_pre.cpp
+++ /dev/null
@@ -1 +0,0 @@
-// A dummy file for compiling the precompiled header with VC++
diff --git a/src/audio_provider_ffmpegsource.cpp b/src/audio_provider_ffmpegsource.cpp
index 640536f97..0a201855a 100644
--- a/src/audio_provider_ffmpegsource.cpp
+++ b/src/audio_provider_ffmpegsource.cpp
@@ -126,10 +126,8 @@ void FFmpegSourceAudioProvider::LoadAudio(agi::fs::path const& filename) {
// reindex if the error handling mode has changed
FFMS_IndexErrorHandling ErrorHandling = GetErrorHandlingMode();
-#if FFMS_VERSION >= ((2 << 24) | (17 << 16) | (2 << 8) | 0)
if (Index && FFMS_GetErrorHandling(Index) != ErrorHandling)
Index = nullptr;
-#endif
// moment of truth
if (!Index) {
@@ -167,7 +165,6 @@ void FFmpegSourceAudioProvider::LoadAudio(agi::fs::path const& filename) {
throw agi::AudioProviderError("unknown or unsupported sample format");
}
-#if FFMS_VERSION >= ((2 << 24) | (17 << 16) | (4 << 8) | 0)
if (channels > 1 || bytes_per_sample != 2) {
std::unique_ptr
opt(FFMS_CreateResampleOptions(AudioSource), FFMS_DestroyResampleOptions);
@@ -181,7 +178,6 @@ void FFmpegSourceAudioProvider::LoadAudio(agi::fs::path const& filename) {
float_samples = false;
}
}
-#endif
}
}
diff --git a/src/block_cache.h b/src/block_cache.h
index 8cc393a06..f2ebfa261 100644
--- a/src/block_cache.h
+++ b/src/block_cache.h
@@ -150,11 +150,8 @@ public:
}
// Remove old entries until we're under the max size
- while (size > max_size) {
- // When size > 0, age should never be empty
- assert(!age.empty());
- KillMacroBlock(**age.rbegin());
- }
+ for (auto it = age.rbegin(); size > max_size && it != age.rend(); it++)
+ KillMacroBlock(**it);
}
/// @brief Obtain a data block from the cache
diff --git a/src/dialog_fonts_collector.cpp b/src/dialog_fonts_collector.cpp
index e98fc1e53..3c849c987 100644
--- a/src/dialog_fonts_collector.cpp
+++ b/src/dialog_fonts_collector.cpp
@@ -400,7 +400,11 @@ void DialogFontsCollector::OnAddText(ValueEvent &event) {
auto const& utf8 = str.second.utf8_str();
collection_log->AppendTextRaw(utf8.data(), utf8.length());
if (str.first) {
- collection_log->StartStyling(pos, 31);
+#if wxVERSION_NUMBER >= 3100
+ collection_log->StartStyling(pos);
+#else
+ collection_log->StartStyling(pos, 255);
+#endif
collection_log->SetStyling(utf8.length(), str.first);
}
collection_log->GotoPos(pos + utf8.length());
diff --git a/src/dialog_translation.cpp b/src/dialog_translation.cpp
index c953b6874..b47d01b4c 100644
--- a/src/dialog_translation.cpp
+++ b/src/dialog_translation.cpp
@@ -246,7 +246,11 @@ void DialogTranslation::UpdateDisplay() {
int initial_pos = original_text->GetLength();
original_text->AppendTextRaw(block->GetText().c_str());
if (i == cur_block) {
- original_text->StartStyling(initial_pos, 31);
+#if wxVERSION_NUMBER >= 3100
+ original_text->StartStyling(initial_pos);
+#else
+ original_text->StartStyling(initial_pos, 255);
+#endif
original_text->SetStyling(block->GetText().size(), 1);
}
}
diff --git a/src/ffmpegsource_common.cpp b/src/ffmpegsource_common.cpp
index 0de47e1ee..3ffa7f4fb 100644
--- a/src/ffmpegsource_common.cpp
+++ b/src/ffmpegsource_common.cpp
@@ -50,20 +50,6 @@
#include
#include
-#if FFMS_VERSION < ((2 << 24) | (22 << 16) | (0 << 8) | 0)
-enum {
- FFMS_LOG_QUIET = -8,
- FFMS_LOG_PANIC = 0,
- FFMS_LOG_FATAL = 8,
- FFMS_LOG_ERROR = 16,
- FFMS_LOG_WARNING = 24,
- FFMS_LOG_INFO = 32,
- FFMS_LOG_VERBOSE = 40,
- FFMS_LOG_DEBUG = 48,
- FFMS_LOG_TRACE = 56
-};
-#endif
-
FFmpegSourceProvider::FFmpegSourceProvider(agi::BackgroundRunner *br)
: br(br)
{
@@ -95,22 +81,13 @@ FFMS_Index *FFmpegSourceProvider::DoIndexing(FFMS_Indexer *Indexer,
ps->SetProgress(Current, Total);
return ps->IsCancelled();
};
-#if FFMS_VERSION >= ((2 << 24) | (21 << 16) | (0 << 8) | 0)
if (Track == TrackSelection::All)
FFMS_TrackTypeIndexSettings(Indexer, FFMS_TYPE_AUDIO, 1, 0);
else if (Track != TrackSelection::None)
FFMS_TrackIndexSettings(Indexer, static_cast(Track), 1, 0);
+ FFMS_TrackTypeIndexSettings(Indexer, FFMS_TYPE_VIDEO, 1, 0);
FFMS_SetProgressCallback(Indexer, callback, ps);
Index = FFMS_DoIndexing2(Indexer, IndexEH, &ErrInfo);
-#else
- int Trackmask = 0;
- if (Track == TrackSelection::All)
- Trackmask = std::numeric_limits::max();
- else if (Track != TrackSelection::None)
- Trackmask = 1 << static_cast(Track);
- Index = FFMS_DoIndexing(Indexer, Trackmask, 0,
- nullptr, nullptr, IndexEH, callback, ps, &ErrInfo);
-#endif
});
if (Index == nullptr)
@@ -130,12 +107,6 @@ std::map FFmpegSourceProvider::GetTracksOfType(FFMS_Indexer *I
std::map TrackList;
int NumTracks = FFMS_GetNumTracksI(Indexer);
- // older versions of ffms2 can't index audio tracks past 31
-#if FFMS_VERSION < ((2 << 24) | (21 << 16) | (0 << 8) | 0)
- if (Type == FFMS_TYPE_AUDIO)
- NumTracks = std::min(NumTracks, std::numeric_limits::digits);
-#endif
-
for (int i=0; i
#include
+static void read_fonts_from_key(HKEY hkey, agi::fs::path font_dir, std::vector &files) {
+ static const auto fonts_key_name = L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts";
+
+ HKEY key;
+ auto ret = RegOpenKeyExW(hkey, fonts_key_name, 0, KEY_QUERY_VALUE, &key);
+ if (ret != ERROR_SUCCESS) return;
+ BOOST_SCOPE_EXIT_ALL(=) { RegCloseKey(key); };
+
+ DWORD name_buf_size = SHRT_MAX;
+ DWORD data_buf_size = MAX_PATH;
+
+ auto font_name = new wchar_t[name_buf_size];
+ auto font_filename = new wchar_t[data_buf_size];
+
+ for (DWORD i = 0;; ++i) {
+retry:
+ DWORD name_len = name_buf_size;
+ DWORD data_len = data_buf_size;
+
+ ret = RegEnumValueW(key, i, font_name, &name_len, NULL, NULL, reinterpret_cast(font_filename), &data_len);
+ if (ret == ERROR_MORE_DATA) {
+ data_buf_size = data_len;
+ delete font_filename;
+ font_filename = new wchar_t[data_buf_size];
+ goto retry;
+ }
+ if (ret == ERROR_NO_MORE_ITEMS) break;
+ if (ret != ERROR_SUCCESS) continue;
+
+ agi::fs::path font_path(font_filename);
+ if (!agi::fs::FileExists(font_path))
+ // Doesn't make a ton of sense to do this with user fonts, but they seem to be stored as full paths anyway
+ font_path = font_dir / font_path;
+ if (agi::fs::FileExists(font_path)) // The path might simply be invalid
+ files.push_back(font_path);
+ }
+
+ delete font_name;
+ delete font_filename;
+}
+
namespace {
uint32_t murmur3(const char *data, uint32_t len) {
static const uint32_t c1 = 0xcc9e2d51;
@@ -62,35 +103,17 @@ uint32_t murmur3(const char *data, uint32_t len) {
}
std::vector get_installed_fonts() {
- static const auto fonts_key_name = L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts";
-
std::vector files;
- for (HKEY hKey : { HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE }) {
- HKEY key;
- auto ret = RegOpenKeyExW(hKey, fonts_key_name, 0, KEY_QUERY_VALUE, &key);
- if (ret != ERROR_SUCCESS) continue;
- BOOST_SCOPE_EXIT_ALL(= ) { RegCloseKey(key); };
+ wchar_t fdir[MAX_PATH];
+ SHGetFolderPathW(NULL, CSIDL_FONTS, NULL, 0, fdir);
+ agi::fs::path font_dir(fdir);
- wchar_t fdir[MAX_PATH];
- SHGetFolderPathW(NULL, CSIDL_FONTS, NULL, 0, fdir);
- agi::fs::path font_dir(fdir);
+ // System fonts
+ read_fonts_from_key(HKEY_LOCAL_MACHINE, font_dir, files);
- for (DWORD i = 0;; ++i) {
- wchar_t font_name[SHRT_MAX], font_filename[MAX_PATH];
- DWORD name_len = sizeof(font_name);
- DWORD data_len = sizeof(font_filename);
-
- ret = RegEnumValueW(key, i, font_name, &name_len, NULL, NULL, reinterpret_cast(font_filename), &data_len);
- if (ret == ERROR_NO_MORE_ITEMS) break;
- if (ret != ERROR_SUCCESS) continue;
-
- agi::fs::path font_path(font_filename);
- if (!agi::fs::FileExists(font_path) && agi::fs::FileExists(font_dir / font_path))
- font_path = font_dir / font_path;
- files.push_back(font_path);
- }
- }
+ // User fonts
+ read_fonts_from_key(HKEY_CURRENT_USER, font_dir, files);
return files;
}
diff --git a/src/agi_pre.h b/src/include/agi_pre.h
similarity index 99%
rename from src/agi_pre.h
rename to src/include/agi_pre.h
index 63e045dca..e82216b88 100644
--- a/src/agi_pre.h
+++ b/src/include/agi_pre.h
@@ -48,9 +48,7 @@
#define _CRT_SECURE_NO_WARNINGS
#endif
-#ifndef _WIN32
-#include "../acconf.h"
-#endif
+#include "../../acconf.h"
#define WIN32_LEAN_AND_MEAN
diff --git a/src/include/agi_pre_c.h b/src/include/agi_pre_c.h
new file mode 100644
index 000000000..c4d6924f4
--- /dev/null
+++ b/src/include/agi_pre_c.h
@@ -0,0 +1,46 @@
+// Copyright (c) 2006, Rodrigo Braz Monteiro
+// 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/
+
+#include "../../acconf.h"
+
+#define WIN32_LEAN_AND_MEAN
+
+#ifdef _WIN32
+#include
+#include
+#else
+#include
+#endif
+
+#ifdef HAVE_OPENGL_GL_H
+#include
+#else
+#include
+#endif
+
diff --git a/src/libass_gdi_fontselect.cpp b/src/libass_gdi_fontselect.cpp
index 3623968e5..dcba736ef 100644
--- a/src/libass_gdi_fontselect.cpp
+++ b/src/libass_gdi_fontselect.cpp
@@ -23,7 +23,6 @@ extern "C" {
#include
#define WIN32_LEAN_AND_MEAN
-#define NOMINMAX
#include
namespace {
diff --git a/src/libresrc/Makefile b/src/libresrc/Makefile
deleted file mode 100644
index 8b6d19595..000000000
--- a/src/libresrc/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../../header.mk
-
-LIB += resrc
-
-resrc_CPPFLAGS := -I$(TOP) -I$(d) $(CPPFLAGS_WX)
-resrc_OBJ := \
- $(d)bitmap.o \
- $(d)default_config.o \
- $(d)libresrc.o
-
-$(resrc_OBJ): $(d)default_config.h $(d)bitmap.h $(d)default_config.cpp $(d)bitmap.cpp
-
-RESPACK := cd $(TOP)src/libresrc; $(BIN_LUA) $(TOP)tools/respack.lua
-
-$(d)bitmap.cpp: $(d)bitmap.h
-$(d)default_config.cpp: $(d)default_config.h
-
-$(d)bitmap.h: $(TOP)tools/respack.lua $(d)../bitmaps/button
- $(RESPACK) ../bitmaps/manifest.respack bitmap.cpp bitmap.h
-
-ifeq (yes, $(BUILD_DARWIN))
-$(d)default_config.h: $(TOP)tools/respack.lua $(d)*.json $(d)osx/*.json
- $(RESPACK) manifest_osx.respack default_config.cpp default_config.h
-else
-$(d)default_config.h: $(TOP)tools/respack.lua $(d)*.json
- $(RESPACK) manifest.respack default_config.cpp default_config.h
-endif
-
-CLEANFILES += \
- $(d)bitmap.cpp \
- $(d)bitmap.h \
- $(d)default_config.cpp \
- $(d)default_config.h
-
-DISTCLEANFILES += $(d)default_config_platform.json
-
-include $(TOP)Makefile.target
diff --git a/src/libresrc/default_config.json b/src/libresrc/default_config.json
index a48690351..318f8d3ee 100644
--- a/src/libresrc/default_config.json
+++ b/src/libresrc/default_config.json
@@ -522,7 +522,7 @@
"Y" : -1
},
"Maximized" : false,
- "Preview Text" : "Aegisub\\N0123 月語"
+ "Preview Text" : "Aegisub\\N0123 日本語"
},
"Style Manager" : {
"Last" : {
diff --git a/src/libresrc/default_menu.json b/src/libresrc/default_menu.json
index f213feff3..b1797836f 100644
--- a/src/libresrc/default_menu.json
+++ b/src/libresrc/default_menu.json
@@ -76,7 +76,6 @@
{ "command" : "tool/resampleres" },
{ "command" : "subtitle/spellcheck" },
{},
- { "command" : "tool/assdraw" },
{ "submenu" : "main/subtitle/insert lines", "text" : "&Insert Lines" },
{ "command" : "edit/line/duplicate" },
{ "command" : "edit/line/split/before" },
@@ -204,7 +203,6 @@
{ "command" : "help/contents" },
{},
{ "command" : "help/website" },
- { "command" : "help/forums" },
{ "command" : "help/bugs" },
{},
{ "command" : "help/irc" },
diff --git a/src/libresrc/default_toolbar.json b/src/libresrc/default_toolbar.json
index c83d0ead0..07afb90b0 100644
--- a/src/libresrc/default_toolbar.json
+++ b/src/libresrc/default_toolbar.json
@@ -50,8 +50,6 @@
"",
"am/meta",
"",
- "tool/assdraw",
- "",
"time/shift",
"tool/style/assistant",
"tool/translation_assistant",
diff --git a/src/libresrc/meson.build b/src/libresrc/meson.build
new file mode 100644
index 000000000..e6189a3ca
--- /dev/null
+++ b/src/libresrc/meson.build
@@ -0,0 +1,28 @@
+respack = find_program('../../tools/respack.py')
+
+resrc = [
+ custom_target('bitmap.{cpp,h}',
+ command: [respack, '@INPUT@', '@OUTPUT@'],
+ input: files('../bitmaps/manifest.respack'),
+ output: ['bitmap.cpp', 'bitmap.h'])
+]
+
+conf_platform_json = configure_file(input: 'default_config_platform.json.in',
+ output: '@BASENAME@',
+ configuration: conf_platform)
+
+if host_machine.system() == 'darwin'
+ resrc += custom_target('default_config.{cpp,h}',
+ command: [respack, '@INPUT0@', '@OUTPUT@'],
+ input: [files('manifest_osx.respack'), conf_platform_json],
+ output: ['default_config.cpp', 'default_config.h'])
+else
+ resrc += custom_target('default_config.{cpp,h}',
+ command: [respack, '@INPUT0@', '@OUTPUT@'],
+ input: [files('manifest.respack'), conf_platform_json],
+ output: ['default_config.cpp', 'default_config.h'])
+endif
+
+
+libresrc_inc = include_directories('.')
+libresrc = static_library('resrc', 'libresrc.cpp', resrc, include_directories: deps_inc, dependencies: deps)
diff --git a/src/libresrc/osx/default_config.json b/src/libresrc/osx/default_config.json
index e5bdce0f5..59f2ed05f 100644
--- a/src/libresrc/osx/default_config.json
+++ b/src/libresrc/osx/default_config.json
@@ -522,7 +522,7 @@
"Y" : -1
},
"Maximized" : false,
- "Preview Text" : "Aegisub\\N0123 月語"
+ "Preview Text" : "Aegisub\\N0123 日本語"
},
"Style Manager" : {
"Last" : {
diff --git a/src/libresrc/osx/default_menu.json b/src/libresrc/osx/default_menu.json
index 036753c94..75a9e4a03 100644
--- a/src/libresrc/osx/default_menu.json
+++ b/src/libresrc/osx/default_menu.json
@@ -213,7 +213,6 @@
{ "command" : "help/contents" },
{},
{ "command" : "help/website" },
- { "command" : "help/forums" },
{ "command" : "help/bugs" },
{},
{ "command" : "help/irc" },
diff --git a/src/meson.build b/src/meson.build
new file mode 100644
index 000000000..13570c139
--- /dev/null
+++ b/src/meson.build
@@ -0,0 +1,254 @@
+subdir('libresrc')
+
+aegisub_src = files(
+ 'MatroskaParser.c',
+ 'aegisublocale.cpp',
+ 'ass_attachment.cpp',
+ 'ass_dialogue.cpp',
+ 'ass_entry.cpp',
+ 'ass_export_filter.cpp',
+ 'ass_exporter.cpp',
+ 'ass_file.cpp',
+ 'ass_karaoke.cpp',
+ 'ass_override.cpp',
+ 'ass_parser.cpp',
+ 'ass_style.cpp',
+ 'ass_style_storage.cpp',
+ 'async_video_provider.cpp',
+ 'audio_box.cpp',
+ 'audio_colorscheme.cpp',
+ 'audio_controller.cpp',
+ 'audio_display.cpp',
+ 'audio_karaoke.cpp',
+ 'audio_marker.cpp',
+ 'audio_player.cpp',
+ 'audio_provider_factory.cpp',
+ 'audio_renderer.cpp',
+ 'audio_renderer_spectrum.cpp',
+ 'audio_renderer_waveform.cpp',
+ 'audio_timing_dialogue.cpp',
+ 'audio_timing_karaoke.cpp',
+ 'auto4_base.cpp',
+ 'auto4_lua.cpp',
+ 'auto4_lua_assfile.cpp',
+ 'auto4_lua_dialog.cpp',
+ 'auto4_lua_progresssink.cpp',
+ 'base_grid.cpp',
+ 'charset_detect.cpp',
+ 'colorspace.cpp',
+ 'colour_button.cpp',
+ 'command/app.cpp',
+ 'command/audio.cpp',
+ 'command/automation.cpp',
+ 'command/command.cpp',
+ 'command/edit.cpp',
+ 'command/grid.cpp',
+ 'command/help.cpp',
+ 'command/keyframe.cpp',
+ 'command/recent.cpp',
+ 'command/subtitle.cpp',
+ 'command/time.cpp',
+ 'command/timecode.cpp',
+ 'command/tool.cpp',
+ 'command/video.cpp',
+ 'command/vis_tool.cpp',
+ 'compat.cpp',
+ 'context.cpp',
+ 'crash_writer.cpp',
+ 'dialog_about.cpp',
+ 'dialog_attachments.cpp',
+ 'dialog_automation.cpp',
+ 'dialog_autosave.cpp',
+ 'dialog_colorpicker.cpp',
+ 'dialog_detached_video.cpp',
+ 'dialog_dummy_video.cpp',
+ 'dialog_export.cpp',
+ 'dialog_export_ebu3264.cpp',
+ 'dialog_fonts_collector.cpp',
+ 'dialog_jumpto.cpp',
+ 'dialog_kara_timing_copy.cpp',
+ 'dialog_log.cpp',
+ 'dialog_paste_over.cpp',
+ 'dialog_progress.cpp',
+ 'dialog_properties.cpp',
+ 'dialog_resample.cpp',
+ 'dialog_search_replace.cpp',
+ 'dialog_selected_choices.cpp',
+ 'dialog_selection.cpp',
+ 'dialog_shift_times.cpp',
+ 'dialog_spellchecker.cpp',
+ 'dialog_style_editor.cpp',
+ 'dialog_style_manager.cpp',
+ 'dialog_styling_assistant.cpp',
+ 'dialog_text_import.cpp',
+ 'dialog_timing_processor.cpp',
+ 'dialog_translation.cpp',
+ 'dialog_version_check.cpp',
+ 'dialog_video_details.cpp',
+ 'dialog_video_properties.cpp',
+ 'export_fixstyle.cpp',
+ 'export_framerate.cpp',
+ 'fft.cpp',
+ 'font_file_lister.cpp',
+ 'frame_main.cpp',
+ 'gl_text.cpp',
+ 'gl_wrap.cpp',
+ 'grid_column.cpp',
+ 'help_button.cpp',
+ 'hotkey.cpp',
+ 'hotkey_data_view_model.cpp',
+ 'initial_line_state.cpp',
+ 'main.cpp',
+ 'menu.cpp',
+ 'mkv_wrap.cpp',
+ 'pen.cpp',
+ 'persist_location.cpp',
+ 'preferences.cpp',
+ 'preferences_base.cpp',
+ 'project.cpp',
+ 'resolution_resampler.cpp',
+ 'search_replace_engine.cpp',
+ 'selection_controller.cpp',
+ 'spellchecker.cpp',
+ 'spline.cpp',
+ 'spline_curve.cpp',
+ 'string_codec.cpp',
+ 'subs_controller.cpp',
+ 'subs_edit_box.cpp',
+ 'subs_edit_ctrl.cpp',
+ 'subs_preview.cpp',
+ 'subtitle_format.cpp',
+ 'subtitle_format_ass.cpp',
+ 'subtitle_format_ebu3264.cpp',
+ 'subtitle_format_encore.cpp',
+ 'subtitle_format_microdvd.cpp',
+ 'subtitle_format_mkv.cpp',
+ 'subtitle_format_srt.cpp',
+ 'subtitle_format_ssa.cpp',
+ 'subtitle_format_transtation.cpp',
+ 'subtitle_format_ttxt.cpp',
+ 'subtitle_format_txt.cpp',
+ 'subtitles_provider.cpp',
+ 'subtitles_provider_libass.cpp',
+ 'text_file_reader.cpp',
+ 'text_file_writer.cpp',
+ 'text_selection_controller.cpp',
+ 'thesaurus.cpp',
+ 'timeedit_ctrl.cpp',
+ 'toggle_bitmap.cpp',
+ 'toolbar.cpp',
+ 'tooltip_manager.cpp',
+ 'utils.cpp',
+ 'validators.cpp',
+ 'vector2d.cpp',
+ 'version.cpp',
+ 'video_box.cpp',
+ 'video_controller.cpp',
+ 'video_display.cpp',
+ 'video_frame.cpp',
+ 'video_out_gl.cpp',
+ 'video_provider_cache.cpp',
+ 'video_provider_dummy.cpp',
+ 'video_provider_manager.cpp',
+ 'video_provider_yuv4mpeg.cpp',
+ 'video_slider.cpp',
+ 'visual_feature.cpp',
+ 'visual_tool.cpp',
+ 'visual_tool_clip.cpp',
+ 'visual_tool_cross.cpp',
+ 'visual_tool_drag.cpp',
+ 'visual_tool_rotatexy.cpp',
+ 'visual_tool_rotatez.cpp',
+ 'visual_tool_scale.cpp',
+ 'visual_tool_vector_clip.cpp',
+)
+
+if host_machine.system() == 'darwin'
+ aegisub_src += [
+ 'font_file_lister_coretext.mm',
+ 'osx/osx_utils.mm',
+ 'osx/retina_helper.mm',
+ ]
+elif host_machine.system() == 'windows'
+ aegisub_src += [
+ 'avisynth_wrap.cpp',
+ 'font_file_lister_gdi.cpp',
+ 'libass_gdi_fontselect.cpp',
+ 'video_provider_avs.cpp',
+ ]
+
+ if cc.has_header('wingdi.h')
+ deps += cc.find_library('gdi32', required: true)
+ else
+ error('Missing Windows SDK GDI Library (wingdi.h / gdi32.lib)')
+ endif
+ if cc.has_header('usp10.h')
+ deps += cc.find_library('usp10', required: true)
+ else
+ error('Missing Windows SDK Uniscribe Library (usp10.h / usp10.lib)')
+ endif
+
+ res_inc = include_directories('bitmaps/windows')
+ res_dep_files = files(
+ 'bitmaps/windows/icon.ico',
+ 'bitmaps/windows/eyedropper.cur',
+ )
+ windows = import('windows')
+ if wx_dep.type_name() != 'not-found' # system wx
+ raw_wx_windres_args = wx_dep.get_variable(configtool: 'rescomp').split()
+ wx_windres_args = []
+ foreach arg: raw_wx_windres_args
+ if arg != 'windres'
+ wx_windres_args += arg
+ endif
+ endforeach
+ aegisub_src += windows.compile_resources('res/res.rc',
+ args: wx_windres_args,
+ depend_files: res_dep_files,
+ depends: version_h,
+ include_directories: [res_inc, version_inc])
+ else # subproject
+ wx_inc = wx.include_directories('wxmono')
+ aegisub_src += windows.compile_resources('res/res.rc',
+ depend_files: res_dep_files,
+ depends: version_h,
+ include_directories: [res_inc, version_inc, wx_inc])
+ endif
+elif conf.get('WITH_FONTCONFIG') == '1'
+ aegisub_src += 'font_file_lister_fontconfig.cpp'
+endif
+
+opt_src = [
+ ['ALSA', 'audio_player_alsa.cpp'],
+ ['PortAudio', 'audio_player_portaudio.cpp'],
+ ['PulseAudio', 'audio_player_pulse.cpp'],
+ ['OpenAL', 'audio_player_openal.cpp'],
+ ['OSS', 'audio_player_oss.cpp'],
+ ['DirectSound', ['audio_player_dsound.cpp',
+ 'audio_player_dsound2.cpp']],
+
+ ['FFMS2', ['audio_provider_ffmpegsource.cpp',
+ 'video_provider_ffmpegsource.cpp',
+ 'ffmpegsource_common.cpp']],
+
+ ['Hunspell', 'spellchecker_hunspell.cpp'],
+]
+
+foreach opt: opt_src
+ if dep_avail.contains(opt[0])
+ aegisub_src += opt[1]
+ endif
+endforeach
+
+aegisub_cpp_pch = ['include/agi_pre.h']
+aegisub_c_pch = ['include/agi_pre_c.h']
+
+aegisub = executable('aegisub', aegisub_src, version_h, acconf,
+ link_with: [libresrc, libluabins, libaegisub],
+ include_directories: [libaegisub_inc, libresrc_inc, version_inc, deps_inc],
+ cpp_pch: aegisub_cpp_pch,
+ c_pch: aegisub_c_pch,
+ install: true,
+ install_dir: bindir,
+ dependencies: deps,
+ gui_app: true)
diff --git a/src/osx/scintilla_ime.mm b/src/osx/scintilla_ime.mm
deleted file mode 100644
index 4806d1797..000000000
--- a/src/osx/scintilla_ime.mm
+++ /dev/null
@@ -1,212 +0,0 @@
-// Copyright (c) 2014, Thomas Goyne
-//
-// 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/
-
-#import
-#import
-#import
-
-// from src/osx/cocoa/window.mm
-@interface wxNSView : NSView {
- BOOL _hasToolTip;
- NSTrackingRectTag _lastToolTipTrackTag;
- id _lastToolTipOwner;
- void *_lastUserData;
-}
-@end
-
-@interface IMEState : NSObject
-@property (nonatomic) NSRange markedRange;
-@property (nonatomic) bool undoActive;
-@end
-
-@implementation IMEState
-- (id)init {
- self = [super init];
- self.markedRange = NSMakeRange(NSNotFound, 0);
- self.undoActive = false;
- return self;
-}
-@end
-
-@interface ScintillaNSView : wxNSView
-@property (nonatomic, readonly) wxStyledTextCtrl *stc;
-@property (nonatomic, readonly) IMEState *state;
-@end
-
-@implementation ScintillaNSView
-- (Class)superclass {
- return [wxNSView superclass];
-}
-
-- (wxStyledTextCtrl *)stc {
- return static_cast(wxWidgetImpl::FindFromWXWidget(self)->GetWXPeer());
-}
-
-- (IMEState *)state {
- return objc_getAssociatedObject(self, [IMEState class]);
-}
-
-- (void)invalidate {
- self.state.markedRange = NSMakeRange(NSNotFound, 0);
- [self.inputContext discardMarkedText];
-}
-
-#pragma mark - NSTextInputClient
-
-- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange
- actualRange:(NSRangePointer)actualRange
-{
- return nil;
-}
-
-- (NSUInteger)characterIndexForPoint:(NSPoint)point {
- return self.stc->PositionFromPoint(wxPoint(point.x, point.y));
-}
-
-- (BOOL)drawsVerticallyForCharacterAtIndex:(NSUInteger)charIndex {
- return NO;
-}
-
-- (NSRect)firstRectForCharacterRange:(NSRange)range
- actualRange:(NSRangePointer)actualRange
-{
- auto stc = self.stc;
- int line = stc->LineFromPosition(range.location);
- int height = stc->TextHeight(line);
- auto pt = stc->PointFromPosition(range.location);
-
- int width = 0;
- if (range.length > 0) {
- // If the end of the range is on the next line, the range should be
- // truncated to the current line and actualRange should be set to the
- // truncated range
- int end_line = stc->LineFromPosition(range.location + range.length);
- if (end_line > line) {
- range.length = stc->PositionFromLine(line + 1) - 1 - range.location;
- *actualRange = range;
- }
-
- auto end_pt = stc->PointFromPosition(range.location + range.length);
- width = end_pt.x - pt.x;
- }
-
- auto rect = NSMakeRect(pt.x, pt.y, width, height);
- rect = [self convertRect:rect toView:nil];
- return [self.window convertRectToScreen:rect];
-}
-
-- (BOOL)hasMarkedText {
- return self.state.markedRange.length > 0;
-}
-
-- (void)insertText:(id)str replacementRange:(NSRange)replacementRange {
- [self unmarkText];
- [super insertText:str replacementRange:replacementRange];
-}
-
-- (NSRange)markedRange {
- return self.state.markedRange;
-}
-
-- (NSRange)selectedRange {
- long from = 0, to = 0;
- self.stc->GetSelection(&from, &to);
- return NSMakeRange(from, to - from);
-}
-
-- (void)setMarkedText:(id)str
- selectedRange:(NSRange)range
- replacementRange:(NSRange)replacementRange
-{
- if ([str isKindOfClass:[NSAttributedString class]])
- str = [str string];
-
- auto stc = self.stc;
- auto state = self.state;
-
- int pos = stc->GetInsertionPoint();
- if (state.markedRange.length > 0) {
- pos = state.markedRange.location;
- stc->DeleteRange(pos, state.markedRange.length);
- stc->SetSelection(pos, pos);
- } else {
- state.undoActive = stc->GetUndoCollection();
- if (state.undoActive)
- stc->SetUndoCollection(false);
- }
-
- auto utf8 = [str UTF8String];
- auto utf8len = strlen(utf8);
- stc->AddTextRaw(utf8, utf8len);
-
- state.markedRange = NSMakeRange(pos, utf8len);
-
- stc->SetIndicatorCurrent(1);
- stc->IndicatorFillRange(pos, utf8len);
-
- // Re-enable undo if we got a zero-length string as that means we're done
- if (!utf8len && state.undoActive)
- stc->SetUndoCollection(true);
- else {
- int start = pos;
- // Range is in utf-16 code units
- if (range.location > 0)
- start += [[str substringToIndex:range.location] lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
- int length = [[str substringWithRange:range] lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
- stc->SetSelection(start, start + length);
- }
-}
-
-- (void)unmarkText {
- auto state = self.state;
- if (state.markedRange.length > 0) {
- self.stc->DeleteRange(state.markedRange.location, state.markedRange.length);
- state.markedRange = NSMakeRange(NSNotFound, 0);
- if (state.undoActive)
- self.stc->SetUndoCollection(true);
- }
-}
-
-- (NSArray *)validAttributesForMarkedText {
- return @[];
-}
-@end
-
-namespace osx { namespace ime {
-void inject(wxStyledTextCtrl *ctrl) {
- id view = (id)ctrl->GetHandle();
- object_setClass(view, [ScintillaNSView class]);
-
- auto state = [IMEState new];
- objc_setAssociatedObject(view, [IMEState class], state,
- OBJC_ASSOCIATION_RETAIN_NONATOMIC);
- [state release];
-}
-
-void invalidate(wxStyledTextCtrl *ctrl) {
- [(ScintillaNSView *)ctrl->GetHandle() invalidate];
-}
-
-bool process_key_event(wxStyledTextCtrl *ctrl, wxKeyEvent &evt) {
- if (evt.GetModifiers() != 0) return false;
- if (evt.GetKeyCode() != WXK_RETURN && evt.GetKeyCode() != WXK_TAB) return false;
- if (![(ScintillaNSView *)ctrl->GetHandle() hasMarkedText]) return false;
-
- evt.Skip();
- return true;
-}
-
-} }
diff --git a/src/project.cpp b/src/project.cpp
index 7a752eae4..e01dd3749 100644
--- a/src/project.cpp
+++ b/src/project.cpp
@@ -391,10 +391,14 @@ void Project::LoadKeyframes(agi::fs::path path) {
ShowError(e.GetMessage());
config::mru->Remove("Keyframes", path);
}
- catch (agi::keyframe::Error const& e) {
+ catch (agi::keyframe::KeyframeFormatParseError const& e) {
ShowError("Failed to parse keyframes file: " + e.GetMessage());
config::mru->Remove("Keyframes", path);
}
+ catch (agi::keyframe::UnknownKeyframeFormatError const& e) {
+ ShowError("Keyframes file in unknown format: " + e.GetMessage());
+ config::mru->Remove("Keyframes", path);
+ }
}
void Project::CloseKeyframes() {
diff --git a/src/res/res.rc b/src/res/res.rc
index 45616b8cb..26f268165 100644
--- a/src/res/res.rc
+++ b/src/res/res.rc
@@ -23,23 +23,9 @@ eyedropper_cursor CURSOR "../bitmaps/windows/eyedropper.cur"
#define wxUSE_NO_MANIFEST 1
#include "wx/msw/wx.rc"
-#include "../../build/git_version.h"
+#include "git_version.h"
#include
-#ifdef _DEBUG
- #ifdef _WIN64
- #define AGI_RC_FILENAME "aegisub64d"
- #else
- #define AGI_RC_FILENAME "aegisub32d"
- #endif
-#else
- #ifdef _WIN64
- #define AGI_RC_FILENAME "aegisub64"
- #else
- #define AGI_RC_FILENAME "aegisub32"
- #endif
-#endif
-
#ifdef _DEBUG
#define AGI_RC_FLAG_DEBUG VS_FF_DEBUG
#else
@@ -68,8 +54,8 @@ BEGIN
VALUE "CompanyName", "Aegisub"
VALUE "FileDescription", "Aegisub subtitle editor"
VALUE "FileVersion", BUILD_GIT_VERSION_STRING
- VALUE "InternalName", AGI_RC_FILENAME
- VALUE "OriginalFilename", AGI_RC_FILENAME ".exe"
+ VALUE "InternalName", "aegisub"
+ VALUE "OriginalFilename", "aegisub.exe"
VALUE "ProductName", "Aegisub"
VALUE "ProductVersion", BUILD_GIT_VERSION_STRING
END
diff --git a/src/subs_edit_box.cpp b/src/subs_edit_box.cpp
index fffb62384..a72204fdb 100644
--- a/src/subs_edit_box.cpp
+++ b/src/subs_edit_box.cpp
@@ -53,7 +53,6 @@
#include "text_selection_controller.h"
#include "timeedit_ctrl.h"
#include "tooltip_manager.h"
-#include "utils.h"
#include "validators.h"
#include
@@ -430,8 +429,7 @@ void SubsEditBox::UpdateFrameTiming(agi::vfr::Framerate const& fps) {
}
void SubsEditBox::OnKeyDown(wxKeyEvent &event) {
- if (!osx::ime::process_key_event(edit_ctrl, event))
- hotkey::check("Subtitle Edit Box", c, event);
+ hotkey::check("Subtitle Edit Box", c, event);
}
void SubsEditBox::OnChange(wxStyledTextEvent &event) {
diff --git a/src/subs_edit_ctrl.cpp b/src/subs_edit_ctrl.cpp
index 16152a113..9d1fc6a01 100644
--- a/src/subs_edit_ctrl.cpp
+++ b/src/subs_edit_ctrl.cpp
@@ -87,8 +87,6 @@ SubsTextEditCtrl::SubsTextEditCtrl(wxWindow* parent, wxSize wsize, long style, a
, thesaurus(agi::make_unique())
, context(context)
{
- osx::ime::inject(this);
-
// Set properties
SetWrapMode(wxSTC_WRAP_WORD);
SetMarginWidth(1,0);
@@ -191,7 +189,6 @@ void SubsTextEditCtrl::OnLoseFocus(wxFocusEvent &event) {
}
void SubsTextEditCtrl::OnKeyDown(wxKeyEvent &event) {
- if (osx::ime::process_key_event(this, event)) return;
event.Skip();
// Workaround for wxSTC eating tabs.
@@ -249,10 +246,6 @@ void SubsTextEditCtrl::SetStyles() {
// Misspelling indicator
IndicatorSetStyle(0,wxSTC_INDIC_SQUIGGLE);
IndicatorSetForeground(0,wxColour(255,0,0));
-
- // IME pending text indicator
- IndicatorSetStyle(1, wxSTC_INDIC_PLAIN);
- IndicatorSetUnder(1, true);
}
void SubsTextEditCtrl::UpdateStyle() {
@@ -265,7 +258,11 @@ void SubsTextEditCtrl::UpdateStyle() {
cursor_pos = -1;
UpdateCallTip();
- StartStyling(0,255);
+#if wxVERSION_NUMBER >= 3100
+ StartStyling(0);
+#else
+ StartStyling(0, 255);
+#endif
if (!OPT_GET("Subtitle/Highlight/Syntax")->GetBool()) {
SetStyling(line_text.size(), 0);
@@ -313,7 +310,6 @@ void SubsTextEditCtrl::UpdateCallTip() {
}
void SubsTextEditCtrl::SetTextTo(std::string const& text) {
- osx::ime::invalidate(this);
SetEvtHandlerEnabled(false);
Freeze();
diff --git a/src/utils.cpp b/src/utils.cpp
index 2416aa7a2..a014b0a29 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -217,13 +217,6 @@ void SetFloatOnParent(wxWindow *) { }
RetinaHelper::RetinaHelper(wxWindow *) { }
RetinaHelper::~RetinaHelper() { }
int RetinaHelper::GetScaleFactor() const { return 1; }
-
-// OS X implementation in scintilla_ime.mm
-namespace osx { namespace ime {
- void inject(wxStyledTextCtrl *) { }
- void invalidate(wxStyledTextCtrl *) { }
- bool process_key_event(wxStyledTextCtrl *, wxKeyEvent&) { return false; }
-} }
#endif
wxString FontFace(std::string opt_prefix) {
@@ -275,7 +268,7 @@ wxString LocalizedLanguageName(wxString const& lang) {
icu::UnicodeString ustr;
iculoc.getDisplayName(iculoc, ustr);
#ifdef _MSC_VER
- return wxString(ustr.getBuffer());
+ return wxString((const wchar_t*)ustr.getBuffer());
#else
std::string utf8;
ustr.toUTF8String(utf8);
diff --git a/src/utils.h b/src/utils.h
index 269100de8..02ef78aac 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -106,13 +106,4 @@ namespace osx {
bool activate_top_window_other_than(wxFrame *wx);
// Bring all windows to the front, maintaining relative z-order
void bring_to_front();
-
-namespace ime {
- /// Inject the IME helper into the given wxSTC
- void inject(wxStyledTextCtrl *ctrl);
- /// Invalidate any pending text from the IME
- void invalidate(wxStyledTextCtrl *ctrl);
- /// Give the IME a chance to process a key event and return whether it did
- bool process_key_event(wxStyledTextCtrl *ctrl, wxKeyEvent &);
-}
}
diff --git a/src/video_provider_ffmpegsource.cpp b/src/video_provider_ffmpegsource.cpp
index fca6d15ec..7340317b1 100644
--- a/src/video_provider_ffmpegsource.cpp
+++ b/src/video_provider_ffmpegsource.cpp
@@ -90,7 +90,6 @@ public:
void GetFrame(int n, VideoFrame &out) override;
void SetColorSpace(std::string const& matrix) override {
-#if FFMS_VERSION >= ((2 << 24) | (17 << 16) | (1 << 8) | 0)
if (matrix == ColorSpace) return;
if (matrix == RealColorSpace)
FFMS_SetInputFormatV(VideoSource, CS, CR, FFMS_GetPixFmt(""), nullptr);
@@ -99,7 +98,6 @@ public:
else
return;
ColorSpace = matrix;
-#endif
}
int GetFrameCount() const override { return VideoInfo->NumFrames; }
@@ -279,7 +277,6 @@ void FFmpegSourceVideoProvider::LoadVideo(agi::fs::path const& filename, std::st
if (FFMS_SetInputFormatV(VideoSource, CS, CR, FFMS_GetPixFmt(""), &ErrInfo))
throw VideoOpenError(std::string("Failed to set input format: ") + ErrInfo.Buffer);
}
-#endif
const int TargetFormat[] = { FFMS_GetPixFmt("bgra"), -1 };
if (FFMS_SetOutputFormatV2(VideoSource, TargetFormat, Width, Height, FFMS_RESIZER_BICUBIC, &ErrInfo))
diff --git a/src/visual_tool.cpp b/src/visual_tool.cpp
index 13009127c..61d320722 100644
--- a/src/visual_tool.cpp
+++ b/src/visual_tool.cpp
@@ -275,7 +275,7 @@ template
void VisualTool::DrawAllFeatures() {
wxColour grid_color = to_wx(line_color_secondary_opt->GetColor());
gl.SetLineColour(grid_color, 1.0f, 1);
- wxColour base_fill = to_wx(line_color_primary_opt->GetColor());
+ wxColour base_fill = to_wx(highlight_color_primary_opt->GetColor());
wxColour active_fill = to_wx(highlight_color_secondary_opt->GetColor());
wxColour alt_fill = to_wx(line_color_primary_opt->GetColor());
for (auto& feature : features) {
diff --git a/subprojects/boost.wrap b/subprojects/boost.wrap
new file mode 100644
index 000000000..e66c7ff5b
--- /dev/null
+++ b/subprojects/boost.wrap
@@ -0,0 +1,6 @@
+[wrap-file]
+directory = boost_1_74_0
+source_url = https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.gz
+source_filename = boost_1_74_0.tar.gz
+source_hash = afff36d392885120bcac079148c177d1f6f7730ec3d47233aa51b0afa4db94a5
+patch_directory = boost
diff --git a/vendor/csri/Doxyfile b/subprojects/csri/Doxyfile
similarity index 100%
rename from vendor/csri/Doxyfile
rename to subprojects/csri/Doxyfile
diff --git a/vendor/csri/LICENSE b/subprojects/csri/LICENSE
similarity index 100%
rename from vendor/csri/LICENSE
rename to subprojects/csri/LICENSE
diff --git a/vendor/csri/Makefile.am b/subprojects/csri/Makefile.am
similarity index 100%
rename from vendor/csri/Makefile.am
rename to subprojects/csri/Makefile.am
diff --git a/vendor/csri/ac/Makefile.am b/subprojects/csri/ac/Makefile.am
similarity index 100%
rename from vendor/csri/ac/Makefile.am
rename to subprojects/csri/ac/Makefile.am
diff --git a/vendor/csri/acinclude.m4 b/subprojects/csri/acinclude.m4
similarity index 100%
rename from vendor/csri/acinclude.m4
rename to subprojects/csri/acinclude.m4
diff --git a/vendor/csri/backends/Makefile.am b/subprojects/csri/backends/Makefile.am
similarity index 100%
rename from vendor/csri/backends/Makefile.am
rename to subprojects/csri/backends/Makefile.am
diff --git a/vendor/csri/backends/libass/Makefile.am b/subprojects/csri/backends/libass/Makefile.am
similarity index 100%
rename from vendor/csri/backends/libass/Makefile.am
rename to subprojects/csri/backends/libass/Makefile.am
diff --git a/vendor/csri/backends/libass/libass_csri.c b/subprojects/csri/backends/libass/libass_csri.c
similarity index 100%
rename from vendor/csri/backends/libass/libass_csri.c
rename to subprojects/csri/backends/libass/libass_csri.c
diff --git a/vendor/csri/bootstrap b/subprojects/csri/bootstrap
old mode 100755
new mode 100644
similarity index 100%
rename from vendor/csri/bootstrap
rename to subprojects/csri/bootstrap
diff --git a/vendor/csri/configure.ac b/subprojects/csri/configure.ac
similarity index 100%
rename from vendor/csri/configure.ac
rename to subprojects/csri/configure.ac
diff --git a/vendor/csri/csri.pc.in b/subprojects/csri/csri.pc.in
similarity index 100%
rename from vendor/csri/csri.pc.in
rename to subprojects/csri/csri.pc.in
diff --git a/vendor/csri/csri_2008.vcproj b/subprojects/csri/csri_2008.vcproj
similarity index 100%
rename from vendor/csri/csri_2008.vcproj
rename to subprojects/csri/csri_2008.vcproj
diff --git a/vendor/csri/frontends/Makefile.am b/subprojects/csri/frontends/Makefile.am
similarity index 100%
rename from vendor/csri/frontends/Makefile.am
rename to subprojects/csri/frontends/Makefile.am
diff --git a/vendor/csri/frontends/avisynth25/Makefile.am b/subprojects/csri/frontends/avisynth25/Makefile.am
similarity index 100%
rename from vendor/csri/frontends/avisynth25/Makefile.am
rename to subprojects/csri/frontends/avisynth25/Makefile.am
diff --git a/vendor/csri/frontends/avisynth25/avisynth.cpp b/subprojects/csri/frontends/avisynth25/avisynth.cpp
similarity index 100%
rename from vendor/csri/frontends/avisynth25/avisynth.cpp
rename to subprojects/csri/frontends/avisynth25/avisynth.cpp
diff --git a/vendor/csri/frontends/avisynth25/avisynth.h b/subprojects/csri/frontends/avisynth25/avisynth.h
similarity index 100%
rename from vendor/csri/frontends/avisynth25/avisynth.h
rename to subprojects/csri/frontends/avisynth25/avisynth.h
diff --git a/vendor/csri/frontends/cmdline/Makefile.am b/subprojects/csri/frontends/cmdline/Makefile.am
similarity index 100%
rename from vendor/csri/frontends/cmdline/Makefile.am
rename to subprojects/csri/frontends/cmdline/Makefile.am
diff --git a/vendor/csri/frontends/cmdline/cmdmain.c b/subprojects/csri/frontends/cmdline/cmdmain.c
similarity index 100%
rename from vendor/csri/frontends/cmdline/cmdmain.c
rename to subprojects/csri/frontends/cmdline/cmdmain.c
diff --git a/vendor/csri/frontends/cmdline/render.c b/subprojects/csri/frontends/cmdline/render.c
similarity index 100%
rename from vendor/csri/frontends/cmdline/render.c
rename to subprojects/csri/frontends/cmdline/render.c
diff --git a/vendor/csri/frontends/cmdline/render.h b/subprojects/csri/frontends/cmdline/render.h
similarity index 100%
rename from vendor/csri/frontends/cmdline/render.h
rename to subprojects/csri/frontends/cmdline/render.h
diff --git a/vendor/csri/include/Makefile.am b/subprojects/csri/include/Makefile.am
similarity index 100%
rename from vendor/csri/include/Makefile.am
rename to subprojects/csri/include/Makefile.am
diff --git a/vendor/csri/include/csri/csri.h b/subprojects/csri/include/csri/csri.h
similarity index 100%
rename from vendor/csri/include/csri/csri.h
rename to subprojects/csri/include/csri/csri.h
diff --git a/vendor/csri/include/csri/fmtids.h b/subprojects/csri/include/csri/fmtids.h
similarity index 100%
rename from vendor/csri/include/csri/fmtids.h
rename to subprojects/csri/include/csri/fmtids.h
diff --git a/vendor/csri/include/csri/logging.h b/subprojects/csri/include/csri/logging.h
similarity index 100%
rename from vendor/csri/include/csri/logging.h
rename to subprojects/csri/include/csri/logging.h
diff --git a/vendor/csri/include/csri/openerr.h b/subprojects/csri/include/csri/openerr.h
similarity index 100%
rename from vendor/csri/include/csri/openerr.h
rename to subprojects/csri/include/csri/openerr.h
diff --git a/vendor/csri/include/csri/stream.h b/subprojects/csri/include/csri/stream.h
similarity index 100%
rename from vendor/csri/include/csri/stream.h
rename to subprojects/csri/include/csri/stream.h
diff --git a/vendor/csri/include/subhelp.h b/subprojects/csri/include/subhelp.h
similarity index 100%
rename from vendor/csri/include/subhelp.h
rename to subprojects/csri/include/subhelp.h
diff --git a/vendor/csri/include/visibility.h b/subprojects/csri/include/visibility.h
similarity index 100%
rename from vendor/csri/include/visibility.h
rename to subprojects/csri/include/visibility.h
diff --git a/vendor/csri/lib/Makefile.am b/subprojects/csri/lib/Makefile.am
similarity index 100%
rename from vendor/csri/lib/Makefile.am
rename to subprojects/csri/lib/Makefile.am
diff --git a/vendor/csri/lib/csrilib.h b/subprojects/csri/lib/csrilib.h
similarity index 100%
rename from vendor/csri/lib/csrilib.h
rename to subprojects/csri/lib/csrilib.h
diff --git a/vendor/csri/lib/list.c b/subprojects/csri/lib/list.c
similarity index 100%
rename from vendor/csri/lib/list.c
rename to subprojects/csri/lib/list.c
diff --git a/vendor/csri/lib/posix/csrilib_os.h b/subprojects/csri/lib/posix/csrilib_os.h
similarity index 100%
rename from vendor/csri/lib/posix/csrilib_os.h
rename to subprojects/csri/lib/posix/csrilib_os.h
diff --git a/vendor/csri/lib/posix/enumerate.c b/subprojects/csri/lib/posix/enumerate.c
similarity index 100%
rename from vendor/csri/lib/posix/enumerate.c
rename to subprojects/csri/lib/posix/enumerate.c
diff --git a/vendor/csri/lib/win32/csrilib_os.h b/subprojects/csri/lib/win32/csrilib_os.h
similarity index 100%
rename from vendor/csri/lib/win32/csrilib_os.h
rename to subprojects/csri/lib/win32/csrilib_os.h
diff --git a/vendor/csri/lib/win32/enumerate.c b/subprojects/csri/lib/win32/enumerate.c
similarity index 100%
rename from vendor/csri/lib/win32/enumerate.c
rename to subprojects/csri/lib/win32/enumerate.c
diff --git a/vendor/csri/lib/wrap.c b/subprojects/csri/lib/wrap.c
similarity index 100%
rename from vendor/csri/lib/wrap.c
rename to subprojects/csri/lib/wrap.c
diff --git a/vendor/csri/subhelp/Makefile.am b/subprojects/csri/subhelp/Makefile.am
similarity index 100%
rename from vendor/csri/subhelp/Makefile.am
rename to subprojects/csri/subhelp/Makefile.am
diff --git a/vendor/csri/subhelp/logging.c b/subprojects/csri/subhelp/logging.c
similarity index 100%
rename from vendor/csri/subhelp/logging.c
rename to subprojects/csri/subhelp/logging.c
diff --git a/vendor/csri/subhelp/posix/openfile.c b/subprojects/csri/subhelp/posix/openfile.c
similarity index 100%
rename from vendor/csri/subhelp/posix/openfile.c
rename to subprojects/csri/subhelp/posix/openfile.c
diff --git a/vendor/csri/subhelp/win32/openfile.c b/subprojects/csri/subhelp/win32/openfile.c
similarity index 100%
rename from vendor/csri/subhelp/win32/openfile.c
rename to subprojects/csri/subhelp/win32/openfile.c
diff --git a/subprojects/expat.wrap b/subprojects/expat.wrap
new file mode 100644
index 000000000..0a605d019
--- /dev/null
+++ b/subprojects/expat.wrap
@@ -0,0 +1,10 @@
+[wrap-file]
+directory = expat-2.2.6
+
+source_url = https://github.com/libexpat/libexpat/releases/download/R_2_2_6/expat-2.2.6.tar.bz2
+source_filename = expat-2.2.6.tar.bz2
+source_hash = 17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2
+
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/expat/2.2.6/1/get_zip
+patch_filename = expat-2.2.6-1-wrap.zip
+patch_hash = b8312fae757c7bff6f0cb430108104441a3da7a0a333809f5c80b354157eaa4d
diff --git a/subprojects/ffmpeg.wrap b/subprojects/ffmpeg.wrap
new file mode 100644
index 000000000..0a59585ad
--- /dev/null
+++ b/subprojects/ffmpeg.wrap
@@ -0,0 +1,11 @@
+[wrap-git]
+directory = ffmpeg
+url = https://gitlab.freedesktop.org/gstreamer/meson-ports/ffmpeg.git
+revision = meson-4.3
+
+[provide]
+libavformat = libavformat_dep
+libavcodec = libavcodec_dep
+libswscale = libswscale_dep
+libavutil = libavutil_dep
+libswresample = libswresample_dep
diff --git a/subprojects/ffms2.wrap b/subprojects/ffms2.wrap
new file mode 100644
index 000000000..9cb18212f
--- /dev/null
+++ b/subprojects/ffms2.wrap
@@ -0,0 +1,9 @@
+[wrap-file]
+directory = ffms2-2.40
+source_url = https://github.com/FFMS/ffms2/archive/2.40.tar.gz
+source_filename = 2.40.tar.gz
+source_hash = 82e95662946f3d6e1b529eadbd72bed196adfbc41368b2d50493efce6e716320
+patch_directory = ffms2
+
+[provide]
+ffms2 = ffms2_dep
diff --git a/subprojects/freetype2.wrap b/subprojects/freetype2.wrap
new file mode 100644
index 000000000..d9903f108
--- /dev/null
+++ b/subprojects/freetype2.wrap
@@ -0,0 +1,8 @@
+[wrap-git]
+directory = freetype2
+url = https://git.savannah.gnu.org/git/freetype/freetype2.git
+revision = master
+
+[provide]
+freetype = freetype2_dep
+freetype2 = freetype2_dep
diff --git a/subprojects/fribidi.wrap b/subprojects/fribidi.wrap
new file mode 100644
index 000000000..55458fca9
--- /dev/null
+++ b/subprojects/fribidi.wrap
@@ -0,0 +1,7 @@
+[wrap-git]
+directory = fribidi
+url = https://github.com/fribidi/fribidi.git
+revision = master
+
+[provide]
+fribidi = libfribidi_dep
diff --git a/subprojects/gtest.wrap b/subprojects/gtest.wrap
new file mode 100644
index 000000000..ba9c9b95f
--- /dev/null
+++ b/subprojects/gtest.wrap
@@ -0,0 +1,10 @@
+[wrap-file]
+directory = googletest-release-1.8.1
+
+source_url = https://github.com/google/googletest/archive/release-1.8.1.zip
+source_filename = gtest-1.8.1.zip
+source_hash = 927827c183d01734cc5cfef85e0ff3f5a92ffe6188e0d18e909c5efebf28a0c7
+
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/gtest/1.8.1/1/get_zip
+patch_filename = gtest-1.8.1-1-wrap.zip
+patch_hash = f79f5fd46e09507b3f2e09a51ea6eb20020effe543335f5aee59f30cc8d15805
diff --git a/subprojects/harfbuzz.wrap b/subprojects/harfbuzz.wrap
new file mode 100644
index 000000000..08bfb0850
--- /dev/null
+++ b/subprojects/harfbuzz.wrap
@@ -0,0 +1,7 @@
+[wrap-git]
+directory = harfbuzz
+url = https://github.com/harfbuzz/harfbuzz
+revision = master
+
+[provide]
+harfbuzz = libharfbuzz_dep
diff --git a/vendor/hunspell/ABOUT-NLS b/subprojects/hunspell/ABOUT-NLS
similarity index 100%
rename from vendor/hunspell/ABOUT-NLS
rename to subprojects/hunspell/ABOUT-NLS
diff --git a/vendor/hunspell/AUTHORS b/subprojects/hunspell/AUTHORS
similarity index 100%
rename from vendor/hunspell/AUTHORS
rename to subprojects/hunspell/AUTHORS
diff --git a/vendor/hunspell/AUTHORS.myspell b/subprojects/hunspell/AUTHORS.myspell
similarity index 100%
rename from vendor/hunspell/AUTHORS.myspell
rename to subprojects/hunspell/AUTHORS.myspell
diff --git a/vendor/hunspell/BUGS b/subprojects/hunspell/BUGS
similarity index 100%
rename from vendor/hunspell/BUGS
rename to subprojects/hunspell/BUGS
diff --git a/vendor/hunspell/COPYING b/subprojects/hunspell/COPYING
similarity index 100%
rename from vendor/hunspell/COPYING
rename to subprojects/hunspell/COPYING
diff --git a/vendor/hunspell/COPYING.LGPL b/subprojects/hunspell/COPYING.LGPL
similarity index 100%
rename from vendor/hunspell/COPYING.LGPL
rename to subprojects/hunspell/COPYING.LGPL
diff --git a/vendor/hunspell/COPYING.MPL b/subprojects/hunspell/COPYING.MPL
similarity index 100%
rename from vendor/hunspell/COPYING.MPL
rename to subprojects/hunspell/COPYING.MPL
diff --git a/vendor/hunspell/ChangeLog b/subprojects/hunspell/ChangeLog
similarity index 100%
rename from vendor/hunspell/ChangeLog
rename to subprojects/hunspell/ChangeLog
diff --git a/vendor/hunspell/ChangeLog.O b/subprojects/hunspell/ChangeLog.O
similarity index 100%
rename from vendor/hunspell/ChangeLog.O
rename to subprojects/hunspell/ChangeLog.O
diff --git a/vendor/hunspell/INSTALL b/subprojects/hunspell/INSTALL
similarity index 100%
rename from vendor/hunspell/INSTALL
rename to subprojects/hunspell/INSTALL
diff --git a/vendor/hunspell/NEWS b/subprojects/hunspell/NEWS
similarity index 100%
rename from vendor/hunspell/NEWS
rename to subprojects/hunspell/NEWS
diff --git a/vendor/hunspell/README b/subprojects/hunspell/README
similarity index 100%
rename from vendor/hunspell/README
rename to subprojects/hunspell/README
diff --git a/vendor/hunspell/README.myspell b/subprojects/hunspell/README.myspell
similarity index 100%
rename from vendor/hunspell/README.myspell
rename to subprojects/hunspell/README.myspell
diff --git a/vendor/hunspell/THANKS b/subprojects/hunspell/THANKS
similarity index 100%
rename from vendor/hunspell/THANKS
rename to subprojects/hunspell/THANKS
diff --git a/vendor/hunspell/TODO b/subprojects/hunspell/TODO
similarity index 100%
rename from vendor/hunspell/TODO
rename to subprojects/hunspell/TODO
diff --git a/vendor/hunspell/license.hunspell b/subprojects/hunspell/license.hunspell
similarity index 100%
rename from vendor/hunspell/license.hunspell
rename to subprojects/hunspell/license.hunspell
diff --git a/vendor/hunspell/license.myspell b/subprojects/hunspell/license.myspell
similarity index 100%
rename from vendor/hunspell/license.myspell
rename to subprojects/hunspell/license.myspell
diff --git a/vendor/hunspell/src/hunspell/README b/subprojects/hunspell/src/hunspell/README
similarity index 100%
rename from vendor/hunspell/src/hunspell/README
rename to subprojects/hunspell/src/hunspell/README
diff --git a/vendor/hunspell/src/hunspell/affentry.cxx b/subprojects/hunspell/src/hunspell/affentry.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/affentry.cxx
rename to subprojects/hunspell/src/hunspell/affentry.cxx
diff --git a/vendor/hunspell/src/hunspell/affentry.hxx b/subprojects/hunspell/src/hunspell/affentry.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/affentry.hxx
rename to subprojects/hunspell/src/hunspell/affentry.hxx
diff --git a/vendor/hunspell/src/hunspell/affixmgr.cxx b/subprojects/hunspell/src/hunspell/affixmgr.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/affixmgr.cxx
rename to subprojects/hunspell/src/hunspell/affixmgr.cxx
diff --git a/vendor/hunspell/src/hunspell/affixmgr.hxx b/subprojects/hunspell/src/hunspell/affixmgr.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/affixmgr.hxx
rename to subprojects/hunspell/src/hunspell/affixmgr.hxx
diff --git a/vendor/hunspell/src/hunspell/atypes.hxx b/subprojects/hunspell/src/hunspell/atypes.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/atypes.hxx
rename to subprojects/hunspell/src/hunspell/atypes.hxx
diff --git a/vendor/hunspell/src/hunspell/baseaffix.hxx b/subprojects/hunspell/src/hunspell/baseaffix.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/baseaffix.hxx
rename to subprojects/hunspell/src/hunspell/baseaffix.hxx
diff --git a/vendor/hunspell/src/hunspell/csutil.cxx b/subprojects/hunspell/src/hunspell/csutil.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/csutil.cxx
rename to subprojects/hunspell/src/hunspell/csutil.cxx
diff --git a/vendor/hunspell/src/hunspell/csutil.hxx b/subprojects/hunspell/src/hunspell/csutil.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/csutil.hxx
rename to subprojects/hunspell/src/hunspell/csutil.hxx
diff --git a/vendor/hunspell/src/hunspell/dictmgr.cxx b/subprojects/hunspell/src/hunspell/dictmgr.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/dictmgr.cxx
rename to subprojects/hunspell/src/hunspell/dictmgr.cxx
diff --git a/vendor/hunspell/src/hunspell/dictmgr.hxx b/subprojects/hunspell/src/hunspell/dictmgr.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/dictmgr.hxx
rename to subprojects/hunspell/src/hunspell/dictmgr.hxx
diff --git a/vendor/hunspell/src/hunspell/filemgr.cxx b/subprojects/hunspell/src/hunspell/filemgr.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/filemgr.cxx
rename to subprojects/hunspell/src/hunspell/filemgr.cxx
diff --git a/vendor/hunspell/src/hunspell/filemgr.hxx b/subprojects/hunspell/src/hunspell/filemgr.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/filemgr.hxx
rename to subprojects/hunspell/src/hunspell/filemgr.hxx
diff --git a/vendor/hunspell/src/hunspell/hashmgr.cxx b/subprojects/hunspell/src/hunspell/hashmgr.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hashmgr.cxx
rename to subprojects/hunspell/src/hunspell/hashmgr.cxx
diff --git a/vendor/hunspell/src/hunspell/hashmgr.hxx b/subprojects/hunspell/src/hunspell/hashmgr.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hashmgr.hxx
rename to subprojects/hunspell/src/hunspell/hashmgr.hxx
diff --git a/vendor/hunspell/src/hunspell/htypes.hxx b/subprojects/hunspell/src/hunspell/htypes.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/htypes.hxx
rename to subprojects/hunspell/src/hunspell/htypes.hxx
diff --git a/vendor/hunspell/src/hunspell/hunspell.cxx b/subprojects/hunspell/src/hunspell/hunspell.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunspell.cxx
rename to subprojects/hunspell/src/hunspell/hunspell.cxx
diff --git a/vendor/hunspell/src/hunspell/hunspell.dsp b/subprojects/hunspell/src/hunspell/hunspell.dsp
similarity index 95%
rename from vendor/hunspell/src/hunspell/hunspell.dsp
rename to subprojects/hunspell/src/hunspell/hunspell.dsp
index c18262174..05e072fba 100644
--- a/vendor/hunspell/src/hunspell/hunspell.dsp
+++ b/subprojects/hunspell/src/hunspell/hunspell.dsp
@@ -1,164 +1,164 @@
-# Microsoft Developer Studio Project File - Name="hunspell" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=hunspell - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "hunspell.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "hunspell.mak" CFG="hunspell - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "hunspell - Win32 Release" (based on "Win32 (x86) Static Library")
-!MESSAGE "hunspell - Win32 Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "hunspell - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "W32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "W32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-# ADD BASE RSC /l 0x40e /d "NDEBUG"
-# ADD RSC /l 0x40e /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo
-
-!ELSEIF "$(CFG)" == "hunspell - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "W32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "W32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x40e /d "_DEBUG"
-# ADD RSC /l 0x40e /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo
-
-!ENDIF
-
-# Begin Target
-
-# Name "hunspell - Win32 Release"
-# Name "hunspell - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\affentry.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\affixmgr.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\csutil.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\dictmgr.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\hashmgr.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\hunspell.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\suggestmgr.cxx
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\affentry.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\affixmgr.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\atypes.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\baseaffix.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\csutil.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\dictmgr.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\hashmgr.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\htypes.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\langnum.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\hunspell.hxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\suggestmgr.hxx
-# End Source File
-# End Group
-# End Target
-# End Project
+# Microsoft Developer Studio Project File - Name="hunspell" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Static Library" 0x0104
+
+CFG=hunspell - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "hunspell.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "hunspell.mak" CFG="hunspell - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "hunspell - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "hunspell - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "hunspell - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "W32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
+# ADD CPP /nologo /W3 /GX /O2 /D "W32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
+# ADD BASE RSC /l 0x40e /d "NDEBUG"
+# ADD RSC /l 0x40e /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LIB32=link.exe -lib
+# ADD BASE LIB32 /nologo
+# ADD LIB32 /nologo
+
+!ELSEIF "$(CFG)" == "hunspell - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "W32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "W32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
+# ADD BASE RSC /l 0x40e /d "_DEBUG"
+# ADD RSC /l 0x40e /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LIB32=link.exe -lib
+# ADD BASE LIB32 /nologo
+# ADD LIB32 /nologo
+
+!ENDIF
+
+# Begin Target
+
+# Name "hunspell - Win32 Release"
+# Name "hunspell - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\affentry.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\affixmgr.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\csutil.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\dictmgr.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\hashmgr.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\hunspell.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\suggestmgr.cxx
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=.\affentry.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\affixmgr.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\atypes.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\baseaffix.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\csutil.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\dictmgr.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\hashmgr.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\htypes.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\langnum.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\hunspell.hxx
+# End Source File
+# Begin Source File
+
+SOURCE=.\suggestmgr.hxx
+# End Source File
+# End Group
+# End Target
+# End Project
diff --git a/vendor/hunspell/src/hunspell/hunspell.h b/subprojects/hunspell/src/hunspell/hunspell.h
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunspell.h
rename to subprojects/hunspell/src/hunspell/hunspell.h
diff --git a/vendor/hunspell/src/hunspell/hunspell.hxx b/subprojects/hunspell/src/hunspell/hunspell.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunspell.hxx
rename to subprojects/hunspell/src/hunspell/hunspell.hxx
diff --git a/vendor/hunspell/src/hunspell/hunvisapi.h b/subprojects/hunspell/src/hunspell/hunvisapi.h
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunvisapi.h
rename to subprojects/hunspell/src/hunspell/hunvisapi.h
diff --git a/vendor/hunspell/src/hunspell/hunvisapi.h.in b/subprojects/hunspell/src/hunspell/hunvisapi.h.in
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunvisapi.h.in
rename to subprojects/hunspell/src/hunspell/hunvisapi.h.in
diff --git a/vendor/hunspell/src/hunspell/hunzip.cxx b/subprojects/hunspell/src/hunspell/hunzip.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunzip.cxx
rename to subprojects/hunspell/src/hunspell/hunzip.cxx
diff --git a/vendor/hunspell/src/hunspell/hunzip.hxx b/subprojects/hunspell/src/hunspell/hunzip.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/hunzip.hxx
rename to subprojects/hunspell/src/hunspell/hunzip.hxx
diff --git a/vendor/hunspell/src/hunspell/langnum.hxx b/subprojects/hunspell/src/hunspell/langnum.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/langnum.hxx
rename to subprojects/hunspell/src/hunspell/langnum.hxx
diff --git a/vendor/hunspell/src/hunspell/license.hunspell b/subprojects/hunspell/src/hunspell/license.hunspell
similarity index 100%
rename from vendor/hunspell/src/hunspell/license.hunspell
rename to subprojects/hunspell/src/hunspell/license.hunspell
diff --git a/vendor/hunspell/src/hunspell/license.myspell b/subprojects/hunspell/src/hunspell/license.myspell
similarity index 100%
rename from vendor/hunspell/src/hunspell/license.myspell
rename to subprojects/hunspell/src/hunspell/license.myspell
diff --git a/vendor/hunspell/src/hunspell/makefile.mk b/subprojects/hunspell/src/hunspell/makefile.mk
similarity index 100%
rename from vendor/hunspell/src/hunspell/makefile.mk
rename to subprojects/hunspell/src/hunspell/makefile.mk
diff --git a/vendor/hunspell/src/hunspell/phonet.cxx b/subprojects/hunspell/src/hunspell/phonet.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/phonet.cxx
rename to subprojects/hunspell/src/hunspell/phonet.cxx
diff --git a/vendor/hunspell/src/hunspell/phonet.hxx b/subprojects/hunspell/src/hunspell/phonet.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/phonet.hxx
rename to subprojects/hunspell/src/hunspell/phonet.hxx
diff --git a/vendor/hunspell/src/hunspell/replist.cxx b/subprojects/hunspell/src/hunspell/replist.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/replist.cxx
rename to subprojects/hunspell/src/hunspell/replist.cxx
diff --git a/vendor/hunspell/src/hunspell/replist.hxx b/subprojects/hunspell/src/hunspell/replist.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/replist.hxx
rename to subprojects/hunspell/src/hunspell/replist.hxx
diff --git a/vendor/hunspell/src/hunspell/suggestmgr.cxx b/subprojects/hunspell/src/hunspell/suggestmgr.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/suggestmgr.cxx
rename to subprojects/hunspell/src/hunspell/suggestmgr.cxx
diff --git a/vendor/hunspell/src/hunspell/suggestmgr.hxx b/subprojects/hunspell/src/hunspell/suggestmgr.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/suggestmgr.hxx
rename to subprojects/hunspell/src/hunspell/suggestmgr.hxx
diff --git a/vendor/hunspell/src/hunspell/utf_info.cxx b/subprojects/hunspell/src/hunspell/utf_info.cxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/utf_info.cxx
rename to subprojects/hunspell/src/hunspell/utf_info.cxx
diff --git a/vendor/hunspell/src/hunspell/w_char.hxx b/subprojects/hunspell/src/hunspell/w_char.hxx
similarity index 100%
rename from vendor/hunspell/src/hunspell/w_char.hxx
rename to subprojects/hunspell/src/hunspell/w_char.hxx
diff --git a/vendor/hunspell/src/win_api/config.h b/subprojects/hunspell/src/win_api/config.h
similarity index 100%
rename from vendor/hunspell/src/win_api/config.h
rename to subprojects/hunspell/src/win_api/config.h
diff --git a/vendor/iconv/AUTHORS b/subprojects/iconv/AUTHORS
similarity index 100%
rename from vendor/iconv/AUTHORS
rename to subprojects/iconv/AUTHORS
diff --git a/vendor/iconv/COPYING b/subprojects/iconv/COPYING
similarity index 100%
rename from vendor/iconv/COPYING
rename to subprojects/iconv/COPYING
diff --git a/vendor/iconv/ChangeLog b/subprojects/iconv/ChangeLog
similarity index 100%
rename from vendor/iconv/ChangeLog
rename to subprojects/iconv/ChangeLog
diff --git a/vendor/iconv/DEPENDENCIES b/subprojects/iconv/DEPENDENCIES
similarity index 100%
rename from vendor/iconv/DEPENDENCIES
rename to subprojects/iconv/DEPENDENCIES
diff --git a/vendor/iconv/DESIGN b/subprojects/iconv/DESIGN
similarity index 100%
rename from vendor/iconv/DESIGN
rename to subprojects/iconv/DESIGN
diff --git a/vendor/iconv/HACKING b/subprojects/iconv/HACKING
similarity index 100%
rename from vendor/iconv/HACKING
rename to subprojects/iconv/HACKING
diff --git a/vendor/iconv/NEWS b/subprojects/iconv/NEWS
similarity index 100%
rename from vendor/iconv/NEWS
rename to subprojects/iconv/NEWS
diff --git a/vendor/iconv/NOTES b/subprojects/iconv/NOTES
similarity index 100%
rename from vendor/iconv/NOTES
rename to subprojects/iconv/NOTES
diff --git a/vendor/iconv/PORTS b/subprojects/iconv/PORTS
similarity index 100%
rename from vendor/iconv/PORTS
rename to subprojects/iconv/PORTS
diff --git a/vendor/iconv/README b/subprojects/iconv/README
similarity index 100%
rename from vendor/iconv/README
rename to subprojects/iconv/README
diff --git a/vendor/iconv/THANKS b/subprojects/iconv/THANKS
similarity index 100%
rename from vendor/iconv/THANKS
rename to subprojects/iconv/THANKS
diff --git a/vendor/iconv/include/iconv.h b/subprojects/iconv/include/iconv.h
similarity index 100%
rename from vendor/iconv/include/iconv.h
rename to subprojects/iconv/include/iconv.h
diff --git a/vendor/iconv/include/libcharset.h b/subprojects/iconv/include/libcharset.h
similarity index 100%
rename from vendor/iconv/include/libcharset.h
rename to subprojects/iconv/include/libcharset.h
diff --git a/vendor/iconv/include/localcharset.h b/subprojects/iconv/include/localcharset.h
similarity index 100%
rename from vendor/iconv/include/localcharset.h
rename to subprojects/iconv/include/localcharset.h
diff --git a/vendor/iconv/include/stdbool.h b/subprojects/iconv/include/stdbool.h
similarity index 100%
rename from vendor/iconv/include/stdbool.h
rename to subprojects/iconv/include/stdbool.h
diff --git a/vendor/iconv/libcharset/config.h b/subprojects/iconv/libcharset/config.h
similarity index 100%
rename from vendor/iconv/libcharset/config.h
rename to subprojects/iconv/libcharset/config.h
diff --git a/vendor/iconv/libcharset/localcharset.c b/subprojects/iconv/libcharset/localcharset.c
similarity index 100%
rename from vendor/iconv/libcharset/localcharset.c
rename to subprojects/iconv/libcharset/localcharset.c
diff --git a/vendor/iconv/libcharset/relocatable.c b/subprojects/iconv/libcharset/relocatable.c
similarity index 100%
rename from vendor/iconv/libcharset/relocatable.c
rename to subprojects/iconv/libcharset/relocatable.c
diff --git a/vendor/iconv/libcharset/relocatable.h b/subprojects/iconv/libcharset/relocatable.h
similarity index 100%
rename from vendor/iconv/libcharset/relocatable.h
rename to subprojects/iconv/libcharset/relocatable.h
diff --git a/vendor/iconv/libiconv/aliases.h b/subprojects/iconv/libiconv/aliases.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases.h
rename to subprojects/iconv/libiconv/aliases.h
diff --git a/vendor/iconv/libiconv/aliases2.h b/subprojects/iconv/libiconv/aliases2.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases2.h
rename to subprojects/iconv/libiconv/aliases2.h
diff --git a/vendor/iconv/libiconv/aliases_aix.h b/subprojects/iconv/libiconv/aliases_aix.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_aix.h
rename to subprojects/iconv/libiconv/aliases_aix.h
diff --git a/vendor/iconv/libiconv/aliases_aix_sysaix.h b/subprojects/iconv/libiconv/aliases_aix_sysaix.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_aix_sysaix.h
rename to subprojects/iconv/libiconv/aliases_aix_sysaix.h
diff --git a/vendor/iconv/libiconv/aliases_dos.h b/subprojects/iconv/libiconv/aliases_dos.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_dos.h
rename to subprojects/iconv/libiconv/aliases_dos.h
diff --git a/vendor/iconv/libiconv/aliases_extra.h b/subprojects/iconv/libiconv/aliases_extra.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_extra.h
rename to subprojects/iconv/libiconv/aliases_extra.h
diff --git a/vendor/iconv/libiconv/aliases_osf1.h b/subprojects/iconv/libiconv/aliases_osf1.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_osf1.h
rename to subprojects/iconv/libiconv/aliases_osf1.h
diff --git a/vendor/iconv/libiconv/aliases_osf1_sysosf1.h b/subprojects/iconv/libiconv/aliases_osf1_sysosf1.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_osf1_sysosf1.h
rename to subprojects/iconv/libiconv/aliases_osf1_sysosf1.h
diff --git a/vendor/iconv/libiconv/aliases_sysaix.h b/subprojects/iconv/libiconv/aliases_sysaix.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_sysaix.h
rename to subprojects/iconv/libiconv/aliases_sysaix.h
diff --git a/vendor/iconv/libiconv/aliases_syshpux.h b/subprojects/iconv/libiconv/aliases_syshpux.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_syshpux.h
rename to subprojects/iconv/libiconv/aliases_syshpux.h
diff --git a/vendor/iconv/libiconv/aliases_sysosf1.h b/subprojects/iconv/libiconv/aliases_sysosf1.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_sysosf1.h
rename to subprojects/iconv/libiconv/aliases_sysosf1.h
diff --git a/vendor/iconv/libiconv/aliases_syssolaris.h b/subprojects/iconv/libiconv/aliases_syssolaris.h
similarity index 100%
rename from vendor/iconv/libiconv/aliases_syssolaris.h
rename to subprojects/iconv/libiconv/aliases_syssolaris.h
diff --git a/vendor/iconv/libiconv/armscii_8.h b/subprojects/iconv/libiconv/armscii_8.h
similarity index 100%
rename from vendor/iconv/libiconv/armscii_8.h
rename to subprojects/iconv/libiconv/armscii_8.h
diff --git a/vendor/iconv/libiconv/ascii.h b/subprojects/iconv/libiconv/ascii.h
similarity index 100%
rename from vendor/iconv/libiconv/ascii.h
rename to subprojects/iconv/libiconv/ascii.h
diff --git a/vendor/iconv/libiconv/atarist.h b/subprojects/iconv/libiconv/atarist.h
similarity index 100%
rename from vendor/iconv/libiconv/atarist.h
rename to subprojects/iconv/libiconv/atarist.h
diff --git a/vendor/iconv/libiconv/big5.h b/subprojects/iconv/libiconv/big5.h
similarity index 100%
rename from vendor/iconv/libiconv/big5.h
rename to subprojects/iconv/libiconv/big5.h
diff --git a/vendor/iconv/libiconv/big5_2003.h b/subprojects/iconv/libiconv/big5_2003.h
similarity index 100%
rename from vendor/iconv/libiconv/big5_2003.h
rename to subprojects/iconv/libiconv/big5_2003.h
diff --git a/vendor/iconv/libiconv/big5hkscs1999.h b/subprojects/iconv/libiconv/big5hkscs1999.h
similarity index 100%
rename from vendor/iconv/libiconv/big5hkscs1999.h
rename to subprojects/iconv/libiconv/big5hkscs1999.h
diff --git a/vendor/iconv/libiconv/big5hkscs2001.h b/subprojects/iconv/libiconv/big5hkscs2001.h
similarity index 100%
rename from vendor/iconv/libiconv/big5hkscs2001.h
rename to subprojects/iconv/libiconv/big5hkscs2001.h
diff --git a/vendor/iconv/libiconv/big5hkscs2004.h b/subprojects/iconv/libiconv/big5hkscs2004.h
similarity index 100%
rename from vendor/iconv/libiconv/big5hkscs2004.h
rename to subprojects/iconv/libiconv/big5hkscs2004.h
diff --git a/vendor/iconv/libiconv/c99.h b/subprojects/iconv/libiconv/c99.h
similarity index 100%
rename from vendor/iconv/libiconv/c99.h
rename to subprojects/iconv/libiconv/c99.h
diff --git a/vendor/iconv/libiconv/canonical.h b/subprojects/iconv/libiconv/canonical.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical.h
rename to subprojects/iconv/libiconv/canonical.h
diff --git a/vendor/iconv/libiconv/canonical_aix.h b/subprojects/iconv/libiconv/canonical_aix.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_aix.h
rename to subprojects/iconv/libiconv/canonical_aix.h
diff --git a/vendor/iconv/libiconv/canonical_aix_sysaix.h b/subprojects/iconv/libiconv/canonical_aix_sysaix.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_aix_sysaix.h
rename to subprojects/iconv/libiconv/canonical_aix_sysaix.h
diff --git a/vendor/iconv/libiconv/canonical_dos.h b/subprojects/iconv/libiconv/canonical_dos.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_dos.h
rename to subprojects/iconv/libiconv/canonical_dos.h
diff --git a/vendor/iconv/libiconv/canonical_extra.h b/subprojects/iconv/libiconv/canonical_extra.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_extra.h
rename to subprojects/iconv/libiconv/canonical_extra.h
diff --git a/vendor/iconv/libiconv/canonical_local.h b/subprojects/iconv/libiconv/canonical_local.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_local.h
rename to subprojects/iconv/libiconv/canonical_local.h
diff --git a/vendor/iconv/libiconv/canonical_local_sysaix.h b/subprojects/iconv/libiconv/canonical_local_sysaix.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_local_sysaix.h
rename to subprojects/iconv/libiconv/canonical_local_sysaix.h
diff --git a/vendor/iconv/libiconv/canonical_local_syshpux.h b/subprojects/iconv/libiconv/canonical_local_syshpux.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_local_syshpux.h
rename to subprojects/iconv/libiconv/canonical_local_syshpux.h
diff --git a/vendor/iconv/libiconv/canonical_local_sysosf1.h b/subprojects/iconv/libiconv/canonical_local_sysosf1.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_local_sysosf1.h
rename to subprojects/iconv/libiconv/canonical_local_sysosf1.h
diff --git a/vendor/iconv/libiconv/canonical_local_syssolaris.h b/subprojects/iconv/libiconv/canonical_local_syssolaris.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_local_syssolaris.h
rename to subprojects/iconv/libiconv/canonical_local_syssolaris.h
diff --git a/vendor/iconv/libiconv/canonical_osf1.h b/subprojects/iconv/libiconv/canonical_osf1.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_osf1.h
rename to subprojects/iconv/libiconv/canonical_osf1.h
diff --git a/vendor/iconv/libiconv/canonical_osf1_sysosf1.h b/subprojects/iconv/libiconv/canonical_osf1_sysosf1.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_osf1_sysosf1.h
rename to subprojects/iconv/libiconv/canonical_osf1_sysosf1.h
diff --git a/vendor/iconv/libiconv/canonical_sysaix.h b/subprojects/iconv/libiconv/canonical_sysaix.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_sysaix.h
rename to subprojects/iconv/libiconv/canonical_sysaix.h
diff --git a/vendor/iconv/libiconv/canonical_syshpux.h b/subprojects/iconv/libiconv/canonical_syshpux.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_syshpux.h
rename to subprojects/iconv/libiconv/canonical_syshpux.h
diff --git a/vendor/iconv/libiconv/canonical_sysosf1.h b/subprojects/iconv/libiconv/canonical_sysosf1.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_sysosf1.h
rename to subprojects/iconv/libiconv/canonical_sysosf1.h
diff --git a/vendor/iconv/libiconv/canonical_syssolaris.h b/subprojects/iconv/libiconv/canonical_syssolaris.h
similarity index 100%
rename from vendor/iconv/libiconv/canonical_syssolaris.h
rename to subprojects/iconv/libiconv/canonical_syssolaris.h
diff --git a/vendor/iconv/libiconv/ces_big5.h b/subprojects/iconv/libiconv/ces_big5.h
similarity index 100%
rename from vendor/iconv/libiconv/ces_big5.h
rename to subprojects/iconv/libiconv/ces_big5.h
diff --git a/vendor/iconv/libiconv/ces_gbk.h b/subprojects/iconv/libiconv/ces_gbk.h
similarity index 100%
rename from vendor/iconv/libiconv/ces_gbk.h
rename to subprojects/iconv/libiconv/ces_gbk.h
diff --git a/vendor/iconv/libiconv/charset.alias b/subprojects/iconv/libiconv/charset.alias
similarity index 100%
rename from vendor/iconv/libiconv/charset.alias
rename to subprojects/iconv/libiconv/charset.alias
diff --git a/vendor/iconv/libiconv/cjk_variants.h b/subprojects/iconv/libiconv/cjk_variants.h
similarity index 100%
rename from vendor/iconv/libiconv/cjk_variants.h
rename to subprojects/iconv/libiconv/cjk_variants.h
diff --git a/vendor/iconv/libiconv/cns11643.h b/subprojects/iconv/libiconv/cns11643.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643.h
rename to subprojects/iconv/libiconv/cns11643.h
diff --git a/vendor/iconv/libiconv/cns11643_1.h b/subprojects/iconv/libiconv/cns11643_1.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_1.h
rename to subprojects/iconv/libiconv/cns11643_1.h
diff --git a/vendor/iconv/libiconv/cns11643_15.h b/subprojects/iconv/libiconv/cns11643_15.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_15.h
rename to subprojects/iconv/libiconv/cns11643_15.h
diff --git a/vendor/iconv/libiconv/cns11643_2.h b/subprojects/iconv/libiconv/cns11643_2.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_2.h
rename to subprojects/iconv/libiconv/cns11643_2.h
diff --git a/vendor/iconv/libiconv/cns11643_3.h b/subprojects/iconv/libiconv/cns11643_3.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_3.h
rename to subprojects/iconv/libiconv/cns11643_3.h
diff --git a/vendor/iconv/libiconv/cns11643_4.h b/subprojects/iconv/libiconv/cns11643_4.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_4.h
rename to subprojects/iconv/libiconv/cns11643_4.h
diff --git a/vendor/iconv/libiconv/cns11643_4a.h b/subprojects/iconv/libiconv/cns11643_4a.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_4a.h
rename to subprojects/iconv/libiconv/cns11643_4a.h
diff --git a/vendor/iconv/libiconv/cns11643_4b.h b/subprojects/iconv/libiconv/cns11643_4b.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_4b.h
rename to subprojects/iconv/libiconv/cns11643_4b.h
diff --git a/vendor/iconv/libiconv/cns11643_5.h b/subprojects/iconv/libiconv/cns11643_5.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_5.h
rename to subprojects/iconv/libiconv/cns11643_5.h
diff --git a/vendor/iconv/libiconv/cns11643_6.h b/subprojects/iconv/libiconv/cns11643_6.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_6.h
rename to subprojects/iconv/libiconv/cns11643_6.h
diff --git a/vendor/iconv/libiconv/cns11643_7.h b/subprojects/iconv/libiconv/cns11643_7.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_7.h
rename to subprojects/iconv/libiconv/cns11643_7.h
diff --git a/vendor/iconv/libiconv/cns11643_inv.h b/subprojects/iconv/libiconv/cns11643_inv.h
similarity index 100%
rename from vendor/iconv/libiconv/cns11643_inv.h
rename to subprojects/iconv/libiconv/cns11643_inv.h
diff --git a/vendor/iconv/libiconv/config.h b/subprojects/iconv/libiconv/config.h
similarity index 100%
rename from vendor/iconv/libiconv/config.h
rename to subprojects/iconv/libiconv/config.h
diff --git a/vendor/iconv/libiconv/converters.h b/subprojects/iconv/libiconv/converters.h
similarity index 100%
rename from vendor/iconv/libiconv/converters.h
rename to subprojects/iconv/libiconv/converters.h
diff --git a/vendor/iconv/libiconv/cp1046.h b/subprojects/iconv/libiconv/cp1046.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1046.h
rename to subprojects/iconv/libiconv/cp1046.h
diff --git a/vendor/iconv/libiconv/cp1124.h b/subprojects/iconv/libiconv/cp1124.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1124.h
rename to subprojects/iconv/libiconv/cp1124.h
diff --git a/vendor/iconv/libiconv/cp1125.h b/subprojects/iconv/libiconv/cp1125.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1125.h
rename to subprojects/iconv/libiconv/cp1125.h
diff --git a/vendor/iconv/libiconv/cp1129.h b/subprojects/iconv/libiconv/cp1129.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1129.h
rename to subprojects/iconv/libiconv/cp1129.h
diff --git a/vendor/iconv/libiconv/cp1131.h b/subprojects/iconv/libiconv/cp1131.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1131.h
rename to subprojects/iconv/libiconv/cp1131.h
diff --git a/vendor/iconv/libiconv/cp1133.h b/subprojects/iconv/libiconv/cp1133.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1133.h
rename to subprojects/iconv/libiconv/cp1133.h
diff --git a/vendor/iconv/libiconv/cp1161.h b/subprojects/iconv/libiconv/cp1161.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1161.h
rename to subprojects/iconv/libiconv/cp1161.h
diff --git a/vendor/iconv/libiconv/cp1162.h b/subprojects/iconv/libiconv/cp1162.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1162.h
rename to subprojects/iconv/libiconv/cp1162.h
diff --git a/vendor/iconv/libiconv/cp1163.h b/subprojects/iconv/libiconv/cp1163.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1163.h
rename to subprojects/iconv/libiconv/cp1163.h
diff --git a/vendor/iconv/libiconv/cp1250.h b/subprojects/iconv/libiconv/cp1250.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1250.h
rename to subprojects/iconv/libiconv/cp1250.h
diff --git a/vendor/iconv/libiconv/cp1251.h b/subprojects/iconv/libiconv/cp1251.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1251.h
rename to subprojects/iconv/libiconv/cp1251.h
diff --git a/vendor/iconv/libiconv/cp1252.h b/subprojects/iconv/libiconv/cp1252.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1252.h
rename to subprojects/iconv/libiconv/cp1252.h
diff --git a/vendor/iconv/libiconv/cp1253.h b/subprojects/iconv/libiconv/cp1253.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1253.h
rename to subprojects/iconv/libiconv/cp1253.h
diff --git a/vendor/iconv/libiconv/cp1254.h b/subprojects/iconv/libiconv/cp1254.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1254.h
rename to subprojects/iconv/libiconv/cp1254.h
diff --git a/vendor/iconv/libiconv/cp1255.h b/subprojects/iconv/libiconv/cp1255.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1255.h
rename to subprojects/iconv/libiconv/cp1255.h
diff --git a/vendor/iconv/libiconv/cp1256.h b/subprojects/iconv/libiconv/cp1256.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1256.h
rename to subprojects/iconv/libiconv/cp1256.h
diff --git a/vendor/iconv/libiconv/cp1257.h b/subprojects/iconv/libiconv/cp1257.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1257.h
rename to subprojects/iconv/libiconv/cp1257.h
diff --git a/vendor/iconv/libiconv/cp1258.h b/subprojects/iconv/libiconv/cp1258.h
similarity index 100%
rename from vendor/iconv/libiconv/cp1258.h
rename to subprojects/iconv/libiconv/cp1258.h
diff --git a/vendor/iconv/libiconv/cp437.h b/subprojects/iconv/libiconv/cp437.h
similarity index 100%
rename from vendor/iconv/libiconv/cp437.h
rename to subprojects/iconv/libiconv/cp437.h
diff --git a/vendor/iconv/libiconv/cp737.h b/subprojects/iconv/libiconv/cp737.h
similarity index 100%
rename from vendor/iconv/libiconv/cp737.h
rename to subprojects/iconv/libiconv/cp737.h
diff --git a/vendor/iconv/libiconv/cp775.h b/subprojects/iconv/libiconv/cp775.h
similarity index 100%
rename from vendor/iconv/libiconv/cp775.h
rename to subprojects/iconv/libiconv/cp775.h
diff --git a/vendor/iconv/libiconv/cp850.h b/subprojects/iconv/libiconv/cp850.h
similarity index 100%
rename from vendor/iconv/libiconv/cp850.h
rename to subprojects/iconv/libiconv/cp850.h
diff --git a/vendor/iconv/libiconv/cp852.h b/subprojects/iconv/libiconv/cp852.h
similarity index 100%
rename from vendor/iconv/libiconv/cp852.h
rename to subprojects/iconv/libiconv/cp852.h
diff --git a/vendor/iconv/libiconv/cp853.h b/subprojects/iconv/libiconv/cp853.h
similarity index 100%
rename from vendor/iconv/libiconv/cp853.h
rename to subprojects/iconv/libiconv/cp853.h
diff --git a/vendor/iconv/libiconv/cp855.h b/subprojects/iconv/libiconv/cp855.h
similarity index 100%
rename from vendor/iconv/libiconv/cp855.h
rename to subprojects/iconv/libiconv/cp855.h
diff --git a/vendor/iconv/libiconv/cp856.h b/subprojects/iconv/libiconv/cp856.h
similarity index 100%
rename from vendor/iconv/libiconv/cp856.h
rename to subprojects/iconv/libiconv/cp856.h
diff --git a/vendor/iconv/libiconv/cp857.h b/subprojects/iconv/libiconv/cp857.h
similarity index 100%
rename from vendor/iconv/libiconv/cp857.h
rename to subprojects/iconv/libiconv/cp857.h
diff --git a/vendor/iconv/libiconv/cp858.h b/subprojects/iconv/libiconv/cp858.h
similarity index 100%
rename from vendor/iconv/libiconv/cp858.h
rename to subprojects/iconv/libiconv/cp858.h
diff --git a/vendor/iconv/libiconv/cp860.h b/subprojects/iconv/libiconv/cp860.h
similarity index 100%
rename from vendor/iconv/libiconv/cp860.h
rename to subprojects/iconv/libiconv/cp860.h
diff --git a/vendor/iconv/libiconv/cp861.h b/subprojects/iconv/libiconv/cp861.h
similarity index 100%
rename from vendor/iconv/libiconv/cp861.h
rename to subprojects/iconv/libiconv/cp861.h
diff --git a/vendor/iconv/libiconv/cp862.h b/subprojects/iconv/libiconv/cp862.h
similarity index 100%
rename from vendor/iconv/libiconv/cp862.h
rename to subprojects/iconv/libiconv/cp862.h
diff --git a/vendor/iconv/libiconv/cp863.h b/subprojects/iconv/libiconv/cp863.h
similarity index 100%
rename from vendor/iconv/libiconv/cp863.h
rename to subprojects/iconv/libiconv/cp863.h
diff --git a/vendor/iconv/libiconv/cp864.h b/subprojects/iconv/libiconv/cp864.h
similarity index 100%
rename from vendor/iconv/libiconv/cp864.h
rename to subprojects/iconv/libiconv/cp864.h
diff --git a/vendor/iconv/libiconv/cp865.h b/subprojects/iconv/libiconv/cp865.h
similarity index 100%
rename from vendor/iconv/libiconv/cp865.h
rename to subprojects/iconv/libiconv/cp865.h
diff --git a/vendor/iconv/libiconv/cp866.h b/subprojects/iconv/libiconv/cp866.h
similarity index 100%
rename from vendor/iconv/libiconv/cp866.h
rename to subprojects/iconv/libiconv/cp866.h
diff --git a/vendor/iconv/libiconv/cp869.h b/subprojects/iconv/libiconv/cp869.h
similarity index 100%
rename from vendor/iconv/libiconv/cp869.h
rename to subprojects/iconv/libiconv/cp869.h
diff --git a/vendor/iconv/libiconv/cp874.h b/subprojects/iconv/libiconv/cp874.h
similarity index 100%
rename from vendor/iconv/libiconv/cp874.h
rename to subprojects/iconv/libiconv/cp874.h
diff --git a/vendor/iconv/libiconv/cp922.h b/subprojects/iconv/libiconv/cp922.h
similarity index 100%
rename from vendor/iconv/libiconv/cp922.h
rename to subprojects/iconv/libiconv/cp922.h
diff --git a/vendor/iconv/libiconv/cp932.h b/subprojects/iconv/libiconv/cp932.h
similarity index 100%
rename from vendor/iconv/libiconv/cp932.h
rename to subprojects/iconv/libiconv/cp932.h
diff --git a/vendor/iconv/libiconv/cp932ext.h b/subprojects/iconv/libiconv/cp932ext.h
similarity index 100%
rename from vendor/iconv/libiconv/cp932ext.h
rename to subprojects/iconv/libiconv/cp932ext.h
diff --git a/vendor/iconv/libiconv/cp936.h b/subprojects/iconv/libiconv/cp936.h
similarity index 100%
rename from vendor/iconv/libiconv/cp936.h
rename to subprojects/iconv/libiconv/cp936.h
diff --git a/vendor/iconv/libiconv/cp936ext.h b/subprojects/iconv/libiconv/cp936ext.h
similarity index 100%
rename from vendor/iconv/libiconv/cp936ext.h
rename to subprojects/iconv/libiconv/cp936ext.h
diff --git a/vendor/iconv/libiconv/cp943.h b/subprojects/iconv/libiconv/cp943.h
similarity index 100%
rename from vendor/iconv/libiconv/cp943.h
rename to subprojects/iconv/libiconv/cp943.h
diff --git a/vendor/iconv/libiconv/cp949.h b/subprojects/iconv/libiconv/cp949.h
similarity index 100%
rename from vendor/iconv/libiconv/cp949.h
rename to subprojects/iconv/libiconv/cp949.h
diff --git a/vendor/iconv/libiconv/cp950.h b/subprojects/iconv/libiconv/cp950.h
similarity index 100%
rename from vendor/iconv/libiconv/cp950.h
rename to subprojects/iconv/libiconv/cp950.h
diff --git a/vendor/iconv/libiconv/cp950ext.h b/subprojects/iconv/libiconv/cp950ext.h
similarity index 100%
rename from vendor/iconv/libiconv/cp950ext.h
rename to subprojects/iconv/libiconv/cp950ext.h
diff --git a/vendor/iconv/libiconv/dec_hanyu.h b/subprojects/iconv/libiconv/dec_hanyu.h
similarity index 100%
rename from vendor/iconv/libiconv/dec_hanyu.h
rename to subprojects/iconv/libiconv/dec_hanyu.h
diff --git a/vendor/iconv/libiconv/dec_kanji.h b/subprojects/iconv/libiconv/dec_kanji.h
similarity index 100%
rename from vendor/iconv/libiconv/dec_kanji.h
rename to subprojects/iconv/libiconv/dec_kanji.h
diff --git a/vendor/iconv/libiconv/encodings.def b/subprojects/iconv/libiconv/encodings.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings.def
rename to subprojects/iconv/libiconv/encodings.def
diff --git a/vendor/iconv/libiconv/encodings_aix.def b/subprojects/iconv/libiconv/encodings_aix.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings_aix.def
rename to subprojects/iconv/libiconv/encodings_aix.def
diff --git a/vendor/iconv/libiconv/encodings_dos.def b/subprojects/iconv/libiconv/encodings_dos.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings_dos.def
rename to subprojects/iconv/libiconv/encodings_dos.def
diff --git a/vendor/iconv/libiconv/encodings_extra.def b/subprojects/iconv/libiconv/encodings_extra.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings_extra.def
rename to subprojects/iconv/libiconv/encodings_extra.def
diff --git a/vendor/iconv/libiconv/encodings_local.def b/subprojects/iconv/libiconv/encodings_local.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings_local.def
rename to subprojects/iconv/libiconv/encodings_local.def
diff --git a/vendor/iconv/libiconv/encodings_osf1.def b/subprojects/iconv/libiconv/encodings_osf1.def
similarity index 100%
rename from vendor/iconv/libiconv/encodings_osf1.def
rename to subprojects/iconv/libiconv/encodings_osf1.def
diff --git a/vendor/iconv/libiconv/euc_cn.h b/subprojects/iconv/libiconv/euc_cn.h
similarity index 100%
rename from vendor/iconv/libiconv/euc_cn.h
rename to subprojects/iconv/libiconv/euc_cn.h
diff --git a/vendor/iconv/libiconv/euc_jisx0213.h b/subprojects/iconv/libiconv/euc_jisx0213.h
similarity index 100%
rename from vendor/iconv/libiconv/euc_jisx0213.h
rename to subprojects/iconv/libiconv/euc_jisx0213.h
diff --git a/vendor/iconv/libiconv/euc_jp.h b/subprojects/iconv/libiconv/euc_jp.h
similarity index 100%
rename from vendor/iconv/libiconv/euc_jp.h
rename to subprojects/iconv/libiconv/euc_jp.h
diff --git a/vendor/iconv/libiconv/euc_kr.h b/subprojects/iconv/libiconv/euc_kr.h
similarity index 100%
rename from vendor/iconv/libiconv/euc_kr.h
rename to subprojects/iconv/libiconv/euc_kr.h
diff --git a/vendor/iconv/libiconv/euc_tw.h b/subprojects/iconv/libiconv/euc_tw.h
similarity index 100%
rename from vendor/iconv/libiconv/euc_tw.h
rename to subprojects/iconv/libiconv/euc_tw.h
diff --git a/vendor/iconv/libiconv/flags.h b/subprojects/iconv/libiconv/flags.h
similarity index 100%
rename from vendor/iconv/libiconv/flags.h
rename to subprojects/iconv/libiconv/flags.h
diff --git a/vendor/iconv/libiconv/flushwc.h b/subprojects/iconv/libiconv/flushwc.h
similarity index 100%
rename from vendor/iconv/libiconv/flushwc.h
rename to subprojects/iconv/libiconv/flushwc.h
diff --git a/vendor/iconv/libiconv/gb12345.h b/subprojects/iconv/libiconv/gb12345.h
similarity index 100%
rename from vendor/iconv/libiconv/gb12345.h
rename to subprojects/iconv/libiconv/gb12345.h
diff --git a/vendor/iconv/libiconv/gb12345ext.h b/subprojects/iconv/libiconv/gb12345ext.h
similarity index 100%
rename from vendor/iconv/libiconv/gb12345ext.h
rename to subprojects/iconv/libiconv/gb12345ext.h
diff --git a/vendor/iconv/libiconv/gb18030.h b/subprojects/iconv/libiconv/gb18030.h
similarity index 100%
rename from vendor/iconv/libiconv/gb18030.h
rename to subprojects/iconv/libiconv/gb18030.h
diff --git a/vendor/iconv/libiconv/gb18030ext.h b/subprojects/iconv/libiconv/gb18030ext.h
similarity index 100%
rename from vendor/iconv/libiconv/gb18030ext.h
rename to subprojects/iconv/libiconv/gb18030ext.h
diff --git a/vendor/iconv/libiconv/gb18030uni.h b/subprojects/iconv/libiconv/gb18030uni.h
similarity index 100%
rename from vendor/iconv/libiconv/gb18030uni.h
rename to subprojects/iconv/libiconv/gb18030uni.h
diff --git a/vendor/iconv/libiconv/gb2312.h b/subprojects/iconv/libiconv/gb2312.h
similarity index 100%
rename from vendor/iconv/libiconv/gb2312.h
rename to subprojects/iconv/libiconv/gb2312.h
diff --git a/vendor/iconv/libiconv/gbk.h b/subprojects/iconv/libiconv/gbk.h
similarity index 100%
rename from vendor/iconv/libiconv/gbk.h
rename to subprojects/iconv/libiconv/gbk.h
diff --git a/vendor/iconv/libiconv/gbkext1.h b/subprojects/iconv/libiconv/gbkext1.h
similarity index 100%
rename from vendor/iconv/libiconv/gbkext1.h
rename to subprojects/iconv/libiconv/gbkext1.h
diff --git a/vendor/iconv/libiconv/gbkext2.h b/subprojects/iconv/libiconv/gbkext2.h
similarity index 100%
rename from vendor/iconv/libiconv/gbkext2.h
rename to subprojects/iconv/libiconv/gbkext2.h
diff --git a/vendor/iconv/libiconv/gbkext_inv.h b/subprojects/iconv/libiconv/gbkext_inv.h
similarity index 100%
rename from vendor/iconv/libiconv/gbkext_inv.h
rename to subprojects/iconv/libiconv/gbkext_inv.h
diff --git a/vendor/iconv/libiconv/genaliases.c b/subprojects/iconv/libiconv/genaliases.c
similarity index 100%
rename from vendor/iconv/libiconv/genaliases.c
rename to subprojects/iconv/libiconv/genaliases.c
diff --git a/vendor/iconv/libiconv/genaliases2.c b/subprojects/iconv/libiconv/genaliases2.c
similarity index 100%
rename from vendor/iconv/libiconv/genaliases2.c
rename to subprojects/iconv/libiconv/genaliases2.c
diff --git a/vendor/iconv/libiconv/genflags.c b/subprojects/iconv/libiconv/genflags.c
similarity index 100%
rename from vendor/iconv/libiconv/genflags.c
rename to subprojects/iconv/libiconv/genflags.c
diff --git a/vendor/iconv/libiconv/gentranslit.c b/subprojects/iconv/libiconv/gentranslit.c
similarity index 100%
rename from vendor/iconv/libiconv/gentranslit.c
rename to subprojects/iconv/libiconv/gentranslit.c
diff --git a/vendor/iconv/libiconv/georgian_academy.h b/subprojects/iconv/libiconv/georgian_academy.h
similarity index 100%
rename from vendor/iconv/libiconv/georgian_academy.h
rename to subprojects/iconv/libiconv/georgian_academy.h
diff --git a/vendor/iconv/libiconv/georgian_ps.h b/subprojects/iconv/libiconv/georgian_ps.h
similarity index 100%
rename from vendor/iconv/libiconv/georgian_ps.h
rename to subprojects/iconv/libiconv/georgian_ps.h
diff --git a/vendor/iconv/libiconv/hkscs1999.h b/subprojects/iconv/libiconv/hkscs1999.h
similarity index 100%
rename from vendor/iconv/libiconv/hkscs1999.h
rename to subprojects/iconv/libiconv/hkscs1999.h
diff --git a/vendor/iconv/libiconv/hkscs2001.h b/subprojects/iconv/libiconv/hkscs2001.h
similarity index 100%
rename from vendor/iconv/libiconv/hkscs2001.h
rename to subprojects/iconv/libiconv/hkscs2001.h
diff --git a/vendor/iconv/libiconv/hkscs2004.h b/subprojects/iconv/libiconv/hkscs2004.h
similarity index 100%
rename from vendor/iconv/libiconv/hkscs2004.h
rename to subprojects/iconv/libiconv/hkscs2004.h
diff --git a/vendor/iconv/libiconv/hp_roman8.h b/subprojects/iconv/libiconv/hp_roman8.h
similarity index 100%
rename from vendor/iconv/libiconv/hp_roman8.h
rename to subprojects/iconv/libiconv/hp_roman8.h
diff --git a/vendor/iconv/libiconv/hz.h b/subprojects/iconv/libiconv/hz.h
similarity index 100%
rename from vendor/iconv/libiconv/hz.h
rename to subprojects/iconv/libiconv/hz.h
diff --git a/vendor/iconv/libiconv/iconv.c b/subprojects/iconv/libiconv/iconv.c
similarity index 100%
rename from vendor/iconv/libiconv/iconv.c
rename to subprojects/iconv/libiconv/iconv.c
diff --git a/vendor/iconv/libiconv/iconv_open1.h b/subprojects/iconv/libiconv/iconv_open1.h
similarity index 100%
rename from vendor/iconv/libiconv/iconv_open1.h
rename to subprojects/iconv/libiconv/iconv_open1.h
diff --git a/vendor/iconv/libiconv/iconv_open2.h b/subprojects/iconv/libiconv/iconv_open2.h
similarity index 100%
rename from vendor/iconv/libiconv/iconv_open2.h
rename to subprojects/iconv/libiconv/iconv_open2.h
diff --git a/vendor/iconv/libiconv/iso2022_cn.h b/subprojects/iconv/libiconv/iso2022_cn.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_cn.h
rename to subprojects/iconv/libiconv/iso2022_cn.h
diff --git a/vendor/iconv/libiconv/iso2022_cnext.h b/subprojects/iconv/libiconv/iso2022_cnext.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_cnext.h
rename to subprojects/iconv/libiconv/iso2022_cnext.h
diff --git a/vendor/iconv/libiconv/iso2022_jp.h b/subprojects/iconv/libiconv/iso2022_jp.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_jp.h
rename to subprojects/iconv/libiconv/iso2022_jp.h
diff --git a/vendor/iconv/libiconv/iso2022_jp1.h b/subprojects/iconv/libiconv/iso2022_jp1.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_jp1.h
rename to subprojects/iconv/libiconv/iso2022_jp1.h
diff --git a/vendor/iconv/libiconv/iso2022_jp2.h b/subprojects/iconv/libiconv/iso2022_jp2.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_jp2.h
rename to subprojects/iconv/libiconv/iso2022_jp2.h
diff --git a/vendor/iconv/libiconv/iso2022_jp3.h b/subprojects/iconv/libiconv/iso2022_jp3.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_jp3.h
rename to subprojects/iconv/libiconv/iso2022_jp3.h
diff --git a/vendor/iconv/libiconv/iso2022_kr.h b/subprojects/iconv/libiconv/iso2022_kr.h
similarity index 100%
rename from vendor/iconv/libiconv/iso2022_kr.h
rename to subprojects/iconv/libiconv/iso2022_kr.h
diff --git a/vendor/iconv/libiconv/iso646_cn.h b/subprojects/iconv/libiconv/iso646_cn.h
similarity index 100%
rename from vendor/iconv/libiconv/iso646_cn.h
rename to subprojects/iconv/libiconv/iso646_cn.h
diff --git a/vendor/iconv/libiconv/iso646_jp.h b/subprojects/iconv/libiconv/iso646_jp.h
similarity index 100%
rename from vendor/iconv/libiconv/iso646_jp.h
rename to subprojects/iconv/libiconv/iso646_jp.h
diff --git a/vendor/iconv/libiconv/iso8859_1.h b/subprojects/iconv/libiconv/iso8859_1.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_1.h
rename to subprojects/iconv/libiconv/iso8859_1.h
diff --git a/vendor/iconv/libiconv/iso8859_10.h b/subprojects/iconv/libiconv/iso8859_10.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_10.h
rename to subprojects/iconv/libiconv/iso8859_10.h
diff --git a/vendor/iconv/libiconv/iso8859_11.h b/subprojects/iconv/libiconv/iso8859_11.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_11.h
rename to subprojects/iconv/libiconv/iso8859_11.h
diff --git a/vendor/iconv/libiconv/iso8859_13.h b/subprojects/iconv/libiconv/iso8859_13.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_13.h
rename to subprojects/iconv/libiconv/iso8859_13.h
diff --git a/vendor/iconv/libiconv/iso8859_14.h b/subprojects/iconv/libiconv/iso8859_14.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_14.h
rename to subprojects/iconv/libiconv/iso8859_14.h
diff --git a/vendor/iconv/libiconv/iso8859_15.h b/subprojects/iconv/libiconv/iso8859_15.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_15.h
rename to subprojects/iconv/libiconv/iso8859_15.h
diff --git a/vendor/iconv/libiconv/iso8859_16.h b/subprojects/iconv/libiconv/iso8859_16.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_16.h
rename to subprojects/iconv/libiconv/iso8859_16.h
diff --git a/vendor/iconv/libiconv/iso8859_2.h b/subprojects/iconv/libiconv/iso8859_2.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_2.h
rename to subprojects/iconv/libiconv/iso8859_2.h
diff --git a/vendor/iconv/libiconv/iso8859_3.h b/subprojects/iconv/libiconv/iso8859_3.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_3.h
rename to subprojects/iconv/libiconv/iso8859_3.h
diff --git a/vendor/iconv/libiconv/iso8859_4.h b/subprojects/iconv/libiconv/iso8859_4.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_4.h
rename to subprojects/iconv/libiconv/iso8859_4.h
diff --git a/vendor/iconv/libiconv/iso8859_5.h b/subprojects/iconv/libiconv/iso8859_5.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_5.h
rename to subprojects/iconv/libiconv/iso8859_5.h
diff --git a/vendor/iconv/libiconv/iso8859_6.h b/subprojects/iconv/libiconv/iso8859_6.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_6.h
rename to subprojects/iconv/libiconv/iso8859_6.h
diff --git a/vendor/iconv/libiconv/iso8859_7.h b/subprojects/iconv/libiconv/iso8859_7.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_7.h
rename to subprojects/iconv/libiconv/iso8859_7.h
diff --git a/vendor/iconv/libiconv/iso8859_8.h b/subprojects/iconv/libiconv/iso8859_8.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_8.h
rename to subprojects/iconv/libiconv/iso8859_8.h
diff --git a/vendor/iconv/libiconv/iso8859_9.h b/subprojects/iconv/libiconv/iso8859_9.h
similarity index 100%
rename from vendor/iconv/libiconv/iso8859_9.h
rename to subprojects/iconv/libiconv/iso8859_9.h
diff --git a/vendor/iconv/libiconv/isoir165.h b/subprojects/iconv/libiconv/isoir165.h
similarity index 100%
rename from vendor/iconv/libiconv/isoir165.h
rename to subprojects/iconv/libiconv/isoir165.h
diff --git a/vendor/iconv/libiconv/isoir165ext.h b/subprojects/iconv/libiconv/isoir165ext.h
similarity index 100%
rename from vendor/iconv/libiconv/isoir165ext.h
rename to subprojects/iconv/libiconv/isoir165ext.h
diff --git a/vendor/iconv/libiconv/java.h b/subprojects/iconv/libiconv/java.h
similarity index 100%
rename from vendor/iconv/libiconv/java.h
rename to subprojects/iconv/libiconv/java.h
diff --git a/vendor/iconv/libiconv/jisx0201.h b/subprojects/iconv/libiconv/jisx0201.h
similarity index 100%
rename from vendor/iconv/libiconv/jisx0201.h
rename to subprojects/iconv/libiconv/jisx0201.h
diff --git a/vendor/iconv/libiconv/jisx0208.h b/subprojects/iconv/libiconv/jisx0208.h
similarity index 100%
rename from vendor/iconv/libiconv/jisx0208.h
rename to subprojects/iconv/libiconv/jisx0208.h
diff --git a/vendor/iconv/libiconv/jisx0212.h b/subprojects/iconv/libiconv/jisx0212.h
similarity index 100%
rename from vendor/iconv/libiconv/jisx0212.h
rename to subprojects/iconv/libiconv/jisx0212.h
diff --git a/vendor/iconv/libiconv/jisx0213.h b/subprojects/iconv/libiconv/jisx0213.h
similarity index 100%
rename from vendor/iconv/libiconv/jisx0213.h
rename to subprojects/iconv/libiconv/jisx0213.h
diff --git a/vendor/iconv/libiconv/johab.h b/subprojects/iconv/libiconv/johab.h
similarity index 100%
rename from vendor/iconv/libiconv/johab.h
rename to subprojects/iconv/libiconv/johab.h
diff --git a/vendor/iconv/libiconv/johab_hangul.h b/subprojects/iconv/libiconv/johab_hangul.h
similarity index 100%
rename from vendor/iconv/libiconv/johab_hangul.h
rename to subprojects/iconv/libiconv/johab_hangul.h
diff --git a/vendor/iconv/libiconv/koi8_r.h b/subprojects/iconv/libiconv/koi8_r.h
similarity index 100%
rename from vendor/iconv/libiconv/koi8_r.h
rename to subprojects/iconv/libiconv/koi8_r.h
diff --git a/vendor/iconv/libiconv/koi8_ru.h b/subprojects/iconv/libiconv/koi8_ru.h
similarity index 100%
rename from vendor/iconv/libiconv/koi8_ru.h
rename to subprojects/iconv/libiconv/koi8_ru.h
diff --git a/vendor/iconv/libiconv/koi8_t.h b/subprojects/iconv/libiconv/koi8_t.h
similarity index 100%
rename from vendor/iconv/libiconv/koi8_t.h
rename to subprojects/iconv/libiconv/koi8_t.h
diff --git a/vendor/iconv/libiconv/koi8_u.h b/subprojects/iconv/libiconv/koi8_u.h
similarity index 100%
rename from vendor/iconv/libiconv/koi8_u.h
rename to subprojects/iconv/libiconv/koi8_u.h
diff --git a/vendor/iconv/libiconv/ksc5601.h b/subprojects/iconv/libiconv/ksc5601.h
similarity index 100%
rename from vendor/iconv/libiconv/ksc5601.h
rename to subprojects/iconv/libiconv/ksc5601.h
diff --git a/vendor/iconv/libiconv/libcharset.h b/subprojects/iconv/libiconv/libcharset.h
similarity index 100%
rename from vendor/iconv/libiconv/libcharset.h
rename to subprojects/iconv/libiconv/libcharset.h
diff --git a/vendor/iconv/libiconv/localcharset.h b/subprojects/iconv/libiconv/localcharset.h
similarity index 100%
rename from vendor/iconv/libiconv/localcharset.h
rename to subprojects/iconv/libiconv/localcharset.h
diff --git a/vendor/iconv/libiconv/loop_unicode.h b/subprojects/iconv/libiconv/loop_unicode.h
similarity index 100%
rename from vendor/iconv/libiconv/loop_unicode.h
rename to subprojects/iconv/libiconv/loop_unicode.h
diff --git a/vendor/iconv/libiconv/loop_wchar.h b/subprojects/iconv/libiconv/loop_wchar.h
similarity index 100%
rename from vendor/iconv/libiconv/loop_wchar.h
rename to subprojects/iconv/libiconv/loop_wchar.h
diff --git a/vendor/iconv/libiconv/loops.h b/subprojects/iconv/libiconv/loops.h
similarity index 100%
rename from vendor/iconv/libiconv/loops.h
rename to subprojects/iconv/libiconv/loops.h
diff --git a/vendor/iconv/libiconv/mac_arabic.h b/subprojects/iconv/libiconv/mac_arabic.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_arabic.h
rename to subprojects/iconv/libiconv/mac_arabic.h
diff --git a/vendor/iconv/libiconv/mac_centraleurope.h b/subprojects/iconv/libiconv/mac_centraleurope.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_centraleurope.h
rename to subprojects/iconv/libiconv/mac_centraleurope.h
diff --git a/vendor/iconv/libiconv/mac_croatian.h b/subprojects/iconv/libiconv/mac_croatian.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_croatian.h
rename to subprojects/iconv/libiconv/mac_croatian.h
diff --git a/vendor/iconv/libiconv/mac_cyrillic.h b/subprojects/iconv/libiconv/mac_cyrillic.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_cyrillic.h
rename to subprojects/iconv/libiconv/mac_cyrillic.h
diff --git a/vendor/iconv/libiconv/mac_greek.h b/subprojects/iconv/libiconv/mac_greek.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_greek.h
rename to subprojects/iconv/libiconv/mac_greek.h
diff --git a/vendor/iconv/libiconv/mac_hebrew.h b/subprojects/iconv/libiconv/mac_hebrew.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_hebrew.h
rename to subprojects/iconv/libiconv/mac_hebrew.h
diff --git a/vendor/iconv/libiconv/mac_iceland.h b/subprojects/iconv/libiconv/mac_iceland.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_iceland.h
rename to subprojects/iconv/libiconv/mac_iceland.h
diff --git a/vendor/iconv/libiconv/mac_roman.h b/subprojects/iconv/libiconv/mac_roman.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_roman.h
rename to subprojects/iconv/libiconv/mac_roman.h
diff --git a/vendor/iconv/libiconv/mac_romania.h b/subprojects/iconv/libiconv/mac_romania.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_romania.h
rename to subprojects/iconv/libiconv/mac_romania.h
diff --git a/vendor/iconv/libiconv/mac_thai.h b/subprojects/iconv/libiconv/mac_thai.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_thai.h
rename to subprojects/iconv/libiconv/mac_thai.h
diff --git a/vendor/iconv/libiconv/mac_turkish.h b/subprojects/iconv/libiconv/mac_turkish.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_turkish.h
rename to subprojects/iconv/libiconv/mac_turkish.h
diff --git a/vendor/iconv/libiconv/mac_ukraine.h b/subprojects/iconv/libiconv/mac_ukraine.h
similarity index 100%
rename from vendor/iconv/libiconv/mac_ukraine.h
rename to subprojects/iconv/libiconv/mac_ukraine.h
diff --git a/vendor/iconv/libiconv/mulelao.h b/subprojects/iconv/libiconv/mulelao.h
similarity index 100%
rename from vendor/iconv/libiconv/mulelao.h
rename to subprojects/iconv/libiconv/mulelao.h
diff --git a/vendor/iconv/libiconv/nextstep.h b/subprojects/iconv/libiconv/nextstep.h
similarity index 100%
rename from vendor/iconv/libiconv/nextstep.h
rename to subprojects/iconv/libiconv/nextstep.h
diff --git a/vendor/iconv/libiconv/pt154.h b/subprojects/iconv/libiconv/pt154.h
similarity index 100%
rename from vendor/iconv/libiconv/pt154.h
rename to subprojects/iconv/libiconv/pt154.h
diff --git a/vendor/iconv/libiconv/relocatable.c b/subprojects/iconv/libiconv/relocatable.c
similarity index 100%
rename from vendor/iconv/libiconv/relocatable.c
rename to subprojects/iconv/libiconv/relocatable.c
diff --git a/vendor/iconv/libiconv/relocatable.h b/subprojects/iconv/libiconv/relocatable.h
similarity index 100%
rename from vendor/iconv/libiconv/relocatable.h
rename to subprojects/iconv/libiconv/relocatable.h
diff --git a/vendor/iconv/libiconv/riscos1.h b/subprojects/iconv/libiconv/riscos1.h
similarity index 100%
rename from vendor/iconv/libiconv/riscos1.h
rename to subprojects/iconv/libiconv/riscos1.h
diff --git a/vendor/iconv/libiconv/rk1048.h b/subprojects/iconv/libiconv/rk1048.h
similarity index 100%
rename from vendor/iconv/libiconv/rk1048.h
rename to subprojects/iconv/libiconv/rk1048.h
diff --git a/vendor/iconv/libiconv/shift_jisx0213.h b/subprojects/iconv/libiconv/shift_jisx0213.h
similarity index 100%
rename from vendor/iconv/libiconv/shift_jisx0213.h
rename to subprojects/iconv/libiconv/shift_jisx0213.h
diff --git a/vendor/iconv/libiconv/sjis.h b/subprojects/iconv/libiconv/sjis.h
similarity index 100%
rename from vendor/iconv/libiconv/sjis.h
rename to subprojects/iconv/libiconv/sjis.h
diff --git a/vendor/iconv/libiconv/tcvn.h b/subprojects/iconv/libiconv/tcvn.h
similarity index 100%
rename from vendor/iconv/libiconv/tcvn.h
rename to subprojects/iconv/libiconv/tcvn.h
diff --git a/vendor/iconv/libiconv/tds565.h b/subprojects/iconv/libiconv/tds565.h
similarity index 100%
rename from vendor/iconv/libiconv/tds565.h
rename to subprojects/iconv/libiconv/tds565.h
diff --git a/vendor/iconv/libiconv/tis620.h b/subprojects/iconv/libiconv/tis620.h
similarity index 100%
rename from vendor/iconv/libiconv/tis620.h
rename to subprojects/iconv/libiconv/tis620.h
diff --git a/vendor/iconv/libiconv/translit.h b/subprojects/iconv/libiconv/translit.h
similarity index 100%
rename from vendor/iconv/libiconv/translit.h
rename to subprojects/iconv/libiconv/translit.h
diff --git a/vendor/iconv/libiconv/ucs2.h b/subprojects/iconv/libiconv/ucs2.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs2.h
rename to subprojects/iconv/libiconv/ucs2.h
diff --git a/vendor/iconv/libiconv/ucs2be.h b/subprojects/iconv/libiconv/ucs2be.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs2be.h
rename to subprojects/iconv/libiconv/ucs2be.h
diff --git a/vendor/iconv/libiconv/ucs2internal.h b/subprojects/iconv/libiconv/ucs2internal.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs2internal.h
rename to subprojects/iconv/libiconv/ucs2internal.h
diff --git a/vendor/iconv/libiconv/ucs2le.h b/subprojects/iconv/libiconv/ucs2le.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs2le.h
rename to subprojects/iconv/libiconv/ucs2le.h
diff --git a/vendor/iconv/libiconv/ucs2swapped.h b/subprojects/iconv/libiconv/ucs2swapped.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs2swapped.h
rename to subprojects/iconv/libiconv/ucs2swapped.h
diff --git a/vendor/iconv/libiconv/ucs4.h b/subprojects/iconv/libiconv/ucs4.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs4.h
rename to subprojects/iconv/libiconv/ucs4.h
diff --git a/vendor/iconv/libiconv/ucs4be.h b/subprojects/iconv/libiconv/ucs4be.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs4be.h
rename to subprojects/iconv/libiconv/ucs4be.h
diff --git a/vendor/iconv/libiconv/ucs4internal.h b/subprojects/iconv/libiconv/ucs4internal.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs4internal.h
rename to subprojects/iconv/libiconv/ucs4internal.h
diff --git a/vendor/iconv/libiconv/ucs4le.h b/subprojects/iconv/libiconv/ucs4le.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs4le.h
rename to subprojects/iconv/libiconv/ucs4le.h
diff --git a/vendor/iconv/libiconv/ucs4swapped.h b/subprojects/iconv/libiconv/ucs4swapped.h
similarity index 100%
rename from vendor/iconv/libiconv/ucs4swapped.h
rename to subprojects/iconv/libiconv/ucs4swapped.h
diff --git a/vendor/iconv/libiconv/uhc_1.h b/subprojects/iconv/libiconv/uhc_1.h
similarity index 100%
rename from vendor/iconv/libiconv/uhc_1.h
rename to subprojects/iconv/libiconv/uhc_1.h
diff --git a/vendor/iconv/libiconv/uhc_2.h b/subprojects/iconv/libiconv/uhc_2.h
similarity index 100%
rename from vendor/iconv/libiconv/uhc_2.h
rename to subprojects/iconv/libiconv/uhc_2.h
diff --git a/vendor/iconv/libiconv/utf16.h b/subprojects/iconv/libiconv/utf16.h
similarity index 100%
rename from vendor/iconv/libiconv/utf16.h
rename to subprojects/iconv/libiconv/utf16.h
diff --git a/vendor/iconv/libiconv/utf16be.h b/subprojects/iconv/libiconv/utf16be.h
similarity index 100%
rename from vendor/iconv/libiconv/utf16be.h
rename to subprojects/iconv/libiconv/utf16be.h
diff --git a/vendor/iconv/libiconv/utf16le.h b/subprojects/iconv/libiconv/utf16le.h
similarity index 100%
rename from vendor/iconv/libiconv/utf16le.h
rename to subprojects/iconv/libiconv/utf16le.h
diff --git a/vendor/iconv/libiconv/utf32.h b/subprojects/iconv/libiconv/utf32.h
similarity index 100%
rename from vendor/iconv/libiconv/utf32.h
rename to subprojects/iconv/libiconv/utf32.h
diff --git a/vendor/iconv/libiconv/utf32be.h b/subprojects/iconv/libiconv/utf32be.h
similarity index 100%
rename from vendor/iconv/libiconv/utf32be.h
rename to subprojects/iconv/libiconv/utf32be.h
diff --git a/vendor/iconv/libiconv/utf32le.h b/subprojects/iconv/libiconv/utf32le.h
similarity index 100%
rename from vendor/iconv/libiconv/utf32le.h
rename to subprojects/iconv/libiconv/utf32le.h
diff --git a/vendor/iconv/libiconv/utf7.h b/subprojects/iconv/libiconv/utf7.h
similarity index 100%
rename from vendor/iconv/libiconv/utf7.h
rename to subprojects/iconv/libiconv/utf7.h
diff --git a/vendor/iconv/libiconv/utf8.h b/subprojects/iconv/libiconv/utf8.h
similarity index 100%
rename from vendor/iconv/libiconv/utf8.h
rename to subprojects/iconv/libiconv/utf8.h
diff --git a/vendor/iconv/libiconv/vietcomb.h b/subprojects/iconv/libiconv/vietcomb.h
similarity index 100%
rename from vendor/iconv/libiconv/vietcomb.h
rename to subprojects/iconv/libiconv/vietcomb.h
diff --git a/vendor/iconv/libiconv/viscii.h b/subprojects/iconv/libiconv/viscii.h
similarity index 100%
rename from vendor/iconv/libiconv/viscii.h
rename to subprojects/iconv/libiconv/viscii.h
diff --git a/subprojects/iconv/meson.build b/subprojects/iconv/meson.build
new file mode 100644
index 000000000..458cd9d51
--- /dev/null
+++ b/subprojects/iconv/meson.build
@@ -0,0 +1,21 @@
+project('iconv', 'c', license: 'LGPL',
+ meson_version: '>=0.54.0')
+
+iconv_src = [
+ 'libcharset/localcharset.c',
+ 'libiconv/iconv.c'
+]
+
+iconv_headers = ['include/iconv.h']
+
+iconv_incs = include_directories(
+ 'include',
+ 'libcharset',
+ 'libiconv'
+)
+
+libiconv = static_library('iconv', iconv_src, include_directories: iconv_incs)
+libiconv_dep = declare_dependency(link_with: libiconv,
+ include_directories: iconv_incs)
+
+meson.override_dependency('iconv', libiconv_dep)
diff --git a/subprojects/icu.wrap b/subprojects/icu.wrap
new file mode 100644
index 000000000..3aaf822c6
--- /dev/null
+++ b/subprojects/icu.wrap
@@ -0,0 +1,11 @@
+[wrap-file]
+directory = icu
+source_url = https://github.com/unicode-org/icu/releases/download/release-67-1/icu4c-67_1-src.tgz
+source_filename = icu4c-67_1-src.tgz
+source_hash = 94a80cd6f251a53bd2a997f6f1b5ac6653fe791dfab66e1eb0227740fb86d5dc
+patch_directory = icu
+
+[provide]
+icu-uc = icuuc_dep
+icu-io = icuio_dep
+icu-i18n = icui18n_dep
diff --git a/subprojects/libass.wrap b/subprojects/libass.wrap
new file mode 100644
index 000000000..3e64a4ab2
--- /dev/null
+++ b/subprojects/libass.wrap
@@ -0,0 +1,4 @@
+[wrap-git]
+directory = libass
+url = https://github.com/TypesettingTools/libass.git
+revision = meson-pr
diff --git a/subprojects/libpng.wrap b/subprojects/libpng.wrap
new file mode 100644
index 000000000..8c7e3fdce
--- /dev/null
+++ b/subprojects/libpng.wrap
@@ -0,0 +1,12 @@
+[wrap-file]
+directory = libpng-1.6.37
+source_url = https://github.com/glennrp/libpng/archive/v1.6.37.tar.gz
+source_filename = libpng-1.6.37.tar.gz
+source_hash = ca74a0dace179a8422187671aee97dd3892b53e168627145271cad5b5ac81307
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/libpng/1.6.37/3/get_zip
+patch_filename = libpng-1.6.37-3-wrap.zip
+patch_hash = 6c9f32fd9150b3a96ab89be52af664e32207e10aa9f5fb9aa015989ee2dd7100
+
+[provide]
+libpng = libpng_dep
+
diff --git a/vendor/luabins/AUTHORS b/subprojects/luabins/AUTHORS
similarity index 100%
rename from vendor/luabins/AUTHORS
rename to subprojects/luabins/AUTHORS
diff --git a/vendor/luabins/BENCHMARK b/subprojects/luabins/BENCHMARK
similarity index 100%
rename from vendor/luabins/BENCHMARK
rename to subprojects/luabins/BENCHMARK
diff --git a/vendor/luabins/COPYRIGHT b/subprojects/luabins/COPYRIGHT
similarity index 100%
rename from vendor/luabins/COPYRIGHT
rename to subprojects/luabins/COPYRIGHT
diff --git a/vendor/luabins/HISTORY b/subprojects/luabins/HISTORY
similarity index 100%
rename from vendor/luabins/HISTORY
rename to subprojects/luabins/HISTORY
diff --git a/vendor/luabins/README.md b/subprojects/luabins/README.md
similarity index 100%
rename from vendor/luabins/README.md
rename to subprojects/luabins/README.md
diff --git a/vendor/luabins/TODO b/subprojects/luabins/TODO
similarity index 100%
rename from vendor/luabins/TODO
rename to subprojects/luabins/TODO
diff --git a/vendor/luabins/etc/benchmark.lua b/subprojects/luabins/etc/benchmark.lua
similarity index 100%
rename from vendor/luabins/etc/benchmark.lua
rename to subprojects/luabins/etc/benchmark.lua
diff --git a/vendor/luabins/etc/checkfmt.lua b/subprojects/luabins/etc/checkfmt.lua
similarity index 100%
rename from vendor/luabins/etc/checkfmt.lua
rename to subprojects/luabins/etc/checkfmt.lua
diff --git a/vendor/luabins/etc/dataset.lua b/subprojects/luabins/etc/dataset.lua
similarity index 100%
rename from vendor/luabins/etc/dataset.lua
rename to subprojects/luabins/etc/dataset.lua
diff --git a/vendor/luabins/etc/tolua.lua b/subprojects/luabins/etc/tolua.lua
similarity index 100%
rename from vendor/luabins/etc/tolua.lua
rename to subprojects/luabins/etc/tolua.lua
diff --git a/vendor/luabins/etc/toluabins.lua b/subprojects/luabins/etc/toluabins.lua
similarity index 100%
rename from vendor/luabins/etc/toluabins.lua
rename to subprojects/luabins/etc/toluabins.lua
diff --git a/vendor/luabins/include/.keepme b/subprojects/luabins/include/.keepme
similarity index 100%
rename from vendor/luabins/include/.keepme
rename to subprojects/luabins/include/.keepme
diff --git a/vendor/luabins/lib/.keepme b/subprojects/luabins/lib/.keepme
similarity index 100%
rename from vendor/luabins/lib/.keepme
rename to subprojects/luabins/lib/.keepme
diff --git a/vendor/luabins/obj/.keepme b/subprojects/luabins/obj/.keepme
similarity index 100%
rename from vendor/luabins/obj/.keepme
rename to subprojects/luabins/obj/.keepme
diff --git a/vendor/luabins/rockspec/luabins-0.1.1-1.rockspec b/subprojects/luabins/rockspec/luabins-0.1.1-1.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-0.1.1-1.rockspec
rename to subprojects/luabins/rockspec/luabins-0.1.1-1.rockspec
diff --git a/vendor/luabins/rockspec/luabins-0.1.1-2.rockspec b/subprojects/luabins/rockspec/luabins-0.1.1-2.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-0.1.1-2.rockspec
rename to subprojects/luabins/rockspec/luabins-0.1.1-2.rockspec
diff --git a/vendor/luabins/rockspec/luabins-0.2-1.rockspec b/subprojects/luabins/rockspec/luabins-0.2-1.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-0.2-1.rockspec
rename to subprojects/luabins/rockspec/luabins-0.2-1.rockspec
diff --git a/vendor/luabins/rockspec/luabins-0.3-1.rockspec b/subprojects/luabins/rockspec/luabins-0.3-1.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-0.3-1.rockspec
rename to subprojects/luabins/rockspec/luabins-0.3-1.rockspec
diff --git a/vendor/luabins/rockspec/luabins-scm-1.rockspec b/subprojects/luabins/rockspec/luabins-scm-1.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-scm-1.rockspec
rename to subprojects/luabins/rockspec/luabins-scm-1.rockspec
diff --git a/vendor/luabins/rockspec/luabins-scm-2.rockspec b/subprojects/luabins/rockspec/luabins-scm-2.rockspec
similarity index 100%
rename from vendor/luabins/rockspec/luabins-scm-2.rockspec
rename to subprojects/luabins/rockspec/luabins-scm-2.rockspec
diff --git a/vendor/luabins/src/fwrite.c b/subprojects/luabins/src/fwrite.c
similarity index 100%
rename from vendor/luabins/src/fwrite.c
rename to subprojects/luabins/src/fwrite.c
diff --git a/vendor/luabins/src/fwrite.h b/subprojects/luabins/src/fwrite.h
similarity index 100%
rename from vendor/luabins/src/fwrite.h
rename to subprojects/luabins/src/fwrite.h
diff --git a/vendor/luabins/src/load.c b/subprojects/luabins/src/load.c
similarity index 100%
rename from vendor/luabins/src/load.c
rename to subprojects/luabins/src/load.c
diff --git a/vendor/luabins/src/luabins.c b/subprojects/luabins/src/luabins.c
similarity index 100%
rename from vendor/luabins/src/luabins.c
rename to subprojects/luabins/src/luabins.c
diff --git a/vendor/luabins/src/luabins.h b/subprojects/luabins/src/luabins.h
similarity index 100%
rename from vendor/luabins/src/luabins.h
rename to subprojects/luabins/src/luabins.h
diff --git a/vendor/luabins/src/luaheaders.h b/subprojects/luabins/src/luaheaders.h
similarity index 100%
rename from vendor/luabins/src/luaheaders.h
rename to subprojects/luabins/src/luaheaders.h
diff --git a/vendor/luabins/src/luainternals.c b/subprojects/luabins/src/luainternals.c
similarity index 100%
rename from vendor/luabins/src/luainternals.c
rename to subprojects/luabins/src/luainternals.c
diff --git a/vendor/luabins/src/luainternals.h b/subprojects/luabins/src/luainternals.h
similarity index 100%
rename from vendor/luabins/src/luainternals.h
rename to subprojects/luabins/src/luainternals.h
diff --git a/vendor/luabins/src/lualess.h b/subprojects/luabins/src/lualess.h
similarity index 100%
rename from vendor/luabins/src/lualess.h
rename to subprojects/luabins/src/lualess.h
diff --git a/subprojects/luabins/src/meson.build b/subprojects/luabins/src/meson.build
new file mode 100644
index 000000000..3861eb6d2
--- /dev/null
+++ b/subprojects/luabins/src/meson.build
@@ -0,0 +1,11 @@
+luabins_src = files(
+ 'fwrite.c',
+ 'load.c',
+ 'luabins.c',
+ 'luainternals.c',
+ 'savebuffer.c',
+ 'save.c',
+ 'write.c',
+)
+
+libluabins = static_library('luabins', luabins_src, include_directories: luajit_inc)
diff --git a/vendor/luabins/src/save.c b/subprojects/luabins/src/save.c
similarity index 100%
rename from vendor/luabins/src/save.c
rename to subprojects/luabins/src/save.c
diff --git a/vendor/luabins/src/savebuffer.c b/subprojects/luabins/src/savebuffer.c
similarity index 100%
rename from vendor/luabins/src/savebuffer.c
rename to subprojects/luabins/src/savebuffer.c
diff --git a/vendor/luabins/src/savebuffer.h b/subprojects/luabins/src/savebuffer.h
similarity index 100%
rename from vendor/luabins/src/savebuffer.h
rename to subprojects/luabins/src/savebuffer.h
diff --git a/vendor/luabins/src/saveload.h b/subprojects/luabins/src/saveload.h
similarity index 100%
rename from vendor/luabins/src/saveload.h
rename to subprojects/luabins/src/saveload.h
diff --git a/vendor/luabins/src/write.c b/subprojects/luabins/src/write.c
similarity index 100%
rename from vendor/luabins/src/write.c
rename to subprojects/luabins/src/write.c
diff --git a/vendor/luabins/src/write.h b/subprojects/luabins/src/write.h
similarity index 100%
rename from vendor/luabins/src/write.h
rename to subprojects/luabins/src/write.h
diff --git a/vendor/luabins/test/large_data.lua b/subprojects/luabins/test/large_data.lua
similarity index 100%
rename from vendor/luabins/test/large_data.lua
rename to subprojects/luabins/test/large_data.lua
diff --git a/vendor/luabins/test/large_data.luabins b/subprojects/luabins/test/large_data.luabins
similarity index 100%
rename from vendor/luabins/test/large_data.luabins
rename to subprojects/luabins/test/large_data.luabins
diff --git a/vendor/luabins/test/test.c b/subprojects/luabins/test/test.c
similarity index 100%
rename from vendor/luabins/test/test.c
rename to subprojects/luabins/test/test.c
diff --git a/vendor/luabins/test/test.h b/subprojects/luabins/test/test.h
similarity index 100%
rename from vendor/luabins/test/test.h
rename to subprojects/luabins/test/test.h
diff --git a/vendor/luabins/test/test.lua b/subprojects/luabins/test/test.lua
similarity index 100%
rename from vendor/luabins/test/test.lua
rename to subprojects/luabins/test/test.lua
diff --git a/vendor/luabins/test/test_api.c b/subprojects/luabins/test/test_api.c
similarity index 100%
rename from vendor/luabins/test/test_api.c
rename to subprojects/luabins/test/test_api.c
diff --git a/vendor/luabins/test/test_fwrite_api.c b/subprojects/luabins/test/test_fwrite_api.c
similarity index 100%
rename from vendor/luabins/test/test_fwrite_api.c
rename to subprojects/luabins/test/test_fwrite_api.c
diff --git a/vendor/luabins/test/test_savebuffer.c b/subprojects/luabins/test/test_savebuffer.c
similarity index 100%
rename from vendor/luabins/test/test_savebuffer.c
rename to subprojects/luabins/test/test_savebuffer.c
diff --git a/vendor/luabins/test/test_write_api.c b/subprojects/luabins/test/test_write_api.c
similarity index 100%
rename from vendor/luabins/test/test_write_api.c
rename to subprojects/luabins/test/test_write_api.c
diff --git a/vendor/luabins/test/util.c b/subprojects/luabins/test/util.c
similarity index 100%
rename from vendor/luabins/test/util.c
rename to subprojects/luabins/test/util.c
diff --git a/vendor/luabins/test/util.h b/subprojects/luabins/test/util.h
similarity index 100%
rename from vendor/luabins/test/util.h
rename to subprojects/luabins/test/util.h
diff --git a/vendor/luabins/test/write_tests.inc b/subprojects/luabins/test/write_tests.inc
similarity index 100%
rename from vendor/luabins/test/write_tests.inc
rename to subprojects/luabins/test/write_tests.inc
diff --git a/vendor/luabins/tmp/.keepme b/subprojects/luabins/tmp/.keepme
similarity index 100%
rename from vendor/luabins/tmp/.keepme
rename to subprojects/luabins/tmp/.keepme
diff --git a/vendor/luajit/COPYRIGHT b/subprojects/luajit/COPYRIGHT
similarity index 100%
rename from vendor/luajit/COPYRIGHT
rename to subprojects/luajit/COPYRIGHT
diff --git a/vendor/luajit/README b/subprojects/luajit/README
similarity index 100%
rename from vendor/luajit/README
rename to subprojects/luajit/README
diff --git a/vendor/luajit/dynasm/dasm_arm.h b/subprojects/luajit/dynasm/dasm_arm.h
similarity index 99%
rename from vendor/luajit/dynasm/dasm_arm.h
rename to subprojects/luajit/dynasm/dasm_arm.h
index 57e0116f5..a43f7c664 100644
--- a/vendor/luajit/dynasm/dasm_arm.h
+++ b/subprojects/luajit/dynasm/dasm_arm.h
@@ -1,6 +1,6 @@
/*
** DynASM ARM encoding engine.
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
** Released under the MIT license. See dynasm.lua for full copyright notice.
*/
diff --git a/vendor/luajit/dynasm/dasm_arm.lua b/subprojects/luajit/dynasm/dasm_arm.lua
similarity index 99%
rename from vendor/luajit/dynasm/dasm_arm.lua
rename to subprojects/luajit/dynasm/dasm_arm.lua
index 90a259c5c..9ece1d7f5 100644
--- a/vendor/luajit/dynasm/dasm_arm.lua
+++ b/subprojects/luajit/dynasm/dasm_arm.lua
@@ -1,7 +1,7 @@
------------------------------------------------------------------------------
-- DynASM ARM module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See dynasm.lua for full copyright notice.
------------------------------------------------------------------------------
diff --git a/vendor/luajit/dynasm/dasm_mips.h b/subprojects/luajit/dynasm/dasm_mips.h
similarity index 99%
rename from vendor/luajit/dynasm/dasm_mips.h
rename to subprojects/luajit/dynasm/dasm_mips.h
index 2f4c2d222..7eac66948 100644
--- a/vendor/luajit/dynasm/dasm_mips.h
+++ b/subprojects/luajit/dynasm/dasm_mips.h
@@ -1,6 +1,6 @@
/*
** DynASM MIPS encoding engine.
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
** Released under the MIT license. See dynasm.lua for full copyright notice.
*/
diff --git a/vendor/luajit/dynasm/dasm_mips.lua b/subprojects/luajit/dynasm/dasm_mips.lua
similarity index 99%
rename from vendor/luajit/dynasm/dasm_mips.lua
rename to subprojects/luajit/dynasm/dasm_mips.lua
index ae0dbd7a9..8e250ceff 100644
--- a/vendor/luajit/dynasm/dasm_mips.lua
+++ b/subprojects/luajit/dynasm/dasm_mips.lua
@@ -1,7 +1,7 @@
------------------------------------------------------------------------------
-- DynASM MIPS module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See dynasm.lua for full copyright notice.
------------------------------------------------------------------------------
diff --git a/vendor/luajit/dynasm/dasm_ppc.h b/subprojects/luajit/dynasm/dasm_ppc.h
similarity index 99%
rename from vendor/luajit/dynasm/dasm_ppc.h
rename to subprojects/luajit/dynasm/dasm_ppc.h
index 7df493654..611036126 100644
--- a/vendor/luajit/dynasm/dasm_ppc.h
+++ b/subprojects/luajit/dynasm/dasm_ppc.h
@@ -1,6 +1,6 @@
/*
** DynASM PPC encoding engine.
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
** Released under the MIT license. See dynasm.lua for full copyright notice.
*/
diff --git a/vendor/luajit/dynasm/dasm_ppc.lua b/subprojects/luajit/dynasm/dasm_ppc.lua
similarity index 99%
rename from vendor/luajit/dynasm/dasm_ppc.lua
rename to subprojects/luajit/dynasm/dasm_ppc.lua
index 91f4ff9a4..4e1656e3c 100644
--- a/vendor/luajit/dynasm/dasm_ppc.lua
+++ b/subprojects/luajit/dynasm/dasm_ppc.lua
@@ -1,7 +1,7 @@
------------------------------------------------------------------------------
-- DynASM PPC module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See dynasm.lua for full copyright notice.
------------------------------------------------------------------------------
diff --git a/vendor/luajit/dynasm/dasm_proto.h b/subprojects/luajit/dynasm/dasm_proto.h
similarity index 97%
rename from vendor/luajit/dynasm/dasm_proto.h
rename to subprojects/luajit/dynasm/dasm_proto.h
index a8bc6fd28..f5e79c7a3 100644
--- a/vendor/luajit/dynasm/dasm_proto.h
+++ b/subprojects/luajit/dynasm/dasm_proto.h
@@ -1,6 +1,6 @@
/*
** DynASM encoding engine prototypes.
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
** Released under the MIT license. See dynasm.lua for full copyright notice.
*/
diff --git a/vendor/luajit/dynasm/dasm_x64.lua b/subprojects/luajit/dynasm/dasm_x64.lua
similarity index 89%
rename from vendor/luajit/dynasm/dasm_x64.lua
rename to subprojects/luajit/dynasm/dasm_x64.lua
index b1b62022f..e8bdeb37d 100644
--- a/vendor/luajit/dynasm/dasm_x64.lua
+++ b/subprojects/luajit/dynasm/dasm_x64.lua
@@ -1,7 +1,7 @@
------------------------------------------------------------------------------
-- DynASM x64 module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See dynasm.lua for full copyright notice.
------------------------------------------------------------------------------
-- This module just sets 64 bit mode for the combined x86/x64 module.
diff --git a/vendor/luajit/dynasm/dasm_x86.h b/subprojects/luajit/dynasm/dasm_x86.h
similarity index 99%
rename from vendor/luajit/dynasm/dasm_x86.h
rename to subprojects/luajit/dynasm/dasm_x86.h
index 652e8c99b..90dc5d159 100644
--- a/vendor/luajit/dynasm/dasm_x86.h
+++ b/subprojects/luajit/dynasm/dasm_x86.h
@@ -1,6 +1,6 @@
/*
** DynASM x86 encoding engine.
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
** Released under the MIT license. See dynasm.lua for full copyright notice.
*/
@@ -204,7 +204,8 @@ void dasm_put(Dst_DECL, int start, ...)
case DASM_SPACE: p++; ofs += n; break;
case DASM_SETLABEL: b[pos-2] = -0x40000000; break; /* Neg. label ofs. */
case DASM_VREG: CK((n&-8) == 0 && (n != 4 || (*p&1) == 0), RANGE_VREG);
- if (*p++ == 1 && *p == DASM_DISP) mrm = n; continue;
+ if (*p++ == 1 && *p == DASM_DISP) mrm = n;
+ continue;
}
mrm = 4;
} else {
diff --git a/vendor/luajit/dynasm/dasm_x86.lua b/subprojects/luajit/dynasm/dasm_x86.lua
similarity index 99%
rename from vendor/luajit/dynasm/dasm_x86.lua
rename to subprojects/luajit/dynasm/dasm_x86.lua
index 7ca061d22..21c208655 100644
--- a/vendor/luajit/dynasm/dasm_x86.lua
+++ b/subprojects/luajit/dynasm/dasm_x86.lua
@@ -1,7 +1,7 @@
------------------------------------------------------------------------------
-- DynASM x86/x64 module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See dynasm.lua for full copyright notice.
------------------------------------------------------------------------------
@@ -1081,10 +1081,11 @@ local map_op = {
btr_2 = "mrqdw:0FB3Rm|miqdw:0FBA6mU",
bts_2 = "mrqdw:0FABRm|miqdw:0FBA5mU",
- shld_3 = "mriqdw:0FA4RmU|mrCqdw:0FA5Rm",
- shrd_3 = "mriqdw:0FACRmU|mrCqdw:0FADRm",
+ shld_3 = "mriqdw:0FA4RmU|mrC/qq:0FA5Rm|mrC/dd:|mrC/ww:",
+ shrd_3 = "mriqdw:0FACRmU|mrC/qq:0FADRm|mrC/dd:|mrC/ww:",
rdtsc_0 = "0F31", -- P1+
+ rdpmc_0 = "0F33", -- P6+
cpuid_0 = "0FA2", -- P1+
-- floating point ops
@@ -1190,7 +1191,7 @@ local map_op = {
cvtsi2sd_2 = "rm/od:F20F2ArM|rm/oq:F20F2ArXM",
cvtsi2ss_2 = "rm/od:F30F2ArM|rm/oq:F30F2ArXM",
cvtss2sd_2 = "rro:F30F5ArM|rx/od:",
- cvtss2si_2 = "rr/do:F20F2CrM|rr/qo:|rxd:|rx/qd:",
+ cvtss2si_2 = "rr/do:F30F2DrM|rr/qo:|rxd:|rx/qd:",
cvttpd2dq_2 = "rmo:660FE6rM",
cvttps2dq_2 = "rmo:F30F5BrM",
cvttsd2si_2 = "rr/do:F20F2CrM|rr/qo:|rx/dq:|rxq:",
@@ -1247,7 +1248,7 @@ local map_op = {
pcmpgtb_2 = "rmo:660F64rM",
pcmpgtd_2 = "rmo:660F66rM",
pcmpgtw_2 = "rmo:660F65rM",
- pextrw_3 = "rri/do:660FC5rMU|xri/wo:660F3A15nrMU", -- Mem op: SSE4.1 only.
+ pextrw_3 = "rri/do:660FC5rMU|xri/wo:660F3A15nRmU", -- Mem op: SSE4.1 only.
pinsrw_3 = "rri/od:660FC4rMU|rxi/ow:",
pmaddwd_2 = "rmo:660FF5rM",
pmaxsw_2 = "rmo:660FEErM",
@@ -1352,7 +1353,7 @@ local map_op = {
dpps_3 = "rmio:660F3A40rMU",
extractps_3 = "mri/do:660F3A17RmU|rri/qo:660F3A17RXmU",
insertps_3 = "rrio:660F3A41rMU|rxi/od:",
- movntdqa_2 = "rmo:660F382ArM",
+ movntdqa_2 = "rxo:660F382ArM",
mpsadbw_3 = "rmio:660F3A42rMU",
packusdw_2 = "rmo:660F382BrM",
pblendvb_3 = "rmRo:660F3810rM",
diff --git a/vendor/luajit/dynasm/dynasm.lua b/subprojects/luajit/dynasm/dynasm.lua
similarity index 99%
rename from vendor/luajit/dynasm/dynasm.lua
rename to subprojects/luajit/dynasm/dynasm.lua
index fffda7513..c46e956e6 100644
--- a/vendor/luajit/dynasm/dynasm.lua
+++ b/subprojects/luajit/dynasm/dynasm.lua
@@ -2,7 +2,7 @@
-- DynASM. A dynamic assembler for code generation engines.
-- Originally designed and implemented for LuaJIT.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- See below for full copyright notice.
------------------------------------------------------------------------------
@@ -17,7 +17,7 @@ local _info = {
url = "http://luajit.org/dynasm.html",
license = "MIT",
copyright = [[
-Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+Copyright (C) 2005-2017 Mike Pall. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
diff --git a/vendor/luajit/include/lauxlib.h b/subprojects/luajit/include/lauxlib.h
similarity index 100%
rename from vendor/luajit/include/lauxlib.h
rename to subprojects/luajit/include/lauxlib.h
diff --git a/vendor/luajit/include/lua.h b/subprojects/luajit/include/lua.h
similarity index 100%
rename from vendor/luajit/include/lua.h
rename to subprojects/luajit/include/lua.h
diff --git a/vendor/luajit/include/lua.hpp b/subprojects/luajit/include/lua.hpp
similarity index 100%
rename from vendor/luajit/include/lua.hpp
rename to subprojects/luajit/include/lua.hpp
diff --git a/vendor/luajit/include/luaconf.h b/subprojects/luajit/include/luaconf.h
similarity index 97%
rename from vendor/luajit/include/luaconf.h
rename to subprojects/luajit/include/luaconf.h
index 84fa64187..b33e91b77 100644
--- a/vendor/luajit/include/luaconf.h
+++ b/subprojects/luajit/include/luaconf.h
@@ -1,6 +1,6 @@
/*
** Configuration header.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef luaconf_h
@@ -37,7 +37,7 @@
#endif
#define LUA_LROOT "/usr/local"
#define LUA_LUADIR "/lua/5.1/"
-#define LUA_LJDIR "/luajit-2.0.4/"
+#define LUA_LJDIR "/luajit-2.0.5/"
#ifdef LUA_ROOT
#define LUA_JROOT LUA_ROOT
diff --git a/vendor/luajit/include/luajit.h b/subprojects/luajit/include/luajit.h
similarity index 89%
rename from vendor/luajit/include/luajit.h
rename to subprojects/luajit/include/luajit.h
index 9ced18eb8..c5ff3acb4 100644
--- a/vendor/luajit/include/luajit.h
+++ b/subprojects/luajit/include/luajit.h
@@ -1,7 +1,7 @@
/*
** LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/
**
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
**
** Permission is hereby granted, free of charge, to any person obtaining
** a copy of this software and associated documentation files (the
@@ -30,10 +30,10 @@
#include "lua.h"
-#define LUAJIT_VERSION "LuaJIT 2.0.4"
-#define LUAJIT_VERSION_NUM 20004 /* Version 2.0.4 = 02.00.04. */
-#define LUAJIT_VERSION_SYM luaJIT_version_2_0_4
-#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2015 Mike Pall"
+#define LUAJIT_VERSION "LuaJIT 2.0.5"
+#define LUAJIT_VERSION_NUM 20005 /* Version 2.0.5 = 02.00.05. */
+#define LUAJIT_VERSION_SYM luaJIT_version_2_0_5
+#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2017 Mike Pall"
#define LUAJIT_URL "http://luajit.org/"
/* Modes for luaJIT_setmode. */
diff --git a/vendor/luajit/include/lualib.h b/subprojects/luajit/include/lualib.h
similarity index 94%
rename from vendor/luajit/include/lualib.h
rename to subprojects/luajit/include/lualib.h
index 96530e79a..bfc130a1a 100644
--- a/vendor/luajit/include/lualib.h
+++ b/subprojects/luajit/include/lualib.h
@@ -1,6 +1,6 @@
/*
** Standard library header.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LUALIB_H
diff --git a/subprojects/luajit/meson.build b/subprojects/luajit/meson.build
new file mode 100644
index 000000000..bc74a2935
--- /dev/null
+++ b/subprojects/luajit/meson.build
@@ -0,0 +1,41 @@
+project('luajit', 'c', version: '2.0.4', license: 'MIT')
+
+cc = meson.get_compiler('c')
+
+system_deps = [
+ cc.find_library('dl', required: false),
+ cc.find_library('m', required: false)
+]
+
+# compat flag is needed for both the buildvm code generator (compiled natively) and luajit itself
+add_project_arguments('-DLUAJIT_ENABLE_LUA52COMPAT', language: 'c', native: true)
+add_project_arguments('-DLUAJIT_ENABLE_LUA52COMPAT', language: 'c', native: false)
+if host_machine.system() == 'linux'
+ add_project_arguments('-DLUAJIT_OS=LUAJIT_OS_LINUX', language: 'c', native: true)
+ readline_dep = cc.find_library('readline')
+ ljvm_mode = 'elfasm'
+ ljvm_bout = 'lj_vm.s'
+elif host_machine.system() == 'darwin'
+ add_project_arguments('-DLUAJIT_OS=LUAJIT_OS_OSX', language: 'c', native: true)
+ readline_dep = cc.find_library('readline')
+ ljvm_mode = 'machasm'
+ ljvm_bout = 'lj_vm.s'
+elif host_machine.system() == 'windows'
+ add_project_arguments('-DLUAJIT_OS=LUAJIT_OS_WINDOWS', language: 'c', native: true)
+ if cc.get_id() != 'msvc'
+ add_project_arguments('-malign-double', language: 'c', native: true)
+ endif
+ readline_dep = []
+ ljvm_mode = 'peobj'
+ ljvm_bout = 'lj_vm.o'
+else
+ readline_dep = []
+ error('Unsupported platform')
+endif
+
+incdir = include_directories('include')
+
+subdir('src')
+
+luajit_dep = declare_dependency(link_with: luajit_lib,
+ include_directories: incdir)
diff --git a/vendor/luajit/src/host/README b/subprojects/luajit/src/host/README
similarity index 100%
rename from vendor/luajit/src/host/README
rename to subprojects/luajit/src/host/README
diff --git a/vendor/luajit/src/host/buildvm.c b/subprojects/luajit/src/host/buildvm.c
similarity index 99%
rename from vendor/luajit/src/host/buildvm.c
rename to subprojects/luajit/src/host/buildvm.c
index 07122a645..b9560f313 100644
--- a/vendor/luajit/src/host/buildvm.c
+++ b/subprojects/luajit/src/host/buildvm.c
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** This is a tool to build the hand-tuned assembler code required for
** LuaJIT's bytecode interpreter. It supports a variety of output formats
diff --git a/vendor/luajit/src/host/buildvm.h b/subprojects/luajit/src/host/buildvm.h
similarity index 97%
rename from vendor/luajit/src/host/buildvm.h
rename to subprojects/luajit/src/host/buildvm.h
index b26218502..e6dd3dcbe 100644
--- a/vendor/luajit/src/host/buildvm.h
+++ b/subprojects/luajit/src/host/buildvm.h
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _BUILDVM_H
diff --git a/vendor/luajit/src/host/buildvm_asm.c b/subprojects/luajit/src/host/buildvm_asm.c
similarity index 98%
rename from vendor/luajit/src/host/buildvm_asm.c
rename to subprojects/luajit/src/host/buildvm_asm.c
index 2c9a2d482..81a3969a1 100644
--- a/vendor/luajit/src/host/buildvm_asm.c
+++ b/subprojects/luajit/src/host/buildvm_asm.c
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder: Assembler source code emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "buildvm.h"
@@ -183,7 +183,8 @@ static void emit_asm_label(BuildCtx *ctx, const char *name, int size, int isfunc
case BUILD_machasm:
fprintf(ctx->fp,
"\n\t.private_extern %s\n"
- "%s:\n", name, name);
+ "\t.no_dead_strip %s\n"
+ "%s:\n", name, name, name);
break;
default:
break;
diff --git a/vendor/luajit/src/host/buildvm_fold.c b/subprojects/luajit/src/host/buildvm_fold.c
similarity index 98%
rename from vendor/luajit/src/host/buildvm_fold.c
rename to subprojects/luajit/src/host/buildvm_fold.c
index daed7eccb..d579f4d41 100644
--- a/vendor/luajit/src/host/buildvm_fold.c
+++ b/subprojects/luajit/src/host/buildvm_fold.c
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder: IR folding hash table generator.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "buildvm.h"
@@ -9,7 +9,7 @@
/* Context for the folding hash table generator. */
static int lineno;
-static int funcidx;
+static uint32_t funcidx;
static uint32_t foldkeys[BUILD_MAX_FOLD];
static uint32_t nkeys;
diff --git a/vendor/luajit/src/host/buildvm_lib.c b/subprojects/luajit/src/host/buildvm_lib.c
similarity index 99%
rename from vendor/luajit/src/host/buildvm_lib.c
rename to subprojects/luajit/src/host/buildvm_lib.c
index c37301d46..569e2cafd 100644
--- a/vendor/luajit/src/host/buildvm_lib.c
+++ b/subprojects/luajit/src/host/buildvm_lib.c
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder: library definition compiler.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "buildvm.h"
diff --git a/vendor/luajit/src/host/buildvm_peobj.c b/subprojects/luajit/src/host/buildvm_peobj.c
similarity index 99%
rename from vendor/luajit/src/host/buildvm_peobj.c
rename to subprojects/luajit/src/host/buildvm_peobj.c
index 4279f5005..aab00d68f 100644
--- a/vendor/luajit/src/host/buildvm_peobj.c
+++ b/subprojects/luajit/src/host/buildvm_peobj.c
@@ -1,6 +1,6 @@
/*
** LuaJIT VM builder: PE object emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Only used for building on Windows, since we cannot assume the presence
** of a suitable assembler. The host and target byte order must match.
diff --git a/vendor/luajit/src/host/genminilua.lua b/subprojects/luajit/src/host/genminilua.lua
similarity index 97%
rename from vendor/luajit/src/host/genminilua.lua
rename to subprojects/luajit/src/host/genminilua.lua
index cd0d94662..50feff014 100644
--- a/vendor/luajit/src/host/genminilua.lua
+++ b/subprojects/luajit/src/host/genminilua.lua
@@ -2,7 +2,7 @@
-- Lua script to generate a customized, minified version of Lua.
-- The resulting 'minilua' is used for the build process of LuaJIT.
----------------------------------------------------------------------------
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
@@ -157,11 +157,11 @@ local function merge_includes(src)
if includes[name] then return "" end
includes[name] = true
local fp = assert(io.open(LUA_SOURCE..name, "r"))
- local src = fp:read("*a")
+ local inc = fp:read("*a")
assert(fp:close())
- src = gsub(src, "#ifndef%s+%w+_h\n#define%s+%w+_h\n", "")
- src = gsub(src, "#endif%s*$", "")
- return merge_includes(src)
+ inc = gsub(inc, "#ifndef%s+%w+_h\n#define%s+%w+_h\n", "")
+ inc = gsub(inc, "#endif%s*$", "")
+ return merge_includes(inc)
end)
end
@@ -300,6 +300,7 @@ local function strip_unused3(src)
src = gsub(src, "if%([^\n]*hookmask[^\n]*&&\n[^\n]*%b{}\n", "")
src = gsub(src, "(twoto%b()%()", "%1(size_t)")
src = gsub(src, "isizearray))
+if(cast(unsigned int,key)-1sizearray))
return&t->array[key-1];
else{
lua_Number nk=cast_num(key);
diff --git a/vendor/luajit/src/jit/bc.lua b/subprojects/luajit/src/jit/bc.lua
similarity index 97%
rename from vendor/luajit/src/jit/bc.lua
rename to subprojects/luajit/src/jit/bc.lua
index 46a40892e..a2f84aaf3 100644
--- a/vendor/luajit/src/jit/bc.lua
+++ b/subprojects/luajit/src/jit/bc.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT bytecode listing module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
--
@@ -41,7 +41,7 @@
-- Cache some library functions and objects.
local jit = require("jit")
-assert(jit.version_num == 20004, "LuaJIT core/library version mismatch")
+assert(jit.version_num == 20005, "LuaJIT core/library version mismatch")
local jutil = require("jit.util")
local vmdef = require("jit.vmdef")
local bit = require("bit")
diff --git a/vendor/luajit/src/jit/bcsave.lua b/subprojects/luajit/src/jit/bcsave.lua
similarity index 99%
rename from vendor/luajit/src/jit/bcsave.lua
rename to subprojects/luajit/src/jit/bcsave.lua
index 0319b3d25..aa677dfc3 100644
--- a/vendor/luajit/src/jit/bcsave.lua
+++ b/subprojects/luajit/src/jit/bcsave.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT module to save/list bytecode.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
--
@@ -11,7 +11,7 @@
------------------------------------------------------------------------------
local jit = require("jit")
-assert(jit.version_num == 20004, "LuaJIT core/library version mismatch")
+assert(jit.version_num == 20005, "LuaJIT core/library version mismatch")
local bit = require("bit")
-- Symbol name prefix for LuaJIT bytecode.
@@ -239,7 +239,7 @@ typedef struct {
hdr.type = f16(1)
hdr.machine = f16(({ x86=3, x64=62, arm=40, ppc=20, ppcspe=20, mips=8, mipsel=8 })[ctx.arch])
if ctx.arch == "mips" or ctx.arch == "mipsel" then
- hdr.flags = 0x50001006
+ hdr.flags = f32(0x50001006)
end
hdr.version = f32(1)
hdr.shofs = fofs(ffi.offsetof(o, "sect"))
diff --git a/vendor/luajit/src/jit/dis_arm.lua b/subprojects/luajit/src/jit/dis_arm.lua
similarity index 99%
rename from vendor/luajit/src/jit/dis_arm.lua
rename to subprojects/luajit/src/jit/dis_arm.lua
index 59be715a9..91ebb7d5f 100644
--- a/vendor/luajit/src/jit/dis_arm.lua
+++ b/subprojects/luajit/src/jit/dis_arm.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT ARM disassembler module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This is a helper module used by the LuaJIT machine code dumper module.
@@ -12,7 +12,7 @@
local type = type
local sub, byte, format = string.sub, string.byte, string.format
-local match, gmatch, gsub = string.match, string.gmatch, string.gsub
+local match, gmatch = string.match, string.gmatch
local concat = table.concat
local bit = require("bit")
local band, bor, ror, tohex = bit.band, bit.bor, bit.ror, bit.tohex
diff --git a/vendor/luajit/src/jit/dis_mips.lua b/subprojects/luajit/src/jit/dis_mips.lua
similarity index 98%
rename from vendor/luajit/src/jit/dis_mips.lua
rename to subprojects/luajit/src/jit/dis_mips.lua
index acdd2be16..02dfc1722 100644
--- a/vendor/luajit/src/jit/dis_mips.lua
+++ b/subprojects/luajit/src/jit/dis_mips.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT MIPS disassembler module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT/X license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This is a helper module used by the LuaJIT machine code dumper module.
@@ -11,8 +11,8 @@
------------------------------------------------------------------------------
local type = type
-local sub, byte, format = string.sub, string.byte, string.format
-local match, gmatch, gsub = string.match, string.gmatch, string.gsub
+local byte, format = string.byte, string.format
+local match, gmatch = string.match, string.gmatch
local concat = table.concat
local bit = require("bit")
local band, bor, tohex = bit.band, bit.bor, bit.tohex
diff --git a/vendor/luajit/src/jit/dis_mipsel.lua b/subprojects/luajit/src/jit/dis_mipsel.lua
similarity index 91%
rename from vendor/luajit/src/jit/dis_mipsel.lua
rename to subprojects/luajit/src/jit/dis_mipsel.lua
index dd9d26ae6..c9c2e2456 100644
--- a/vendor/luajit/src/jit/dis_mipsel.lua
+++ b/subprojects/luajit/src/jit/dis_mipsel.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT MIPSEL disassembler wrapper module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This module just exports the little-endian functions from the
diff --git a/vendor/luajit/src/jit/dis_ppc.lua b/subprojects/luajit/src/jit/dis_ppc.lua
similarity index 99%
rename from vendor/luajit/src/jit/dis_ppc.lua
rename to subprojects/luajit/src/jit/dis_ppc.lua
index d05c43111..4043aeb8d 100644
--- a/vendor/luajit/src/jit/dis_ppc.lua
+++ b/subprojects/luajit/src/jit/dis_ppc.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT PPC disassembler module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT/X license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This is a helper module used by the LuaJIT machine code dumper module.
@@ -13,7 +13,7 @@
------------------------------------------------------------------------------
local type = type
-local sub, byte, format = string.sub, string.byte, string.format
+local byte, format = string.byte, string.format
local match, gmatch, gsub = string.match, string.gmatch, string.gsub
local concat = table.concat
local bit = require("bit")
diff --git a/vendor/luajit/src/jit/dis_x64.lua b/subprojects/luajit/src/jit/dis_x64.lua
similarity index 91%
rename from vendor/luajit/src/jit/dis_x64.lua
rename to subprojects/luajit/src/jit/dis_x64.lua
index a80981bd5..08918035e 100644
--- a/vendor/luajit/src/jit/dis_x64.lua
+++ b/subprojects/luajit/src/jit/dis_x64.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT x64 disassembler wrapper module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This module just exports the 64 bit functions from the combined
diff --git a/vendor/luajit/src/jit/dis_x86.lua b/subprojects/luajit/src/jit/dis_x86.lua
similarity index 99%
rename from vendor/luajit/src/jit/dis_x86.lua
rename to subprojects/luajit/src/jit/dis_x86.lua
index 078d6094d..74d0f5292 100644
--- a/vendor/luajit/src/jit/dis_x86.lua
+++ b/subprojects/luajit/src/jit/dis_x86.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT x86/x64 disassembler module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
-- This is a helper module used by the LuaJIT machine code dumper module.
diff --git a/vendor/luajit/src/jit/dump.lua b/subprojects/luajit/src/jit/dump.lua
similarity index 97%
rename from vendor/luajit/src/jit/dump.lua
rename to subprojects/luajit/src/jit/dump.lua
index d15c528ea..666ba438f 100644
--- a/vendor/luajit/src/jit/dump.lua
+++ b/subprojects/luajit/src/jit/dump.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- LuaJIT compiler dump module.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
--
@@ -55,7 +55,7 @@
-- Cache some library functions and objects.
local jit = require("jit")
-assert(jit.version_num == 20004, "LuaJIT core/library version mismatch")
+assert(jit.version_num == 20005, "LuaJIT core/library version mismatch")
local jutil = require("jit.util")
local vmdef = require("jit.vmdef")
local funcinfo, funcbc = jutil.funcinfo, jutil.funcbc
@@ -63,9 +63,9 @@ local traceinfo, traceir, tracek = jutil.traceinfo, jutil.traceir, jutil.tracek
local tracemc, tracesnap = jutil.tracemc, jutil.tracesnap
local traceexitstub, ircalladdr = jutil.traceexitstub, jutil.ircalladdr
local bit = require("bit")
-local band, shl, shr = bit.band, bit.lshift, bit.rshift
+local band, shr = bit.band, bit.rshift
local sub, gsub, format = string.sub, string.gsub, string.format
-local byte, char, rep = string.byte, string.char, string.rep
+local byte, rep = string.byte, string.rep
local type, tostring = type, tostring
local stdout, stderr = io.stdout, io.stderr
@@ -207,7 +207,7 @@ local colortype_ansi = {
"\027[35m%s\027[m",
}
-local function colorize_text(s, t)
+local function colorize_text(s)
return s
end
@@ -324,7 +324,7 @@ local function formatk(tr, idx)
s = format("userdata:%p", k)
else
s = format("[%p]", k)
- if s == "[0x00000000]" then s = "NULL" end
+ if s == "[NULL]" then s = "NULL" end
end
elseif t == 21 then -- int64_t
s = sub(tostring(k), 1, -3)
@@ -564,6 +564,7 @@ local function dump_trace(what, tr, func, pc, otr, oex)
end
if dumpmode.H then out:write("\n\n") else out:write("\n") end
else
+ if what == "flush" then symtab, nexitsym = {}, 0 end
out:write("---- TRACE ", what, "\n\n")
end
out:flush()
@@ -643,7 +644,8 @@ end
local function dumpon(opt, outfile)
if active then dumpoff() end
- local colormode = os.getenv("COLORTERM") and "A" or "T"
+ local term = os.getenv("TERM")
+ local colormode = (term and term:match("color") or os.getenv("COLORTERM")) and "A" or "T"
if opt then
opt = gsub(opt, "[TAH]", function(mode) colormode = mode; return ""; end)
end
diff --git a/vendor/luajit/src/jit/v.lua b/subprojects/luajit/src/jit/v.lua
similarity index 97%
rename from vendor/luajit/src/jit/v.lua
rename to subprojects/luajit/src/jit/v.lua
index 32666fd1a..47ee39410 100644
--- a/vendor/luajit/src/jit/v.lua
+++ b/subprojects/luajit/src/jit/v.lua
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
-- Verbose mode of the LuaJIT compiler.
--
--- Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+-- Copyright (C) 2005-2017 Mike Pall. All rights reserved.
-- Released under the MIT license. See Copyright Notice in luajit.h
----------------------------------------------------------------------------
--
@@ -59,7 +59,7 @@
-- Cache some library functions and objects.
local jit = require("jit")
-assert(jit.version_num == 20004, "LuaJIT core/library version mismatch")
+assert(jit.version_num == 20005, "LuaJIT core/library version mismatch")
local jutil = require("jit.util")
local vmdef = require("jit.vmdef")
local funcinfo, traceinfo = jutil.funcinfo, jutil.traceinfo
diff --git a/vendor/luajit/src/lauxlib.h b/subprojects/luajit/src/lauxlib.h
similarity index 100%
rename from vendor/luajit/src/lauxlib.h
rename to subprojects/luajit/src/lauxlib.h
diff --git a/vendor/luajit/src/lib_aux.c b/subprojects/luajit/src/lib_aux.c
similarity index 99%
rename from vendor/luajit/src/lib_aux.c
rename to subprojects/luajit/src/lib_aux.c
index 4a1b70ddc..7af1cd43b 100644
--- a/vendor/luajit/src/lib_aux.c
+++ b/subprojects/luajit/src/lib_aux.c
@@ -1,6 +1,6 @@
/*
** Auxiliary library for the Lua/C API.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major parts taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lib_base.c b/subprojects/luajit/src/lib_base.c
similarity index 99%
rename from vendor/luajit/src/lib_base.c
rename to subprojects/luajit/src/lib_base.c
index 17b9525d6..162bbbb2e 100644
--- a/vendor/luajit/src/lib_base.c
+++ b/subprojects/luajit/src/lib_base.c
@@ -1,6 +1,6 @@
/*
** Base and coroutine library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2011 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lib_bit.c b/subprojects/luajit/src/lib_bit.c
similarity index 96%
rename from vendor/luajit/src/lib_bit.c
rename to subprojects/luajit/src/lib_bit.c
index 583e04b0c..6dffdfac0 100644
--- a/vendor/luajit/src/lib_bit.c
+++ b/subprojects/luajit/src/lib_bit.c
@@ -1,6 +1,6 @@
/*
** Bit manipulation library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lib_bit_c
diff --git a/vendor/luajit/src/lib_debug.c b/subprojects/luajit/src/lib_debug.c
similarity index 99%
rename from vendor/luajit/src/lib_debug.c
rename to subprojects/luajit/src/lib_debug.c
index e87c35cfe..54c3b7e26 100644
--- a/vendor/luajit/src/lib_debug.c
+++ b/subprojects/luajit/src/lib_debug.c
@@ -1,6 +1,6 @@
/*
** Debug library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lib_ffi.c b/subprojects/luajit/src/lib_ffi.c
similarity index 99%
rename from vendor/luajit/src/lib_ffi.c
rename to subprojects/luajit/src/lib_ffi.c
index f6df39d67..f2f2ede45 100644
--- a/vendor/luajit/src/lib_ffi.c
+++ b/subprojects/luajit/src/lib_ffi.c
@@ -1,6 +1,6 @@
/*
** FFI library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lib_ffi_c
@@ -811,7 +811,7 @@ static GCtab *ffi_finalizer(lua_State *L)
settabV(L, L->top++, t);
setgcref(t->metatable, obj2gco(t));
setstrV(L, lj_tab_setstr(L, t, lj_str_newlit(L, "__mode")),
- lj_str_newlit(L, "K"));
+ lj_str_newlit(L, "k"));
t->nomm = (uint8_t)(~(1u<top - L->base);
+ if (n > LJ_MAX_UPVAL)
+ lj_err_caller(L, LJ_ERR_UNPACK);
+ lua_pushcclosure(L, io_file_iter, n);
+ return 1;
+}
+
/* -- I/O file methods ---------------------------------------------------- */
#define LJLIB_MODULE_io_method
@@ -379,8 +388,7 @@ LJLIB_CF(io_method_setvbuf)
LJLIB_CF(io_method_lines)
{
io_tofile(L);
- lua_pushcclosure(L, io_file_iter, (int)(L->top - L->base));
- return 1;
+ return io_file_lines(L);
}
LJLIB_CF(io_method___gc)
@@ -520,8 +528,7 @@ LJLIB_CF(io_lines)
} else { /* io.lines() iterates over stdin. */
setudataV(L, L->base, IOSTDF_UD(L, GCROOT_IO_INPUT));
}
- lua_pushcclosure(L, io_file_iter, (int)(L->top - L->base));
- return 1;
+ return io_file_lines(L);
}
LJLIB_CF(io_type)
diff --git a/vendor/luajit/src/lib_jit.c b/subprojects/luajit/src/lib_jit.c
similarity index 99%
rename from vendor/luajit/src/lib_jit.c
rename to subprojects/luajit/src/lib_jit.c
index 96525faf2..d2fcf21be 100644
--- a/vendor/luajit/src/lib_jit.c
+++ b/subprojects/luajit/src/lib_jit.c
@@ -1,6 +1,6 @@
/*
** JIT library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lib_jit_c
@@ -199,6 +199,7 @@ LJLIB_CF(jit_util_funcinfo)
lua_setfield(L, -2, "source");
lj_debug_pushloc(L, pt, pc);
lua_setfield(L, -2, "loc");
+ setprotoV(L, lj_tab_setstr(L, t, lj_str_newlit(L, "proto")), pt);
} else {
GCfunc *fn = funcV(L->base);
GCtab *t;
diff --git a/vendor/luajit/src/lib_math.c b/subprojects/luajit/src/lib_math.c
similarity index 98%
rename from vendor/luajit/src/lib_math.c
rename to subprojects/luajit/src/lib_math.c
index 40f29142d..4c708a47e 100644
--- a/vendor/luajit/src/lib_math.c
+++ b/subprojects/luajit/src/lib_math.c
@@ -1,6 +1,6 @@
/*
** Math library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include
diff --git a/vendor/luajit/src/lib_os.c b/subprojects/luajit/src/lib_os.c
similarity index 98%
rename from vendor/luajit/src/lib_os.c
rename to subprojects/luajit/src/lib_os.c
index a2ed170b7..05b324950 100644
--- a/vendor/luajit/src/lib_os.c
+++ b/subprojects/luajit/src/lib_os.c
@@ -1,6 +1,6 @@
/*
** OS library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
@@ -53,7 +53,7 @@ static wchar_t *widen_static(const char *narrow, int idx)
LJLIB_CF(os_execute)
{
-#if LJ_TARGET_CONSOLE
+#if LJ_NO_SYSTEM
#if LJ_52
errno = ENOSYS;
return luaL_fileresult(L, 0, NULL);
diff --git a/vendor/luajit/src/lib_package.c b/subprojects/luajit/src/lib_package.c
similarity index 99%
rename from vendor/luajit/src/lib_package.c
rename to subprojects/luajit/src/lib_package.c
index ac38c8158..01b63d638 100644
--- a/vendor/luajit/src/lib_package.c
+++ b/subprojects/luajit/src/lib_package.c
@@ -1,6 +1,6 @@
/*
** Package library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2012 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lib_string.c b/subprojects/luajit/src/lib_string.c
similarity index 99%
rename from vendor/luajit/src/lib_string.c
rename to subprojects/luajit/src/lib_string.c
index c6168edbb..d1a60b617 100644
--- a/vendor/luajit/src/lib_string.c
+++ b/subprojects/luajit/src/lib_string.c
@@ -1,6 +1,6 @@
/*
** String library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lib_table.c b/subprojects/luajit/src/lib_table.c
similarity index 99%
rename from vendor/luajit/src/lib_table.c
rename to subprojects/luajit/src/lib_table.c
index fbfe86387..b2856ee2f 100644
--- a/vendor/luajit/src/lib_table.c
+++ b/subprojects/luajit/src/lib_table.c
@@ -1,6 +1,6 @@
/*
** Table library.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj.supp b/subprojects/luajit/src/lj.supp
similarity index 65%
rename from vendor/luajit/src/lj.supp
rename to subprojects/luajit/src/lj.supp
index 411f26170..217f7c890 100644
--- a/vendor/luajit/src/lj.supp
+++ b/subprojects/luajit/src/lj.supp
@@ -24,3 +24,18 @@
Memcheck:Cond
fun:lj_str_new
}
+{
+ Optimized string compare
+ Memcheck:Addr4
+ fun:str_fastcmp
+}
+{
+ Optimized string compare
+ Memcheck:Addr1
+ fun:str_fastcmp
+}
+{
+ Optimized string compare
+ Memcheck:Cond
+ fun:str_fastcmp
+}
diff --git a/vendor/luajit/src/lj_alloc.c b/subprojects/luajit/src/lj_alloc.c
similarity index 99%
rename from vendor/luajit/src/lj_alloc.c
rename to subprojects/luajit/src/lj_alloc.c
index 7c7ec6787..dc64dca9a 100644
--- a/vendor/luajit/src/lj_alloc.c
+++ b/subprojects/luajit/src/lj_alloc.c
@@ -194,7 +194,7 @@ static LJ_AINLINE void *CALL_MMAP(size_t size)
return ptr;
}
-#elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__)
+#elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) || LJ_TARGET_CYGWIN
/* OSX and FreeBSD mmap() use a naive first-fit linear search.
** That's perfect for us. Except that -pagezero_size must be set for OSX,
diff --git a/vendor/luajit/src/lj_alloc.h b/subprojects/luajit/src/lj_alloc.h
similarity index 100%
rename from vendor/luajit/src/lj_alloc.h
rename to subprojects/luajit/src/lj_alloc.h
diff --git a/vendor/luajit/src/lj_api.c b/subprojects/luajit/src/lj_api.c
similarity index 99%
rename from vendor/luajit/src/lj_api.c
rename to subprojects/luajit/src/lj_api.c
index 3bedb39fd..7b0b3f9d0 100644
--- a/vendor/luajit/src/lj_api.c
+++ b/subprojects/luajit/src/lj_api.c
@@ -1,6 +1,6 @@
/*
** Public Lua/C API.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_arch.h b/subprojects/luajit/src/lj_arch.h
similarity index 94%
rename from vendor/luajit/src/lj_arch.h
rename to subprojects/luajit/src/lj_arch.h
index d3a9d57d7..e04c4ee9f 100644
--- a/vendor/luajit/src/lj_arch.h
+++ b/subprojects/luajit/src/lj_arch.h
@@ -1,6 +1,6 @@
/*
** Target architecture selection.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_ARCH_H
@@ -70,7 +70,10 @@
defined(__NetBSD__) || defined(__OpenBSD__) || \
defined(__DragonFly__)) && !defined(__ORBIS__)
#define LUAJIT_OS LUAJIT_OS_BSD
-#elif (defined(__sun__) && defined(__svr4__)) || defined(__CYGWIN__)
+#elif (defined(__sun__) && defined(__svr4__))
+#define LUAJIT_OS LUAJIT_OS_POSIX
+#elif defined(__CYGWIN__)
+#define LJ_TARGET_CYGWIN 1
#define LUAJIT_OS LUAJIT_OS_POSIX
#else
#define LUAJIT_OS LUAJIT_OS_OTHER
@@ -133,7 +136,7 @@
#define LJ_ARCH_NAME "x86"
#define LJ_ARCH_BITS 32
#define LJ_ARCH_ENDIAN LUAJIT_LE
-#if LJ_TARGET_WINDOWS || __CYGWIN__
+#if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN
#define LJ_ABI_WIN 1
#else
#define LJ_ABI_WIN 0
@@ -151,7 +154,11 @@
#define LJ_ARCH_NAME "x64"
#define LJ_ARCH_BITS 64
#define LJ_ARCH_ENDIAN LUAJIT_LE
-#define LJ_ABI_WIN LJ_TARGET_WINDOWS
+#if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN
+#define LJ_ABI_WIN 1
+#else
+#define LJ_ABI_WIN 0
+#endif
#define LJ_TARGET_X64 1
#define LJ_TARGET_X86ORX64 1
#define LJ_TARGET_EHRETREG 0
@@ -422,8 +429,16 @@
#if defined(__symbian__)
#define LUAJIT_NO_EXP2
#endif
+#if LJ_TARGET_CONSOLE || (LJ_TARGET_IOS && __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_8_0)
+#define LJ_NO_SYSTEM 1
+#endif
-#if defined(LUAJIT_NO_UNWIND) || defined(__symbian__) || LJ_TARGET_IOS || LJ_TARGET_PS3
+#if !defined(LUAJIT_NO_UNWIND) && __GNU_COMPACT_EH__
+/* NYI: no support for compact unwind specification, yet. */
+#define LUAJIT_NO_UNWIND 1
+#endif
+
+#if defined(LUAJIT_NO_UNWIND) || defined(__symbian__) || LJ_TARGET_IOS || LJ_TARGET_PS3 || LJ_TARGET_PS4
#define LJ_NO_UNWIND 1
#endif
diff --git a/vendor/luajit/src/lj_asm.c b/subprojects/luajit/src/lj_asm.c
similarity index 99%
rename from vendor/luajit/src/lj_asm.c
rename to subprojects/luajit/src/lj_asm.c
index 804b4dc80..02714d4ef 100644
--- a/vendor/luajit/src/lj_asm.c
+++ b/subprojects/luajit/src/lj_asm.c
@@ -1,6 +1,6 @@
/*
** IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_asm_c
diff --git a/vendor/luajit/src/lj_asm.h b/subprojects/luajit/src/lj_asm.h
similarity index 82%
rename from vendor/luajit/src/lj_asm.h
rename to subprojects/luajit/src/lj_asm.h
index 85f297632..2819481b6 100644
--- a/vendor/luajit/src/lj_asm.h
+++ b/subprojects/luajit/src/lj_asm.h
@@ -1,6 +1,6 @@
/*
** IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_ASM_H
diff --git a/vendor/luajit/src/lj_asm_arm.h b/subprojects/luajit/src/lj_asm_arm.h
similarity index 99%
rename from vendor/luajit/src/lj_asm_arm.h
rename to subprojects/luajit/src/lj_asm_arm.h
index 9e4cf4367..961f7e397 100644
--- a/vendor/luajit/src/lj_asm_arm.h
+++ b/subprojects/luajit/src/lj_asm_arm.h
@@ -1,6 +1,6 @@
/*
** ARM IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Register allocator extensions --------------------------------------- */
@@ -426,7 +426,7 @@ static void asm_gencall(ASMState *as, const CCallInfo *ci, IRRef *args)
static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
{
RegSet drop = RSET_SCRATCH;
- int hiop = ((ir+1)->o == IR_HIOP);
+ int hiop = ((ir+1)->o == IR_HIOP && !irt_isnil((ir+1)->t));
if (ra_hasreg(ir->r))
rset_clear(drop, ir->r); /* Dest reg handled below. */
if (hiop && ra_hasreg((ir+1)->r))
@@ -976,7 +976,6 @@ static void asm_newref(ASMState *as, IRIns *ir)
static void asm_uref(ASMState *as, IRIns *ir)
{
- /* NYI: Check that UREFO is still open and not aliasing a slot. */
Reg dest = ra_dest(as, ir, RSET_GPR);
if (irref_isk(ir->op1)) {
GCfunc *fn = ir_kfunc(IR(ir->op1));
diff --git a/vendor/luajit/src/lj_asm_mips.h b/subprojects/luajit/src/lj_asm_mips.h
similarity index 99%
rename from vendor/luajit/src/lj_asm_mips.h
rename to subprojects/luajit/src/lj_asm_mips.h
index 78bd26d5d..03270ccaa 100644
--- a/vendor/luajit/src/lj_asm_mips.h
+++ b/subprojects/luajit/src/lj_asm_mips.h
@@ -1,6 +1,6 @@
/*
** MIPS IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Register allocator extensions --------------------------------------- */
@@ -291,7 +291,7 @@ static void asm_gencall(ASMState *as, const CCallInfo *ci, IRRef *args)
static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
{
RegSet drop = RSET_SCRATCH;
- int hiop = ((ir+1)->o == IR_HIOP);
+ int hiop = ((ir+1)->o == IR_HIOP && !irt_isnil((ir+1)->t));
if ((ci->flags & CCI_NOFPRCLOBBER))
drop &= ~RSET_FPR;
if (ra_hasreg(ir->r))
@@ -443,18 +443,14 @@ static void asm_conv(ASMState *as, IRIns *ir)
/* y = (x ^ 0x8000000) + 2147483648.0 */
Reg left = ra_alloc1(as, lref, RSET_GPR);
Reg tmp = ra_scratch(as, rset_exclude(RSET_FPR, dest));
- emit_fgh(as, irt_isfloat(ir->t) ? MIPSI_ADD_S : MIPSI_ADD_D,
- dest, dest, tmp);
- emit_fg(as, irt_isfloat(ir->t) ? MIPSI_CVT_S_W : MIPSI_CVT_D_W,
- dest, dest);
if (irt_isfloat(ir->t))
- emit_lsptr(as, MIPSI_LWC1, (tmp & 31),
- (void *)lj_ir_k64_find(as->J, U64x(4f000000,4f000000)),
- RSET_GPR);
- else
- emit_lsptr(as, MIPSI_LDC1, (tmp & 31),
- (void *)lj_ir_k64_find(as->J, U64x(41e00000,00000000)),
- RSET_GPR);
+ emit_fg(as, MIPSI_CVT_S_D, dest, dest);
+ /* Must perform arithmetic with doubles to keep the precision. */
+ emit_fgh(as, MIPSI_ADD_D, dest, dest, tmp);
+ emit_fg(as, MIPSI_CVT_D_W, dest, dest);
+ emit_lsptr(as, MIPSI_LDC1, (tmp & 31),
+ (void *)lj_ir_k64_find(as->J, U64x(41e00000,00000000)),
+ RSET_GPR);
emit_tg(as, MIPSI_MTC1, RID_TMP, dest);
emit_dst(as, MIPSI_XOR, RID_TMP, RID_TMP, left);
emit_ti(as, MIPSI_LUI, RID_TMP, 0x8000);
@@ -793,7 +789,6 @@ static void asm_newref(ASMState *as, IRIns *ir)
static void asm_uref(ASMState *as, IRIns *ir)
{
- /* NYI: Check that UREFO is still open and not aliasing a slot. */
Reg dest = ra_dest(as, ir, RSET_GPR);
if (irref_isk(ir->op1)) {
GCfunc *fn = ir_kfunc(IR(ir->op1));
diff --git a/vendor/luajit/src/lj_asm_ppc.h b/subprojects/luajit/src/lj_asm_ppc.h
similarity index 99%
rename from vendor/luajit/src/lj_asm_ppc.h
rename to subprojects/luajit/src/lj_asm_ppc.h
index 2c5d74a8d..d8a14c839 100644
--- a/vendor/luajit/src/lj_asm_ppc.h
+++ b/subprojects/luajit/src/lj_asm_ppc.h
@@ -1,6 +1,6 @@
/*
** PPC IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Register allocator extensions --------------------------------------- */
@@ -298,7 +298,7 @@ static void asm_gencall(ASMState *as, const CCallInfo *ci, IRRef *args)
static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
{
RegSet drop = RSET_SCRATCH;
- int hiop = ((ir+1)->o == IR_HIOP);
+ int hiop = ((ir+1)->o == IR_HIOP && !irt_isnil((ir+1)->t));
if ((ci->flags & CCI_NOFPRCLOBBER))
drop &= ~RSET_FPR;
if (ra_hasreg(ir->r))
@@ -789,7 +789,6 @@ static void asm_newref(ASMState *as, IRIns *ir)
static void asm_uref(ASMState *as, IRIns *ir)
{
- /* NYI: Check that UREFO is still open and not aliasing a slot. */
Reg dest = ra_dest(as, ir, RSET_GPR);
if (irref_isk(ir->op1)) {
GCfunc *fn = ir_kfunc(IR(ir->op1));
diff --git a/vendor/luajit/src/lj_asm_x86.h b/subprojects/luajit/src/lj_asm_x86.h
similarity index 95%
rename from vendor/luajit/src/lj_asm_x86.h
rename to subprojects/luajit/src/lj_asm_x86.h
index 0b6b2d4a5..10468bb71 100644
--- a/vendor/luajit/src/lj_asm_x86.h
+++ b/subprojects/luajit/src/lj_asm_x86.h
@@ -1,6 +1,6 @@
/*
** x86/x64 IR assembler (SSA IR -> machine code).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Guard handling ------------------------------------------------------ */
@@ -325,11 +325,11 @@ static Reg asm_fuseload(ASMState *as, IRRef ref, RegSet allow)
as->mrm.base = as->mrm.idx = RID_NONE;
return RID_MRM;
}
- } else if (ir->o == IR_KINT64) {
+ } else if (ref == REF_BASE || ir->o == IR_KINT64) {
RegSet avail = as->freeset & ~as->modset & RSET_GPR;
lua_assert(allow != RSET_EMPTY);
if (!(avail & (avail-1))) { /* Fuse if less than two regs available. */
- as->mrm.ofs = ptr2addr(ir_kint64(ir));
+ as->mrm.ofs = ptr2addr(ref == REF_BASE ? (void *)&J2G(as->J)->jit_base : (void *)ir_kint64(ir));
as->mrm.base = as->mrm.idx = RID_NONE;
return RID_MRM;
}
@@ -369,7 +369,7 @@ static Reg asm_fuseload(ASMState *as, IRRef ref, RegSet allow)
return RID_MRM;
}
}
- if (!(as->freeset & allow) && !irref_isk(ref) &&
+ if (!(as->freeset & allow) && !emit_canremat(ref) &&
(allow == RSET_EMPTY || ra_hasspill(ir->s) || iscrossref(as, ref)))
goto fusespill;
return ra_allocref(as, ref, allow);
@@ -531,7 +531,7 @@ static void asm_gencall(ASMState *as, const CCallInfo *ci, IRRef *args)
static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
{
RegSet drop = RSET_SCRATCH;
- int hiop = (LJ_32 && (ir+1)->o == IR_HIOP);
+ int hiop = (LJ_32 && (ir+1)->o == IR_HIOP && !irt_isnil((ir+1)->t));
if ((ci->flags & CCI_NOFPRCLOBBER))
drop &= ~RSET_FPR;
if (ra_hasreg(ir->r))
@@ -1215,7 +1215,6 @@ static void asm_newref(ASMState *as, IRIns *ir)
static void asm_uref(ASMState *as, IRIns *ir)
{
- /* NYI: Check that UREFO is still open and not aliasing a slot. */
Reg dest = ra_dest(as, ir, RSET_GPR);
if (irref_isk(ir->op1)) {
GCfunc *fn = ir_kfunc(IR(ir->op1));
@@ -2776,6 +2775,106 @@ static void asm_setup_target(ASMState *as)
/* -- Trace patching ------------------------------------------------------ */
+static const uint8_t map_op1[256] = {
+0x92,0x92,0x92,0x92,0x52,0x45,0x51,0x51,0x92,0x92,0x92,0x92,0x52,0x45,0x51,0x20,
+0x92,0x92,0x92,0x92,0x52,0x45,0x51,0x51,0x92,0x92,0x92,0x92,0x52,0x45,0x51,0x51,
+0x92,0x92,0x92,0x92,0x52,0x45,0x10,0x51,0x92,0x92,0x92,0x92,0x52,0x45,0x10,0x51,
+0x92,0x92,0x92,0x92,0x52,0x45,0x10,0x51,0x92,0x92,0x92,0x92,0x52,0x45,0x10,0x51,
+#if LJ_64
+0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x14,0x14,0x14,0x14,0x14,0x14,0x14,0x14,
+#else
+0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,
+#endif
+0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,
+0x51,0x51,0x92,0x92,0x10,0x10,0x12,0x11,0x45,0x86,0x52,0x93,0x51,0x51,0x51,0x51,
+0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,
+0x93,0x86,0x93,0x93,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,
+0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x51,0x47,0x51,0x51,0x51,0x51,0x51,
+#if LJ_64
+0x59,0x59,0x59,0x59,0x51,0x51,0x51,0x51,0x52,0x45,0x51,0x51,0x51,0x51,0x51,0x51,
+#else
+0x55,0x55,0x55,0x55,0x51,0x51,0x51,0x51,0x52,0x45,0x51,0x51,0x51,0x51,0x51,0x51,
+#endif
+0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x05,0x05,0x05,0x05,0x05,0x05,0x05,0x05,
+0x93,0x93,0x53,0x51,0x70,0x71,0x93,0x86,0x54,0x51,0x53,0x51,0x51,0x52,0x51,0x51,
+0x92,0x92,0x92,0x92,0x52,0x52,0x51,0x51,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x92,
+0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x45,0x45,0x47,0x52,0x51,0x51,0x51,0x51,
+0x10,0x51,0x10,0x10,0x51,0x51,0x63,0x66,0x51,0x51,0x51,0x51,0x51,0x51,0x92,0x92
+};
+
+static const uint8_t map_op2[256] = {
+0x93,0x93,0x93,0x93,0x52,0x52,0x52,0x52,0x52,0x52,0x51,0x52,0x51,0x93,0x52,0x94,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x53,0x53,0x53,0x53,0x53,0x53,0x53,0x53,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x34,0x51,0x35,0x51,0x51,0x51,0x51,0x51,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x53,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x94,0x54,0x54,0x54,0x93,0x93,0x93,0x52,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,0x46,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x52,0x52,0x52,0x93,0x94,0x93,0x51,0x51,0x52,0x52,0x52,0x93,0x94,0x93,0x93,0x93,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x94,0x93,0x93,0x93,0x93,0x93,
+0x93,0x93,0x94,0x93,0x94,0x94,0x94,0x93,0x52,0x52,0x52,0x52,0x52,0x52,0x52,0x52,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,
+0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x93,0x52
+};
+
+static uint32_t asm_x86_inslen(const uint8_t* p)
+{
+ uint32_t result = 0;
+ uint32_t prefixes = 0;
+ uint32_t x = map_op1[*p];
+ for (;;) {
+ switch (x >> 4) {
+ case 0: return result + x + (prefixes & 4);
+ case 1: prefixes |= x; x = map_op1[*++p]; result++; break;
+ case 2: x = map_op2[*++p]; break;
+ case 3: p++; goto mrm;
+ case 4: result -= (prefixes & 2); /* fallthrough */
+ case 5: return result + (x & 15);
+ case 6: /* Group 3. */
+ if (p[1] & 0x38) x = 2;
+ else if ((prefixes & 2) && (x == 0x66)) x = 4;
+ goto mrm;
+ case 7: /* VEX c4/c5. */
+ if (LJ_32 && p[1] < 0xc0) {
+ x = 2;
+ goto mrm;
+ }
+ if (x == 0x70) {
+ x = *++p & 0x1f;
+ result++;
+ if (x >= 2) {
+ p += 2;
+ result += 2;
+ goto mrm;
+ }
+ }
+ p++;
+ result++;
+ x = map_op2[*++p];
+ break;
+ case 8: result -= (prefixes & 2); /* fallthrough */
+ case 9: mrm: /* ModR/M and possibly SIB. */
+ result += (x & 15);
+ x = *++p;
+ switch (x >> 6) {
+ case 0: if ((x & 7) == 5) return result + 4; break;
+ case 1: result++; break;
+ case 2: result += 4; break;
+ case 3: return result;
+ }
+ if ((x & 7) == 4) {
+ result++;
+ if (x < 0x40 && (p[1] & 7) == 5) result += 4;
+ }
+ return result;
+ }
+ }
+}
+
/* Patch exit jumps of existing machine code to a new target. */
void lj_asm_patchexit(jit_State *J, GCtrace *T, ExitNo exitno, MCode *target)
{
@@ -2788,18 +2887,13 @@ void lj_asm_patchexit(jit_State *J, GCtrace *T, ExitNo exitno, MCode *target)
if (len > 5 && p[len-5] == XI_JMP && p+len-6 + *(int32_t *)(p+len-4) == px)
*(int32_t *)(p+len-4) = jmprel(p+len, target);
/* Do not patch parent exit for a stack check. Skip beyond vmstate update. */
- for (; p < pe; p++)
- if (*(uint32_t *)(p+(LJ_64 ? 3 : 2)) == stateaddr && p[0] == XI_MOVmi) {
- p += LJ_64 ? 11 : 10;
+ for (; p < pe; p += asm_x86_inslen(p))
+ if (*(uint32_t *)(p+(LJ_64 ? 3 : 2)) == stateaddr && p[0] == XI_MOVmi)
break;
- }
lua_assert(p < pe);
- for (; p < pe; p++) {
- if ((*(uint16_t *)p & 0xf0ff) == 0x800f && p + *(int32_t *)(p+2) == px) {
+ for (; p < pe; p += asm_x86_inslen(p))
+ if ((*(uint16_t *)p & 0xf0ff) == 0x800f && p + *(int32_t *)(p+2) == px)
*(int32_t *)(p+2) = jmprel(p+6, target);
- p += 5;
- }
- }
lj_mcode_sync(T->mcode, T->mcode + T->szmcode);
lj_mcode_patch(J, mcarea, 1);
}
diff --git a/vendor/luajit/src/lj_bc.c b/subprojects/luajit/src/lj_bc.c
similarity index 75%
rename from vendor/luajit/src/lj_bc.c
rename to subprojects/luajit/src/lj_bc.c
index a8f444c26..a597692ca 100644
--- a/vendor/luajit/src/lj_bc.c
+++ b/subprojects/luajit/src/lj_bc.c
@@ -1,6 +1,6 @@
/*
** Bytecode instruction modes.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_bc_c
diff --git a/vendor/luajit/src/lj_bc.h b/subprojects/luajit/src/lj_bc.h
similarity index 99%
rename from vendor/luajit/src/lj_bc.h
rename to subprojects/luajit/src/lj_bc.h
index 7436fabfe..108c10f28 100644
--- a/vendor/luajit/src/lj_bc.h
+++ b/subprojects/luajit/src/lj_bc.h
@@ -1,6 +1,6 @@
/*
** Bytecode instruction format.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_BC_H
diff --git a/vendor/luajit/src/lj_bcdump.h b/subprojects/luajit/src/lj_bcdump.h
similarity index 96%
rename from vendor/luajit/src/lj_bcdump.h
rename to subprojects/luajit/src/lj_bcdump.h
index 812d0e151..ba53c0a11 100644
--- a/vendor/luajit/src/lj_bcdump.h
+++ b/subprojects/luajit/src/lj_bcdump.h
@@ -1,6 +1,6 @@
/*
** Bytecode dump definitions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_BCDUMP_H
diff --git a/vendor/luajit/src/lj_bcread.c b/subprojects/luajit/src/lj_bcread.c
similarity index 99%
rename from vendor/luajit/src/lj_bcread.c
rename to subprojects/luajit/src/lj_bcread.c
index 25859d2fa..6a462bd6d 100644
--- a/vendor/luajit/src/lj_bcread.c
+++ b/subprojects/luajit/src/lj_bcread.c
@@ -1,6 +1,6 @@
/*
** Bytecode reader.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_bcread_c
diff --git a/vendor/luajit/src/lj_bcwrite.c b/subprojects/luajit/src/lj_bcwrite.c
similarity index 99%
rename from vendor/luajit/src/lj_bcwrite.c
rename to subprojects/luajit/src/lj_bcwrite.c
index ff97450b8..fae1ebb33 100644
--- a/vendor/luajit/src/lj_bcwrite.c
+++ b/subprojects/luajit/src/lj_bcwrite.c
@@ -1,6 +1,6 @@
/*
** Bytecode writer.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_bcwrite_c
diff --git a/vendor/luajit/src/lj_carith.c b/subprojects/luajit/src/lj_carith.c
similarity index 99%
rename from vendor/luajit/src/lj_carith.c
rename to subprojects/luajit/src/lj_carith.c
index 2a358a9bb..6224dee62 100644
--- a/vendor/luajit/src/lj_carith.c
+++ b/subprojects/luajit/src/lj_carith.c
@@ -1,6 +1,6 @@
/*
** C data arithmetic.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_carith.h b/subprojects/luajit/src/lj_carith.h
similarity index 90%
rename from vendor/luajit/src/lj_carith.h
rename to subprojects/luajit/src/lj_carith.h
index 8c4bdbbe2..3c1559107 100644
--- a/vendor/luajit/src/lj_carith.h
+++ b/subprojects/luajit/src/lj_carith.h
@@ -1,6 +1,6 @@
/*
** C data arithmetic.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CARITH_H
diff --git a/vendor/luajit/src/lj_ccall.c b/subprojects/luajit/src/lj_ccall.c
similarity index 99%
rename from vendor/luajit/src/lj_ccall.c
rename to subprojects/luajit/src/lj_ccall.c
index 998417c1c..65076e776 100644
--- a/vendor/luajit/src/lj_ccall.c
+++ b/subprojects/luajit/src/lj_ccall.c
@@ -1,6 +1,6 @@
/*
** FFI C call handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_ccall.h b/subprojects/luajit/src/lj_ccall.h
similarity index 98%
rename from vendor/luajit/src/lj_ccall.h
rename to subprojects/luajit/src/lj_ccall.h
index f55301093..9089e6c7e 100644
--- a/vendor/luajit/src/lj_ccall.h
+++ b/subprojects/luajit/src/lj_ccall.h
@@ -1,6 +1,6 @@
/*
** FFI C call handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CCALL_H
diff --git a/vendor/luajit/src/lj_ccallback.c b/subprojects/luajit/src/lj_ccallback.c
similarity index 99%
rename from vendor/luajit/src/lj_ccallback.c
rename to subprojects/luajit/src/lj_ccallback.c
index b210641f9..06a740190 100644
--- a/vendor/luajit/src/lj_ccallback.c
+++ b/subprojects/luajit/src/lj_ccallback.c
@@ -1,6 +1,6 @@
/*
** FFI C callback handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_ccallback.h b/subprojects/luajit/src/lj_ccallback.h
similarity index 89%
rename from vendor/luajit/src/lj_ccallback.h
rename to subprojects/luajit/src/lj_ccallback.h
index 83dbe048b..a8cdad386 100644
--- a/vendor/luajit/src/lj_ccallback.h
+++ b/subprojects/luajit/src/lj_ccallback.h
@@ -1,6 +1,6 @@
/*
** FFI C callback handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CCALLBACK_H
diff --git a/vendor/luajit/src/lj_cconv.c b/subprojects/luajit/src/lj_cconv.c
similarity index 99%
rename from vendor/luajit/src/lj_cconv.c
rename to subprojects/luajit/src/lj_cconv.c
index 8a270766f..ab398adcd 100644
--- a/vendor/luajit/src/lj_cconv.c
+++ b/subprojects/luajit/src/lj_cconv.c
@@ -1,6 +1,6 @@
/*
** C type conversions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_cconv.h b/subprojects/luajit/src/lj_cconv.h
similarity index 96%
rename from vendor/luajit/src/lj_cconv.h
rename to subprojects/luajit/src/lj_cconv.h
index 2bd50ff46..0a0b66c90 100644
--- a/vendor/luajit/src/lj_cconv.h
+++ b/subprojects/luajit/src/lj_cconv.h
@@ -1,6 +1,6 @@
/*
** C type conversions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CCONV_H
diff --git a/vendor/luajit/src/lj_cdata.c b/subprojects/luajit/src/lj_cdata.c
similarity index 99%
rename from vendor/luajit/src/lj_cdata.c
rename to subprojects/luajit/src/lj_cdata.c
index 39fc13a9f..49b1aa502 100644
--- a/vendor/luajit/src/lj_cdata.c
+++ b/subprojects/luajit/src/lj_cdata.c
@@ -1,6 +1,6 @@
/*
** C data management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_cdata.h b/subprojects/luajit/src/lj_cdata.h
similarity index 96%
rename from vendor/luajit/src/lj_cdata.h
rename to subprojects/luajit/src/lj_cdata.h
index 3a1275e6c..4bb65db2a 100644
--- a/vendor/luajit/src/lj_cdata.h
+++ b/subprojects/luajit/src/lj_cdata.h
@@ -1,6 +1,6 @@
/*
** C data management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CDATA_H
diff --git a/vendor/luajit/src/lj_char.c b/subprojects/luajit/src/lj_char.c
similarity index 100%
rename from vendor/luajit/src/lj_char.c
rename to subprojects/luajit/src/lj_char.c
diff --git a/vendor/luajit/src/lj_char.h b/subprojects/luajit/src/lj_char.h
similarity index 100%
rename from vendor/luajit/src/lj_char.h
rename to subprojects/luajit/src/lj_char.h
diff --git a/vendor/luajit/src/lj_clib.c b/subprojects/luajit/src/lj_clib.c
similarity index 98%
rename from vendor/luajit/src/lj_clib.c
rename to subprojects/luajit/src/lj_clib.c
index d35260909..8dc3c10e3 100644
--- a/vendor/luajit/src/lj_clib.c
+++ b/subprojects/luajit/src/lj_clib.c
@@ -1,6 +1,6 @@
/*
** FFI C library loader.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
@@ -39,7 +39,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
#define clib_error(L, fmt, name) clib_error_(L)
-#if defined(__CYGWIN__)
+#if LJ_TARGET_CYGWIN
#define CLIB_SOPREFIX "cyg"
#else
#define CLIB_SOPREFIX "lib"
@@ -47,7 +47,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
#if LJ_TARGET_OSX
#define CLIB_SOEXT "%s.dylib"
-#elif defined(__CYGWIN__)
+#elif LJ_TARGET_CYGWIN
#define CLIB_SOEXT "%s.dll"
#else
#define CLIB_SOEXT "%s.so"
@@ -56,14 +56,14 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
static const char *clib_extname(lua_State *L, const char *name)
{
if (!strchr(name, '/')
-#ifdef __CYGWIN__
+#if LJ_TARGET_CYGWIN
&& !strchr(name, '\\')
#endif
) {
if (!strchr(name, '.')) {
name = lj_str_pushf(L, CLIB_SOEXT, name);
L->top--;
-#ifdef __CYGWIN__
+#if LJ_TARGET_CYGWIN
} else {
return name;
#endif
diff --git a/vendor/luajit/src/lj_clib.h b/subprojects/luajit/src/lj_clib.h
similarity index 91%
rename from vendor/luajit/src/lj_clib.h
rename to subprojects/luajit/src/lj_clib.h
index e5dc98e1c..fcc9dac59 100644
--- a/vendor/luajit/src/lj_clib.h
+++ b/subprojects/luajit/src/lj_clib.h
@@ -1,6 +1,6 @@
/*
** FFI C library loader.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CLIB_H
diff --git a/vendor/luajit/src/lj_cparse.c b/subprojects/luajit/src/lj_cparse.c
similarity index 98%
rename from vendor/luajit/src/lj_cparse.c
rename to subprojects/luajit/src/lj_cparse.c
index b9df88d77..2ba50a722 100644
--- a/vendor/luajit/src/lj_cparse.c
+++ b/subprojects/luajit/src/lj_cparse.c
@@ -1,6 +1,6 @@
/*
** C declaration parser.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
@@ -310,13 +310,17 @@ static CPToken cp_next_(CPState *cp)
else return '/';
break;
case '|':
- if (cp_get(cp) != '|') return '|'; cp_get(cp); return CTOK_OROR;
+ if (cp_get(cp) != '|') return '|';
+ cp_get(cp); return CTOK_OROR;
case '&':
- if (cp_get(cp) != '&') return '&'; cp_get(cp); return CTOK_ANDAND;
+ if (cp_get(cp) != '&') return '&';
+ cp_get(cp); return CTOK_ANDAND;
case '=':
- if (cp_get(cp) != '=') return '='; cp_get(cp); return CTOK_EQ;
+ if (cp_get(cp) != '=') return '=';
+ cp_get(cp); return CTOK_EQ;
case '!':
- if (cp_get(cp) != '=') return '!'; cp_get(cp); return CTOK_NE;
+ if (cp_get(cp) != '=') return '!';
+ cp_get(cp); return CTOK_NE;
case '<':
if (cp_get(cp) == '=') { cp_get(cp); return CTOK_LE; }
else if (cp->c == '<') { cp_get(cp); return CTOK_SHL; }
@@ -326,7 +330,8 @@ static CPToken cp_next_(CPState *cp)
else if (cp->c == '>') { cp_get(cp); return CTOK_SHR; }
return '>';
case '-':
- if (cp_get(cp) != '>') return '-'; cp_get(cp); return CTOK_DEREF;
+ if (cp_get(cp) != '>') return '-';
+ cp_get(cp); return CTOK_DEREF;
case '$':
return cp_param(cp);
case '\0': return CTOK_EOF;
@@ -798,6 +803,10 @@ static void cp_push_type(CPDecl *decl, CTypeID id)
cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */
break;
case CT_ARRAY:
+ if ((ct->info & (CTF_VECTOR|CTF_COMPLEX))) {
+ info |= (decl->attr & CTF_QUAL);
+ decl->attr &= ~CTF_QUAL;
+ }
cp_push_type(decl, ctype_cid(info)); /* Unroll. */
cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */
decl->stack[decl->pos].sib = 1; /* Mark as already checked and sized. */
diff --git a/vendor/luajit/src/lj_cparse.h b/subprojects/luajit/src/lj_cparse.h
similarity index 97%
rename from vendor/luajit/src/lj_cparse.h
rename to subprojects/luajit/src/lj_cparse.h
index 441580de6..bad1060bb 100644
--- a/vendor/luajit/src/lj_cparse.h
+++ b/subprojects/luajit/src/lj_cparse.h
@@ -1,6 +1,6 @@
/*
** C declaration parser.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CPARSE_H
diff --git a/vendor/luajit/src/lj_crecord.c b/subprojects/luajit/src/lj_crecord.c
similarity index 99%
rename from vendor/luajit/src/lj_crecord.c
rename to subprojects/luajit/src/lj_crecord.c
index a46665e9a..84fc49ee1 100644
--- a/vendor/luajit/src/lj_crecord.c
+++ b/subprojects/luajit/src/lj_crecord.c
@@ -1,6 +1,6 @@
/*
** Trace recorder for C data operations.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_ffrecord_c
@@ -1205,7 +1205,7 @@ void LJ_FASTCALL recff_cdata_call(jit_State *J, RecordFFData *rd)
static TRef crec_arith_int64(jit_State *J, TRef *sp, CType **s, MMS mm)
{
- if (ctype_isnum(s[0]->info) && ctype_isnum(s[1]->info)) {
+ if (sp[0] && sp[1] && ctype_isnum(s[0]->info) && ctype_isnum(s[1]->info)) {
IRType dt;
CTypeID id;
TRef tr;
@@ -1263,6 +1263,7 @@ static TRef crec_arith_ptr(jit_State *J, TRef *sp, CType **s, MMS mm)
{
CTState *cts = ctype_ctsG(J2G(J));
CType *ctp = s[0];
+ if (!(sp[0] && sp[1])) return 0;
if (ctype_isptr(ctp->info) || ctype_isrefarray(ctp->info)) {
if ((mm == MM_sub || mm == MM_eq || mm == MM_lt || mm == MM_le) &&
(ctype_isptr(s[1]->info) || ctype_isrefarray(s[1]->info))) {
diff --git a/vendor/luajit/src/lj_crecord.h b/subprojects/luajit/src/lj_crecord.h
similarity index 95%
rename from vendor/luajit/src/lj_crecord.h
rename to subprojects/luajit/src/lj_crecord.h
index a4628caca..8e0afd18c 100644
--- a/vendor/luajit/src/lj_crecord.h
+++ b/subprojects/luajit/src/lj_crecord.h
@@ -1,6 +1,6 @@
/*
** Trace recorder for C data operations.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CRECORD_H
diff --git a/vendor/luajit/src/lj_ctype.c b/subprojects/luajit/src/lj_ctype.c
similarity index 99%
rename from vendor/luajit/src/lj_ctype.c
rename to subprojects/luajit/src/lj_ctype.c
index ac3017494..9417500cb 100644
--- a/vendor/luajit/src/lj_ctype.c
+++ b/subprojects/luajit/src/lj_ctype.c
@@ -1,6 +1,6 @@
/*
** C type management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include "lj_obj.h"
diff --git a/vendor/luajit/src/lj_ctype.h b/subprojects/luajit/src/lj_ctype.h
similarity index 96%
rename from vendor/luajit/src/lj_ctype.h
rename to subprojects/luajit/src/lj_ctype.h
index 3df26f095..2aefd3b6e 100644
--- a/vendor/luajit/src/lj_ctype.h
+++ b/subprojects/luajit/src/lj_ctype.h
@@ -1,6 +1,6 @@
/*
** C type management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_CTYPE_H
@@ -42,18 +42,18 @@ LJ_STATIC_ASSERT(((int)CT_STRUCT & (int)CT_ARRAY) == CT_STRUCT);
** ---------- info ------------
** |type flags... A cid | size | sib | next | name |
** +----------------------------+--------+-------+-------+-------+--
-** |NUM BFvcUL.. A | size | | type | |
-** |STRUCT ..vcU..V A | size | field | name? | name? |
-** |PTR ..vcR... A cid | size | | type | |
-** |ARRAY VCvc...V A cid | size | | type | |
-** |VOID ..vc.... A | size | | type | |
+** |NUM BFcvUL.. A | size | | type | |
+** |STRUCT ..cvU..V A | size | field | name? | name? |
+** |PTR ..cvR... A cid | size | | type | |
+** |ARRAY VCcv...V A cid | size | | type | |
+** |VOID ..cv.... A | size | | type | |
** |ENUM A cid | size | const | name? | name? |
** |FUNC ....VS.. cc cid | nargs | field | name? | name? |
** |TYPEDEF cid | | | name | name |
** |ATTRIB attrnum cid | attr | sib? | type? | |
** |FIELD cid | offset | field | | name? |
-** |BITFIELD B.vcU csz bsz pos | offset | field | | name? |
-** |CONSTVAL c cid | value | const | name | name |
+** |BITFIELD B.cvU csz bsz pos | offset | field | | name? |
+** |CONSTVAL c cid | value | const | name | name |
** |EXTERN cid | | sib? | name | name |
** |KW tok | size | | name | name |
** +----------------------------+--------+-------+-------+-------+--
diff --git a/vendor/luajit/src/lj_debug.c b/subprojects/luajit/src/lj_debug.c
similarity index 99%
rename from vendor/luajit/src/lj_debug.c
rename to subprojects/luajit/src/lj_debug.c
index bd2fa1f56..a684302c1 100644
--- a/vendor/luajit/src/lj_debug.c
+++ b/subprojects/luajit/src/lj_debug.c
@@ -1,6 +1,6 @@
/*
** Debugging and introspection.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_debug_c
diff --git a/vendor/luajit/src/lj_debug.h b/subprojects/luajit/src/lj_debug.h
similarity index 96%
rename from vendor/luajit/src/lj_debug.h
rename to subprojects/luajit/src/lj_debug.h
index fa8988c3e..d10d0da2c 100644
--- a/vendor/luajit/src/lj_debug.h
+++ b/subprojects/luajit/src/lj_debug.h
@@ -1,6 +1,6 @@
/*
** Debugging and introspection.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_DEBUG_H
diff --git a/vendor/luajit/src/lj_def.h b/subprojects/luajit/src/lj_def.h
similarity index 99%
rename from vendor/luajit/src/lj_def.h
rename to subprojects/luajit/src/lj_def.h
index e666c9e30..21cc59a4f 100644
--- a/vendor/luajit/src/lj_def.h
+++ b/subprojects/luajit/src/lj_def.h
@@ -1,6 +1,6 @@
/*
** LuaJIT common internal definitions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_DEF_H
diff --git a/vendor/luajit/src/lj_dispatch.c b/subprojects/luajit/src/lj_dispatch.c
similarity index 99%
rename from vendor/luajit/src/lj_dispatch.c
rename to subprojects/luajit/src/lj_dispatch.c
index 37256576e..627379a2a 100644
--- a/vendor/luajit/src/lj_dispatch.c
+++ b/subprojects/luajit/src/lj_dispatch.c
@@ -1,6 +1,6 @@
/*
** Instruction dispatch handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_dispatch_c
diff --git a/vendor/luajit/src/lj_dispatch.h b/subprojects/luajit/src/lj_dispatch.h
similarity index 98%
rename from vendor/luajit/src/lj_dispatch.h
rename to subprojects/luajit/src/lj_dispatch.h
index 778affc8c..e46a0eee7 100644
--- a/vendor/luajit/src/lj_dispatch.h
+++ b/subprojects/luajit/src/lj_dispatch.h
@@ -1,6 +1,6 @@
/*
** Instruction dispatch handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_DISPATCH_H
diff --git a/vendor/luajit/src/lj_emit_arm.h b/subprojects/luajit/src/lj_emit_arm.h
similarity index 99%
rename from vendor/luajit/src/lj_emit_arm.h
rename to subprojects/luajit/src/lj_emit_arm.h
index 8c5e5379c..285c98de0 100644
--- a/vendor/luajit/src/lj_emit_arm.h
+++ b/subprojects/luajit/src/lj_emit_arm.h
@@ -1,6 +1,6 @@
/*
** ARM instruction emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Constant encoding --------------------------------------------------- */
@@ -273,7 +273,7 @@ static void emit_call(ASMState *as, void *target)
ptrdiff_t delta = ((char *)target - (char *)p) - 8;
if ((((delta>>2) + 0x00800000) >> 24) == 0) {
if ((delta & 1))
- *p = ARMI_BLX | ((uint32_t)(delta>>2) & 0x00ffffffu) | ((delta&2) << 27);
+ *p = ARMI_BLX | ((uint32_t)(delta>>2) & 0x00ffffffu) | ((delta&2) << 23);
else
*p = ARMI_BL | ((uint32_t)(delta>>2) & 0x00ffffffu);
} else { /* Target out of range: need indirect call. But don't use R0-R3. */
diff --git a/vendor/luajit/src/lj_emit_mips.h b/subprojects/luajit/src/lj_emit_mips.h
similarity index 98%
rename from vendor/luajit/src/lj_emit_mips.h
rename to subprojects/luajit/src/lj_emit_mips.h
index 0fc07d910..ed62608a4 100644
--- a/vendor/luajit/src/lj_emit_mips.h
+++ b/subprojects/luajit/src/lj_emit_mips.h
@@ -1,6 +1,6 @@
/*
** MIPS instruction emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Emit basic instructions --------------------------------------------- */
diff --git a/vendor/luajit/src/lj_emit_ppc.h b/subprojects/luajit/src/lj_emit_ppc.h
similarity index 99%
rename from vendor/luajit/src/lj_emit_ppc.h
rename to subprojects/luajit/src/lj_emit_ppc.h
index 14edf00fd..14099302c 100644
--- a/vendor/luajit/src/lj_emit_ppc.h
+++ b/subprojects/luajit/src/lj_emit_ppc.h
@@ -1,6 +1,6 @@
/*
** PPC instruction emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Emit basic instructions --------------------------------------------- */
diff --git a/vendor/luajit/src/lj_emit_x86.h b/subprojects/luajit/src/lj_emit_x86.h
similarity index 99%
rename from vendor/luajit/src/lj_emit_x86.h
rename to subprojects/luajit/src/lj_emit_x86.h
index 3a2f6510b..bcceb93e7 100644
--- a/vendor/luajit/src/lj_emit_x86.h
+++ b/subprojects/luajit/src/lj_emit_x86.h
@@ -1,6 +1,6 @@
/*
** x86/x64 instruction emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* -- Emit basic instructions --------------------------------------------- */
diff --git a/vendor/luajit/src/lj_err.c b/subprojects/luajit/src/lj_err.c
similarity index 98%
rename from vendor/luajit/src/lj_err.c
rename to subprojects/luajit/src/lj_err.c
index 081bfde4a..54f42c374 100644
--- a/vendor/luajit/src/lj_err.c
+++ b/subprojects/luajit/src/lj_err.c
@@ -1,6 +1,6 @@
/*
** Error handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_err_c
@@ -57,10 +57,10 @@
** EXT cannot be enabled on WIN32 since system exceptions use code-driven SEH.
** EXT is mandatory on WIN64 since the calling convention has an abundance
** of callee-saved registers (rbx, rbp, rsi, rdi, r12-r15, xmm6-xmm15).
-** EXT is mandatory on POSIX/x64 since the interpreter doesn't save r12/r13.
+** The POSIX/x64 interpreter only saves r12/r13 for INT (e.g. PS4).
*/
-#if defined(__GNUC__) && (LJ_TARGET_X64 || defined(LUAJIT_UNWIND_EXTERNAL))
+#if defined(__GNUC__) && (LJ_TARGET_X64 || defined(LUAJIT_UNWIND_EXTERNAL)) && !LJ_NO_UNWIND
#define LJ_UNWIND_EXT 1
#elif LJ_TARGET_X64 && LJ_TARGET_WINDOWS
#define LJ_UNWIND_EXT 1
@@ -186,7 +186,7 @@ static void *err_unwind(lua_State *L, void *stopcf, int errcode)
/* -- External frame unwinding -------------------------------------------- */
-#if defined(__GNUC__) && !LJ_NO_UNWIND && !LJ_TARGET_WINDOWS
+#if defined(__GNUC__) && !LJ_NO_UNWIND && !LJ_ABI_WIN
/*
** We have to use our own definitions instead of the mandatory (!) unwind.h,
@@ -352,7 +352,7 @@ LJ_FUNCA int lj_err_unwind_arm(int state, void *ucb, _Unwind_Context *ctx)
#endif
-#elif LJ_TARGET_X64 && LJ_TARGET_WINDOWS
+#elif LJ_TARGET_X64 && LJ_ABI_WIN
/*
** Someone in Redmond owes me several days of my life. A lot of this is
@@ -417,7 +417,9 @@ LJ_FUNCA EXCEPTION_DISPOSITION lj_err_unwind_win64(EXCEPTION_RECORD *rec,
if (cf2) { /* We catch it, so start unwinding the upper frames. */
if (rec->ExceptionCode == LJ_MSVC_EXCODE ||
rec->ExceptionCode == LJ_GCC_EXCODE) {
+#if LJ_TARGET_WINDOWS
__DestructExceptionObject(rec, 1);
+#endif
setstrV(L, L->top++, lj_err_str(L, LJ_ERR_ERRCPP));
} else if (!LJ_EXCODE_CHECK(rec->ExceptionCode)) {
/* Don't catch access violations etc. */
diff --git a/vendor/luajit/src/lj_err.h b/subprojects/luajit/src/lj_err.h
similarity index 95%
rename from vendor/luajit/src/lj_err.h
rename to subprojects/luajit/src/lj_err.h
index 03a56f036..cba5fb714 100644
--- a/vendor/luajit/src/lj_err.h
+++ b/subprojects/luajit/src/lj_err.h
@@ -1,6 +1,6 @@
/*
** Error handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_ERR_H
diff --git a/vendor/luajit/src/lj_errmsg.h b/subprojects/luajit/src/lj_errmsg.h
similarity index 99%
rename from vendor/luajit/src/lj_errmsg.h
rename to subprojects/luajit/src/lj_errmsg.h
index 1c9487607..ac552f40c 100644
--- a/vendor/luajit/src/lj_errmsg.h
+++ b/subprojects/luajit/src/lj_errmsg.h
@@ -1,6 +1,6 @@
/*
** VM error messages.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* This file may be included multiple times with different ERRDEF macros. */
diff --git a/vendor/luajit/src/lj_ff.h b/subprojects/luajit/src/lj_ff.h
similarity index 82%
rename from vendor/luajit/src/lj_ff.h
rename to subprojects/luajit/src/lj_ff.h
index 73dad9695..31d65a00d 100644
--- a/vendor/luajit/src/lj_ff.h
+++ b/subprojects/luajit/src/lj_ff.h
@@ -1,6 +1,6 @@
/*
** Fast function IDs.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_FF_H
diff --git a/vendor/luajit/src/lj_ffrecord.c b/subprojects/luajit/src/lj_ffrecord.c
similarity index 98%
rename from vendor/luajit/src/lj_ffrecord.c
rename to subprojects/luajit/src/lj_ffrecord.c
index 69f71ab2e..da09dca5f 100644
--- a/vendor/luajit/src/lj_ffrecord.c
+++ b/subprojects/luajit/src/lj_ffrecord.c
@@ -1,6 +1,6 @@
/*
** Fast function call recorder.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_ffrecord_c
@@ -366,11 +366,12 @@ static void LJ_FASTCALL recff_ipairs_aux(jit_State *J, RecordFFData *rd)
static void LJ_FASTCALL recff_ipairs(jit_State *J, RecordFFData *rd)
{
- if (!(LJ_52 && recff_metacall(J, rd, MM_ipairs))) {
- TRef tab = J->base[0];
- if (tref_istab(tab)) {
+ TRef tr = J->base[0];
+ if (!((LJ_52 || (LJ_HASFFI && tref_iscdata(tr))) &&
+ recff_metacall(J, rd, MM_ipairs))) {
+ if (tref_istab(tr)) {
J->base[0] = lj_ir_kfunc(J, funcV(&J->fn->c.upvalue[0]));
- J->base[1] = tab;
+ J->base[1] = tr;
J->base[2] = lj_ir_kint(J, 0);
rd->nres = 3;
} /* else: Interpreter will throw. */
@@ -538,10 +539,8 @@ static void LJ_FASTCALL recff_math_degrad(jit_State *J, RecordFFData *rd)
static void LJ_FASTCALL recff_math_pow(jit_State *J, RecordFFData *rd)
{
- TRef tr = lj_ir_tonum(J, J->base[0]);
- if (!tref_isnumber_str(J->base[1]))
- lj_trace_err(J, LJ_TRERR_BADTYPE);
- J->base[0] = lj_opt_narrow_pow(J, tr, J->base[1], &rd->argv[1]);
+ J->base[0] = lj_opt_narrow_pow(J, J->base[0], J->base[1],
+ &rd->argv[0], &rd->argv[1]);
UNUSED(rd);
}
diff --git a/vendor/luajit/src/lj_ffrecord.h b/subprojects/luajit/src/lj_ffrecord.h
similarity index 89%
rename from vendor/luajit/src/lj_ffrecord.h
rename to subprojects/luajit/src/lj_ffrecord.h
index f858ca29c..3b407450d 100644
--- a/vendor/luajit/src/lj_ffrecord.h
+++ b/subprojects/luajit/src/lj_ffrecord.h
@@ -1,6 +1,6 @@
/*
** Fast function call recorder.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_FFRECORD_H
diff --git a/vendor/luajit/src/lj_frame.h b/subprojects/luajit/src/lj_frame.h
similarity index 97%
rename from vendor/luajit/src/lj_frame.h
rename to subprojects/luajit/src/lj_frame.h
index cd57be223..eb5df3079 100644
--- a/vendor/luajit/src/lj_frame.h
+++ b/subprojects/luajit/src/lj_frame.h
@@ -1,6 +1,6 @@
/*
** Stack frames.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_FRAME_H
@@ -86,7 +86,11 @@ enum {
#define CFRAME_OFS_ERRF (5*4)
#define CFRAME_OFS_NRES (4*4)
#define CFRAME_OFS_MULTRES (1*4)
+#if LJ_NO_UNWIND
+#define CFRAME_SIZE (12*8)
+#else
#define CFRAME_SIZE (10*8)
+#endif
#define CFRAME_SIZE_JIT (CFRAME_SIZE + 16)
#define CFRAME_SHIFT_MULTRES 0
#endif
diff --git a/vendor/luajit/src/lj_func.c b/subprojects/luajit/src/lj_func.c
similarity index 96%
rename from vendor/luajit/src/lj_func.c
rename to subprojects/luajit/src/lj_func.c
index eb8a9dbbf..639dad876 100644
--- a/vendor/luajit/src/lj_func.c
+++ b/subprojects/luajit/src/lj_func.c
@@ -1,6 +1,6 @@
/*
** Function handling (prototypes, functions and upvalues).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
@@ -140,7 +140,9 @@ GCfunc *lj_func_newL_empty(lua_State *L, GCproto *pt, GCtab *env)
/* NOBARRIER: The GCfunc is new (marked white). */
for (i = 0; i < nuv; i++) {
GCupval *uv = func_emptyuv(L);
- uv->dhash = (uint32_t)(uintptr_t)pt ^ ((uint32_t)proto_uv(pt)[i] << 24);
+ int32_t v = proto_uv(pt)[i];
+ uv->immutable = ((v / PROTO_UV_IMMUTABLE) & 1);
+ uv->dhash = (uint32_t)(uintptr_t)pt ^ (v << 24);
setgcref(fn->l.uvptr[i], obj2gco(uv));
}
fn->l.nupvalues = (uint8_t)nuv;
diff --git a/vendor/luajit/src/lj_func.h b/subprojects/luajit/src/lj_func.h
similarity index 91%
rename from vendor/luajit/src/lj_func.h
rename to subprojects/luajit/src/lj_func.h
index a6e534e77..901751b98 100644
--- a/vendor/luajit/src/lj_func.h
+++ b/subprojects/luajit/src/lj_func.h
@@ -1,6 +1,6 @@
/*
** Function handling (prototypes, functions and upvalues).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_FUNC_H
diff --git a/vendor/luajit/src/lj_gc.c b/subprojects/luajit/src/lj_gc.c
similarity index 98%
rename from vendor/luajit/src/lj_gc.c
rename to subprojects/luajit/src/lj_gc.c
index b498abaa8..a5d32ea35 100644
--- a/vendor/luajit/src/lj_gc.c
+++ b/subprojects/luajit/src/lj_gc.c
@@ -1,6 +1,6 @@
/*
** Garbage collector.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
@@ -168,12 +168,19 @@ static int gc_traverse_tab(global_State *g, GCtab *t)
while ((c = *modestr++)) {
if (c == 'k') weak |= LJ_GC_WEAKKEY;
else if (c == 'v') weak |= LJ_GC_WEAKVAL;
- else if (c == 'K') weak = (int)(~0u & ~LJ_GC_WEAKVAL);
}
- if (weak > 0) { /* Weak tables are cleared in the atomic phase. */
- t->marked = (uint8_t)((t->marked & ~LJ_GC_WEAK) | weak);
- setgcrefr(t->gclist, g->gc.weak);
- setgcref(g->gc.weak, obj2gco(t));
+ if (weak) { /* Weak tables are cleared in the atomic phase. */
+#if LJ_HASFFI
+ CTState *cts = ctype_ctsG(g);
+ if (cts && cts->finalizer == t) {
+ weak = (int)(~0u & ~LJ_GC_WEAKVAL);
+ } else
+#endif
+ {
+ t->marked = (uint8_t)((t->marked & ~LJ_GC_WEAK) | weak);
+ setgcrefr(t->gclist, g->gc.weak);
+ setgcref(g->gc.weak, obj2gco(t));
+ }
}
}
if (weak == LJ_GC_WEAK) /* Nothing to mark if both keys/values are weak. */
@@ -307,7 +314,7 @@ static size_t propagatemark(global_State *g)
if (gc_traverse_tab(g, t) > 0)
black2gray(o); /* Keep weak tables gray. */
return sizeof(GCtab) + sizeof(TValue) * t->asize +
- sizeof(Node) * (t->hmask + 1);
+ (t->hmask ? sizeof(Node) * (t->hmask + 1) : 0);
} else if (LJ_LIKELY(gct == ~LJ_TFUNC)) {
GCfunc *fn = gco2func(o);
gc_traverse_func(g, fn);
diff --git a/vendor/luajit/src/lj_gc.h b/subprojects/luajit/src/lj_gc.h
similarity index 98%
rename from vendor/luajit/src/lj_gc.h
rename to subprojects/luajit/src/lj_gc.h
index ba061bc5d..57ac7147b 100644
--- a/vendor/luajit/src/lj_gc.h
+++ b/subprojects/luajit/src/lj_gc.h
@@ -1,6 +1,6 @@
/*
** Garbage collector.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_GC_H
diff --git a/vendor/luajit/src/lj_gdbjit.c b/subprojects/luajit/src/lj_gdbjit.c
similarity index 99%
rename from vendor/luajit/src/lj_gdbjit.c
rename to subprojects/luajit/src/lj_gdbjit.c
index d3f3e6119..eeb017bb8 100644
--- a/vendor/luajit/src/lj_gdbjit.c
+++ b/subprojects/luajit/src/lj_gdbjit.c
@@ -1,6 +1,6 @@
/*
** Client for the GDB JIT API.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_gdbjit_c
diff --git a/vendor/luajit/src/lj_gdbjit.h b/subprojects/luajit/src/lj_gdbjit.h
similarity index 86%
rename from vendor/luajit/src/lj_gdbjit.h
rename to subprojects/luajit/src/lj_gdbjit.h
index 49c586301..bbaa1568c 100644
--- a/vendor/luajit/src/lj_gdbjit.h
+++ b/subprojects/luajit/src/lj_gdbjit.h
@@ -1,6 +1,6 @@
/*
** Client for the GDB JIT API.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_GDBJIT_H
diff --git a/vendor/luajit/src/lj_ir.c b/subprojects/luajit/src/lj_ir.c
similarity index 99%
rename from vendor/luajit/src/lj_ir.c
rename to subprojects/luajit/src/lj_ir.c
index 439f3fc34..1e4860df6 100644
--- a/vendor/luajit/src/lj_ir.c
+++ b/subprojects/luajit/src/lj_ir.c
@@ -1,6 +1,6 @@
/*
** SSA IR (Intermediate Representation) emitter.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_ir_c
diff --git a/vendor/luajit/src/lj_ir.h b/subprojects/luajit/src/lj_ir.h
similarity index 99%
rename from vendor/luajit/src/lj_ir.h
rename to subprojects/luajit/src/lj_ir.h
index 8126482e8..ded3e0eb6 100644
--- a/vendor/luajit/src/lj_ir.h
+++ b/subprojects/luajit/src/lj_ir.h
@@ -1,6 +1,6 @@
/*
** SSA IR (Intermediate Representation) format.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_IR_H
diff --git a/vendor/luajit/src/lj_ircall.h b/subprojects/luajit/src/lj_ircall.h
similarity index 97%
rename from vendor/luajit/src/lj_ircall.h
rename to subprojects/luajit/src/lj_ircall.h
index 893dac2f8..44afde3ae 100644
--- a/vendor/luajit/src/lj_ircall.h
+++ b/subprojects/luajit/src/lj_ircall.h
@@ -1,6 +1,6 @@
/*
** IR CALL* instruction definitions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_IRCALL_H
@@ -86,12 +86,6 @@ typedef struct CCallInfo {
#define IRCALLCOND_FFI32(x) NULL
#endif
-#if LJ_TARGET_X86
-#define CCI_RANDFPR 0 /* Clang on OSX/x86 is overzealous. */
-#else
-#define CCI_RANDFPR CCI_NOFPRCLOBBER
-#endif
-
#if LJ_SOFTFP
#define ARG1_FP 2 /* Treat as 2 32 bit arguments. */
#else
@@ -118,7 +112,7 @@ typedef struct CCallInfo {
_(ANY, lj_gc_step_jit, 2, FS, NIL, CCI_L) \
_(ANY, lj_gc_barrieruv, 2, FS, NIL, 0) \
_(ANY, lj_mem_newgco, 2, FS, P32, CCI_L) \
- _(ANY, lj_math_random_step, 1, FS, NUM, CCI_CASTU64|CCI_RANDFPR)\
+ _(ANY, lj_math_random_step, 1, FS, NUM, CCI_CASTU64) \
_(ANY, lj_vm_modi, 2, FN, INT, 0) \
_(ANY, sinh, ARG1_FP, N, NUM, 0) \
_(ANY, cosh, ARG1_FP, N, NUM, 0) \
diff --git a/vendor/luajit/src/lj_iropt.h b/subprojects/luajit/src/lj_iropt.h
similarity index 98%
rename from vendor/luajit/src/lj_iropt.h
rename to subprojects/luajit/src/lj_iropt.h
index 4e424e700..b5081e069 100644
--- a/vendor/luajit/src/lj_iropt.h
+++ b/subprojects/luajit/src/lj_iropt.h
@@ -1,6 +1,6 @@
/*
** Common header for IR emitter and optimizations.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_IROPT_H
@@ -142,8 +142,8 @@ LJ_FUNC TRef LJ_FASTCALL lj_opt_narrow_cindex(jit_State *J, TRef key);
LJ_FUNC TRef lj_opt_narrow_arith(jit_State *J, TRef rb, TRef rc,
TValue *vb, TValue *vc, IROp op);
LJ_FUNC TRef lj_opt_narrow_unm(jit_State *J, TRef rc, TValue *vc);
-LJ_FUNC TRef lj_opt_narrow_mod(jit_State *J, TRef rb, TRef rc, TValue *vc);
-LJ_FUNC TRef lj_opt_narrow_pow(jit_State *J, TRef rb, TRef rc, TValue *vc);
+LJ_FUNC TRef lj_opt_narrow_mod(jit_State *J, TRef rb, TRef rc, TValue *vb, TValue *vc);
+LJ_FUNC TRef lj_opt_narrow_pow(jit_State *J, TRef rb, TRef rc, TValue *vb, TValue *vc);
LJ_FUNC IRType lj_opt_narrow_forl(jit_State *J, cTValue *forbase);
/* Optimization passes. */
diff --git a/vendor/luajit/src/lj_jit.h b/subprojects/luajit/src/lj_jit.h
similarity index 99%
rename from vendor/luajit/src/lj_jit.h
rename to subprojects/luajit/src/lj_jit.h
index eb7654770..a2e8fd922 100644
--- a/vendor/luajit/src/lj_jit.h
+++ b/subprojects/luajit/src/lj_jit.h
@@ -1,6 +1,6 @@
/*
** Common definitions for the JIT compiler.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_JIT_H
diff --git a/vendor/luajit/src/lj_lex.c b/subprojects/luajit/src/lj_lex.c
similarity index 99%
rename from vendor/luajit/src/lj_lex.c
rename to subprojects/luajit/src/lj_lex.c
index e1dc3cdfd..366031680 100644
--- a/vendor/luajit/src/lj_lex.c
+++ b/subprojects/luajit/src/lj_lex.c
@@ -1,6 +1,6 @@
/*
** Lexical analyzer.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_lex.h b/subprojects/luajit/src/lj_lex.h
similarity index 97%
rename from vendor/luajit/src/lj_lex.h
rename to subprojects/luajit/src/lj_lex.h
index fe0176864..41c03f934 100644
--- a/vendor/luajit/src/lj_lex.h
+++ b/subprojects/luajit/src/lj_lex.h
@@ -1,6 +1,6 @@
/*
** Lexical analyzer.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_LEX_H
diff --git a/vendor/luajit/src/lj_lib.c b/subprojects/luajit/src/lj_lib.c
similarity index 98%
rename from vendor/luajit/src/lj_lib.c
rename to subprojects/luajit/src/lj_lib.c
index 856685ee3..a1bb6a2a9 100644
--- a/vendor/luajit/src/lj_lib.c
+++ b/subprojects/luajit/src/lj_lib.c
@@ -1,6 +1,6 @@
/*
** Library function support.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_lib_c
diff --git a/vendor/luajit/src/lj_lib.h b/subprojects/luajit/src/lj_lib.h
similarity index 98%
rename from vendor/luajit/src/lj_lib.h
rename to subprojects/luajit/src/lj_lib.h
index 9320f34fd..aa8740766 100644
--- a/vendor/luajit/src/lj_lib.h
+++ b/subprojects/luajit/src/lj_lib.h
@@ -1,6 +1,6 @@
/*
** Library function support.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_LIB_H
diff --git a/vendor/luajit/src/lj_load.c b/subprojects/luajit/src/lj_load.c
similarity index 98%
rename from vendor/luajit/src/lj_load.c
rename to subprojects/luajit/src/lj_load.c
index ff7b85117..20be8ebe3 100644
--- a/vendor/luajit/src/lj_load.c
+++ b/subprojects/luajit/src/lj_load.c
@@ -1,6 +1,6 @@
/*
** Load and dump code.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include
diff --git a/vendor/luajit/src/lj_mcode.c b/subprojects/luajit/src/lj_mcode.c
similarity index 95%
rename from vendor/luajit/src/lj_mcode.c
rename to subprojects/luajit/src/lj_mcode.c
index d95ebeb1f..f0a1f6996 100644
--- a/vendor/luajit/src/lj_mcode.c
+++ b/subprojects/luajit/src/lj_mcode.c
@@ -1,6 +1,6 @@
/*
** Machine code management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_mcode_c
@@ -204,8 +204,8 @@ static void mcode_protect(jit_State *J, int prot)
/* -- MCode area allocation ----------------------------------------------- */
-#if LJ_TARGET_X64
-#define mcode_validptr(p) ((p) && (uintptr_t)(p) < (uintptr_t)1<<47)
+#if LJ_64
+#define mcode_validptr(p) (p)
#else
#define mcode_validptr(p) ((p) && (uintptr_t)(p) < 0xffff0000)
#endif
@@ -230,7 +230,8 @@ static void *mcode_alloc(jit_State *J, size_t sz)
/* First try a contiguous area below the last one. */
uintptr_t hint = J->mcarea ? (uintptr_t)J->mcarea - sz : 0;
int i;
- for (i = 0; i < 32; i++) { /* 32 attempts ought to be enough ... */
+ /* Limit probing iterations, depending on the available pool size. */
+ for (i = 0; i < LJ_TARGET_JUMPRANGE; i++) {
if (mcode_validptr(hint)) {
void *p = mcode_alloc_at(J, hint, sz, MCPROT_GEN);
@@ -239,11 +240,11 @@ static void *mcode_alloc(jit_State *J, size_t sz)
return p;
if (p) mcode_free(J, p, sz); /* Free badly placed area. */
}
- /* Next try probing pseudo-random addresses. */
+ /* Next try probing 64K-aligned pseudo-random addresses. */
do {
- hint = (0x78fb ^ LJ_PRNG_BITS(J, 15)) << 16; /* 64K aligned. */
- } while (!(hint + sz < range));
- hint = target + hint - (range>>1);
+ hint = LJ_PRNG_BITS(J, LJ_TARGET_JUMPRANGE-16) << 16;
+ } while (!(hint + sz < range+range));
+ hint = target + hint - range;
}
lj_trace_err(J, LJ_TRERR_MCODEAL); /* Give up. OS probably ignores hints? */
return NULL;
diff --git a/vendor/luajit/src/lj_mcode.h b/subprojects/luajit/src/lj_mcode.h
similarity index 90%
rename from vendor/luajit/src/lj_mcode.h
rename to subprojects/luajit/src/lj_mcode.h
index ee6045234..f0847e931 100644
--- a/vendor/luajit/src/lj_mcode.h
+++ b/subprojects/luajit/src/lj_mcode.h
@@ -1,6 +1,6 @@
/*
** Machine code management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_MCODE_H
diff --git a/vendor/luajit/src/lj_meta.c b/subprojects/luajit/src/lj_meta.c
similarity index 99%
rename from vendor/luajit/src/lj_meta.c
rename to subprojects/luajit/src/lj_meta.c
index faaaf7026..10e349842 100644
--- a/vendor/luajit/src/lj_meta.c
+++ b/subprojects/luajit/src/lj_meta.c
@@ -1,6 +1,6 @@
/*
** Metamethod handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_meta.h b/subprojects/luajit/src/lj_meta.h
similarity index 95%
rename from vendor/luajit/src/lj_meta.h
rename to subprojects/luajit/src/lj_meta.h
index 2c1ad0dd9..e061d99eb 100644
--- a/vendor/luajit/src/lj_meta.h
+++ b/subprojects/luajit/src/lj_meta.h
@@ -1,6 +1,6 @@
/*
** Metamethod handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_META_H
diff --git a/vendor/luajit/src/lj_obj.c b/subprojects/luajit/src/lj_obj.c
similarity index 93%
rename from vendor/luajit/src/lj_obj.c
rename to subprojects/luajit/src/lj_obj.c
index 7fab714e5..4779d26df 100644
--- a/vendor/luajit/src/lj_obj.c
+++ b/subprojects/luajit/src/lj_obj.c
@@ -1,6 +1,6 @@
/*
** Miscellaneous object handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_obj_c
diff --git a/vendor/luajit/src/lj_obj.h b/subprojects/luajit/src/lj_obj.h
similarity index 99%
rename from vendor/luajit/src/lj_obj.h
rename to subprojects/luajit/src/lj_obj.h
index 6e8381cba..e70b00322 100644
--- a/vendor/luajit/src/lj_obj.h
+++ b/subprojects/luajit/src/lj_obj.h
@@ -1,6 +1,6 @@
/*
** LuaJIT VM tags, values and objects.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_opt_dce.c b/subprojects/luajit/src/lj_opt_dce.c
similarity index 96%
rename from vendor/luajit/src/lj_opt_dce.c
rename to subprojects/luajit/src/lj_opt_dce.c
index 7f1faafe6..2417f3242 100644
--- a/vendor/luajit/src/lj_opt_dce.c
+++ b/subprojects/luajit/src/lj_opt_dce.c
@@ -1,6 +1,6 @@
/*
** DCE: Dead Code Elimination. Pre-LOOP only -- ASM already performs DCE.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_dce_c
diff --git a/vendor/luajit/src/lj_opt_fold.c b/subprojects/luajit/src/lj_opt_fold.c
similarity index 99%
rename from vendor/luajit/src/lj_opt_fold.c
rename to subprojects/luajit/src/lj_opt_fold.c
index d00fdd56f..3d0e35a6f 100644
--- a/vendor/luajit/src/lj_opt_fold.c
+++ b/subprojects/luajit/src/lj_opt_fold.c
@@ -2,7 +2,7 @@
** FOLD: Constant Folding, Algebraic Simplifications and Reassociation.
** ABCelim: Array Bounds Check Elimination.
** CSE: Common-Subexpression Elimination.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_fold_c
@@ -444,14 +444,14 @@ LJFOLDF(kfold_int64comp)
#if LJ_HASFFI
uint64_t a = ir_k64(fleft)->u64, b = ir_k64(fright)->u64;
switch ((IROp)fins->o) {
- case IR_LT: return CONDFOLD(a < b);
- case IR_GE: return CONDFOLD(a >= b);
- case IR_LE: return CONDFOLD(a <= b);
- case IR_GT: return CONDFOLD(a > b);
- case IR_ULT: return CONDFOLD((uint64_t)a < (uint64_t)b);
- case IR_UGE: return CONDFOLD((uint64_t)a >= (uint64_t)b);
- case IR_ULE: return CONDFOLD((uint64_t)a <= (uint64_t)b);
- case IR_UGT: return CONDFOLD((uint64_t)a > (uint64_t)b);
+ case IR_LT: return CONDFOLD((int64_t)a < (int64_t)b);
+ case IR_GE: return CONDFOLD((int64_t)a >= (int64_t)b);
+ case IR_LE: return CONDFOLD((int64_t)a <= (int64_t)b);
+ case IR_GT: return CONDFOLD((int64_t)a > (int64_t)b);
+ case IR_ULT: return CONDFOLD(a < b);
+ case IR_UGE: return CONDFOLD(a >= b);
+ case IR_ULE: return CONDFOLD(a <= b);
+ case IR_UGT: return CONDFOLD(a > b);
default: lua_assert(0); return FAILFOLD;
}
#else
diff --git a/vendor/luajit/src/lj_opt_loop.c b/subprojects/luajit/src/lj_opt_loop.c
similarity index 99%
rename from vendor/luajit/src/lj_opt_loop.c
rename to subprojects/luajit/src/lj_opt_loop.c
index b7d1923ed..36317b346 100644
--- a/vendor/luajit/src/lj_opt_loop.c
+++ b/subprojects/luajit/src/lj_opt_loop.c
@@ -1,6 +1,6 @@
/*
** LOOP: Loop Optimizations.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_loop_c
diff --git a/vendor/luajit/src/lj_opt_mem.c b/subprojects/luajit/src/lj_opt_mem.c
similarity index 99%
rename from vendor/luajit/src/lj_opt_mem.c
rename to subprojects/luajit/src/lj_opt_mem.c
index a4d96fc0f..9f7140562 100644
--- a/vendor/luajit/src/lj_opt_mem.c
+++ b/subprojects/luajit/src/lj_opt_mem.c
@@ -3,7 +3,7 @@
** AA: Alias Analysis using high-level semantic disambiguation.
** FWD: Load Forwarding (L2L) + Store Forwarding (S2L).
** DSE: Dead-Store Elimination.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_mem_c
diff --git a/vendor/luajit/src/lj_opt_narrow.c b/subprojects/luajit/src/lj_opt_narrow.c
similarity index 95%
rename from vendor/luajit/src/lj_opt_narrow.c
rename to subprojects/luajit/src/lj_opt_narrow.c
index 58b3763db..73365953b 100644
--- a/vendor/luajit/src/lj_opt_narrow.c
+++ b/subprojects/luajit/src/lj_opt_narrow.c
@@ -1,7 +1,7 @@
/*
** NARROW: Narrowing of numbers to integers (double to int32_t).
** STRIPOV: Stripping of overflow checks.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_narrow_c
@@ -205,7 +205,6 @@ typedef struct NarrowConv {
jit_State *J; /* JIT compiler state. */
NarrowIns *sp; /* Current stack pointer. */
NarrowIns *maxsp; /* Maximum stack pointer minus redzone. */
- int lim; /* Limit on the number of emitted conversions. */
IRRef mode; /* Conversion mode (IRCONV_*). */
IRType t; /* Destination type: IRT_INT or IRT_I64. */
NarrowIns stack[NARROW_MAX_STACK]; /* Stack holding stack-machine code. */
@@ -342,7 +341,7 @@ static int narrow_conv_backprop(NarrowConv *nc, IRRef ref, int depth)
NarrowIns *savesp = nc->sp;
int count = narrow_conv_backprop(nc, ir->op1, depth);
count += narrow_conv_backprop(nc, ir->op2, depth);
- if (count <= nc->lim) { /* Limit total number of conversions. */
+ if (count <= 1) { /* Limit total number of conversions. */
*nc->sp++ = NARROWINS(IRT(ir->o, nc->t), ref);
return count;
}
@@ -414,12 +413,10 @@ TRef LJ_FASTCALL lj_opt_narrow_convert(jit_State *J)
nc.t = irt_type(fins->t);
if (fins->o == IR_TOBIT) {
nc.mode = IRCONV_TOBIT; /* Used only in the backpropagation cache. */
- nc.lim = 2; /* TOBIT can use a more optimistic rule. */
} else {
nc.mode = fins->op2;
- nc.lim = 1;
}
- if (narrow_conv_backprop(&nc, fins->op1, 0) <= nc.lim)
+ if (narrow_conv_backprop(&nc, fins->op1, 0) <= 1)
return narrow_conv_emit(J, &nc);
}
return NEXTFOLD;
@@ -504,8 +501,7 @@ TRef LJ_FASTCALL lj_opt_narrow_cindex(jit_State *J, TRef tr)
{
lua_assert(tref_isnumber(tr));
if (tref_isnum(tr))
- return emitir(IRT(IR_CONV, IRT_INTP), tr,
- (IRT_INTP<<5)|IRT_NUM|IRCONV_TRUNC|IRCONV_ANY);
+ return emitir(IRT(IR_CONV, IRT_INTP), tr, (IRT_INTP<<5)|IRT_NUM|IRCONV_ANY);
/* Undefined overflow semantics allow stripping of ADDOV, SUBOV and MULOV. */
return narrow_stripov(J, tr, IR_MULOV,
LJ_64 ? ((IRT_INTP<<5)|IRT_INT|IRCONV_SEXT) :
@@ -521,18 +517,24 @@ static int numisint(lua_Number n)
return (n == (lua_Number)lj_num2int(n));
}
+/* Convert string to number. Error out for non-numeric string values. */
+static TRef conv_str_tonum(jit_State *J, TRef tr, TValue *o)
+{
+ if (tref_isstr(tr)) {
+ tr = emitir(IRTG(IR_STRTO, IRT_NUM), tr, 0);
+ /* Would need an inverted STRTO for this rare and useless case. */
+ if (!lj_strscan_num(strV(o), o)) /* Convert in-place. Value used below. */
+ lj_trace_err(J, LJ_TRERR_BADTYPE); /* Punt if non-numeric. */
+ }
+ return tr;
+}
+
/* Narrowing of arithmetic operations. */
TRef lj_opt_narrow_arith(jit_State *J, TRef rb, TRef rc,
TValue *vb, TValue *vc, IROp op)
{
- if (tref_isstr(rb)) {
- rb = emitir(IRTG(IR_STRTO, IRT_NUM), rb, 0);
- lj_strscan_num(strV(vb), vb);
- }
- if (tref_isstr(rc)) {
- rc = emitir(IRTG(IR_STRTO, IRT_NUM), rc, 0);
- lj_strscan_num(strV(vc), vc);
- }
+ rb = conv_str_tonum(J, rb, vb);
+ rc = conv_str_tonum(J, rc, vc);
/* Must not narrow MUL in non-DUALNUM variant, because it loses -0. */
if ((op >= IR_ADD && op <= (LJ_DUALNUM ? IR_MUL : IR_SUB)) &&
tref_isinteger(rb) && tref_isinteger(rc) &&
@@ -547,10 +549,7 @@ TRef lj_opt_narrow_arith(jit_State *J, TRef rb, TRef rc,
/* Narrowing of unary minus operator. */
TRef lj_opt_narrow_unm(jit_State *J, TRef rc, TValue *vc)
{
- if (tref_isstr(rc)) {
- rc = emitir(IRTG(IR_STRTO, IRT_NUM), rc, 0);
- lj_strscan_num(strV(vc), vc);
- }
+ rc = conv_str_tonum(J, rc, vc);
if (tref_isinteger(rc)) {
if ((uint32_t)numberVint(vc) != 0x80000000u)
return emitir(IRTGI(IR_SUBOV), lj_ir_kint(J, 0), rc);
@@ -560,11 +559,11 @@ TRef lj_opt_narrow_unm(jit_State *J, TRef rc, TValue *vc)
}
/* Narrowing of modulo operator. */
-TRef lj_opt_narrow_mod(jit_State *J, TRef rb, TRef rc, TValue *vc)
+TRef lj_opt_narrow_mod(jit_State *J, TRef rb, TRef rc, TValue *vb, TValue *vc)
{
TRef tmp;
- if (tvisstr(vc) && !lj_strscan_num(strV(vc), vc))
- lj_trace_err(J, LJ_TRERR_BADTYPE);
+ rb = conv_str_tonum(J, rb, vb);
+ rc = conv_str_tonum(J, rc, vc);
if ((LJ_DUALNUM || (J->flags & JIT_F_OPT_NARROW)) &&
tref_isinteger(rb) && tref_isinteger(rc) &&
(tvisint(vc) ? intV(vc) != 0 : !tviszero(vc))) {
@@ -581,10 +580,11 @@ TRef lj_opt_narrow_mod(jit_State *J, TRef rb, TRef rc, TValue *vc)
}
/* Narrowing of power operator or math.pow. */
-TRef lj_opt_narrow_pow(jit_State *J, TRef rb, TRef rc, TValue *vc)
+TRef lj_opt_narrow_pow(jit_State *J, TRef rb, TRef rc, TValue *vb, TValue *vc)
{
- if (tvisstr(vc) && !lj_strscan_num(strV(vc), vc))
- lj_trace_err(J, LJ_TRERR_BADTYPE);
+ rb = conv_str_tonum(J, rb, vb);
+ rb = lj_ir_tonum(J, rb); /* Left arg is always treated as an FP number. */
+ rc = conv_str_tonum(J, rc, vc);
/* Narrowing must be unconditional to preserve (-x)^i semantics. */
if (tvisint(vc) || numisint(numV(vc))) {
int checkrange = 0;
@@ -595,8 +595,6 @@ TRef lj_opt_narrow_pow(jit_State *J, TRef rb, TRef rc, TValue *vc)
checkrange = 1;
}
if (!tref_isinteger(rc)) {
- if (tref_isstr(rc))
- rc = emitir(IRTG(IR_STRTO, IRT_NUM), rc, 0);
/* Guarded conversion to integer! */
rc = emitir(IRTGI(IR_CONV), rc, IRCONV_INT_NUM|IRCONV_CHECK);
}
diff --git a/vendor/luajit/src/lj_opt_sink.c b/subprojects/luajit/src/lj_opt_sink.c
similarity index 97%
rename from vendor/luajit/src/lj_opt_sink.c
rename to subprojects/luajit/src/lj_opt_sink.c
index a98e9dfe3..6a00d04c8 100644
--- a/vendor/luajit/src/lj_opt_sink.c
+++ b/subprojects/luajit/src/lj_opt_sink.c
@@ -1,6 +1,6 @@
/*
** SINK: Allocation Sinking and Store Sinking.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_sink_c
@@ -153,10 +153,9 @@ static void sink_remark_phi(jit_State *J)
remark = 0;
for (ir = IR(J->cur.nins-1); ir->o == IR_PHI; ir--) {
IRIns *irl = IR(ir->op1), *irr = IR(ir->op2);
- if (((irl->t.irt ^ irr->t.irt) & IRT_MARK))
- remark = 1;
- else if (irl->prev == irr->prev)
+ if (!((irl->t.irt ^ irr->t.irt) & IRT_MARK) && irl->prev == irr->prev)
continue;
+ remark |= (~(irl->t.irt & irr->t.irt) & IRT_MARK);
irt_setmark(IR(ir->op1)->t);
irt_setmark(IR(ir->op2)->t);
}
diff --git a/vendor/luajit/src/lj_opt_split.c b/subprojects/luajit/src/lj_opt_split.c
similarity index 99%
rename from vendor/luajit/src/lj_opt_split.c
rename to subprojects/luajit/src/lj_opt_split.c
index 1cee5093b..8d7cd4c25 100644
--- a/vendor/luajit/src/lj_opt_split.c
+++ b/subprojects/luajit/src/lj_opt_split.c
@@ -1,6 +1,6 @@
/*
** SPLIT: Split 64 bit IR instructions into 32 bit IR instructions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_opt_split_c
@@ -471,7 +471,8 @@ static void split_ir(jit_State *J)
}
#endif
else if (st == IRT_I64 || st == IRT_U64) { /* 64/64 bit cast. */
- /* Drop cast, since assembler doesn't care. */
+ /* Drop cast, since assembler doesn't care. But fwd both parts. */
+ hi = hiref;
goto fwdlo;
} else if ((ir->op2 & IRCONV_SEXT)) { /* Sign-extend to 64 bit. */
IRRef k31 = lj_ir_kint(J, 31);
diff --git a/vendor/luajit/src/lj_parse.c b/subprojects/luajit/src/lj_parse.c
similarity index 99%
rename from vendor/luajit/src/lj_parse.c
rename to subprojects/luajit/src/lj_parse.c
index abfac3c0c..9e5976f71 100644
--- a/vendor/luajit/src/lj_parse.c
+++ b/subprojects/luajit/src/lj_parse.c
@@ -1,6 +1,6 @@
/*
** Lua parser (source code -> bytecode).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
@@ -1280,12 +1280,14 @@ static void fscope_end(FuncState *fs)
MSize idx = gola_new(ls, NAME_BREAK, VSTACK_LABEL, fs->pc);
ls->vtop = idx; /* Drop break label immediately. */
gola_resolve(ls, bl, idx);
+ } else { /* Need the fixup step to propagate the breaks. */
+ gola_fixup(ls, bl);
return;
- } /* else: need the fixup step to propagate the breaks. */
- } else if (!(bl->flags & FSCOPE_GOLA)) {
- return;
+ }
+ }
+ if ((bl->flags & FSCOPE_GOLA)) {
+ gola_fixup(ls, bl);
}
- gola_fixup(ls, bl);
}
/* Mark scope as having an upvalue. */
@@ -2207,6 +2209,8 @@ static void assign_adjust(LexState *ls, BCReg nvars, BCReg nexps, ExpDesc *e)
bcemit_nil(fs, reg, (BCReg)extra);
}
}
+ if (nexps > nvars)
+ ls->fs->freereg -= nexps - nvars; /* Drop leftover regs. */
}
/* Recursively parse assignment statement. */
@@ -2240,8 +2244,6 @@ static void parse_assignment(LexState *ls, LHSVarList *lh, BCReg nvars)
return;
}
assign_adjust(ls, nvars, nexps, &e);
- if (nexps > nvars)
- ls->fs->freereg -= nexps - nvars; /* Drop leftover regs. */
}
/* Assign RHS to LHS and recurse downwards. */
expr_init(&e, VNONRELOC, ls->fs->freereg-1);
diff --git a/vendor/luajit/src/lj_parse.h b/subprojects/luajit/src/lj_parse.h
similarity index 84%
rename from vendor/luajit/src/lj_parse.h
rename to subprojects/luajit/src/lj_parse.h
index dc4fd405d..ceeab6994 100644
--- a/vendor/luajit/src/lj_parse.h
+++ b/subprojects/luajit/src/lj_parse.h
@@ -1,6 +1,6 @@
/*
** Lua parser (source code -> bytecode).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_PARSE_H
diff --git a/vendor/luajit/src/lj_record.c b/subprojects/luajit/src/lj_record.c
similarity index 99%
rename from vendor/luajit/src/lj_record.c
rename to subprojects/luajit/src/lj_record.c
index 843108c85..7b5727648 100644
--- a/vendor/luajit/src/lj_record.c
+++ b/subprojects/luajit/src/lj_record.c
@@ -1,6 +1,6 @@
/*
** Trace recorder (bytecode -> SSA IR).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_record_c
@@ -687,7 +687,7 @@ void lj_record_ret(jit_State *J, BCReg rbase, ptrdiff_t gotresults)
(void)getslot(J, rbase+i); /* Ensure all results have a reference. */
while (frame_ispcall(frame)) { /* Immediately resolve pcall() returns. */
BCReg cbase = (BCReg)frame_delta(frame);
- if (--J->framedepth < 0)
+ if (--J->framedepth <= 0)
lj_trace_err(J, LJ_TRERR_NYIRETL);
lua_assert(J->baseslot > 1);
gotresults++;
@@ -1343,13 +1343,17 @@ noconstify:
/* Note: this effectively limits LJ_MAX_UPVAL to 127. */
uv = (uv << 8) | (hashrot(uvp->dhash, uvp->dhash + HASH_BIAS) & 0xff);
if (!uvp->closed) {
+ uref = tref_ref(emitir(IRTG(IR_UREFO, IRT_P32), fn, uv));
/* In current stack? */
if (uvval(uvp) >= tvref(J->L->stack) &&
uvval(uvp) < tvref(J->L->maxstack)) {
int32_t slot = (int32_t)(uvval(uvp) - (J->L->base - J->baseslot));
if (slot >= 0) { /* Aliases an SSA slot? */
+ emitir(IRTG(IR_EQ, IRT_P32),
+ REF_BASE,
+ emitir(IRT(IR_ADD, IRT_P32), uref,
+ lj_ir_kint(J, (slot - 1) * -8)));
slot -= (int32_t)J->baseslot; /* Note: slot number may be negative! */
- /* NYI: add IR to guard that it's still aliasing the same slot. */
if (val == 0) {
return getslot(J, slot);
} else {
@@ -1359,7 +1363,9 @@ noconstify:
}
}
}
- uref = tref_ref(emitir(IRTG(IR_UREFO, IRT_P32), fn, uv));
+ emitir(IRTG(IR_UGT, IRT_P32),
+ emitir(IRT(IR_SUB, IRT_P32), uref, REF_BASE),
+ lj_ir_kint(J, (J->baseslot + J->maxslot) * 8));
} else {
needbarrier = 1;
uref = tref_ref(emitir(IRTG(IR_UREFC, IRT_P32), fn, uv));
@@ -1490,8 +1496,11 @@ static int select_detect(jit_State *J)
BCIns ins = J->pc[1];
if (bc_op(ins) == BC_CALLM && bc_b(ins) == 2 && bc_c(ins) == 1) {
cTValue *func = &J->L->base[bc_a(ins)];
- if (tvisfunc(func) && funcV(func)->c.ffid == FF_select)
+ if (tvisfunc(func) && funcV(func)->c.ffid == FF_select) {
+ TRef kfunc = lj_ir_kfunc(J, funcV(func));
+ emitir(IRTG(IR_EQ, IRT_FUNC), getslot(J, bc_a(ins)), kfunc);
return 1;
+ }
}
return 0;
}
@@ -1881,14 +1890,14 @@ void lj_record_ins(jit_State *J)
case BC_MODVN: case BC_MODVV:
recmod:
if (tref_isnumber_str(rb) && tref_isnumber_str(rc))
- rc = lj_opt_narrow_mod(J, rb, rc, rcv);
+ rc = lj_opt_narrow_mod(J, rb, rc, rbv, rcv);
else
rc = rec_mm_arith(J, &ix, MM_mod);
break;
case BC_POW:
if (tref_isnumber_str(rb) && tref_isnumber_str(rc))
- rc = lj_opt_narrow_pow(J, lj_ir_tonum(J, rb), rc, rcv);
+ rc = lj_opt_narrow_pow(J, rb, rc, rbv, rcv);
else
rc = rec_mm_arith(J, &ix, MM_pow);
break;
diff --git a/vendor/luajit/src/lj_record.h b/subprojects/luajit/src/lj_record.h
similarity index 95%
rename from vendor/luajit/src/lj_record.h
rename to subprojects/luajit/src/lj_record.h
index c9f4882a9..2bbbde5be 100644
--- a/vendor/luajit/src/lj_record.h
+++ b/subprojects/luajit/src/lj_record.h
@@ -1,6 +1,6 @@
/*
** Trace recorder (bytecode -> SSA IR).
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_RECORD_H
diff --git a/vendor/luajit/src/lj_snap.c b/subprojects/luajit/src/lj_snap.c
similarity index 97%
rename from vendor/luajit/src/lj_snap.c
rename to subprojects/luajit/src/lj_snap.c
index 5c870bafd..e891f7a9b 100644
--- a/vendor/luajit/src/lj_snap.c
+++ b/subprojects/luajit/src/lj_snap.c
@@ -1,6 +1,6 @@
/*
** Snapshot handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_snap_c
@@ -26,9 +26,6 @@
#include "lj_cdata.h"
#endif
-/* Some local macros to save typing. Undef'd at the end. */
-#define IR(ref) (&J->cur.ir[(ref)])
-
/* Pass IR on to next optimization in chain (FOLD). */
#define emitir(ot, a, b) (lj_ir_set(J, (ot), (a), (b)), lj_opt_fold(J))
@@ -73,7 +70,7 @@ static MSize snapshot_slots(jit_State *J, SnapEntry *map, BCReg nslots)
IRRef ref = tref_ref(tr);
if (ref) {
SnapEntry sn = SNAP_TR(s, tr);
- IRIns *ir = IR(ref);
+ IRIns *ir = &J->cur.ir[ref];
if (!(sn & (SNAP_CONT|SNAP_FRAME)) &&
ir->o == IR_SLOAD && ir->op1 == s && ref > retf) {
/* No need to snapshot unmodified non-inherited slots. */
@@ -404,24 +401,24 @@ static TRef snap_pref(jit_State *J, GCtrace *T, SnapEntry *map, MSize nmax,
}
/* Check whether a sunk store corresponds to an allocation. Slow path. */
-static int snap_sunk_store2(jit_State *J, IRIns *ira, IRIns *irs)
+static int snap_sunk_store2(GCtrace *T, IRIns *ira, IRIns *irs)
{
if (irs->o == IR_ASTORE || irs->o == IR_HSTORE ||
irs->o == IR_FSTORE || irs->o == IR_XSTORE) {
- IRIns *irk = IR(irs->op1);
+ IRIns *irk = &T->ir[irs->op1];
if (irk->o == IR_AREF || irk->o == IR_HREFK)
- irk = IR(irk->op1);
- return (IR(irk->op1) == ira);
+ irk = &T->ir[irk->op1];
+ return (&T->ir[irk->op1] == ira);
}
return 0;
}
/* Check whether a sunk store corresponds to an allocation. Fast path. */
-static LJ_AINLINE int snap_sunk_store(jit_State *J, IRIns *ira, IRIns *irs)
+static LJ_AINLINE int snap_sunk_store(GCtrace *T, IRIns *ira, IRIns *irs)
{
if (irs->s != 255)
return (ira + irs->s == irs); /* Fast check. */
- return snap_sunk_store2(J, ira, irs);
+ return snap_sunk_store2(T, ira, irs);
}
/* Replay snapshot state to setup side trace. */
@@ -484,7 +481,7 @@ void lj_snap_replay(jit_State *J, GCtrace *T)
} else {
IRIns *irs;
for (irs = ir+1; irs < irlast; irs++)
- if (irs->r == RID_SINK && snap_sunk_store(J, ir, irs)) {
+ if (irs->r == RID_SINK && snap_sunk_store(T, ir, irs)) {
if (snap_pref(J, T, map, nent, seen, irs->op2) == 0)
snap_pref(J, T, map, nent, seen, T->ir[irs->op2].op1);
else if ((LJ_SOFTFP || (LJ_32 && LJ_HASFFI)) &&
@@ -518,13 +515,13 @@ void lj_snap_replay(jit_State *J, GCtrace *T)
op2 = emitir_raw(IRT(IR_HIOP, IRT_I64), op2,
snap_pref(J, T, map, nent, seen, (ir+1)->op2));
}
- J->slot[snap_slot(sn)] = emitir(ir->ot, op1, op2);
+ J->slot[snap_slot(sn)] = emitir(ir->ot & ~(IRT_MARK|IRT_ISPHI), op1, op2);
} else {
IRIns *irs;
TRef tr = emitir(ir->ot, op1, op2);
J->slot[snap_slot(sn)] = tr;
for (irs = ir+1; irs < irlast; irs++)
- if (irs->r == RID_SINK && snap_sunk_store(J, ir, irs)) {
+ if (irs->r == RID_SINK && snap_sunk_store(T, ir, irs)) {
IRIns *irr = &T->ir[irs->op1];
TRef val, key = irr->op2, tmp = tr;
if (irr->o != IR_FREF) {
@@ -726,7 +723,7 @@ static void snap_unsink(jit_State *J, GCtrace *T, ExitState *ex,
} else {
IRIns *irs, *irlast = &T->ir[T->snap[snapno].ref];
for (irs = ir+1; irs < irlast; irs++)
- if (irs->r == RID_SINK && snap_sunk_store(J, ir, irs)) {
+ if (irs->r == RID_SINK && snap_sunk_store(T, ir, irs)) {
IRIns *iro = &T->ir[T->ir[irs->op1].op2];
uint8_t *p = (uint8_t *)cd;
CTSize szs;
@@ -759,7 +756,7 @@ static void snap_unsink(jit_State *J, GCtrace *T, ExitState *ex,
settabV(J->L, o, t);
irlast = &T->ir[T->snap[snapno].ref];
for (irs = ir+1; irs < irlast; irs++)
- if (irs->r == RID_SINK && snap_sunk_store(J, ir, irs)) {
+ if (irs->r == RID_SINK && snap_sunk_store(T, ir, irs)) {
IRIns *irk = &T->ir[irs->op1];
TValue tmp, *val;
lua_assert(irs->o == IR_ASTORE || irs->o == IR_HSTORE ||
@@ -859,7 +856,6 @@ const BCIns *lj_snap_restore(jit_State *J, void *exptr)
return pc;
}
-#undef IR
#undef emitir_raw
#undef emitir
diff --git a/vendor/luajit/src/lj_snap.h b/subprojects/luajit/src/lj_snap.h
similarity index 93%
rename from vendor/luajit/src/lj_snap.h
rename to subprojects/luajit/src/lj_snap.h
index 9a125be7f..2c9ae3d64 100644
--- a/vendor/luajit/src/lj_snap.h
+++ b/subprojects/luajit/src/lj_snap.h
@@ -1,6 +1,6 @@
/*
** Snapshot handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_SNAP_H
diff --git a/vendor/luajit/src/lj_state.c b/subprojects/luajit/src/lj_state.c
similarity index 99%
rename from vendor/luajit/src/lj_state.c
rename to subprojects/luajit/src/lj_state.c
index e654afaeb..f89135198 100644
--- a/vendor/luajit/src/lj_state.c
+++ b/subprojects/luajit/src/lj_state.c
@@ -1,6 +1,6 @@
/*
** State and stack handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_state.h b/subprojects/luajit/src/lj_state.h
similarity index 93%
rename from vendor/luajit/src/lj_state.h
rename to subprojects/luajit/src/lj_state.h
index 687889a26..d5b476b2f 100644
--- a/vendor/luajit/src/lj_state.h
+++ b/subprojects/luajit/src/lj_state.h
@@ -1,6 +1,6 @@
/*
** State and stack handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_STATE_H
diff --git a/vendor/luajit/src/lj_str.c b/subprojects/luajit/src/lj_str.c
similarity index 99%
rename from vendor/luajit/src/lj_str.c
rename to subprojects/luajit/src/lj_str.c
index ca60bccb7..aae6ec5b5 100644
--- a/vendor/luajit/src/lj_str.c
+++ b/subprojects/luajit/src/lj_str.c
@@ -1,6 +1,6 @@
/*
** String handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_str.h b/subprojects/luajit/src/lj_str.h
similarity index 96%
rename from vendor/luajit/src/lj_str.h
rename to subprojects/luajit/src/lj_str.h
index 99697051d..be04a975d 100644
--- a/vendor/luajit/src/lj_str.h
+++ b/subprojects/luajit/src/lj_str.h
@@ -1,6 +1,6 @@
/*
** String handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_STR_H
diff --git a/vendor/luajit/src/lj_strscan.c b/subprojects/luajit/src/lj_strscan.c
similarity index 99%
rename from vendor/luajit/src/lj_strscan.c
rename to subprojects/luajit/src/lj_strscan.c
index 568f647d6..f1e34a3df 100644
--- a/vendor/luajit/src/lj_strscan.c
+++ b/subprojects/luajit/src/lj_strscan.c
@@ -1,6 +1,6 @@
/*
** String scanning.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include
diff --git a/vendor/luajit/src/lj_strscan.h b/subprojects/luajit/src/lj_strscan.h
similarity index 94%
rename from vendor/luajit/src/lj_strscan.h
rename to subprojects/luajit/src/lj_strscan.h
index 776068936..6fb0dda08 100644
--- a/vendor/luajit/src/lj_strscan.h
+++ b/subprojects/luajit/src/lj_strscan.h
@@ -1,6 +1,6 @@
/*
** String scanning.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_STRSCAN_H
diff --git a/vendor/luajit/src/lj_tab.c b/subprojects/luajit/src/lj_tab.c
similarity index 99%
rename from vendor/luajit/src/lj_tab.c
rename to subprojects/luajit/src/lj_tab.c
index a8062db7c..50f447e88 100644
--- a/vendor/luajit/src/lj_tab.c
+++ b/subprojects/luajit/src/lj_tab.c
@@ -1,6 +1,6 @@
/*
** Table handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/lj_tab.h b/subprojects/luajit/src/lj_tab.h
similarity index 97%
rename from vendor/luajit/src/lj_tab.h
rename to subprojects/luajit/src/lj_tab.h
index f0d228eb2..36ce7cdd5 100644
--- a/vendor/luajit/src/lj_tab.h
+++ b/subprojects/luajit/src/lj_tab.h
@@ -1,6 +1,6 @@
/*
** Table handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TAB_H
diff --git a/vendor/luajit/src/lj_target.h b/subprojects/luajit/src/lj_target.h
similarity index 98%
rename from vendor/luajit/src/lj_target.h
rename to subprojects/luajit/src/lj_target.h
index 1a242325f..53bfa6bf9 100644
--- a/vendor/luajit/src/lj_target.h
+++ b/subprojects/luajit/src/lj_target.h
@@ -1,6 +1,6 @@
/*
** Definitions for target CPU.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TARGET_H
diff --git a/vendor/luajit/src/lj_target_arm.h b/subprojects/luajit/src/lj_target_arm.h
similarity index 99%
rename from vendor/luajit/src/lj_target_arm.h
rename to subprojects/luajit/src/lj_target_arm.h
index 6d4d0aed0..d02cbf861 100644
--- a/vendor/luajit/src/lj_target_arm.h
+++ b/subprojects/luajit/src/lj_target_arm.h
@@ -1,6 +1,6 @@
/*
** Definitions for ARM CPUs.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TARGET_ARM_H
diff --git a/vendor/luajit/src/lj_target_mips.h b/subprojects/luajit/src/lj_target_mips.h
similarity index 96%
rename from vendor/luajit/src/lj_target_mips.h
rename to subprojects/luajit/src/lj_target_mips.h
index 0ab140bf3..bed174b8e 100644
--- a/vendor/luajit/src/lj_target_mips.h
+++ b/subprojects/luajit/src/lj_target_mips.h
@@ -1,6 +1,6 @@
/*
** Definitions for MIPS CPUs.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TARGET_MIPS_H
@@ -28,6 +28,7 @@ enum {
RID_MAX,
RID_ZERO = RID_R0,
RID_TMP = RID_RA,
+ RID_GP = RID_R28,
/* Calling conventions. */
RID_RET = RID_R2,
@@ -62,10 +63,10 @@ enum {
/* -- Register sets ------------------------------------------------------- */
-/* Make use of all registers, except ZERO, TMP, SP, SYS1, SYS2 and JGL. */
+/* Make use of all registers, except ZERO, TMP, SP, SYS1, SYS2, JGL and GP. */
#define RSET_FIXED \
(RID2RSET(RID_ZERO)|RID2RSET(RID_TMP)|RID2RSET(RID_SP)|\
- RID2RSET(RID_SYS1)|RID2RSET(RID_SYS2)|RID2RSET(RID_JGL))
+ RID2RSET(RID_SYS1)|RID2RSET(RID_SYS2)|RID2RSET(RID_JGL)|RID2RSET(RID_GP))
#define RSET_GPR (RSET_RANGE(RID_MIN_GPR, RID_MAX_GPR) - RSET_FIXED)
#define RSET_FPR \
(RID2RSET(RID_F0)|RID2RSET(RID_F2)|RID2RSET(RID_F4)|RID2RSET(RID_F6)|\
@@ -77,7 +78,7 @@ enum {
#define RSET_SCRATCH_GPR \
(RSET_RANGE(RID_R1, RID_R15+1)|\
- RID2RSET(RID_R24)|RID2RSET(RID_R25)|RID2RSET(RID_R28))
+ RID2RSET(RID_R24)|RID2RSET(RID_R25))
#define RSET_SCRATCH_FPR \
(RID2RSET(RID_F0)|RID2RSET(RID_F2)|RID2RSET(RID_F4)|RID2RSET(RID_F6)|\
RID2RSET(RID_F8)|RID2RSET(RID_F10)|RID2RSET(RID_F12)|RID2RSET(RID_F14)|\
diff --git a/vendor/luajit/src/lj_target_ppc.h b/subprojects/luajit/src/lj_target_ppc.h
similarity index 99%
rename from vendor/luajit/src/lj_target_ppc.h
rename to subprojects/luajit/src/lj_target_ppc.h
index 2caeeb044..e57e27dfd 100644
--- a/vendor/luajit/src/lj_target_ppc.h
+++ b/subprojects/luajit/src/lj_target_ppc.h
@@ -1,6 +1,6 @@
/*
** Definitions for PPC CPUs.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TARGET_PPC_H
diff --git a/vendor/luajit/src/lj_target_x86.h b/subprojects/luajit/src/lj_target_x86.h
similarity index 99%
rename from vendor/luajit/src/lj_target_x86.h
rename to subprojects/luajit/src/lj_target_x86.h
index d12a1b87c..4426cc8ce 100644
--- a/vendor/luajit/src/lj_target_x86.h
+++ b/subprojects/luajit/src/lj_target_x86.h
@@ -1,6 +1,6 @@
/*
** Definitions for x86 and x64 CPUs.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TARGET_X86_H
diff --git a/vendor/luajit/src/lj_trace.c b/subprojects/luajit/src/lj_trace.c
similarity index 98%
rename from vendor/luajit/src/lj_trace.c
rename to subprojects/luajit/src/lj_trace.c
index e51ec5467..6f8dc1a48 100644
--- a/vendor/luajit/src/lj_trace.c
+++ b/subprojects/luajit/src/lj_trace.c
@@ -1,6 +1,6 @@
/*
** Trace management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_trace_c
@@ -117,15 +117,22 @@ static void perftools_addtrace(GCtrace *T)
}
#endif
-/* Save current trace by copying and compacting it. */
-static void trace_save(jit_State *J)
+/* Allocate space for copy of trace. */
+static GCtrace *trace_save_alloc(jit_State *J)
{
size_t sztr = ((sizeof(GCtrace)+7)&~7);
size_t szins = (J->cur.nins-J->cur.nk)*sizeof(IRIns);
size_t sz = sztr + szins +
J->cur.nsnap*sizeof(SnapShot) +
J->cur.nsnapmap*sizeof(SnapEntry);
- GCtrace *T = lj_mem_newt(J->L, (MSize)sz, GCtrace);
+ return lj_mem_newt(J->L, (MSize)sz, GCtrace);
+}
+
+/* Save current trace by copying and compacting it. */
+static void trace_save(jit_State *J, GCtrace *T)
+{
+ size_t sztr = ((sizeof(GCtrace)+7)&~7);
+ size_t szins = (J->cur.nins-J->cur.nk)*sizeof(IRIns);
char *p = (char *)T + sztr;
memcpy(T, &J->cur, sizeof(GCtrace));
setgcrefr(T->nextgc, J2G(J)->gc.root);
@@ -417,6 +424,7 @@ static void trace_stop(jit_State *J)
BCOp op = bc_op(J->cur.startins);
GCproto *pt = &gcref(J->cur.startpt)->pt;
TraceNo traceno = J->cur.traceno;
+ GCtrace *T = trace_save_alloc(J); /* Do this first. May throw OOM. */
lua_State *L;
switch (op) {
@@ -461,7 +469,7 @@ static void trace_stop(jit_State *J)
/* Commit new mcode only after all patching is done. */
lj_mcode_commit(J, J->cur.mcode);
J->postproc = LJ_POST_NONE;
- trace_save(J);
+ trace_save(J, T);
L = J->L;
lj_vmevent_send(L, TRACE,
diff --git a/vendor/luajit/src/lj_trace.h b/subprojects/luajit/src/lj_trace.h
similarity index 95%
rename from vendor/luajit/src/lj_trace.h
rename to subprojects/luajit/src/lj_trace.h
index 4fbe5cf25..edc7af0d2 100644
--- a/vendor/luajit/src/lj_trace.h
+++ b/subprojects/luajit/src/lj_trace.h
@@ -1,6 +1,6 @@
/*
** Trace management.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_TRACE_H
diff --git a/vendor/luajit/src/lj_traceerr.h b/subprojects/luajit/src/lj_traceerr.h
similarity index 95%
rename from vendor/luajit/src/lj_traceerr.h
rename to subprojects/luajit/src/lj_traceerr.h
index 9bef117ab..f920e5edb 100644
--- a/vendor/luajit/src/lj_traceerr.h
+++ b/subprojects/luajit/src/lj_traceerr.h
@@ -1,6 +1,6 @@
/*
** Trace compiler error messages.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/* This file may be included multiple times with different TREDEF macros. */
@@ -23,7 +23,7 @@ TREDEF(BADTYPE, "bad argument type")
TREDEF(CJITOFF, "JIT compilation disabled for function")
TREDEF(CUNROLL, "call unroll limit reached")
TREDEF(DOWNREC, "down-recursion, restarting")
-TREDEF(NYICF, "NYI: C function %p")
+TREDEF(NYICF, "NYI: C function %s")
TREDEF(NYIFF, "NYI: FastFunc %s")
TREDEF(NYIFFU, "NYI: unsupported variant of FastFunc %s")
TREDEF(NYIRETL, "NYI: return to lower frame")
diff --git a/vendor/luajit/src/lj_udata.c b/subprojects/luajit/src/lj_udata.c
similarity index 92%
rename from vendor/luajit/src/lj_udata.c
rename to subprojects/luajit/src/lj_udata.c
index d401a3d8e..bd0321b83 100644
--- a/vendor/luajit/src/lj_udata.c
+++ b/subprojects/luajit/src/lj_udata.c
@@ -1,6 +1,6 @@
/*
** Userdata handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_udata_c
diff --git a/vendor/luajit/src/lj_udata.h b/subprojects/luajit/src/lj_udata.h
similarity index 79%
rename from vendor/luajit/src/lj_udata.h
rename to subprojects/luajit/src/lj_udata.h
index 676e970f4..f271a42d3 100644
--- a/vendor/luajit/src/lj_udata.h
+++ b/subprojects/luajit/src/lj_udata.h
@@ -1,6 +1,6 @@
/*
** Userdata handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_UDATA_H
diff --git a/vendor/luajit/src/lj_vm.h b/subprojects/luajit/src/lj_vm.h
similarity index 98%
rename from vendor/luajit/src/lj_vm.h
rename to subprojects/luajit/src/lj_vm.h
index 036cabc57..3ffa76bf7 100644
--- a/vendor/luajit/src/lj_vm.h
+++ b/subprojects/luajit/src/lj_vm.h
@@ -1,6 +1,6 @@
/*
** Assembler VM interface definitions.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_VM_H
diff --git a/vendor/luajit/src/lj_vmevent.c b/subprojects/luajit/src/lj_vmevent.c
similarity index 95%
rename from vendor/luajit/src/lj_vmevent.c
rename to subprojects/luajit/src/lj_vmevent.c
index 81fe47d4d..7b6d7bf34 100644
--- a/vendor/luajit/src/lj_vmevent.c
+++ b/subprojects/luajit/src/lj_vmevent.c
@@ -1,6 +1,6 @@
/*
** VM event handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#include
diff --git a/vendor/luajit/src/lj_vmevent.h b/subprojects/luajit/src/lj_vmevent.h
similarity index 95%
rename from vendor/luajit/src/lj_vmevent.h
rename to subprojects/luajit/src/lj_vmevent.h
index 231e00ecd..050fb4dd2 100644
--- a/vendor/luajit/src/lj_vmevent.h
+++ b/subprojects/luajit/src/lj_vmevent.h
@@ -1,6 +1,6 @@
/*
** VM event handling.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LJ_VMEVENT_H
diff --git a/vendor/luajit/src/lj_vmmath.c b/subprojects/luajit/src/lj_vmmath.c
similarity index 98%
rename from vendor/luajit/src/lj_vmmath.c
rename to subprojects/luajit/src/lj_vmmath.c
index 31c6029fc..73fc667f6 100644
--- a/vendor/luajit/src/lj_vmmath.c
+++ b/subprojects/luajit/src/lj_vmmath.c
@@ -1,6 +1,6 @@
/*
** Math helper functions for assembler VM.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#define lj_vmmath_c
diff --git a/vendor/luajit/src/ljamalg.c b/subprojects/luajit/src/ljamalg.c
similarity index 97%
rename from vendor/luajit/src/ljamalg.c
rename to subprojects/luajit/src/ljamalg.c
index 9b237b7e9..654fe82f2 100644
--- a/vendor/luajit/src/ljamalg.c
+++ b/subprojects/luajit/src/ljamalg.c
@@ -1,6 +1,6 @@
/*
** LuaJIT core and libraries amalgamation.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
/*
diff --git a/vendor/luajit/src/lua.h b/subprojects/luajit/src/lua.h
similarity index 100%
rename from vendor/luajit/src/lua.h
rename to subprojects/luajit/src/lua.h
diff --git a/vendor/luajit/src/lua.hpp b/subprojects/luajit/src/lua.hpp
similarity index 100%
rename from vendor/luajit/src/lua.hpp
rename to subprojects/luajit/src/lua.hpp
diff --git a/vendor/luajit/src/luaconf.h b/subprojects/luajit/src/luaconf.h
similarity index 97%
rename from vendor/luajit/src/luaconf.h
rename to subprojects/luajit/src/luaconf.h
index 84fa64187..b33e91b77 100644
--- a/vendor/luajit/src/luaconf.h
+++ b/subprojects/luajit/src/luaconf.h
@@ -1,6 +1,6 @@
/*
** Configuration header.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef luaconf_h
@@ -37,7 +37,7 @@
#endif
#define LUA_LROOT "/usr/local"
#define LUA_LUADIR "/lua/5.1/"
-#define LUA_LJDIR "/luajit-2.0.4/"
+#define LUA_LJDIR "/luajit-2.0.5/"
#ifdef LUA_ROOT
#define LUA_JROOT LUA_ROOT
diff --git a/vendor/luajit/src/luajit.c b/subprojects/luajit/src/luajit.c
similarity index 99%
rename from vendor/luajit/src/luajit.c
rename to subprojects/luajit/src/luajit.c
index 85d713fb4..9e15b26d6 100644
--- a/vendor/luajit/src/luajit.c
+++ b/subprojects/luajit/src/luajit.c
@@ -1,6 +1,6 @@
/*
** LuaJIT frontend. Runs commands, scripts, read-eval-print (REPL) etc.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
**
** Major portions taken verbatim or adapted from the Lua interpreter.
** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h
diff --git a/vendor/luajit/src/luajit.h b/subprojects/luajit/src/luajit.h
similarity index 89%
rename from vendor/luajit/src/luajit.h
rename to subprojects/luajit/src/luajit.h
index 9ced18eb8..c5ff3acb4 100644
--- a/vendor/luajit/src/luajit.h
+++ b/subprojects/luajit/src/luajit.h
@@ -1,7 +1,7 @@
/*
** LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/
**
-** Copyright (C) 2005-2015 Mike Pall. All rights reserved.
+** Copyright (C) 2005-2017 Mike Pall. All rights reserved.
**
** Permission is hereby granted, free of charge, to any person obtaining
** a copy of this software and associated documentation files (the
@@ -30,10 +30,10 @@
#include "lua.h"
-#define LUAJIT_VERSION "LuaJIT 2.0.4"
-#define LUAJIT_VERSION_NUM 20004 /* Version 2.0.4 = 02.00.04. */
-#define LUAJIT_VERSION_SYM luaJIT_version_2_0_4
-#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2015 Mike Pall"
+#define LUAJIT_VERSION "LuaJIT 2.0.5"
+#define LUAJIT_VERSION_NUM 20005 /* Version 2.0.5 = 02.00.05. */
+#define LUAJIT_VERSION_SYM luaJIT_version_2_0_5
+#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2017 Mike Pall"
#define LUAJIT_URL "http://luajit.org/"
/* Modes for luaJIT_setmode. */
diff --git a/vendor/luajit/src/lualib.h b/subprojects/luajit/src/lualib.h
similarity index 94%
rename from vendor/luajit/src/lualib.h
rename to subprojects/luajit/src/lualib.h
index 96530e79a..bfc130a1a 100644
--- a/vendor/luajit/src/lualib.h
+++ b/subprojects/luajit/src/lualib.h
@@ -1,6 +1,6 @@
/*
** Standard library header.
-** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
*/
#ifndef _LUALIB_H
diff --git a/subprojects/luajit/src/meson.build b/subprojects/luajit/src/meson.build
new file mode 100644
index 000000000..a2224c393
--- /dev/null
+++ b/subprojects/luajit/src/meson.build
@@ -0,0 +1,95 @@
+ljlib_src = files(
+ 'lib_base.c',
+ 'lib_bit.c',
+ 'lib_debug.c',
+ 'lib_ffi.c',
+ 'lib_io.c',
+ 'lib_jit.c',
+ 'lib_math.c',
+ 'lib_os.c',
+ 'lib_package.c',
+ 'lib_string.c',
+ 'lib_table.c',
+)
+
+ljcore_src = files(
+ 'lib_aux.c',
+ 'lib_init.c',
+ 'lj_alloc.c',
+ 'lj_api.c',
+ 'lj_asm.c',
+ 'lj_bc.c',
+ 'lj_bcread.c',
+ 'lj_bcwrite.c',
+ 'lj_carith.c',
+ 'lj_ccall.c',
+ 'lj_ccallback.c',
+ 'lj_cconv.c',
+ 'lj_cdata.c',
+ 'lj_char.c',
+ 'lj_clib.c',
+ 'lj_cparse.c',
+ 'lj_crecord.c',
+ 'lj_ctype.c',
+ 'lj_debug.c',
+ 'lj_dispatch.c',
+ 'lj_err.c',
+ 'lj_ffrecord.c',
+ 'lj_func.c',
+ 'lj_gc.c',
+ 'lj_gdbjit.c',
+ 'lj_ir.c',
+ 'lj_lex.c',
+ 'lj_lib.c',
+ 'lj_load.c',
+ 'lj_mcode.c',
+ 'lj_meta.c',
+ 'lj_obj.c',
+ 'lj_opt_dce.c',
+ 'lj_opt_fold.c',
+ 'lj_opt_loop.c',
+ 'lj_opt_mem.c',
+ 'lj_opt_narrow.c',
+ 'lj_opt_sink.c',
+ 'lj_opt_split.c',
+ 'lj_parse.c',
+ 'lj_record.c',
+ 'lj_snap.c',
+ 'lj_state.c',
+ 'lj_str.c',
+ 'lj_strscan.c',
+ 'lj_tab.c',
+ 'lj_trace.c',
+ 'lj_udata.c',
+ 'lj_vmevent.c',
+ 'lj_vmmath.c',
+)
+
+src_inc = include_directories('.')
+
+subdir('host')
+
+hdrgen = [
+ 'bcdef',
+ 'ffdef',
+ 'libdef',
+ 'recdef',
+]
+
+genheaders = []
+foreach h: hdrgen
+ genheaders += custom_target(h,
+ command: [buildvm, '-m', h, '-o', '@OUTPUT@', ljlib_src],
+ output: 'lj_@0@.h'.format(h))
+endforeach
+
+genheaders += custom_target('folddef',
+ command: [buildvm, '-m', 'folddef', '-o', '@OUTPUT@', files('lj_opt_fold.c')],
+ output: 'lj_folddef.h')
+
+ljvm = custom_target(ljvm_bout,
+ command: [buildvm, '-m', ljvm_mode, '-o', '@OUTPUT@'],
+ output: ljvm_bout)
+
+luajit_lib = static_library('luajit', ljlib_src, ljcore_src, genheaders, ljvm,
+ dependencies: system_deps)
diff --git a/vendor/luajit/src/vm_arm.dasc b/subprojects/luajit/src/vm_arm.dasc
similarity index 99%
rename from vendor/luajit/src/vm_arm.dasc
rename to subprojects/luajit/src/vm_arm.dasc
index 457efa63c..be5540ce4 100644
--- a/vendor/luajit/src/vm_arm.dasc
+++ b/subprojects/luajit/src/vm_arm.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for ARM CPUs.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
|
|.arch arm
|.section code_op, code_sub
diff --git a/vendor/luajit/src/vm_mips.dasc b/subprojects/luajit/src/vm_mips.dasc
similarity index 99%
rename from vendor/luajit/src/vm_mips.dasc
rename to subprojects/luajit/src/vm_mips.dasc
index ac8346bbd..3f9c98c1a 100644
--- a/vendor/luajit/src/vm_mips.dasc
+++ b/subprojects/luajit/src/vm_mips.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for MIPS CPUs.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
|
|.arch mips
|.section code_op, code_sub
@@ -1621,6 +1621,7 @@ static void build_subroutines(BuildCtx *ctx)
|
|.ffunc string_char // Only handle the 1-arg case here.
| ffgccheck
+ |. nop
| lw CARG3, HI(BASE)
| ldc1 FARG1, 0(BASE)
| li AT, 8
@@ -1648,6 +1649,7 @@ static void build_subroutines(BuildCtx *ctx)
|
|.ffunc string_sub
| ffgccheck
+ |. nop
| addiu AT, NARGS8:RC, -16
| lw CARG3, 16+HI(BASE)
| ldc1 f0, 16(BASE)
@@ -1697,6 +1699,7 @@ static void build_subroutines(BuildCtx *ctx)
|
|.ffunc string_rep // Only handle the 1-char case inline.
| ffgccheck
+ |. nop
| lw TMP0, HI(BASE)
| addiu AT, NARGS8:RC, -16 // Exactly 2 arguments.
| lw CARG4, 8+HI(BASE)
@@ -1731,6 +1734,7 @@ static void build_subroutines(BuildCtx *ctx)
|
|.ffunc string_reverse
| ffgccheck
+ |. nop
| lw CARG3, HI(BASE)
| lw STR:CARG1, LO(BASE)
| beqz NARGS8:RC, ->fff_fallback
@@ -1756,6 +1760,7 @@ static void build_subroutines(BuildCtx *ctx)
|.macro ffstring_case, name, lo
| .ffunc name
| ffgccheck
+ |. nop
| lw CARG3, HI(BASE)
| lw STR:CARG1, LO(BASE)
| beqz NARGS8:RC, ->fff_fallback
@@ -3614,24 +3619,24 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
case BC_ISNEXT:
| // RA = base*8, RD = target (points to ITERN)
| addu RA, BASE, RA
- | lw TMP0, -24+HI(RA)
- | lw CFUNC:TMP1, -24+LO(RA)
- | lw TMP2, -16+HI(RA)
- | lw TMP3, -8+HI(RA)
+ | srl TMP0, RD, 1
+ | lw CARG1, -24+HI(RA)
+ | lw CFUNC:CARG2, -24+LO(RA)
+ | addu TMP0, PC, TMP0
+ | lw CARG3, -16+HI(RA)
+ | lw CARG4, -8+HI(RA)
| li AT, LJ_TFUNC
- | bne TMP0, AT, >5
- |. addiu TMP2, TMP2, -LJ_TTAB
- | lbu TMP1, CFUNC:TMP1->ffid
- | addiu TMP3, TMP3, -LJ_TNIL
- | srl TMP0, RD, 1
- | or TMP2, TMP2, TMP3
- | addiu TMP1, TMP1, -FF_next_N
- | addu TMP0, PC, TMP0
- | or TMP1, TMP1, TMP2
- | bnez TMP1, >5
- |. lui TMP2, (-(BCBIAS_J*4 >> 16) & 65535)
+ | bne CARG1, AT, >5
+ |. lui TMP2, (-(BCBIAS_J*4 >> 16) & 65535)
+ | lbu CARG2, CFUNC:CARG2->ffid
+ | addiu CARG3, CARG3, -LJ_TTAB
+ | addiu CARG4, CARG4, -LJ_TNIL
+ | or CARG3, CARG3, CARG4
+ | addiu CARG2, CARG2, -FF_next_N
+ | or CARG2, CARG2, CARG3
+ | bnez CARG2, >5
+ |. lui TMP1, 0xfffe
| addu PC, TMP0, TMP2
- | lui TMP1, 0xfffe
| ori TMP1, TMP1, 0x7fff
| sw r0, -8+LO(RA) // Initialize control var.
| sw TMP1, -8+HI(RA)
@@ -3641,7 +3646,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
| li TMP3, BC_JMP
| li TMP1, BC_ITERC
| sb TMP3, -4+OFS_OP(PC)
- | addu PC, TMP0, TMP2
+ | addu PC, TMP0, TMP2
| b <1
|. sb TMP1, OFS_OP(PC)
break;
@@ -4165,6 +4170,7 @@ static void emit_asm_debug(BuildCtx *ctx)
"\t.align 2\n"
".LEFDE1:\n\n", (int)ctx->codesz - fcofs);
#endif
+#if !LJ_NO_UNWIND
fprintf(ctx->fp, "\t.section .eh_frame,\"aw\",@progbits\n");
fprintf(ctx->fp,
"\t.globl lj_err_unwind_dwarf\n"
@@ -4232,6 +4238,7 @@ static void emit_asm_debug(BuildCtx *ctx)
"\t.byte 0xd\n\t.uleb128 0x10\n"
"\t.align 2\n"
".LEFDE3:\n\n", (int)ctx->codesz - fcofs);
+#endif
#endif
break;
default:
diff --git a/vendor/luajit/src/vm_ppc.dasc b/subprojects/luajit/src/vm_ppc.dasc
similarity index 99%
rename from vendor/luajit/src/vm_ppc.dasc
rename to subprojects/luajit/src/vm_ppc.dasc
index ad8a023e4..91f50037d 100644
--- a/vendor/luajit/src/vm_ppc.dasc
+++ b/subprojects/luajit/src/vm_ppc.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for PowerPC CPUs.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
|
|.arch ppc
|.section code_op, code_sub
diff --git a/vendor/luajit/src/vm_ppcspe.dasc b/subprojects/luajit/src/vm_ppcspe.dasc
similarity index 99%
rename from vendor/luajit/src/vm_ppcspe.dasc
rename to subprojects/luajit/src/vm_ppcspe.dasc
index 53ea2d965..2a57a41f3 100644
--- a/vendor/luajit/src/vm_ppcspe.dasc
+++ b/subprojects/luajit/src/vm_ppcspe.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for PowerPC/e500 CPUs.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
|
|.arch ppc
|.section code_op, code_sub
diff --git a/vendor/luajit/src/vm_x86.dasc b/subprojects/luajit/src/vm_x86.dasc
similarity index 99%
rename from vendor/luajit/src/vm_x86.dasc
rename to subprojects/luajit/src/vm_x86.dasc
index 6cdb8cbd2..359ad4f4f 100644
--- a/vendor/luajit/src/vm_x86.dasc
+++ b/subprojects/luajit/src/vm_x86.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for x86 CPUs.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
|
|.if P64
|.arch x64
@@ -222,6 +222,9 @@
|.define CFRAME_SPACE, aword*5 // Delta for rsp (see <--).
|.macro saveregs_
| push rbx; push r15; push r14
+|.if NO_UNWIND
+| push r13; push r12
+|.endif
| sub rsp, CFRAME_SPACE
|.endmacro
|.macro saveregs
@@ -229,15 +232,28 @@
|.endmacro
|.macro restoreregs
| add rsp, CFRAME_SPACE
+|.if NO_UNWIND
+| pop r12; pop r13
+|.endif
| pop r14; pop r15; pop rbx; pop rbp
|.endmacro
|
|//----- 16 byte aligned,
+|.if NO_UNWIND
+|.define SAVE_RET, aword [rsp+aword*11] //<-- rsp entering interpreter.
+|.define SAVE_R4, aword [rsp+aword*10]
+|.define SAVE_R3, aword [rsp+aword*9]
+|.define SAVE_R2, aword [rsp+aword*8]
+|.define SAVE_R1, aword [rsp+aword*7]
+|.define SAVE_RU2, aword [rsp+aword*6]
+|.define SAVE_RU1, aword [rsp+aword*5] //<-- rsp after register saves.
+|.else
|.define SAVE_RET, aword [rsp+aword*9] //<-- rsp entering interpreter.
|.define SAVE_R4, aword [rsp+aword*8]
|.define SAVE_R3, aword [rsp+aword*7]
|.define SAVE_R2, aword [rsp+aword*6]
|.define SAVE_R1, aword [rsp+aword*5] //<-- rsp after register saves.
+|.endif
|.define SAVE_CFRAME, aword [rsp+aword*4]
|.define SAVE_PC, dword [rsp+dword*7]
|.define SAVE_L, dword [rsp+dword*6]
@@ -6119,6 +6135,10 @@ static void emit_asm_debug(BuildCtx *ctx)
"\t.byte 0x83\n\t.uleb128 0x3\n" /* offset rbx */
"\t.byte 0x8f\n\t.uleb128 0x4\n" /* offset r15 */
"\t.byte 0x8e\n\t.uleb128 0x5\n" /* offset r14 */
+#if LJ_NO_UNWIND
+ "\t.byte 0x8d\n\t.uleb128 0x6\n" /* offset r13 */
+ "\t.byte 0x8c\n\t.uleb128 0x7\n" /* offset r12 */
+#endif
#else
"\t.long .Lbegin\n"
"\t.long %d\n"
@@ -6154,6 +6174,7 @@ static void emit_asm_debug(BuildCtx *ctx)
"\t.align " SZPTR "\n"
".LEFDE1:\n\n", (int)ctx->codesz - fcofs);
#endif
+#if !LJ_NO_UNWIND
#if (defined(__sun__) && defined(__svr4__))
#if LJ_64
fprintf(ctx->fp, "\t.section .eh_frame,\"a\",@unwind\n");
@@ -6241,8 +6262,10 @@ static void emit_asm_debug(BuildCtx *ctx)
#endif
"\t.align " SZPTR "\n"
".LEFDE3:\n\n", (int)ctx->codesz - fcofs);
+#endif
#endif
break;
+#if !LJ_NO_UNWIND
/* Mental note: never let Apple design an assembler.
** Or a linker. Or a plastic case. But I digress.
*/
@@ -6370,6 +6393,7 @@ static void emit_asm_debug(BuildCtx *ctx)
#endif
}
break;
+#endif
default: /* Difficult for other modes. */
break;
}
diff --git a/vendor/luajit/unicode-io.patch b/subprojects/luajit/unicode-io.patch
similarity index 94%
rename from vendor/luajit/unicode-io.patch
rename to subprojects/luajit/unicode-io.patch
index 08e2322ca..3d9873f59 100644
--- a/vendor/luajit/unicode-io.patch
+++ b/subprojects/luajit/unicode-io.patch
@@ -1,5 +1,5 @@
diff --git a/vendor/luajit/src/lib_io.c b/vendor/luajit/src/lib_io.c
-index 037aa28..8923e70 100644
+index 9cdcfcfcb..6858e6455 100644
--- a/vendor/luajit/src/lib_io.c
+++ b/vendor/luajit/src/lib_io.c
@@ -24,6 +24,16 @@
@@ -35,7 +35,7 @@ index 037aa28..8923e70 100644
if (iof->fp == NULL)
luaL_argerror(L, 1, lj_str_pushf(L, "%s: %s", fname, strerror(errno)));
return iof;
-@@ -399,7 +417,14 @@ LJLIB_CF(io_open)
+@@ -407,7 +425,14 @@ LJLIB_CF(io_open)
GCstr *s = lj_lib_optstr(L, 2);
const char *mode = s ? strdata(s) : "r";
IOFileUD *iof = io_file_new(L);
@@ -50,7 +50,7 @@ index 037aa28..8923e70 100644
return iof->fp != NULL ? 1 : luaL_fileresult(L, 0, fname);
}
-@@ -415,7 +440,10 @@ LJLIB_CF(io_popen)
+@@ -423,7 +448,10 @@ LJLIB_CF(io_popen)
fflush(NULL);
iof->fp = popen(fname, mode);
#else
diff --git a/vendor/luajit/unicode-os.patch b/subprojects/luajit/unicode-os.patch
similarity index 96%
rename from vendor/luajit/unicode-os.patch
rename to subprojects/luajit/unicode-os.patch
index 8bbee2341..5d69f7e9c 100644
--- a/vendor/luajit/unicode-os.patch
+++ b/subprojects/luajit/unicode-os.patch
@@ -1,5 +1,5 @@
diff --git a/vendor/luajit/src/lib_os.c b/vendor/luajit/src/lib_os.c
-index bb5a141..a2ed170 100644
+index 8c96b86c7..05b324950 100644
--- a/vendor/luajit/src/lib_os.c
+++ b/vendor/luajit/src/lib_os.c
@@ -32,6 +32,23 @@
diff --git a/subprojects/nasm.wrap b/subprojects/nasm.wrap
new file mode 100644
index 000000000..6f1ad8dab
--- /dev/null
+++ b/subprojects/nasm.wrap
@@ -0,0 +1,6 @@
+[wrap-file]
+directory = nasm-2.15.05
+source_url = https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/win64/nasm-2.15.05-win64.zip
+source_filename = nasm-2.15.05-win64.zip
+source_hash = f5c93c146f52b4f1664fa3ce6579f961a910e869ab0dae431bd871bdd2584ef2
+patch_directory = nasm
diff --git a/subprojects/packagefiles/boost/libs/chrono/meson.build b/subprojects/packagefiles/boost/libs/chrono/meson.build
new file mode 100644
index 000000000..b2dfc4d22
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/chrono/meson.build
@@ -0,0 +1,15 @@
+chrono_sources = files([
+ 'src/chrono.cpp',
+ 'src/thread_clock.cpp',
+ 'src/process_cpu_clocks.cpp',
+])
+
+boost_chrono = library('boost_chrono', chrono_sources,
+ include_directories: inc,
+ cpp_args: is_static ? '-DBOOST_All_STATIC_LINK=1' : '-DBOOST_All_DYN_LINK=1',
+ dependencies: thread_dep)
+
+boost_chrono_dep = declare_dependency(link_with: boost_chrono, include_directories: inc,
+ compile_args: [is_static ? '-DBOOST_CHRONO_STATIC_LINK=1'
+ : '-DBOOST_CHRONO_DYN_LINK=1',
+ '-DBOOST_ALL_NO_LIB=1'])
diff --git a/subprojects/packagefiles/boost/libs/filesystem/meson.build b/subprojects/packagefiles/boost/libs/filesystem/meson.build
new file mode 100644
index 000000000..b255d4c97
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/filesystem/meson.build
@@ -0,0 +1,37 @@
+filesystem_sources = files([
+ 'src/codecvt_error_category.cpp',
+ 'src/exception.cpp',
+ 'src/directory.cpp',
+ 'src/operations.cpp',
+ 'src/path.cpp',
+ 'src/path_traits.cpp',
+ 'src/portability.cpp',
+ 'src/unique_path.cpp',
+ 'src/utf8_codecvt_facet.cpp',
+ 'src/windows_file_codecvt.cpp',
+])
+
+filesystem_args = ['-DBOOST_FILESYSTEM_SOURCE',
+ is_static ? '-DBOOST_FILESYSTEM_STATIC_LINK=1' : '-DBOOST_FILESYSTEM_DYN_LINK=1']
+
+filesystem_deps = []
+if host_machine.system() == 'windows'
+ bcrypt_dep = dependency('bcrypt', required: false)
+ if bcrypt_dep.found()
+ filesystem_deps += bcrypt_dep
+ filesystem_args += '-DBOOST_FILESYSTEM_HAS_BCRYPT'
+ else
+ filesystem_deps += cpp.find_library('advapi32')
+ filesystem_args += '-DBOOST_FILESYSTEM_HAS_WINCRYPT'
+ endif
+endif
+
+boost_filesystem = library('boost_filesystem', filesystem_sources,
+ include_directories: inc,
+ cpp_args: filesystem_args,
+ dependencies: [thread_dep, filesystem_deps])
+
+boost_filesystem_dep = declare_dependency(link_with: boost_filesystem, include_directories: inc,
+ compile_args: [is_static ? '-DBOOST_FILESYSTEM_STATIC_LINK=1'
+ : '-DBOOST_FILESYSTEM_DYN_LINK=1',
+ '-DBOOST_ALL_NO_LIB=1'])
diff --git a/subprojects/packagefiles/boost/libs/locale/meson.build b/subprojects/packagefiles/boost/libs/locale/meson.build
new file mode 100644
index 000000000..6abd3cd1b
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/locale/meson.build
@@ -0,0 +1,78 @@
+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',
+ # 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',
+ # included if using posix, win32 or std backend (ie always)
+ 'src/util/gregorian.cpp',
+])
+
+locale_args = ['-DBOOST_THREAD_NO_LIB=1']
+locale_deps = []
+
+if not is_static
+ locale_args += '-DBOOST_LOCALE_DYN_LINK=1'
+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',
+ # included on windows/cygwin if std *or* win32 included
+ 'src/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',
+ ])
+ locale_args += '-DBOOST_LOCALE_NO_WINAPI_BACKEND=1'
+endif
+
+if not cpp.check_header('iconv.h')
+ locale_deps += dependency('iconv')
+endif
+locale_args += '-DBOOST_LOCALE_WITH_ICONV=1'
+
+locale_deps += icu_deps
+locale_args += '-DBOOST_LOCALE_WITH_ICU=1'
+
+boost_locale = library('boost_locale', locale_sources,
+ include_directories: inc,
+ cpp_args: locale_args,
+ dependencies: [thread_dep, locale_deps, boost_thread_dep])
+
+boost_locale_dep = declare_dependency(link_with: boost_locale, include_directories: inc,
+ compile_args: '-DBOOST_ALL_NO_LIB=1')
diff --git a/subprojects/packagefiles/boost/libs/program_options/meson.build b/subprojects/packagefiles/boost/libs/program_options/meson.build
new file mode 100644
index 000000000..9ee11eb29
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/program_options/meson.build
@@ -0,0 +1,28 @@
+program_options_sources = files([
+ 'src/cmdline.cpp',
+ 'src/config_file.cpp',
+ 'src/options_description.cpp',
+ 'src/parsers.cpp',
+ 'src/variables_map.cpp',
+ 'src/value_semantic.cpp',
+ 'src/positional_options.cpp',
+ 'src/utf8_codecvt_facet.cpp',
+ 'src/convert.cpp',
+ 'src/winmain.cpp',
+ 'src/split.cpp',
+])
+
+program_options_args = []
+if not is_static
+ program_options_args += '-DBOOST_PROGRAM_OPTIONS_DYN_LINK=1'
+endif
+
+boost_program_options = library('boost_program_options', program_options_sources,
+ cpp_args: program_options_args,
+ include_directories: inc,
+ dependencies: thread_dep)
+
+boost_program_options_dep = declare_dependency(link_with: boost_program_options,
+ include_directories: inc,
+ compile_args: program_options_args +
+ ['-DBOOST_ALL_NO_LIB=1'])
diff --git a/subprojects/packagefiles/boost/libs/regex/meson.build b/subprojects/packagefiles/boost/libs/regex/meson.build
new file mode 100644
index 000000000..f073f33d8
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/regex/meson.build
@@ -0,0 +1,33 @@
+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']
+
+if not is_static
+ regex_args += '-DBOOST_REGEX_DYN_LINK=1'
+endif
+
+boost_regex = library('boost_regex', regex_sources,
+ include_directories: inc,
+ cpp_args: regex_args,
+ dependencies: [thread_dep, icu_deps])
+
+boost_regex_dep = declare_dependency(link_with: boost_regex, include_directories: inc,
+ compile_args: '-DBOOST_ALL_NO_LIB=1')
diff --git a/subprojects/packagefiles/boost/libs/thread/meson.build b/subprojects/packagefiles/boost/libs/thread/meson.build
new file mode 100644
index 000000000..e14d344dd
--- /dev/null
+++ b/subprojects/packagefiles/boost/libs/thread/meson.build
@@ -0,0 +1,30 @@
+thread_args = [is_static ? '-DBOOST_THREAD_BUILD_LIB=1' : '-DBOOST_THREAD_BUILD_DLL=1']
+
+if host_machine.system() == 'windows'
+ thread_sources = files([
+ 'src/win32/thread.cpp',
+ 'src/win32/tss_dll.cpp',
+ 'src/win32/tss_pe.cpp',
+ 'src/win32/thread_primitives.cpp',
+ 'src/future.cpp',
+ ])
+ thread_args += ['-DWIN32_LEAN_AND_MEAN', '-DBOOST_USE_WINDOWS_H', '-DBOOST_THREAD_WIN32',
+ '-DBOOST_THREAD_USES_CHRONO']
+else
+ thread_sources = files([
+ 'src/pthread/thread.cpp',
+ 'src/pthread/once.cpp',
+ 'src/future.cpp',
+ ])
+ thread_args += ['-DBOOST_THREAD_POSIX', '-DBOOST_THREAD_DONT_USE_CHRONO']
+endif
+
+boost_thread = library('boost_thread', thread_sources,
+ include_directories: inc,
+ cpp_args: thread_args,
+ dependencies: [thread_dep, boost_chrono_dep])
+
+boost_thread_dep = declare_dependency(link_with: boost_thread, include_directories: inc,
+ compile_args: [is_static ? '-DBOOST_THREAD_BUILD_LIB=1'
+ : '-DBOOST_THREAD_BUILD_DLL=1',
+ '-DBOOST_ALL_NO_LIB=1'])
diff --git a/subprojects/packagefiles/boost/meson.build b/subprojects/packagefiles/boost/meson.build
new file mode 100644
index 000000000..a0a9881d8
--- /dev/null
+++ b/subprojects/packagefiles/boost/meson.build
@@ -0,0 +1,26 @@
+project('boost', 'cpp',
+ version: '1.74.0',
+ meson_version: '>=0.55.0')
+
+cpp = meson.get_compiler('cpp')
+thread_dep = dependency('threads')
+inc = include_directories('.')
+is_static = get_option('default_library') == 'static'
+
+add_project_arguments('-DBOOST_ALL_NO_LIB=1', language: 'cpp')
+
+if get_option('buildtype').startswith('release')
+ add_project_arguments('-DNDEBUG', language: 'cpp')
+endif
+
+if host_machine.system() == 'windows'
+ add_project_arguments('-DWIN32', language: 'cpp')
+endif
+
+icu_deps = [dependency('icu-uc'),
+ dependency('icu-i18n')]
+
+modules = ['chrono', 'thread', 'filesystem', 'locale', 'regex', 'program_options']
+foreach module: modules
+ subdir('libs/' + module)
+endforeach
diff --git a/subprojects/packagefiles/ffms2/meson.build b/subprojects/packagefiles/ffms2/meson.build
new file mode 100644
index 000000000..8c6a07851
--- /dev/null
+++ b/subprojects/packagefiles/ffms2/meson.build
@@ -0,0 +1,45 @@
+project('ffms2', 'cpp', version: '2.40.0')
+
+deps = []
+
+deps += dependency('zlib')
+deps += dependency('libavformat', default_options: ['tests=disabled'])
+deps += dependency('libavcodec', default_options: ['tests=disabled'])
+deps += dependency('libswscale', default_options: ['tests=disabled'])
+deps += dependency('libavutil', default_options: ['tests=disabled'])
+deps += dependency('libswresample', default_options: ['tests=disabled'])
+
+args = ['-D_FILE_OFFSET_BITNS=64', '-DFFMS_EXPORTS', '-D__STDC_CONSTANT_MACROS']
+usage_args = []
+
+if get_option('default_library') == 'static'
+ usage_args += '-DFFMS_STATIC'
+endif
+
+ffms2_sources = [
+ 'src/core/audiosource.cpp',
+ #'src/core/audiosource.h',
+ 'src/core/ffms.cpp',
+ 'src/core/filehandle.cpp',
+ #'src/core/filehandle.h',
+ 'src/core/indexing.cpp',
+ #'src/core/indexing.h',
+ 'src/core/track.cpp',
+ #'src/core/track.h',
+ 'src/core/utils.cpp',
+ #'src/core/utils.h',
+ 'src/core/videosource.cpp',
+ #'src/core/videosource.h',
+ 'src/core/videoutils.cpp',
+ #'src/core/videoutils.h',
+ 'src/core/zipfile.cpp',
+ #'src/core/zipfile.h',
+]
+
+deps_inc = include_directories('include')
+
+ffms2 = library('ffms2', ffms2_sources, include_directories: deps_inc, dependencies: deps,
+ cpp_args: args + usage_args)
+ffms2_dep = declare_dependency(link_with: ffms2,
+ include_directories: deps_inc,
+ compile_args: usage_args)
diff --git a/subprojects/packagefiles/icu/meson.build b/subprojects/packagefiles/icu/meson.build
new file mode 100644
index 000000000..11e1cc25b
--- /dev/null
+++ b/subprojects/packagefiles/icu/meson.build
@@ -0,0 +1,32 @@
+project('icu', 'c', 'cpp',
+ version: '67.1',
+ meson_version: '>=0.55.0',
+ default_options: 'cpp_std=c++17')
+
+cpp = meson.get_compiler('cpp')
+
+if host_machine.system() == 'windows'
+ add_project_arguments('-DWIN32', '-DWIN64', '-D_MBCS', '/utf-8', language : 'cpp')
+ add_project_arguments('-DWIN32', '-DWIN64', '-D_MBCS', '/utf-8', language : 'c')
+endif
+
+if cpp.has_header('elf.h')
+ add_project_arguments('-DU_HAVE_ELF_H=1', language: 'c')
+ add_project_arguments('-DU_HAVE_ELF_H=1', language: 'cpp')
+endif
+
+dl_dep = cpp.find_library('dl', required: false)
+thread_dep = dependency('threads')
+
+# Compiler flags the users of this library must use.
+usage_args = []
+
+if get_option('default_library') == 'static'
+ add_project_arguments('-DU_STATIC_IMPLEMENTATION', language : 'c')
+ add_project_arguments('-DU_STATIC_IMPLEMENTATION', language : 'cpp')
+ usage_args = ['-DU_STATIC_IMPLEMENTATION']
+elif host_machine.system() == 'windows'
+ error('Shared library build not supported on Windows. Set default_library to static.')
+endif
+
+subdir('source')
diff --git a/subprojects/packagefiles/icu/source/common/meson.build b/subprojects/packagefiles/icu/source/common/meson.build
new file mode 100644
index 000000000..6dad1a77a
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/common/meson.build
@@ -0,0 +1,202 @@
+uc_sources = files(
+ 'errorcode.cpp',
+ 'putil.cpp',
+ 'umath.cpp',
+ 'utypes.cpp',
+ 'uinvchar.cpp',
+ 'umutex.cpp',
+ 'ucln_cmn.cpp',
+ 'uinit.cpp',
+ 'uobject.cpp',
+ 'cmemory.cpp',
+ 'charstr.cpp',
+ 'cstr.cpp',
+ 'udata.cpp',
+ 'ucmndata.cpp',
+ 'udatamem.cpp',
+ 'umapfile.cpp',
+ 'udataswp.cpp',
+ 'utrie_swap.cpp',
+ 'ucol_swp.cpp',
+ 'utrace.cpp',
+ 'uhash.cpp',
+ 'uhash_us.cpp',
+ 'uenum.cpp',
+ 'ustrenum.cpp',
+ 'uvector.cpp',
+ 'ustack.cpp',
+ 'uvectr32.cpp',
+ 'uvectr64.cpp',
+ 'ucnv.cpp',
+ 'ucnv_bld.cpp',
+ 'ucnv_cnv.cpp',
+ 'ucnv_io.cpp',
+ 'ucnv_cb.cpp',
+ 'ucnv_err.cpp',
+ 'ucnvlat1.cpp',
+ 'ucnv_u7.cpp',
+ 'ucnv_u8.cpp',
+ 'ucnv_u16.cpp',
+ 'ucnv_u32.cpp',
+ 'ucnvscsu.cpp',
+ 'ucnvbocu.cpp',
+ 'ucnv_ext.cpp',
+ 'ucnvmbcs.cpp',
+ 'ucnv2022.cpp',
+ 'ucnvhz.cpp',
+ 'ucnv_lmb.cpp',
+ 'ucnvisci.cpp',
+ 'ucnvdisp.cpp',
+ 'ucnv_set.cpp',
+ 'ucnv_ct.cpp',
+ 'resource.cpp',
+ 'uresbund.cpp',
+ 'ures_cnv.cpp',
+ 'uresdata.cpp',
+ 'resbund.cpp',
+ 'resbund_cnv.cpp',
+ 'ucurr.cpp',
+ 'localebuilder.cpp',
+ 'localeprioritylist.cpp',
+ 'messagepattern.cpp',
+ 'ucat.cpp',
+ 'locmap.cpp',
+ 'uloc.cpp',
+ 'locid.cpp',
+ 'locutil.cpp',
+ 'locavailable.cpp',
+ 'locdispnames.cpp',
+ 'locdspnm.cpp',
+ 'loclikely.cpp',
+ 'locresdata.cpp',
+ 'lsr.cpp',
+ 'loclikelysubtags.cpp',
+ 'locdistance.cpp',
+ 'localematcher.cpp',
+ 'bytestream.cpp',
+ 'stringpiece.cpp',
+ 'bytesinkutil.cpp',
+ 'stringtriebuilder.cpp',
+ 'bytestriebuilder.cpp',
+ 'bytestrie.cpp',
+ 'bytestrieiterator.cpp',
+ 'ucharstrie.cpp',
+ 'ucharstriebuilder.cpp',
+ 'ucharstrieiterator.cpp',
+ 'dictionarydata.cpp',
+ 'edits.cpp',
+ 'appendable.cpp',
+ 'ustr_cnv.cpp',
+ 'unistr_cnv.cpp',
+ 'unistr.cpp',
+ 'unistr_case.cpp',
+ 'unistr_props.cpp',
+ 'utf_impl.cpp',
+ 'ustring.cpp',
+ 'ustrcase.cpp',
+ 'ucasemap.cpp',
+ 'ucasemap_titlecase_brkiter.cpp',
+ 'cstring.cpp',
+ 'ustrfmt.cpp',
+ 'ustrtrns.cpp',
+ 'ustr_wcs.cpp',
+ 'utext.cpp',
+ 'unistr_case_locale.cpp',
+ 'ustrcase_locale.cpp',
+ 'unistr_titlecase_brkiter.cpp',
+ 'ustr_titlecase_brkiter.cpp',
+ 'normalizer2impl.cpp',
+ 'normalizer2.cpp',
+ 'filterednormalizer2.cpp',
+ 'normlzr.cpp',
+ 'unorm.cpp',
+ 'unormcmp.cpp',
+ 'loadednormalizer2impl.cpp',
+ 'chariter.cpp',
+ 'schriter.cpp',
+ 'uchriter.cpp',
+ 'uiter.cpp',
+ 'patternprops.cpp',
+ 'uchar.cpp',
+ 'uprops.cpp',
+ 'ucase.cpp',
+ 'propname.cpp',
+ 'ubidi_props.cpp',
+ 'characterproperties.cpp',
+ 'ubidi.cpp',
+ 'ubidiwrt.cpp',
+ 'ubidiln.cpp',
+ 'ushape.cpp',
+ 'uscript.cpp',
+ 'uscript_props.cpp',
+ 'usc_impl.cpp',
+ 'unames.cpp',
+ 'utrie.cpp',
+ 'utrie2.cpp',
+ 'utrie2_builder.cpp',
+ 'ucptrie.cpp',
+ 'umutablecptrie.cpp',
+ 'bmpset.cpp',
+ 'unisetspan.cpp',
+ 'uset_props.cpp',
+ 'uniset_props.cpp',
+ 'uniset_closure.cpp',
+ 'uset.cpp',
+ 'uniset.cpp',
+ 'usetiter.cpp',
+ 'ruleiter.cpp',
+ 'caniter.cpp',
+ 'unifilt.cpp',
+ 'unifunct.cpp',
+ 'uarrsort.cpp',
+ 'brkiter.cpp',
+ 'ubrk.cpp',
+ 'brkeng.cpp',
+ 'dictbe.cpp',
+ 'filteredbrk.cpp',
+ 'rbbi.cpp',
+ 'rbbidata.cpp',
+ 'rbbinode.cpp',
+ 'rbbirb.cpp',
+ 'rbbiscan.cpp',
+ 'rbbisetb.cpp',
+ 'rbbistbl.cpp',
+ 'rbbitblb.cpp',
+ 'rbbi_cache.cpp',
+ 'serv.cpp',
+ 'servnotf.cpp',
+ 'servls.cpp',
+ 'servlk.cpp',
+ 'servlkf.cpp',
+ 'servrbf.cpp',
+ 'servslkf.cpp',
+ 'uidna.cpp',
+ 'usprep.cpp',
+ 'uts46.cpp',
+ 'punycode.cpp',
+ 'util.cpp',
+ 'util_props.cpp',
+ 'parsepos.cpp',
+ 'locbased.cpp',
+ 'cwchar.cpp',
+ 'wintz.cpp',
+ 'dtintrv.cpp',
+ 'ucnvsel.cpp',
+ 'propsvec.cpp',
+ 'ulist.cpp',
+ 'uloc_tag.cpp',
+ 'icudataver.cpp',
+ 'icuplug.cpp',
+ 'sharedobject.cpp',
+ 'simpleformatter.cpp',
+ 'unifiedcache.cpp',
+ 'uloc_keytype.cpp',
+ 'ubiditransform.cpp',
+ 'pluralmap.cpp',
+ 'static_unicode_sets.cpp',
+ 'restrace.cpp',
+)
+
+uc_args = ['-DU_COMMON_IMPLEMENTATION']
+uc_link = []
+uc_deps = dl_dep
diff --git a/subprojects/packagefiles/icu/source/data/generate_icupkg_inc.py b/subprojects/packagefiles/icu/source/data/generate_icupkg_inc.py
new file mode 100755
index 000000000..c4265c686
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/data/generate_icupkg_inc.py
@@ -0,0 +1,53 @@
+import json
+import sys
+
+host = sys.argv[1]
+cpu_family = sys.argv[2]
+outfile = sys.argv[3]
+
+with open('meson-info/intro-targets.json', 'r') as f:
+ targets = json.load(f)
+
+def get_arguments(name):
+ target = next(target for target in targets
+ if target['name'] == name)
+ sources = next(sources for sources in target['target_sources']
+ if sources['language'] == 'c')
+ return sources['compiler'] + sources['parameters']
+
+def quote(arguments):
+ return " ".join(json.dumps(arg) for arg in arguments)
+
+obj_arguments = get_arguments("pkgdata") + ['-c']
+lib_arguments = get_arguments("icutest") + ['-Wl,-Bsymbolic']
+
+config = {
+ 'A': 'a',
+ 'LIBPREFIX': 'lib',
+ 'LIB_EXT_ORDER': '.',
+ 'COMPILE': quote(obj_arguments),
+ 'LIBFLAGS': '', # already included in COMPILE
+ 'LDICUDTFLAGS': '-nodefaultlibs -nostdlib',
+ 'RPATH_FLAGS': '',
+ 'BIR_LDFLAGS': '-Wl,-Bsymbolic',
+ 'AR': 'ar',
+ 'ARFLAGS': 'r',
+ 'RANLIB': 'ranlib',
+ 'LD_SONAME': '',
+ 'INSTALL_CMD': ''
+}
+
+if host == 'darwin':
+ config['GENCCODE_ASSEMBLY_TYPE'] = '-a gcc-darwin'
+ config['SO'] = 'dylib'
+ config['SOBJ'] = 'dylib'
+ config['GENLIB'] = quote(lib_arguments + ['-dynamiclib', '-dynamic'])
+else:
+ config['GENCCODE_ASSEMBLY_TYPE'] = '-a gcc'
+ config['SO'] = 'so'
+ config['SOBJ'] = 'so'
+ config['GENLIB'] = quote(lib_arguments + ['-shared'])
+
+with open(outfile, 'w') as f:
+ for k, v in config.items():
+ f.write("{}={}\n".format(k, v))
diff --git a/subprojects/packagefiles/icu/source/data/meson.build b/subprojects/packagefiles/icu/source/data/meson.build
new file mode 100644
index 000000000..ebac3b413
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/data/meson.build
@@ -0,0 +1,44 @@
+icudata_lst = custom_target('icudata.lst',
+ # not sure how to ensure that @PRIVATE_DIR@ exists
+ #command: [icupkg, '-d', '@PRIVATE_DIR@', '--list', '-x', '*', '@INPUT@', '-o', '@OUTPUT@'],
+ command: [icupkg, '-d', '@OUTDIR@', '--list', '-x', '*', '@INPUT@', '-o', '@OUTPUT@'],
+ input: files('in/icudt67l.dat'),
+ output: 'icudata.lst')
+
+is_static = get_option('default_library') == 'static'
+
+if host_machine.system() == 'windows' # only msvc supported
+ data_lib_static = custom_target(
+ 'icudata_static', command: [pkgdata, '-q', '-c', '-e', 'icudt67', '-L', 'icudata_static',
+ '-d', '@OUTDIR@', '-s', '@OUTDIR@', '-p', 'icudt67l',
+ '-m', 'static', '@INPUT@'],
+ input: icudata_lst, output: 'icudata_static.lib')
+else
+ if host_machine.system() == 'darwin'
+ suffix = is_static ? '.a' : '.dylib'
+ else
+ suffix = is_static ? '.a' : '.so'
+ endif
+ suffix = '.a'
+
+ icupkg_inc = custom_target('icupkg.inc',
+ command: [python3, '@INPUT@', host_machine.system(),
+ host_machine.cpu_family(), '@OUTPUT@'],
+ input: 'generate_icupkg_inc.py',
+ output: 'icupkg.inc')
+ data_lib_static = custom_target(
+ 'icudata_static', command: [pkgdata, '-q', '-c', '-e', 'icudt67', '-L', 'icudata_static',
+ '-d', '@OUTDIR@', '-s', '@OUTDIR@',
+ '-p', 'icudt67l', '-O', icupkg_inc,
+ '-m', 'static', '@INPUT@'],
+ input: icudata_lst, output: 'libicudata_static' + suffix)
+endif
+
+if is_static
+ data_lib = data_lib_static
+else
+ # convert to proper library object to make sure rpath gets set properly
+ data_lib = library('icudata', link_whole: data_lib_static)
+endif
+
+# -nodefaultlibs -nostdlib for stubdata
diff --git a/subprojects/packagefiles/icu/source/i18n/meson.build b/subprojects/packagefiles/icu/source/i18n/meson.build
new file mode 100644
index 000000000..916e39622
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/i18n/meson.build
@@ -0,0 +1,239 @@
+i18n_sources = files(
+ 'ucln_in.cpp',
+ 'fmtable.cpp',
+ 'format.cpp',
+ 'msgfmt.cpp',
+ 'umsg.cpp',
+ 'numfmt.cpp',
+ 'unum.cpp',
+ 'decimfmt.cpp',
+ 'dcfmtsym.cpp',
+ 'fmtable_cnv.cpp',
+ 'choicfmt.cpp',
+ 'datefmt.cpp',
+ 'smpdtfmt.cpp',
+ 'reldtfmt.cpp',
+ 'dtfmtsym.cpp',
+ 'udat.cpp',
+ 'dtptngen.cpp',
+ 'udatpg.cpp',
+ 'nfrs.cpp',
+ 'nfrule.cpp',
+ 'nfsubs.cpp',
+ 'rbnf.cpp',
+ 'numsys.cpp',
+ 'unumsys.cpp',
+ 'ucsdet.cpp',
+ 'ucal.cpp',
+ 'calendar.cpp',
+ 'gregocal.cpp',
+ 'timezone.cpp',
+ 'simpletz.cpp',
+ 'olsontz.cpp',
+ 'astro.cpp',
+ 'taiwncal.cpp',
+ 'buddhcal.cpp',
+ 'persncal.cpp',
+ 'islamcal.cpp',
+ 'japancal.cpp',
+ 'gregoimp.cpp',
+ 'hebrwcal.cpp',
+ 'indiancal.cpp',
+ 'chnsecal.cpp',
+ 'cecal.cpp',
+ 'coptccal.cpp',
+ 'dangical.cpp',
+ 'ethpccal.cpp',
+ 'coleitr.cpp',
+ 'coll.cpp',
+ 'sortkey.cpp',
+ 'bocsu.cpp',
+ 'ucoleitr.cpp',
+ 'ucol.cpp',
+ 'ucol_res.cpp',
+ 'ucol_sit.cpp',
+ 'collation.cpp',
+ 'collationsettings.cpp',
+ 'collationdata.cpp',
+ 'collationtailoring.cpp',
+ 'collationdatareader.cpp',
+ 'collationdatawriter.cpp',
+ 'collationfcd.cpp',
+ 'collationiterator.cpp',
+ 'utf16collationiterator.cpp',
+ 'utf8collationiterator.cpp',
+ 'uitercollationiterator.cpp',
+ 'collationsets.cpp',
+ 'collationcompare.cpp',
+ 'collationfastlatin.cpp',
+ 'collationkeys.cpp',
+ 'rulebasedcollator.cpp',
+ 'collationroot.cpp',
+ 'collationrootelements.cpp',
+ 'collationdatabuilder.cpp',
+ 'collationweights.cpp',
+ 'collationruleparser.cpp',
+ 'collationbuilder.cpp',
+ 'collationfastlatinbuilder.cpp',
+ 'listformatter.cpp',
+ 'ulistformatter.cpp',
+ 'strmatch.cpp',
+ 'usearch.cpp',
+ 'search.cpp',
+ 'stsearch.cpp',
+ 'translit.cpp',
+ 'utrans.cpp',
+ 'esctrn.cpp',
+ 'unesctrn.cpp',
+ 'funcrepl.cpp',
+ 'strrepl.cpp',
+ 'tridpars.cpp',
+ 'cpdtrans.cpp',
+ 'rbt.cpp',
+ 'rbt_data.cpp',
+ 'rbt_pars.cpp',
+ 'rbt_rule.cpp',
+ 'rbt_set.cpp',
+ 'nultrans.cpp',
+ 'remtrans.cpp',
+ 'casetrn.cpp',
+ 'titletrn.cpp',
+ 'tolowtrn.cpp',
+ 'toupptrn.cpp',
+ 'anytrans.cpp',
+ 'name2uni.cpp',
+ 'uni2name.cpp',
+ 'nortrans.cpp',
+ 'quant.cpp',
+ 'transreg.cpp',
+ 'brktrans.cpp',
+ 'regexcmp.cpp',
+ 'rematch.cpp',
+ 'repattrn.cpp',
+ 'regexst.cpp',
+ 'regextxt.cpp',
+ 'regeximp.cpp',
+ 'uregex.cpp',
+ 'uregexc.cpp',
+ 'ulocdata.cpp',
+ 'measfmt.cpp',
+ 'currfmt.cpp',
+ 'curramt.cpp',
+ 'currunit.cpp',
+ 'measure.cpp',
+ 'utmscale.cpp',
+ 'csdetect.cpp',
+ 'csmatch.cpp',
+ 'csr2022.cpp',
+ 'csrecog.cpp',
+ 'csrmbcs.cpp',
+ 'csrsbcs.cpp',
+ 'csrucode.cpp',
+ 'csrutf8.cpp',
+ 'inputext.cpp',
+ 'wintzimpl.cpp',
+ 'windtfmt.cpp',
+ 'winnmfmt.cpp',
+ 'basictz.cpp',
+ 'dtrule.cpp',
+ 'rbtz.cpp',
+ 'tzrule.cpp',
+ 'tztrans.cpp',
+ 'vtzone.cpp',
+ 'zonemeta.cpp',
+ 'standardplural.cpp',
+ 'upluralrules.cpp',
+ 'plurrule.cpp',
+ 'plurfmt.cpp',
+ 'selfmt.cpp',
+ 'dtitvfmt.cpp',
+ 'dtitvinf.cpp',
+ 'udateintervalformat.cpp',
+ 'tmunit.cpp',
+ 'tmutamt.cpp',
+ 'tmutfmt.cpp',
+ 'currpinf.cpp',
+ 'uspoof.cpp',
+ 'uspoof_impl.cpp',
+ 'uspoof_build.cpp',
+ 'uspoof_conf.cpp',
+ 'smpdtfst.cpp',
+ 'ztrans.cpp',
+ 'zrule.cpp',
+ 'vzone.cpp',
+ 'fphdlimp.cpp',
+ 'fpositer.cpp',
+ 'ufieldpositer.cpp',
+ 'decNumber.cpp',
+ 'decContext.cpp',
+ 'alphaindex.cpp',
+ 'tznames.cpp',
+ 'tznames_impl.cpp',
+ 'tzgnames.cpp',
+ 'tzfmt.cpp',
+ 'compactdecimalformat.cpp',
+ 'gender.cpp',
+ 'region.cpp',
+ 'scriptset.cpp',
+ 'uregion.cpp',
+ 'reldatefmt.cpp',
+ 'quantityformatter.cpp',
+ 'measunit.cpp',
+ 'measunit_extra.cpp',
+ 'sharedbreakiterator.cpp',
+ 'scientificnumberformatter.cpp',
+ 'dayperiodrules.cpp',
+ 'nounit.cpp',
+ 'number_affixutils.cpp',
+ 'number_compact.cpp',
+ 'number_decimalquantity.cpp',
+ 'number_decimfmtprops.cpp',
+ 'number_fluent.cpp',
+ 'number_formatimpl.cpp',
+ 'number_grouping.cpp',
+ 'number_integerwidth.cpp',
+ 'number_longnames.cpp',
+ 'number_modifiers.cpp',
+ 'number_notation.cpp',
+ 'number_output.cpp',
+ 'number_padding.cpp',
+ 'number_patternmodifier.cpp',
+ 'number_patternstring.cpp',
+ 'number_rounding.cpp',
+ 'number_scientific.cpp',
+ 'number_utils.cpp',
+ 'number_asformat.cpp',
+ 'number_mapper.cpp',
+ 'number_multiplier.cpp',
+ 'number_currencysymbols.cpp',
+ 'number_skeletons.cpp',
+ 'number_capi.cpp',
+ 'double-conversion-string-to-double.cpp',
+ 'double-conversion-double-to-string.cpp',
+ 'double-conversion-bignum-dtoa.cpp',
+ 'double-conversion-bignum.cpp',
+ 'double-conversion-cached-powers.cpp',
+ 'double-conversion-fast-dtoa.cpp',
+ 'double-conversion-strtod.cpp',
+ 'string_segment.cpp',
+ 'numparse_parsednumber.cpp',
+ 'numparse_impl.cpp',
+ 'numparse_symbols.cpp',
+ 'numparse_decimal.cpp',
+ 'numparse_scientific.cpp',
+ 'numparse_currency.cpp',
+ 'numparse_affixes.cpp',
+ 'numparse_compositions.cpp',
+ 'numparse_validators.cpp',
+ 'numrange_fluent.cpp',
+ 'numrange_impl.cpp',
+ 'erarules.cpp',
+ 'formattedvalue.cpp',
+ 'formattedval_iterimpl.cpp',
+ 'formattedval_sbimpl.cpp',
+ 'formatted_string_builder.cpp',
+)
+
+i18n_args = '-DU_I18N_IMPLEMENTATION'
+i18n_link = ['uc']
+i18n_deps = []
diff --git a/subprojects/packagefiles/icu/source/io/meson.build b/subprojects/packagefiles/icu/source/io/meson.build
new file mode 100644
index 000000000..514c0924d
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/io/meson.build
@@ -0,0 +1,18 @@
+io_sources = files(
+ 'locbund.cpp',
+ 'ufile.cpp',
+ 'ufmt_cmn.cpp',
+ 'uprintf.cpp',
+ 'uprntf_p.cpp',
+ 'uscanf.cpp',
+ 'uscanf_p.cpp',
+ 'ustdio.cpp',
+ 'sprintf.cpp',
+ 'sscanf.cpp',
+ 'ustream.cpp',
+ 'ucln_io.cpp',
+)
+
+io_args = '-DU_IO_IMPLEMENTATION'
+io_link = ['i18n', 'uc']
+io_deps = []
diff --git a/subprojects/packagefiles/icu/source/meson.build b/subprojects/packagefiles/icu/source/meson.build
new file mode 100644
index 000000000..a144c9db3
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/meson.build
@@ -0,0 +1,80 @@
+python3 = import('python').find_installation('python3')
+
+incdir = include_directories('common', 'i18n')
+toolinc = include_directories('tools/toolutil')
+ctestinc = include_directories('tools/ctestfw')
+
+subdir('stubdata')
+
+# get sources and dependencies for required libraries
+subdir('common')
+subdir('i18n')
+subdir('io')
+subdir('tools/toolutil')
+
+# create [library name]_lib_stub artifacts linking against stub data
+icu_libs = ['uc', 'i18n', 'io', 'tu']
+foreach lib: icu_libs
+ liblinks = []
+ foreach link: get_variable(lib + '_link')
+ liblinks += get_variable(link + '_lib_stub')
+ endforeach
+ set_variable(lib + '_lib_stub', library(
+ 'icu' + lib + '_stub',
+ get_variable(lib + '_sources'),
+ include_directories: incdir,
+ c_args: get_variable(lib + '_args'),
+ cpp_args: get_variable(lib + '_args'),
+ link_with: liblinks + [stubdata_lib],
+ dependencies: get_variable(lib + '_deps')
+ ))
+endforeach
+
+# build tools and full data library using the libraries linked with the stub library
+subdir('tools/icupkg')
+subdir('tools/pkgdata')
+subdir('data')
+
+# rebuild libraries linking with the full data library
+foreach lib: icu_libs
+ liblinks = []
+ foreach link: get_variable(lib + '_link')
+ liblinks += get_variable(link + '_lib')
+ endforeach
+ set_variable(lib + '_lib', library(
+ 'icu' + lib,
+ get_variable(lib + '_sources'),
+ include_directories: incdir,
+ c_args: get_variable(lib + '_args'),
+ cpp_args: get_variable(lib + '_args'),
+ link_with: liblinks + [data_lib],
+ dependencies: get_variable(lib + '_deps')
+ ))
+endforeach
+
+# icutest not needed for bootstrapping, link with non-boostrap libs
+subdir('tools/ctestfw')
+
+icudata_dep = declare_dependency(link_with: [data_lib],
+ compile_args: usage_args,
+ include_directories: incdir)
+
+icuuc_dep = declare_dependency(link_with: [uc_lib],
+ compile_args: usage_args,
+ include_directories: incdir)
+
+icuio_dep = declare_dependency(link_with: [io_lib],
+ compile_args: usage_args,
+ include_directories: incdir)
+
+icui18n_dep = declare_dependency(link_with: [i18n_lib],
+ compile_args: usage_args,
+ include_directories: incdir)
+
+icutu_dep = declare_dependency(link_with: [tu_lib],
+ compile_args: usage_args,
+ include_directories: incdir)
+
+icutest_dep = declare_dependency(link_with: [test_lib],
+ compile_args: usage_args,
+ include_directories: [incdir, ctestinc])
diff --git a/subprojects/packagefiles/icu/source/stubdata/meson.build b/subprojects/packagefiles/icu/source/stubdata/meson.build
new file mode 100644
index 000000000..599aac88c
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/stubdata/meson.build
@@ -0,0 +1 @@
+stubdata_lib = library('icudata', 'stubdata.cpp', include_directories: incdir)
diff --git a/subprojects/packagefiles/icu/source/tools/ctestfw/meson.build b/subprojects/packagefiles/icu/source/tools/ctestfw/meson.build
new file mode 100644
index 000000000..0deee6d85
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/tools/ctestfw/meson.build
@@ -0,0 +1,18 @@
+test_sources = files(
+ 'ctest.c',
+ 'tstdtmod.cpp',
+ 'testdata.cpp',
+ 'datamap.cpp',
+ 'uperf.cpp',
+ 'ucln_ct.c',
+)
+
+test_args = '-DT_CTEST_IMPLEMENTATION'
+
+test_lib = library('icutest',
+ test_sources,
+ include_directories: [incdir, toolinc],
+ c_args: test_args,
+ cpp_args: test_args,
+ link_with: [data_lib, tu_lib, uc_lib],
+)
diff --git a/subprojects/packagefiles/icu/source/tools/icupkg/meson.build b/subprojects/packagefiles/icu/source/tools/icupkg/meson.build
new file mode 100644
index 000000000..ef96ae33a
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/tools/icupkg/meson.build
@@ -0,0 +1,3 @@
+icupkg = executable('icupkg', 'icupkg.cpp',
+ include_directories: [incdir, toolinc],
+ link_with: [tu_lib_stub, i18n_lib_stub, uc_lib_stub, stubdata_lib])
diff --git a/subprojects/packagefiles/icu/source/tools/pkgdata/meson.build b/subprojects/packagefiles/icu/source/tools/pkgdata/meson.build
new file mode 100644
index 000000000..2bacac6ac
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/tools/pkgdata/meson.build
@@ -0,0 +1,3 @@
+pkgdata = executable('pkgdata', 'pkgdata.cpp', 'pkgtypes.c',
+ include_directories: [incdir, toolinc],
+ link_with: [tu_lib_stub, i18n_lib_stub, uc_lib_stub, stubdata_lib])
diff --git a/subprojects/packagefiles/icu/source/tools/toolutil/meson.build b/subprojects/packagefiles/icu/source/tools/toolutil/meson.build
new file mode 100644
index 000000000..cdbecb231
--- /dev/null
+++ b/subprojects/packagefiles/icu/source/tools/toolutil/meson.build
@@ -0,0 +1,30 @@
+tu_sources = files(
+ 'filestrm.cpp',
+ 'package.cpp',
+ 'pkgitems.cpp',
+ 'swapimpl.cpp',
+ 'toolutil.cpp',
+ 'unewdata.cpp',
+ 'collationinfo.cpp',
+ 'denseranges.cpp',
+ 'ucm.cpp',
+ 'ucmstate.cpp',
+ 'uoptions.cpp',
+ 'uparse.cpp',
+ 'ucbuf.cpp',
+ 'xmlparser.cpp',
+ 'writesrc.cpp',
+ 'pkg_icu.cpp',
+ 'pkg_genc.cpp',
+ 'pkg_gencmn.cpp',
+ 'ppucd.cpp',
+ 'flagparser.cpp',
+ 'filetools.cpp',
+ 'udbgutil.cpp',
+ 'dbgutil.cpp',
+ 'ucln_tu.cpp',
+)
+
+tu_args = ['-DU_TOOLUTIL_IMPLEMENTATION']
+tu_link = ['uc', 'i18n']
+tu_deps = []
diff --git a/subprojects/packagefiles/nasm/meson.build b/subprojects/packagefiles/nasm/meson.build
new file mode 100644
index 000000000..0f2b11986
--- /dev/null
+++ b/subprojects/packagefiles/nasm/meson.build
@@ -0,0 +1,3 @@
+project('nasm', version: '2.15.05')
+
+nasm = find_program('nasm.exe', dirs: meson.current_source_dir())
diff --git a/subprojects/wxWidgets.wrap b/subprojects/wxWidgets.wrap
new file mode 100644
index 000000000..949a03927
--- /dev/null
+++ b/subprojects/wxWidgets.wrap
@@ -0,0 +1,5 @@
+[wrap-git]
+directory = wxWidgets
+url = https://github.com/wxWidgets/wxWidgets.git
+revision = v3.1.4
+clone-recursive = true
diff --git a/subprojects/zlib.wrap b/subprojects/zlib.wrap
new file mode 100644
index 000000000..ce20fb053
--- /dev/null
+++ b/subprojects/zlib.wrap
@@ -0,0 +1,12 @@
+[wrap-file]
+directory = zlib-1.2.11
+source_url = http://zlib.net/fossils/zlib-1.2.11.tar.gz
+source_filename = zlib-1.2.11.tar.gz
+source_hash = c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
+patch_url = https://wrapdb.mesonbuild.com/v1/projects/zlib/1.2.11/5/get_zip
+patch_filename = zlib-1.2.11-5-wrap.zip
+patch_hash = 728c8e24acbc2e6682fbd950fec39e2fc77528af361adb87259f8a8511434004
+
+[provide]
+zlib = zlib_dep
+
diff --git a/tests/Makefile b/tests/Makefile
deleted file mode 100644
index 137430854..000000000
--- a/tests/Makefile
+++ /dev/null
@@ -1,36 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-GTEST_ROOT ?= $(TOP)vendor/googletest
-GTEST_FILE := ${GTEST_ROOT}/src/gtest-all
-
-run_PCH := $(d)support/tests_pre.h
-run_CPPFLAGS := -I$(TOP)libaegisub/include -I$(TOP) -I$(d)support \
- -I$(GTEST_ROOT) -I$(GTEST_ROOT)/include $(CPPFLAGS_BOOST) $(CFLAGS_LUA)
-run_CXXFLAGS := -Wno-unused-value -Wno-sign-compare
-run_LIBS := $(LIBS_BOOST) $(LIBS_ICU) $(LIBS_UCHARDET) $(LIBS_PTHREAD)
-run_OBJ := \
- $(patsubst %.cpp,%.o,$(wildcard $(d)tests/*.cpp)) \
- $(d)support/main.o \
- $(d)support/util.o \
- $(TOP)lib/libaegisub.a \
- $(GTEST_FILE).o
-
-# This bit of goofiness is to make it only try to build the tests if google
-# test can be found and silently skip it if not, by using $(wildcard) to check
-# for file existence
-PROGRAM += $(subst $(GTEST_FILE).cc,$(d)run,$(wildcard $(GTEST_FILE).cc))
-
-ifeq (yes, $(BUILD_DARWIN))
-run_LIBS += -framework ApplicationServices -framework Foundation
-endif
-
-$(d)data: $(d)setup.sh
- cd $(TOP)tests; ./setup.sh
-
-gtest_filter ?= *
-test-libaegisub: $(d)run $(d)data
- cd $(TOP)tests; ./run --gtest_filter="$(gtest_filter)"
-
-test: $(subst $(GTEST_FILE).cc,test-libaegisub,$(wildcard $(GTEST_FILE).cc))
-
-include $(TOP)Makefile.target
diff --git a/tools/Makefile b/tools/Makefile
deleted file mode 100644
index de6166a1e..000000000
--- a/tools/Makefile
+++ /dev/null
@@ -1,17 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../header.mk
-
-osx-bundle-restart-helper_OBJ := $(d)osx-bundle-restart-helper.o
-
-ifeq (yes, $(BUILD_DARWIN))
-PROGRAM += $(d)osx-bundle-restart-helper
-endif
-
-repack-thes-dict_OBJ := $(d)repack-thes-dict.o $(TOP)lib/libaegisub.a
-repack-thes-dict_LIBS := $(LIBS_BOOST) $(LIBS_ICU) $(LIBS_PTHREAD)
-repack-thes-dict_CPPFLAGS := -I$(TOP) -I$(TOP)libaegisub/include $(CFLAGS_ICU)
-
-PROGRAM += $(d)repack-thes-dict
-
-$(TOP)tools/respack.lua: $(shell command -v "$(BIN_LUA)")
-
-include $(TOP)Makefile.target
diff --git a/tools/osx-bundle.sh b/tools/osx-bundle.sh
index eb82b554f..dbec657d8 100755
--- a/tools/osx-bundle.sh
+++ b/tools/osx-bundle.sh
@@ -2,22 +2,25 @@
set -e
-PKG_DIR=Aegisub.app
-SKEL_DIR="packages/osx_bundle"
-AEGISUB_BIN="${1}"
-SRCDIR=`pwd`
-HOME_DIR=`echo ~`
-WX_PREFIX=`${2} --prefix`
-FONTCONFIG_CONF_DIR="${3}"
+SRC_DIR="${1}"
+BUILD_DIR="${2}"
+WX_PREFIX=`${3} --prefix`
+FONTCONFIG_CONF_DIR="${4}"
+DICT_DIR="${5}"
+MESON_BUILD_OSX_BUNDLE="${6}"
-if ! test -d packages/osx_bundle; then
- echo
- echo "Make sure you're in the toplevel source directory"
+if [ "${MESON_BUILD_OSX_BUNDLE}" != "TRUE" ]; then
+ echo "Project not built with \`build_osx_bundle\`"
+ echo "Please run \`meson configure -Dbuild_osx_bundle=true\` and rebuild"
exit 1
fi
+PKG_DIR="${BUILD_DIR}/Aegisub.app"
+SKEL_DIR="${SRC_DIR}/packages/osx_bundle"
+
if test -d "${PKG_DIR}"; then
rm -rf "${PKG_DIR}"
+ echo "Removing old Aegisub.app"
fi
echo
@@ -31,41 +34,34 @@ mkdir -v "${PKG_DIR}/Contents/SharedSupport/dictionaries"
echo
echo "---- Copying Skel Files ----"
-if ! test -f "tools/osx-bundle.sed"; then
+if ! test -f "${BUILD_DIR}/osx-bundle.sed"; then
echo
- echo "NOT FOUND: tools/osx-bundle.sed"
+ echo "NOT FOUND: ${BUILD_DIR}/osx-bundle.sed"
exit 1
fi
# used by osx-bundle.sed
-find po -name *.po | sed 's/.*\/\(.*\)\.po/ \1<\/string>/; s/RS/YU/' > languages
+find "${SRC_DIR}/po" -name *.po | sed 's/.*\/\(.*\)\.po/ \1<\/string>/; s/RS/YU/' > "${BUILD_DIR}/languages"
-find ${SKEL_DIR} -type f -not -regex ".*.svn.*"
-cp ${SKEL_DIR}/Contents/Resources/*.icns "${PKG_DIR}/Contents/Resources"
-cat ${SKEL_DIR}/Contents/Info.plist | sed -f tools/osx-bundle.sed > "${PKG_DIR}/Contents/Info.plist"
+#find "${SKEL_DIR}" -type f -not -regex ".*.svn.*"
+cp -v ${SKEL_DIR}/Contents/Resources/*.icns "${PKG_DIR}/Contents/Resources"
+cat "${SKEL_DIR}/Contents/Info.plist" | sed -f "${BUILD_DIR}/osx-bundle.sed" > "${PKG_DIR}/Contents/Info.plist"
-rm languages
+rm "${BUILD_DIR}/languages"
echo
echo "---- Installing files ----"
-make install \
- DESTDIR="${PKG_DIR}/Contents" \
- P_DATA="/SharedSupport" \
- P_DOC="/SharedSupport/doc" \
- P_LOCALE="/Resources" \
- P_BINDIR="/MacOS"
+CURRENT_DIR=`pwd`
+cd ${BUILD_DIR}
+ninja install
+cd ${CURRENT_DIR}
echo
echo "---- Copying dictionaries ----"
-if test -z "${DICT_DIR}"; then
- DICT_DIR="${HOME_DIR}/dict"
-fi
-
-if test -d "${DICT_DIR}"; then
- cp -v ${DICT_DIR}/* "${PKG_DIR}/Contents/SharedSupport/dictionaries"
+if test -f "${DICT_DIR}"; then
+ cp -v "${DICT_DIR}/*" "${PKG_DIR}/Contents/SharedSupport/dictionaries"
else
- echo "WARNING: Dictionaries not found, please set $$DICT_DIR to a directiory"
- echo " where the *.aff and *.dic files can be found"
+ echo "Specified dictionary directory ${DICT_DIR} not found!"
fi
echo
@@ -74,14 +70,15 @@ echo "---- Copying Aegisub locale files ----"
# internal so we don't need an aegisub.mo file.
mkdir -vp "${PKG_DIR}/Contents/Resources/en.lproj"
+# FIXME
# 10.8 wants sr_YU rather than sr_RS
-mv "${PKG_DIR}/Contents/Resources/sr_RS.lproj" "${PKG_DIR}/Contents/Resources/sr_YU.lproj"
-mv "${PKG_DIR}/Contents/Resources/sr_RS@latin.lproj" "${PKG_DIR}/Contents/Resources/sr_YU@latin.lproj"
+#mv "${PKG_DIR}/Contents/Resources/sr_RS.lproj" "${PKG_DIR}/Contents/Resources/sr_YU.lproj"
+#mv "${PKG_DIR}/Contents/Resources/sr_RS@latin.lproj" "${PKG_DIR}/Contents/Resources/sr_YU@latin.lproj"
echo
echo "---- Copying WX locale files ----"
-for i in `ls -1 po/*.mo|sed "s|po/\(.*\).mo|\1|"`; do
+for i in `ls -1 ${SRC_DIR}/po/*.mo|sed "s|po/\(.*\).mo|\1|"`; do
WX_MO="${WX_PREFIX}/share/locale/${i}/LC_MESSAGES/wxstd.mo"
if ! test -f "${WX_MO}"; then
@@ -95,10 +92,9 @@ for i in `ls -1 po/*.mo|sed "s|po/\(.*\).mo|\1|"`; do
fi
done
+echo
+echo "---- Fixing libraries ----"
+sudo python "${SRC_DIR}/tools/osx-fix-libs.py" "${PKG_DIR}/Contents/MacOS/aegisub" || exit $?
echo
-echo "---- Libraries ----"
-python tools/osx-fix-libs.py "${PKG_DIR}/Contents/MacOS/aegisub" || exit $?
-
-echo
-echo "Done Creating \"${PKG_DIR}\""
+echo "Done creating \"${PKG_DIR}\""
diff --git a/tools/osx-fix-libs.py b/tools/osx-fix-libs.py
index 6e14c9064..845a56b97 100755
--- a/tools/osx-fix-libs.py
+++ b/tools/osx-fix-libs.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
import re
import sys
@@ -32,21 +32,21 @@ def collectlibs(lib, masterlist, targetdir):
badlist.append(l)
if ((not is_sys_lib(l)) or is_bad_lib(l)) and not l in masterlist:
locallist.append(l)
- print "found %s:" % l
+ print("found %s:" % l)
check = l
link_list = []
while check:
if os.path.isfile(check) and not os.path.islink(check):
os.system("cp '%s' '%s'" % (check, targetdir))
- print " FILE %s ... copied to target" % check
+ print(" FILE %s ... copied to target" % check)
if link_list:
for link in link_list:
link_map[link] = os.path.basename(check)
break
if os.path.islink(check):
- print " LINK %s" % check
+ print(" LINK %s" % check)
link_list.append(os.path.basename(check))
check = os.path.dirname(check) + "/" + os.readlink(check)
@@ -60,20 +60,20 @@ def collectlibs(lib, masterlist, targetdir):
exit;
binname = sys.argv[1]
targetdir = os.path.dirname(binname)
-print "Searching for libraries in ", binname, "..."
+print("Searching for libraries in ", binname, "...")
libs = [binname]
collectlibs(sys.argv[1], libs, targetdir)
-print
-print "System libraries used..."
+print()
+print("System libraries used...")
goodlist.sort()
for l in goodlist:
- print l
+ print(l)
-print
-print "Fixing library install names..."
+print()
+print("Fixing library install names...")
in_tool_cmdline = "install_name_tool "
for lib in libs:
libbase = os.path.basename(lib)
@@ -85,19 +85,19 @@ for lib in libs:
if libbase in link_map:
libbase = link_map[libbase]
- print "%s -> @executable_path/%s (REMAPPED)" % (lib, libbase)
+ print("%s -> @executable_path/%s (REMAPPED)" % (lib, libbase))
else:
- print "%s -> @executable_path/%s" % (lib, libbase)
+ print("%s -> @executable_path/%s" % (lib, libbase))
os.system("%s -id '@executable_path/%s' '%s/%s'" % (in_tool_cmdline, libbase, targetdir, libbase))
sys.stdout.flush()
if badlist:
- print
- print "WARNING: The following libraries have blacklisted paths:"
+ print()
+ print("WARNING: The following libraries have blacklisted paths:")
for lib in sorted(badlist):
- print lib
- print "These paths normally have files from a package manager, which means that end result may not work if copied to another machine."
+ print(lib)
+ print("These paths normally have files from a package manager, which means that end result may not work if copied to another machine.")
-print
-print "All done!"
+print()
+print("All done!")
diff --git a/tools/respack.py b/tools/respack.py
new file mode 100755
index 000000000..c1c78fb73
--- /dev/null
+++ b/tools/respack.py
@@ -0,0 +1,37 @@
+#!/usr/bin/env python3
+
+import sys
+import os
+
+manifestfile, cppfile, hfile = sys.argv[1:]
+
+with open(manifestfile, 'r') as manifest:
+ files = dict((x.strip(), None) for x in manifest.readlines() if x.strip() != '')
+
+sourcepath = os.path.split(manifestfile)[0]
+buildpath = os.path.split(cppfile)[0]
+
+for k in files:
+ sf = os.path.join(sourcepath, k)
+ bf = os.path.join(buildpath, k)
+
+ if os.path.isfile(sf):
+ files[k] = sf
+ elif os.path.isfile(bf):
+ files[k] = bf
+ else:
+ print("{}: Failed to open '{}'".format(manifestfile, k))
+ sys.exit(1)
+
+with open(cppfile, 'w') as cpp:
+ cpp.write('#include "libresrc.h"\n')
+ with open(hfile, 'w') as h:
+
+ for k in files:
+ with open(files[k], 'rb') as f:
+ data = [str(int(x)) for x in f.read()]
+
+ datastr = ','.join(data)
+ name = os.path.splitext(os.path.basename(k))[0]
+ cpp.write('const unsigned char {}[] = {{{}}};\n'.format(name, datastr))
+ h.write('extern const unsigned char {}[{}];\n'.format(name, len(data)))
diff --git a/tools/strip-icu.py b/tools/strip-icu.py
index e26e40c17..915a615ed 100644
--- a/tools/strip-icu.py
+++ b/tools/strip-icu.py
@@ -15,7 +15,7 @@
# Aegisub Project http://www.aegisub.org/
# A script to strip all of the data we don't use out of ICU's data files
-# Run from $ICU_ROOT/source/data
+# Run from $ICU_ROOT/icu4c/source/data
from __future__ import unicode_literals
import re
@@ -25,10 +25,10 @@ import os
def delete_matching(filename, strs):
exprs = [re.compile(s) for s in strs]
- with open(filename) as f:
- lines = [line for line in f if not any(r.match(line.decode('utf-8')) for r in exprs)]
+ with open(filename, encoding='utf-8') as f:
+ lines = [line for line in f if not any(r.match(line) for r in exprs)]
- with open(filename, 'w') as f:
+ with open(filename, 'w', encoding='utf-8') as f:
for line in lines:
f.write(line)
@@ -36,7 +36,7 @@ REMOVE_SUBDIRS=['LOCSRCDIR', 'CURRSRCDIR', 'ZONESRCDIR', 'COLSRCDIR', 'RBNFSRCDI
delete_matching('Makefile.in', ['^-include .*%s' % s for s in REMOVE_SUBDIRS])
delete_matching('Makefile.in', ['^CNV_FILES'])
-with open('misc/misclocal.mk', 'w') as f:
+with open('misc/misclocal.mk', 'w', encoding='utf-8') as f:
f.write('MISC_SOURCE = supplementalData.txt likelySubtags.txt icuver.txt icustd.txt metadata.txt')
# Remove data we don't need from the lang and region files
@@ -45,8 +45,7 @@ def parse_txt(filename):
cur = root
stack = [root]
comment = False
- for line in open(filename):
- line = line.decode('utf-8')
+ for line in open(filename, encoding='utf-8'):
line = line.strip()
if len(line) == 0:
continue
@@ -72,15 +71,13 @@ def parse_txt(filename):
continue
m = re.match('(.*){"(.*)"}', line)
- if not m:
- print line
- else:
+ if m:
cur[m.group(1)] = m.group(2)
return root
def remove_sections(root):
- for child in root.itervalues():
+ for child in root.values():
child.pop('Keys', None)
child.pop('LanguagesShort', None)
child.pop('Types', None)
@@ -91,7 +88,7 @@ def remove_sections(root):
child.pop('Scripts%stand-alone', None)
def remove_languages(root):
- for lang, child in root.iteritems():
+ for lang, child in root.items():
# We only care about a language's name in that language
lang = lang.split('_')[0]
trimmed = {}
@@ -103,7 +100,7 @@ def remove_languages(root):
# Scripts which are actually used by stuff
SCRIPTS = ['Cyrl', 'Latn', 'Arab', 'Vaii', 'Hans', 'Hant']
def remove_scripts(root):
- for lang, child in root.iteritems():
+ for lang, child in root.items():
v = child.get('Scripts')
if not v:
continue
@@ -121,20 +118,20 @@ def write_dict(name, value, out, indent):
child_indent = indent + ' '
out.write(indent)
- out.write(name.encode('utf-8'))
+ out.write(name)
out.write('{\n')
for k in sorted(value.keys()):
v = value[k]
if type(v) == dict:
write_dict(k, v, out, child_indent)
else:
- out.write(('%s%s{"%s"}\n' % (child_indent, k, v)).encode('utf-8'))
+ out.write(('%s%s{"%s"}\n' % (child_indent, k, v)))
out.write(indent)
out.write('}\n')
def write_file(root, filename):
- with open(filename, 'w') as f:
- for k, v in root.iteritems():
+ with open(filename, 'w', encoding='utf-8') as f:
+ for k, v in root.items():
write_dict(k, v, f, '')
def minify_lang(filename):
@@ -287,7 +284,7 @@ def gather_regions():
REGIONS = gather_regions()
def remove_countries(root):
- for lang, child in root.iteritems():
+ for lang, child in root.items():
v = child.get('Countries', {})
if not v: continue
diff --git a/tools/version.ps1 b/tools/version.ps1
new file mode 100644
index 000000000..7a05b7bf5
--- /dev/null
+++ b/tools/version.ps1
@@ -0,0 +1,89 @@
+#!/usr/bin/env powershell
+
+param (
+ [Parameter(Position = 0, Mandatory = $false)]
+ [string]$BuildRoot = $null,
+ [Parameter(Position = 1, Mandatory = $false)]
+ [string]$SourceRoot = $null
+)
+
+$lastSvnRevision = 6962
+$lastSvnHash = '16cd907fe7482cb54a7374cd28b8501f138116be'
+$defineNumberMatch = [regex] '^#define\s+(\w+)\s+(\d+)$'
+$defineStringMatch = [regex] "^#define\s+(\w+)\s+[`"']?(.+?)[`"']?$"
+$semVerMatch = [regex] 'v?(\d+)\.(\d+).(\d+)(?:-(\w+))?'
+
+$repositoryRootPath = Join-Path $PSScriptRoot .. | Resolve-Path
+if (!(git -C $repositoryRootPath rev-parse --is-inside-work-tree 2>$null)) {
+ throw "$repositoryRootPath is not a git repository"
+}
+
+if ($BuildRoot -eq $null -or $BuildRoot.Trim() -eq "") {
+ $BuildRoot = $repositoryRootPath
+}
+
+# support legacy in-tree builds
+if ([System.IO.Path]::GetFullPath([System.IO.Path]::Combine((pwd).Path, $BuildRoot)) -eq
+ [System.IO.Path]::GetFullPath([System.IO.Path]::Combine((pwd).Path, $repositoryRootPath))) {
+ $BuildRoot = Join-Path $repositoryRootPath 'build'
+ }
+$gitVersionHeaderPath = Join-Path $BuildRoot 'git_version.h'
+
+$version = @{}
+if (Test-Path $gitVersionHeaderPath) {
+ Get-Content $gitVersionHeaderPath | %{$_.Trim()} | ?{$_} | %{
+ switch -regex ($_) {
+ $defineNumberMatch {
+ $version[$Matches[1]] = [int]$Matches[2];
+ }
+ $defineStringMatch {
+ $version[$Matches[1]] = $Matches[2];
+ }
+ }
+ }
+}
+
+$gitRevision = $lastSvnRevision + ((git -C $repositoryRootPath log --pretty=oneline "$($lastSvnHash)..HEAD" 2>$null | Measure-Object).Count)
+$gitBranch = git -C $repositoryRootPath symbolic-ref --short HEAD 2>$null
+$gitHash = git -C $repositoryRootPath rev-parse --short HEAD 2>$null
+$gitVersionString = $gitRevision, $gitBranch, $gitHash -join '-'
+$exactGitTag = git -C $repositoryRootPath describe --exact-match --tags 2>$null
+
+if ($gitVersionString -eq $version['BUILD_GIT_VERSION_STRING']) {
+ exit 0
+}
+
+if ($exactGitTag -match $semVerMatch) {
+ $version['TAGGED_RELEASE'] = $true
+ $version['RESOURCE_BASE_VERSION'] = $Matches[1..3]
+ $version['INSTALLER_VERSION'] = $gitVersionString = ($Matches[1..3] -join '.') + @("-$($Matches[4])",'')[!$Matches[4]]
+} else {
+ foreach ($rev in (git -C $repositoryRootPath rev-list --tags 2>$null)) {
+ $tag = git -C $repositoryRootPath describe --exact-match --tags $rev 2>$null
+ if ($tag -match $semVerMatch) {#
+ $version['TAGGED_RELEASE'] = $false
+ $version['RESOURCE_BASE_VERSION'] = $Matches[1..3]
+ $version['INSTALLER_VERSION'] = ($Matches[1..3] -join '.')
+ break;
+ }
+ }
+}
+
+$version['BUILD_GIT_VERSION_NUMBER'] = $gitRevision
+$version['BUILD_GIT_VERSION_STRING'] = $gitVersionString
+
+$version.GetEnumerator() | %{
+ $type = $_.Value.GetType()
+ $value = $_.Value
+ $fmtValue = switch ($type) {
+ ([string]) {"`"$value`""}
+ ([int]) {$value.ToString()}
+ ([bool]) {([int]$value).ToString()}
+ ([object[]]) {$value -join ', '}
+ default {
+ Write-Host "no format known for type '$type' - trying default string conversion" -ForegroundColor Red
+ {"`"$($value.ToString())`""}
+ }
+ }
+ "`n#define $($_.Key) $($fmtValue)"
+} | Out-File -FilePath $gitVersionHeaderPath -Encoding utf8
diff --git a/build/version.sh b/tools/version.sh
similarity index 68%
rename from build/version.sh
rename to tools/version.sh
index 8cea0a3f3..485f45113 100755
--- a/build/version.sh
+++ b/tools/version.sh
@@ -1,16 +1,16 @@
-srcdir="$1"
+builddir="$1"
+srcdir="$2"
# If no git repo try to read from the existing git_version.h, for building from tarballs
+version_h_path="${builddir}/git_version.h"
if ! test -d "${srcdir}/.git"; then
- version_h_path="${srcdir}/build/git_version.h"
if test -f "${version_h_path}"; then
while read line; do
set -- $line
export $2=$(echo $3 | sed 's/"//g')
done < "${version_h_path}"
if test x$BUILD_GIT_VERSION_NUMBER != x -a x$BUILD_GIT_VERSION_STRING != x; then
- export VERSION_SOURCE="from cached git_version.h"
- return 0
+ exit 0
else
echo "invalid git_version.h"
exit 2
@@ -24,7 +24,7 @@ fi
last_svn_revision=6962
last_svn_hash="16cd907fe7482cb54a7374cd28b8501f138116be"
-git_revision=$(expr $last_svn_revision + $(git log --pretty=oneline $last_svn_hash..HEAD 2>/dev/null | wc -l))
+git_revision=$(expr $last_svn_revision + $(git rev-list --count $last_svn_hash..HEAD))
git_version_str=$(git describe --exact-match 2> /dev/null)
installer_version='0.0.0'
resource_version='0, 0, 0'
@@ -52,9 +52,6 @@ new_version_h="\
#define INSTALLER_VERSION \"${installer_version}\"
#define RESOURCE_BASE_VERSION ${resource_version}"
-# may not exist yet for out of tree builds
-mkdir -p build
-version_h_path="build/git_version.h"
# Write it only if it's changed to avoid spurious rebuilds
# This bizzare comparison method is due to that newlines in shell variables are very exciting
@@ -63,17 +60,3 @@ in
"${new_version_h}");;
*) echo "${new_version_h}" > "${version_h_path}"
esac
-
-export BUILD_GIT_VERSION_NUMBER="${git_revision}"
-export BUILD_GIT_VERSION_STRING="${git_version_str}"
-export VERSION_SOURCE="from git"
-
-cat << EOF > build/git_version.xml
-
-
-
- ${git_revision}
- ${git_version_str}
-
-
-EOF
diff --git a/tools/win-installer-setup.ps1 b/tools/win-installer-setup.ps1
new file mode 100644
index 000000000..42ee0cc42
--- /dev/null
+++ b/tools/win-installer-setup.ps1
@@ -0,0 +1,80 @@
+#!/usr/bin/env powershell
+
+param (
+ [Parameter(Position = 0)]
+ [string]$BuildRoot,
+ [Parameter(Position = 1)]
+ [string]$SourceRoot
+)
+
+$InstallerDir = Join-Path $SourceRoot "packages\win_installer" | Resolve-Path
+$DepsDir = Join-Path $BuildRoot "installer-deps"
+if (!(Test-Path $DepsDir)) {
+ New-Item -ItemType Directory -Path $DepsDir
+}
+
+$Env:BUILD_ROOT = $BuildRoot
+$Env:SOURCE_ROOT = $SourceRoot
+
+Set-Location $DepsDir
+
+# DepCtrl
+if (!(Test-Path DependencyControl)) {
+ git clone https://github.com/TypesettingTools/DependencyControl.git
+}
+
+# YUtils
+if (!(Test-Path YUtils)) {
+ git clone https://github.com/TypesettingTools/YUtils.git
+}
+
+# luajson
+if (!(Test-Path luajson)) {
+ git clone https://github.com/harningt/luajson.git
+}
+
+# Avisynth
+if (!(Test-Path AviSynthPlus64)) {
+ $avsReleases = Invoke-WebRequest "https://api.github.com/repos/AviSynth/AviSynthPlus/releases/latest" -UseBasicParsing | ConvertFrom-Json
+ $avsUrl = $avsReleases.assets[0].browser_download_url
+ Invoke-WebRequest $avsUrl -OutFile AviSynthPlus.7z -UseBasicParsing
+ 7z x AviSynthPlus.7z
+ Rename-Item (Get-ChildItem -Filter "AviSynthPlus_*" -Directory) AviSynthPlus64
+ Remove-Item AviSynthPlus.7z
+}
+
+# VSFilter
+if (!(Test-Path VSFilter)) {
+ $vsFilterDir = New-Item -ItemType Directory VSFilter
+ Set-Location $vsFilterDir
+ $vsFilterReleases = Invoke-WebRequest "https://api.github.com/repos/pinterf/xy-VSFilter/releases/latest" -UseBasicParsing | ConvertFrom-Json
+ $vsFilterUrl = $vsFilterReleases.assets[0].browser_download_url
+ Invoke-WebRequest $vsFilterUrl -OutFile VSFilter.7z -UseBasicParsing
+ 7z x VSFilter.7z
+ Remove-Item VSFilter.7z
+ Set-Location $DepsDir
+}
+
+# ffi-experiments
+if (!(Test-Path ffi-experiments)) {
+ Get-Command "moonc" # check to ensure Moonscript is present
+ git clone https://github.com/TypesettingTools/ffi-experiments.git
+ Set-Location ffi-experiments
+ meson build -Ddefault_library=static
+ meson compile -C build
+ Set-Location $DepsDir
+}
+
+# VC++ redistributable
+if (!(Test-Path VC_redist)) {
+ $redistDir = New-Item -ItemType Directory VC_redist
+ Invoke-WebRequest https://aka.ms/vs/16/release/VC_redist.x64.exe -OutFile "$redistDir\VC_redist.x64.exe" -UseBasicParsing
+}
+
+# TODO dictionaries
+
+# TODO localization
+
+# Invoke InnoSetup
+$IssUrl = Join-Path $InstallerDir "aegisub_depctrl.iss"
+iscc $IssUrl
diff --git a/vendor/boost b/vendor/boost
deleted file mode 160000
index 9ccd3390c..000000000
--- a/vendor/boost
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 9ccd3390c8e9ef05f4cb681d15b2e14eac48886e
diff --git a/vendor/ffmpeg b/vendor/ffmpeg
deleted file mode 160000
index d290bb0c5..000000000
--- a/vendor/ffmpeg
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit d290bb0c540425e937d11ed88e22c68ab97c57eb
diff --git a/vendor/ffms2 b/vendor/ffms2
deleted file mode 160000
index f3c6b008b..000000000
--- a/vendor/ffms2
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit f3c6b008b53719dcac032293e3a42a3164c8d7ec
diff --git a/vendor/fftw b/vendor/fftw
deleted file mode 160000
index d68ca6315..000000000
--- a/vendor/fftw
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit d68ca6315cafa5b8ff9367d9375314f32b7dbd81
diff --git a/vendor/freetype2 b/vendor/freetype2
deleted file mode 160000
index 51fee6558..000000000
--- a/vendor/freetype2
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 51fee655837ef99084767873266aaddfa3a31da5
diff --git a/vendor/googletest b/vendor/googletest
deleted file mode 160000
index cc0116f14..000000000
--- a/vendor/googletest
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cc0116f14aa8ad9ab76226d082a96b1005221816
diff --git a/vendor/icu b/vendor/icu
deleted file mode 160000
index 061be17bd..000000000
--- a/vendor/icu
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 061be17bd589bb65d37b70c23513ab530cad7821
diff --git a/vendor/libass b/vendor/libass
deleted file mode 160000
index cfa1a61e3..000000000
--- a/vendor/libass
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cfa1a61e39f218fe4dc288ddf44b85200ff35fdd
diff --git a/vendor/luabins/Makefile b/vendor/luabins/Makefile
deleted file mode 100644
index b4b01036e..000000000
--- a/vendor/luabins/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../../header.mk
-
-luabins_OBJ := $(patsubst %.c,%.o,$(sort $(wildcard $(d)src/*.c)))
-luabins_CPPFLAGS := $(CFLAGS_LUA)
-
-LIB += luabins
-
-include $(TOP)Makefile.target
diff --git a/vendor/luajit/Makefile b/vendor/luajit/Makefile
deleted file mode 100644
index 67c67f727..000000000
--- a/vendor/luajit/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-include $(dir $(lastword $(MAKEFILE_LIST)))../../header.mk
-
-LUAJIT_DIR := $(abspath $(d)src)
-
-$(LIBS_LUA): $(LUAJIT_DIR)/host/minilua
- $(MAKE) -C $(LUAJIT_DIR) amalg V=$(V)
-
-$(LUAJIT_DIR)/host/minilua:
- $(MAKE) -C $(LUAJIT_DIR) host/minilua V=$(V)
-
-clean-luajit:
- $(MAKE) -C $(LUAJIT_DIR) clean
-
-clean: clean-luajit
-distclean: clean-luajit
diff --git a/vendor/luajit/src/Makefile b/vendor/luajit/src/Makefile
deleted file mode 100644
index 37c7da8ec..000000000
--- a/vendor/luajit/src/Makefile
+++ /dev/null
@@ -1,694 +0,0 @@
-##############################################################################
-# LuaJIT Makefile. Requires GNU Make.
-#
-# Please read doc/install.html before changing any variables!
-#
-# Suitable for POSIX platforms (Linux, *BSD, OSX etc.).
-# Also works with MinGW and Cygwin on Windows.
-# Please check msvcbuild.bat for building with MSVC on Windows.
-#
-# Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
-##############################################################################
-
-MAJVER= 2
-MINVER= 0
-RELVER= 4
-ABIVER= 5.1
-NODOTABIVER= 51
-
-##############################################################################
-############################# COMPILER OPTIONS #############################
-##############################################################################
-# These options mainly affect the speed of the JIT compiler itself, not the
-# speed of the JIT-compiled code. Turn any of the optional settings on by
-# removing the '#' in front of them. Make sure you force a full recompile
-# with "make clean", followed by "make" if you change any options.
-#
-# LuaJIT builds as a native 32 or 64 bit binary by default.
-CC= gcc
-#
-# Use this if you want to force a 32 bit build on a 64 bit multilib OS.
-#CC= gcc -m32
-#
-# Since the assembler part does NOT maintain a frame pointer, it's pointless
-# to slow down the C part by not omitting it. Debugging, tracebacks and
-# unwinding are not affected -- the assembler part has frame unwind
-# information and GCC emits it where needed (x64) or with -g (see CCDEBUG).
-CCOPT= -O2 -fomit-frame-pointer
-# Use this if you want to generate a smaller binary (but it's slower):
-#CCOPT= -Os -fomit-frame-pointer
-# Note: it's no longer recommended to use -O3 with GCC 4.x.
-# The I-Cache bloat usually outweighs the benefits from aggressive inlining.
-#
-# Target-specific compiler options:
-#
-# x86 only: it's recommended to compile at least for i686. Better yet,
-# compile for an architecture that has SSE2, too (-msse -msse2).
-#
-# x86/x64 only: For GCC 4.2 or higher and if you don't intend to distribute
-# the binaries to a different machine you could also use: -march=native
-#
-CCOPT_x86= -march=i686
-CCOPT_x64=
-CCOPT_arm=
-CCOPT_ppc=
-CCOPT_ppcspe=
-CCOPT_mips=
-#
-#CCDEBUG=
-# Uncomment the next line to generate debug information:
-CCDEBUG= -g
-#
-CCWARN= -Wall -Wno-unused-function
-# Uncomment the next line to enable more warnings:
-#CCWARN+= -Wextra -Wdeclaration-after-statement -Wredundant-decls -Wshadow -Wpointer-arith
-#
-##############################################################################
-
-##############################################################################
-################################ BUILD MODE ################################
-##############################################################################
-# The default build mode is mixed mode on POSIX. On Windows this is the same
-# as dynamic mode.
-#
-# Mixed mode creates a static + dynamic library and a statically linked luajit.
-#BUILDMODE= mixed
-#
-# Static mode creates a static library and a statically linked luajit.
-BUILDMODE= static
-#
-# Dynamic mode creates a dynamic library and a dynamically linked luajit.
-# Note: this executable will only run when the library is installed!
-#BUILDMODE= dynamic
-#
-##############################################################################
-
-##############################################################################
-################################# FEATURES #################################
-##############################################################################
-# Enable/disable these features as needed, but make sure you force a full
-# recompile with "make clean", followed by "make".
-XCFLAGS=-Igen
-#
-# Permanently disable the FFI extension to reduce the size of the LuaJIT
-# executable. But please consider that the FFI library is compiled-in,
-# but NOT loaded by default. It only allocates any memory, if you actually
-# make use of it.
-#XCFLAGS+= -DLUAJIT_DISABLE_FFI
-#
-# Features from Lua 5.2 that are unlikely to break existing code are
-# enabled by default. Some other features that *might* break some existing
-# code (e.g. __pairs or os.execute() return values) can be enabled here.
-# Note: this does not provide full compatibility with Lua 5.2 at this time.
-XCFLAGS+= -DLUAJIT_ENABLE_LUA52COMPAT
-#
-# Disable the JIT compiler, i.e. turn LuaJIT into a pure interpreter.
-#XCFLAGS+= -DLUAJIT_DISABLE_JIT
-#
-# Some architectures (e.g. PPC) can use either single-number (1) or
-# dual-number (2) mode. Uncomment one of these lines to override the
-# default mode. Please see LJ_ARCH_NUMMODE in lj_arch.h for details.
-#XCFLAGS+= -DLUAJIT_NUMMODE=1
-#XCFLAGS+= -DLUAJIT_NUMMODE=2
-#
-##############################################################################
-
-##############################################################################
-############################ DEBUGGING SUPPORT #############################
-##############################################################################
-# Enable these options as needed, but make sure you force a full recompile
-# with "make clean", followed by "make".
-# Note that most of these are NOT suitable for benchmarking or release mode!
-#
-# Use the system provided memory allocator (realloc) instead of the
-# bundled memory allocator. This is slower, but sometimes helpful for
-# debugging. This option cannot be enabled on x64, since realloc usually
-# doesn't return addresses in the right address range.
-# OTOH this option is mandatory for Valgrind's memcheck tool on x64 and
-# the only way to get useful results from it for all other architectures.
-#XCFLAGS+= -DLUAJIT_USE_SYSMALLOC
-#
-# This define is required to run LuaJIT under Valgrind. The Valgrind
-# header files must be installed. You should enable debug information, too.
-# Use --suppressions=lj.supp to avoid some false positives.
-#XCFLAGS+= -DLUAJIT_USE_VALGRIND
-#
-# This is the client for the GDB JIT API. GDB 7.0 or higher is required
-# to make use of it. See lj_gdbjit.c for details. Enabling this causes
-# a non-negligible overhead, even when not running under GDB.
-#XCFLAGS+= -DLUAJIT_USE_GDBJIT
-#
-# Turn on assertions for the Lua/C API to debug problems with lua_* calls.
-# This is rather slow -- use only while developing C libraries/embeddings.
-#XCFLAGS+= -DLUA_USE_APICHECK
-#
-# Turn on assertions for the whole LuaJIT VM. This significantly slows down
-# everything. Use only if you suspect a problem with LuaJIT itself.
-#XCFLAGS+= -DLUA_USE_ASSERT
-#
-##############################################################################
-# You probably don't need to change anything below this line!
-##############################################################################
-
-##############################################################################
-# Flags and options for host and target.
-##############################################################################
-
-# You can override the following variables at the make command line:
-# CC HOST_CC STATIC_CC DYNAMIC_CC
-# CFLAGS HOST_CFLAGS TARGET_CFLAGS
-# LDFLAGS HOST_LDFLAGS TARGET_LDFLAGS TARGET_SHLDFLAGS
-# LIBS HOST_LIBS TARGET_LIBS
-# CROSS HOST_SYS TARGET_SYS TARGET_FLAGS
-#
-# Cross-compilation examples:
-# make HOST_CC="gcc -m32" CROSS=i586-mingw32msvc- TARGET_SYS=Windows
-# make HOST_CC="gcc -m32" CROSS=powerpc-linux-gnu-
-
-CCOPTIONS= $(CCDEBUG) $(CCOPT) $(CCWARN) $(XCFLAGS) $(CFLAGS)
-LDOPTIONS= $(CCDEBUG) $(LDFLAGS)
-
-HOST_CC= $(CC)
-HOST_RM= rm -f
-# If left blank, minilua is built and used. You can supply an installed
-# copy of (plain) Lua 5.1 or 5.2, plus Lua BitOp. E.g. with: HOST_LUA=lua
-HOST_LUA=
-
-HOST_XCFLAGS= -I.
-HOST_XLDFLAGS=
-HOST_XLIBS=
-HOST_ACFLAGS= $(CCOPTIONS) $(HOST_XCFLAGS) $(TARGET_ARCH) $(HOST_CFLAGS)
-HOST_ALDFLAGS= $(LDOPTIONS) $(HOST_XLDFLAGS) $(HOST_LDFLAGS)
-HOST_ALIBS= $(HOST_XLIBS) $(LIBS) $(HOST_LIBS)
-
-STATIC_CC = $(CROSS)$(CC)
-DYNAMIC_CC = $(CROSS)$(CC) -fPIC
-TARGET_CC= $(STATIC_CC)
-TARGET_STCC= $(STATIC_CC)
-TARGET_DYNCC= $(DYNAMIC_CC)
-TARGET_LD= $(CROSS)$(CC)
-TARGET_AR= $(CROSS)ar rcus
-TARGET_STRIP= $(CROSS)strip
-
-TARGET_LIBPATH= $(CURDIR)
-#TARGET_LIBPATH= $(or $(PREFIX),/usr/local)/$(or $(MULTILIB),lib)
-TARGET_SONAME= libluajit-$(ABIVER).so.$(MAJVER)
-TARGET_DYLIBNAME= libluajit-aegisub.so
-#TARGET_DYLIBNAME= libluajit-$(ABIVER).$(MAJVER).dylib
-TARGET_DYLIBPATH= $(TARGET_LIBPATH)/$(TARGET_DYLIBNAME)
-TARGET_DLLNAME= lua$(NODOTABIVER).dll
-TARGET_XSHLDFLAGS= -shared -fPIC -Wl,-soname,$(TARGET_SONAME)
-TARGET_DYNXLDOPTS=
-
-TARGET_LFSFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-TARGET_XCFLAGS= $(TARGET_LFSFLAGS) -U_FORTIFY_SOURCE
-TARGET_XLDFLAGS=
-TARGET_XLIBS= -lm
-TARGET_TCFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS)
-TARGET_ACFLAGS= $(CCOPTIONS) $(TARGET_XCFLAGS) $(TARGET_FLAGS) $(TARGET_CFLAGS)
-TARGET_ALDFLAGS= $(LDOPTIONS) $(TARGET_XLDFLAGS) $(TARGET_FLAGS) $(TARGET_LDFLAGS)
-TARGET_ASHLDFLAGS= $(LDOPTIONS) $(TARGET_XSHLDFLAGS) $(TARGET_FLAGS) $(TARGET_SHLDFLAGS)
-TARGET_ALIBS= $(TARGET_XLIBS) $(LIBS) $(TARGET_LIBS)
-
-TARGET_TESTARCH=$(shell $(TARGET_CC) $(TARGET_TCFLAGS) -E lj_arch.h -dM)
-ifneq (,$(findstring LJ_TARGET_X64 ,$(TARGET_TESTARCH)))
- TARGET_LJARCH= x64
-else
-ifneq (,$(findstring LJ_TARGET_X86 ,$(TARGET_TESTARCH)))
- TARGET_LJARCH= x86
-else
-ifneq (,$(findstring LJ_TARGET_ARM ,$(TARGET_TESTARCH)))
- TARGET_LJARCH= arm
-else
-ifneq (,$(findstring LJ_TARGET_PPC ,$(TARGET_TESTARCH)))
- TARGET_LJARCH= ppc
-else
-ifneq (,$(findstring LJ_TARGET_PPCSPE ,$(TARGET_TESTARCH)))
- TARGET_LJARCH= ppcspe
-else
-ifneq (,$(findstring LJ_TARGET_MIPS ,$(TARGET_TESTARCH)))
- ifneq (,$(findstring MIPSEL ,$(TARGET_TESTARCH)))
- TARGET_ARCH= -D__MIPSEL__=1
- endif
- TARGET_LJARCH= mips
-else
- $(error Unsupported target architecture)
-endif
-endif
-endif
-endif
-endif
-endif
-
-ifneq (,$(findstring LJ_TARGET_PS3 1,$(TARGET_TESTARCH)))
- TARGET_SYS= PS3
- TARGET_ARCH+= -D__CELLOS_LV2__
- TARGET_XCFLAGS+= -DLUAJIT_USE_SYSMALLOC
-endif
-ifneq (,$(findstring LJ_NO_UNWIND 1,$(TARGET_TESTARCH)))
- TARGET_ARCH+= -DLUAJIT_NO_UNWIND
-endif
-
-TARGET_XCFLAGS+= $(CCOPT_$(TARGET_LJARCH))
-TARGET_ARCH+= $(patsubst %,-DLUAJIT_TARGET=LUAJIT_ARCH_%,$(TARGET_LJARCH))
-
-ifneq (,$(PREFIX))
-ifneq (/usr/local,$(PREFIX))
- TARGET_XCFLAGS+= -DLUA_ROOT=\"$(PREFIX)\"
- ifneq (/usr,$(PREFIX))
- TARGET_DYNXLDOPTS= -Wl,-rpath,$(TARGET_LIBPATH)
- endif
-endif
-endif
-ifneq (,$(MULTILIB))
- TARGET_XCFLAGS+= -DLUA_MULTILIB=\"$(MULTILIB)\"
-endif
-ifneq (,$(LMULTILIB))
- TARGET_XCFLAGS+= -DLUA_LMULTILIB=\"$(LMULTILIB)\"
-endif
-
-##############################################################################
-# System detection.
-##############################################################################
-
-ifeq (Windows,$(findstring Windows,$(OS))$(MSYSTEM)$(TERM))
- HOST_SYS= Windows
- HOST_RM= del
-else
- HOST_SYS:= $(shell uname -s)
- ifneq (,$(findstring MINGW,$(HOST_SYS)))
- HOST_SYS= Windows
- HOST_MSYS= mingw
- endif
- ifneq (,$(findstring CYGWIN,$(HOST_SYS)))
- HOST_SYS= Windows
- HOST_MSYS= cygwin
- endif
-endif
-
-TARGET_SYS?= $(HOST_SYS)
-ifeq (Windows,$(TARGET_SYS))
- TARGET_STRIP+= --strip-unneeded
- TARGET_XSHLDFLAGS= -shared
- TARGET_DYNXLDOPTS=
-else
-ifeq (,$(shell $(TARGET_CC) -o /dev/null -c -x c /dev/null -fno-stack-protector 2>/dev/null || echo 1))
- TARGET_XCFLAGS+= -fno-stack-protector
-endif
-ifeq (Darwin,$(TARGET_SYS))
- ifeq (,$(MACOSX_DEPLOYMENT_TARGET))
- export MACOSX_DEPLOYMENT_TARGET=10.4
- endif
- TARGET_STRIP+= -x
- TARGET_AR+= 2>/dev/null
- TARGET_XSHLDFLAGS= -dynamiclib -single_module -undefined dynamic_lookup -fPIC
- TARGET_DYNXLDOPTS=
- TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).$(RELVER)
- ifeq (x64,$(TARGET_LJARCH))
- TARGET_XLDFLAGS+= -pagezero_size 10000 -image_base 100000000
- TARGET_XSHLDFLAGS+= -image_base 7fff04c4a000
- endif
-else
-ifeq (iOS,$(TARGET_SYS))
- TARGET_STRIP+= -x
- TARGET_AR+= 2>/dev/null
- TARGET_XSHLDFLAGS= -dynamiclib -single_module -undefined dynamic_lookup -fPIC
- TARGET_DYNXLDOPTS=
- TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).$(RELVER)
-else
- ifneq (SunOS,$(TARGET_SYS))
- ifneq (PS3,$(TARGET_SYS))
- TARGET_XLDFLAGS+= -Wl,-E
- endif
- endif
- ifeq (Linux,$(TARGET_SYS))
- TARGET_XLIBS+= -ldl
- endif
- ifeq (GNU/kFreeBSD,$(TARGET_SYS))
- TARGET_XLIBS+= -ldl
- endif
-endif
-endif
-endif
-
-ifneq ($(HOST_SYS),$(TARGET_SYS))
- ifeq (Windows,$(TARGET_SYS))
- HOST_XCFLAGS+= -malign-double -DLUAJIT_OS=LUAJIT_OS_WINDOWS
- else
- ifeq (Linux,$(TARGET_SYS))
- HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_LINUX
- else
- ifeq (Darwin,$(TARGET_SYS))
- HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_OSX
- else
- ifeq (iOS,$(TARGET_SYS))
- HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_OSX
- else
- HOST_XCFLAGS+= -DLUAJIT_OS=LUAJIT_OS_OTHER
- endif
- endif
- endif
- endif
-endif
-
-ifneq (,$(CCDEBUG))
- TARGET_STRIP= @:
-endif
-
-##############################################################################
-# Files and pathnames.
-##############################################################################
-
-MINILUA_O= host/minilua.o
-MINILUA_LIBS= -lm
-MINILUA_T= host/minilua
-MINILUA_X= $(MINILUA_T)
-
-ifeq (,$(HOST_LUA))
- HOST_LUA= $(MINILUA_X)
- DASM_DEP= $(MINILUA_T)
-endif
-
-DASM_DIR= ../dynasm
-DASM= $(HOST_LUA) $(DASM_DIR)/dynasm.lua
-DASM_XFLAGS=
-DASM_AFLAGS=
-DASM_ARCH= $(TARGET_LJARCH)
-
-ifneq (,$(findstring LJ_ARCH_BITS 64,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D P64
-endif
-ifneq (,$(findstring LJ_HASJIT 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D JIT
-endif
-ifneq (,$(findstring LJ_HASFFI 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D FFI
-endif
-ifneq (,$(findstring LJ_DUALNUM 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D DUALNUM
-endif
-ifneq (,$(findstring LJ_ARCH_HASFPU 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D FPU
- TARGET_ARCH+= -DLJ_ARCH_HASFPU=1
-else
- TARGET_ARCH+= -DLJ_ARCH_HASFPU=0
-endif
-ifeq (,$(findstring LJ_ABI_SOFTFP 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D HFABI
- TARGET_ARCH+= -DLJ_ABI_SOFTFP=0
-else
- TARGET_ARCH+= -DLJ_ABI_SOFTFP=1
-endif
-DASM_AFLAGS+= -D VER=$(subst LJ_ARCH_VERSION_,,$(filter LJ_ARCH_VERSION_%,$(subst LJ_ARCH_VERSION ,LJ_ARCH_VERSION_,$(TARGET_TESTARCH))))
-ifeq (Windows,$(TARGET_SYS))
- DASM_AFLAGS+= -D WIN
-endif
-ifeq (x86,$(TARGET_LJARCH))
- ifneq (,$(findstring __SSE2__ 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D SSE
- endif
-else
-ifeq (x64,$(TARGET_LJARCH))
- DASM_ARCH= x86
-else
-ifeq (arm,$(TARGET_LJARCH))
- ifeq (iOS,$(TARGET_SYS))
- DASM_AFLAGS+= -D IOS
- endif
-else
-ifeq (ppc,$(TARGET_LJARCH))
- ifneq (,$(findstring LJ_ARCH_SQRT 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D SQRT
- endif
- ifneq (,$(findstring LJ_ARCH_ROUND 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D ROUND
- endif
- ifneq (,$(findstring LJ_ARCH_PPC64 1,$(TARGET_TESTARCH)))
- DASM_AFLAGS+= -D GPR64
- endif
- ifeq (PS3,$(TARGET_SYS))
- DASM_AFLAGS+= -D PPE -D TOC
- endif
-endif
-endif
-endif
-endif
-
-DASM_FLAGS= $(DASM_XFLAGS) $(DASM_AFLAGS)
-DASM_DASC= vm_$(DASM_ARCH).dasc
-
-BUILDVM_O= host/buildvm.o host/buildvm_asm.o host/buildvm_peobj.o \
- host/buildvm_lib.o host/buildvm_fold.o
-BUILDVM_T= host/buildvm
-BUILDVM_X= $(BUILDVM_T)
-
-HOST_O= $(MINILUA_O) $(BUILDVM_O)
-HOST_T= $(MINILUA_T) $(BUILDVM_T)
-
-LJVM_S= lj_vm.s
-LJVM_O= lj_vm.o
-LJVM_BOUT= $(LJVM_S)
-LJVM_MODE= elfasm
-
-LJLIB_O= lib_base.o lib_math.o lib_bit.o lib_string.o lib_table.o \
- lib_io.o lib_os.o lib_package.o lib_debug.o lib_jit.o lib_ffi.o
-LJLIB_C= $(LJLIB_O:.o=.c)
-
-LJCORE_O= lj_gc.o lj_err.o lj_char.o lj_bc.o lj_obj.o \
- lj_str.o lj_tab.o lj_func.o lj_udata.o lj_meta.o lj_debug.o \
- lj_state.o lj_dispatch.o lj_vmevent.o lj_vmmath.o lj_strscan.o \
- lj_api.o lj_lex.o lj_parse.o lj_bcread.o lj_bcwrite.o lj_load.o \
- lj_ir.o lj_opt_mem.o lj_opt_fold.o lj_opt_narrow.o \
- lj_opt_dce.o lj_opt_loop.o lj_opt_split.o lj_opt_sink.o \
- lj_mcode.o lj_snap.o lj_record.o lj_crecord.o lj_ffrecord.o \
- lj_asm.o lj_trace.o lj_gdbjit.o \
- lj_ctype.o lj_cdata.o lj_cconv.o lj_ccall.o lj_ccallback.o \
- lj_carith.o lj_clib.o lj_cparse.o \
- lj_lib.o lj_alloc.o lib_aux.o \
- $(LJLIB_O) lib_init.o
-
-LJVMCORE_O= $(LJVM_O) $(LJCORE_O)
-LJVMCORE_DYNO= $(LJVMCORE_O:.o=_dyn.o)
-
-LIB_VMDEF= jit/vmdef.lua
-LIB_VMDEFP= $(LIB_VMDEF)
-
-LUAJIT_O= luajit.o
-LUAJIT_A= libluajit.a
-LUAJIT_SO= libluajit-aegisub.so
-LUAJIT_T= luajit
-
-ALL_T= $(LUAJIT_T) $(LUAJIT_A) $(LUAJIT_SO) $(HOST_T)
-ALL_HDRGEN= gen/lj_bcdef.h gen/lj_ffdef.h gen/lj_libdef.h gen/lj_recdef.h gen/lj_folddef.h \
- gen/buildvm_arch.h
-ALL_GEN= $(LJVM_S) $(ALL_HDRGEN) $(LIB_VMDEFP)
-WIN_RM= *.obj *.lib *.exp *.dll *.exe *.manifest *.pdb *.ilk
-ALL_RM= $(ALL_T) $(ALL_GEN) *.o host/*.o $(WIN_RM)
-
-##############################################################################
-# Build mode handling.
-##############################################################################
-
-# Mixed mode defaults.
-TARGET_O= $(LUAJIT_A)
-TARGET_T= $(LUAJIT_T) $(LUAJIT_SO)
-TARGET_DEP= $(LIB_VMDEF) $(LUAJIT_SO)
-
-ifeq (Windows,$(TARGET_SYS))
- TARGET_DYNCC= $(STATIC_CC)
- LJVM_MODE= peobj
- LJVM_BOUT= $(LJVM_O)
- LUAJIT_T= luajit.exe
- ifeq (cygwin,$(HOST_MSYS))
- LUAJIT_SO= cyg$(TARGET_DLLNAME)
- else
- LUAJIT_SO= $(TARGET_DLLNAME)
- endif
- # Mixed mode is not supported on Windows. And static mode doesn't work well.
- # C modules cannot be loaded, because they bind to lua51.dll.
- ifneq (static,$(BUILDMODE))
- BUILDMODE= dynamic
- TARGET_XCFLAGS+= -DLUA_BUILD_AS_DLL
- endif
-endif
-ifeq (Darwin,$(TARGET_SYS))
- LJVM_MODE= machasm
- # -dead_strip breaks LuaJIT, but we really want it for everything else, so we
- # have to dynamically link it
- BUILDMODE= dynamic
-endif
-ifeq (iOS,$(TARGET_SYS))
- LJVM_MODE= machasm
-endif
-ifeq (SunOS,$(TARGET_SYS))
- BUILDMODE= static
-endif
-ifeq (PS3,$(TARGET_SYS))
- BUILDMODE= static
-endif
-
-ifeq (Windows,$(HOST_SYS))
- MINILUA_T= host/minilua.exe
- BUILDVM_T= host/buildvm.exe
- ifeq (,$(HOST_MSYS))
- MINILUA_X= host\minilua
- BUILDVM_X= host\buildvm
- ALL_RM:= $(subst /,\,$(ALL_RM))
- endif
-endif
-
-ifeq (static,$(BUILDMODE))
- TARGET_DYNCC= @:
- TARGET_T= $(LUAJIT_T)
- TARGET_DEP= $(LIB_VMDEF)
-else
-ifeq (dynamic,$(BUILDMODE))
- ifneq (Windows,$(TARGET_SYS))
- TARGET_CC= $(DYNAMIC_CC)
- endif
- TARGET_DYNCC= @:
- LJVMCORE_DYNO= $(LJVMCORE_O)
- TARGET_O= $(LUAJIT_SO)
- TARGET_XLDFLAGS+= $(TARGET_DYNXLDOPTS)
-else
-ifeq (Darwin,$(TARGET_SYS))
- TARGET_DYNCC= @:
- LJVMCORE_DYNO= $(LJVMCORE_O)
-endif
-ifeq (iOS,$(TARGET_SYS))
- TARGET_DYNCC= @:
- LJVMCORE_DYNO= $(LJVMCORE_O)
-endif
-endif
-endif
-
-ifeq ($(V),1)
-Q=
-E= @:
-else
-Q= @
-E= @echo
-endif
-
-##############################################################################
-# Make targets.
-##############################################################################
-
-default all: $(TARGET_T)
-
-amalg:
- $(MAKE) all "LJCORE_O=ljamalg.o"
-
-clean:
- $(HOST_RM) $(ALL_RM)
-
-depend:
- @for file in $(ALL_HDRGEN); do \
- test -f $$file || touch $$file; \
- done
- @$(HOST_CC) $(HOST_ACFLAGS) -MM *.c host/*.c | \
- sed -e "s| [^ ]*/dasm_\S*\.h||g" \
- -e "s|^\([^l ]\)|host/\1|" \
- -e "s| lj_target_\S*\.h| lj_target_*.h|g" \
- -e "s| lj_emit_\S*\.h| lj_emit_*.h|g" \
- -e "s| lj_asm_\S*\.h| lj_asm_*.h|g" >Makefile.dep
- @for file in $(ALL_HDRGEN); do \
- test -s $$file || $(HOST_RM) $$file; \
- done
-
-.PHONY: default all amalg clean depend
-
-##############################################################################
-# Rules for generated files.
-##############################################################################
-
-$(MINILUA_T): $(MINILUA_O)
- $(E) "HOSTLINK $@"
- $(Q)$(HOST_CC) $(HOST_ALDFLAGS) -o $@ $(MINILUA_O) $(MINILUA_LIBS) $(HOST_ALIBS)
-
-gen:
- mkdir -p gen
-
-gen/buildvm_arch.h: $(DASM_DASC) $(DASM_DEP) gen
- $(E) "DYNASM $@"
- $(Q)$(DASM) $(DASM_FLAGS) -o $@ $(DASM_DASC)
-
-host/buildvm.o: $(DASM_DIR)/dasm_*.h
-
-$(BUILDVM_T): $(BUILDVM_O)
- $(E) "HOSTLINK $@"
- $(Q)$(HOST_CC) $(HOST_ALDFLAGS) -o $@ $(BUILDVM_O) $(HOST_ALIBS)
-
-$(LJVM_BOUT): $(BUILDVM_T)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m $(LJVM_MODE) -o $@
-
-gen/lj_bcdef.h: $(BUILDVM_T) $(LJLIB_C)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m bcdef -o $@ $(LJLIB_C)
-
-gen/lj_ffdef.h: $(BUILDVM_T) $(LJLIB_C)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m ffdef -o $@ $(LJLIB_C)
-
-gen/lj_libdef.h: $(BUILDVM_T) $(LJLIB_C)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m libdef -o $@ $(LJLIB_C)
-
-gen/lj_recdef.h: $(BUILDVM_T) $(LJLIB_C)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m recdef -o $@ $(LJLIB_C)
-
-$(LIB_VMDEF): $(BUILDVM_T) $(LJLIB_C)
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m vmdef -o $(LIB_VMDEFP) $(LJLIB_C)
-
-gen/lj_folddef.h: $(BUILDVM_T) lj_opt_fold.c
- $(E) "BUILDVM $@"
- $(Q)$(BUILDVM_X) -m folddef -o $@ lj_opt_fold.c
-
-##############################################################################
-# Object file rules.
-##############################################################################
-
-%.o: %.c
- $(E) "CC $@"
- $(Q)$(TARGET_DYNCC) $(TARGET_ACFLAGS) -c -o $(@:.o=_dyn.o) $<
- $(Q)$(TARGET_CC) $(TARGET_ACFLAGS) -c -o $@ $<
-
-%.o: %.s
- $(E) "ASM $@"
- $(Q)$(TARGET_DYNCC) $(TARGET_ACFLAGS) -c -o $(@:.o=_dyn.o) $<
- $(Q)$(TARGET_CC) $(TARGET_ACFLAGS) -c -o $@ $<
-
-$(LUAJIT_O):
- $(E) "CC $@"
- $(Q)$(TARGET_STCC) $(TARGET_ACFLAGS) -c -o $@ $<
-
-$(HOST_O): %.o: %.c
- $(E) "HOSTCC $@"
- $(Q)$(HOST_CC) $(HOST_ACFLAGS) -c -o $@ $<
-
-include Makefile.dep
-
-##############################################################################
-# Target file rules.
-##############################################################################
-
-$(LUAJIT_A): $(LJVMCORE_O)
- $(E) "AR $@"
- $(Q)$(TARGET_AR) $@ $(LJVMCORE_O)
-
-# The dependency on _O, but linking with _DYNO is intentional.
-$(LUAJIT_SO): $(LJVMCORE_O)
- $(E) "DYNLINK $@"
- $(Q)$(TARGET_LD) $(TARGET_ASHLDFLAGS) -o $@ $(LJVMCORE_DYNO) $(TARGET_ALIBS)
- $(Q)$(TARGET_STRIP) $@
-
-$(LUAJIT_T): $(TARGET_O) $(LUAJIT_O) $(TARGET_DEP)
- $(E) "LINK $@"
- $(Q)$(TARGET_LD) $(TARGET_ALDFLAGS) -o $@ $(LUAJIT_O) $(TARGET_O) $(TARGET_ALIBS)
- $(Q)$(TARGET_STRIP) $@
- $(E) "OK Successfully built LuaJIT"
-
-##############################################################################
diff --git a/vendor/luajit/src/Makefile.dep b/vendor/luajit/src/Makefile.dep
deleted file mode 100644
index b05b3129f..000000000
--- a/vendor/luajit/src/Makefile.dep
+++ /dev/null
@@ -1,226 +0,0 @@
-lib_aux.o: lib_aux.c lua.h luaconf.h lauxlib.h lj_obj.h lj_def.h \
- lj_arch.h lj_err.h lj_errmsg.h lj_state.h lj_trace.h lj_jit.h lj_ir.h \
- lj_dispatch.h lj_bc.h lj_traceerr.h lj_lib.h lj_alloc.h
-lib_base.o: lib_base.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_debug.h lj_str.h \
- lj_tab.h lj_meta.h lj_state.h lj_ctype.h lj_cconv.h lj_bc.h lj_ff.h \
- gen/lj_ffdef.h lj_dispatch.h lj_jit.h lj_ir.h lj_char.h lj_strscan.h \
- lj_lib.h gen/lj_libdef.h
-lib_bit.o: lib_bit.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \
- lj_arch.h lj_err.h lj_errmsg.h lj_str.h lj_lib.h gen/lj_libdef.h
-lib_debug.o: lib_debug.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_debug.h lj_lib.h \
- gen/lj_libdef.h
-lib_ffi.o: lib_ffi.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \
- lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_meta.h \
- lj_ctype.h lj_cparse.h lj_cdata.h lj_cconv.h lj_carith.h lj_ccall.h \
- lj_ccallback.h lj_clib.h lj_ff.h gen/lj_ffdef.h lj_lib.h gen/lj_libdef.h
-lib_init.o: lib_init.c lua.h luaconf.h lauxlib.h lualib.h lj_arch.h
-lib_io.o: lib_io.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \
- lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_state.h lj_ff.h \
- gen/lj_ffdef.h lj_lib.h gen/lj_libdef.h
-lib_jit.o: lib_jit.c lua.h luaconf.h lauxlib.h lualib.h lj_arch.h \
- lj_obj.h lj_def.h lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_tab.h \
- lj_bc.h lj_ir.h lj_jit.h lj_ircall.h lj_iropt.h lj_target.h \
- lj_target_*.h lj_dispatch.h lj_vm.h lj_vmevent.h lj_lib.h luajit.h \
- gen/lj_libdef.h
-lib_math.o: lib_math.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_lib.h lj_vm.h gen/lj_libdef.h
-lib_os.o: lib_os.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \
- lj_arch.h lj_err.h lj_errmsg.h lj_lib.h gen/lj_libdef.h
-lib_package.o: lib_package.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_err.h lj_errmsg.h lj_lib.h
-lib_string.o: lib_string.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h \
- lj_meta.h lj_state.h lj_ff.h gen/lj_ffdef.h lj_bcdump.h lj_lex.h lj_char.h \
- lj_lib.h gen/lj_libdef.h
-lib_table.o: lib_table.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \
- lj_def.h lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_tab.h lj_lib.h \
- gen/lj_libdef.h
-lj_alloc.o: lj_alloc.c lj_def.h lua.h luaconf.h lj_arch.h lj_alloc.h
-lj_api.o: lj_api.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_tab.h lj_func.h lj_udata.h \
- lj_meta.h lj_state.h lj_bc.h lj_frame.h lj_trace.h lj_jit.h lj_ir.h \
- lj_dispatch.h lj_traceerr.h lj_vm.h lj_strscan.h
-lj_asm.o: lj_asm.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_str.h lj_tab.h lj_frame.h lj_bc.h lj_ctype.h lj_ir.h lj_jit.h \
- lj_ircall.h lj_iropt.h lj_mcode.h lj_trace.h lj_dispatch.h lj_traceerr.h \
- lj_snap.h lj_asm.h lj_vm.h lj_target.h lj_target_*.h lj_emit_*.h \
- lj_asm_*.h
-lj_bc.o: lj_bc.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_bc.h \
- gen/lj_bcdef.h
-lj_bcread.o: lj_bcread.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_bc.h lj_ctype.h \
- lj_cdata.h lualib.h lj_lex.h lj_bcdump.h lj_state.h
-lj_bcwrite.o: lj_bcwrite.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_str.h lj_bc.h lj_ctype.h lj_dispatch.h lj_jit.h lj_ir.h \
- lj_bcdump.h lj_lex.h lj_err.h lj_errmsg.h lj_vm.h
-lj_carith.o: lj_carith.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_tab.h lj_meta.h lj_ctype.h lj_cconv.h \
- lj_cdata.h lj_carith.h
-lj_ccall.o: lj_ccall.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_ctype.h lj_cconv.h \
- lj_cdata.h lj_ccall.h lj_trace.h lj_jit.h lj_ir.h lj_dispatch.h lj_bc.h \
- lj_traceerr.h
-lj_ccallback.o: lj_ccallback.c lj_obj.h lua.h luaconf.h lj_def.h \
- lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_tab.h lj_state.h lj_frame.h \
- lj_bc.h lj_ctype.h lj_cconv.h lj_ccall.h lj_ccallback.h lj_target.h \
- lj_target_*.h lj_mcode.h lj_jit.h lj_ir.h lj_trace.h lj_dispatch.h \
- lj_traceerr.h lj_vm.h
-lj_cconv.o: lj_cconv.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_tab.h lj_ctype.h lj_gc.h lj_cdata.h lj_cconv.h \
- lj_ccallback.h
-lj_cdata.o: lj_cdata.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_ctype.h lj_cconv.h \
- lj_cdata.h
-lj_char.o: lj_char.c lj_char.h lj_def.h lua.h luaconf.h
-lj_clib.o: lj_clib.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_tab.h lj_str.h lj_udata.h lj_ctype.h lj_cconv.h \
- lj_cdata.h lj_clib.h
-lj_cparse.o: lj_cparse.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_ctype.h lj_cparse.h lj_frame.h \
- lj_bc.h lj_vm.h lj_char.h lj_strscan.h
-lj_crecord.o: lj_crecord.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_frame.h lj_bc.h lj_ctype.h \
- lj_gc.h lj_cdata.h lj_cparse.h lj_cconv.h lj_clib.h lj_ccall.h lj_ff.h \
- gen/lj_ffdef.h lj_ir.h lj_jit.h lj_ircall.h lj_iropt.h lj_trace.h \
- lj_dispatch.h lj_traceerr.h lj_record.h lj_ffrecord.h lj_snap.h \
- lj_crecord.h
-lj_ctype.o: lj_ctype.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_ctype.h lj_ccallback.h
-lj_debug.o: lj_debug.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_tab.h lj_state.h lj_frame.h \
- lj_bc.h lj_jit.h lj_ir.h
-lj_dispatch.o: lj_dispatch.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_func.h lj_str.h lj_tab.h lj_meta.h lj_debug.h \
- lj_state.h lj_frame.h lj_bc.h lj_ff.h gen/lj_ffdef.h lj_jit.h lj_ir.h \
- lj_ccallback.h lj_ctype.h lj_gc.h lj_trace.h lj_dispatch.h lj_traceerr.h \
- lj_vm.h luajit.h
-lj_err.o: lj_err.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_err.h \
- lj_errmsg.h lj_debug.h lj_str.h lj_func.h lj_state.h lj_frame.h lj_bc.h \
- lj_ff.h gen/lj_ffdef.h lj_trace.h lj_jit.h lj_ir.h lj_dispatch.h \
- lj_traceerr.h lj_vm.h
-lj_ffrecord.o: lj_ffrecord.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_frame.h lj_bc.h lj_ff.h \
- gen/lj_ffdef.h lj_ir.h lj_jit.h lj_ircall.h lj_iropt.h lj_trace.h \
- lj_dispatch.h lj_traceerr.h lj_record.h lj_ffrecord.h lj_crecord.h \
- lj_vm.h lj_strscan.h gen/lj_recdef.h
-lj_func.o: lj_func.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_func.h lj_trace.h lj_jit.h lj_ir.h lj_dispatch.h lj_bc.h \
- lj_traceerr.h lj_vm.h
-lj_gc.o: lj_gc.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_func.h lj_udata.h lj_meta.h \
- lj_state.h lj_frame.h lj_bc.h lj_ctype.h lj_cdata.h lj_trace.h lj_jit.h \
- lj_ir.h lj_dispatch.h lj_traceerr.h lj_vm.h
-lj_gdbjit.o: lj_gdbjit.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_debug.h lj_frame.h lj_bc.h lj_jit.h \
- lj_ir.h lj_dispatch.h
-lj_ir.o: lj_ir.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_str.h lj_tab.h lj_ir.h lj_jit.h lj_ircall.h lj_iropt.h lj_trace.h \
- lj_dispatch.h lj_bc.h lj_traceerr.h lj_ctype.h lj_cdata.h lj_carith.h \
- lj_vm.h lj_strscan.h lj_lib.h
-lj_lex.o: lj_lex.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_ctype.h lj_cdata.h lualib.h \
- lj_state.h lj_lex.h lj_parse.h lj_char.h lj_strscan.h
-lj_lib.o: lj_lib.c lauxlib.h lua.h luaconf.h lj_obj.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_func.h lj_bc.h \
- lj_dispatch.h lj_jit.h lj_ir.h lj_vm.h lj_strscan.h lj_lib.h
-lj_load.o: lj_load.c lua.h luaconf.h lauxlib.h lj_obj.h lj_def.h \
- lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_func.h lj_frame.h \
- lj_bc.h lj_vm.h lj_lex.h lj_bcdump.h lj_parse.h
-lj_mcode.o: lj_mcode.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_jit.h lj_ir.h lj_mcode.h lj_trace.h \
- lj_dispatch.h lj_bc.h lj_traceerr.h lj_vm.h
-lj_meta.o: lj_meta.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_meta.h lj_frame.h lj_bc.h \
- lj_vm.h lj_strscan.h
-lj_obj.o: lj_obj.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h
-lj_opt_dce.o: lj_opt_dce.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_ir.h lj_jit.h lj_iropt.h
-lj_opt_fold.o: lj_opt_fold.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_str.h lj_tab.h lj_ir.h lj_jit.h lj_iropt.h lj_trace.h lj_dispatch.h \
- lj_bc.h lj_traceerr.h lj_ctype.h lj_gc.h lj_carith.h lj_vm.h \
- lj_strscan.h gen/lj_folddef.h
-lj_opt_loop.o: lj_opt_loop.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_str.h lj_ir.h lj_jit.h lj_iropt.h lj_trace.h \
- lj_dispatch.h lj_bc.h lj_traceerr.h lj_snap.h lj_vm.h
-lj_opt_mem.o: lj_opt_mem.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_tab.h lj_ir.h lj_jit.h lj_iropt.h
-lj_opt_narrow.o: lj_opt_narrow.c lj_obj.h lua.h luaconf.h lj_def.h \
- lj_arch.h lj_bc.h lj_ir.h lj_jit.h lj_iropt.h lj_trace.h lj_dispatch.h \
- lj_traceerr.h lj_vm.h lj_strscan.h
-lj_opt_sink.o: lj_opt_sink.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_ir.h lj_jit.h lj_iropt.h lj_target.h lj_target_*.h
-lj_opt_split.o: lj_opt_split.c lj_obj.h lua.h luaconf.h lj_def.h \
- lj_arch.h lj_err.h lj_errmsg.h lj_str.h lj_ir.h lj_jit.h lj_ircall.h \
- lj_iropt.h lj_vm.h
-lj_parse.o: lj_parse.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_tab.h lj_func.h \
- lj_state.h lj_bc.h lj_ctype.h lj_lex.h lj_parse.h lj_vm.h lj_vmevent.h
-lj_record.o: lj_record.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_meta.h lj_frame.h lj_bc.h \
- lj_ctype.h lj_gc.h lj_ff.h gen/lj_ffdef.h lj_ir.h lj_jit.h lj_ircall.h \
- lj_iropt.h lj_trace.h lj_dispatch.h lj_traceerr.h lj_record.h \
- lj_ffrecord.h lj_snap.h lj_vm.h
-lj_snap.o: lj_snap.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_tab.h lj_state.h lj_frame.h lj_bc.h lj_ir.h lj_jit.h lj_iropt.h \
- lj_trace.h lj_dispatch.h lj_traceerr.h lj_snap.h lj_target.h \
- lj_target_*.h lj_ctype.h lj_cdata.h
-lj_state.o: lj_state.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_func.h lj_meta.h \
- lj_state.h lj_frame.h lj_bc.h lj_ctype.h lj_trace.h lj_jit.h lj_ir.h \
- lj_dispatch.h lj_traceerr.h lj_vm.h lj_lex.h lj_alloc.h
-lj_str.o: lj_str.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_str.h lj_state.h lj_char.h
-lj_strscan.o: lj_strscan.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_char.h lj_strscan.h
-lj_tab.o: lj_tab.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \
- lj_err.h lj_errmsg.h lj_tab.h
-lj_trace.o: lj_trace.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_frame.h lj_bc.h \
- lj_state.h lj_ir.h lj_jit.h lj_iropt.h lj_mcode.h lj_trace.h \
- lj_dispatch.h lj_traceerr.h lj_snap.h lj_gdbjit.h lj_record.h lj_asm.h \
- lj_vm.h lj_vmevent.h lj_target.h lj_target_*.h
-lj_udata.o: lj_udata.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_gc.h lj_udata.h
-lj_vmevent.o: lj_vmevent.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_str.h lj_tab.h lj_state.h lj_dispatch.h lj_bc.h lj_jit.h lj_ir.h \
- lj_vm.h lj_vmevent.h
-lj_vmmath.o: lj_vmmath.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
- lj_ir.h lj_vm.h
-ljamalg.o: ljamalg.c lua.h luaconf.h lauxlib.h lj_gc.c lj_obj.h lj_def.h \
- lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_func.h \
- lj_udata.h lj_meta.h lj_state.h lj_frame.h lj_bc.h lj_ctype.h lj_cdata.h \
- lj_trace.h lj_jit.h lj_ir.h lj_dispatch.h lj_traceerr.h lj_vm.h lj_err.c \
- lj_debug.h lj_ff.h gen/lj_ffdef.h lj_char.c lj_char.h lj_bc.c gen/lj_bcdef.h \
- lj_obj.c lj_str.c lj_tab.c lj_func.c lj_udata.c lj_meta.c lj_strscan.h \
- lj_debug.c lj_state.c lj_lex.h lj_alloc.h lj_dispatch.c lj_ccallback.h \
- luajit.h lj_vmevent.c lj_vmevent.h lj_vmmath.c lj_strscan.c lj_api.c \
- lj_lex.c lualib.h lj_parse.h lj_parse.c lj_bcread.c lj_bcdump.h \
- lj_bcwrite.c lj_load.c lj_ctype.c lj_cdata.c lj_cconv.h lj_cconv.c \
- lj_ccall.c lj_ccall.h lj_ccallback.c lj_target.h lj_target_*.h \
- lj_mcode.h lj_carith.c lj_carith.h lj_clib.c lj_clib.h lj_cparse.c \
- lj_cparse.h lj_lib.c lj_lib.h lj_ir.c lj_ircall.h lj_iropt.h \
- lj_opt_mem.c lj_opt_fold.c gen/lj_folddef.h lj_opt_narrow.c lj_opt_dce.c \
- lj_opt_loop.c lj_snap.h lj_opt_split.c lj_opt_sink.c lj_mcode.c \
- lj_snap.c lj_record.c lj_record.h lj_ffrecord.h lj_crecord.c \
- lj_crecord.h lj_ffrecord.c gen/lj_recdef.h lj_asm.c lj_asm.h lj_emit_*.h \
- lj_asm_*.h lj_trace.c lj_gdbjit.h lj_gdbjit.c lj_alloc.c lib_aux.c \
- lib_base.c gen/lj_libdef.h lib_math.c lib_string.c lib_table.c lib_io.c \
- lib_os.c lib_package.c lib_debug.c lib_bit.c lib_jit.c lib_ffi.c \
- lib_init.c
-luajit.o: luajit.c lua.h luaconf.h lauxlib.h lualib.h luajit.h lj_arch.h
-host/buildvm.o: host/buildvm.c host/buildvm.h lj_def.h lua.h luaconf.h \
- lj_arch.h lj_obj.h lj_def.h lj_arch.h lj_gc.h lj_obj.h lj_bc.h lj_ir.h \
- lj_ircall.h lj_ir.h lj_jit.h lj_frame.h lj_bc.h lj_dispatch.h lj_ctype.h \
- lj_gc.h lj_ccall.h lj_ctype.h luajit.h \
- gen/buildvm_arch.h lj_traceerr.h
-host/buildvm_asm.o: host/buildvm_asm.c host/buildvm.h lj_def.h lua.h luaconf.h \
- lj_arch.h lj_bc.h lj_def.h lj_arch.h
-host/buildvm_fold.o: host/buildvm_fold.c host/buildvm.h lj_def.h lua.h \
- luaconf.h lj_arch.h lj_obj.h lj_def.h lj_arch.h lj_ir.h lj_obj.h
-host/buildvm_lib.o: host/buildvm_lib.c host/buildvm.h lj_def.h lua.h luaconf.h \
- lj_arch.h lj_obj.h lj_def.h lj_arch.h lj_lib.h lj_obj.h
-host/buildvm_peobj.o: host/buildvm_peobj.c host/buildvm.h lj_def.h lua.h \
- luaconf.h lj_arch.h lj_bc.h lj_def.h lj_arch.h
-host/minilua.o: host/minilua.c
diff --git a/vendor/uchardet b/vendor/uchardet
deleted file mode 160000
index 248d6dbd3..000000000
--- a/vendor/uchardet
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 248d6dbd351c22989090d318128cb38b11a89f98
diff --git a/vendor/wxWidgets b/vendor/wxWidgets
deleted file mode 160000
index d08c66fcb..000000000
--- a/vendor/wxWidgets
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit d08c66fcb46dea7d61e4a3565cd09fb4c675a201