From 2784fd67c99e058fc9afe3b0afc05536a2f4be84 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Tue, 19 Jun 2012 11:24:01 +0100 Subject: [PATCH] Bug 8271 teach SIPServer.pm to set its own lib path SIPServer.pm requires that C4/SIP is added to its lib path This has been done by passing this directory to it via -I. By using FindBin it can set the path for itself correctly. This will also work if the C4/SIP directory tree is moved to a non-standard location Removed the now redundant -I. from sip_run.sh Added a variable to sip_run.sh for the koha tree to highlight a problem with the script if you have multiple directories in the PERL5LIB environment variable Signed-off-by: Chris Cormack --- C4/SIP/SIPServer.pm | 2 ++ misc/bin/sip_run.sh | 9 ++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/C4/SIP/SIPServer.pm b/C4/SIP/SIPServer.pm index 1d174e1..8b6bed3 100644 --- a/C4/SIP/SIPServer.pm +++ b/C4/SIP/SIPServer.pm @@ -2,6 +2,8 @@ package SIPServer; use strict; use warnings; +use FindBin qw($Bin); +use lib "$Bin"; # use Exporter; use Sys::Syslog qw(syslog); use Net::Server::PreFork; diff --git a/misc/bin/sip_run.sh b/misc/bin/sip_run.sh index b1bc8d9..c578194 100755 --- a/misc/bin/sip_run.sh +++ b/misc/bin/sip_run.sh @@ -24,7 +24,10 @@ for x in HOME PERL5LIB KOHA_CONF ; do fi; done; unset x; -cd $PERL5LIB/C4/SIP; +# you should hard code this if you have multiple directories +# in your PERL5LIB +PERL_MODULE_DIR=$PERL5LIB +cd $PERL_MODULE_DIR/C4/SIP; echo; sipconfig=${1}; @@ -34,8 +37,8 @@ errfile=${3:-$HOME/sip.err}; if [ $sipconfig ]; then echo "Running with config file located in $sipconfig" ; echo "Calling (backgrounded):"; - echo "perl -I./ ./SIPServer.pm $sipconfig >>$outfile 2>>$errfile"; - perl -I./ ./SIPServer.pm $sipconfig >>$outfile 2>>$errfile & + echo "perl ./SIPServer.pm $sipconfig >>$outfile 2>>$errfile"; + perl ./SIPServer.pm $sipconfig >>$outfile 2>>$errfile & else echo "Please specify a config file and try again." -- 1.7.10