From cc4faa35f8fa8a64e39c62e77128ad880d0173fd Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sat, 8 Apr 2017 16:58:04 +0300 Subject: [PATCH] gnu: Add the Hurd. * gnu/packages/hurd.scm (hurd): New variable. * gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/hurd.scm | 41 +++++++++++++++++++ .../hurd-fix-eth-multiplexer-dependency.patch | 26 ++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch diff --git a/gnu/local.mk b/gnu/local.mk index ee18517e22..29f6d3516c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -652,6 +652,7 @@ dist_patch_DATA = \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hop-linker-flags.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ + %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ %D%/packages/patches/icecat-bug-1299500-pt10.patch \ diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index 12fce5453d..bd1eb4b085 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -245,3 +245,44 @@ (define-public gnumach (description "GNU Mach is the microkernel upon which a GNU Hurd system is based.") (license gpl2+))) + +(define-public hurd + (package + (name "hurd") + (version "0.9") + (source (origin + (method url-fetch) + (uri (hurd-source-url version)) + (sha256 + (base32 + "1nw9gly0n7pyv3cpfm4mmxy4yccrx4g0lyrvd3vk2vil26jpbggw")) + (patches (search-patches "hurd-fix-eth-multiplexer-dependency.patch")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; Don't change the ownership of any file at this time. + (substitute* '("daemons/Makefile" "utils/Makefile") + (("-o root -m 4755") "")) + #t))) + #:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" + %output "/lib") + "--disable-ncursesw" + "--without-libbz2" + "--without-libz" + "--without-parted"))) + (build-system gnu-build-system) + (inputs `(("glibc-hurd-headers" ,glibc/hurd-headers))) + (native-inputs + `(("mig" ,mig) + ("perl" ,perl))) + (supported-systems %hurd-systems) + (home-page "https://www.gnu.org/software/hurd/hurd.html") + (synopsis "The kernel servers for the GNU operating system") + (description + "The Hurd is the kernel for the GNU system, a replacement and +augmentation of standard Unix kernels. It is a collection of protocols for +system interaction (file systems, networks, authentication), and servers +implementing them.") + (license gpl2+))) diff --git a/gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch b/gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch new file mode 100644 index 0000000000..5f0da3eab3 --- /dev/null +++ b/gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch @@ -0,0 +1,26 @@ +From ef0399bad41e60cb30d5073129abeb206076394a Mon Sep 17 00:00:00 2001 +From: Manolis Ragkousis +Date: Sat, 8 Apr 2017 16:44:52 +0300 +Subject: [PATCH] eth-multiplexer: Fix iohelp missing dependency. + +* eth-multiplexer/Makefile (HURDLIBS): Add iohelp. +--- + eth-multiplexer/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/eth-multiplexer/Makefile b/eth-multiplexer/Makefile +index 07f909e7..cefa0abd 100644 +--- a/eth-multiplexer/Makefile ++++ b/eth-multiplexer/Makefile +@@ -26,7 +26,7 @@ MIGSFLAGS = -imacros $(srcdir)/mig-mutate.h + device-MIGSFLAGS="-DMACH_PAYLOAD_TO_PORT=ports_payload_get_name" + OBJS = $(SRCS:.c=.o) $(MIGSTUBS) + LCLHDRS = ethernet.h util.h vdev.h netfs_impl.h +-HURDLIBS = ports ihash fshelp shouldbeinlibc netfs bpf ++HURDLIBS = ports ihash iohelp fshelp shouldbeinlibc netfs bpf + LDLIBS = -lpthread + + CFLAGS += -I$(top_srcdir)/libbpf +-- +2.12.2 +