On Mon, Jun 15, 2009 at 6:35 PM, Chess Griffin wrote:
Hello-
I am familiar with packaging for other *nixes but this is my first RPM
attempt and I have a couple of questions. I have read the various
packaging docs on the Fedora Project site, but have been unable to find
a precise answer. If there is another document to read or another list
where I should be directing these questions, please let me know.
1. The Makefile sets PREFIX to /usr/local. In %install, is it ok
to use:
make install PREFIX=/usr DESTDIR=$RPM_BUILD_ROOT
Yes, but don't forget to use macros, e.g. in %install
make install PREFIX=%{_prefix} DESTDIR=$RPM_BUILD_ROOT
2. The Makefile also attempts to install and set user/group
ownership
and permissions, i.e. it does 'INSTALLBIN= install -g bin -o root -m
555'. Is it ok to address this by patching the line so it reads
'INSTALLBIN= install' seeing as how ownership and permissions are later
set in %files?
This one depends on the package and files being installed. Normally,
directories and executables get 755, symlinks get 777 and the rest
gets 644. However, there are (as always) exemptions.
Meanwhile, please use at least INSTALLBIN="install -p" to preserve timestamps.
3. Similarly, the Makefile also hardcodes the manpage directory,
i.e.
in install, it has: '$(INSTALLDIR) $(DESTDIR)$(PREFIX)/man/man1.
Again, is it ok to patch this line so it reads '$(INSTALLDIR)
$(DESTDIR)$PREFIX/share/man/man1'?
Yes. Or even better, you can define a MANDIR variable and use it
instead. This way you can also upstream the patch and after that you
won't need to use an extra patch in the next releases.
Orcan