mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-27 08:01:14 +00:00
Merge pull request #14632 from abbradar/wine-fix64bit
Fix 64-bit Wine builds
This commit is contained in:
commit
c25a8fe831
|
@ -1,4 +1,5 @@
|
|||
{ system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, callPackage, callPackage_i686,
|
||||
overrideCC, wrapCCMulti, gcc49,
|
||||
pulseaudioSupport,
|
||||
wineRelease ? "stable"
|
||||
}:
|
||||
|
@ -16,6 +17,9 @@ in with src; {
|
|||
wine64 = callPackage ./base.nix {
|
||||
name = "wine64-${version}";
|
||||
inherit src version pulseaudioSupport;
|
||||
# FIXME: drop this when GCC is updated to >5.3.
|
||||
# Corresponding bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
|
||||
stdenv = overrideCC stdenv gcc49;
|
||||
pkgArches = [ pkgs ];
|
||||
geckos = [ gecko64 ];
|
||||
monos = [ mono ];
|
||||
|
@ -25,7 +29,8 @@ in with src; {
|
|||
wineWow = callPackage ./base.nix {
|
||||
name = "wine-wow-${version}";
|
||||
inherit src version pulseaudioSupport;
|
||||
stdenv = stdenv_32bit;
|
||||
# FIXME: see above.
|
||||
stdenv = overrideCC stdenv_32bit (wrapCCMulti gcc49);
|
||||
pkgArches = [ pkgs pkgsi686Linux ];
|
||||
geckos = [ gecko32 gecko64 ];
|
||||
monos = [ mono ];
|
||||
|
|
|
@ -4044,18 +4044,20 @@ in
|
|||
|
||||
gcc = gcc5;
|
||||
|
||||
gcc_multi =
|
||||
wrapCCMulti = cc:
|
||||
if system == "x86_64-linux" then lowPrio (
|
||||
let
|
||||
extraBuildCommands = ''
|
||||
echo "dontMoveLib64=1" >> $out/nix-support/setup-hook
|
||||
'';
|
||||
in wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi extraBuildCommands (gcc.cc.override {
|
||||
stdenv = overrideCC stdenv (wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi "" gcc.cc);
|
||||
in wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi extraBuildCommands (cc.cc.override {
|
||||
stdenv = overrideCC stdenv (wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi "" cc.cc);
|
||||
profiledCompiler = false;
|
||||
enableMultilib = true;
|
||||
}))
|
||||
else throw "Multilib gcc not supported on ‘${system}’";
|
||||
else throw "Multilib ${cc.name} not supported on ‘${system}’";
|
||||
|
||||
gcc_multi = wrapCCMulti gcc;
|
||||
|
||||
gcc_debug = lowPrio (wrapCC (gcc.cc.override {
|
||||
stripped = false;
|
||||
|
|
Loading…
Reference in a new issue