rpmbuild

Matthew Fluet mfluet@intertrust.com
Thu, 9 Aug 2001 10:41:27 -0700 (PDT)


> You need a file .rpmmacros (the name changed at some point long ago) and it
> should contain the line
> 	%_topdir	???
> where ??? is the full path name to some directory

The question is where .rpmmacros file should be.
Steve asked me to check out the make-rpms script to see if I could run it
without changes.  Short answer is that I can't.  The script has the
following:

root="$HOME/mlton"
rpms="$root/rpms"
...
cd $rpms
mkdir -p BUILD RPMS/i386 SOURCES SPECS SRPMS

Steve's .rpmmacros has the line
%_topdir /home/sweeks/mlton/rpms

What we want is some way to specify that _topdir is $rpms (as computed by
the make-rpms script) without requiring the user to change their own
.rpmmacros file.  (E.g., Steve maintains MLton and builds often enough, so
it makes sense to have %_topdir /home/sweeks/mlton/rpms in his .rpmmacros
file.  But, if he pulls down MLkit and tries to make their rpms, he
probably doesn't want to hack his own .rpmmacros file and then change it
back.)

> Note, if you make the directory writable by you, then you don't need to be
> root when you make the RPMs (or install source RPMs), which is VERY good.

Agreed.  But this contributes to the above problem.  We make a local /rpms
directory (obviously writably by me) and do the build there.  So, we need
a way of overriding the _topdir that is set either by the system or by the
user (in their .rpmmacros file).