yann@182: # Makefile.in for building crosstool-ng yann@182: # This file serves as source for the ./configure operation yann@182: yann@182: all: build yann@182: yann@182: ############################################################################### yann@182: # Configuration variables yann@182: yann@182: VERSION:= @@VERSION@@ yann@182: BINDIR := @@BINDIR@@ yann@182: LIBDIR := @@LIBDIR@@/ct-ng-$(VERSION) yann@182: DOCDIR := @@DOCDIR@@/ct-ng-$(VERSION) yann@182: MANDIR := @@MANDIR@@/man1 yann@182: DATE := @@DATE@@ yann@182: MAKE := $(shell which make || type -p make || echo /usr/bin/make) yann@182: yann@182: ############################################################################### yann@182: # Global make rules yann@182: yann@182: build: build-bin build-lib build-doc yann@182: yann@182: install: build install-bin install-lib install-doc yann@182: yann@182: clean: clean-bin clean-lib clean-doc yann@182: yann@182: distclean: clean yann@182: @rm -f Makefile yann@182: yann@182: uninstall: uninstall-bin uninstall-lib uninstall-doc yann@182: yann@182: ############################################################################### yann@182: # Specific make rules yann@182: yann@182: #-------------------------------------- yann@182: # Build rules yann@182: yann@182: build-bin: ct-ng yann@182: yann@182: build-lib: yann@182: yann@182: build-doc: docs/ct-ng.1 yann@182: yann@182: %: %.in yann@182: @sed -r -e 's,@@CT_MAKE@@,$(MAKE),g;' \ yann@182: -e 's,@@CT_BINDIR@@,$(BINDIR),g;' \ yann@182: -e 's,@@CT_LIBDIR@@,$(LIBDIR),g;' \ yann@182: -e 's,@@CT_DOCDIR@@,$(DOCDIR),g;' \ yann@182: -e 's,@@CT_MANDIR@@,$(MANDIR),g;' \ yann@182: -e 's,@@CT_VERSION@@,$(VERSION),g;' \ yann@182: -e 's,@@CT_DATE@@,$(DATE),g;' \ yann@182: $@.in >$@ yann@182: yann@182: #-------------------------------------- yann@182: # Clean rules yann@182: yann@182: clean-bin: yann@182: @rm -f ct-ng yann@182: yann@182: clean-lib: yann@182: yann@182: clean-doc: yann@182: @rm -f docs/ct-ng.1 yann@182: yann@182: #-------------------------------------- yann@182: # Install rules yann@182: yann@182: install-bin: $(BINDIR) yann@182: @install -m 755 ct-ng $(BINDIR)/ct-ng yann@182: yann@182: install-lib: $(LIBDIR) install-lib-main install-lib-samples yann@182: yann@182: install-lib-main: $(LIBDIR) yann@182: @for src_dir in config kconfig patches scripts tools; do \ yann@182: tar cf - --exclude=.svn $${src_dir} |(cd $(LIBDIR); tar xf -); \ yann@182: done yann@182: @for src_file in Makefile.steps version; do \ yann@182: install -m 644 $${src_file} $(LIBDIR)/$${src_file}; \ yann@182: done yann@182: yann@182: # Samples need a little love: yann@182: # - change every occurence of CT_TOP_DIR to CT_LIB_DIR yann@182: install-lib-samples: $(LIBDIR) install-lib-main yann@182: @tar cf - --exclude=.svn samples |(cd $(LIBDIR); tar xf -) yann@182: @for samp_file in $(LIBDIR)/samples/*/crosstool.config; do \ yann@182: sed -r -i -e 's,\$$\{CT_TOP_DIR\},\$$\{CT_LIB_DIR\},g;' $${samp_file}; \ yann@182: done yann@182: yann@182: install-doc: $(DOCDIR) $(MANDIR) yann@182: @for doc_file in LICENSES licenses.d COPYING CREDITS docs/overview.txt; do \ yann@182: install -m 644 docs/overview.txt $(DOCDIR); \ yann@182: done yann@182: @install -m 644 docs/ct-ng.1 $(MANDIR) yann@182: yann@182: $(BINDIR) $(LIBDIR) $(DOCDIR) $(MANDIR): yann@182: @install -m 755 -d $@ yann@182: yann@182: yann@182: #-------------------------------------- yann@182: # Uninstall rules yann@182: yann@182: uninstall-bin: yann@182: @rm -f $(BINDIR)/ct-ng yann@182: yann@182: uninstall-lib: yann@182: @rm -rf $(LIBDIR) yann@182: yann@182: uninstall-doc: yann@182: @rm -rf $(DOCDIR) yann@182: @rm -f $(MANDIR)/ct-ng.1