guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: gnu: mes: Add patch to remove store name from binary.


From: guix-commits
Subject: 01/02: gnu: mes: Add patch to remove store name from binary.
Date: Sat, 7 Dec 2019 13:31:24 -0500 (EST)

janneke pushed a commit to branch master
in repository guix.

commit 8c0dcf3e89e0eb2a6094263efdbc5eaec0e8e9e8
Author: Jan Nieuwenhuizen <address@hidden>
Date:   Fri Dec 6 14:44:39 2019 +0100

    gnu: mes: Add patch to remove store name from binary.
    
    * gnu/packages/patches/mes-remove-store-name.patch: New file, from upstream.
    * gnu/packages/mes.scm (mes): Use it.  Add `www.' to homepage.
    * gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                     |   1 +
 gnu/packages/mes.scm                             |   3 +-
 gnu/packages/patches/mes-remove-store-name.patch | 121 +++++++++++++++++++++++
 3 files changed, 124 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index d12b6b1..fbea6dc 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1133,6 +1133,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/mcrypt-CVE-2012-4409.patch                      \
   %D%/packages/patches/mcrypt-CVE-2012-4426.patch                      \
   %D%/packages/patches/mcrypt-CVE-2012-4527.patch                      \
+  %D%/packages/patches/mes-remove-store-name.patch             \
   %D%/packages/patches/mesa-skip-disk-cache-test.patch         \
   %D%/packages/patches/mesa-timespec-test-32bit.patch          \
   %D%/packages/patches/mescc-tools-boot.patch                  \
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 59710c4..0a58635 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -134,7 +134,7 @@ bootstrap to Guix and aims to help create full source 
bootstrapping for
 GNU/Linux distributions.  It consists of a mutual self-hosting Scheme
 interpreter in C and a Nyacc-based C compiler in Scheme and is compatible with
 Guile.")
-    (home-page "https://gnu.org/software/mes";)
+    (home-page "https://www.gnu.org/software/mes/";)
     (license gpl3+)))
 
 (define-public mes
@@ -145,6 +145,7 @@ Guile.")
               (method url-fetch)
               (uri (string-append "mirror://gnu/mes/"
                                   "mes-" version ".tar.gz"))
+              (patches (search-patches "mes-remove-store-name.patch"))
               (sha256
                (base32
                 "104qxngxyl7pql8vqrnli3wfyx0ayfaqg8gjfhmk4qzrafs46slm"))))
diff --git a/gnu/packages/patches/mes-remove-store-name.patch 
b/gnu/packages/patches/mes-remove-store-name.patch
new file mode 100644
index 0000000..ad055c5
--- /dev/null
+++ b/gnu/packages/patches/mes-remove-store-name.patch
@@ -0,0 +1,121 @@
+From d8f361705325cf91fc6c2ec84f281cdcd6bfa8b1 Mon Sep 17 00:00:00 2001
+From: Jan Nieuwenhuizen <address@hidden>
+Date: Tue, 3 Dec 2019 21:23:24 +0100
+Subject: [PATCH] core: Remove MES_PKGDATADIR.
+
+* configure: Do not add MES_PKGDATADIR to config.h.
+* configure.sh: Likewise.
+* simple.sh: Likewise.
+* src/mes.c (open_boot): Do not use MES_PKGDATADIR; rely on
+MES_PREFIX or cwd.
+---
+ configure    |  1 -
+ configure.sh |  1 -
+ simple.sh    |  2 --
+ src/mes.c    | 13 -------------
+ 4 files changed, 17 deletions(-)
+
+diff --git a/configure b/configure
+index 8edb2ce7b..12d8323f2 100755
+--- a/configure
++++ b/configure
+@@ -666,7 +666,6 @@ See \"Porting GNU Mes\" in the manual, or try 
--with-courage\n" mes-system)
+ "))
+               (display (string-append "
+ #define MES_VERSION \"" VERSION "\"
+-#define MES_PKGDATADIR \"" pkgdatadir "\"
+ ")))))
+         (substitute (string-append srcdest "build-aux/config.make.in") pairs 
#:target ".config.make"))
+ 
+diff --git a/configure.sh b/configure.sh
+index 947ddd851..0139cbc36 100755
+--- a/configure.sh
++++ b/configure.sh
+@@ -244,7 +244,6 @@ EOF
+ fi
+ cat >> include/mes/config.h <<EOF
+ #define MES_VERSION "$VERSION"
+-#define MES_PKGDATADIR "$pkgdatadir"
+ EOF
+ 
+ cat <<EOF
+diff --git a/simple.sh b/simple.sh
+index db6950354..b54398a59 100755
+--- a/simple.sh
++++ b/simple.sh
+@@ -33,7 +33,6 @@ mes_bits=64
+ cat > include/mes/config.h <<EOF
+ #define SYSTEM_LIBC 1
+ #define MES_VERSION "git"
+-#define MES_PKGDATADIR "/usr/local/share/mes"
+ EOF
+ 
+ ## Build ##
+@@ -126,7 +125,6 @@ mes_cpu=x86_64
+ cat > include/mes/config.h <<EOF
+ // #define SYSTEM_LIBC 0
+ #define MES_VERSION "git"
+-#define MES_PKGDATADIR "/usr/local/share/mes"
+ EOF
+ 
+ ## Build ##
+diff --git a/src/mes.c b/src/mes.c
+index d9760fad6..a5e7f2b69 100644
+--- a/src/mes.c
++++ b/src/mes.c
+@@ -1775,12 +1775,6 @@ open_boot ()
+   char boot[1024];
+   char file_name[1024];
+   strcpy (g_datadir, ".");
+-  if (g_debug > 1)
+-    {
+-      eputs (";;; pkgdatadir=");
+-      eputs (MES_PKGDATADIR);
+-      eputs ("\n");
+-    }
+   if (getenv ("MES_BOOT"))
+     strcpy (boot, getenv ("MES_BOOT"));
+   else
+@@ -1801,13 +1795,6 @@ open_boot ()
+           __stdin = try_open_boot (file_name, boot, "MES_PREFIX/share/mes");
+         }
+     }
+-  if (__stdin < 0)
+-    {
+-      strcpy (g_datadir, MES_PKGDATADIR);
+-      strcpy (file_name, g_datadir);
+-      strcpy (file_name + strlen (file_name), "/module/mes/");
+-      __stdin = try_open_boot (file_name, boot, "pkgdatadir");
+-    }
+   if (__stdin < 0)
+     {
+       g_datadir[0] = 0;
+-- 
+2.24.0
+
+commit 2f6fab05b3f09df02aba70c3e21d5fedb45dc567
+Author: Jan Nieuwenhuizen <address@hidden>
+Date:   Sun Nov 24 23:12:29 2019 +0100
+
+    core: Throw instead of segfault on non-existing input file.  WIP.
+    
+    Reported by theruran.
+    
+    * src/posix.c (open_input_file): Call error instead of failing silently.
+
+diff --git a/src/posix.c b/src/posix.c
+index 7ba2e9915..fd753232d 100644
+--- a/src/posix.c
++++ b/src/posix.c
+@@ -188,7 +188,10 @@ current_input_port ()
+ SCM
+ open_input_file (SCM file_name)
+ {
+-  return MAKE_NUMBER (mes_open (CSTRING (file_name), O_RDONLY, 0));
++  int filedes = mes_open (CSTRING (file_name), O_RDONLY, 0);
++  if (filedes == -1)
++    error (cell_symbol_system_error, cons (MAKE_STRING0 ("No such file or 
directory"), file_name));
++  return MAKE_NUMBER (filedes);
+ }
+ 
+ SCM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]