windows.pthreads: Remove win32-pthreads, exclusively use mingwW64 pthreads (#430165)

This commit is contained in:
John Ericson 2025-08-01 16:33:42 -04:00 committed by GitHub
commit b4b350d8bd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 9 additions and 47 deletions

View File

@ -49,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = buildInputs =
lib.optional enableJemalloc jemalloc lib.optional enableJemalloc jemalloc
++ lib.optional enableLiburing liburing ++ lib.optional enableLiburing liburing
++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64_pthreads; ++ lib.optional stdenv.hostPlatform.isMinGW windows.pthreads;
outputs = [ outputs = [
"out" "out"

View File

@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
libmpc libmpc
] ]
++ lib.optional withNrepl notcurses ++ lib.optional withNrepl notcurses
++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64_pthreads; ++ lib.optional stdenv.hostPlatform.isMinGW windows.pthreads;
# The following scripts are modified from [Guix's](https://packages.guix.gnu.org/packages/s7/). # The following scripts are modified from [Guix's](https://packages.guix.gnu.org/packages/s7/).

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
openssl openssl
] ]
++ lib.optionals stdenv.hostPlatform.isMinGW [ ++ lib.optionals stdenv.hostPlatform.isMinGW [
windows.mingw_w64_pthreads windows.pthreads
]; ];
patches = lib.optionals stdenv.hostPlatform.isMinGW [ patches = lib.optionals stdenv.hostPlatform.isMinGW [

View File

@ -248,7 +248,7 @@ let
] ]
++ optionals stdenv.hostPlatform.isMinGW [ ++ optionals stdenv.hostPlatform.isMinGW [
windows.dlfcn windows.dlfcn
windows.mingw_w64_pthreads windows.pthreads
] ]
++ optionals tzdataSupport [ ++ optionals tzdataSupport [
tzdata tzdata

View File

@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
ntl ntl
] ]
++ lib.optionals stdenv.hostPlatform.isMinGW [ ++ lib.optionals stdenv.hostPlatform.isMinGW [
windows.mingw_w64_pthreads windows.pthreads
]; ];
# We're not using autoreconfHook because flint's bootstrap # We're not using autoreconfHook because flint's bootstrap

View File

@ -31,13 +31,13 @@ lib.makeScope newScope (
mingw_w64_headers = callPackage ./mingw-w64/headers.nix { }; mingw_w64_headers = callPackage ./mingw-w64/headers.nix { };
mingw_w64_pthreads = callPackage ./mingw-w64/pthreads.nix { stdenv = crossThreadsStdenv; }; mingw_w64_pthreads = lib.warn "windows.mingw_w64_pthreads is deprecated, windows.pthreads should be preferred" self.pthreads;
mcfgthreads = callPackage ./mcfgthreads { stdenv = crossThreadsStdenv; }; mcfgthreads = callPackage ./mcfgthreads { stdenv = crossThreadsStdenv; };
npiperelay = callPackage ./npiperelay { }; npiperelay = callPackage ./npiperelay { };
pthreads = callPackage ./pthread-w32 { }; pthreads = callPackage ./mingw-w64/pthreads.nix { stdenv = crossThreadsStdenv; };
libgnurx = callPackage ./libgnurx { }; libgnurx = callPackage ./libgnurx { };

View File

@ -1,37 +0,0 @@
{
lib,
stdenv,
fetchzip,
}:
stdenv.mkDerivation {
pname = "pthreads-w32";
version = "2.9.1";
src = fetchzip {
url = "https://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.tar.gz";
hash = "sha256-PHlICSHvPNoTXEOituTmozEgu/oTyAZVQuIb8I63Eek=";
};
makeFlags = [
"CROSS=${stdenv.cc.targetPrefix}"
"GC-static"
];
installPhase = ''
runHook preInstall
install -D libpthreadGC2.a $out/lib/libpthread.a
runHook postInstall
'';
meta = {
description = "POSIX threads library for Windows";
homepage = "https://sourceware.org/pthreads-win32";
license = lib.licenses.lgpl21Plus;
maintainers = [ lib.maintainers.RossSmyth ];
platforms = lib.platforms.windows;
teams = [ lib.teams.windows ];
};
}

View File

@ -154,8 +154,7 @@ self: super:
libxcb = super.libxcb.overrideAttrs (attrs: { libxcb = super.libxcb.overrideAttrs (attrs: {
# $dev/include/xcb/xcb.h includes pthread.h # $dev/include/xcb/xcb.h includes pthread.h
propagatedBuildInputs = propagatedBuildInputs =
attrs.propagatedBuildInputs or [ ] attrs.propagatedBuildInputs or [ ] ++ lib.optional stdenv.hostPlatform.isMinGW windows.pthreads;
++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64_pthreads;
configureFlags = [ configureFlags = [
"--enable-xkb" "--enable-xkb"
"--enable-xinput" "--enable-xinput"

View File

@ -109,7 +109,7 @@ let
libffi = nativePlatforms; libffi = nativePlatforms;
libtool = nativePlatforms; libtool = nativePlatforms;
libunistring = nativePlatforms; libunistring = nativePlatforms;
windows.mingw_w64_pthreads = nativePlatforms; windows.pthreads = nativePlatforms;
}; };
wasiCommon = { wasiCommon = {