Merge branch 'darwin-fixes2'
This commit is contained in:
commit
973781444a
@ -37,6 +37,6 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = https://davedavenport.github.io/rofi;
|
homepage = https://davedavenport.github.io/rofi;
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ mbakke garbas ma27 ];
|
maintainers = with maintainers; [ mbakke garbas ma27 ];
|
||||||
platforms = with platforms; unix;
|
platforms = with platforms; linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
|
|||||||
description = "Simple getter for HTTP URLs using cURL";
|
description = "Simple getter for HTTP URLs using cURL";
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
|
broken = stdenv.hostPlatform.cc.isClang;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -58,5 +58,7 @@ stdenv.mkDerivation rec {
|
|||||||
# Needs the SSE2 instruction set. See upstream issue
|
# Needs the SSE2 instruction set. See upstream issue
|
||||||
# https://github.com/chrjguill/i3lock-color/issues/44
|
# https://github.com/chrjguill/i3lock-color/issues/44
|
||||||
platforms = platforms.x86;
|
platforms = platforms.x86;
|
||||||
|
|
||||||
|
broken = stdenv.hostPlatform.cc.isClang;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -45,5 +45,6 @@ stdenv.mkDerivation {
|
|||||||
maintainers = with maintainers; [ joachifm ];
|
maintainers = with maintainers; [ joachifm ];
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
broken = stdenv.hostPlatform.cc.isClang;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -31,5 +31,6 @@ stdenv.mkDerivation rec {
|
|||||||
license = stdenv.lib.licenses.gpl2;
|
license = stdenv.lib.licenses.gpl2;
|
||||||
maintainers = with maintainers; [ edwtjo phreedom ];
|
maintainers = with maintainers; [ edwtjo phreedom ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
|
broken = stdenv.hostPlatform.isDarwin;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||||||
with any type of text MUD.
|
with any type of text MUD.
|
||||||
'';
|
'';
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = ncurses.meta.platforms;
|
platforms = platforms.linux;
|
||||||
maintainers = [ maintainers.KibaFox ];
|
maintainers = [ maintainers.KibaFox ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
123
pkgs/os-specific/linux/kmod/darwin.patch
Normal file
123
pkgs/os-specific/linux/kmod/darwin.patch
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 194e111..0a095b5 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -80,8 +80,7 @@ EXTRA_DIST += libkmod/README \
|
||||||
|
libkmod/COPYING testsuite/COPYING tools/COPYING COPYING
|
||||||
|
|
||||||
|
libkmod_libkmod_la_LDFLAGS = $(AM_LDFLAGS) \
|
||||||
|
- -version-info $(LIBKMOD_CURRENT):$(LIBKMOD_REVISION):$(LIBKMOD_AGE) \
|
||||||
|
- -Wl,--version-script=$(top_srcdir)/libkmod/libkmod.sym
|
||||||
|
+ -version-info $(LIBKMOD_CURRENT):$(LIBKMOD_REVISION):$(LIBKMOD_AGE)
|
||||||
|
libkmod_libkmod_la_DEPENDENCIES = \
|
||||||
|
shared/libshared.la \
|
||||||
|
${top_srcdir}/libkmod/libkmod.sym
|
||||||
|
@@ -91,8 +90,7 @@ libkmod_libkmod_la_LIBADD = \
|
||||||
|
|
||||||
|
noinst_LTLIBRARIES += libkmod/libkmod-internal.la
|
||||||
|
libkmod_libkmod_internal_la_SOURCES = $(libkmod_libkmod_la_SOURCES)
|
||||||
|
-libkmod_libkmod_internal_la_LDFLAGS = $(AM_LDFLAGS) \
|
||||||
|
- -Wl,--version-script=$(top_srcdir)/libkmod/libkmod.sym
|
||||||
|
+libkmod_libkmod_internal_la_LDFLAGS = $(AM_LDFLAGS)
|
||||||
|
libkmod_libkmod_internal_la_DEPENDENCIES = $(libkmod_libkmod_la_DEPENDENCIES)
|
||||||
|
libkmod_libkmod_internal_la_LIBADD = $(libkmod_libkmod_la_LIBADD)
|
||||||
|
|
||||||
|
diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
|
||||||
|
index 889f264..6f0a285 100644
|
||||||
|
--- a/libkmod/libkmod-module.c
|
||||||
|
+++ b/libkmod/libkmod-module.c
|
||||||
|
@@ -787,7 +787,11 @@ KMOD_EXPORT int kmod_module_remove_module(struct kmod_module *mod,
|
||||||
|
flags &= KMOD_REMOVE_FORCE;
|
||||||
|
flags |= KMOD_REMOVE_NOWAIT;
|
||||||
|
|
||||||
|
+#if defined(__linux__)
|
||||||
|
err = delete_module(mod->name, flags);
|
||||||
|
+#else
|
||||||
|
+ err = -1;
|
||||||
|
+#endif
|
||||||
|
if (err != 0) {
|
||||||
|
err = -errno;
|
||||||
|
ERR(mod->ctx, "could not remove '%s': %m\n", mod->name);
|
||||||
|
@@ -879,7 +883,11 @@ KMOD_EXPORT int kmod_module_insert_module(struct kmod_module *mod,
|
||||||
|
}
|
||||||
|
size = kmod_file_get_size(mod->file);
|
||||||
|
|
||||||
|
+#if defined(__linux__)
|
||||||
|
err = init_module(mem, size, args);
|
||||||
|
+#else
|
||||||
|
+ err = -1;
|
||||||
|
+#endif
|
||||||
|
init_finished:
|
||||||
|
if (err < 0) {
|
||||||
|
err = -errno;
|
||||||
|
diff --git a/libkmod/libkmod-signature.c b/libkmod/libkmod-signature.c
|
||||||
|
index 429ffbd..17a3b9c 100644
|
||||||
|
--- a/libkmod/libkmod-signature.c
|
||||||
|
+++ b/libkmod/libkmod-signature.c
|
||||||
|
@@ -17,7 +17,10 @@
|
||||||
|
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
+#if defined(__linux__)
|
||||||
|
#include <endian.h>
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#include <inttypes.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
diff --git a/shared/macro.h b/shared/macro.h
|
||||||
|
index 4fc5405..b5a2702 100644
|
||||||
|
--- a/shared/macro.h
|
||||||
|
+++ b/shared/macro.h
|
||||||
|
@@ -71,3 +71,7 @@
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define UNIQ __COUNTER__
|
||||||
|
+
|
||||||
|
+ #if !defined(__linux__)
|
||||||
|
+#define program_invocation_short_name getprogname()
|
||||||
|
+#endif
|
||||||
|
diff --git a/shared/missing.h b/shared/missing.h
|
||||||
|
index 4c0d136..ad8ec0f 100644
|
||||||
|
--- a/shared/missing.h
|
||||||
|
+++ b/shared/missing.h
|
||||||
|
@@ -45,6 +45,9 @@ static inline int finit_module(int fd, const char *uargs, int flags)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !HAVE_DECL_BE32TOH
|
||||||
|
+
|
||||||
|
+#if defined(__linux__)
|
||||||
|
+
|
||||||
|
#include <endian.h>
|
||||||
|
#include <byteswap.h>
|
||||||
|
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||||
|
@@ -52,4 +55,16 @@ static inline int finit_module(int fd, const char *uargs, int flags)
|
||||||
|
#else
|
||||||
|
#define be32toh(x) (x)
|
||||||
|
#endif
|
||||||
|
+
|
||||||
|
+#elif defined(__APPLE__)
|
||||||
|
+
|
||||||
|
+#include <libkern/OSByteOrder.h>
|
||||||
|
+#define be32toh(x) OSSwapBigToHostInt32(x)
|
||||||
|
+
|
||||||
|
+#else
|
||||||
|
+
|
||||||
|
+#error No be32toh known for platform
|
||||||
|
+
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#endif
|
||||||
|
diff --git a/shared/util.c b/shared/util.c
|
||||||
|
index fd2028d..ecb0141 100644
|
||||||
|
--- a/shared/util.c
|
||||||
|
+++ b/shared/util.c
|
||||||
|
@@ -367,7 +367,7 @@ char *path_make_absolute_cwd(const char *p)
|
||||||
|
if (path_is_absolute(p))
|
||||||
|
return strdup(p);
|
||||||
|
|
||||||
|
- cwd = get_current_dir_name();
|
||||||
|
+ cwd = getcwd(NULL, 0);
|
||||||
|
if (!cwd)
|
||||||
|
return NULL;
|
||||||
|
|
@ -1,4 +1,5 @@
|
|||||||
{ stdenv, buildPackages, lib, fetchurl, autoreconfHook, pkgconfig, libxslt, xz }:
|
{ stdenv, buildPackages, lib, fetchurl, autoreconfHook, pkgconfig
|
||||||
|
, libxslt, xz, elf-header }:
|
||||||
|
|
||||||
let
|
let
|
||||||
systems = [ "/run/current-system/kernel-modules" "/run/booted-system/kernel-modules" "" ];
|
systems = [ "/run/current-system/kernel-modules" "/run/booted-system/kernel-modules" "" ];
|
||||||
@ -14,7 +15,7 @@ in stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook pkgconfig libxslt ];
|
nativeBuildInputs = [ autoreconfHook pkgconfig libxslt ];
|
||||||
buildInputs = [ xz ];
|
buildInputs = [ xz elf-header ];
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--sysconfdir=/etc"
|
"--sysconfdir=/etc"
|
||||||
@ -22,7 +23,8 @@ in stdenv.mkDerivation rec {
|
|||||||
"--with-modulesdirs=${modulesDirs}"
|
"--with-modulesdirs=${modulesDirs}"
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [ ./module-dir.patch ];
|
patches = [ ./module-dir.patch ]
|
||||||
|
++ lib.optional stdenv.isDarwin ./darwin.patch;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
for prog in rmmod insmod lsmod modinfo modprobe depmod; do
|
for prog in rmmod insmod lsmod modinfo modprobe depmod; do
|
||||||
@ -37,6 +39,6 @@ in stdenv.mkDerivation rec {
|
|||||||
homepage = https://www.kernel.org/pub/linux/utils/kernel/kmod/;
|
homepage = https://www.kernel.org/pub/linux/utils/kernel/kmod/;
|
||||||
description = "Tools for loading and managing Linux kernel modules";
|
description = "Tools for loading and managing Linux kernel modules";
|
||||||
license = licenses.lgpl21;
|
license = licenses.lgpl21;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ stdenv, fetchurl, fetchpatch, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo
|
{ stdenv, fetchurl, fetchpatch, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo
|
||||||
, asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt, zstd, python3, python3Packages
|
, asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt, zstd, python, pythonPackages
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -12,10 +12,10 @@ stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkgconfig asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt python3 python3Packages.setuptools
|
pkgconfig asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt python pythonPackages.setuptools
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [ attr acl zlib libuuid e2fsprogs lzo zstd ];
|
buildInputs = [ attr acl zlib libuuid e2fsprogs lzo zstd python ];
|
||||||
|
|
||||||
# gcc bug with -O1 on ARM with gcc 4.8
|
# gcc bug with -O1 on ARM with gcc 4.8
|
||||||
# This should be fine on all platforms so apply universally
|
# This should be fine on all platforms so apply universally
|
||||||
|
Loading…
x
Reference in New Issue
Block a user