Splint fiddles.
[platform/upstream/rpm.git] / rpm.spec.in
1 %define with_python_subpackage  @WITH_PYTHON_SUBPACKAGE@%{nil}
2 %define with_python_version     @WITH_PYTHON_VERSION@%{nil}
3 %define with_bzip2              @WITH_BZIP2@%{nil}
4 %define with_apidocs            @WITH_APIDOCS@%{nil}
5
6 # XXX legacy requires './' payload prefix to be omitted from rpm packages.
7 %define _noPayloadPrefix        1
8
9 %define __prefix        /usr
10 %{?!_lib: %define _lib lib}
11 %{expand: %%define __share %(if [ -d %{__prefix}/share/man ]; then echo /share ; else echo %%{nil} ; fi)}
12
13 %define __bindir        %{__prefix}/bin
14 %define __includedir    %{__prefix}/include
15 %define __libdir        %{__prefix}/%{_lib}
16 %define __mandir        %{__prefix}%{__share}/man
17
18 Summary: The RPM package management system.
19 Name: rpm
20 %define version @VERSION@
21 Version: %{version}
22 %{expand: %%define rpm_version %{version}}
23 Release: 0.58
24 Group: System Environment/Base
25 Source: ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/rpm-%{rpm_version}.tar.gz
26 Copyright: GPL
27 Conflicts: patch < 2.5
28 %ifos linux
29 Prereq: gawk fileutils textutils mktemp shadow-utils
30 %endif
31 Requires: popt = 1.8
32 Obsoletes: rpm-perl < %{version}
33
34 # XXX necessary only to drag in /usr/lib/libelf.a, otherwise internal elfutils.
35 BuildRequires: elfutils-libelf
36
37 BuildRequires: zlib-devel
38
39 # XXX Red Hat 5.2 has not bzip2 or python
40 %if %{with_bzip2}
41 BuildRequires: bzip2 >= 0.9.0c-2
42 %endif
43 %if %{with_python_subpackage}
44 BuildRequires: python-devel >= %{with_python_version}
45 %endif
46
47 BuildRoot: %{_tmppath}/%{name}-root
48
49 %description
50 The RPM Package Manager (RPM) is a powerful command line driven
51 package management system capable of installing, uninstalling,
52 verifying, querying, and updating software packages. Each software
53 package consists of an archive of files along with information about
54 the package like its version, a description, etc.
55
56 %package devel
57 Summary:  Development files for manipulating RPM packages.
58 Group: Development/Libraries
59 Requires: rpm = %{rpm_version}
60
61 %description devel
62 This package contains the RPM C library and header files. These
63 development files will simplify the process of writing programs that
64 manipulate RPM packages and databases. These files are intended to
65 simplify the process of creating graphical package managers or any
66 other tools that need an intimate knowledge of RPM packages in order
67 to function.
68
69 This package should be installed if you want to develop programs that
70 will manipulate RPM packages and databases.
71
72 %package build
73 Summary: Scripts and executable programs used to build packages.
74 Group: Development/Tools
75 Requires: rpm = %{rpm_version}, patch >= 2.5, file
76 Provides: rpmbuild(VendorConfig) = %{version}
77
78 %description build
79 The rpm-build package contains the scripts and executable programs
80 that are used to build packages using the RPM Package Manager.
81
82 %if %{with_python_subpackage}
83 %package python
84 Summary: Python bindings for apps which will manipulate RPM packages.
85 Group: Development/Libraries
86 Requires: rpm = %{rpm_version}
87 Requires: python >= %{with_python_version}
88 Requires: elfutils >= 0.55
89
90 %description python
91 The rpm-python package contains a module that permits applications
92 written in the Python programming language to use the interface
93 supplied by RPM Package Manager libraries.
94
95 This package should be installed if you want to develop Python
96 programs that will manipulate RPM packages and databases.
97 %endif
98
99 %package -n popt
100 Summary: A C library for parsing command line parameters.
101 Group: Development/Libraries
102 Version: 1.8
103
104 %description -n popt
105 Popt is a C library for parsing command line parameters. Popt was
106 heavily influenced by the getopt() and getopt_long() functions, but it
107 improves on them by allowing more powerful argument expansion. Popt
108 can parse arbitrary argv[] style arrays and automatically set
109 variables based on command line arguments. Popt allows command line
110 arguments to be aliased via configuration files and includes utility
111 functions for parsing arbitrary strings into argv[] arrays using
112 shell-like rules.
113
114 %prep
115 %setup -q
116
117 %build
118
119 %if %{with_python_subpackage}
120 WITH_PYTHON="--with-python=%{with_python_version}"
121 %else
122 WITH_PYTHON="--without-python"
123 %endif
124
125 %ifos linux
126 %ifarch x86_64 s390 s390x 
127 CFLAGS="$RPM_OPT_FLAGS -fPIC"; export CFLAGS
128 %else
129 CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
130 %endif
131 CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{__prefix} --sysconfdir=/etc \
132         --localstatedir=/var --infodir='${prefix}%{__share}/info' \
133         --mandir='${prefix}%{__share}/man' \
134         $WITH_PYTHON --enable-posixmutexes --without-javaglue
135 %else
136 CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{__prefix} $WITH_PYTHON \
137         --without-javaglue
138 %endif
139
140 make
141
142 %install
143 rm -rf $RPM_BUILD_ROOT
144
145 make DESTDIR="$RPM_BUILD_ROOT" install
146
147 %ifos linux
148
149 # Save list of packages through cron
150 mkdir -p ${RPM_BUILD_ROOT}/etc/cron.daily
151 install -m 755 scripts/rpm.daily ${RPM_BUILD_ROOT}/etc/cron.daily/rpm
152
153 mkdir -p ${RPM_BUILD_ROOT}/etc/logrotate.d
154 install -m 644 scripts/rpm.log ${RPM_BUILD_ROOT}/etc/logrotate.d/rpm
155
156 mkdir -p $RPM_BUILD_ROOT/etc/rpm
157
158 mkdir -p $RPM_BUILD_ROOT/var/spool/repackage
159 mkdir -p $RPM_BUILD_ROOT/var/lib/rpm
160 for dbi in \
161         Basenames Conflictname Dirnames Group Installtid Name Packages \
162         Providename Provideversion Requirename Requireversion Triggername \
163         Filemd5s Pubkeys Sha1header Sigmd5 \
164         __db.001 __db.002 __db.003 __db.004 __db.005 __db.006 __db.007 \
165         __db.008 __db.009
166 do
167     touch $RPM_BUILD_ROOT/var/lib/rpm/$dbi
168 done
169
170 %endif
171
172 %if %{with_apidocs}
173 gzip -9n apidocs/man/man*/* || :
174 %endif
175
176 # Get rid of unpackaged files
177 { cd $RPM_BUILD_ROOT
178   rm -rf .%{__includedir}/beecrypt
179   rm -f .%{__libdir}/libbeecrypt.{a,la,so.2.2.0}
180   rm -rf .%{__includedir}/libelf
181   rm -f .%{__libdir}/libelf.{a,la}
182   rm -f .%{__prefix}/lib/rpm/{Specfile.pm,cpanflute,cpanflute2,rpmdiff,rpmdiff.cgi,sql.prov,sql.req,tcl.req}
183   rm -rf .%{__mandir}/{fr,ko}
184 }
185
186 %clean
187 rm -rf $RPM_BUILD_ROOT
188
189 %pre
190 %ifos linux
191 if [ -f /var/lib/rpm/packages.rpm ]; then
192     echo "
193 You have (unsupported)
194         /var/lib/rpm/packages.rpm       db1 format installed package headers
195 Please install rpm-4.0.4 first, and do
196         rpm --rebuilddb
197 to convert your database from db1 to db3 format.
198 "
199 #    exit 1
200 fi
201 /usr/sbin/groupadd -g 37 @RPMGROUP@                             > /dev/null 2>&1
202 /usr/sbin/useradd  -r -d /var/lib/rpm -u 37 -g 37 @RPMUSER@     > /dev/null 2>&1
203 %endif
204 exit 0
205
206 %post
207 %ifos linux
208 /sbin/ldconfig
209 /bin/chown @RPMUSER@.@RPMGROUP@ /var/lib/rpm/[A-Z]*
210 %endif
211 exit 0
212
213 %ifos linux
214 %postun
215 /sbin/ldconfig
216 if [ $1 = 0 ]; then
217     /usr/sbin/userdel rpm
218     /usr/sbin/groupdel rpm
219 fi
220 exit 0
221
222 %post devel -p /sbin/ldconfig
223 %postun devel -p /sbin/ldconfig
224
225 %post -n popt -p /sbin/ldconfig
226 %postun -n popt -p /sbin/ldconfig
227 %endif
228
229 %if %{with_python_subpackage}
230 %post python -p /sbin/ldconfig
231 %postun python -p /sbin/ldconfig
232 %endif
233
234 %define rpmattr         %attr(0755, @RPMUSER@, @RPMGROUP@)
235
236 %files
237 %defattr(-,root,root)
238 %doc RPM-PGP-KEY RPM-GPG-KEY BETA-GPG-KEY CHANGES GROUPS doc/manual/[a-z]*
239 # XXX comment these lines out if building with rpm that knows not %pubkey attr
240 %pubkey RPM-PGP-KEY
241 %pubkey RPM-GPG-KEY
242 %pubkey BETA-GPG-KEY
243 %attr(0755, @RPMUSER@, @RPMGROUP@)      /bin/rpm
244
245 %ifos linux
246 %config(noreplace,missingok)    /etc/cron.daily/rpm
247 %config(noreplace,missingok)    /etc/logrotate.d/rpm
248 %dir                            /etc/rpm
249 #%config(noreplace,missingok)   /etc/rpm/macros.*
250 %attr(0755, @RPMUSER@, @RPMGROUP@)      %dir /var/lib/rpm
251 %attr(0755, @RPMUSER@, @RPMGROUP@)      %dir /var/spool/repackage
252
253 %define rpmdbattr %attr(0644, @RPMUSER@, @RPMGROUP@) %verify(not md5 size mtime) %ghost %config(missingok,noreplace)
254 %rpmdbattr      /var/lib/rpm/*
255 %endif
256
257 %rpmattr        %{__bindir}/rpm2cpio
258 %rpmattr        %{__bindir}/gendiff
259 %rpmattr        %{__bindir}/rpmdb
260 #%rpmattr       %{__bindir}/rpm[eiu]
261 %rpmattr        %{__bindir}/rpmsign
262 %rpmattr        %{__bindir}/rpmquery
263 %rpmattr        %{__bindir}/rpmverify
264
265 %{__libdir}/librpm-@VERSION@.so
266 %{__libdir}/librpmdb-@VERSION@.so
267 %{__libdir}/librpmio-@VERSION@.so
268 %{__libdir}/librpmbuild-@VERSION@.so
269
270 %attr(0755, @RPMUSER@, @RPMGROUP@)      %dir %{__prefix}/lib/rpm
271 %rpmattr        %{__prefix}/lib/rpm/config.guess
272 %rpmattr        %{__prefix}/lib/rpm/config.sub
273 %rpmattr        %{__prefix}/lib/rpm/convertrpmrc.sh
274 %attr(0644, @RPMUSER@, @RPMGROUP@)      %{__prefix}/lib/rpm/macros
275 %rpmattr        %{__prefix}/lib/rpm/mkinstalldirs
276 %rpmattr        %{__prefix}/lib/rpm/rpm.*
277 %rpmattr        %{__prefix}/lib/rpm/rpm2cpio.sh
278 %rpmattr        %{__prefix}/lib/rpm/rpm[deiukqv]
279 %rpmattr        %{__prefix}/lib/rpm/tgpg
280 %attr(0644, @RPMUSER@, @RPMGROUP@)      %{__prefix}/lib/rpm/rpmpopt*
281 %attr(0644, @RPMUSER@, @RPMGROUP@)      %{__prefix}/lib/rpm/rpmrc
282
283 %ifarch i386 i486 i586 i686 athlon
284 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/i[3456]86*
285 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/athlon*
286 %endif
287 %ifarch alpha alphaev5 alphaev56 alphapca56 alphaev6 alphaev67
288 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/alpha*
289 %endif
290 %ifarch sparc sparcv9 sparc64
291 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/sparc*
292 %endif
293 %ifarch ia64
294 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/ia64*
295 %endif
296 %ifarch powerpc ppc ppciseries ppcpseries ppcmac ppc64
297 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/ppc*
298 %endif
299 %ifarch s390 s390x
300 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/s390*
301 %endif
302 %ifarch armv3l armv4l
303 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/armv[34][lb]*
304 %endif
305 %ifarch mips mipsel
306 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/mips*
307 %endif
308 %ifarch x86_64
309 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/x86_64*
310 %endif
311 %attr(-, @RPMUSER@, @RPMGROUP@)         %{__prefix}/lib/rpm/noarch*
312
313 %lang(cs)       %{__prefix}/*/locale/cs/LC_MESSAGES/rpm.mo
314 %lang(da)       %{__prefix}/*/locale/da/LC_MESSAGES/rpm.mo
315 %lang(de)       %{__prefix}/*/locale/de/LC_MESSAGES/rpm.mo
316 %lang(fi)       %{__prefix}/*/locale/fi/LC_MESSAGES/rpm.mo
317 %lang(fr)       %{__prefix}/*/locale/fr/LC_MESSAGES/rpm.mo
318 %lang(gl)       %{__prefix}/*/locale/gl/LC_MESSAGES/rpm.mo
319 %lang(is)       %{__prefix}/*/locale/is/LC_MESSAGES/rpm.mo
320 %lang(ja)       %{__prefix}/*/locale/ja/LC_MESSAGES/rpm.mo
321 %lang(ko)       %{__prefix}/*/locale/ko/LC_MESSAGES/rpm.mo
322 %lang(no)       %{__prefix}/*/locale/no/LC_MESSAGES/rpm.mo
323 %lang(pl)       %{__prefix}/*/locale/pl/LC_MESSAGES/rpm.mo
324 %lang(pt)       %{__prefix}/*/locale/pt/LC_MESSAGES/rpm.mo
325 %lang(pt_BR)    %{__prefix}/*/locale/pt_BR/LC_MESSAGES/rpm.mo
326 %lang(ro)       %{__prefix}/*/locale/ro/LC_MESSAGES/rpm.mo
327 %lang(ru)       %{__prefix}/*/locale/ru/LC_MESSAGES/rpm.mo
328 %lang(sk)       %{__prefix}/*/locale/sk/LC_MESSAGES/rpm.mo
329 %lang(sl)       %{__prefix}/*/locale/sl/LC_MESSAGES/rpm.mo
330 %lang(sr)       %{__prefix}/*/locale/sr/LC_MESSAGES/rpm.mo
331 %lang(sv)       %{__prefix}/*/locale/sv/LC_MESSAGES/rpm.mo
332 %lang(tr)       %{__prefix}/*/locale/tr/LC_MESSAGES/rpm.mo
333
334 %{__mandir}/man1/gendiff.1*
335 %{__mandir}/man8/rpm.8*
336 %{__mandir}/man8/rpm2cpio.8*
337 %lang(ja)       %{__mandir}/ja/man[18]/*.[18]*
338 %lang(pl)       %{__mandir}/pl/man[18]/*.[18]*
339 %lang(ru)       %{__mandir}/ru/man[18]/*.[18]*
340 %lang(sk)       %{__mandir}/sk/man[18]/*.[18]*
341
342 %files build
343 %defattr(-,root,root)
344 %dir %{__prefix}/src/@RPMCANONVENDOR@
345 %dir %{__prefix}/src/@RPMCANONVENDOR@/BUILD
346 %dir %{__prefix}/src/@RPMCANONVENDOR@/SPECS
347 %dir %{__prefix}/src/@RPMCANONVENDOR@/SOURCES
348 %dir %{__prefix}/src/@RPMCANONVENDOR@/SRPMS
349 %dir %{__prefix}/src/@RPMCANONVENDOR@/RPMS
350 %{__prefix}/src/@RPMCANONVENDOR@/RPMS/*
351 %rpmattr        %{__bindir}/rpmbuild
352 %rpmattr        %{__prefix}/lib/rpm/brp-*
353 %rpmattr        %{__prefix}/lib/rpm/check-files
354 %rpmattr        %{__prefix}/lib/rpm/check-prereqs
355 %rpmattr        %{__prefix}/lib/rpm/config.site
356 %rpmattr        %{__prefix}/lib/rpm/cross-build
357 %rpmattr        %{__prefix}/lib/rpm/debugedit
358 %rpmattr        %{__prefix}/lib/rpm/find-debuginfo.sh
359 %rpmattr        %{__prefix}/lib/rpm/find-lang.sh
360 %rpmattr        %{__prefix}/lib/rpm/find-prov.pl
361 %rpmattr        %{__prefix}/lib/rpm/find-provides
362 %rpmattr        %{__prefix}/lib/rpm/find-provides.perl
363 %rpmattr        %{__prefix}/lib/rpm/find-req.pl
364 %rpmattr        %{__prefix}/lib/rpm/find-requires
365 %rpmattr        %{__prefix}/lib/rpm/find-requires.perl
366 %rpmattr        %{__prefix}/lib/rpm/get_magic.pl
367 %rpmattr        %{__prefix}/lib/rpm/getpo.sh
368 %rpmattr        %{__prefix}/lib/rpm/http.req
369 %rpmattr        %{__prefix}/lib/rpm/javadeps
370 %rpmattr        %{__prefix}/lib/rpm/magic
371 %rpmattr        %{__prefix}/lib/rpm/magic.mgc
372 %rpmattr        %{__prefix}/lib/rpm/magic.mime
373 %rpmattr        %{__prefix}/lib/rpm/magic.mime.mgc
374 %rpmattr        %{__prefix}/lib/rpm/magic.prov
375 %rpmattr        %{__prefix}/lib/rpm/magic.req
376 %rpmattr        %{__prefix}/lib/rpm/perldeps.pl
377 %rpmattr        %{__prefix}/lib/rpm/perl.prov
378 %rpmattr        %{__prefix}/lib/rpm/perl.req
379
380 %rpmattr        %{__prefix}/lib/rpm/rpm[bt]
381 %rpmattr        %{__prefix}/lib/rpm/rpmdeps
382 %rpmattr        %{__prefix}/lib/rpm/trpm
383 %rpmattr        %{__prefix}/lib/rpm/u_pkg.sh
384 %rpmattr        %{__prefix}/lib/rpm/vpkg-provides.sh
385 %rpmattr        %{__prefix}/lib/rpm/vpkg-provides2.sh
386
387 %{__mandir}/man8/rpmbuild.8*
388 %{__mandir}/man8/rpmdeps.8*
389
390 %if %{with_python_subpackage}
391 %files python
392 %defattr(-,root,root)
393 %{__libdir}/python%{with_python_version}/site-packages/rpmmodule.so
394 %{__libdir}/python%{with_python_version}/site-packages/rpmdb
395 %endif
396
397 %files devel
398 %defattr(-,root,root)
399 %if %{with_apidocs}
400 %doc @WITH_APIDOCS_TARGET@
401 %endif
402 %{__includedir}/rpm
403 %{__libdir}/librpm.a
404 %{__libdir}/librpm.la
405 %{__libdir}/librpm.so
406 %{__libdir}/librpmdb.a
407 %{__libdir}/librpmdb.la
408 %{__libdir}/librpmdb.so
409 %{__libdir}/librpmio.a
410 %{__libdir}/librpmio.la
411 %{__libdir}/librpmio.so
412 %{__libdir}/librpmbuild.a
413 %{__libdir}/librpmbuild.la
414 %{__libdir}/librpmbuild.so
415 %{__mandir}/man8/rpmcache.8*
416 %{__mandir}/man8/rpmgraph.8*
417 %rpmattr        %{__prefix}/lib/rpm/rpmcache
418 %rpmattr        %{__prefix}/lib/rpm/rpmdb_deadlock
419 %rpmattr        %{__prefix}/lib/rpm/rpmdb_dump
420 %rpmattr        %{__prefix}/lib/rpm/rpmdb_load
421 %rpmattr        %{__prefix}/lib/rpm/rpmdb_svc
422 %rpmattr        %{__prefix}/lib/rpm/rpmdb_stat
423 %rpmattr        %{__prefix}/lib/rpm/rpmdb_verify
424 %rpmattr        %{__bindir}/rpmgraph
425
426 %files -n popt
427 %defattr(-,root,root)
428 %{__libdir}/libpopt.so.*
429 %{__mandir}/man3/popt.3*
430 %lang(cs)       %{__prefix}/*/locale/cs/LC_MESSAGES/popt.mo
431 %lang(da)       %{__prefix}/*/locale/da/LC_MESSAGES/popt.mo
432 %lang(de)       %{__prefix}/*/locale/de/LC_MESSAGES/popt.mo
433 %lang(es)       %{__prefix}/*/locale/es/LC_MESSAGES/popt.mo
434 %lang(eu_ES)    %{__prefix}/*/locale/eu_ES/LC_MESSAGES/popt.mo
435 %lang(fi)       %{__prefix}/*/locale/fi/LC_MESSAGES/popt.mo
436 %lang(fr)       %{__prefix}/*/locale/fr/LC_MESSAGES/popt.mo
437 %lang(gl)       %{__prefix}/*/locale/gl/LC_MESSAGES/popt.mo
438 %lang(hu)       %{__prefix}/*/locale/hu/LC_MESSAGES/popt.mo
439 %lang(id)       %{__prefix}/*/locale/id/LC_MESSAGES/popt.mo
440 %lang(is)       %{__prefix}/*/locale/is/LC_MESSAGES/popt.mo
441 %lang(it)       %{__prefix}/*/locale/it/LC_MESSAGES/popt.mo
442 %lang(ja)       %{__prefix}/*/locale/ja/LC_MESSAGES/popt.mo
443 %lang(ko)       %{__prefix}/*/locale/ko/LC_MESSAGES/popt.mo
444 %lang(no)       %{__prefix}/*/locale/no/LC_MESSAGES/popt.mo
445 %lang(pl)       %{__prefix}/*/locale/pl/LC_MESSAGES/popt.mo
446 %lang(pt)       %{__prefix}/*/locale/pt/LC_MESSAGES/popt.mo
447 %lang(pt_BR)    %{__prefix}/*/locale/pt_BR/LC_MESSAGES/popt.mo
448 %lang(ro)       %{__prefix}/*/locale/ro/LC_MESSAGES/popt.mo
449 %lang(ru)       %{__prefix}/*/locale/ru/LC_MESSAGES/popt.mo
450 %lang(sk)       %{__prefix}/*/locale/sk/LC_MESSAGES/popt.mo
451 %lang(sl)       %{__prefix}/*/locale/sl/LC_MESSAGES/popt.mo
452 %lang(sr)       %{__prefix}/*/locale/sr/LC_MESSAGES/popt.mo
453 %lang(sv)       %{__prefix}/*/locale/sv/LC_MESSAGES/popt.mo
454 %lang(tr)       %{__prefix}/*/locale/tr/LC_MESSAGES/popt.mo
455 %lang(uk)       %{__prefix}/*/locale/uk/LC_MESSAGES/popt.mo
456 %lang(wa)       %{__prefix}/*/locale/wa/LC_MESSAGES/popt.mo
457 %lang(zh)       %{__prefix}/*/locale/zh/LC_MESSAGES/popt.mo
458 %lang(zh_CN)    %{__prefix}/*/locale/zh_CN.GB2312/LC_MESSAGES/popt.mo
459
460 # XXX These may end up in popt-devel but it hardly seems worth the effort.
461 %{__libdir}/libpopt.a
462 %{__libdir}/libpopt.la
463 %{__libdir}/libpopt.so
464 %{__includedir}/popt.h
465
466 %changelog
467 * Fri Jan 17 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.58
468 - duplicate package checks with arch/os checks if colored.
469 - file conflict checks with colors.
470
471 * Mon Jan 13 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.57
472 - teach rpmquery to return "owning" package(s) in spite of alternatives.
473
474 * Sun Jan 12 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.56
475 - file: *really* read elf64 notes correctly.
476 - python: restore thread context on errorCB (#80744).
477
478 * Fri Jan 10 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.55
479 - fix: obscure corner case(s) with rpmvercmp (#50977).
480
481 * Wed Jan  8 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.54
482 - python: put rpmmodule.so where python expects to find.
483 - add brp-strip-static-archive build root policy helper.
484 - add -lelf to rpm LDFLAGS, not LDADD, since there is no libelf.la now.
485
486 * Tue Jan  7 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.53
487 - file: read elf64 notes correctly.
488
489 * Mon Jan  6 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.52
490 - portabilitly: solaris fixes.
491 - for DSO's, provide the file basename if DT_SONAME not found.
492 - add perldeps.pl, start to replace perl.{prov,req}.
493
494 * Sun Jan  5 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.51
495 - file: avoid ogg/vorbis file classification problems.
496
497 * Wed Jan  1 2003 Jeff Johnson <jbj@redhat.com> 4.2-0.49
498 - add rpmts/rpmte/rpmfi/rpmds element colors.
499 - ignore items not in our rainbow (i.e. colors are functional).
500 - fix: dependency helpers now rate limited at 10ms, not 1s.
501 - add per-arch canonical color, only x86_64 enabled for now.
502
503 * Sun Dec 29 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.46
504 - don't segfault with packages produced by rpm-2.93 (#80618).
505 - python: eliminate hash.[ch] and upgrade.[ch], methods too.
506 - fix :armor query extension, tgpg mktmp handling (#80684).
507 - use rpmfiFClass() underneath --fileclass.
508 - use rpmfiFDepends() underneath --fileprovide and --filerequire.
509 - python: add fi.FColor() and fi.FClass() methods.
510 - calculate dependency color and refernces.
511 - python: add ds.Color() and ds.Refs() methods.
512 - fix: typo in assertion.
513
514 * Sat Dec 28 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.45
515 - error if querying with iterator on different sized arrays.
516 - add rpmfi methods to access color, class, and dependencies.
517
518 * Fri Dec 27 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.42
519 - add BETA-GPG-KEY (but not in headers using %%pubkey yet).
520 - disable perl module magic rule.
521 - ignore ENOENT return from db->close (#80514,#79314).
522 - fix builddir relative inclusion, add %%pubkeys to rpm header.
523 - fix: package relocations were broken (#75057).
524
525 * Thu Dec 26 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.39
526 - add Red Hat pubkeys to rpm header.
527 - resurrect automagic perl(foo) dependency generation.
528
529 * Tue Dec 24 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.38
530 - add %%pubkey attribute to read armored pubkey files into header.
531 - permit both relative/absolute paths, display 'P' when verifying.
532
533 * Mon Dec 23 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.36
534 - add matching "config(N) = EVR"  dependencies iff %%config is found.
535
536 * Sun Dec 22 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.35
537 - fix: remove rpmfi scareMem so that headers can be reloaded on ia64.
538 - fix: set DB_PRIVATE, not DB_ENV_PRIVATE, if unshared posix mutexes.
539 - remove useless (and now unnecessary) kernel/glibc dependencies (#79872).
540
541 * Sat Dec 21 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.34
542 - add --enable-posixmutexes when configuring on linux.
543 - add rpmdb_{deadlock,dump,load,svc,stat,verify} utilities.
544 - include srpm pkgid in binary headers (#71460).
545 - add %%check scriptlet to run after %%install (#64137).
546 - simplify specfile query linkage loop.
547 - drill rpmts into parseSpec(), carrying Spec along.
548
549 * Fri Dec 20 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.33
550 - dynamically link /bin/rpm, link against good old -lpthread.
551 - test pthread_{mutex,cond}attr_setpshared(), add DB_ENV_PRIVATE if not.
552 - error on exclusive Packages fcntl lock if DB_ENV_PRIVATE is set.
553 - copy compressFilelist to convertdb1.c, remove internal legacy.h.
554
555 * Thu Dec 19 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.31
556 - statically link against /usr/lib/nptl/libpthread.a, if present.
557 - remove popt aliases for -U et al.
558 - add -I/usr/include/nptl, Conflicts: kernel < 2.4.20.
559
560 * Wed Dec 18 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.29nptl
561 - popt aliases for -U et al to achieve dynamic link with nptl.
562 - add --file{class,provide,require} popt aliases and header extensions.
563
564 * Tue Dec 17 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.28nptl
565 - re-enable CDB locking, removing "private" from %%__dbi_cdb macro.
566
567 * Mon Dec 16 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.27+nptl
568 - rebuild against glibc with fcntl fixed in libpthread.
569
570 * Sun Dec 15 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.26+nptl
571 - disable fcntl(2) lock on Packages until glibc+nptl is fixed.
572 - make cdb locks "private" for pthreads compatibility w/o NPTL.
573 - add --enable-posixmutexes to use NPTL.
574 - make dependency generation "opt-out" everywhere.
575
576 * Sat Dec 14 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.25
577 - rebuild rpm with internal dependency generation enabled.
578 - fix: make sure each library has DT_NEEDED for all unresolved syms.
579 - generate Elf provides even if file is not executable.
580
581 * Fri Dec 13 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.24
582 - debug_packages "works", but non-noarch w/o %setup has empty payload.
583 - make dependency generation "opt-in" in order to build in distro.
584
585 * Thu Dec 12 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.23
586 - fix: add rpmlib(VersionedDependencies) if versioned Provides: found.
587 - fix: add %%ifnarch noarch to debug_package macro.
588
589 * Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.22
590 - rebuild against glibc with TLS support.
591
592 * Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.21
593 - don't generate dependencies unless execute bit is set.
594 - enable internal automagic dependency generation as default.
595
596 * Sat Dec  7 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.19
597 - resurrect  AutoReq: and AutoProv:.
598
599 * Tue Dec  2 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.18
600 - internal automagic dependency generation (disabled for now).
601
602 * Mon Dec  1 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.17
603 - late rpmts reference causes premature free (#78862).
604
605 * Sun Dec  1 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.16
606 - link rpm libraries together, use shared helpers with external -lelf.
607 - move libfmagic to librpmio.
608 - use libtool-1.4.3, autoconf-2.56.
609 - add explicit -L/lib64 -L/usr/lib64 for libtool mode=relink on x86_64.
610 - use usrlib_LTLIBRARIES to install directly in /usr/lib64 instead.
611
612 * Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.14
613 - upgrade to elfutils-0.63.
614
615 * Fri Nov 29 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.13
616 - bundle libfmagic into librpmbuild for now.
617 - apply patches 7 and 8 to db-4.1.24.
618 - upgrade to elfutils-0.59.
619 - add -g to all platforms optflags.
620 - build with external elfutils (preferred), if available.
621
622 * Wed Nov 20 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.12
623 - use rpmdeps rather than find-{requires,provides}.
624
625 * Tue Nov 19 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.11
626 - fix: option conflict error message (#77373).
627 - add AC_SYS_LARGFILE throughout.
628 - statically link rpmdeps against (internal) libfmagic.
629
630 * Fri Nov 15 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.10
631 - update to elfutils-0.56.
632 - have debug sub-subpackage use external, not internal, elfutils.
633 - apply patches 1-6 to db-4.1.24.
634 - resurrect availablePackages one more time.
635
636 * Wed Nov 13 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.8
637 - fix: bash must have functional libtermcap.so.2.
638
639 * Sat Nov  9 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.7
640 - add _javadir/_javadocdir/_javaclasspath macros.
641
642 * Fri Nov  8 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.6
643 - fix: /dev/initctl has not MD5 segfault (#76718).
644 - rpm.8: gpg uses GNUPGHOME, not GPGPATH (#76691).
645 - use %%{_lib} for libraries.
646 - fix: permit build with --disable-nls (#76258).
647 - add error message on glob failure (#76012).
648 - remove dependency on libelf.
649
650 * Thu Oct 24 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.5
651 - add /usr/lib/rpm/rpmdeps.
652 - add /usr/lib/rpm/magic.
653
654 * Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.4
655 - resurrect genhdlist "greased lightning" pathway for now.
656 - elfutils: avoid gcc-3.2 ICE on x86_64 for now.
657
658 * Fri Oct 18 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.2
659 - add debug sub-package patch.
660 - re-add elfutils/libdwarf (for dwarf.h), eliminate tools/dwarf2.h.
661
662 * Thu Oct 17 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.1
663 - set cachesize without a dbenv, the default is far too small.
664 - db: don't return EACCES on db->close w/o environment.
665 - unify cachesize configuration, with (or without) a dbenv.
666 - comments regarding unsupported (yet) db-4.1.17 functionality.
667 - requirement on libelf >= 0.8.2 to work around incompatible soname (#72792).
668 - fix: common sanity check on headers, prevent segfault (#72590).
669 - limit number of NOKEY/UNTRUSTED keys that will be warned once.
670 - libadd -lelf to rpmdb (#73024).
671 - update to db-4.1.24 final.
672 - eliminate myftw, use Fts(3) instead.
673 - dump libelf, gulp elfutils, for now.
674 - python: permit headers to be hashed.
675 - use %%{_lib} for libraries.