Merge pull request #40291 from obsidiansystems/fewer-crossAttrs

misc pkgs: Fewer cross attrs
This commit is contained in:
John Ericson 2018-05-10 13:28:12 -04:00 committed by GitHub
commit 4ae207aea0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 22 additions and 68 deletions

View file

@ -15,24 +15,6 @@ with lib;
assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport;
assert openglSupport -> (stdenv.isDarwin || x11Support && libGL != null && libGLU != null);
let
configureFlagsFun = attrs: [
"--disable-oss"
"--disable-video-x11-xme"
"--enable-rpath"
# Building without this fails on Darwin with
#
# ./src/video/x11/SDL_x11sym.h:168:17: error: conflicting types for '_XData32'
# SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
#
# Please try revert the change that introduced this comment when updating SDL.
] ++ optional stdenv.isDarwin "--disable-x11-shared"
++ optional (!x11Support) "--without-x"
++ optional alsaSupport "--with-alsa-prefix=${attrs.alsaLib.out}/lib";
in
stdenv.mkDerivation rec {
name = "SDL-${version}";
version = "1.2.15";
@ -62,11 +44,19 @@ stdenv.mkDerivation rec {
++ optional (!hostPlatform.isMinGW) audiofile
++ optionals stdenv.isDarwin [ AudioUnit CoreAudio CoreServices Kernel OpenGL ];
configureFlags = configureFlagsFun { inherit alsaLib; };
crossAttrs = {
configureFlags = configureFlagsFun { alsaLib = alsaLib.crossDrv; };
};
configureFlags = [
"--disable-oss"
"--disable-video-x11-xme"
"--enable-rpath"
# Building without this fails on Darwin with
#
# ./src/video/x11/SDL_x11sym.h:168:17: error: conflicting types for '_XData32'
# SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
#
# Please try revert the change that introduced this comment when updating SDL.
] ++ optional stdenv.isDarwin "--disable-x11-shared"
++ optional (!x11Support) "--without-x"
++ optional alsaSupport "--with-alsa-prefix=${alsaLib.out}/lib";
patches = [
./find-headers.patch

View file

@ -19,15 +19,6 @@ with lib;
assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport;
assert openglSupport -> (stdenv.isDarwin || x11Support && libGL != null);
let
configureFlagsFun = attrs: [
"--disable-oss"
] ++ optional (!x11Support) "--without-x"
++ optional alsaSupport "--with-alsa-prefix=${attrs.alsaLib.out}/lib";
in
stdenv.mkDerivation rec {
name = "SDL2-${version}";
version = "2.0.8";
@ -61,11 +52,10 @@ stdenv.mkDerivation rec {
# pointer-constraints-unstable-v1-client-protocol.h: No such file or directory
enableParallelBuilding = false;
configureFlags = configureFlagsFun { inherit alsaLib; };
crossAttrs = {
configureFlags = configureFlagsFun { alsaLib = alsaLib.crossDrv; };
};
configureFlags = [
"--disable-oss"
] ++ optional (!x11Support) "--without-x"
++ optional alsaSupport "--with-alsa-prefix=${alsaLib.out}/lib";
postInstall = ''
moveToOutput lib/libSDL2main.a "$dev"

View file

@ -62,11 +62,4 @@ in stdenv.mkDerivation rec {
wrapProgram "$dev/bin/freetype-config" \
--set PKG_CONFIG_PATH "$PKG_CONFIG_PATH:$dev/lib/pkgconfig"
'';
crossAttrs = stdenv.lib.optionalAttrs (hostPlatform.libc or null != "msvcrt") {
# Somehow it calls the unwrapped gcc, "i686-pc-linux-gnu-gcc", instead
# of gcc. I think it's due to the unwrapped gcc being in the PATH. I don't
# know why it's on the PATH.
configureFlags = "--disable-static CC_BUILD=gcc";
};
}

View file

@ -22,9 +22,9 @@ stdenv.mkDerivation rec {
configureFlags = [ "--enable-install-test-programs" ]
++ stdenv.lib.optionals (stdenv.isAarch32 || stdenv.isAarch64)
[ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ]
++ stdenv.lib.optional stdenv.isDarwin "-C";
crossAttrs.configureFlags = configureFlags ++ [ "--disable-intel" ];
++ stdenv.lib.optional stdenv.isDarwin "-C"
++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-intel"
;
meta = {
homepage = https://dri.freedesktop.org/libdrm/;

View file

@ -18,11 +18,6 @@ stdenv.mkDerivation rec {
passthru = { inherit zlib; };
crossAttrs = stdenv.lib.optionalAttrs (hostPlatform.libc == "libSystem") {
propagatedBuildInputs = [];
passthru = {};
};
configureFlags = "--enable-static";
postInstall = ''mv "$out/bin" "$dev/bin"'';

View file

@ -12,22 +12,8 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "devdoc" ];
buildInputs = [ openssl zlib ];
crossAttrs = {
# link against cross-built libraries
configureFlags = [
"--with-openssl"
"--with-libssl-prefix=${openssl.crossDrv}"
"--with-libz"
"--with-libz-prefix=${zlib.crossDrv}"
];
} // stdenv.lib.optionalAttrs (hostPlatform.libc == "msvcrt") {
# mingw needs import library of ws2_32 to build the shared library
preConfigure = ''
export LDFLAGS="-L${windows.mingw_w64}/lib $LDFLAGS"
'';
};
buildInputs = [ openssl zlib ]
++ stdenv.lib.optional hostPlatform.isMinGW windows.mingw_w64;
meta = {
description = "A client-side C library implementing the SSH2 protocol";