forked from M-Labs/nac3
windows: add nac3artiq derivation (WIP)
This commit is contained in:
parent
1114d11b34
commit
03f5b80153
@ -137,6 +137,7 @@
|
||||
hydraJobs = {
|
||||
inherit (packages.x86_64-linux) llvm-nac3 nac3artiq;
|
||||
llvm-nac3-msys2 = packages.x86_64-w64-mingw32.llvm-nac3;
|
||||
nac3artiq-msys2 = packages.x86_64-w64-mingw32.nac3artiq;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -7,8 +7,31 @@ let
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = (pkgs.lib.strings.concatStringsSep "\n" (["mkdir $out"] ++ (map (p: "tar xvf ${p} -C $out") srcs)));
|
||||
};
|
||||
in
|
||||
{
|
||||
silenceFontconfig = # silence flood of "Fontconfig error: Cannot load default config file: No such file: (null)"
|
||||
''
|
||||
export FONTCONFIG_PATH=$HOME/fonts
|
||||
mkdir $FONTCONFIG_PATH
|
||||
cat > $FONTCONFIG_PATH/fonts.conf << EOF
|
||||
<fontconfig>
|
||||
</fontconfig>
|
||||
EOF
|
||||
'';
|
||||
pyo3-mingw-config = pkgs.writeTextFile {
|
||||
name = "pyo3-mingw-config";
|
||||
text =
|
||||
''
|
||||
implementation=CPython
|
||||
version=3.9
|
||||
shared=true
|
||||
abi3=false
|
||||
lib_name=python3.9
|
||||
lib_dir=${msys2-env}/mingw64/lib
|
||||
pointer_width=64
|
||||
build_flags=WITH_THREAD
|
||||
suppress_build_script_link_lines=false
|
||||
'';
|
||||
};
|
||||
in rec {
|
||||
llvm-nac3 = pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "llvm-nac3-msys2";
|
||||
src-llvm = pkgs.fetchurl {
|
||||
@ -37,15 +60,7 @@ in
|
||||
export HOME=`mktemp -d`
|
||||
export WINEDEBUG=-all
|
||||
export WINEPATH=${msys2-env}/mingw64/bin
|
||||
|
||||
# silence flood of "Fontconfig error: Cannot load default config file: No such file: (null)"
|
||||
export FONTCONFIG_PATH=$HOME/fonts
|
||||
mkdir $FONTCONFIG_PATH
|
||||
cat > $FONTCONFIG_PATH/fonts.conf << EOF
|
||||
<fontconfig>
|
||||
</fontconfig>
|
||||
EOF
|
||||
|
||||
${silenceFontconfig}
|
||||
mkdir build
|
||||
cd build
|
||||
wine64 cmake .. -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_UNWIND_TABLES=OFF -DLLVM_ENABLE_THREADS=OFF -DLLVM_TARGETS_TO_BUILD=X86\;ARM\;RISCV -DLLVM_LINK_LLVM_DYLIB=OFF -DLLVM_ENABLE_FFI=OFF -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_ENABLE_PROJECTS=clang -DCMAKE_INSTALL_PREFIX=$out
|
||||
@ -59,4 +74,20 @@ in
|
||||
wine64 ninja install
|
||||
'';
|
||||
};
|
||||
nac3artiq = pkgs.rustPlatform.buildRustPackage {
|
||||
name = "nac3artiq";
|
||||
src = ../.;
|
||||
cargoLock = { lockFile = ../Cargo.lock; };
|
||||
doCheck = false;
|
||||
nativeBuildInputs = [ pkgs.wineWowPackages.stable ];
|
||||
buildPhase =
|
||||
''
|
||||
export HOME=`mktemp -d`
|
||||
export WINEDEBUG=-all
|
||||
export WINEPATH=${msys2-env}/mingw64/bin
|
||||
${silenceFontconfig}
|
||||
export PYO3_CONFIG_FILE=Z:${pyo3-mingw-config}
|
||||
wine64 cargo build --release -p nac3artiq
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user