/* The RTS is just another package! */ #include "ghcconfig.h" #include "rts/Config.h" #include "MachDeps.h" name: rts version: 1.0.2 id: rts key: rts license: BSD-3-Clause maintainer: glasgow-haskell-users@haskell.org exposed: True exposed-modules: hidden-modules: import-dirs: #if defined(INSTALLING) library-dirs: LIB_DIR"/rts" FFI_LIB_DIR LIBDW_LIB_DIR #else /* !INSTALLING */ library-dirs: TOP"/rts/dist/build" FFI_LIB_DIR LIBDW_LIB_DIR #endif hs-libraries: "HSrts" FFI_LIB extra-libraries: #if defined(HAVE_LIBM) "m" /* for ldexp() */ #endif #if defined(HAVE_LIBRT) , "rt" #endif #if defined(HAVE_LIBDL) , "dl" #endif #if defined(HAVE_SYSTEM_LIBFFI) , "ffi" #endif #if HAVE_LIBNUMA , "numa" #endif #if defined(mingw32_HOST_OS) ,"wsock32" /* for the linker */ ,"gdi32" /* for the linker */ ,"winmm" /* for the linker */ ,"dbghelp" /* for crash dump */ ,"psapi" /* for process information. */ #endif #if NEED_PTHREAD_LIB , "pthread" /* for pthread_getthreadid_np, pthread_create, etc. */ #endif #if defined(DEBUG) && defined(HAVE_LIBBFD) ,"bfd", "iberty" /* for debugging */ #endif #if defined(HAVE_LIBMINGWEX) # if !defined(INSTALLING) /* Bundled Mingw is behind */ ,"mingwex" # endif #endif #if USE_LIBDW , "elf" , "dw" /* for backtraces */ #endif #if defined(INSTALLING) include-dirs: INCLUDE_DIR FFI_INCLUDE_DIR #else /* !INSTALLING */ include-dirs: TOP"/rts/dist/build" TOP"/includes" TOP"/includes/dist-derivedconstants/header" FFI_INCLUDE_DIR LIBDW_INCLUDE_DIR TOP"/includes/dist-install/build" #endif includes: Stg.h cc-options: ld-options: #if defined(LEADING_UNDERSCORE) "-Wl,-u,_base_GHCziTopHandler_runIO_closure" , "-Wl,-u,_base_GHCziTopHandler_runNonIO_closure" , "-Wl,-u,_ghczmprim_GHCziTuple_Z0T_closure" , "-Wl,-u,_ghczmprim_GHCziTypes_True_closure" , "-Wl,-u,_ghczmprim_GHCziTypes_False_closure" , "-Wl,-u,_base_GHCziPack_unpackCString_closure" , "-Wl,-u,_base_GHCziWeak_runFinalizzerBatch_closure" , "-Wl,-u,_base_GHCziIOziException_stackOverflow_closure" , "-Wl,-u,_base_GHCziIOziException_heapOverflow_closure" , "-Wl,-u,_base_GHCziIOziException_allocationLimitExceeded_closure" , "-Wl,-u,_base_GHCziIOziException_blockedIndefinitelyOnMVar_closure" , "-Wl,-u,_base_GHCziIOziException_blockedIndefinitelyOnSTM_closure" , "-Wl,-u,_base_GHCziIOziException_cannotCompactFunction_closure" , "-Wl,-u,_base_GHCziIOziException_cannotCompactPinned_closure" , "-Wl,-u,_base_GHCziIOziException_cannotCompactMutable_closure" , "-Wl,-u,_base_GHCziIOPort_doubleReadException_closure" , "-Wl,-u,_base_ControlziExceptionziBase_nonTermination_closure" , "-Wl,-u,_base_ControlziExceptionziBase_nestedAtomically_closure" , "-Wl,-u,_base_GHCziEventziThread_blockedOnBadFD_closure" , "-Wl,-u,_base_GHCziExceptionziType_divZZeroException_closure" , "-Wl,-u,_base_GHCziExceptionziType_underflowException_closure" , "-Wl,-u,_base_GHCziExceptionziType_overflowException_closure" , "-Wl,-u,_base_GHCziConcziSync_runSparks_closure" , "-Wl,-u,_base_GHCziConcziIO_ensureIOManagerIsRunning_closure" , "-Wl,-u,_base_GHCziConcziIO_interruptIOManager_closure" , "-Wl,-u,_base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure" , "-Wl,-u,_base_GHCziConcziSignal_runHandlersPtr_closure" #if defined(mingw32_HOST_OS) , "-Wl,-u,_base_GHCziEventziWindows_processRemoteCompletion_closure" #endif , "-Wl,-u,_base_GHCziTopHandler_flushStdHandles_closure" , "-Wl,-u,_base_GHCziTopHandler_runMainIO_closure" , "-Wl,-u,_ghczmprim_GHCziTypes_Czh_con_info" , "-Wl,-u,_ghczmprim_GHCziTypes_Izh_con_info" , "-Wl,-u,_ghczmprim_GHCziTypes_Fzh_con_info" , "-Wl,-u,_ghczmprim_GHCziTypes_Dzh_con_info" , "-Wl,-u,_ghczmprim_GHCziTypes_Wzh_con_info" , "-Wl,-u,_base_GHCziPtr_Ptr_con_info" , "-Wl,-u,_base_GHCziPtr_FunPtr_con_info" , "-Wl,-u,_base_GHCziInt_I8zh_con_info" , "-Wl,-u,_base_GHCziInt_I16zh_con_info" , "-Wl,-u,_base_GHCziInt_I32zh_con_info" , "-Wl,-u,_base_GHCziInt_I64zh_con_info" , "-Wl,-u,_base_GHCziWord_W8zh_con_info" , "-Wl,-u,_base_GHCziWord_W16zh_con_info" , "-Wl,-u,_base_GHCziWord_W32zh_con_info" , "-Wl,-u,_base_GHCziWord_W64zh_con_info" , "-Wl,-u,_base_GHCziStable_StablePtr_con_info" , "-Wl,-u,_hs_atomic_add8" , "-Wl,-u,_hs_atomic_add16" , "-Wl,-u,_hs_atomic_add32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_add64" #endif , "-Wl,-u,_hs_atomic_sub8" , "-Wl,-u,_hs_atomic_sub16" , "-Wl,-u,_hs_atomic_sub32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_sub64" #endif , "-Wl,-u,_hs_atomic_and8" , "-Wl,-u,_hs_atomic_and16" , "-Wl,-u,_hs_atomic_and32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_and64" #endif , "-Wl,-u,_hs_atomic_nand8" , "-Wl,-u,_hs_atomic_nand16" , "-Wl,-u,_hs_atomic_nand32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_nand64" #endif , "-Wl,-u,_hs_atomic_or8" , "-Wl,-u,_hs_atomic_or16" , "-Wl,-u,_hs_atomic_or32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_or64" #endif , "-Wl,-u,_hs_atomic_xor8" , "-Wl,-u,_hs_atomic_xor16" , "-Wl,-u,_hs_atomic_xor32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomic_xor64" #endif , "-Wl,-u,_hs_cmpxchg8" , "-Wl,-u,_hs_cmpxchg16" , "-Wl,-u,_hs_cmpxchg32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_cmpxchg64" #endif , "-Wl,-u,_hs_xchg8" , "-Wl,-u,_hs_xchg16" , "-Wl,-u,_hs_xchg32" , "-Wl,-u,_hs_xchg64" , "-Wl,-u,_hs_atomicread8" , "-Wl,-u,_hs_atomicread16" , "-Wl,-u,_hs_atomicread32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomicread64" #endif , "-Wl,-u,_hs_atomicwrite8" , "-Wl,-u,_hs_atomicwrite16" , "-Wl,-u,_hs_atomicwrite32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,_hs_atomicwrite64" #endif #if defined(DEBUG) /* This symbol is useful in gdb, but not referred to anywhere, * so we need to force it to be included in the binary. */ , "-Wl,-u,_findPtr" #endif #else "-Wl,-u,base_GHCziTopHandler_runIO_closure" , "-Wl,-u,base_GHCziTopHandler_runNonIO_closure" , "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure" , "-Wl,-u,ghczmprim_GHCziTypes_True_closure" , "-Wl,-u,ghczmprim_GHCziTypes_False_closure" , "-Wl,-u,base_GHCziPack_unpackCString_closure" , "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure" , "-Wl,-u,base_GHCziIOziException_stackOverflow_closure" , "-Wl,-u,base_GHCziIOziException_heapOverflow_closure" , "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure" , "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure" , "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure" , "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure" , "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure" , "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure" , "-Wl,-u,base_GHCziIOPort_doubleReadException_closure" , "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure" , "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure" , "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure" , "-Wl,-u,base_GHCziExceptionziType_divZZeroException_closure" , "-Wl,-u,base_GHCziExceptionziType_underflowException_closure" , "-Wl,-u,base_GHCziExceptionziType_overflowException_closure" , "-Wl,-u,base_GHCziConcziSync_runSparks_closure" , "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure" , "-Wl,-u,base_GHCziConcziIO_interruptIOManager_closure" , "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure" , "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure" #if defined(mingw32_HOST_OS) , "-Wl,-u,base_GHCziEventziWindows_processRemoteCompletion_closure" #endif , "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure" , "-Wl,-u,base_GHCziTopHandler_runMainIO_closure" , "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info" , "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info" , "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info" , "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info" , "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info" , "-Wl,-u,base_GHCziPtr_Ptr_con_info" , "-Wl,-u,base_GHCziPtr_FunPtr_con_info" , "-Wl,-u,base_GHCziInt_I8zh_con_info" , "-Wl,-u,base_GHCziInt_I16zh_con_info" , "-Wl,-u,base_GHCziInt_I32zh_con_info" , "-Wl,-u,base_GHCziInt_I64zh_con_info" , "-Wl,-u,base_GHCziWord_W8zh_con_info" , "-Wl,-u,base_GHCziWord_W16zh_con_info" , "-Wl,-u,base_GHCziWord_W32zh_con_info" , "-Wl,-u,base_GHCziWord_W64zh_con_info" , "-Wl,-u,base_GHCziStable_StablePtr_con_info" , "-Wl,-u,hs_atomic_add8" , "-Wl,-u,hs_atomic_add16" , "-Wl,-u,hs_atomic_add32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_add64" #endif , "-Wl,-u,hs_atomic_sub8" , "-Wl,-u,hs_atomic_sub16" , "-Wl,-u,hs_atomic_sub32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_sub64" #endif , "-Wl,-u,hs_atomic_and8" , "-Wl,-u,hs_atomic_and16" , "-Wl,-u,hs_atomic_and32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_and64" #endif , "-Wl,-u,hs_atomic_nand8" , "-Wl,-u,hs_atomic_nand16" , "-Wl,-u,hs_atomic_nand32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_nand64" #endif , "-Wl,-u,hs_atomic_or8" , "-Wl,-u,hs_atomic_or16" , "-Wl,-u,hs_atomic_or32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_or64" #endif , "-Wl,-u,hs_atomic_xor8" , "-Wl,-u,hs_atomic_xor16" , "-Wl,-u,hs_atomic_xor32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomic_xor64" #endif , "-Wl,-u,hs_cmpxchg8" , "-Wl,-u,hs_cmpxchg16" , "-Wl,-u,hs_cmpxchg32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_cmpxchg64" #endif , "-Wl,-u,hs_xchg8" , "-Wl,-u,hs_xchg16" , "-Wl,-u,hs_xchg32" , "-Wl,-u,hs_xchg64" , "-Wl,-u,hs_atomicread8" , "-Wl,-u,hs_atomicread16" , "-Wl,-u,hs_atomicread32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomicread64" #endif , "-Wl,-u,hs_atomicwrite8" , "-Wl,-u,hs_atomicwrite16" , "-Wl,-u,hs_atomicwrite32" #if WORD_SIZE_IN_BITS == 64 , "-Wl,-u,hs_atomicwrite64" #endif #if defined(DEBUG) /* This symbol is useful in gdb, but not referred to anywhere, * so we need to force it to be included in the binary. */ , "-Wl,-u,findPtr" #endif #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. */ #if defined(darwin_HOST_OS) , "-Wl,-search_paths_first" #endif #if defined(darwin_HOST_OS) && !defined(x86_64_HOST_ARCH) && !defined(aarch64_HOST_ARCH) , "-read_only_relocs", "warning" #endif framework-dirs: haddock-interfaces: haddock-html: