Merge pull request #243161 from nh2/more-enableStatic

This commit is contained in:
Artturi 2023-11-07 03:49:21 +02:00 committed by GitHub
commit fbb3ff5e12
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 6 deletions

View file

@ -28,7 +28,7 @@ in rec {
cctools_ = darwin.cctools;
# Avoid debugging larger changes for now.
bzip2_ = bzip2.override (args: { linkStatic = true; });
bzip2_ = bzip2.override (args: { enableStatic = true; enableShared = false; });
# Avoid messing with libkrb5 and libnghttp2.
curl_ = curlMinimal.override (args: { gssSupport = false; http2Support = false; });

View file

@ -1,5 +1,6 @@
{ lib, stdenv, fetchurl
, linkStatic ? with stdenv.hostPlatform; isStatic || isCygwin
, enableStatic ? with stdenv.hostPlatform; isStatic || isCygwin
, enableShared ? true
, autoreconfHook
, testers
}:
@ -47,8 +48,12 @@ in {
outputs = [ "bin" "dev" "out" "man" ];
configureFlags =
lib.optionals linkStatic [ "--enable-static" "--disable-shared" ];
configureFlags = lib.concatLists [
(lib.optional enableStatic "--enable-static")
(lib.optional (!enableShared) "--disable-shared")
];
dontDisableStatic = enableStatic;
enableParallelBuilding = true;

View file

@ -2,7 +2,8 @@
, fixDarwinDylibNames
, file
, legacySupport ? false
, static ? stdenv.hostPlatform.isStatic
, static ? stdenv.hostPlatform.isStatic # generates static libraries *only*
, enableStatic ? static
# these need to be ran on the host, thus disable when cross-compiling
, buildContrib ? stdenv.hostPlatform == stdenv.buildPlatform
, doCheck ? stdenv.hostPlatform == stdenv.buildPlatform
@ -54,7 +55,7 @@ stdenv.mkDerivation rec {
cmakeFlags = lib.attrsets.mapAttrsToList
(name: value: "-DZSTD_${name}:BOOL=${if value then "ON" else "OFF"}") {
BUILD_SHARED = !static;
BUILD_STATIC = static;
BUILD_STATIC = enableStatic;
BUILD_CONTRIB = buildContrib;
PROGRAMS_LINK_SHARED = !static;
LEGACY_SUPPORT = legacySupport;