From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Bavier Subject: Patches for midnight commander Date: Tue, 25 Mar 2014 16:09:17 -0500 Message-ID: <87wqfihtoi.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35056) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WSZFD-0005q2-Vl for guix-devel@gnu.org; Tue, 25 Mar 2014 17:50:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WSYx3-0003ks-L0 for guix-devel@gnu.org; Tue, 25 Mar 2014 17:32:10 -0400 Received: from mail-oa0-x230.google.com ([2607:f8b0:4003:c02::230]:51612) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WSYac-0007Iw-TU for guix-devel@gnu.org; Tue, 25 Mar 2014 17:08:55 -0400 Received: by mail-oa0-f48.google.com with SMTP id m1so1318083oag.7 for ; Tue, 25 Mar 2014 14:08:54 -0700 (PDT) Received: from cooper.gmail.com (chippewa-nat.cray.com. [136.162.34.1]) by mx.google.com with ESMTPSA id ec8sm32745698obb.18.2014.03.25.14.08.52 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 25 Mar 2014 14:08:52 -0700 (PDT) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org --=-=-= The two patches below are for midnight commander. The source needs to be fetched from ftp.midnight-commander.org because the tarballs on the GNU mirrors have not been updated for a few years... --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-gnu-libssh2-Fix-use-with-libssh2.pc.patch >From 63d0420d7552d52dc125462e90f224eca2febf5a Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 25 Mar 2014 15:51:32 -0500 Subject: [PATCH 1/2] gnu: libssh2: Fix use with libssh2.pc * gnu/packages/ssh.scm (libssh2): Pass --with-libgcrypt and LDFLAGS to configure --- gnu/packages/ssh.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 43c1b6e..d70220d 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -110,6 +110,18 @@ remote applications.") (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt) ("zlib" ,zlib))) + (arguments + '(#:configure-flags + `("--with-libgcrypt" + ;; Programs that use libssh2.pc to link against libssh2 need to also + ;; know where to find libgrypt and zlib libraries. LDFLAGS are put + ;; into the LIBS field of libssh2.pc + ,(string-append + "LDFLAGS=-L" + (assoc-ref %build-inputs "libgcrypt") + "/lib -L" + (assoc-ref %build-inputs "zlib") + "/lib")))) (synopsis "libssh2, a client-side C library implementing the SSH2 protocol") (description "libssh2 is a library intended to allow software developers access to -- 1.7.9.5 --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=0002-gnu-Add-mc.patch Content-Transfer-Encoding: quoted-printable >From b16a10d914a52ea685a6ff0326f4b4e35c7d2df4 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 25 Mar 2014 15:57:28 -0500 Subject: [PATCH 2/2] gnu: Add mc * gnu/packages/mc.scm: New file * gnu/packages/patches/mc-fix-ncurses-build.patch: New patch * gnu-system.am (GNU_SYSTEM_MODULES): Add mc.scm. (dist_patch_DATA): Add patch --- gnu-system.am | 2 + gnu/packages/mc.scm | 77 +++++++++++++++++++= ++++ gnu/packages/patches/mc-fix-ncurses-build.patch | 37 +++++++++++ 3 files changed, 116 insertions(+) create mode 100644 gnu/packages/mc.scm create mode 100644 gnu/packages/patches/mc-fix-ncurses-build.patch diff --git a/gnu-system.am b/gnu-system.am index bfa0516..1bfb647 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -146,6 +146,7 @@ GNU_SYSTEM_MODULES =3D \ gnu/packages/mail.scm \ gnu/packages/make-bootstrap.scm \ gnu/packages/maths.scm \ + gnu/packages/mc.scm \ gnu/packages/messaging.scm \ gnu/packages/mit-krb5.scm \ gnu/packages/moe.scm \ @@ -305,6 +306,7 @@ dist_patch_DATA =3D \ gnu/packages/patches/m4-gets-undeclared.patch \ gnu/packages/patches/m4-readlink-EINVAL.patch \ gnu/packages/patches/make-impure-dirs.patch \ + gnu/packages/patches/mc-fix-ncurses-build.patch \ gnu/packages/patches/mcron-install.patch \ gnu/packages/patches/mit-krb5-init-fix.patch \ gnu/packages/patches/mpc123-initialize-ao.patch \ diff --git a/gnu/packages/mc.scm b/gnu/packages/mc.scm new file mode 100644 index 0000000..3031057 --- /dev/null +++ b/gnu/packages/mc.scm @@ -0,0 +1,77 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2014 Eric Bavier +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages mc) + #:use-module (guix packages) + #:use-module (guix licenses) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages) + #:use-module (gnu packages aspell) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages glib) + #:use-module (gnu packages ssh) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages check) + #:use-module (gnu packages file) + #:use-module (gnu packages perl)) + +(define-public mc + (package + (name "mc") + (version "4.8.11") + (source + (origin + (method url-fetch) + (uri (string-append "http://ftp.midnight-commander.org/mc-" + version ".tar.xz")) + (sha256 + (base32 + "0flrw5pq2mg2d39bh6dllndhpcfppjza6g70p4ry2wcx9y2flxqq")) + (patches (list (search-patch "mc-fix-ncurses-build.patch"))))) + (build-system gnu-build-system) + (native-inputs `(("pkg-config" ,pkg-config) + ("file" ,file) + ("perl" ,perl))) + (inputs `(("aspell" ,aspell) + ("ncurses" ,ncurses) + ("libssh2" ,libssh2) + ("glib" ,glib) + ("check" ,check))) + (arguments + `(#:configure-flags + '("--with-screen=3Dncurses" "--enable-aspell") + #:phases + (alist-replace + 'configure + (lambda* (#:key #:allow-other-keys #:rest args) + (let ((configure (assoc-ref %standard-phases 'configure))) + (substitute* "configure" + (("/usr/bin/file") (which "file"))) + (apply configure args))) + %standard-phases))) + (home-page "http://www.midnight-commander.org") + (synopsis "Graphical file manager") + (description + "GNU Midnight Commander is a command-line file manager laid out in a +common two-pane format. In addition to standard file management tasks suc= h as +copying and moving, Midnight Commander also supports viewing the contents = of +RPM package files and other archives and managing files on other computers= via +FTP or FISH. It also includes a powerful text editor for opening text +files.") + (license gpl2))) diff --git a/gnu/packages/patches/mc-fix-ncurses-build.patch b/gnu/packages= /patches/mc-fix-ncurses-build.patch new file mode 100644 index 0000000..c583c92 --- /dev/null +++ b/gnu/packages/patches/mc-fix-ncurses-build.patch @@ -0,0 +1,37 @@ +Patch cherry-picked from resolution of +http://www.midnight-commander.org/ticket/3114 + +--- a/lib/tty/key.c (revision 0ed4a91d7df4e50512defd2e0734ecab7c9da07f) ++++ b/lib/tty/key.c (revision d870aedad1907773f8586fe818a89e6b5178b849) +@@ -1947,4 +1947,5 @@ + { + int c; ++ int flag =3D 0; /* Return value from select */ + #ifdef HAVE_LIBGPM + static struct Gpm_Event ev; /* Mouse event */ +@@ -1979,5 +1980,4 @@ + { + int nfd; +- static int flag =3D 0; /* Return value from select */ + fd_set select_set; +=20 +--- a/lib/tty/tty-ncurses.c (revision bb65b467900ea9eb1f7867c059fd26fac86c= 747c) ++++ b/lib/tty/tty-ncurses.c (revision d870aedad1907773f8586fe818a89e6b5178= b849) +@@ -50,4 +50,5 @@ + #include "tty.h" + #include "color-internal.h" ++#include "key.h" + #include "mouse.h" + #include "win.h" +@@ -531,4 +532,5 @@ + { + int res; ++ unsigned char str[UTF8_CHAR_LEN + 1]; +=20 + res =3D g_unichar_to_utf8 (c, (char *) str); +@@ -541,5 +543,4 @@ + else + { +- unsigned char str[UTF8_CHAR_LEN + 1]; + const char *s; +=20 --=20 1.7.9.5 --=-=-= Comments welcome, -- `~Eric --=-=-=--