mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-29 14:57:28 +03:00
Merge pull request #15367 from bendlas/update-wine
wine-unstable: 1.9.7 -> 1.9.11; add optional dependencies; opencl-icd: init; refactor flags
This commit is contained in:
commit
21f5510a54
15
pkgs/development/libraries/opencl-icd/default.nix
Normal file
15
pkgs/development/libraries/opencl-icd/default.nix
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{ stdenv, fetchurl, ruby, opencl-headers }: let
|
||||||
|
|
||||||
|
version = "2.2.9";
|
||||||
|
|
||||||
|
in stdenv.mkDerivation {
|
||||||
|
|
||||||
|
name = "opencl-icd-${version}";
|
||||||
|
buildInputs = [ ruby opencl-headers ];
|
||||||
|
configureFlags = [ "--enable-official-khronos-headers" ];
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://forge.imag.fr/frs/download.php/716/ocl-icd-${version}.tar.gz";
|
||||||
|
sha256 = "1rgaixwnxmrq2aq4kcdvs0yx7i6krakarya9vqs7qwsv5hzc32hc";
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, lib, pkgArches,
|
{ stdenv, lib, pkgArches,
|
||||||
name, version, src, monos, geckos, platforms,
|
name, version, src, monos, geckos, platforms,
|
||||||
pkgconfig, fontforge, makeWrapper, flex, bison,
|
pkgconfig, fontforge, makeWrapper, flex, bison,
|
||||||
pulseaudioSupport,
|
supportFlags,
|
||||||
buildScript ? null, configureFlags ? ""
|
buildScript ? null, configureFlags ? ""
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -19,14 +19,41 @@ stdenv.mkDerivation ((lib.optionalAttrs (! isNull buildScript) {
|
|||||||
pkgconfig fontforge makeWrapper flex bison
|
pkgconfig fontforge makeWrapper flex bison
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = toBuildInputs pkgArches (pkgs: (with pkgs; [
|
buildInputs = toBuildInputs pkgArches (with supportFlags; (pkgs:
|
||||||
freetype fontconfig mesa mesa_noglu.osmesa libdrm libpng libjpeg openssl gnutls cups ncurses
|
[ pkgs.freetype ]
|
||||||
alsaLib libxml2 libxslt lcms2 gettext dbus mpg123 openal
|
++ lib.optional pngSupport pkgs.libpng
|
||||||
])
|
++ lib.optional jpegSupport pkgs.libjpeg
|
||||||
|
++ lib.optional cupsSupport pkgs.cups
|
||||||
|
++ lib.optional colorManagementSupport pkgs.lcms2
|
||||||
|
++ lib.optional gettextSupport pkgs.gettext
|
||||||
|
++ lib.optional dbusSupport pkgs.dbus
|
||||||
|
++ lib.optional mpg123Support pkgs.mpg123
|
||||||
|
++ lib.optional openalSupport pkgs.openal
|
||||||
|
++ lib.optional cairoSupport pkgs.cairo
|
||||||
|
++ lib.optional tiffSupport pkgs.libtiff
|
||||||
|
++ lib.optional odbcSupport pkgs.unixODBC
|
||||||
|
++ lib.optional netapiSupport pkgs.samba3_light
|
||||||
|
++ lib.optional cursesSupport pkgs.ncurses
|
||||||
|
++ lib.optional vaSupport pkgs.libva
|
||||||
|
++ lib.optional pcapSupport pkgs.libpcap
|
||||||
|
++ lib.optional v4lSupport pkgs.libv4l
|
||||||
|
++ lib.optional saneSupport pkgs.saneBackends
|
||||||
|
++ lib.optional gsmSupport pkgs.gsm
|
||||||
|
++ lib.optional gphoto2Support pkgs.libgphoto2
|
||||||
|
++ lib.optional ldapSupport pkgs.openldap
|
||||||
|
++ lib.optional fontconfigSupport pkgs.fontconfig
|
||||||
|
++ lib.optional alsaSupport pkgs.alsaLib
|
||||||
++ lib.optional pulseaudioSupport pkgs.libpulseaudio
|
++ lib.optional pulseaudioSupport pkgs.libpulseaudio
|
||||||
|
++ lib.optional xineramaSupport pkgs.xorg.libXinerama
|
||||||
|
++ lib.optional gstreamerSupport pkgs.gst_plugins_base
|
||||||
|
++ lib.optionals gtkSupport [ pkgs.gtk3 pkgs.gnome.glib ]
|
||||||
|
++ lib.optionals openclSupport [ pkgs.opencl-headers pkgs.opencl-icd ]
|
||||||
|
++ lib.optionals xmlSupport [ pkgs.libxml2 pkgs.libxslt ]
|
||||||
|
++ lib.optionals tlsSupport [ pkgs.openssl pkgs.gnutls ]
|
||||||
|
++ lib.optionals openglSupport [ pkgs.mesa pkgs.mesa_noglu.osmesa pkgs.libdrm ]
|
||||||
++ (with pkgs.xorg; [
|
++ (with pkgs.xorg; [
|
||||||
libXi libXcursor libXinerama libXrandr libXrender libXxf86vm libXcomposite libXext
|
libX11 libXi libXcursor libXrandr libXrender libXxf86vm libXcomposite libXext
|
||||||
]));
|
])));
|
||||||
|
|
||||||
# Wine locates a lot of libraries dynamically through dlopen(). Add
|
# Wine locates a lot of libraries dynamically through dlopen(). Add
|
||||||
# them to the RPATH so that the user doesn't have to set them in
|
# them to the RPATH so that the user doesn't have to set them in
|
||||||
@ -34,7 +61,7 @@ stdenv.mkDerivation ((lib.optionalAttrs (! isNull buildScript) {
|
|||||||
NIX_LDFLAGS = map (path: "-rpath " + path) (
|
NIX_LDFLAGS = map (path: "-rpath " + path) (
|
||||||
map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ] ++ buildInputs)
|
map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ] ++ buildInputs)
|
||||||
# libpulsecommon.so is linked but not found otherwise
|
# libpulsecommon.so is linked but not found otherwise
|
||||||
++ lib.optionals pulseaudioSupport (map (x: "${lib.getLib x}/lib/pulseaudio")
|
++ lib.optionals supportFlags.pulseaudioSupport (map (x: "${lib.getLib x}/lib/pulseaudio")
|
||||||
(toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ])))
|
(toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ])))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -9,13 +9,49 @@
|
|||||||
{ lib, pkgs, system, callPackage,
|
{ lib, pkgs, system, callPackage,
|
||||||
wineRelease ? "stable",
|
wineRelease ? "stable",
|
||||||
wineBuild ? (if system == "x86_64-linux" then "wineWow" else "wine32"),
|
wineBuild ? (if system == "x86_64-linux" then "wineWow" else "wine32"),
|
||||||
|
libtxc_dxtn_Name ? "libtxc_dxtn_s2tc",
|
||||||
|
pngSupport ? false,
|
||||||
|
jpegSupport ? false,
|
||||||
|
tiffSupport ? false,
|
||||||
|
gettextSupport ? false,
|
||||||
|
fontconfigSupport ? false,
|
||||||
|
alsaSupport ? false,
|
||||||
|
gtkSupport ? false,
|
||||||
|
openglSupport ? false,
|
||||||
|
tlsSupport ? false,
|
||||||
|
gstreamerSupport ? false,
|
||||||
|
cupsSupport ? false,
|
||||||
|
colorManagementSupport ? false,
|
||||||
|
dbusSupport ? false,
|
||||||
|
mpg123Support ? false,
|
||||||
|
openalSupport ? false,
|
||||||
|
openclSupport ? false,
|
||||||
|
cairoSupport ? false,
|
||||||
|
odbcSupport ? false,
|
||||||
|
netapiSupport ? false,
|
||||||
|
cursesSupport ? false,
|
||||||
|
vaSupport ? false,
|
||||||
|
pcapSupport ? false,
|
||||||
|
v4lSupport ? false,
|
||||||
|
saneSupport ? false,
|
||||||
|
gsmSupport ? false,
|
||||||
|
gphoto2Support ? false,
|
||||||
|
ldapSupport ? false,
|
||||||
pulseaudioSupport ? false,
|
pulseaudioSupport ? false,
|
||||||
libtxc_dxtn_Name ? "libtxc_dxtn_s2tc" }:
|
xineramaSupport ? false,
|
||||||
|
xmlSupport ? false }:
|
||||||
|
|
||||||
let wine-build = build: release:
|
let wine-build = build: release:
|
||||||
lib.getAttr build (callPackage ./packages.nix {
|
lib.getAttr build (callPackage ./packages.nix {
|
||||||
wineRelease = release;
|
wineRelease = release;
|
||||||
inherit pulseaudioSupport;
|
supportFlags = {
|
||||||
|
inherit pngSupport jpegSupport cupsSupport colorManagementSupport gettextSupport
|
||||||
|
dbusSupport mpg123Support openalSupport cairoSupport tiffSupport odbcSupport
|
||||||
|
netapiSupport cursesSupport vaSupport pcapSupport v4lSupport saneSupport
|
||||||
|
gsmSupport gphoto2Support ldapSupport fontconfigSupport alsaSupport
|
||||||
|
pulseaudioSupport xineramaSupport gtkSupport openclSupport xmlSupport tlsSupport
|
||||||
|
openglSupport gstreamerSupport;
|
||||||
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
in if wineRelease == "staging" then
|
in if wineRelease == "staging" then
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
{ system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, callPackage, callPackage_i686,
|
{ system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, callPackage, callPackage_i686,
|
||||||
overrideCC, wrapCCMulti, gcc49,
|
overrideCC, wrapCCMulti, gcc49,
|
||||||
pulseaudioSupport,
|
wineRelease ? "stable",
|
||||||
wineRelease ? "stable"
|
supportFlags
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let src = lib.getAttr wineRelease (callPackage ./sources.nix {});
|
let src = lib.getAttr wineRelease (callPackage ./sources.nix {});
|
||||||
in with src; {
|
in with src; {
|
||||||
wine32 = callPackage_i686 ./base.nix {
|
wine32 = callPackage_i686 ./base.nix {
|
||||||
name = "wine-${version}";
|
name = "wine-${version}";
|
||||||
inherit src version pulseaudioSupport;
|
inherit src version supportFlags;
|
||||||
pkgArches = [ pkgsi686Linux ];
|
pkgArches = [ pkgsi686Linux ];
|
||||||
geckos = [ gecko32 ];
|
geckos = [ gecko32 ];
|
||||||
monos = [ mono ];
|
monos = [ mono ];
|
||||||
@ -16,7 +16,7 @@ in with src; {
|
|||||||
};
|
};
|
||||||
wine64 = callPackage ./base.nix {
|
wine64 = callPackage ./base.nix {
|
||||||
name = "wine64-${version}";
|
name = "wine64-${version}";
|
||||||
inherit src version pulseaudioSupport;
|
inherit src version supportFlags;
|
||||||
# FIXME: drop this when GCC is updated to >5.3.
|
# FIXME: drop this when GCC is updated to >5.3.
|
||||||
# Corresponding bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
|
# Corresponding bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
|
||||||
stdenv = overrideCC stdenv gcc49;
|
stdenv = overrideCC stdenv gcc49;
|
||||||
@ -28,7 +28,7 @@ in with src; {
|
|||||||
};
|
};
|
||||||
wineWow = callPackage ./base.nix {
|
wineWow = callPackage ./base.nix {
|
||||||
name = "wine-wow-${version}";
|
name = "wine-wow-${version}";
|
||||||
inherit src version pulseaudioSupport;
|
inherit src version supportFlags;
|
||||||
# FIXME: see above.
|
# FIXME: see above.
|
||||||
stdenv = overrideCC stdenv_32bit (wrapCCMulti gcc49);
|
stdenv = overrideCC stdenv_32bit (wrapCCMulti gcc49);
|
||||||
pkgArches = [ pkgs pkgsi686Linux ];
|
pkgArches = [ pkgs pkgsi686Linux ];
|
||||||
|
@ -6,9 +6,9 @@ let fetchurl = args@{url, sha256, ...}:
|
|||||||
in rec {
|
in rec {
|
||||||
|
|
||||||
stable = fetchurl rec {
|
stable = fetchurl rec {
|
||||||
version = "1.8.1";
|
version = "1.8.2";
|
||||||
url = "mirror://sourceforge/wine/wine-${version}.tar.bz2";
|
url = "mirror://sourceforge/wine/wine-${version}.tar.bz2";
|
||||||
sha256 = "15ya496qq24ipqii7ij8x8h5x8n21vgqa4h6binb74w5mzdd76hl";
|
sha256 = "0vsswlnaa9ndg1pais63c39xks519r9fhz0yq3q8fphly2nlyqji";
|
||||||
|
|
||||||
## see http://wiki.winehq.org/Gecko
|
## see http://wiki.winehq.org/Gecko
|
||||||
gecko32 = fetchurl rec {
|
gecko32 = fetchurl rec {
|
||||||
@ -30,9 +30,9 @@ in rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
unstable = fetchurl rec {
|
unstable = fetchurl rec {
|
||||||
version = "1.9.7";
|
version = "1.9.11";
|
||||||
url = "mirror://sourceforge/wine/wine-${version}.tar.bz2";
|
url = "mirror://sourceforge/wine/wine-${version}.tar.bz2";
|
||||||
sha256 = "1v47i0pxqcixnh06x23kzp2dbz1cf3d2sric0bw6xqh54ph5yw29";
|
sha256 = "15mbrnx4zqsdsxz7rwkb1pp58bcyfqnm8f2fh7cbbdgwh117k3vj";
|
||||||
inherit (stable) mono;
|
inherit (stable) mono;
|
||||||
gecko32 = fetchurl rec {
|
gecko32 = fetchurl rec {
|
||||||
version = "2.44";
|
version = "2.44";
|
||||||
@ -48,7 +48,7 @@ in rec {
|
|||||||
|
|
||||||
staging = fetchFromGitHub rec {
|
staging = fetchFromGitHub rec {
|
||||||
inherit (unstable) version;
|
inherit (unstable) version;
|
||||||
sha256 = "1h5hwd07qyx0qw5whf6lcp7v57kqd6mrrcvwwg1bydir68b0zp16";
|
sha256 = "0q990d26wsik16w1yya2z8nwxnhnaiiy85igdnan1ib2b00z861m";
|
||||||
owner = "wine-compholio";
|
owner = "wine-compholio";
|
||||||
repo = "wine-staging";
|
repo = "wine-staging";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
|
@ -8,8 +8,7 @@ let patch = (callPackage ./sources.nix {}).staging;
|
|||||||
in assert (builtins.parseDrvName wineUnstable.name).version == patch.version;
|
in assert (builtins.parseDrvName wineUnstable.name).version == patch.version;
|
||||||
|
|
||||||
stdenv.lib.overrideDerivation wineUnstable (self: {
|
stdenv.lib.overrideDerivation wineUnstable (self: {
|
||||||
nativeBuildInputs = build-inputs [ libtxc_dxtn_Name ] self.nativeBuildInputs;
|
buildInputs = build-inputs [ "perl" "utillinux" "autoconf" libtxc_dxtn_Name ] self.buildInputs;
|
||||||
buildInputs = build-inputs [ "perl" "utillinux" "autoconf" ] self.buildInputs;
|
|
||||||
|
|
||||||
name = "${self.name}-staging";
|
name = "${self.name}-staging";
|
||||||
|
|
||||||
|
@ -8622,6 +8622,8 @@ in
|
|||||||
|
|
||||||
opencl-headers = callPackage ../development/libraries/opencl-headers { };
|
opencl-headers = callPackage ../development/libraries/opencl-headers { };
|
||||||
|
|
||||||
|
opencl-icd = callPackage ../development/libraries/opencl-icd { };
|
||||||
|
|
||||||
opencollada = callPackage ../development/libraries/opencollada { };
|
opencollada = callPackage ../development/libraries/opencollada { };
|
||||||
|
|
||||||
opencsg = callPackage ../development/libraries/opencsg { };
|
opencsg = callPackage ../development/libraries/opencsg { };
|
||||||
@ -16885,8 +16887,52 @@ in
|
|||||||
wineRelease = config.wine.release or "stable";
|
wineRelease = config.wine.release or "stable";
|
||||||
wineBuild = config.wine.build or "wine32";
|
wineBuild = config.wine.build or "wine32";
|
||||||
pulseaudioSupport = config.pulseaudio or stdenv.isLinux;
|
pulseaudioSupport = config.pulseaudio or stdenv.isLinux;
|
||||||
|
pngSupport = true;
|
||||||
|
jpegSupport = true;
|
||||||
|
tiffSupport = true;
|
||||||
|
gettextSupport = true;
|
||||||
|
fontconfigSupport = true;
|
||||||
|
alsaSupport = true;
|
||||||
|
openglSupport = true;
|
||||||
|
tlsSupport = true;
|
||||||
|
cursesSupport = true;
|
||||||
};
|
};
|
||||||
wineStable = wine.override { wineRelease = "stable"; };
|
wineMinimal = lowPrio (self.wine.override {
|
||||||
|
pulseaudioSupport = false;
|
||||||
|
pngSupport = false;
|
||||||
|
jpegSupport = false;
|
||||||
|
tiffSupport = false;
|
||||||
|
gettextSupport = false;
|
||||||
|
fontconfigSupport = false;
|
||||||
|
alsaSupport = false;
|
||||||
|
openglSupport = false;
|
||||||
|
tlsSupport = false;
|
||||||
|
cursesSupport = false;
|
||||||
|
});
|
||||||
|
wineFull = lowPrio (self.wine.override {
|
||||||
|
gtkSupport = true;
|
||||||
|
gstreamerSupport = true;
|
||||||
|
cupsSupport = true;
|
||||||
|
colorManagementSupport = true;
|
||||||
|
dbusSupport = true;
|
||||||
|
mpg123Support = true;
|
||||||
|
openalSupport = true;
|
||||||
|
openclSupport = true;
|
||||||
|
cairoSupport = true;
|
||||||
|
odbcSupport = true;
|
||||||
|
netapiSupport = true;
|
||||||
|
vaSupport = true;
|
||||||
|
pcapSupport = true;
|
||||||
|
v4lSupport = true;
|
||||||
|
saneSupport = true;
|
||||||
|
gsmSupport = true;
|
||||||
|
gphoto2Support = true;
|
||||||
|
ldapSupport = true;
|
||||||
|
pulseaudioSupport = true;
|
||||||
|
xineramaSupport = true;
|
||||||
|
xmlSupport = true;
|
||||||
|
});
|
||||||
|
wineStable = self.wine.override { wineRelease = "stable"; };
|
||||||
wineUnstable = lowPrio (self.wine.override { wineRelease = "unstable"; });
|
wineUnstable = lowPrio (self.wine.override { wineRelease = "unstable"; });
|
||||||
wineStaging = lowPrio (self.wine.override { wineRelease = "staging"; });
|
wineStaging = lowPrio (self.wine.override { wineRelease = "staging"; });
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user