Optionally use libffi to implement 'foreign import "wrapper"' (#793)
[ghc-hetmet.git] / rts / package.conf.in
index 2b2229b..187ae40 100644 (file)
@@ -15,15 +15,15 @@ hidden-modules:
 import-dirs:
 
 #ifdef INSTALLING
-library-dirs:          LIB_DIR
+library-dirs:          LIB_DIR GMP_LIB_DIRS
 # ifdef mingw32_HOST_OS
                        , LIB_DIR"/gcc-lib"
                        /* force the dist-provided gcc-lib/ into scope. */
 # endif
 #else /* !INSTALLING */
-library-dirs:          FPTOOLS_TOP_ABS"/rts"
+library-dirs:          FPTOOLS_TOP_ABS"/rts" GMP_LIB_DIRS
 # if !defined(HAVE_LIBGMP) && !defined(HAVE_FRAMEWORK_GMP)
-                       , FPTOOLS_TOP_ABS"/rts/gmp"
+                       , FPTOOLS_TOP_ABS"/gmp"
 # endif
 #endif
 
@@ -56,14 +56,19 @@ extra-libraries:            "m"             /* for ldexp() */
 #if USE_PAPI
                             , "papi"
 #endif
+#ifdef USE_LIBFFI
+                             , "ffi"
+#endif
 
 #ifdef INSTALLING
-include-dirs:          INCLUDE_DIR
+include-dirs:          INCLUDE_DIR GMP_INCLUDE_DIRS
 # ifdef mingw32_HOST_OS
                        , INCLUDE_DIR"/mingw"
 # endif
 #else /* !INSTALLING */
 include-dirs:          FPTOOLS_TOP_ABS"/includes"
+                       FPTOOLS_TOP_ABS"/rts"
+                       FPTOOLS_TOP_ABS"/gmp/gmpbuild"
 #endif
 
 includes:              Stg.h
@@ -142,12 +147,18 @@ ld-options:
          , "-u", "base_GHCziWeak_runFinalizzerBatch_closure"
 #endif
 
-#ifndef mingw32_HOST_OS
 #ifdef LEADING_UNDERSCORE
         , "-u", "_base_GHCziConc_ensureIOManagerIsRunning_closure"
 #else
         , "-u", "base_GHCziConc_ensureIOManagerIsRunning_closure"
 #endif
+
+/*  Pick up static libraries in preference over dynamic if in earlier search
+ *  path.  This is important to use the static gmp in preference on Mac OS.
+ *  The used option is specific to the Darwin linker.
+ */
+#ifdef darwin_BUILD_OS
+        , "-Wl,-search_paths_first"
 #endif
 
 framework-dirs: