nixos/tests/userborn: fix setting hostPlatform (#378940)
[NixPkgs.git] / pkgs / applications / emulators / wine / packages.nix
blobc0dc9e9af2bb472506f8b90da1a19087c9286e6e
2   stdenv_32bit,
3   lib,
4   pkgs,
5   pkgsi686Linux,
6   pkgsCross,
7   callPackage,
8   replaceVars,
9   moltenvk,
10   wineRelease ? "stable",
11   supportFlags,
14 let
15   src = lib.getAttr wineRelease (callPackage ./sources.nix { });
17 with src;
19   wine32 = pkgsi686Linux.callPackage ./base.nix {
20     pname = "wine";
21     inherit
22       src
23       version
24       supportFlags
25       patches
26       moltenvk
27       wineRelease
28       ;
29     pkgArches = [ pkgsi686Linux ];
30     geckos = [ gecko32 ];
31     mingwGccs = with pkgsCross; [ mingw32.buildPackages.gcc ];
32     monos = [ mono ];
33     platforms = [
34       "i686-linux"
35       "x86_64-linux"
36     ];
37   };
38   wine64 = callPackage ./base.nix {
39     pname = "wine64";
40     inherit
41       src
42       version
43       supportFlags
44       patches
45       moltenvk
46       wineRelease
47       ;
48     pkgArches = [ pkgs ];
49     mingwGccs = with pkgsCross; [ mingwW64.buildPackages.gcc ];
50     geckos = [ gecko64 ];
51     monos = [ mono ];
52     configureFlags = [ "--enable-win64" ];
53     platforms = [
54       "x86_64-linux"
55       "x86_64-darwin"
56     ];
57     mainProgram = "wine64";
58   };
59   wineWow = callPackage ./base.nix {
60     pname = "wine-wow";
61     inherit
62       src
63       version
64       supportFlags
65       patches
66       moltenvk
67       wineRelease
68       ;
69     stdenv = stdenv_32bit;
70     pkgArches = [
71       pkgs
72       pkgsi686Linux
73     ];
74     geckos = [
75       gecko32
76       gecko64
77     ];
78     mingwGccs = with pkgsCross; [
79       mingw32.buildPackages.gcc
80       mingwW64.buildPackages.gcc
81     ];
82     monos = [ mono ];
83     buildScript = replaceVars ./builder-wow.sh {
84       # pkgconfig has trouble picking the right architecture
85       pkgconfig64remove = lib.makeSearchPathOutput "dev" "lib/pkgconfig" [
86         pkgs.glib
87         pkgs.gst_all_1.gstreamer
88       ];
89     };
90     platforms = [ "x86_64-linux" ];
91     mainProgram = "wine64";
92   };
93   wineWow64 = callPackage ./base.nix {
94     pname = "wine-wow64";
95     inherit
96       src
97       version
98       patches
99       moltenvk
100       wineRelease
101       ;
102     supportFlags = supportFlags // {
103       mingwSupport = true;
104     }; # Required because we request "--enable-archs=x86_64"
105     pkgArches = [ pkgs ];
106     mingwGccs = with pkgsCross; [
107       mingw32.buildPackages.gcc
108       mingwW64.buildPackages.gcc
109     ];
110     geckos = [ gecko64 ];
111     monos = [ mono ];
112     configureFlags = [ "--enable-archs=x86_64,i386" ];
113     platforms = [
114       "x86_64-linux"
115       "x86_64-darwin"
116     ];
117     mainProgram = "wine";
118   };