[Openvas-distro] openvas-libraries: DESTDIR missing
Javier Fernández-Sanguino Peña
jfs at computer.org
Wed Apr 16 16:09:50 CEST 2008
On Wed, Apr 16, 2008 at 06:53:11AM -0700, Tim Brown wrote:
> On Wed, 16 Apr 2008, Javier Fernández-Sanguino Peña wrote:
>> On Wed, Apr 16, 2008 at 06:51:04AM +0100, Tim Brown wrote:
>>> On Tuesday 15 April 2008 14:09:39 Jan-Oliver Wagner wrote:
>>>> I was just working on a RPM package for openvas-libraries and
>>>> stumbled across missing DESTDIR use in some Makefiles of
>>>> this module.
>>>> Guess this will hurt the Debian packages as well. Tim?
>>>> We use DESTDIR consistently only for openvas-client so far.
>>>> Should we patch all other modules to use it as well?
>>> The Debian packaging scripts reset prefix during the make install like so:
>>> $(MAKE) install prefix=$(tmp)/usr
>> This is not correct. The 'prefix' definition gets hardcoded in the built
> From nessus-libraries-2.2.10/debian/rules:
> install: build-stamp
> dh_clean -k
> $(MAKE) install prefix=$(tmp)/usr
> The prefix value at build time will be embedded, it's overridden during
That doesn't work. Try it, it will not install the files properly, it broke
in my system.
> I don't disagree, but the nessus build files are pretty awful and the
> Debian packages spend a lot of time working around this. It's not a
I don't agree with your point of view.
> simple example of an autoconf based project IMO. The server component is
> even better with direct calls to the BSD install script in the rules
> file. IIRC it doesn't even attempt to use the make based install routine.
? You don't seem to understand the install target of the nessus-core package.
The calls to the install script are perfectly legitimate in a debian/rules
script and are there to install files that the nessus' Makefile does not
The only calls to 'install' there are these:
65 install -m 640 debian/nessusd.conf $(nesd)/etc/nessus/
66 rm -f $(nesd)/var/lib/nessus/nessus-services
67 ( cd $(nesd)/var/lib/nessus/ && \
68 ln -s /etc/nessus/nessus-services )
69 install -m 640 nessus-services $(nesd)/etc/nessus/
70 install -m 644 debian/nessus.xpm $(nes)/usr/share/pixmaps
71 install -m 644 debian/nessus.desktop $(nes)/usr/share/applications
Line 65 is there to install the nessusd configuration file that Nessus does
not install (nor provide). Actually, the Nessus server generates one when it
runs, which makes it difficult for the admin to track changes. The package
provides one, and installs it as default.
lines 66 to 69 are there to install the nessus-service file in /etc, since
Nessus insists on putting it under /var/lib. In order to not patch the Nessus
sources (which is not that maintainable) or its makefiles, the installed file
is removed, symlinked to /etc and the file is installed in /etc
Lines 70 to 71 are there to install Debian-specific files in the proper
directories to register the GUI.
Once again, calls to 'install' for Debian-specific changes in the rules file
are perfectly legitimate.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
Url : http://lists.wald.intevation.org/pipermail/openvas-distro/attachments/20080416/929d6ceb/attachment-0001.pgp
More information about the Openvas-distro