]> git.pld-linux.org Git - packages/sqlite3.git/blobdiff - sqlite3.spec
extra requires on features not required due strict dependencies
[packages/sqlite3.git] / sqlite3.spec
index d151ec56c2cfd0f2d58ac882a7103999775d7c28..5f2e33627f24ccf0ff9ce7f7071e4588cc2d3196 100644 (file)
@@ -1,47 +1,51 @@
 # TODO:
 # - some tests fail with tcl8.5, it's tcl fault,
 #      if someone REALLY cares (s)he can look into it
-# - alpha build fail:
-#   tclsh ./tool/mksqlite3c.tcl
-#   tclsh: allocatestack.c:404: allocate_stack: Assertion `size != 0' failed.
-#   make: *** [sqlite3.c] Aborted
 #
 # Conditional build:
-%bcond_with    tests   # run tests
-%bcond_without tcl     # disable tcl extension
-%bcond_without doc     # disable documentation building
-#
+%bcond_with    tests           # run tests
+%bcond_without tcl             # Tcl extension
+%bcond_without doc             # disable documentation building
+%bcond_without unlock_notify   # disable unlock notify API
+%bcond_without load_extension  # enable load extension API
+
 %ifarch alpha sparc %{x8664}
 %undefine      with_tests
 %endif
 
 # disabling tcl currently breaks making test target,
 # some hack in Makefile needs to be done
-%if !%{with tcl}
+%if %{without tcl}
 %undefine      with_tests
 %endif
 
+#define                version_num %(echo %{version} |  awk -F. '{printf("%d%02d%02d%02d", $1, $2, $3, $4)}')
+%define                version_num 3071602
 %define                _ulibdir        /usr/lib
 %define                tclver          8.5
 
 Summary:       SQLite library
 Summary(pl.UTF-8):     Biblioteka SQLite
 Name:          sqlite3
-Version:       3.5.9
+Version:       3.7.16.2
 Release:       1
-License:       LGPL
+License:       Public Domain
 Group:         Libraries
 # Source0Download: http://www.sqlite.org/download.html
-Source0:       http://www.sqlite.org/sqlite-%{version}.tar.gz
-# Source0-md5: b58412904b42fe49e5a281e99da0fd72
+Source0:       http://www.sqlite.org/2013/sqlite-src-%{version_num}.zip
+# Source0-md5: 0d821779acdb56eee1fd71343b41a1cc
 Patch0:                %{name}-sign-function.patch
-Patch1:                %{name}-pkgconfig.patch
 URL:           http://www.sqlite.org/
-BuildRequires: autoconf
+%{?with_load_extension:Provides:       %{name}(load_extension)}
+%{?with_unlock_notify:Provides:        %{name}(unlock_notify)}
+BuildRequires: autoconf >= 2.50
 BuildRequires: automake
 BuildRequires: libtool
 BuildRequires: readline-devel
+%{?with_load_extension:BuildRequires:  sed >= 4.0}
+BuildRequires: tcl
 %{?with_tcl:BuildRequires:     tcl-devel}
+BuildRequires: unzip
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -74,6 +78,12 @@ Summary:     Header files for SQLite development
 Summary(pl.UTF-8):     Pliki nagłówkowe SQLite
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
+%if %{with unlock_notify}
+Provides:      %{name}-devel(unlock_notify)
+%endif
+%if %{with load_extension}
+Provides:      %{name}-devel(load_extension)
+%endif
 
 %description devel
 SQLite is a C library that implements an SQL database engine. A large
@@ -111,6 +121,12 @@ Summary:   Static libraries for SQLite development
 Summary(pl.UTF-8):     Statyczne biblioteki SQLite
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
+%if %{with unclock_notify}
+Provides:      %{name}-static(unlock_notify)
+%endif
+%if %{with load_extension}
+Provides:      %{name}-static(load_extension)
+%endif
 
 %description static
 SQLite is a C library that implements an SQL database engine. A large
@@ -153,23 +169,31 @@ sqlite3 tcl extension.
 Rozszerzenie sqlite3 dla Tcl.
 
 %prep
-%setup -q -n sqlite-%{version}
+%setup -q -n sqlite-src-%{version_num}
 %patch0 -p1
-%patch1 -p1
 
-sed -i 's/mkdir doc/#mkdir doc/' Makefile*
+%{__sed} -i 's/mkdir doc/#mkdir doc/' Makefile*
 
 %build
 %{__libtoolize}
 cp -f /usr/share/automake/config.sub .
 %{__aclocal}
 %{__autoconf}
-CFLAGS="%{rpmcflags} -DSQLITE_ENABLE_COLUMN_METADATA=1"
+CFLAGS="%{rpmcflags} -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_DISABLE_DIRSYNC=1 -DSQLITE_ENABLE_FTS3=3 -DSQLITE_ENABLE_RTREE=1 -DSQLITE_SECURE_DELETE %{?with_unlock_notify:-DSQLITE_ENABLE_UNLOCK_NOTIFY}"
 export CFLAGS
+%if %{with load_extension}
+LIBS=-ldl
+export LIBS
+%endif
+%if %{with tcl}
+export TCLLIBDIR="%{tcl_sitearch}/sqlite3"
+%endif
 %configure \
        %{?with_tcl:--with-tcl=%{_ulibdir}} \
        %{!?with_tcl:--disable-tcl} \
+       %{__enable_disable load_extension load-extension} \
        --enable-threadsafe
+
 %{__make}
 
 %if %{with doc}
@@ -180,17 +204,17 @@ export CFLAGS
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir},%{_libdir},%{_mandir}/man1}
+install -d $RPM_BUILD_ROOT{/%{_lib},%{_bindir},%{_includedir},%{_libdir},%{_mandir}/man1}
 
 %{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT \
-       TCLLIBDIR=%{_libdir}/tcl%{tclver}
+       DESTDIR=$RPM_BUILD_ROOT
 
-%if %{with tcl}
-sed -i -e "s#$RPM_BUILD_ROOT##g" $RPM_BUILD_ROOT%{_libdir}/tcl%{tclver}/sqlite3/pkgIndex.tcl
-%endif
+mv -f $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.so
+ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib}; echo lib*.so.*.*) \
+       $RPM_BUILD_ROOT%{_libdir}/libsqlite3.so
 
-install sqlite3.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -a sqlite3.1 $RPM_BUILD_ROOT%{_mandir}/man1
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -202,13 +226,12 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc README
 %attr(755,root,root) %{_bindir}/sqlite3
-%attr(755,root,root) %{_libdir}/libsqlite3.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsqlite3.so.0
+%attr(755,root,root) /%{_lib}/libsqlite3.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libsqlite3.so.0
 %{_mandir}/man1/sqlite3.1*
 
 %files devel
 %defattr(644,root,root,755)
-%doc doc/lemon.html doc/report1.txt
 %attr(755,root,root) %{_libdir}/libsqlite3.so
 %{_libdir}/libsqlite3.la
 %{_includedir}/sqlite3.h
This page took 0.029111 seconds and 4 git commands to generate.