[ecl] Fix Requires so 32-bit gcc is not dragged into 64-bit platforms (bz 831383). Apply multiple fixes fr
Jerry James
jjames at fedoraproject.org
Mon Jun 18 13:43:34 UTC 2012
commit aeaa3d504d6699f964dda1cac911e6dddc87e39b
Author: Jerry James <loganjerry at gmail.com>
Date: Mon Jun 18 07:40:43 2012 -0600
Fix Requires so 32-bit gcc is not dragged into 64-bit platforms (bz 831383).
Apply multiple fixes from bz 821183.
Rebuild to fix bz 822296.
ecl-12.2.1-signal_handling_thread.patch | 28 ++++++++++++++++++++++++++
ecl.spec | 33 ++++++++++++++++++++++--------
sources | 2 +-
3 files changed, 53 insertions(+), 10 deletions(-)
---
diff --git a/ecl-12.2.1-signal_handling_thread.patch b/ecl-12.2.1-signal_handling_thread.patch
new file mode 100644
index 0000000..d9c69c6
--- /dev/null
+++ b/ecl-12.2.1-signal_handling_thread.patch
@@ -0,0 +1,28 @@
+--- ./src/c/main.d.orig 2012-06-13 10:04:55.038269146 -0600
++++ ./src/c/main.d 2012-06-13 10:04:59.169264290 -0600
+@@ -76,7 +76,11 @@ static cl_fixnum option_values[ECL_OPT_L
+ 1, /* ECL_OPT_TRAP_SIGPIPE */
+ 1, /* ECL_OPT_TRAP_SIGCHLD */
+ 1, /* ECL_OPT_TRAP_INTERRUPT_SIGNAL */
++#ifdef GBC_BOEHM_GENGC
++ 0, /* ECL_OPT_SIGNAL_HANDLING_THREAD */
++#else
+ 1, /* ECL_OPT_SIGNAL_HANDLING_THREAD */
++#endif
+ 128, /* ECL_OPT_SIGNAL_QUEUE_SIZE */
+ 0, /* ECL_OPT_BOOTED */
+ 8192, /* ECL_OPT_BIND_STACK_SIZE */
+@@ -449,11 +453,11 @@ cl_boot(int argc, char **argv)
+ return 1;
+ }
+
+- /*ecl_set_option(ECL_OPT_SIGNAL_HANDLING_THREAD, 0);*/
+-
+ #if !defined(GBC_BOEHM)
+ setbuf(stdin, stdin_buf);
+ setbuf(stdout, stdout_buf);
++#else
++ ecl_set_option(ECL_OPT_SIGNAL_HANDLING_THREAD, 0);
+ #endif
+
+ ARGC = argc;
diff --git a/ecl.spec b/ecl.spec
index 43b601c..83c12d5 100644
--- a/ecl.spec
+++ b/ecl.spec
@@ -1,12 +1,12 @@
Name: ecl
Version: 12.2.1
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Embeddable Common-Lisp
Group: Development/Languages
License: LGPLv2+ and BSD and MIT and Public Domain
URL: http://ecls.sourceforge.net/
-Source0: http://downloads.sourceforge.net/ecls/ecl-%{version}.tgz
+Source0: http://downloads.sourceforge.net/ecls/%{name}-%{version}.tgz
# The manual has not yet been released. Use the following commands to generate
# the manual tarball:
# git clone git://ecls.git.sourceforge.net/gitroot/ecls/ecl-doc
@@ -16,18 +16,25 @@ Source0: http://downloads.sourceforge.net/ecls/ecl-%{version}.tgz
# cd ..
# tar cf ecl-doc.tar ecl-doc
# xz ecl-doc.tar
-Source1: ecl-doc.tar.xz
-Source2: ecl.desktop
+Source1: %{name}-doc.tar.xz
+Source2: %{name}.desktop
# A modified version of src/util/ecl.svg with extra whitespace removed. The
# extra whitespace made the icon appear very small and shoved into a corner.
-Source3: ecl.svg
+Source3: %{name}.svg
# This patch is Fedora-specific; it will not be sent upstream. It avoids
# building libatomic_ops from source.
-Patch0: ecl-12.2.1-atomic_ops.patch
+Patch0: %{name}-12.2.1-atomic_ops.patch
# This patch was sent upstream on 4 Feb 2012. It fixes a few warnings
# from the C compiler that indicate situations that might be dangerous at
# runtime.
-Patch1: ecl-12.2.1-warnings.patch
+Patch1: %{name}-12.2.1-warnings.patch
+# Do not use a separate thread to handle signals by default if built with
+# bohem-gc support.
+# This prevents a deadlock when building maxima with ecl support in
+# fedora, and should handle by default these problems:
+# http://trac.sagemath.org/sage_trac/ticket/11752
+# http://www.mail-archive.com/ecls-list@lists.sourceforge.net/msg00644.html
+Patch2: %{name}-12.2.1-signal_handling_thread.patch
BuildRequires: libX11-devel
BuildRequires: pkgconfig
@@ -39,7 +46,9 @@ BuildRequires: emacs-common
BuildRequires: docbook-dtds
BuildRequires: xmlto
BuildRequires: desktop-file-utils
-Requires: gcc%{?_isa}
+Requires: gcc
+Requires: libgcc%{?_isa}
+Requires: glibc-devel%{?_isa}
Requires: gc-devel%{?_isa}
Requires: gmp-devel%{?_isa}
Requires: hicolor-icon-theme
@@ -62,6 +71,7 @@ Gray streams.
%setup -q -T -D -a 1
%patch0
%patch1
+%patch2
# Remove spurious executable bits
chmod a-x src/CHANGELOG
@@ -71,7 +81,7 @@ find src/h -type f -perm /0111 | xargs chmod a-x
%build
%configure --enable-unicode=yes --enable-c99complex --enable-threads=yes \
- --with-__thread --with-clx \
+ --with-__thread --with-clx --disable-rpath \
%ifarch x86_64
--with-sse \
%endif
@@ -139,6 +149,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >&/dev/null ||:
%changelog
+* Wed Jun 13 2012 Jerry James <loganjerry at gmail.com> - 12.2.1-3
+- Fix Requires so 32-bit gcc is not dragged into 64-bit platforms (bz 831383)
+- Apply multiple fixes from bz 821183
+- Rebuild to fix bz 822296
+
* Thu Apr 26 2012 Jerry James <loganjerry at gmail.com> - 12.2.1-2
- Add missing Requires (bz 816675)
diff --git a/sources b/sources
index 053ef92..3c0d520 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-e4aff1882ac431b97035e1fcf9d0bc00 ecl-12.2.1.tgz
+1a54b733e7cd07af2b1cb6d7f8b716d2 ecl-12.2.1.tgz
e50473e1fa75a2475aff5f4423dbe228 ecl-doc.tar.xz
More information about the scm-commits
mailing list