Commit ec2d3431 authored by Michal Čihař's avatar Michal Čihař

Imported Upstream version 4.7.0

parent 56e15767

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

This diff is collapsed. ->
- add support for lzma compressed sources
- remove questionable non-utf polish comment confusing doxygen
- clarify rpmtsCheck() documentation (rhbz#159638)
- clarify rpm manpage wrt rpmbuild binary vs package (rhbz#233232)
- add OSGi dependency extractor script
- rename norwegian translation no -> nb (rhbz#332271)
- find-lang POSIX-compliant find(1) usage + spelling fixes
- find-lang localized man page and qt translation support
- match *.omf, not *omf in find-lang
- debugedit fixes for DW_FORM_ref_addr and empty DW_AT_comp_dir
- don't mess up problem pkgNEVR in python ts.check() (rhbz#349091)
- use NEVRA, not NEVR everywhere for rpmProblems
- add Catalan translation (rhbz#350401)
- fix segfault in %{lua:...}'s rpm_print
- don't automatically print a newline in rpm_print
- fix free on invalid pointer on temp file failure (mdvbz#???)
- use dgettext() instead of just gettext() (mdvbz#???)
- align rpm -V output (mdvbz#31287)
- fix build without -O2 (mdvbz#???)
- make rpmbuild honor --quiet (mdvbz#???, rhbz#124300)
- fix rpm -K segfault on corrupted header (mdvbz#33735)
- fix download path in README
- fix query return codes (rhbz#244236)
- don't do tilde expansion if HOME is not set
- add python method for for retrieving (without setting) ts vsflags
- OS X Leopard portability fixes
- ordering fix (don't use RPMSENSE_PREREQ)
- fix multi-line macro expansion in last line of spec (mdvbz#27417)
- avoid compressFilelist() stack overflow in pathological cases
- handle "use vX.X.X" in perl dependency extraction (rhbz#140597)
- fix field-width specifiers when no space between (rhbz#323221)
- don't unlink non-temporary file in FSM_UNDO (rhbz#223931)
- print --usage to stderr instead of stdout (rhbz#164021)
- set a default 0022 umask value always (#83006)
- last 8 bytes of RSA modulus is keyid for V3 pubkeys (#205080)
- convert '-' to '_' within --define macro names (#124995)
- handle spaces in file path arguments correctly (#217258)
- avoid access(2) quirks querying symlinks, lstat(2) instead (#60288)
- permit files with glob characters in *.rpm packages (#147383)
- add support for triggerprein scriptlets
- add support for Geode CPU (rhbz#428979)
- missing space in russian translation (mdvbz#36974)
- print regular provides on build too (mdvbz#36672)
- bandaid for truncated error message in russian (mdvbz#31680)
- install secondary arch macros on x86_64 (rhbz#194123)
- don't mess up --target when reading rpmrc includes (rhbz#232429)
- whitespace in dirnames fixes wrt rpmbuild (rhbz#220449)
- much improved find-debuginfo script
- debuginfo build-id integration
- bandaid for reads timeouting on heavily loaded systems (mdvbz#???) ->
- avoid .rpmnew if file in package hasn't changed (rhbz#194246)
- avoid .rpmnew/.rpmsave if files only differ by timestamp (rhbz#128622)
- minor makefile cleanups
- install preferred multilib color packages first (rhbz#214737)
- show pre- and posttrans scripts in --scripts query (susebz#253620)
- create compat macros for ia32e and amd64 (rhbz#211119, #223355)
- fix various buffer overflows in macro handling (rhbz#253971)
- fix building with latest glibc open() changes
- convert manuals to UTF-8
- make find-lang --with-gnome picks up omf files (rhbz#251400)
- fail build on dependency extraction errors (rhbz#226751)
- update default per-arch compiler flags for modern gcc (rhbz#212583)
- add comment about checking --help to manuals (rhbz#164281)
- avoid truncating /var/log/rpmpkgs in case of errors (rhbz#232830)
- avoid wrong selinux context on /var/log/rpmpkgs creation (rhbz#315271)
- rpmtsAddInstallElement() consistency (rhbz#180996, rhbz#281611)
- clarify --initdb usage in manual (rhbz#218057)
- skip stale and unaccessible (FUSE) mountpoints (rhbz#190496, 220991)
- buildid-related debugedit fixes
- add/update Spanish and Italian translations
- add missing files for translation (rhbz#249608)
- ARM-architecture fixes
- fix --dump usage description in manual
- update scriptlet names to match with reality (rhbz#248128)
- make docdir checking strict (rhbz#246819)
- perl dependency extraction fixes (rhbz#214496, #198033, #249135)
- permit API users to select non-exiting rpmdb termination
- dont check for termination signals in middle of transaction
- avoid leaving stale locks around on python tracebacks
- debugedit -l file matching fixes
- don't read *.rpmnew etc backup macro files
- fix error reporting on rpm --checksig (rhbz#155079)
- fix false mire matches on nonexistent headers (rhbz#277161)
- handle mire matching on binary blobs
- fix segfault in mire matching on binary data types
- add Sparch Niagara arch support (rhbz#263521)
- add %alpha macro for supported alpha archs (rhbz#295941)
- fix typos in default optflags for some archs (rhbz#305221)
- fix disk space checking on 100% full filesystems (rhbz#308171)
- own omf directories found by find-lang (rhbz#296731)
- fake callbacks on erasure for packages without files (rhbz#259961)
- python: add methods for checking and terminating on signals
- python: add method for expanding macros
4.4.2 ->
- remove internal sqlite, zlib, gettext
- remove obsolete utilities
......@@ -211,9 +114,6 @@
- fix segfault on errors if neon transport is used (rhbz#220392)
- new buildroot sanity checker scripts check-buildroot and check-rpaths
- new debugedit option for recomputing build ID
- fix including exported headers from C++
- fix ordering with --nodeps
- include symlinks in find-lang search (rhbz#246729)
4.4.1 -> 4.4.2:
- start 4.4.2 devel.
This diff is collapsed.
This diff is collapsed.
/*! \mainpage RPM API Documentation.
/** \defgroup python PYTHON API.
/** \defgroup py_c PYTHON-C Language Bindings.
/** \defgroup rpmcli RPMCLI.
/** \defgroup rpmbuild RPMBUILD.
/** \defgroup rpmrc RPMRC.
/** \defgroup rpmts Transaction Set API.
/** \defgroup rpmte Transaction Element API.
/** \defgroup rpmds Dependency Set API.
/** \defgroup rpmfi File Info API.
/** \defgroup rpmgi Generalized Iterator API.
/** \defgroup lead LEAD.
/** \defgroup signature SIGNATURE.
/** \defgroup header HEADER.
/** \defgroup payload PAYLOAD.
/** \defgroup rpmdb Database API.
/** \defgroup dbi DataBase Index Element API.
/** \defgroup db3 Berkeley DB API.
/** \defgroup rpmlua Embedded Lua.
/** \defgroup rpmrpc RPMRPC.
/** \defgroup rpmio RPMIO.
/** \defgroup popt POPT.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This is the readme for RPM version 2.2.9, written by
1 Requirements.
First make sure you have at least IXEmul v45.0 installed.
These packages are needed to be able to compile rpm:
* gettext
* gdbm
* zlib
These extra packages are needed to run rpm:
* cpio
2 Installation.
These are the things you'll have to do to install this package.
* cd <your-build-directory>
* tar -xzvf rpm-2.2.9-src.tar.gz
* cd rpm-2.2.9
* configure --prefix=/gg
* make
* make install
Now it's time to edit the file "gg:lib/rpmrc" to correspond to your
system setup. Change the following entry:
* topdir: /place/to/store/RPM/packages
Make sure <tmppath> points to a _harddisk_ directory (the ram disk doesn't
allow the use of softlinks):
* tmppath: /place/on/your/hard/disk
Add the following entry:
* builddir: /place/where/RPM/will/build/packages
It is recommended to let <topdir> and <builddir> point to two different
Now create the following directories in <topdir>:
* RPMS/m68k
Create the "rpm" directory in "gg:lib".
makedir gg:lib/rpm
Now it's time to initialise the rpm database with:
rpm --initdb
3 Problems and bugs.
Please contact me <> if you experience
any problems with or find bugs in this package.
Please remember: "A bug not know of is a bug not fixed".
- fix the argv const-impedance all around
- unleash the const monsters from rpmdb/header* and deal with 'em
- audit the rest of the API for const sanity
4.5 and beyond
Janitorial work:
......@@ -6,25 +12,24 @@ Janitorial work:
of internal versions from -95 era
- audit and clean up user visible strings
- clean up the build process (auto*-stuff, compiler warnings)
- fix toplevel "make distcheck"
- audit int_32 vs uint_32 etc sanity in the interfaces
- have "make check" do something useful (use James' test-harness?)
- use mkstemp() instead of mktemp() everywhere
- refactor those 800+ line monster functions into something more digestable
- split popt to separate project
- update gettext
- update internal bdb (stale lock detection etc)
- remove internal file/libmagic?
- review, update included README, INSTALL etc docs
- uninternationalize RPMMESS_DEBUG strings to ease translator work
- macroize hardcoded directories like docDirs
- get rid of static "1024 entries is enough for everybody" buffers
- bdb related improvements like add stale lock detection etc
- proper separation of exported and private headers to clean up the API
- package verification API (instead of just printing out letters)
- proper package build API (python)
- proper separation of rpm-cli and lib functionality
- eliminate need for headerGetEntry() where it makes sense (eg changelogs)
- provide compat headers for renamed APIs and structures
- grammar for specfiles, rpm macros
This diff is collapsed.
......@@ -105,6 +105,7 @@ for f in $liblist $exelist ; do
print $2 ;
(START==2) && /^[A-Za-z]/ { START=3; }
/^Version References:$/ { START=2; }
(START==2) && /required from/ {
sub(/:/, "", $3);
......@@ -113,7 +114,6 @@ for f in $liblist $exelist ; do
(START==2) && (LIBNAME!="") && ($4!="") && (($4~/^GLIBC_*/) || ($4~/^GCC_*/)) {
print LIBNAME "(" $4 ")'$lib64'";
/^[A-Za-z]/ { START=3; }
done | sort -u
export CFLAGS
export LDFLAGS
LTV="libtoolize (GNU libtool) 1.5.22"