[OPEN-ILS-DEV] make install DESTDIR=/path/to
Jeroen van Meeuwen (Fedora Project)
kanarip at fedoraproject.org
Sat Nov 21 09:20:57 EST 2009
Hi there,
This inquiry concerns OpenSRF ;-)
As you know I'm working on packaging for Fedora / EPEL, and while doing
so, I notice parts of the auto foo do not honor the DESTDIR parameter to
make install very well.
In RPM packaging, the procedure to install a program while building the
package is to execute a make install DESTDIR=$RPM_BUILD_ROOT, so that
the program is installed under
~/rpmbuild/BUILDROOT/%{name}-%{version}-%{release}.
This is an empty directory tree, so that all files under the buildroot
can be considered belonging to the OpenSRF package (and sub-packages).
However, this is also where it gets a little more complex. I did not
want to send any kind of patch right away, that would change the way you
work the auto foo, so I'll try and explain and see what you think first.
In src/gateway/Makefile.am, the httpd modules are installed and enabled
outside the DESTDIR (and onto the build host filesystem actually), which
I presume is now used during development as a quick way to 'make
install' and test the program, but it sucks when you are packaging; the
build host filesystem cannot be touched. As such, activating the modules
through apxs doesn't make sense. I'm not sure whether a patch disabling
that auto foo behavior would be accepted.
In addition to that small problem, httpd.conf is not to be touched. The
way modules are configured and loaded in RPM based distributions is that
the package ships /etc/httpd/conf.d/osrf_json_gateway.conf, rather then
having apxs add a LoadModule directive to httpd.conf. I believe in
Debian based distributions, the location of a similar file is supposed
to be /etc/apache2/modules-available/. How to make sure both (and
other?) situations are taken care of properly in auto foo remains to be
seen, but I would like to have OpenSRF comply with both these standard
distribution methods of shipping httpd modules, even if that means
creating /usr/share/OpenSRF/osrf_json_gateway.conf and having the
packaging procedures move that file to the correct location (for example).
The rest of the patch would merely consist of adding a few $(DESTDIR)
prefixes to the auto foo, and should barely have any impact.
Please let me know how you feel about this and maybe we can exchange
patches and ideas and test some things before anything is committed?
Kind regards,
Jeroen van Meeuwen
-kanarip
More information about the Open-ils-dev
mailing list