Make a mingw tree from mingw tarballs
[ghc-hetmet.git] / libffi / ghc.mk
index 3f101df..a1c2748 100644 (file)
@@ -68,7 +68,7 @@ BINDIST_STAMPS = libffi/stamp.ffi.build libfii/stamp.ffi.configure
 
 INSTALL_HEADERS   += libffi/ffi.h
 libffi_STATIC_LIB  = libffi/libffi.a
-INSTALL_LIBS      += libffi/libHSffi.a libffi/HSffi.o
+INSTALL_LIBS      += libffi/libHSffi.a libffi/libHSffi_p.a libffi/HSffi.o
 
 # We have to add the GHC version to the name of our dynamic libs, because
 # they will be residing in the system location along with dynamic libs from
@@ -82,7 +82,7 @@ libffi_DYNAMIC_PROG = $(libffi_HS_DYN_LIB).a
 libffi_DYNAMIC_LIBS = $(libffi_HS_DYN_LIB)
 else
 libffi_DYNAMIC_PROG =
-libffi_DYNAMIC_LIBS = libffi/libffi.so libffi/libffi.so.5 libffi/libffi.so.5.0.7
+libffi_DYNAMIC_LIBS = libffi/libffi.so libffi/libffi.so.5 libffi/libffi.so.5.0.9
 endif
 
 ifeq "$(BuildSharedLibs)" "YES"
@@ -106,13 +106,13 @@ endif
 ifneq "$(BINDIST)" "YES"
 $(libffi_STAMP_CONFIGURE):
        "$(RM)" $(RM_OPTS) -r $(LIBFFI_DIR) libffi/build
-       cd libffi && $(TAR) -zxf tarball/libffi*.tar.gz
+       cd libffi && $(TAR) -zxf ../ghc-tarballs/libffi/libffi*.tar.gz
        mv libffi/libffi-* libffi/build
        chmod +x libffi/ln
-       cd libffi && $(PATCH) -p0 < libffi.dllize-3.0.6.patch
-
-       # This patch is just the resulting delta from running automake, autoreconf, libtoolize --force --copy
-       cd libffi && "$(PATCH)" -p0 < libffi.autotools-update.patch
+       cd libffi/build && "$(PATCH)" -p1 < ../libffi.dllize-3.0.8.patch
+       # This patch is just the resulting delta from running
+       # automake && autoreconf && libtoolize --force --copy
+       cd libffi/build && "$(PATCH)" -p1 < ../libffi.autotools-update-3.0.8.patch
 
 # Because -Werror may be in SRC_CC_OPTS/SRC_LD_OPTS, we need to turn
 # warnings off or the compilation of libffi might fail due to warnings
@@ -122,8 +122,8 @@ $(libffi_STAMP_CONFIGURE):
            export PATH; \
            cd build && \
            CC=$(WhatGccIsCalled) \
-        CFLAGS="$(SRC_CC_OPTS) -w" \
-        LDFLAGS="$(SRC_LD_OPTS) -w" \
+        CFLAGS="$(SRC_CC_OPTS) $(CONF_CC_OPTS) -w" \
+        LDFLAGS="$(SRC_LD_OPTS) $(CONF_LD_OPTS) -w" \
         "$(SHELL)" configure \
                  --enable-static=yes \
                  --enable-shared=$(libffi_EnableShared) \
@@ -168,7 +168,7 @@ $(eval $(call all-target,libffi,libffi/libHSffi.a libffi/libHSffi_p.a))
 libffi/HSffi.o: libffi/libHSffi.a
        cd libffi && \
          touch empty.c; \
-         "$(CC)" $(SRC_CC_OPTS) -c empty.c -o HSffi.o
+         "$(CC)" $(SRC_CC_OPTS) $(CONF_CC_OPTS) -c empty.c -o HSffi.o
 
 $(eval $(call all-target,libffi,libffi/HSffi.o))