X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=fish%2FMakefile.am;h=2d8c16b83a9d6f2d5e66e4247e76e3d3071c4169;hp=e3221ca526261a8a095643df49e98783e5e73a5f;hb=d8346d5d6428c7293d1ddf58e4f9ec4b7de25380;hpb=c66d6f215e8303d4eaf8ccfdb6a58cff04ccc485 diff --git a/fish/Makefile.am b/fish/Makefile.am index e3221ca..2d8c16b 100644 --- a/fish/Makefile.am +++ b/fish/Makefile.am @@ -21,6 +21,7 @@ bin_PROGRAMS = guestfish generator_built = \ cmds.c \ + cmds_gperf.gperf \ completion.c \ guestfish-actions.pod \ guestfish-commands.pod \ @@ -29,6 +30,7 @@ generator_built = \ BUILT_SOURCES = \ $(generator_built) \ + cmds_gperf.c \ rc_protocol.h \ rc_protocol.c @@ -44,6 +46,7 @@ EXTRA_DIST = \ # other guestfish files. SHARED_SOURCE_FILES = \ inspect.c \ + keys.c \ options.h \ options.c \ virt.c @@ -52,6 +55,7 @@ guestfish_SOURCES = \ $(generator_built) \ $(SHARED_SOURCE_FILES) \ alloc.c \ + cmds_gperf.h \ copy.c \ destpaths.c \ echo.c \ @@ -59,6 +63,7 @@ guestfish_SOURCES = \ fish.c \ fish.h \ glob.c \ + help.c \ hexedit.c \ lcd.c \ man.c \ @@ -82,22 +87,30 @@ guestfish_SOURCES = \ librc_protocol_la_SOURCES = rc_protocol.c librc_protocol_la_CFLAGS = -Wall -Wno-unused +# Build the command lookup perfect hash code. The generated code has +# lots of warnings so we must compile it in a separate mini-library. +libcmds_la_SOURCES = cmds_gperf.c +libcmds_la_CFLAGS = + +cmds_gperf.c: cmds_gperf.gperf + rm -f $@ + $(GPERF) -t $< > $@-t + mv $@-t $@ + guestfish_CFLAGS = \ -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 +# Make guestfish use the convenience libraries. +noinst_LTLIBRARIES = libcmds.la librc_protocol.la +guestfish_LDADD += libcmds.la librc_protocol.la ../gnulib/lib/libgnu.la if HAVE_RPCGEN rc_protocol.c: rc_protocol.x @@ -117,7 +130,7 @@ endif 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 + $(guestfish_LINK) $(guestfish_OBJECTS) -static $(guestfish_LDADD) $(guestfish_LIBS) $(LIBVIRT_LIBS) $(LIBXML2_LIBS) -ltinfo -lpcre -lhivex -lmagic -lz -lm # Manual page. # guestfish-actions.pod and guestfish-commands.pod are autogenerated.