From b9442b9a8fa77870a32d4552780ec3d3fe04b79d Mon Sep 17 00:00:00 2001 From: Elfyn McBratney Date: Fri, 12 Jan 2007 11:46:22 +0000 Subject: [PATCH] Add install targets. --- Makefile | 9 +++++++++ Makefile.top | 6 ++++++ src/Makefile | 17 +++++++++++++++++ 3 files changed, 32 insertions(+) diff --git a/Makefile b/Makefile index a43cbe7..1e7b52e 100644 --- a/Makefile +++ b/Makefile @@ -22,6 +22,15 @@ deps-recursive: $(SUBDIRS) $(SUBMAKE) -C $$dir deps || exit 1; \ done +.PHONY: install install-recursive +install: install-recursive + +install-recursive: $(SUBDIRS) + @list='$^'; for dir in $$list; do \ + echo "... Installing from $$dir"; \ + $(SUBMAKE) -C $$dir install || exit 1; \ + done + .PHONY: clean clean-recursive clean: clean-recursive diff --git a/Makefile.top b/Makefile.top index 697a15f..76c0820 100644 --- a/Makefile.top +++ b/Makefile.top @@ -10,11 +10,17 @@ topdir ?= . AR = ar CC = gcc +INSTALL = install MKDEPS = $(topdir)/mkdeps RANLIB = ranlib +INSTALL_BIN = $(INSTALL) -m 755 +INSTALL_DIR = $(INSTALL) -d +INSTALL_DATA = $(INSTALL) -m 644 + prefix ?= ${HOME}/sw bindir ?= ${prefix}/bin +libdir ?= ${prefix}/lib DESTDIR ?= diff --git a/src/Makefile b/src/Makefile index 60ea584..3d5a2be 100644 --- a/src/Makefile +++ b/src/Makefile @@ -27,6 +27,23 @@ liberuntime.a: $(liberuntime_a_OBJECTS) liberuntime.so: $(liberuntime_so_OBJECTS) $(call wrap_LD,$@,$^,-shared) +.PHONY: install install-libs install-headers +install: install-libs install-headers + +install-libs: $(all_LIBS) + @$(INSTALL_DIR) $(DESTDIR)$(libdir) || exit 1; \ + list='$(all_LIBS)'; for lib in $$list; do \ + echo "Installing $$lib into $(DESTDIR)$(libdir)..."; \ + $(INSTALL_BIN) $$lib $(DESTDIR)$(libdir) || exit 1; \ + done + +install-headers: install-libs + @$(INSTALL_DIR) $(DESTDIR)$(includedir) || exit 1; \ + list='$(wildcard *.h)'; for hdr in $$list; do \ + echo "Installing $$hdr into $(DESTDIR)$(includedir)..."; \ + $(INSTALL_DATA) $$hdr $(DESTDIR)$(includedir) || exit 1; \ + done + .PHONY: clean clean: -rm -f $(all_LIBS) $(liberuntime_a_OBJECTS) $(liberuntime_so_OBJECTS) -- 2.11.4.GIT