hadrian.git
3 years agoAdd Cabal support for sandboxed build system building
David Luposchainsky [Tue, 22 Dec 2015 19:54:26 +0000 (20:54 +0100)] 
Add Cabal support for sandboxed build system building

3 years agoSimplify src/Oracles/ModuleFiles.hs, improve performance.
Andrey Mokhov [Thu, 24 Dec 2015 04:36:07 +0000 (04:36 +0000)] 
Simplify src/Oracles/ModuleFiles.hs, improve performance.

3 years agoSplit the batch file into multiple lines, add missing flags (-j -O).
Andrey Mokhov [Thu, 24 Dec 2015 03:29:32 +0000 (03:29 +0000)] 
Split the batch file into multiple lines, add missing flags (-j -O).

3 years agoRemove runghcid.bat.
Andrey Mokhov [Thu, 24 Dec 2015 03:28:07 +0000 (03:28 +0000)] 
Remove runghcid.bat.

3 years agoClean up.
Andrey Mokhov [Thu, 24 Dec 2015 02:51:44 +0000 (02:51 +0000)] 
Clean up.

3 years agoFix haddockArgs, clean up code.
Andrey Mokhov [Thu, 24 Dec 2015 01:28:50 +0000 (01:28 +0000)] 
Fix haddockArgs, clean up code.

3 years agoMerge pull request #29 from quchen/script-refactoring
Andrey Mokhov [Wed, 23 Dec 2015 20:14:46 +0000 (20:14 +0000)] 
Merge pull request #29 from quchen/script-refactoring

Show Shake statistics, refactor direct Linux build script

3 years agoMerge pull request #17 from bgamari/types
Andrey Mokhov [Wed, 23 Dec 2015 20:06:00 +0000 (20:06 +0000)] 
Merge pull request #17 from bgamari/types

[WIP] Make better use of types

3 years agoParallelize+optimize compilation of build system (-j -O)
David Luposchainsky [Tue, 22 Dec 2015 07:54:35 +0000 (08:54 +0100)] 
Parallelize+optimize compilation of build system (-j -O)

3 years agoShow simple shake progress and timings
David Luposchainsky [Mon, 21 Dec 2015 13:15:16 +0000 (14:15 +0100)] 
Show simple shake progress and timings

3 years agoAvoid common shell scripting pitfalls
David Luposchainsky [Mon, 21 Dec 2015 12:46:03 +0000 (13:46 +0100)] 
Avoid common shell scripting pitfalls

- Get bash from $PATH instead of reading it from /bin/bash (useful for e.g. NixOS)
- set -euo pipefail: "strict bash mode"
- Quote all paths to be whitespace compatible
- GHC uses --make mode automatically

3 years agoMake PackageName into a proper newtype
Ben Gamari [Fri, 18 Dec 2015 17:05:20 +0000 (18:05 +0100)] 
Make PackageName into a proper newtype

3 years agoRename "shaking-up-ghc" to "Shaking up GHC"
Andrey Mokhov [Wed, 23 Dec 2015 13:11:40 +0000 (13:11 +0000)] 
Rename "shaking-up-ghc" to "Shaking up GHC"

3 years agoCreate LICENSE
Andrey Mokhov [Wed, 23 Dec 2015 12:42:57 +0000 (12:42 +0000)] 
Create LICENSE

3 years agoMerge pull request #25 from angerman/patch-1
Andrey Mokhov [Wed, 23 Dec 2015 11:26:34 +0000 (11:26 +0000)] 
Merge pull request #25 from angerman/patch-1

Update README.md

3 years agoUpdate README.md
Moritz Angermann [Wed, 23 Dec 2015 06:59:44 +0000 (14:59 +0800)] 
Update README.md

Adding missing prerequisites. These are probably installed if you build ghc often or use shake, but if not, these are missing.

3 years agoImplement ModuleFiles oracle for caching the search of module files of a package.
Andrey Mokhov [Wed, 23 Dec 2015 06:14:11 +0000 (06:14 +0000)] 
Implement ModuleFiles oracle for caching the search of module files of a package.

3 years agoClean up.
Andrey Mokhov [Wed, 23 Dec 2015 06:13:11 +0000 (06:13 +0000)] 
Clean up.

3 years agoImplement encodeModule -- the inverse for decodeModule.
Andrey Mokhov [Wed, 23 Dec 2015 06:12:19 +0000 (06:12 +0000)] 
Implement encodeModule -- the inverse for decodeModule.

