aegisub: fix build on aarch64
This commit is contained in:
parent
81a84f61ef
commit
7d072a2e44
|
@ -2,13 +2,17 @@
|
||||||
, config
|
, config
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
|
||||||
, boost
|
, boost
|
||||||
|
, cmake
|
||||||
|
, expat
|
||||||
|
, harfbuzz
|
||||||
, ffmpeg
|
, ffmpeg
|
||||||
, ffms
|
, ffms
|
||||||
, fftw
|
, fftw
|
||||||
, fontconfig
|
, fontconfig
|
||||||
, freetype
|
, freetype
|
||||||
|
, fribidi
|
||||||
|
, glib
|
||||||
, icu
|
, icu
|
||||||
, intltool
|
, intltool
|
||||||
, libGL
|
, libGL
|
||||||
|
@ -17,17 +21,23 @@
|
||||||
, libass
|
, libass
|
||||||
, libiconv
|
, libiconv
|
||||||
, libuchardet
|
, libuchardet
|
||||||
|
, luajit
|
||||||
|
, pcre
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, which
|
, which
|
||||||
, wxGTK
|
, wxGTK
|
||||||
, zlib
|
, zlib
|
||||||
|
|
||||||
|
, CoreText
|
||||||
|
, CoreFoundation
|
||||||
|
, AppKit
|
||||||
|
, Carbon
|
||||||
|
, IOKit
|
||||||
|
, Cocoa
|
||||||
|
|
||||||
, spellcheckSupport ? true
|
, spellcheckSupport ? true
|
||||||
, hunspell ? null
|
, hunspell ? null
|
||||||
|
|
||||||
, automationSupport ? true
|
|
||||||
, luajit ? null
|
|
||||||
|
|
||||||
, openalSupport ? false
|
, openalSupport ? false
|
||||||
, openal ? null
|
, openal ? null
|
||||||
|
|
||||||
|
@ -40,10 +50,10 @@
|
||||||
, portaudioSupport ? false
|
, portaudioSupport ? false
|
||||||
, portaudio ? null
|
, portaudio ? null
|
||||||
|
|
||||||
|
, useBundledLuaJIT ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert spellcheckSupport -> (hunspell != null);
|
assert spellcheckSupport -> (hunspell != null);
|
||||||
assert automationSupport -> (luajit != null);
|
|
||||||
assert openalSupport -> (openal != null);
|
assert openalSupport -> (openal != null);
|
||||||
assert alsaSupport -> (alsa-lib != null);
|
assert alsaSupport -> (alsa-lib != null);
|
||||||
assert pulseaudioSupport -> (libpulseaudio != null);
|
assert pulseaudioSupport -> (libpulseaudio != null);
|
||||||
|
@ -55,31 +65,34 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "aegisub";
|
pname = "aegisub";
|
||||||
version = "3.3.2";
|
version = "3.3.2-20220612";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "wangqr";
|
owner = "wangqr";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "91f8b5f91eb960bad19899c10af08aca34f9b697";
|
||||||
sha256 = "sha256-Er0g8fJyx7zjNVpKw7zUHE40hU10BdYlZohlqJq2LE0=";
|
sha256 = "sha256-lPkPWSsncsBKJHDnma9cUXsQJynruT9JpPkMTHdQ/e8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./no-git.patch ];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
autoreconfHook
|
|
||||||
intltool
|
intltool
|
||||||
luajit52
|
luajit52
|
||||||
pkg-config
|
pkg-config
|
||||||
which
|
which
|
||||||
|
cmake
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
boost
|
boost
|
||||||
|
expat
|
||||||
ffmpeg
|
ffmpeg
|
||||||
ffms
|
ffms
|
||||||
fftw
|
fftw
|
||||||
fontconfig
|
fontconfig
|
||||||
freetype
|
freetype
|
||||||
|
fribidi
|
||||||
|
glib
|
||||||
|
harfbuzz
|
||||||
icu
|
icu
|
||||||
libGL
|
libGL
|
||||||
libGLU
|
libGLU
|
||||||
|
@ -87,23 +100,25 @@ stdenv.mkDerivation rec {
|
||||||
libass
|
libass
|
||||||
libiconv
|
libiconv
|
||||||
libuchardet
|
libuchardet
|
||||||
|
pcre
|
||||||
wxGTK
|
wxGTK
|
||||||
zlib
|
zlib
|
||||||
]
|
]
|
||||||
|
++ lib.optionals stdenv.isDarwin [
|
||||||
|
CoreText
|
||||||
|
CoreFoundation
|
||||||
|
AppKit
|
||||||
|
Carbon
|
||||||
|
IOKit
|
||||||
|
Cocoa
|
||||||
|
]
|
||||||
++ optional alsaSupport alsa-lib
|
++ optional alsaSupport alsa-lib
|
||||||
++ optional automationSupport luajit52
|
|
||||||
++ optional openalSupport openal
|
++ optional openalSupport openal
|
||||||
++ optional portaudioSupport portaudio
|
++ optional portaudioSupport portaudio
|
||||||
++ optional pulseaudioSupport libpulseaudio
|
++ optional pulseaudioSupport libpulseaudio
|
||||||
++ optional spellcheckSupport hunspell
|
++ optional spellcheckSupport hunspell
|
||||||
;
|
;
|
||||||
|
|
||||||
configureFlags = [
|
|
||||||
"--with-boost-libdir=${boost.out}/lib"
|
|
||||||
"--with-system-luajit"
|
|
||||||
"FORCE_GIT_VERSION=${version}"
|
|
||||||
];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
hardeningDisable = [
|
hardeningDisable = [
|
||||||
|
@ -111,7 +126,20 @@ stdenv.mkDerivation rec {
|
||||||
"relro"
|
"relro"
|
||||||
];
|
];
|
||||||
|
|
||||||
postInstall = "ln -s $out/bin/aegisub-* $out/bin/aegisub";
|
patches = lib.optionals (!useBundledLuaJIT) [
|
||||||
|
./remove-bundled-luajit.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
NIX_CFLAGS_COMPILE = "-I${luajit52}/include";
|
||||||
|
NIX_CFLAGS_LINK = "-L${luajit52}/lib";
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
export FORCE_GIT_VERSION=${version}
|
||||||
|
# Workaround for a Nixpkgs bug; remove when the fix arrives
|
||||||
|
mkdir build-dir
|
||||||
|
cd build-dir
|
||||||
|
cmake -DCMAKE_INSTALL_PREFIX=$out ..
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://github.com/wangqr/Aegisub";
|
homepage = "https://github.com/wangqr/Aegisub";
|
||||||
|
@ -126,6 +154,6 @@ stdenv.mkDerivation rec {
|
||||||
# softwares - so the resulting program will be GPL
|
# softwares - so the resulting program will be GPL
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = [ maintainers.AndersonTorres ];
|
maintainers = [ maintainers.AndersonTorres ];
|
||||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
Modified from <https://github.com/wangqr/Aegisub/commit/f8dca9f6386299ec2f90158e2d923a8fb30e3466>
|
|
||||||
to patch cleanly to v3.3.2. Necessary for building without git.
|
|
||||||
Upstream and will be in next release.
|
|
||||||
|
|
||||||
diff --git a/build/version.sh b/build/version.sh
|
|
||||||
index 8cea0a3f3..d505341e4 100755
|
|
||||||
--- a/build/version.sh
|
|
||||||
+++ b/build/version.sh
|
|
||||||
@@ -10,13 +10,13 @@ if ! test -d "${srcdir}/.git"; then
|
|
||||||
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
|
|
||||||
fi
|
|
||||||
- else
|
|
||||||
- echo "git repo not found and no cached git_version.h"
|
|
||||||
+ elif [ -z "$FORCE_GIT_VERSION" ]; then
|
|
||||||
+ echo "git repo not found and no cached git_version.h - use FORCE_GIT_VERSION to override"
|
|
||||||
exit 2
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
@@ -25,13 +25,13 @@ 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_version_str=$(git describe --exact-match 2> /dev/null)
|
|
||||||
+git_version_str=${FORCE_GIT_VERSION:-$(git describe --exact-match 2> /dev/null)}
|
|
||||||
installer_version='0.0.0'
|
|
||||||
resource_version='0, 0, 0'
|
|
||||||
if test x$git_version_str != x; then
|
|
||||||
git_version_str="${git_version_str##v}"
|
|
||||||
tagged_release=1
|
|
||||||
- if [ $(echo $git_version_str | grep '\d\.\d\.\d') ]; then
|
|
||||||
+ if [ $(echo $git_version_str | grep '[0-9].[0-9].[0-9]') ]; then
|
|
||||||
installer_version=$git_version_str
|
|
||||||
resource_version=$(echo $git_version_str | sed 's/\./, /g')
|
|
||||||
fi
|
|
271
pkgs/applications/video/aegisub/remove-bundled-luajit.patch
Normal file
271
pkgs/applications/video/aegisub/remove-bundled-luajit.patch
Normal file
|
@ -0,0 +1,271 @@
|
||||||
|
diff --git a/CMakeLists.test.txt b/CMakeLists.test.txt
|
||||||
|
index 4d1a03177..62fab05c9 100644
|
||||||
|
--- a/CMakeLists.test.txt
|
||||||
|
+++ b/CMakeLists.test.txt
|
||||||
|
@@ -2,7 +2,7 @@ if(UNIX)
|
||||||
|
add_executable(aegisub-lua EXCLUDE_FROM_ALL
|
||||||
|
automation/tests/aegisub.cpp
|
||||||
|
)
|
||||||
|
- target_link_libraries(aegisub-lua PRIVATE libaegisub luabins luajit "Boost::locale" "ICU::in")
|
||||||
|
+ target_link_libraries(aegisub-lua PRIVATE libaegisub luabins luajit-5.1 "Boost::locale" "ICU::in")
|
||||||
|
add_custom_target(test-automation
|
||||||
|
COMMAND sh -c "$(luarocks path); ${PROJECT_BINARY_DIR}/aegisub-lua tests/busted.lua -p moon tests/modules"
|
||||||
|
VERBATIM
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index ce2e355ff..4d4396451 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -13,210 +13,6 @@ if(NOT CMAKE_BUILD_TYPE)
|
||||||
|
set(CMAKE_BUILD_TYPE Release)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-## Build bundled LuaJIT with aegisub specific patches
|
||||||
|
-add_executable(luajit-minilua vendor/luajit/src/host/minilua.c)
|
||||||
|
-if(NOT WIN32)
|
||||||
|
- target_link_libraries(luajit-minilua m)
|
||||||
|
-endif()
|
||||||
|
-if(WIN32)
|
||||||
|
- if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -LN -D WIN -D JIT -D FFI -D P64 -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_x86.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- else()
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -LN -D WIN -D JIT -D FFI -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_x86.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- endif()
|
||||||
|
-elseif(APPLE)
|
||||||
|
- if(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "arm64")
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -D ENDIAN_LE -D P64 -D FFI -D DUALNUM -D FPU -D HFABI -D NO_UNWIND -D VER=80 -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_arm64.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- else()
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -D P64 -D JIT -D FFI -D FPU -D HFABI -D VER= -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_x64.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- endif()
|
||||||
|
-else()
|
||||||
|
- if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -D P64 -D JIT -D FFI -D FPU -D HFABI -D VER= -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_x86.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- else()
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen"
|
||||||
|
- COMMAND luajit-minilua ../dynasm/dynasm.lua -D JIT -D FFI -D FPU -D HFABI -D VER= -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h" vm_x86.dasc
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
- )
|
||||||
|
- endif()
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
-add_executable(luajit-buildvm
|
||||||
|
- vendor/luajit/src/host/buildvm.c
|
||||||
|
- vendor/luajit/src/host/buildvm_asm.c
|
||||||
|
- vendor/luajit/src/host/buildvm_peobj.c
|
||||||
|
- vendor/luajit/src/host/buildvm_lib.c
|
||||||
|
- vendor/luajit/src/host/buildvm_fold.c
|
||||||
|
-
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/buildvm_arch.h"
|
||||||
|
-)
|
||||||
|
-target_compile_definitions(luajit-buildvm PRIVATE LUAJIT_ENABLE_LUA52COMPAT)
|
||||||
|
-target_include_directories(luajit-buildvm PRIVATE vendor/luajit/src "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen")
|
||||||
|
-
|
||||||
|
-if(APPLE)
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.s"
|
||||||
|
- COMMAND luajit-buildvm -m machasm -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.s"
|
||||||
|
- )
|
||||||
|
-elseif(UNIX)
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.s"
|
||||||
|
- COMMAND luajit-buildvm -m elfasm -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.s"
|
||||||
|
- )
|
||||||
|
-elseif(MSVC)
|
||||||
|
- add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.obj"
|
||||||
|
- COMMAND luajit-buildvm -m peobj -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.obj"
|
||||||
|
- )
|
||||||
|
-endif()
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_ffdef.h"
|
||||||
|
- COMMAND luajit-buildvm -m ffdef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_ffdef.h" lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_bcdef.h"
|
||||||
|
- COMMAND luajit-buildvm -m bcdef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_bcdef.h" lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_folddef.h"
|
||||||
|
- COMMAND luajit-buildvm -m folddef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_folddef.h" lj_opt_fold.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_recdef.h"
|
||||||
|
- COMMAND luajit-buildvm -m recdef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_recdef.h" lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_libdef.h"
|
||||||
|
- COMMAND luajit-buildvm -m libdef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_libdef.h" lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-add_custom_command(
|
||||||
|
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/jit/vmdef.lua"
|
||||||
|
- COMMAND luajit-buildvm -m vmdef -o "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/jit/vmdef.lua" lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
|
||||||
|
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vendor/luajit/src
|
||||||
|
-)
|
||||||
|
-
|
||||||
|
-add_library(luajit STATIC
|
||||||
|
- vendor/luajit/src/lib_base.c
|
||||||
|
- vendor/luajit/src/lib_math.c
|
||||||
|
- vendor/luajit/src/lib_bit.c
|
||||||
|
- vendor/luajit/src/lib_string.c
|
||||||
|
- vendor/luajit/src/lib_table.c
|
||||||
|
- vendor/luajit/src/lib_io.c
|
||||||
|
- vendor/luajit/src/lib_os.c
|
||||||
|
- vendor/luajit/src/lib_package.c
|
||||||
|
- vendor/luajit/src/lib_debug.c
|
||||||
|
- vendor/luajit/src/lib_jit.c
|
||||||
|
- vendor/luajit/src/lib_ffi.c
|
||||||
|
- vendor/luajit/src/lj_gc.c
|
||||||
|
- vendor/luajit/src/lj_err.c
|
||||||
|
- vendor/luajit/src/lj_char.c
|
||||||
|
- vendor/luajit/src/lj_bc.c
|
||||||
|
- vendor/luajit/src/lj_obj.c
|
||||||
|
- vendor/luajit/src/lj_buf.c
|
||||||
|
- vendor/luajit/src/lj_str.c
|
||||||
|
- vendor/luajit/src/lj_tab.c
|
||||||
|
- vendor/luajit/src/lj_func.c
|
||||||
|
- vendor/luajit/src/lj_udata.c
|
||||||
|
- vendor/luajit/src/lj_meta.c
|
||||||
|
- vendor/luajit/src/lj_debug.c
|
||||||
|
- vendor/luajit/src/lj_state.c
|
||||||
|
- vendor/luajit/src/lj_dispatch.c
|
||||||
|
- vendor/luajit/src/lj_vmevent.c
|
||||||
|
- vendor/luajit/src/lj_vmmath.c
|
||||||
|
- vendor/luajit/src/lj_strscan.c
|
||||||
|
- vendor/luajit/src/lj_strfmt.c
|
||||||
|
- vendor/luajit/src/lj_strfmt_num.c
|
||||||
|
- vendor/luajit/src/lj_api.c
|
||||||
|
- vendor/luajit/src/lj_profile.c
|
||||||
|
- vendor/luajit/src/lj_lex.c
|
||||||
|
- vendor/luajit/src/lj_parse.c
|
||||||
|
- vendor/luajit/src/lj_bcread.c
|
||||||
|
- vendor/luajit/src/lj_bcwrite.c
|
||||||
|
- vendor/luajit/src/lj_load.c
|
||||||
|
- vendor/luajit/src/lj_ir.c
|
||||||
|
- vendor/luajit/src/lj_opt_mem.c
|
||||||
|
- vendor/luajit/src/lj_opt_fold.c
|
||||||
|
- vendor/luajit/src/lj_opt_narrow.c
|
||||||
|
- vendor/luajit/src/lj_opt_dce.c
|
||||||
|
- vendor/luajit/src/lj_opt_loop.c
|
||||||
|
- vendor/luajit/src/lj_opt_split.c
|
||||||
|
- vendor/luajit/src/lj_opt_sink.c
|
||||||
|
- vendor/luajit/src/lj_mcode.c
|
||||||
|
- vendor/luajit/src/lj_snap.c
|
||||||
|
- vendor/luajit/src/lj_record.c
|
||||||
|
- vendor/luajit/src/lj_crecord.c
|
||||||
|
- vendor/luajit/src/lj_ffrecord.c
|
||||||
|
- vendor/luajit/src/lj_asm.c
|
||||||
|
- vendor/luajit/src/lj_trace.c
|
||||||
|
- vendor/luajit/src/lj_gdbjit.c
|
||||||
|
- vendor/luajit/src/lj_ctype.c
|
||||||
|
- vendor/luajit/src/lj_cdata.c
|
||||||
|
- vendor/luajit/src/lj_cconv.c
|
||||||
|
- vendor/luajit/src/lj_ccall.c
|
||||||
|
- vendor/luajit/src/lj_ccallback.c
|
||||||
|
- vendor/luajit/src/lj_carith.c
|
||||||
|
- vendor/luajit/src/lj_clib.c
|
||||||
|
- vendor/luajit/src/lj_cparse.c
|
||||||
|
- vendor/luajit/src/lj_lib.c
|
||||||
|
- vendor/luajit/src/lj_alloc.c
|
||||||
|
- vendor/luajit/src/lib_aux.c
|
||||||
|
- vendor/luajit/src/lib_init.c
|
||||||
|
-
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_ffdef.h"
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_bcdef.h"
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_folddef.h"
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_recdef.h"
|
||||||
|
- "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen/lj_libdef.h"
|
||||||
|
- # "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/jit/vmdef.lua"
|
||||||
|
-)
|
||||||
|
-target_compile_definitions(luajit PRIVATE LUAJIT_ENABLE_LUA52COMPAT)
|
||||||
|
-target_include_directories(luajit PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/gen" PUBLIC "vendor/luajit/src")
|
||||||
|
-if(WIN32)
|
||||||
|
- target_sources(luajit PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.obj")
|
||||||
|
-else()
|
||||||
|
- enable_language(ASM)
|
||||||
|
- target_sources(luajit PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/vendor/luajit/src/lj_vm.s")
|
||||||
|
- target_link_libraries(luajit ${CMAKE_DL_LIBS})
|
||||||
|
-endif()
|
||||||
|
-if(APPLE)
|
||||||
|
- if(NOT CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "arm64")
|
||||||
|
- target_compile_definitions(luajit-buildvm PRIVATE LUAJIT_ENABLE_GC64)
|
||||||
|
- target_compile_definitions(luajit PRIVATE LUAJIT_ENABLE_GC64)
|
||||||
|
- endif()
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
add_subdirectory(vendor/luabins)
|
||||||
|
|
||||||
|
## libaegisub
|
||||||
|
@@ -310,18 +106,18 @@ if(APPLE)
|
||||||
|
else()
|
||||||
|
target_precompile_headers(libaegisub PRIVATE "libaegisub/lagi_pre.h")
|
||||||
|
endif()
|
||||||
|
-target_link_libraries(libaegisub PRIVATE luajit luabins)
|
||||||
|
+target_link_libraries(libaegisub PRIVATE luajit-5.1 luabins)
|
||||||
|
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/default_config.cpp" "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/default_config.h"
|
||||||
|
DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/default_config_platform.json"
|
||||||
|
- COMMAND luajit-minilua "${PROJECT_SOURCE_DIR}/tools/respack.lua" manifest.respack default_config.cpp default_config.h
|
||||||
|
+ COMMAND luajit "${PROJECT_SOURCE_DIR}/tools/respack.lua" manifest.respack default_config.cpp default_config.h
|
||||||
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc"
|
||||||
|
)
|
||||||
|
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.cpp" "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.h"
|
||||||
|
- COMMAND luajit-minilua ../../tools/respack.lua manifest.respack "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.cpp" "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.h"
|
||||||
|
+ COMMAND luajit ../../tools/respack.lua manifest.respack "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.cpp" "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc/bitmap.h"
|
||||||
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/src/bitmaps
|
||||||
|
)
|
||||||
|
|
||||||
|
@@ -496,7 +292,7 @@ add_executable(Aegisub WIN32
|
||||||
|
src/video_slider.cpp
|
||||||
|
src/visual_feature.cpp
|
||||||
|
)
|
||||||
|
-target_link_libraries(Aegisub PRIVATE ${CMAKE_DL_LIBS} libaegisub luajit)
|
||||||
|
+target_link_libraries(Aegisub PRIVATE ${CMAKE_DL_LIBS} libaegisub luajit-5.1)
|
||||||
|
target_compile_definitions(Aegisub PRIVATE CMAKE_BUILD)
|
||||||
|
target_include_directories(Aegisub PRIVATE "src/libresrc" "${CMAKE_CURRENT_BINARY_DIR}/src/libresrc")
|
||||||
|
if(APPLE)
|
||||||
|
diff --git a/vendor/luabins/CMakeLists.txt b/vendor/luabins/CMakeLists.txt
|
||||||
|
index 1fe1d2031..e2761527b 100644
|
||||||
|
--- a/vendor/luabins/CMakeLists.txt
|
||||||
|
+++ b/vendor/luabins/CMakeLists.txt
|
||||||
|
@@ -36,4 +36,4 @@ add_library(luabins STATIC
|
||||||
|
src/savebuffer.c
|
||||||
|
src/write.c
|
||||||
|
)
|
||||||
|
-target_link_libraries(luabins PRIVATE luajit)
|
||||||
|
\ No newline at end of file
|
||||||
|
+target_link_libraries(luabins PRIVATE luajit-5.1)
|
||||||
|
\ No newline at end of file
|
|
@ -1039,7 +1039,8 @@ with pkgs;
|
||||||
aefs = callPackage ../tools/filesystems/aefs { };
|
aefs = callPackage ../tools/filesystems/aefs { };
|
||||||
|
|
||||||
aegisub = callPackage ../applications/video/aegisub ({
|
aegisub = callPackage ../applications/video/aegisub ({
|
||||||
wxGTK = wxGTK30;
|
wxGTK = wxGTK31;
|
||||||
|
inherit (darwin.apple_sdk.frameworks) CoreText CoreFoundation AppKit Carbon IOKit Cocoa;
|
||||||
} // (config.aegisub or {}));
|
} // (config.aegisub or {}));
|
||||||
|
|
||||||
aerc = callPackage ../applications/networking/mailreaders/aerc { };
|
aerc = callPackage ../applications/networking/mailreaders/aerc { };
|
||||||
|
|
Loading…
Reference in a new issue