whizard is hosted by Hepforge, IPPP Durham

Opened 13 years ago

Closed 13 years ago

#392 closed defect (fixed)

DESTDIR=xxx make install fails

Reported by: Christian Speckner Owned by: Juergen Reuter
Priority: P1 Milestone: v2.0.5
Component: core Version: 2.0.4
Severity: minor Keywords:
Cc:

Description

Autotoolized build systems allow for a staged install into an arbitrary directory DESTDIR the above syntax, which is a very handy feature for deploying the installation - the staging tree can be tarred and then untarred on the target systems (I also, mistakenly, referred to this in my comment to #181 - DESTDIR= and prefix= are different things). I didn't notice as I always had write permission to the prefix before, but this is actually broken in WHIZARD: make tries to install the O'Mega caches into the real prefix, not into the staging directory. sed-hacking around this in the Makefiles allows the staged install to complete, so this is the only issue here.

Change History (7)

comment:1 Changed 13 years ago by Christian Speckner

Bump - seems no mail was trigger on creation, let's see if this does the trick.

comment:2 Changed 13 years ago by Boschmann

This might look like a minor problem, but it is important. You need this feature to make a rpm or deb package and we are setting up the jenkins CC-server for comparing "known" branching rations with results from different whizard setups. Thus I would like to use DESTDIR= in the way Carsten described above to deploy different whizard installations to different nodes of the batch system.

comment:3 Changed 13 years ago by Juergen Reuter

JRR confirmed this. Investigating...

comment:4 Changed 13 years ago by Juergen Reuter

Next thing I noticed is that when you do DESTDIR=/foo make install then the installation goes to

   /foo/${prefix}

i.e. for the default

   /foo/usr/local

Just a dumb question: is this intended? I mean should I not expect the bin directory to be in /foo/bin, instead of /foo/${prefix}/bin ?

comment:5 Changed 13 years ago by Boschmann

Yes, that's intended.

comment:6 Changed 13 years ago by Juergen Reuter

Owner: changed from kilian to Juergen Reuter
Priority: P3P1
Status: newassigned

I think I found the very issue of the problem, have to run make/make check/make distcheck in different varying configurations to check.

comment:7 Changed 13 years ago by Juergen Reuter

Resolution: fixed
Status: assignedclosed

Solved (partially) in r3062. configure, DESTDIR=foo make, DESTDIR=foo make check, DESTDIR=foo make install now works as intended, DESTDIR=foo make installcheck fails because the libraries are hard-coded and cannot be found, of course. For the same reason, configure --prefix=foo, DESTDIR=foo make, DESTDIR=foo make install, DESTDIR=foo make installcheck fails in the last step. If there is need to improve on that we can reopen the ticket.

Note: See TracTickets for help on using tickets.