commit:     2ad01f6e3a8f8c13813f373706355a9f24a499d7
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 20 19:13:23 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Dec 20 19:13:23 2015 +0000
URL:        https://gitweb.gentoo.org/proj/emacs-tools.git/commit/?id=2ad01f6e

Include changes for GCC 5 in Emacs 18.59 patchset.

 emacs/18.59/11_all_gcc-warnings.patch | 94 +++++++++++++++++++++++++++++++++++
 emacs/18.59/12_all_etc-cflags.patch   | 21 ++++++++
 emacs/18.59/13_all_malloc.patch       | 27 ++++++++++
 3 files changed, 142 insertions(+)

diff --git a/emacs/18.59/11_all_gcc-warnings.patch 
b/emacs/18.59/11_all_gcc-warnings.patch
new file mode 100644
index 0000000..c950304
--- /dev/null
+++ b/emacs/18.59/11_all_gcc-warnings.patch
@@ -0,0 +1,94 @@
+--- emacs-18.59-orig/src/ChangeLog
++++ emacs-18.59/src/ChangeLog
+@@ -1,3 +1,11 @@
++2015-12-19  Ulrich Mueller  <[email protected]>
++
++      Fix a couple of compiler warnings.
++      * buffer.c (init_buffer): Use getcwd(3) instead of getwd(3).
++      * callproc.c (Fcall_process): Check for errors of pipe(2).
++      (child_setup): Check for errors of chdir(2).
++      * process.c (sigchld_handler): Add type cast.
++
+ 2012-06-28  Ulrich Mueller  <[email protected]>
+ 
+       Support x32 ABI on x86_64 architecture.
+--- emacs-18.59-orig/src/buffer.c
++++ emacs-18.59/src/buffer.c
+@@ -1131,8 +1131,8 @@
+   char buf[MAXPATHLEN+1];
+ 
+   Fset_buffer (Fget_buffer_create (build_string ("*scratch*")));
+-  if (getwd (buf) == 0)
+-    fatal ("`getwd' failed: %s.\n", buf);
++  if (getcwd (buf, MAXPATHLEN+1) == 0)
++    fatal ("`getcwd' failed: %s.\n", buf);
+ 
+ #ifndef VMS
+   /* Maybe this should really use some standard subroutine
+--- emacs-18.59-orig/src/callproc.c
++++ emacs-18.59/src/callproc.c
+@@ -184,7 +184,10 @@
+ #endif /* not VMS */
+   else
+     {
+-      pipe (fd);
++      if (pipe (fd) < 0) {
++      close (filefd);
++      report_file_error ("Creating pipe", Qnil);
++      }
+ #if 0
+       /* Replaced by close_process_descs */
+       set_exclusive_use (fd[0]);
+@@ -362,7 +365,8 @@
+       bcopy (XSTRING (current_buffer->directory)->data, temp, i);
+       if (temp[i - 1] != '/') temp[i++] = '/';
+       temp[i] = 0;
+-      chdir (temp);
++      if (chdir (temp) < 0)
++      _exit (1);
+     }
+ 
+ #ifndef MAINTAIN_ENVIRONMENT
+--- emacs-18.59-orig/src/process.c
++++ emacs-18.59/src/process.c
+@@ -2517,7 +2517,7 @@
+         if (WIFEXITED (w))
+           synch_process_retcode = WRETCODE (w);
+         else if (WIFSIGNALED (w))
+-          synch_process_death = sys_siglist[WTERMSIG (w)];
++          synch_process_death = (char *) sys_siglist[WTERMSIG (w)];
+       }
+ 
+       /* On some systems, we must return right away.
+--- emacs-18.59-orig/etc/ChangeLog
++++ emacs-18.59/etc/ChangeLog
+@@ -1,3 +1,7 @@
++2015-12-19  Ulrich Mueller  <[email protected]>
++
++      * etags.c (main): Check for errors of system(3).
++
+ 2012-06-28  Ulrich Mueller  <[email protected]>
+ 
+       * fakemail.c (make_file_preface): time(2) returns a value of
+--- emacs-18.59-orig/etc/etags.c
++++ emacs-18.59/etc/etags.c
+@@ -342,7 +342,8 @@
+         sprintf(cmd,
+                 "mv %s OTAGS;fgrep -v '\t%s\t' OTAGS >%s;rm OTAGS",
+                 outfile, av[i], outfile);
+-        system(cmd);
++        if (system(cmd) != 0)
++          fatal ("%s", "failed to execute shell command");
+       }
+       aflag++;
+     }
+@@ -359,7 +360,8 @@
+   if (uflag)
+     {
+       sprintf(cmd, "sort %s -o %s", outfile, outfile);
+-      system(cmd);
++      if (system(cmd) != 0)
++      fatal ("%s", "failed to execute shell command");
+     }
+ #endif
+   exit(GOOD);

diff --git a/emacs/18.59/12_all_etc-cflags.patch 
b/emacs/18.59/12_all_etc-cflags.patch
new file mode 100644
index 0000000..46e8f62
--- /dev/null
+++ b/emacs/18.59/12_all_etc-cflags.patch
@@ -0,0 +1,21 @@
+--- emacs-18.59-orig/etc/ChangeLog
++++ emacs-18.59/etc/ChangeLog
+@@ -1,3 +1,7 @@
++2015-12-20  Ulrich Mueller  <[email protected]>
++
++      * Makefile (test-distrib): Respect CFLAGS and LDFLAGS.
++
+ 2015-12-19  Ulrich Mueller  <[email protected]>
+ 
+       * etags.c (main): Check for errors of system(3).
+--- emacs-18.59-orig/etc/Makefile
++++ emacs-18.59/etc/Makefile
+@@ -21,7 +21,7 @@
+ # whatever means were used to copy and distribute Emacs.
+ # If they were clobbered, all the .elc files were clobbered too.
+ test-distrib: test-distrib.c
+-      $(CC) -o test-distrib test-distrib.c
++      $(CC) -o test-distrib ${CFLAGS} ${LDFLAGS} test-distrib.c
+       ./test-distrib
+ 
+ etags: etags.c

diff --git a/emacs/18.59/13_all_malloc.patch b/emacs/18.59/13_all_malloc.patch
new file mode 100644
index 0000000..80756f9
--- /dev/null
+++ b/emacs/18.59/13_all_malloc.patch
@@ -0,0 +1,27 @@
+--- emacs-18.59-orig/src/ChangeLog
++++ emacs-18.59/src/ChangeLog
+@@ -1,3 +1,8 @@
++2015-12-20  Ulrich Mueller  <[email protected]>
++
++      * s-linux.h (SYSTEM_MALLOC): Define. Fixes hanging at runtime
++      when compiled with GCC 5.3.
++
+ 2015-12-19  Ulrich Mueller  <[email protected]>
+ 
+       Fix a couple of compiler warnings.
+--- emacs-18.59-orig/src/s-linux.h
++++ emacs-18.59/src/s-linux.h
+@@ -218,13 +218,7 @@
+    performed in x11term.c (x_init_1). */
+ #define SYSV_STREAMS
+ 
+-/* note: system malloc does not work with shared libs
+-   This was reported with earlier versions of linux (libc 4).
+-   Still true?
+- */
+-#if 0                         /* choose for yourself */
+ #define SYSTEM_MALLOC         /* produces smaller binary */
+-#endif
+ 
+ /* misc. kludges for linux */
+ #if !(defined (__GLIBC__) && (__GLIBC__ >= 2))

Reply via email to