diff options
-rw-r--r-- | libraries/integer-gmp/configure.ac | 5 | ||||
-rw-r--r-- | libraries/integer-gmp/gmp/ghc.mk | 39 |
2 files changed, 24 insertions, 20 deletions
diff --git a/libraries/integer-gmp/configure.ac b/libraries/integer-gmp/configure.ac index e16352b8cf..c1eabddd16 100644 --- a/libraries/integer-gmp/configure.ac +++ b/libraries/integer-gmp/configure.ac @@ -75,9 +75,4 @@ dnl-------------------------------------------------------------------- dnl * Generate the header cbits/GmpDerivedConstants.h dnl-------------------------------------------------------------------- -AC_MSG_NOTICE([generating GmpDerivedConstants.h]) -${CC} $CFLAGS cbits/mkGmpDerivedConstants.c -o cbits/mkGmpDerivedConstants || exit 1 -{ cbits/mkGmpDerivedConstants > cbits/GmpDerivedConstants.h; } || exit 1 -rm cbits/mkGmpDerivedConstants - AC_OUTPUT diff --git a/libraries/integer-gmp/gmp/ghc.mk b/libraries/integer-gmp/gmp/ghc.mk index a1852c81c7..a798e46d70 100644 --- a/libraries/integer-gmp/gmp/ghc.mk +++ b/libraries/integer-gmp/gmp/ghc.mk @@ -14,6 +14,12 @@ ifneq "$(phase)" "0" include libraries/integer-gmp/gmp/config.mk +libraries/integer-gmp/cbits/mkGmpDerivedConstants$(exeext): libraries/integer-gmp/cbits/mkGmpDerivedConstants.c + "$(CC)" $(SRC_CC_OPTS) $(libraries/integer-gmp_CC_OPTS) $< -o $@ + +libraries/integer-gmp/cbits/GmpDerivedConstants.h: libraries/integer-gmp/cbits/mkGmpDerivedConstants$(exeext) + $< > $@ + # Compile GMP only if we don't have it already # # We use GMP's own configuration stuff, because it's all rather hairy @@ -39,23 +45,22 @@ endif ifneq "$(HaveLibGmp)" "YES" ifneq "$(HaveFrameworkGMP)" "YES" -GMP_LIB = libraries/integer-gmp/gmp/libgmp.a -OTHER_LIBS += $(GMP_LIB) - -SRC_CC_OPTS += -I$(TOP)/libraries/integer-gmp/gmp -SRC_LD_OPTS += -L$(TOP)/libraries/integer-gmp/gmp -libraries/integer-gmp_dist-install_CONFIGURE_OPTS += --extra-lib-dirs=$(TOP)/libraries/integer-gmp/gmp - -libraries/integer-gmp/dist-install/package-data.mk: libraries/integer-gmp/gmp/gmp.h +libraries/integer-gmp/cbits/mkGmpDerivedConstants$(exeext): libraries/integer-gmp/gmp/gmp.h +$(libraries/integer-gmp_dist-install_v_CMM_OBJS): libraries/integer-gmp/cbits/GmpDerivedConstants.h +$(libraries/integer-gmp_dist-install_v_C_OBJS): libraries/integer-gmp/cbits/GmpDerivedConstants.h -INSTALL_LIBS += libraries/integer-gmp/gmp/libgmp.a -INSTALL_HEADERS += libraries/integer-gmp/gmp/gmp.h +libraries/integer-gmp_CC_OPTS += -I$(TOP)/libraries/integer-gmp/gmp -$(eval $(call all-target,gmp_dynamic,libraries/integer-gmp/gmp/libgmp.a)) +libraries/integer-gmp_dist-install_EXTRA_OBJS += libraries/integer-gmp/gmp/objs/*.o -ifeq "$(BUILD_SHARED)" "yes" -$(eval $(call all-target,gmp_dynamic,libraries/integer-gmp/gmp/libgmp.dll.a libraries/integer-gmp/gmp/libgmp-3.dll)) -endif +#INSTALL_LIBS += libraries/integer-gmp/gmp/libgmp.a +#INSTALL_HEADERS += libraries/integer-gmp/gmp/gmp.h +# +#$(eval $(call all-target,gmp_dynamic,libraries/integer-gmp/gmp/libgmp.a)) +# +#ifeq "$(BUILD_SHARED)" "yes" +#$(eval $(call all-target,gmp_dynamic,libraries/integer-gmp/gmp/libgmp.dll.a libraries/integer-gmp/gmp/libgmp-3.dll)) +#endif endif endif @@ -91,7 +96,7 @@ GMP_TARBALL := $(wildcard libraries/integer-gmp/gmp/tarball/gmp*.tar.bz2) GMP_DIR := $(patsubst libraries/integer-gmp/gmp/tarball/%-nodoc.tar.bz2,%,$(GMP_TARBALL)) libraries/integer-gmp/gmp/libgmp.a libraries/integer-gmp/gmp/gmp.h: - $(RM) -rf $(GMP_DIR) libraries/integer-gmp/gmp/gmpbuild + $(RM) -rf $(GMP_DIR) libraries/integer-gmp/gmp/gmpbuild libraries/integer-gmp/gmp/objs cd libraries/integer-gmp/gmp && $(TAR) -jxf ../../../$(GMP_TARBALL) mv libraries/integer-gmp/gmp/$(GMP_DIR) libraries/integer-gmp/gmp/gmpbuild chmod +x libraries/integer-gmp/gmp/ln @@ -104,6 +109,10 @@ libraries/integer-gmp/gmp/libgmp.a libraries/integer-gmp/gmp/gmp.h: $(MAKE) -C libraries/integer-gmp/gmp/gmpbuild MAKEFLAGS= $(CP) libraries/integer-gmp/gmp/gmpbuild/gmp.h libraries/integer-gmp/gmp/ $(CP) libraries/integer-gmp/gmp/gmpbuild/.libs/libgmp.a libraries/integer-gmp/gmp/ + $(MKDIRHIER) libraries/integer-gmp/gmp/objs +# XXX This should be $(AR), except that has the creation options baked in, +# so we use ar for now instead + cd libraries/integer-gmp/gmp/objs && ar x ../libgmp.a $(RANLIB) libraries/integer-gmp/gmp/libgmp.a ifneq "$(NO_CLEAN_GMP)" "YES" |