3 years agoRemove a duplicate success message when building Lib0.
Andrey Mokhov [Tue, 22 Dec 2015 05:25:01 +0000 (05:25 +0000)] 
Remove a duplicate success message when building Lib0.

3 years agoCopy *.hs-boot files of generated sources.
Andrey Mokhov [Tue, 22 Dec 2015 05:10:46 +0000 (05:10 +0000)] 
Copy *.hs-boot files of generated sources.

3 years agoFix tracking of *.hs-incl files.
Andrey Mokhov [Tue, 22 Dec 2015 05:09:27 +0000 (05:09 +0000)] 
Fix tracking of *.hs-incl files.

3 years agoClean up.
Andrey Mokhov [Tue, 22 Dec 2015 05:07:32 +0000 (05:07 +0000)] 
Clean up.

3 years agoImprove naming convention for build directories: always use stageN.
Andrey Mokhov [Tue, 22 Dec 2015 05:05:11 +0000 (05:05 +0000)] 
Improve naming convention for build directories: always use stageN.

3 years agoAdd support for turnWarningsIntoErrors in Settings/User.hs.
Andrey Mokhov [Tue, 22 Dec 2015 05:00:31 +0000 (05:00 +0000)] 
Add support for turnWarningsIntoErrors in Settings/User.hs.

3 years agoFix Show instances.
Andrey Mokhov [Tue, 22 Dec 2015 04:59:02 +0000 (04:59 +0000)] 
Fix Show instances.

3 years agoAdd a section on how to contribute
Andrey Mokhov [Mon, 21 Dec 2015 12:25:40 +0000 (12:25 +0000)] 
Add a section on how to contribute

3 years agoAdd Windows instructions
Andrey Mokhov [Mon, 21 Dec 2015 12:11:45 +0000 (12:11 +0000)] 
Add Windows instructions

3 years agoBuild haddock and ghcTags in stage1 temporarily until stage2 is fixed.
Andrey Mokhov [Mon, 21 Dec 2015 12:00:32 +0000 (12:00 +0000)] 
Build haddock and ghcTags in stage1 temporarily until stage2 is fixed.

3 years agoFix parallel build, clean up code.
Andrey Mokhov [Mon, 21 Dec 2015 03:57:02 +0000 (03:57 +0000)] 
Fix parallel build, clean up code.

3 years agoMove isLibrary to src/Package.hs, add isProgram.
Andrey Mokhov [Mon, 21 Dec 2015 03:00:38 +0000 (03:00 +0000)] 
Move isLibrary to src/Package.hs, add isProgram.

3 years agoBootstrap ghc-cabal.
Andrey Mokhov [Mon, 21 Dec 2015 03:00:14 +0000 (03:00 +0000)] 
Bootstrap ghc-cabal.

3 years agoBuild program executables directly in inplace/bin.
Andrey Mokhov [Mon, 21 Dec 2015 02:56:49 +0000 (02:56 +0000)] 
Build program executables directly in inplace/bin.

3 years agoClean up, make naming consistent: setPkgType -> setType.
Andrey Mokhov [Sun, 20 Dec 2015 21:19:02 +0000 (21:19 +0000)] 
Clean up, make naming consistent: setPkgType -> setType.

3 years agoMerge pull request #13 from bgamari/master
Andrey Mokhov [Sun, 20 Dec 2015 21:04:59 +0000 (21:04 +0000)] 
Merge pull request #13 from bgamari/master

Consolidate box pretty-printing

3 years agoAdd an explicit dependency on pkgDataFile to make sure GhcCabal hscolour is run after...
Andrey Mokhov [Sun, 20 Dec 2015 20:58:10 +0000 (20:58 +0000)] 
Add an explicit dependency on pkgDataFile to make sure GhcCabal hscolour is run after GhcCabal configure.

3 years agoLibrary: Use renderBox
Ben Gamari [Sun, 20 Dec 2015 20:46:19 +0000 (21:46 +0100)] 
Library: Use renderBox

3 years agoProgram: Use renderBox
Ben Gamari [Sun, 20 Dec 2015 20:43:28 +0000 (21:43 +0100)] 
Program: Use renderBox

3 years agoMove `renderBox` to `Base`
Ben Gamari [Sun, 20 Dec 2015 20:41:36 +0000 (21:41 +0100)] 
Move `renderBox` to `Base`

3 years agoHide `parallel` from shake
Ben Gamari [Sun, 20 Dec 2015 20:41:07 +0000 (21:41 +0100)] 
Hide `parallel` from shake

