X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=cat%2Frun-filesystems-locally;fp=cat%2Frun-filesystems-locally;h=316cc6ddc44d32680b4e6c0f42dcf44f46ac5d0b;hb=fbc2555903be8c88ad9430d871cf0d27c8fded1e;hp=0000000000000000000000000000000000000000;hpb=f6d3d5677194ae7aaea70d43845341d91907b5ee;p=libguestfs.git diff --git a/cat/run-filesystems-locally b/cat/run-filesystems-locally new file mode 100755 index 0000000..316cc6d --- /dev/null +++ b/cat/run-filesystems-locally @@ -0,0 +1,52 @@ +#!/usr/bin/perl +# Copyright (C) 2009 Red Hat Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# 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-* tools in +# place without needing to do 'make install' first. You can also run +# the tools by creating a symlink to this script and putting it in +# your path. +# +# Use it like this: +# ./run-filesystems-locally [usual virt-filesystems args ...] + +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'; + +#print (join " ", ("$path/cat/virt-filesystems", @ARGV), "\n"); +exec("$path/cat/virt-filesystems", @ARGV);