Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC
Commits:
-
94d8f83b
by Cheng Shao at 2026-07-22T11:30:40-04:00
9 changed files:
- configure.ac
- distrib/configure.ac.in
- hadrian/cfg/system.config.host.in
- hadrian/cfg/system.config.target.in
- hadrian/src/Oracles/Flag.hs
- hadrian/src/Rules/Generate.hs
- hadrian/src/Settings/Packages.hs
- m4/fp_check_pthreads.m4
- rts/rts.cabal
Changes:
| ... | ... | @@ -894,10 +894,7 @@ dnl Keep that check as early as possible. |
| 894 | 894 | dnl as we need to know whether we need libm
|
| 895 | 895 | dnl for math functions or not
|
| 896 | 896 | dnl (see https://gitlab.haskell.org/ghc/ghc/issues/3730)
|
| 897 | -AC_CHECK_LIB(m, atan, UseLibm=YES, UseLibm=NO)
|
|
| 898 | -AC_SUBST([UseLibm])
|
|
| 899 | -TargetHasLibm=$UseLibm
|
|
| 900 | -AC_SUBST(TargetHasLibm)
|
|
| 897 | +AC_CHECK_LIB(m, atan, TargetHasLibm=YES, TargetHasLibm=NO)
|
|
| 901 | 898 | |
| 902 | 899 | FP_BFD_FLAG
|
| 903 | 900 | AC_SUBST([UseLibbfd])
|
| ... | ... | @@ -911,10 +908,6 @@ AC_SUBST(UseSystemLibFFI) |
| 911 | 908 | AC_SUBST(FFILibDir)
|
| 912 | 909 | AC_SUBST(FFIIncludeDir)
|
| 913 | 910 | |
| 914 | -dnl ** check whether we need -ldl to get dlopen()
|
|
| 915 | -AC_CHECK_LIB([dl], [dlopen], UseLibdl=YES, UseLibdl=NO)
|
|
| 916 | -AC_SUBST([UseLibdl])
|
|
| 917 | - |
|
| 918 | 911 | dnl ** check for leading underscores in symbol names
|
| 919 | 912 | FP_LEADING_UNDERSCORE
|
| 920 | 913 | AC_SUBST([LeadingUnderscore], [`echo $fptools_cv_leading_underscore | sed 'y/yesno/YESNO/'`])
|
| ... | ... | @@ -923,9 +916,6 @@ dnl ** check for librt |
| 923 | 916 | AC_CHECK_LIB([rt], [clock_gettime], UseLibrt=YES, UseLibrt=NO)
|
| 924 | 917 | AC_SUBST([UseLibrt])
|
| 925 | 918 | |
| 926 | -FP_CHECK_PTHREAD_LIB
|
|
| 927 | -AC_SUBST([UseLibpthread])
|
|
| 928 | - |
|
| 929 | 919 | GHC_ADJUSTORS_METHOD([Target])
|
| 930 | 920 | AC_SUBST([UseLibffiForAdjustors])
|
| 931 | 921 |
| ... | ... | @@ -32,7 +32,6 @@ bootstrap_target=@TargetPlatform@ |
| 32 | 32 | bootstrap_llvm_target=@LlvmTarget@
|
| 33 | 33 | |
| 34 | 34 | TargetHasLibm=@TargetHasLibm@
|
| 35 | -AC_SUBST(TargetHasLibm)
|
|
| 36 | 35 | |
| 37 | 36 | UseLibffiForAdjustors=@UseLibffiForAdjustors@
|
| 38 | 37 | AC_SUBST(UseLibffiForAdjustors)
|
| ... | ... | @@ -58,10 +58,7 @@ libzstd-lib-dir = |
| 58 | 58 | use-lib-zstd = NO
|
| 59 | 59 | static-lib-zstd = NO
|
| 60 | 60 | use-lib-numa = NO
|
| 61 | -use-lib-m = YES
|
|
| 62 | 61 | use-lib-rt = YES
|
| 63 | -use-lib-dl = YES
|
|
| 64 | 62 | use-lib-bfd = NO
|
| 65 | -use-lib-pthread = NO
|
|
| 66 | 63 | need-libatomic = NO
|
| 67 | 64 |
| ... | ... | @@ -64,10 +64,7 @@ libzstd-lib-dir = @LibZstdLibDir@ |
| 64 | 64 | use-lib-zstd = @UseLibZstd@
|
| 65 | 65 | static-lib-zstd = @UseStaticLibZstd@
|
| 66 | 66 | use-lib-numa = @UseLibNuma@
|
| 67 | -use-lib-m = @UseLibm@
|
|
| 68 | 67 | use-lib-rt = @UseLibrt@
|
| 69 | -use-lib-dl = @UseLibdl@
|
|
| 70 | 68 | use-lib-bfd = @UseLibbfd@
|
| 71 | -use-lib-pthread = @UseLibpthread@
|
|
| 72 | 69 | need-libatomic = @NeedLibatomic@
|
| 73 | 70 |
| ... | ... | @@ -33,13 +33,9 @@ data BuildFlag = CcLlvmBackend |
| 33 | 33 | | UseLibnuma
|
| 34 | 34 | | UseLibzstd
|
| 35 | 35 | | StaticLibzstd
|
| 36 | - | UseLibm
|
|
| 37 | 36 | | UseLibrt
|
| 38 | - | UseLibdl
|
|
| 39 | 37 | | UseLibbfd
|
| 40 | - | UseLibpthread
|
|
| 41 | 38 | | NeedLibatomic
|
| 42 | - | TargetHasLibm
|
|
| 43 | 39 | |
| 44 | 40 | parseFlagResult :: String -> String -> Bool
|
| 45 | 41 | parseFlagResult key value =
|
| ... | ... | @@ -70,13 +66,9 @@ buildFlag f st = |
| 70 | 66 | UseLibnuma -> "use-lib-numa"
|
| 71 | 67 | UseLibzstd -> "use-lib-zstd"
|
| 72 | 68 | StaticLibzstd -> "static-lib-zstd"
|
| 73 | - UseLibm -> "use-lib-m"
|
|
| 74 | 69 | UseLibrt -> "use-lib-rt"
|
| 75 | - UseLibdl -> "use-lib-dl"
|
|
| 76 | 70 | UseLibbfd -> "use-lib-bfd"
|
| 77 | - UseLibpthread -> "use-lib-pthread"
|
|
| 78 | 71 | NeedLibatomic -> "need-libatomic"
|
| 79 | - TargetHasLibm -> "use-lib-m"
|
|
| 80 | 72 | in parseFlagResult key <$> (lookupStageBuildConfig key st)
|
| 81 | 73 | |
| 82 | 74 | -- | Get a configuration setting.
|
| ... | ... | @@ -440,7 +440,7 @@ bindistRules = do |
| 440 | 440 | , interpolateSetting "ProjectVersion" ProjectVersion
|
| 441 | 441 | , interpolateVar "EnableDistroToolchain" $ interp (staged (lookupStageBuildConfig "settings-use-distro-mingw"))
|
| 442 | 442 | , interpolateVar "TablesNextToCode" $ yesNo <$> getTarget tgtTablesNextToCode
|
| 443 | - , interpolateVar "TargetHasLibm" $ yesNo <$> interp (staged (buildFlag TargetHasLibm))
|
|
| 443 | + , interpolateVar "TargetHasLibm" $ yesNo <$> getTarget tgtHasLibm
|
|
| 444 | 444 | , interpolateVar "TargetPlatform" $ getTarget targetPlatformTriple
|
| 445 | 445 | , interpolateVar "BuildPlatform" $ interp $ queryBuild targetPlatformTriple
|
| 446 | 446 | , interpolateVar "HostPlatform" $ interp $ queryHost targetPlatformTriple
|
| ... | ... | @@ -92,7 +92,6 @@ packageArgs = do |
| 92 | 92 | -- target code, otherwise enable for stage2 since that runs on
|
| 93 | 93 | -- the target and can use target's own ghci object linker
|
| 94 | 94 | [ andM [expr (ghcWithInterpreter stage), orM [expr (notM cross), stage2]] `cabalFlag` "internal-interpreter"
|
| 95 | - , orM [ notM cross, haveCurses ] `cabalFlag` "terminfo"
|
|
| 96 | 95 | , arg "-build-tool-depends"
|
| 97 | 96 | , staged (buildFlag UseLibzstd) `cabalFlag` "with-libzstd"
|
| 98 | 97 | -- ROMES: While the boot compiler is not updated wrt -this-unit-id
|
| ... | ... | @@ -126,10 +125,6 @@ packageArgs = do |
| 126 | 125 | ]
|
| 127 | 126 | ]
|
| 128 | 127 | |
| 129 | - -------------------------------- ghcPkg --------------------------------
|
|
| 130 | - , package ghcPkg ?
|
|
| 131 | - builder (Cabal Flags) ? orM [ notM cross, haveCurses ] `cabalFlag` "terminfo"
|
|
| 132 | - |
|
| 133 | 128 | -------------------------------- ghcBoot ------------------------------
|
| 134 | 129 | , package ghcBoot ?
|
| 135 | 130 | builder (Cabal Flags) ? (stage0 `cabalFlag` "bootstrap")
|
| ... | ... | @@ -408,12 +403,9 @@ rtsPackageArgs = package rts ? do |
| 408 | 403 | , any (wayUnit Debug) rtsWays `cabalFlag` "debug"
|
| 409 | 404 | , any (wayUnit Dynamic) rtsWays `cabalFlag` "dynamic"
|
| 410 | 405 | , any (wayUnit Threaded) rtsWays `cabalFlag` "threaded"
|
| 411 | - , buildFlag UseLibm stage `cabalFlag` "libm"
|
|
| 412 | 406 | , buildFlag UseLibrt stage `cabalFlag` "librt"
|
| 413 | - , buildFlag UseLibdl stage `cabalFlag` "libdl"
|
|
| 414 | 407 | , useSystemFfi `cabalFlag` "use-system-libffi"
|
| 415 | 408 | , targetUseLibffiForAdjustors stage `cabalFlag` "libffi-adjustors"
|
| 416 | - , buildFlag UseLibpthread stage `cabalFlag` "need-pthread"
|
|
| 417 | 409 | , buildFlag UseLibbfd stage `cabalFlag` "libbfd"
|
| 418 | 410 | , buildFlag NeedLibatomic stage `cabalFlag` "need-atomic"
|
| 419 | 411 | , useLibdw stage `cabalFlag` "libdw"
|
| ... | ... | @@ -423,7 +415,6 @@ rtsPackageArgs = package rts ? do |
| 423 | 415 | , queryTargetTarget stage tgtSymbolsHaveLeadingUnderscore `cabalFlag` "leading-underscore"
|
| 424 | 416 | , ghcUnreg `cabalFlag` "unregisterised"
|
| 425 | 417 | , ghcEnableTNC `cabalFlag` "tables-next-to-code"
|
| 426 | - , Debug `wayUnit` way `cabalFlag` "find-ptr"
|
|
| 427 | 418 | ]
|
| 428 | 419 | , builder (Cabal Setup) ? mconcat
|
| 429 | 420 | [ useLibdw stage ? cabalExtraDirs (fromMaybe "" libdwIncludeDir) (fromMaybe "" libdwLibraryDir)
|
| 1 | 1 | # FP_CHECK_PTHREAD_LIB
|
| 2 | 2 | # ----------------------------------
|
| 3 | 3 | # Check whether -lpthread is needed for pthread.
|
| 4 | -#
|
|
| 5 | -# Sets variables:
|
|
| 6 | -# - UseLibpthread: [YES|NO]
|
|
| 7 | 4 | AC_DEFUN([FP_CHECK_PTHREAD_LIB],
|
| 8 | 5 | [
|
| 9 | 6 | dnl Some platforms (e.g. Android's Bionic) have pthreads support available
|
| ... | ... | @@ -64,9 +64,6 @@ flag tables-next-to-code |
| 64 | 64 | flag smp
|
| 65 | 65 | default: True
|
| 66 | 66 | manual: True
|
| 67 | -flag find-ptr
|
|
| 68 | - default: False
|
|
| 69 | - manual: True
|
|
| 70 | 67 | -- Some cabal flags used to control the flavours we want to produce
|
| 71 | 68 | -- for libHSrts in hadrian. By default, we just produce vanilla and
|
| 72 | 69 | -- threaded. The flags "compose": if you enable debug and profiling,
|