|
From: | Jason Curl |
Subject: | Re: make distcheck and the /etc dir |
Date: | Mon, 04 Jun 2007 19:14:44 +0200 |
User-agent: | Thunderbird 2.0.0.0 (Windows/20070326) |
Noah Slater wrote:
# Makefile.am for installing configuration data etcdir=/etc/lx2005 etc_DATA = serlog.confThis is seriously broken. What if my /etc directory is read-only, for example.
As I mentioned below, I could override this by using: make DESTDIR="/home/user/progs" installThe software itself has command line options to override where it gets its configuration. It uses '/etc/lx2005' as a last resort, where the default files go.
It would use what the user provides on the command line for a path, then '/usr/local/etc/' then '/etc' in that order.
This breaks any hope of getting a VPATH build.When I run 'make distcheck' it fails as it cannot install the files to '/etc/lx2005'.Indeed, because distcheck makes sure the build uses VPATH.
As I found out.
A consistent place to look for default settings, machine settings are overrided by putting something in '/usr/local/etc' and user settings are overrided by the command line.I would very much like the location of the configuration files to be independent of $(prefix) as the locations my project searches are independent of where it was installed.This is a Bad Thing IMO. You should alter your program to look in multiple places for it's configuration. If you are certain that the configuration file should live here despite the wishes of the installer your program should by default it will check for '/etc/lx2005' and failing back to '$(prefix)/lx2005' - though this is still broken.How can I get 'make distcheck' to work with this configuration?You cannot.Alternatively, I'm open for other ideas of implementation.Why is it so important for configuration files to live at /etc?
[Prev in Thread] | Current Thread | [Next in Thread] |