]> git.pld-linux.org Git - packages/sqlite3.git/blob - sqlite3.spec
98a94d66f533c4afedc8396a6da5e45b32abb766
[packages/sqlite3.git] / sqlite3.spec
1 # TODO:
2 # - some tests fail with tcl8.5, it's tcl fault,
3 #       if someone REALLY cares (s)he can look into it
4 #
5 # Conditional build:
6 %bcond_with     tests           # run tests
7 %bcond_without  tcl             # Tcl extension
8 %bcond_without  doc             # disable documentation building
9 %bcond_without  unlock_notify   # disable unlock notify API
10 %bcond_without  load_extension  # enable load extension API
11
12 %ifarch alpha sparc %{x8664}
13 %undefine       with_tests
14 %endif
15
16 # disabling tcl currently breaks making test target,
17 # some hack in Makefile needs to be done
18 %if %{without tcl}
19 %undefine       with_tests
20 %endif
21
22 #define         version_num %(echo %{version} |  awk -F. '{printf("%d%02d%02d%02d", $1, $2, $3, $4)}')
23 %define         version_num 3071602
24 %define         _ulibdir        /usr/lib
25 %define         tclver          8.5
26
27 Summary:        SQLite library
28 Summary(pl.UTF-8):      Biblioteka SQLite
29 Name:           sqlite3
30 Version:        3.7.16.2
31 Release:        1
32 License:        Public Domain
33 Group:          Libraries
34 # Source0Download: http://www.sqlite.org/download.html
35 Source0:        http://www.sqlite.org/sqlite-src-%{version_num}.zip
36 # Source0-md5:  0d821779acdb56eee1fd71343b41a1cc
37 Patch0:         %{name}-sign-function.patch
38 URL:            http://www.sqlite.org/
39 %{?with_load_extension:Provides:        %{name}(load_extension)}
40 %{?with_unlock_notify:Provides: %{name}(unlock_notify)}
41 BuildRequires:  autoconf >= 2.50
42 BuildRequires:  automake
43 BuildRequires:  libtool
44 BuildRequires:  readline-devel
45 %{?with_load_extension:BuildRequires:   sed >= 4.0}
46 BuildRequires:  tcl
47 %{?with_tcl:BuildRequires:      tcl-devel}
48 BuildRequires:  unzip
49 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
51 %description
52 SQLite is a C library that implements an SQL database engine. A large
53 subset of SQL92 is supported. A complete database is stored in a
54 single disk file. The API is designed for convenience and ease of use.
55 Applications that link against SQLite can enjoy the power and
56 flexiblity of an SQL database without the administrative hassles of
57 supporting a separate database server. Because it omits the
58 client-server interaction overhead and writes directly to disk, SQLite
59 is also faster than the big database servers for most operations. In
60 addition to the C library, the SQLite distribution includes a
61 command-line tool for interacting with SQLite databases and SQLite
62 bindings for Tcl/Tk.
63
64 %description -l pl.UTF-8
65 SQLite jest biblioteką języka C, która implementuje silnik baz danych
66 SQL (obsługiwana jest większość standardu SQL92). Cała baza danych
67 przechowywana jest w jednym pliku. Aplikacje wykorzystujące tę
68 bibliotekę charakteryzują się siłą i elastycznością SQLowych baz
69 danych bez konieczności utrzymywania osobnego serwera baz danych.
70 Ponieważ pomijana jest komunikacja klient-serwer i dane są zapisywane
71 bezpośrednio na dysku, SQLite jest szybsza od dużych serwerów
72 bazodanowych przy większości operacji na bazie danych. Dodatkowo
73 oprócz biblioteki języka C, dostarczany jest program do zarządzania
74 bazami danych.
75
76 %package devel
77 Summary:        Header files for SQLite development
78 Summary(pl.UTF-8):      Pliki nagłówkowe SQLite
79 Group:          Development/Libraries
80 Requires:       %{name} = %{version}-%{release}
81 %if %{with unlock_notify}
82 Requires:       %{name}(unlock_notify)
83 Provides:       %{name}-devel(unlock_notify)
84 %endif
85 %if %{with load_extension}
86 Requires:       %{name}(load_extension)
87 Provides:       %{name}-devel(load_extension)
88 %endif
89
90 %description devel
91 SQLite is a C library that implements an SQL database engine. A large
92 subset of SQL92 is supported. A complete database is stored in a
93 single disk file. The API is designed for convenience and ease of use.
94 Applications that link against SQLite can enjoy the power and
95 flexiblity of an SQL database without the administrative hassles of
96 supporting a separate database server. Because it omits the
97 client-server interaction overhead and writes directly to disk, SQLite
98 is also faster than the big database servers for most operations. In
99 addition to the C library, the SQLite distribution includes a
100 command-line tool for interacting with SQLite databases and SQLite
101 bindings for Tcl/Tk.
102
103 This package contains the header files needed to develop programs that
104 use these SQLite.
105
106 %description devel -l pl.UTF-8
107 SQLite jest biblioteką języka C, która implementuje silnik baz danych
108 SQL (obsługiwana jest większość standardu SQL92). Cała baza danych
109 przechowywana jest w jednym pliku. Aplikacje wykorzystujące tę
110 bibliotekę charakteryzują się siłą i elastycznością SQLowych baz
111 danych bez konieczności utrzymywania osobnego serwera baz danych.
112 Ponieważ pomijana jest komunikacja klient-serwer i dane są zapisywane
113 bezpośrednio na dysku, SQLite jest szybsza od dużych serwerów
114 bazodanowych przy większości operacji na bazie danych. Dodatkowo
115 oprócz biblioteki języka C, dostarczany jest program do zarządzania
116 bazami danych.
117
118 Pakiet zawiera pliki nagówkowe niezbedne do kompilowania programów
119 używających biblioteki SQLite.
120
121 %package static
122 Summary:        Static libraries for SQLite development
123 Summary(pl.UTF-8):      Statyczne biblioteki SQLite
124 Group:          Development/Libraries
125 Requires:       %{name}-devel = %{version}-%{release}
126 %if %{with unclock_notify}
127 Requires:       %{name}-devel(unlock_notify)
128 Provides:       %{name}-static(unlock_notify)
129 %endif
130 %if %{with load_extension}
131 Requires:       %{name}-devel(load_extension)
132 Provides:       %{name}-static(load_extension)
133 %endif
134
135 %description static
136 SQLite is a C library that implements an SQL database engine. A large
137 subset of SQL92 is supported. A complete database is stored in a
138 single disk file. The API is designed for convenience and ease of use.
139 Applications that link against SQLite can enjoy the power and
140 flexiblity of an SQL database without the administrative hassles of
141 supporting a separate database server. Because it omits the
142 client-server interaction overhead and writes directly to disk, SQLite
143 is also faster than the big database servers for most operations. In
144 addition to the C library, the SQLite distribution includes a
145 command-line tool for interacting with SQLite databases and SQLite
146 bindings for Tcl/Tk.
147
148 This package contains the static SQLite libraries.
149
150 %description static -l pl.UTF-8
151 SQLite jest biblioteką języka C, która implementuje silnik baz danych
152 SQL (obsługiwana jest większość standardu SQL92). Cała baza danych
153 przechowywana jest w jednym pliku. Aplikacje wykorzystujące tę
154 bibliotekę charakteryzują się siłą i elastycznością SQLowych baz
155 danych bez konieczności utrzymywania osobnego serwera baz danych.
156 Ponieważ pomijana jest komunikacja klient-serwer i dane są zapisywane
157 bezpośrednio na dysku, SQLite jest szybsza od dużych serwerów
158 bazodanowych przy większości operacji na bazie danych. Dodatkowo
159 oprócz biblioteki języka C, dostarczany jest program do zarządzania
160 bazami danych.
161
162 Pakiet zawiera statyczne biblioteki SQLite.
163
164 %package -n tcl-%{name}
165 Summary:        sqlite3 tcl extension
166 Summary(pl.UTF-8):      Rozszerzenie sqlite3 dla Tcl
167 Group:          Development/Languages/Tcl
168
169 %description -n tcl-%{name}
170 sqlite3 tcl extension.
171
172 %description -n tcl-%{name} -l pl.UTF-8
173 Rozszerzenie sqlite3 dla Tcl.
174
175 %prep
176 %setup -q -n sqlite-src-%{version_num}
177 %patch0 -p1
178
179 %{__sed} -i 's/mkdir doc/#mkdir doc/' Makefile*
180
181 %build
182 %{__libtoolize}
183 cp -f /usr/share/automake/config.sub .
184 %{__aclocal}
185 %{__autoconf}
186 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}"
187 export CFLAGS
188 %if %{with load_extension}
189 LIBS=-ldl
190 export LIBS
191 %endif
192 %if %{with tcl}
193 export TCLLIBDIR="%{tcl_sitearch}/sqlite3"
194 %endif
195 %configure \
196         %{?with_tcl:--with-tcl=%{_ulibdir}} \
197         %{!?with_tcl:--disable-tcl} \
198         %{__enable_disable load_extension load-extension} \
199         --enable-threadsafe
200
201 %{__make}
202
203 %if %{with doc}
204 %{__make} doc
205 %endif
206
207 %{?with_tests:LC_ALL=C %{__make} test}
208
209 %install
210 rm -rf $RPM_BUILD_ROOT
211 install -d $RPM_BUILD_ROOT{/%{_lib},%{_bindir},%{_includedir},%{_libdir},%{_mandir}/man1}
212
213 %{__make} install \
214         DESTDIR=$RPM_BUILD_ROOT
215
216 mv -f $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib}
217 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.so
218 ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib}; echo lib*.so.*.*) \
219         $RPM_BUILD_ROOT%{_libdir}/libsqlite3.so
220
221 cp -a sqlite3.1 $RPM_BUILD_ROOT%{_mandir}/man1
222
223 %clean
224 rm -rf $RPM_BUILD_ROOT
225
226 %post   -p /sbin/ldconfig
227 %postun -p /sbin/ldconfig
228
229 %files
230 %defattr(644,root,root,755)
231 %doc README
232 %attr(755,root,root) %{_bindir}/sqlite3
233 %attr(755,root,root) /%{_lib}/libsqlite3.so.*.*.*
234 %attr(755,root,root) %ghost /%{_lib}/libsqlite3.so.0
235 %{_mandir}/man1/sqlite3.1*
236
237 %files devel
238 %defattr(644,root,root,755)
239 %attr(755,root,root) %{_libdir}/libsqlite3.so
240 %{_libdir}/libsqlite3.la
241 %{_includedir}/sqlite3.h
242 %{_includedir}/sqlite3ext.h
243 %{_pkgconfigdir}/sqlite3.pc
244
245 %files static
246 %defattr(644,root,root,755)
247 %{_libdir}/libsqlite3.a
248
249 %if %{with tcl}
250 %files -n tcl-%{name}
251 %defattr(644,root,root,755)
252 %dir %{_libdir}/tcl*/sqlite3
253 %attr(755,root,root) %{_libdir}/tcl%{tclver}/sqlite3/libtclsqlite3.so
254 %{_libdir}/tcl%{tclver}/sqlite3/pkgIndex.tcl
255 %endif
This page took 0.037834 seconds and 2 git commands to generate.