X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=inspector%2Frun-inspector-locally;h=5a9c9987775758fa04edb7d4b23d6c61673cdd22;hp=3f2d60048d10b58e3240acc3820a6ed871e29cdd;hb=7d746ba6915e3c0d8fbe41053da64f4e9fa11cd4;hpb=a1e8cdf2a254c5eddaf525cd7c34e4c937690204 diff --git a/inspector/run-inspector-locally b/inspector/run-inspector-locally index 3f2d600..5a9c998 100755 --- a/inspector/run-inspector-locally +++ b/inspector/run-inspector-locally @@ -1,4 +1,4 @@ -#!/bin/sh - +#!/usr/bin/perl # libguestfs inspector # Copyright (C) 2009 Red Hat Inc. # @@ -16,14 +16,37 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# This script sets up the environment so you can run -# virt-inspector from the top-level source directory -# without needing to do 'make install' first. +# This script sets up the environment so you can run virt-inspector in place +# without needing to do 'make install' first. You can also run virt-inspector +# by creating a symlink to this script and putting it in your path. # # Use it like this: -# ./inspector/run-inspector-locally [usual virt-inspector args ...] +# ./run-inspector-locally [usual virt-inspector args ...] -export LD_LIBRARY_PATH=$(pwd)/src/.libs -export LIBGUESTFS_PATH=$(pwd)/appliance -export PERL5LIB=$(pwd)/perl/blib/lib:$(pwd)/perl/blib/arch -perl ./inspector/virt-inspector.pl "$@" +use strict; +use warnings; + +use File::Basename qw(dirname); +use File::Spec; +use Cwd qw(abs_path); + +my $path = $0; + +# Follow symlinks until we get to the real file +while(-l $path) { + my $link = readlink($path) or die "readlink: $path: $!"; + if(File::Spec->file_name_is_absolute($link)) { + $path = $link; + } else { + $path = File::Spec->catfile(dirname($path), $link); + } +} + +# Get the absolute path of the parent directory +$path = abs_path(dirname($path).'/..'); + +$ENV{LD_LIBRARY_PATH} = $path.'/src/.libs'; +$ENV{LIBGUESTFS_PATH} = $path.'/appliance'; +$ENV{PERL5LIB} = $path.'/perl/blib/lib:'.$path.'/perl/blib/arch'; + +exec('perl', $path.'/inspector/virt-inspector', @ARGV);