This is the mail archive of the
rhug-rhats@sources.redhat.com
mailing list for the RHUG project.
RPM notes
- From: Anthony Green <green at redhat dot com>
- To: rhug-rhats at sources dot redhat dot com
- Date: 03 Mar 2002 00:20:10 -0800
- Subject: RPM notes
I started making RPMs today, and thought I'd share some random notes for
the record...
* I've created nice RPM configury for 4 of the packages: xerces,
gnu.readline, rhino, and jakarta-oro. They're very easy to create once
you have the pattern down.
* We currently create two kinds of RPMs.. rhug-PACKAGE-VERSION and
rhug-PACKAGE-VERSION-devel.
* The non-devel version currently contains executables, .so files and
.jar files. You could argue that the .jar file should go into the
-devel package, but maybe the right thing is to stick them into noarch
packages and make -devel depend on those.
* Normally non-devel library RPMs contain *.so.* , and not *.so files
(which go in -devel). However, our classloader currently looks for *.so
files, so we must include those in the non-devel package. Should we
change the classloader? How would it know which version to load?
* I'm installing the .jar files in $prefix/share/java (but no links to
an ext directory yet -- let's wait for the tools to catch up).
* The packages know whether or not they're being built in a unified
tree, or separately, and set the classpath and -L options appropriately
at configure time.
* I submitted a patch to rpm-list@redhat.com to add support for GCJFLAGS
in RPM. RPM already sets CFLAGS, CXXFLAGS, and FFLAGS appropriately.
GCJFLAGS is an obvious addition, but it's not critical yet.
* I haven't dealt with docs yet (.html files). Most of them will live
in the -devel packages.
* Much of the specs files should be generated from the info.rml files.
* Creating RPMs is easy. Run "make dist" in the package directory to
create rhug-PACKAGE-VERSION.tar.gz, then run "rpm -ta
rhug-PACKAGE-VERSION.tar.gz". It will extract the spec file from the
tar ball and take care of everything.
* Obviously there are no RPMs yet for the latest gcj libs which are
needed to run these things. You have to force the install like so...
"rpm -hiv --nodeps rhug-gnu_readline-0.6-1.i386.rpm" and just put
libgcj.so and friends in your LD_LIBRARY_PATH.
That's it for now.
AG