| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Hadrian should behave well and not delete files created by configure
with the clean command. With this patch hadrian now deletes the fs/mingw
tarballs only with distclean.
This fixes #19320. The main impact being that validate won't have to
redownload the tarballs when re-run.
|
|
|
|
|
|
|
| |
Now that GHC 9.0.1 is released, it is time to drop support for bootstrapping
with GHC 8.8, as we only support building with the previous two major GHC
releases. As an added bonus, this allows us to remove several bits of CPP that
are either always true or no longer reachable.
|
|
|
|
| |
Fixes #19409
|
|
|
|
|
|
|
| |
This mirrors the make build system and ensures that we don't end up with
references to the build directory in the final executable.
Fixes #19485.
|
|
|
|
| |
This enables a registerised build for the riscv64 architecture.
|
|
|
|
|
|
|
|
|
|
| |
This fixes #19484. In detail we:
* Bump the index-state of hackage.
* Require alex-3.2.6, as alex-3.2.5 doesn't build with 9.0.
* Allow Cabal-3.4 as 3.2 doesn't build with ghc 9.0.
* Allow a newer QuickCheck version that accepts the new base version.
* Some code changes to account for Cabal changes.
|
|
|
|
|
|
|
|
|
| |
This produces much more detailed ticky profiles which include names of
constructors.
Related !3340 !2098
Fixes #19403
|
|
|
|
| |
This applies the fix for #19033 to all the other flavours as well.
|
|
|
|
|
| |
Previously the profiled flavour transformer failed to add the profiled
ways to the library and RTS ways lists, resulting in link failures.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The first change makes the array ones use the proper fixed-size types,
which also means that just like before, they can be used without
explicit conversions with the boxed sized types. (Before, it was Int# /
Word# on both sides, now it is fixed sized on both sides).
For the second change, don't use "extend" or "narrow" in some of the
user-facing primops names for conversions.
- Names like `narrowInt32#` are misleading when `Int` is 32-bits.
- Names like `extendInt64#` are flat-out wrong when `Int is
32-bits.
- `narrow{Int,Word}<N>#` however map a type to itself, and so don't
suffer from this problem. They are left as-is.
These changes are batched together because Alex happend to use the array
ops. We can only use released versions of Alex at this time, sadly, and
I don't want to have to have a release thatwon't work for the final GHC
9.2. So by combining these we get all the changes for Alex done at once.
Bump hackage state in a few places, and also make that workflow slightly
easier for the future.
Bump minimum Alex version
Bump Cabal, array, bytestring, containers, text, and binary submodules
|
| |
|
|
|
|
|
|
|
| |
With this patch, everything built by the stage1 compiler (in a
`ticky_ghc`-transformed flavour) will be built with `-ticky`.
Fixes #19405.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This wraps the existing GHCi wrapper script (driver/ghci/ghci.c) in a
cabal file and adds the package to Hadrian.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
By querying the PATH variable explicitly via `getSearchPath`, we can
work around the special behavior of `findExecutable` on Windows, where
it also searches in System32. Fixes #19249.
|
|
|
|
| |
Per request of @AndreasK.
|
|
|
|
|
|
| |
Hadrian was silently using the "quick" flavour when "quick-debug" or
"quick-validate" was used. This patch fixes the parser and ensures that
the whole input is consumed.
|
| |
|
|
|
|
|
|
| |
ghcconfig.h, which depends upon ghcautoconf.h, and is a runtime
dependency of deriveConstants. This is essentially a continuation
of #18290.
|
| |
|
|
|
|
|
|
|
|
| |
Before this patch the compiler depended on the RTS way (threaded or not)
to use atomic incrementation or not. This is wrong because the RTS is
supposed to be switchable at link time, without recompilation.
Now we always use atomic incrementation of the unique counter.
|
|
|
|
| |
A workaround for #19099.
|
| |
|
| |
|
|
|
|
|
|
| |
Fix parsing of "libffi-3.3.tar.gz".
NB: switch to a newer libffi isn't done in this patch
|
|
|
|
|
| |
The ghc binary requires the eventlog rts since
fc644b1a643128041cfec25db84e417851e28bab
|
|
|
|
|
| |
Make sure ghc-pkg doesn't read the compiler "settings" file by passing
--no-user-package-db.
|
| |
|
|
|
|
|
| |
Drop the profiled, LLVM, and ThreadSanitizer flavour definitions as
these can now be realized with flavour transformers.
|
| |
|
|
|
|
|
| |
Note that this also slightly changes the semantics of these flavours as
we only use LLVM for >= stage1 builds.
|
|
|
|
| |
This extends Hadrian's notion of "flavour", as described in #18942.
|
|
|
|
|
| |
This changes the "ticky" modifier to enable dumping of final STG as this
is generally needed to make sense of the ticky profiles.
|
| |
|
|\ |
|
| |
| |
| |
| | |
Due to #18808.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are a few reasons why capturing the output of the RunTest builder
is undesirable:
* there is a large amount of output which then gets unnecessarily
duplicated by Hadrian if the builder fails
* the output may contain codepoints which are unrepresentable in the
current codepage on Windows, causing Hadrian to crash
* capturing the output causes the testsuite driver to disable
its colorisation logic, making the output less legible.
|
| |
| |
| |
| |
| | |
This allows us to make `config.top` a proper Path. Previously it was a
str, which caused the Ghostscript detection logic to break.
|
| |
| |
| | |
Previously this was quoted inappropriately.
|
| |
| |
| |
| |
| |
| | |
Tamar noticed in !4293 that the build systems fail to clean up the mingw
tarballs directory (`ghc-tarballs`). Fix this in both the make build
system and Hadrian.
|
|/
|
|
|
|
|
| |
As noted in #18835, xelatex produces an absurd amount of output, nearly
all of which is meaningless. Silence this.
Fixes #18835.
|