#
# 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.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
include $(top_srcdir)/subdir-rules.mk
cmds.c \
cmds_gperf.gperf \
completion.c \
+ event-names.c \
+ fish-cmds.h \
guestfish-actions.pod \
guestfish-commands.pod \
prepopts.h \
EXTRA_DIST = \
$(BUILT_SOURCES) \
+ $(TESTS) \
rc_protocol.x \
guestfish.pod \
guestfish-bash-completion.sh \
virt-tar-in.pod \
virt-tar-out.pod
-# These source files (all related to option parsing) are shared
-# between guestfish and guestmount. Keep a convenient list here just
-# so we know which ones are shared. These files must not include
-# other guestfish files.
+# These source files (mostly related to option parsing) are shared
+# between guestfish, guestmount and some other virt tools. Keep a
+# convenient list here just so we know which ones are shared. These
+# files must not include other guestfish files.
SHARED_SOURCE_FILES = \
config.c \
inspect.c \
keys.c \
options.h \
options.c \
+ progress.h \
+ progress.c \
virt.c
guestfish_SOURCES = \
cmds_gperf.h \
copy.c \
destpaths.c \
+ display.c \
echo.c \
edit.c \
+ events.c \
fish.c \
fish.h \
glob.c \
prep_fs.c \
prep_lv.c \
prep_boot.c \
- progress.c \
rc.c \
reopen.c \
- rmsd.h \
+ setenv.c \
supported.c \
tilde.c \
time.c
mv $@-t $@
guestfish_CFLAGS = \
+ -DGUESTFS_WARN_DEPRECATED=1 \
-I$(top_srcdir)/src -I$(top_builddir)/src \
-I$(top_srcdir)/fish -I$(top_builddir)/fish \
- -DGUESTFS_DEFAULT_PATH='"$(libdir)/guestfs"' \
-DLOCALEBASEDIR=\""$(datadir)/locale"\" \
-I$(srcdir)/../gnulib/lib -I../gnulib/lib \
$(WARN_CFLAGS) $(WERROR_CFLAGS) \
rc_protocol.c: rc_protocol.x
rm -f $@-t $@-t2
$(RPCGEN) -c -o $@-t $<
- sed 's,\.\./\.\./fish/,,' < $@-t > $@-t2
+ sed 's,\.\./\(\.\./\)*fish,.,' < $@-t > $@-t2
rm $@-t
mv $@-t2 $@
guestfish.1 $(top_builddir)/html/guestfish.1.html: stamp-guestfish.pod
stamp-guestfish.pod: guestfish.pod guestfish-actions.pod guestfish-commands.pod
- $(top_srcdir)/podwrapper.sh \
+ $(top_builddir)/podwrapper.sh \
--man guestfish.1 \
--html $(top_builddir)/html/guestfish.1.html \
- --insert guestfish-actions.pod:@ACTIONS@ \
- --insert guestfish-commands.pod:@FISH_COMMANDS@ \
+ --insert $(srcdir)/guestfish-actions.pod:@ACTIONS@ \
+ --insert $(srcdir)/guestfish-commands.pod:@FISH_COMMANDS@ \
$<
touch $@
virt-copy-in.1 $(top_builddir)/html/virt-copy-in.1.html: stamp-virt-copy-in.pod
stamp-virt-copy-in.pod: virt-copy-in.pod
- $(top_srcdir)/podwrapper.sh \
+ $(top_builddir)/podwrapper.sh \
--man virt-copy-in.1 \
--html $(top_builddir)/html/virt-copy-in.1.html \
$<
virt-copy-out.1 $(top_builddir)/html/virt-copy-out.1.html: stamp-virt-copy-out.pod
stamp-virt-copy-out.pod: virt-copy-out.pod
- $(top_srcdir)/podwrapper.sh \
+ $(top_builddir)/podwrapper.sh \
--man virt-copy-out.1 \
--html $(top_builddir)/html/virt-copy-out.1.html \
$<
virt-tar-in.1 $(top_builddir)/html/virt-tar-in.1.html: stamp-virt-tar-in.pod
stamp-virt-tar-in.pod: virt-tar-in.pod
- $(top_srcdir)/podwrapper.sh \
+ $(top_builddir)/podwrapper.sh \
--man virt-tar-in.1 \
--html $(top_builddir)/html/virt-tar-in.1.html \
$<
virt-tar-out.1 $(top_builddir)/html/virt-tar-out.1.html: stamp-virt-tar-out.pod
stamp-virt-tar-out.pod: virt-tar-out.pod
- $(top_srcdir)/podwrapper.sh \
+ $(top_builddir)/podwrapper.sh \
--man virt-tar-out.1 \
--html $(top_builddir)/html/virt-tar-out.1.html \
$<
bashcompletiondir = $(sysconfdir)/bash_completion.d
bashcompletion_DATA = guestfish-bash-completion.sh
+
+# Tests.
+
+random_val := $(shell awk 'BEGIN{srand(); print 1+int(255*rand())}' < /dev/null)
+
+TESTS_ENVIRONMENT = \
+ MALLOC_PERTURB_=$(random_val) \
+ LD_LIBRARY_PATH=$(top_builddir)/src/.libs \
+ LIBGUESTFS_PATH=$(top_builddir)/appliance \
+ TMPDIR=$(top_builddir)
+
+TESTS = \
+ test-add-domain.sh \
+ test-copy.sh \
+ test-find0.sh \
+ test-guestfish-a.sh \
+ test-guestfish-d.sh \
+ test-guestfish-escapes.sh \
+ test-guestfish-events.sh \
+ test-guestfish-tilde.sh \
+ test-read_file.sh \
+ test-remote.sh \
+ test-reopen.sh \
+ test-stringlist.sh \
+ test-upload-to-dir.sh