Shake `master` branch exports a symbol called `parallel` which overlaps
with ours.

3 years agoBase: Use proper Haddock syntax
Ben Gamari [Sun, 20 Dec 2015 20:40:53 +0000 (21:40 +0100)] 
Base: Use proper Haddock syntax

3 years agoMerge pull request #11 from bgamari/master
Andrey Mokhov [Sun, 20 Dec 2015 20:15:12 +0000 (20:15 +0000)] 
Merge pull request #11 from bgamari/master

Fix fallout from previous refactoring

3 years agoRules: Refactor generateTargets
Ben Gamari [Sun, 20 Dec 2015 19:49:29 +0000 (20:49 +0100)] 
Rules: Refactor generateTargets

This previously used `fromJust`, which bottomed due to the recent
`isLibrary` change.

3 years agoGHC: Set PackageType of iservBin
Ben Gamari [Sun, 20 Dec 2015 19:45:05 +0000 (20:45 +0100)] 
GHC: Set PackageType of iservBin

3 years agoMerge pull request #8 from bgamari/master
Andrey Mokhov [Sun, 20 Dec 2015 19:34:47 +0000 (19:34 +0000)] 
Merge pull request #8 from bgamari/master

Miscellany

3 years agoFix detection of libraries
Ben Gamari [Sun, 20 Dec 2015 19:23:34 +0000 (20:23 +0100)] 
Fix detection of libraries

Previously a very fragile heuristic was used. Now we explicitly declare
this.

Perhaps a better option in the future would be to instead emit this
information from `ghc-cabal` and pick it up from `package-data.mk`.

Fixes #9.

3 years agoActions: Factor out box drawing
Ben Gamari [Sun, 20 Dec 2015 16:21:47 +0000 (17:21 +0100)] 
Actions: Factor out box drawing

