summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/systems/parse.nix23
-rw-r--r--pkgs/applications/graphics/ImageMagick/6.x.nix5
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--pkgs/applications/science/biology/cd-hit/default.nix8
-rw-r--r--pkgs/development/compilers/copper/default.nix1
-rw-r--r--pkgs/development/interpreters/lua-5/5.4.darwin.patch48
-rw-r--r--pkgs/development/interpreters/lua-5/default.nix6
-rw-r--r--pkgs/development/tools/ecpdap/default.nix5
-rw-r--r--pkgs/servers/irc/inspircd/default.nix8
-rw-r--r--pkgs/tools/graphics/dmtx-utils/default.nix4
-rw-r--r--pkgs/tools/misc/code-minimap/default.nix4
-rw-r--r--pkgs/tools/networking/findomain/default.nix3
-rw-r--r--pkgs/top-level/all-packages.nix13
13 files changed, 107 insertions, 25 deletions
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index a06ac0d11f74..accaeb652d07 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -121,15 +121,20 @@ rec {
js = { bits = 32; significantByte = littleEndian; family = "js"; };
};
- # Determine where two CPUs are compatible with each other. That is,
- # can we run code built for system b on system a? For that to
- # happen, then the set of all possible possible programs that system
- # b accepts must be a subset of the set of all programs that system
- # a accepts. This compatibility relation forms a category where each
- # CPU is an object and each arrow from a to b represents
- # compatibility. CPUs with multiple modes of Endianness are
- # isomorphic while all CPUs are endomorphic because any program
- # built for a CPU can run on that CPU.
+ # Determine when two CPUs are compatible with each other. That is,
+ # can code built for system B run on system A? For that to happen,
+ # the programs that system B accepts must be a subset of the
+ # programs that system A accepts.
+ #
+ # We have the following properties of the compatibility relation,
+ # which must be preserved when adding compatibility information for
+ # additional CPUs.
+ # - (reflexivity)
+ # Every CPU is compatible with itself.
+ # - (transitivity)
+ # If A is compatible with B and B is compatible with C then A is compatible with C.
+ # - (compatible under multiple endianness)
+ # CPUs with multiple modes of endianness are pairwise compatible.
isCompatible = a: b: with cpuTypes; lib.any lib.id [
# x86
(b == i386 && isCompatible a i486)
diff --git a/pkgs/applications/graphics/ImageMagick/6.x.nix b/pkgs/applications/graphics/ImageMagick/6.x.nix
index c77e60950c96..d6e97c5d682f 100644
--- a/pkgs/applications/graphics/ImageMagick/6.x.nix
+++ b/pkgs/applications/graphics/ImageMagick/6.x.nix
@@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, libtool
, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg, djvulibre
, lcms2, openexr, libpng, librsvg, libtiff, libxml2, openjpeg, libwebp, fftw, libheif, libde265
-, ApplicationServices
+, ApplicationServices, Foundation
}:
let
@@ -50,7 +50,8 @@ stdenv.mkDerivation rec {
]
++ lib.optionals (!stdenv.hostPlatform.isMinGW)
[ openexr librsvg openjpeg ]
- ++ lib.optional stdenv.isDarwin ApplicationServices;
+ ++ lib.optionals stdenv.isDarwin
+ [ ApplicationServices Foundation ];
propagatedBuildInputs =
[ bzip2 freetype libjpeg lcms2 fftw ]
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 52bd01ae17b0..60d5dec48a5a 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -20,13 +20,13 @@
stdenv.mkDerivation rec {
pname = "kubernetes";
- version = "1.21.0";
+ version = "1.21.1";
src = fetchFromGitHub {
owner = "kubernetes";
repo = "kubernetes";
rev = "v${version}";
- sha256 = "sha256-5IUcKVbHxL5qb7M087sZSsd50t5zSaeWATnyLHkVsRU=";
+ sha256 = "sha256-gJjCw28SqU49kIiRH+MZgeYN4VBgKVEaRPr5A/2c5Pc=";
};
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ];
diff --git a/pkgs/applications/science/biology/cd-hit/default.nix b/pkgs/applications/science/biology/cd-hit/default.nix
index bed562abe23c..ba1d6c27ccb1 100644
--- a/pkgs/applications/science/biology/cd-hit/default.nix
+++ b/pkgs/applications/science/biology/cd-hit/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper, zlib, perl, perlPackages }:
+{ lib, stdenv, fetchFromGitHub, makeWrapper, zlib, perl, perlPackages, openmp }:
stdenv.mkDerivation rec {
version = "4.8.1";
@@ -14,8 +14,12 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ perl perlPackages.TextNSP perlPackages.PerlMagick ];
nativeBuildInputs = [ zlib makeWrapper ];
+ buildInputs = lib.optional stdenv.cc.isClang openmp;
- makeFlags = [ "PREFIX=$(out)/bin" ];
+ makeFlags = [
+ "CC=${stdenv.cc.targetPrefix}c++" # remove once https://github.com/weizhongli/cdhit/pull/114 is merged
+ "PREFIX=$(out)/bin"
+ ];
preInstall = "mkdir -p $out/bin";
diff --git a/pkgs/development/compilers/copper/default.nix b/pkgs/development/compilers/copper/default.nix
index dd6af73547af..736004fb580d 100644
--- a/pkgs/development/compilers/copper/default.nix
+++ b/pkgs/development/compilers/copper/default.nix
@@ -28,5 +28,6 @@ stdenv.mkDerivation rec {
homepage = "https://tibleiz.net/copper/";
license = licenses.bsd2;
platforms = platforms.x86_64;
+ broken = stdenv.isDarwin;
};
}
diff --git a/pkgs/development/interpreters/lua-5/5.4.darwin.patch b/pkgs/development/interpreters/lua-5/5.4.darwin.patch
new file mode 100644
index 000000000000..eb16ed9c6897
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/5.4.darwin.patch
@@ -0,0 +1,48 @@
+--- a/Makefile 2021-05-14 22:39:14.407200562 +0300
++++ b/Makefile 2021-05-14 22:36:23.828513407 +0300
+@@ -41,7 +41,7 @@
+ # What to install.
+ TO_BIN= lua luac
+ TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp
+-TO_LIB= liblua.a
++TO_LIB= liblua.${version}.dylib
+ TO_MAN= lua.1 luac.1
+
+ # Lua version and release.
+@@ -60,6 +60,8 @@
+ cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
+ cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
+ cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
++ ln -s -f liblua.${version}.dylib $(INSTALL_LIB)/liblua.${luaversion}.dylib
++ ln -s -f liblua.${luaversion}.dylib $(INSTALL_LIB)/liblua.dylib
+
+ uninstall:
+ cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN)
+--- a/src/Makefile 2021-05-14 22:35:38.575051882 +0300
++++ b/src/Makefile 2021-05-14 22:35:33.584631206 +0300
+@@ -32,7 +32,7 @@
+
+ PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris
+
+-LUA_A= liblua.a
++LUA_A= liblua.${version}.dylib
+ CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o
+ LIB_O= lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o
+ BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS)
+@@ -57,11 +57,13 @@
+ a: $(ALL_A)
+
+ $(LUA_A): $(BASE_O)
+- $(AR) $@ $(BASE_O)
+- $(RANLIB) $@
++ $(CC) -dynamiclib -install_name $(out)/lib/liblua.${version}.dylib \
++ -compatibility_version ${version} -current_version ${version} \
++ -o liblua.${version}.dylib $^
+
+ $(LUA_T): $(LUA_O) $(LUA_A)
+- $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
++ $(CC) -fno-common $(MYLDFLAGS) \
++ -o $@ $(LUA_O) $(LUA_A) -L. -llua.${version} $(LIBS)
+
+ $(LUAC_T): $(LUAC_O) $(LUA_A)
+ $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix
index ae5d76aa36c0..3f525e6d6f0d 100644
--- a/pkgs/development/interpreters/lua-5/default.nix
+++ b/pkgs/development/interpreters/lua-5/default.nix
@@ -5,6 +5,12 @@ rec {
lua5_4 = callPackage ./interpreter.nix {
sourceVersion = { major = "5"; minor = "4"; patch = "2"; };
hash = "0ksj5zpj74n0jkamy3di1p6l10v4gjnd2zjnb453qc6px6bhsmqi";
+
+ patches = if stdenv.isDarwin then [ ./5.4.darwin.patch ] else [
+ # build lua as a shared library as well, MIT-licensed from
+ # https://github.com/archlinux/svntogit-packages/tree/packages/lua/trunk
+ ./liblua.so.patch
+ ];
};
lua5_4_compat = lua5_4.override({
diff --git a/pkgs/development/tools/ecpdap/default.nix b/pkgs/development/tools/ecpdap/default.nix
index 46b5945fb949..3bb12c40e355 100644
--- a/pkgs/development/tools/ecpdap/default.nix
+++ b/pkgs/development/tools/ecpdap/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, rustPlatform, pkg-config, libusb1 }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, pkg-config, libusb1, AppKit }:
rustPlatform.buildRustPackage rec {
pname = "ecpdap";
@@ -15,7 +15,8 @@ rustPlatform.buildRustPackage rec {
nativeBuildInputs = [ pkg-config ];
- buildInputs = [ libusb1 ];
+ buildInputs = [ libusb1 ]
+ ++ lib.optional stdenv.isDarwin AppKit;
postInstall = ''
mkdir -p $out/etc/udev/rules.d
diff --git a/pkgs/servers/irc/inspircd/default.nix b/pkgs/servers/irc/inspircd/default.nix
index f907e337ce6d..561151bfa754 100644
--- a/pkgs/servers/irc/inspircd/default.nix
+++ b/pkgs/servers/irc/inspircd/default.nix
@@ -142,13 +142,13 @@ in
stdenv.mkDerivation rec {
pname = "inspircd";
- version = "3.9.0";
+ version = "3.10.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
- sha256 = "0x3paasf4ynx4ddky2nq613vyirbhfnxzkjq148k7154pz3q426s";
+ sha256 = "1817gmxk4v7k5398d2fb6qkwadg0fd980gqmr80wdnppx450ikn7";
};
outputs = [ "bin" "lib" "man" "doc" "out" ];
@@ -160,6 +160,8 @@ stdenv.mkDerivation rec {
buildInputs = extraInputs;
configurePhase = ''
+ runHook preConfigure
+
patchShebangs configure make/*.pl
# configure is executed twice, once to set the extras
@@ -183,6 +185,8 @@ stdenv.mkDerivation rec {
--module-dir ${placeholder "lib"}/lib/inspircd \
--runtime-dir /var/run \
--script-dir ${placeholder "bin"}/share/inspircd \
+
+ runHook postConfigure
'';
postInstall = ''
diff --git a/pkgs/tools/graphics/dmtx-utils/default.nix b/pkgs/tools/graphics/dmtx-utils/default.nix
index 4ab54593ed8d..f4cc746a24f3 100644
--- a/pkgs/tools/graphics/dmtx-utils/default.nix
+++ b/pkgs/tools/graphics/dmtx-utils/default.nix
@@ -5,6 +5,7 @@
, pkg-config
, libdmtx
, imagemagick
+, Foundation
}:
stdenv.mkDerivation rec {
@@ -20,7 +21,8 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook pkg-config ];
- buildInputs = [ libdmtx imagemagick ];
+ buildInputs = [ libdmtx imagemagick ]
+ ++ lib.optional stdenv.isDarwin Foundation;
meta = {
description = "Data matrix command-line utilities";
diff --git a/pkgs/tools/misc/code-minimap/default.nix b/pkgs/tools/misc/code-minimap/default.nix
index 6a253a493fc4..cd0be4fa99bf 100644
--- a/pkgs/tools/misc/code-minimap/default.nix
+++ b/pkgs/tools/misc/code-minimap/default.nix
@@ -1,6 +1,8 @@
{ lib
+, stdenv
, rustPlatform
, fetchFromGitHub
+, libiconv
}:
rustPlatform.buildRustPackage rec {
@@ -16,6 +18,8 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "sha256-87aRZC4OE3UTVToHi5XDBxVqEH4oFeFR4REf69OBkIw=";
+ buildInputs = lib.optional stdenv.isDarwin libiconv;
+
meta = with lib; {
description = "A high performance code minimap render";
homepage = "https://github.com/wfxr/code-minimap";
diff --git a/pkgs/tools/networking/findomain/default.nix b/pkgs/tools/networking/findomain/default.nix
index 3c60f5373a16..ddcb8579318a 100644
--- a/pkgs/tools/networking/findomain/default.nix
+++ b/pkgs/tools/networking/findomain/default.nix
@@ -4,6 +4,7 @@
, rustPlatform
, installShellFiles
, perl
+, libiconv
, Security
}:
@@ -21,7 +22,7 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "sha256-FDiIM1LlWEFmiIvebdCsznkB7egspNKhY6xUXB838g8=";
nativeBuildInputs = [ installShellFiles perl ];
- buildInputs = lib.optional stdenv.isDarwin Security;
+ buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
postInstall = ''
installManPage ${pname}.1
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e27b91ba7cd4..17fc5c59a907 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -22805,7 +22805,8 @@ in
dmrconfig = callPackage ../applications/radio/dmrconfig { };
- dmtx-utils = callPackage (callPackage ../tools/graphics/dmtx-utils) {
+ dmtx-utils = callPackage ../tools/graphics/dmtx-utils {
+ inherit (darwin.apple_sdk.frameworks) Foundation;
};
inherit (callPackage ../applications/virtualization/docker {})
@@ -22907,7 +22908,9 @@ in
jdk = jdk11;
});
- ecpdap = callPackage ../development/tools/ecpdap { };
+ ecpdap = callPackage ../development/tools/ecpdap {
+ inherit (darwin.apple_sdk.frameworks) AppKit;
+ };
ecs-agent = callPackage ../applications/virtualization/ecs-agent { };
@@ -24121,7 +24124,7 @@ in
};
imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix {
- inherit (darwin.apple_sdk.frameworks) ApplicationServices;
+ inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
ghostscript = null;
};
@@ -28952,7 +28955,9 @@ in
bppsuite = callPackage ../applications/science/biology/bppsuite { };
- cd-hit = callPackage ../applications/science/biology/cd-hit { };
+ cd-hit = callPackage ../applications/science/biology/cd-hit {
+ inherit (llvmPackages) openmp;
+ };
cmtk = callPackage ../applications/science/biology/cmtk { };