X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=fish%2FMakefile.am;h=d5c1dab994573097244293b263fae124bd6b85b0;hp=1439a5de5e7d39f0cd6aa09e5cde9ad478a0c751;hb=422a8d85d21fc29ee75d27917fd03a164048bfc9;hpb=349814e9d912c4f372b8fbdfb10b03749911021f diff --git a/fish/Makefile.am b/fish/Makefile.am index 1439a5d..d5c1dab 100644 --- a/fish/Makefile.am +++ b/fish/Makefile.am @@ -1,5 +1,5 @@ # libguestfs -# Copyright (C) 2009 Red Hat Inc. +# Copyright (C) 2009-2010 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 @@ -15,23 +15,115 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +include $(top_srcdir)/subdir-rules.mk + bin_PROGRAMS = guestfish -guestfish_SOURCES = \ - alloc.c \ +generator_built = \ cmds.c \ completion.c \ + guestfish-actions.pod \ + prepopts.h \ + prepopts.c + +BUILT_SOURCES = \ + $(generator_built) \ + rc_protocol.h \ + rc_protocol.c + +EXTRA_DIST = \ + $(BUILT_SOURCES) \ + rc_protocol.x \ + guestfish.pod \ + guestfish-bash-completion.sh + +guestfish_SOURCES = \ + $(generator_built) \ + alloc.c \ destpaths.c \ echo.c \ edit.c \ fish.c \ fish.h \ glob.c \ + inspect.c \ lcd.c \ + man.c \ more.c \ - time.c + prep.c \ + prep_disk.c \ + prep_part.c \ + prep_fs.c \ + prep_lv.c \ + progress.c \ + rc.c \ + reopen.c \ + rmsd.h \ + supported.c \ + tilde.c \ + time.c \ + virt.c + +# This convenience library is solely to avoid compiler warnings +# in its generated sources. +librc_protocol_la_SOURCES = rc_protocol.c +librc_protocol_la_CFLAGS = -Wall -Wno-unused guestfish_CFLAGS = \ - -I$(top_srcdir)/src -I$(top_builddir)/src -Wall \ - -DGUESTFS_DEFAULT_PATH='"$(libdir)/guestfs"' -guestfish_LDADD = $(top_builddir)/src/libguestfs.la $(LIBREADLINE) + -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 \ + $(LIBVIRT_CFLAGS) $(LIBXML2_CFLAGS) \ + $(WARN_CFLAGS) $(WERROR_CFLAGS) + +guestfish_LDADD = \ + $(LIBVIRT_LIBS) $(LIBXML2_LIBS) \ + $(top_builddir)/src/libguestfs.la $(LIBREADLINE) -lm + +# Make libguestfs use the convenience library. +noinst_LTLIBRARIES = librc_protocol.la +guestfish_LDADD += librc_protocol.la ../gnulib/lib/libgnu.la + +if HAVE_RPCGEN +rc_protocol.c: rc_protocol.x + rm -f $@-t $@-t2 + $(RPCGEN) -c -o $@-t $< + sed 's,\.\./\.\./fish/,,' < $@-t > $@-t2 + rm $@-t + mv $@-t2 $@ + +rc_protocol.h: rc_protocol.x + rm -f $@-t + $(RPCGEN) -h -o $@-t $< + mv $@-t $@ +endif + +# Build a partly-static library (for the binary distribution). + +guestfish.static$(EXEEXT): $(guestfish_OBJECTS) $(guestfish_DEPENDENCIES) + $(top_srcdir)/relink-static.sh \ + $(guestfish_LINK) $(guestfish_OBJECTS) -static $(guestfish_LDADD) $(guestfish_LIBS) -ltinfo -lpcre -lhivex -lmagic -lz -lm + +# Manual page. +# guestfish-actions.pod is autogenerated. There is no include +# mechanism for POD, so we have to do it by hand. + +man_MANS = guestfish.1 + +guestfish.1: guestfish.pod guestfish-actions.pod + sed \ + -e '/@ACTIONS@/rguestfish-actions.pod' -e 's/@ACTIONS@//' \ + < $< | \ + $(POD2MAN) \ + --section 1 \ + -c "Virtualization Support" \ + --name "guestfish" \ + --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \ + > $@ + +# Bash completion script. + +bashcompletiondir = $(sysconfdir)/bash_completion.d +bashcompletion_DATA = guestfish-bash-completion.sh