Also add (currently broken) Unicode support although this is broken by
Shake, the console output interface of which is badly broken (see
Shake #364)

3 years agoDocumentation: Move HsColour invocation to after `need`
Ben Gamari [Sun, 20 Dec 2015 15:43:12 +0000 (16:43 +0100)] 
Documentation: Move HsColour invocation to after `need`

HsColour also depends upon the sources existing. Fixes #6.

3 years agoREADME: Add basic instructions for Linux
Ben Gamari [Sun, 20 Dec 2015 13:04:05 +0000 (14:04 +0100)] 
README: Add basic instructions for Linux

3 years agoAdd verboseCommands predicate to show executed commands in full when needed.
Andrey Mokhov [Sun, 20 Dec 2015 18:41:44 +0000 (18:41 +0000)] 
Add verboseCommands predicate to show executed commands in full when needed.

3 years agoAdd pkgDataFile to look up the path to package-data.mk of a particular stage/package...
Andrey Mokhov [Sun, 20 Dec 2015 18:30:24 +0000 (18:30 +0000)] 
Add pkgDataFile to look up the path to package-data.mk of a particular stage/package combination.

3 years agoFix absolute paths starting with /c/ on Windows.
Andrey Mokhov [Sun, 20 Dec 2015 15:18:44 +0000 (15:18 +0000)] 
Fix absolute paths starting with /c/ on Windows.

3 years agoFix broken parallel build: track dependencies due to -package-id flags.
Andrey Mokhov [Sun, 20 Dec 2015 04:13:38 +0000 (04:13 +0000)] 
Fix broken parallel build: track dependencies due to -package-id flags.

3 years agoFix boot package constraints.
Andrey Mokhov [Sun, 20 Dec 2015 04:12:21 +0000 (04:12 +0000)] 
Fix boot package constraints.

3 years agoAdd matchPackageNames to match packages and package names.
Andrey Mokhov [Sun, 20 Dec 2015 04:11:35 +0000 (04:11 +0000)] 
Add matchPackageNames to match packages and package names.

3 years agoClean up.
Andrey Mokhov [Sun, 20 Dec 2015 04:09:14 +0000 (04:09 +0000)] 
Clean up.

3 years agoDisable profiling and dynamic ways temporarily.
Andrey Mokhov [Sun, 20 Dec 2015 04:06:07 +0000 (04:06 +0000)] 
Disable profiling and dynamic ways temporarily.

3 years agoClean up.
Andrey Mokhov [Sun, 20 Dec 2015 04:04:28 +0000 (04:04 +0000)] 
Clean up.

3 years agoMove Shake database to shake-build/.db, rename _shake to .shake for consistency.
Andrey Mokhov [Sun, 20 Dec 2015 04:04:07 +0000 (04:04 +0000)] 
Move Shake database to shake-build/.db, rename _shake to .shake for consistency.

3 years agoSet shakeFilesPath to shake-build/.db
Andrey Mokhov [Sat, 19 Dec 2015 01:06:14 +0000 (01:06 +0000)] 
Set shakeFilesPath to shake-build/.db

3 years agoMove to shake-build subdirectory.
Andrey Mokhov [Sat, 19 Dec 2015 01:04:20 +0000 (01:04 +0000)] 
Move to shake-build subdirectory.

3 years agoMerge pull request #2 from bgamari/master
Andrey Mokhov [Fri, 18 Dec 2015 23:16:30 +0000 (23:16 +0000)] 
Merge pull request #2 from bgamari/master

Various fixes

3 years agoThe new build system will live in `shake-build`.
Andrey Mokhov [Fri, 18 Dec 2015 21:18:10 +0000 (21:18 +0000)] 
The new build system will live in `shake-build`.

3 years agoAdd remote GHCi libraries
Ben Gamari [Fri, 18 Dec 2015 11:27:16 +0000 (12:27 +0100)] 
Add remote GHCi libraries

See GHC commit 4905b83a2d448c65ccced385343d4e8124548a3b.

3 years agoDependencies: Use msum instead of explicit pattern matching
Ben Gamari [Wed, 16 Dec 2015 15:35:24 +0000 (16:35 +0100)] 
Dependencies: Use msum instead of explicit pattern matching

3 years agogenprimopcode also has a Cabal file
Ben Gamari [Wed, 16 Dec 2015 02:17:23 +0000 (03:17 +0100)] 
genprimopcode also has a Cabal file

As of GHC commit 314395e00be10e6343840c215a4779aeec2542df.

3 years agogenapply now has a Cabal build
Ben Gamari [Wed, 16 Dec 2015 02:13:51 +0000 (03:13 +0100)] 
genapply now has a Cabal build

3 years agoAdd configuration for libdw
Ben Gamari [Wed, 16 Dec 2015 01:42:11 +0000 (02:42 +0100)] 
Add configuration for libdw

3 years agoderiveConstants now has a Cabal file
Ben Gamari [Wed, 16 Dec 2015 01:19:26 +0000 (02:19 +0100)] 
deriveConstants now has a Cabal file

Since 314395e00be10e6343840c215a4779aeec2542df

3 years agoLIB_NAME, PACKAGE_KEY are now COMPONENT_ID
Ben Gamari [Wed, 16 Dec 2015 00:56:05 +0000 (01:56 +0100)] 
LIB_NAME, PACKAGE_KEY are now COMPONENT_ID

Since GHC commit 6338a1cc6df2c7fd8a62eeb4c5240dd90ee74a6c.

3 years agoGHC: bin-package-db is now ghc-boot
Ben Gamari [Wed, 16 Dec 2015 00:32:59 +0000 (01:32 +0100)] 
GHC: bin-package-db is now ghc-boot

3 years agoAdd build.sh for building on Posix platforms
Ben Gamari [Wed, 16 Dec 2015 00:28:13 +0000 (01:28 +0100)] 
Add build.sh for building on Posix platforms

3 years agoAdd NFData instances
Ben Gamari [Wed, 16 Dec 2015 00:27:04 +0000 (01:27 +0100)] 
Add NFData instances

3 years agoUpdate README.md
Andrey Mokhov [Thu, 17 Dec 2015 19:42:44 +0000 (19:42 +0000)] 
Update README.md

3 years agoDon't build system.config by default.
Andrey Mokhov [Wed, 16 Dec 2015 23:07:44 +0000 (23:07 +0000)] 
Don't build system.config by default.

3 years agoNo need to modify configure.ac any more. See https://phabricator.haskell.org/D1638
Andrey Mokhov [Wed, 16 Dec 2015 22:49:27 +0000 (22:49 +0000)] 
No need to modify configure.ac any more. See https://phabricator.haskell.org/D1638

3 years agoClean up.
Andrey Mokhov [Mon, 14 Dec 2015 02:43:00 +0000 (02:43 +0000)] 
Clean up.

3 years agoBuild hp2ps utility.
Andrey Mokhov [Sun, 13 Dec 2015 22:18:45 +0000 (22:18 +0000)] 
Build hp2ps utility.

3 years agoBuild genprimopcode utility.
Andrey Mokhov [Sun, 13 Dec 2015 19:25:30 +0000 (19:25 +0000)] 
Build genprimopcode utility.

3 years agoBuild genapply utility.
Andrey Mokhov [Sun, 13 Dec 2015 19:19:18 +0000 (19:19 +0000)] 
Build genapply utility.

3 years agoBuild deriveConstants utility.
Andrey Mokhov [Sun, 13 Dec 2015 03:54:05 +0000 (03:54 +0000)] 
Build deriveConstants utility.

3 years agoBuild haddock.
Andrey Mokhov [Sun, 13 Dec 2015 02:30:44 +0000 (02:30 +0000)] 
Build haddock.

3 years agoBuild all utils that use cabal files.
Andrey Mokhov [Sat, 12 Dec 2015 02:13:35 +0000 (02:13 +0000)] 
Build all utils that use cabal files.

3 years agoBuild ghc-pwd.
Andrey Mokhov [Sat, 12 Dec 2015 00:53:49 +0000 (00:53 +0000)] 
Build ghc-pwd.

3 years agoBuild ghc-pkg and ghc-cabal in stage 0.
Andrey Mokhov [Sat, 12 Dec 2015 00:50:27 +0000 (00:50 +0000)] 
Build ghc-pkg and ghc-cabal in stage 0.

3 years agoAdd support for building ghc-pkg.
Andrey Mokhov [Sat, 12 Dec 2015 00:41:49 +0000 (00:41 +0000)] 
Add support for building ghc-pkg.

3 years agoAdd generator for ghc-pkg//Version.hs.
Andrey Mokhov [Sat, 12 Dec 2015 00:41:26 +0000 (00:41 +0000)] 
Add generator for ghc-pkg//Version.hs.

3 years agoPass __GLASGOW_HASKELL__ to gcc when compiling directory.c
Andrey Mokhov [Fri, 11 Dec 2015 00:24:01 +0000 (00:24 +0000)] 
Pass __GLASGOW_HASKELL__ to gcc when compiling directory.c

3 years agoFix a poor pattern for detecting -0 library files.
Andrey Mokhov [Fri, 11 Dec 2015 00:23:25 +0000 (00:23 +0000)] 
Fix a poor pattern for detecting -0 library files.

3 years agoAdd support for utility packages.
Andrey Mokhov [Thu, 10 Dec 2015 01:42:07 +0000 (01:42 +0000)] 
Add support for utility packages.

3 years agoAdd extra objects into integerGmp library.
Andrey Mokhov [Thu, 10 Dec 2015 00:28:42 +0000 (00:28 +0000)] 
Add extra objects into integerGmp library.

3 years agoWork on command lines for compiling stage 2 GHC.
Andrey Mokhov [Wed, 9 Dec 2015 02:00:09 +0000 (02:00 +0000)] 
Work on command lines for compiling stage 2 GHC.

3 years agoAdd basic support for -0 libraries.
Andrey Mokhov [Wed, 9 Dec 2015 01:58:53 +0000 (01:58 +0000)] 
Add basic support for -0 libraries.

3 years agoAdd GhcLink builder.
Andrey Mokhov [Wed, 9 Dec 2015 01:57:52 +0000 (01:57 +0000)] 
Add GhcLink builder.

3 years agoPass dll0 modules to ghc-cabal for the compiler package.
Andrey Mokhov [Mon, 7 Dec 2015 02:27:38 +0000 (02:27 +0000)] 
Pass dll0 modules to ghc-cabal for the compiler package.

3 years agoAdd buildProgram rule.
Andrey Mokhov [Mon, 7 Dec 2015 01:44:10 +0000 (01:44 +0000)] 
Add buildProgram rule.

3 years agoRemove duplicates from library archives.
Andrey Mokhov [Mon, 7 Dec 2015 01:43:51 +0000 (01:43 +0000)] 
Remove duplicates from library archives.

3 years agoAdd support for compiling programs with Ghc builder.
Andrey Mokhov [Mon, 7 Dec 2015 01:42:30 +0000 (01:42 +0000)] 
Add support for compiling programs with Ghc builder.

4 years agoRename Target fields: sources -> inputs, files -> outputs.
Andrey Mokhov [Sat, 26 Sep 2015 22:35:57 +0000 (23:35 +0100)] 
Rename Target fields: sources -> inputs, files -> outputs.

4 years agoAdd comments/todos.
Andrey Mokhov [Sat, 26 Sep 2015 21:56:01 +0000 (22:56 +0100)] 
Add comments/todos.