X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Makefile.am;h=3dcbe1fd4431fb6ce2f289dd9dbdc0e9261850f0;hb=72e9f7c254ff235ab25dc42952e7069099ad35da;hp=8893794f425cb290dd85f9710122fee86149628f;hpb=bc46a1288028b442cf7d7d82dbb445418fc5cb90;p=febootstrap.git diff --git a/Makefile.am b/Makefile.am index 8893794..3dcbe1f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,5 @@ # febootstrap Makefile.am -# (C) Copyright 2009 Red Hat Inc. +# (C) Copyright 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 @@ -17,80 +17,80 @@ # # Written by Richard W.M. Jones -SUBDIRS = examples +ACLOCAL_AMFLAGS = -I m4 -bin_SCRIPTS = \ - febootstrap \ - febootstrap-minimize \ - febootstrap-to-initramfs -DISTCLEANFILES = $(bin_SCRIPTS) +SUBDIRS = lib helper -febootstrap: febootstrap.sh - rm -f $@ - cp $< $@-t - chmod 0555 $@-t - mv $@-t $@ +# Note these must be in build dependency order. +SOURCES = \ + config.ml \ + febootstrap_utils.mli \ + febootstrap_utils.ml \ + febootstrap_cmdline.mli \ + febootstrap_cmdline.ml \ + febootstrap_package_handlers.mli \ + febootstrap_package_handlers.ml \ + febootstrap_yum_rpm.ml \ + febootstrap_debian.ml \ + febootstrap.ml -febootstrap-minimize: febootstrap-minimize.sh - rm -f $@ - cp $< $@-t - chmod 0555 $@-t - mv $@-t $@ +CLEANFILES = *~ *.cmi *.cmo *.cmx *.o febootstrap -febootstrap-to-initramfs: febootstrap-to-initramfs.sh - rm -f $@ - cp $< $@-t - chmod 0555 $@-t - mv $@-t $@ +EXTRA_DIST = \ + .gitignore \ + .gitmodules \ + autogen.sh \ + febootstrap.8 \ + febootstrap.pod \ + m4/gnulib-cache.m4 \ + $(SOURCES) man_MANS = \ - febootstrap.8 \ - febootstrap-minimize.8 \ - febootstrap-to-initramfs.8 + febootstrap.8 -if HAVE_PERLDOC +bin_SCRIPTS = febootstrap -febootstrap.8: febootstrap.pod - pod2man \ - --section 8 \ - -c "Virtualization Support" \ - --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \ - $< > $@ +SOURCES_ML = $(filter %.ml,$(SOURCES)) +BOBJECTS = $(SOURCES_ML:.ml=.cmo) +XOBJECTS = $(SOURCES_ML:.ml=.cmx) -febootstrap.txt: febootstrap.pod - pod2text $< > $@ +if !HAVE_OCAMLOPT +OBJECTS = $(BOBJECTS) +else +OBJECTS = $(XOBJECTS) +endif -febootstrap-minimize.8: febootstrap-minimize.pod - pod2man \ - --section 8 \ - -c "Virtualization Support" \ - --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \ - $< > $@ +OCAMLPACKAGES = -package unix,str +OCAMLFLAGS = -warn-error CDEFLMPSUVXYZ + +febootstrap: $(OBJECTS) + $(OCAMLFIND) $(OCAMLBEST) $(OCAMLFLAGS) $(OCAMLPACKAGES) -linkpkg \ + $^ -o $@ + +.mli.cmi: + $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@ +.ml.cmo: + $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@ +.ml.cmx: + $(OCAMLFIND) ocamlopt $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@ + +depend: .depend + +.depend: $(SOURCES) + rm -f $@ $@-t + $(OCAMLFIND) ocamldep $^ > $@-t + mv $@-t $@ -febootstrap-minimize.txt: febootstrap-minimize.pod - pod2text $< > $@ +include .depend -febootstrap-to-initramfs.8: febootstrap-to-initramfs.pod +SUFFIXES = .cmo .cmi .cmx .ml .mli .mll .mly + +if HAVE_PERLDOC + +febootstrap.8: febootstrap.pod pod2man \ --section 8 \ -c "Virtualization Support" \ --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \ $< > $@ - -febootstrap-to-initramfs.txt: febootstrap-to-initramfs.pod - pod2text $< > $@ - endif - -EXTRA_DIST = \ - febootstrap.spec febootstrap.spec.in \ - fakechroot-2.8-relchroot.patch \ - fakechroot-svn-no-dup-envs.patch \ - febootstrap.8 febootstrap.txt febootstrap.pod \ - febootstrap.sh \ - febootstrap-minimize.8 febootstrap-minimize.txt \ - febootstrap-minimize.pod \ - febootstrap-minimize.sh \ - febootstrap-to-initramfs.8 febootstrap-to-initramfs.txt \ - febootstrap-to-initramfs.pod \ - febootstrap-to-initramfs.sh