[packages/ruby-sqlite3] Revert "- die, duplicate, die"

baggins baggins at pld-linux.org
Sun Aug 31 19:47:42 CEST 2014


commit 89763970bb0d60891db0ae6393e054375e6ad8a0
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sun Aug 31 19:33:37 2014 +0200

    Revert "- die, duplicate, die"
    
    This reverts commit b233a618962db2126c3e1f496aeb868229cf2696.
    
    Unfortunately this one is very well maintained, and required by
    rails >= 3.2

 ruby-sqlite3-threadmutex.patch | 35 ++++++++++++++++++++++++++++
 ruby-sqlite3.spec              | 53 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+)
---
diff --git a/ruby-sqlite3.spec b/ruby-sqlite3.spec
new file mode 100644
index 0000000..5105754
--- /dev/null
+++ b/ruby-sqlite3.spec
@@ -0,0 +1,53 @@
+%define tarname sqlite3-ruby
+Summary:	SQLite3 module for Ruby
+Summary(pl.UTF-8):	Moduł SQLite3 dla Ruby
+Name:		ruby-sqlite3
+Version:	1.2.4
+Release:	1
+License:	GPL
+Group:		Development/Languages
+Source0:	http://rubyforge.org/frs/download.php/42055/%{tarname}-%{version}.tar.bz2
+# Source0-md5:	fe75fa99dd9a2b5a2f84ab484e7f6469
+Patch0:		%{name}-threadmutex.patch
+URL:		http://sqlite-ruby.rubyforge.org/sqlite3/
+BuildRequires:	rpmbuild(macros) >= 1.142
+BuildRequires:	ruby-modules
+BuildRequires:	setup.rb >= 3.4.1
+BuildRequires:	sqlite3-devel
+BuildRequires:	swig-ruby
+%{?ruby_mod_ver_requires_eq}
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+SQLite3 module for Ruby.
+
+%description -l pl.UTF-8
+Moduł SQLite3 dla Ruby.
+
+%prep
+%setup -q -n %{tarname}-%{version}
+%patch0 -p1
+cp /usr/share/setup.rb .
+
+%build
+ruby setup.rb config \
+	--rbdir=%{ruby_vendorlibdir} \
+	--sodir=%{ruby_vendorarchdir}
+ruby setup.rb setup
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{ruby_vendorarchdir}
+
+ruby setup.rb install \
+	--prefix=$RPM_BUILD_ROOT
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(644,root,root,755)
+%doc README*
+%attr(755,root,root) %{ruby_vendorarchdir}/*
+%{ruby_vendorlibdir}/sqlite3
+%{ruby_vendorlibdir}/sqlite3.rb
diff --git a/ruby-sqlite3-threadmutex.patch b/ruby-sqlite3-threadmutex.patch
new file mode 100644
index 0000000..dfd7f54
--- /dev/null
+++ b/ruby-sqlite3-threadmutex.patch
@@ -0,0 +1,35 @@
+diff -Nur sqlite3-ruby-1.2.4.orig/lib/sqlite3/database.rb sqlite3-ruby-1.2.4.threadmutex/lib/sqlite3/database.rb
+--- sqlite3-ruby-1.2.4.orig/lib/sqlite3/database.rb	2008-06-26 07:52:02.000000000 -0600
++++ sqlite3-ruby-1.2.4.threadmutex/lib/sqlite3/database.rb	2008-08-30 10:44:55.000000000 -0600
+@@ -4,6 +4,7 @@
+ require 'sqlite3/statement'
+ require 'sqlite3/translator'
+ require 'sqlite3/value'
++require 'thread'
+ 
+ module SQLite3
+ 
+@@ -82,6 +83,7 @@
+       @results_as_hash = options.fetch(:results_as_hash,false)
+       @type_translation = options.fetch(:type_translation,false)
+       @translator = nil
++      @transaction_mutex = Mutex.new
+       @transaction_active = false
+     end
+ 
+@@ -151,6 +153,7 @@
+     # The Statement can then be executed using Statement#execute.
+     #
+     def prepare( sql )
++      @transaction_mutex.synchronize do
+       stmt = @statement_factory.new( self, sql )
+       if block_given?
+         begin
+@@ -161,6 +164,7 @@
+       else
+         return stmt
+       end
++    end
+     end
+ 
+     # Executes the given SQL statement. If additional parameters are given,
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ruby-sqlite3.git/commitdiff/186b18b5b22f43d25db0ab6aac1ac3df02bbff56



More information about the pld-cvs-commit mailing list