aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2015-12-20 20:13:23 +0100
committerUlrich Müller <ulm@gentoo.org>2015-12-20 20:13:23 +0100
commit2ad01f6e3a8f8c13813f373706355a9f24a499d7 (patch)
tree38ab386a17e97d3c2d61720dea162054dfee99f5
parentUpdate URIs of repository. (diff)
downloademacs-patches-2ad01f6e3a8f8c13813f373706355a9f24a499d7.tar.gz
emacs-patches-2ad01f6e3a8f8c13813f373706355a9f24a499d7.tar.bz2
emacs-patches-2ad01f6e3a8f8c13813f373706355a9f24a499d7.zip
Include changes for GCC 5 in Emacs 18.59 patchset.emacs-18.59-patches-9
-rw-r--r--emacs/18.59/11_all_gcc-warnings.patch94
-rw-r--r--emacs/18.59/12_all_etc-cflags.patch21
-rw-r--r--emacs/18.59/13_all_malloc.patch27
3 files changed, 142 insertions, 0 deletions
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 <ulm@gentoo.org>
++
++ 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 <ulm@gentoo.org>
+
+ 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 <ulm@gentoo.org>
++
++ * etags.c (main): Check for errors of system(3).
++
+ 2012-06-28 Ulrich Mueller <ulm@gentoo.org>
+
+ * 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 <ulm@gentoo.org>
++
++ * Makefile (test-distrib): Respect CFLAGS and LDFLAGS.
++
+ 2015-12-19 Ulrich Mueller <ulm@gentoo.org>
+
+ * 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 <ulm@gentoo.org>
++
++ * s-linux.h (SYSTEM_MALLOC): Define. Fixes hanging at runtime
++ when compiled with GCC 5.3.
++
+ 2015-12-19 Ulrich Mueller <ulm@gentoo.org>
+
+ 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))