Cezary Morga wrote:
Matthew Seaman pisze:
You are failing to distinguish between $PREFIX set as an environment variable
and $PREFIX the make variable.

You're right :)

  PREFIX the make variable already controls what
the p5-RT-Extension ports do as variables like SITE_PERL are defined in
terms of it already.

So, if I would cd into www/p5-RT-Extension-SLA and type:

env PREFIX=/home/therek make install

would it install p5-RT-Extension-SLA and all of it's dependencies (including rt38) in /home/therek?


Well, you'll need to define LOCALBASE too, or all the dependency checks
the port does will fail.  Given that, and once the latest patches have gone
in, it should work like that, yes.
  # cd /usr/ports/www/p5-RT-Extension-SLA
  # env PREFIX=/home/therek LOCALBASE=/home/therek make install

I believe that setting make variables like this should also work:

  # cd /usr/ports/www/p5-RT-Extension-SLA
  # make PREFIX=/home/therek LOCALBASE=/home/therek install

Actually, that is an interesting question so ... [time passes] ...
You need to (a) apply the patch from ports/136656 below and (b) add
/home/therek/bin to $PATH. Given that I can confirm that both the command variants above work just fine.

diff -Nur /usr/ports/www/p5-RT-Extension-SLA/Makefile 
p5-RT-Extension-SLA/Makefile
--- /usr/ports/www/p5-RT-Extension-SLA/Makefile 2009-06-24 17:53:47.000000000 
+0100
+++ p5-RT-Extension-SLA/Makefile        2009-07-10 15:01:27.000000000 +0100
@@ -65,7 +65,7 @@
# rather undesirably.
do-configure:
      @cd ${CONFIGURE_WRKSRC} && \
-           ${SETENV} ${CONFIGURE_ENV} ${PERL5} -I${RT_PM_DIR} ./${CONFIGURE_SCRIPT} 
&& \
+           ${SETENV} -u PREFIX ${CONFIGURE_ENV} ${PERL5} -I${RT_PM_DIR} 
./${CONFIGURE_SCRIPT} && \
          ${PERL5} -pi -e 's/ doc_(perl|site|\$$\(INSTALLDIRS\))_install$$//' 
Makefile

post-install:

In both cases the commands were run in a pretty much virgin RELENG_7 jail with
no other ports installed, and with /home/therek/bin added to $PATH in the
environment.

On the question of LOCALBASE -- I haven't tested this, but I believe it should
be possible to install almost all of the dependencies (perl, apache, non-RT
specific perl modules) using one value of PREFIX/LOCALBASE and then switch to a 
different value for the www/rt3[68] port and any www/p5-RT* ports -- however you
would have to install www/rt38 and any of the www/p5-RT* ports with the same
prefix.  About the only reason I can see for doing that is to have a personal
RT setup on a shared multiuser system, which feels like a very 20th-Century
solution to me.  Nowadays I reckon you'ld be more likely to just have a jail
or some sort of virtual machine to each person for that sort of usage.

        Cheers,

        Matthew

--
Dr Matthew J Seaman MA, D.Phil.                   7 Priory Courtyard
                                                Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey     Ramsgate
                                                Kent, CT11 9PW


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to