From 18e4fea8fcd804d0f164d06aec9f96bb9435a338 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 28 Aug 2007 12:47:59 +0000 Subject: [PATCH] Make some header-installing machinery, and use it to install gmp.h --- gmp/Makefile | 11 +++++++++-- mk/config.mk.in | 3 +++ mk/install.mk | 8 ++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/gmp/Makefile b/gmp/Makefile index f09c523..82de987 100644 --- a/gmp/Makefile +++ b/gmp/Makefile @@ -40,8 +40,9 @@ BUILD_SHARED=no endif boot :: stamp.gmp.static -all :: libgmp.a -install :: libgmp.a +all :: gmp.h libgmp.a +install :: gmp.h libgmp.a +INSTALL_HEADERS += gmp.h INSTALL_LIBS += libgmp.a ifeq "$(BUILD_SHARED)" "yes" @@ -76,6 +77,9 @@ stamp.gmp.shared: --enable-shared=yes --disable-static --host=$(PLATFORM) --build=$(PLATFORM) touch $@ +gmp.h: stamp.gmp.static + $(CP) gmpbuild/gmp.h . + libgmp.a: stamp.gmp.static $(MAKE) -C gmpbuild MAKEFLAGS= $(CP) gmpbuild/.libs/libgmp.a . @@ -114,6 +118,9 @@ endif ifneq "$(INSTALL_LIBS)" "" $(INSTALL_DATA) $(INSTALL_LIBS) $(BIN_DIST_DIR)/gmp/ endif +ifneq "$(INSTALL_HEADERS)" "" + $(INSTALL_HEADER) $(INSTALL_HEADERS) $(BIN_DIST_DIR)/gmp/ +endif endif endif diff --git a/mk/config.mk.in b/mk/config.mk.in index 741abd3..5b89981 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -546,6 +546,8 @@ datadir = $(datadir0)/ghc-$(ProjectVersion) endif # Windows +headerdir = $(libdir)/include + # Default place for putting interface files is $(libdir) # (overriden for packages in package.mk) ifacedir = $(libdir) @@ -608,6 +610,7 @@ INSTALL_PROGRAM = $(INSTALL) -m 755 INSTALL_SCRIPT = $(INSTALL) -m 755 INSTALL_SHLIB = $(INSTALL) -m 755 INSTALL_DATA = $(INSTALL) -m 644 +INSTALL_HEADER = $(INSTALL) -m 644 INSTALL_MAN = $(INSTALL) -m 644 INSTALL_DIR = $(MKDIRHIER) diff --git a/mk/install.mk b/mk/install.mk index 61de7a5..75d0569 100644 --- a/mk/install.mk +++ b/mk/install.mk @@ -243,6 +243,14 @@ install:: $(INSTALL_DATAS) done endif +ifneq "$(strip $(INSTALL_HEADERS))" "" +install:: $(INSTALL_HEADERS) + @$(INSTALL_DIR) $(headerdir) + for i in $(INSTALL_HEADERS); do \ + $(INSTALL_HEADER) $(INSTALL_OPTS) $$i $(headerdir); \ + done +endif + ifneq "$(strip $(INSTALL_IFACES))" "" install:: $(INSTALL_IFACES) @$(INSTALL_DIR) $(ifacedir) -- 1.7.10.4