about summary refs log tree commit diff
path: root/pkgs/misc/emulators/wine/packages.nix
blob: 6c06bcb0949b33544ae1ae5b3348f3a1852c83af (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{ system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, callPackage, callPackage_i686,
  overrideCC, wrapCCMulti, gcc49,
  wineRelease ? "stable",
  supportFlags
}:

let src = lib.getAttr wineRelease (callPackage ./sources.nix {});
in with src; {
  wine32 = callPackage_i686 ./base.nix {
    name = "wine-${version}";
    inherit src version supportFlags;
    pkgArches = [ pkgsi686Linux ];
    geckos = [ gecko32 ];
    monos =  [ mono ];
    platforms = [ "i686-linux" "x86_64-linux" ];
  };
  wine64 = callPackage ./base.nix {
    name = "wine64-${version}";
    inherit src version supportFlags;
    # 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 ];
    configureFlags = [ "--enable-win64" ];
    platforms = [ "x86_64-linux" ];
  };
  wineWow = callPackage ./base.nix {
    name = "wine-wow-${version}";
    inherit src version supportFlags;
    # FIXME: see above.
    stdenv = overrideCC stdenv_32bit (wrapCCMulti gcc49);
    pkgArches = [ pkgs pkgsi686Linux ];
    geckos = [ gecko32 gecko64 ];
    monos =  [ mono ];
    buildScript = ./builder-wow.sh;
    platforms = [ "x86_64-linux" ];
  };
}