- Go back to manual installation to avoid problems on unprivileged
NetBSD installation. This fixes PR pkg/44415 by Hauke Fath.
- Don't install "rpm2pkg.cat8" any more as it is not really useful.
- Major overhaul of the source code to make maintenance and support
for new compression formats easier.
- Use "liblzma" instead of "xzcat" for dealing with LZMA compressed RPMs.
Drop unnecessary dependences on "gettext-lib" and Berkeley DB. Neither
of them have been necessary when this package stopped depending on the
"rpm" package.
Approved by Thomas Klausner.
- Use "xzcat" instead of "lzcat". This package now doesn't depend on the
"archivers/xz" package under NetBSD-current because "xzcat" is part of
the base distribution.
- Use "@pkgdir" instead of "@exec mkdir ..." to create empty directories.
- Don't add "@dirrm" lines for empty directories as they are now deleted
automatically.
Based on a suggestion by Thomas Klausner in private e-mail.
Always treat symbolic links like file when generating the package list.
A long time ago "pkg_install" didn't like symbolic links which is why
"rpm2pkg" created "@exec" and "@unexec" lines in the package list.
This does however cause false positive reported by the "CHECK_FILES" check.
This should fix a part of PR pkg/41191.
- Avoid handling RPMs with uncompress data via "lzcat -f".
- Improve handling of LZMA compression via "lzcat":
- Fail early if the child process fails to start "lzcat".
- Don't try to kill the chld process blindly when we close the parent
end of the pipe. Check first whether it already terminated which
is the normal case.
Handling of RPM files with LZMA compression is now tested.
- Implement a minimal parser for the RPM header section and use it to
skip to the data section instead of searching for BZip2 or GZip
magic headers.
- Add untested support for LZMA compression. It currently uses "lzcat"
from the "xz" package which is what "pkgsrc" itself uses to handle
".lzma" files.
- Fix detection of BZip2/GZip signature which would have failed if the
signature was located behind a prefix of the signature.
- Increase I/O buffer size so that "rpm2pkg" will usually find the data
section after only one read(2) system call.
- Don't use the original "rpm" libraries. All we need to do is to identify
a file as an RPM file and afterwards find the BZip2 or GZip compressed
section at the end of the file.
- Use C99's "stdbool.h" instead of home-grown defines.
- Switch to 2-clause BSD license.
- Compile with extra warnings (again) if GCC is used as the compiler.
- Fix build warnings reported by "-Wsign-compare".
- Fixed GCC 4.x build warning (which would have resulted in an error
with future GCC versions).
- Depend on newer version of "rpm" package to fix build under Mac OS X.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
- Improve I/O buffer mangement.
- Don't put "@exec" and "@unexec" in the package list for symbolic links
which point to normal files. This allows the automatic manual
decompression to handle symbolic links to manual pages correctly.
The update fixes PR pkg/25723 by Kouichirou Hiratsuka.
- added support for RPM archive compress with bzip2 as used by e.g.
SuSE Linux 8.2.
- (hopefully) made portable
- rewrote ugly code for handling "-s" command line option
- converted source to KNF