Commit 9d55e30
Add better support for armv7a cross compilation (#1874)
* Support for armv7a-bionic (android)
This adds support to haskell.nix for building for armv7a-android.
It includes
- various minor fixes
- a lot of bionic (libc) patches for ghc
- no gold on 32bit android
- android overlay: mostly static
- disable KTLS on openssl for android
* allow setupBuildFlags on components and packages
* android + ios: missing patches (#1884)
* android: missing patches
* ios: missing patches
* Fix hadrian naming convenction
cabal ends up with
aarch64-android
whereas hadrian ends up with
aarch64-linux_android
* Fix format
* newlines
* WIP tools
* Add iserv logic
* WIP
* Fix 9.6.3 aarch64 outline atomics
* Better patch
* Better linux cross
* Fix ghc:-dynamic-system-linker for android
* Fixup arm
* Patch only for aarch64
* add aggregated ghc-9.6 patch
* More android patches
* Adds genapply patch for 9.6
GenApply suffers from having GHC pollute its defines.
* Add [PATCH] AArch64: Fix broken conditional jumps for offsets >= 1MB
This is added for aarch64 for now only as that's the only affeted platform.
* Update default.nix
* fix native musl
* add debug secno patch
* fix musl being considered stage2
* Allow undefined weak symbols.
* Map missing symbols to 0xDEADBEEF.
* Set -dynamic-system-linker if musl and not x86_64
* proper parens
* Add i686 cross
* more patches
* 🤦
* patch interpreter also for windows.
* No dynamic loading on x86.
* 🤦
* Sigh
* Disable linux cross patch for now.
* Fix 32bit patch
* No symbol loading on darwin.
The weak logic doesn't seem to work well there.
* all ghc c files apple-a7
* Drop duplicate patch
* Fixup compilers
* Update nixpkgs pins
* ifdLevel 0
* Simplify bootPkgs
* Update materialized files
* Bump nixpkgs-unstable and ghc911
* Simplify bootPkgs
* Simplify bootPkgs
* Update ghc911
* Reduce the number of compilers tested
* Bump llvm for ghc >=9.10
* Update patch upper bounds
* Include clang for useLLVM GHC
* ifdLevel 1
* Add materialized files
* Disable haskell-gi-overloading (it's too slow to build)
* Update patch upper bound
* ifdLevel 2
* Fixes for GHC HEAD
* ifdLevel 3
* Fixes for GHC HEAD
* Fix supported-languages for GHC HEAD
* More fixes for GHC HEAD
* Possible fix for plugin failure on aarch64-darwin
* ifdLevel 0
* ifdLevel 3
* Add emar and emranlib to ghc js builds
* Fix `repo-tar` downloads
* Fix `repo-tar` downloads
* More fixes for ghc HEAD
* Fix for GHC 9.6 JS backend
* Fix for GHC HEAD JS
* fix syntax errors
* ifdLevel 0
* Disable darwin on hydra for now.
* ifdLevel 1
* ifdLevel 2
* ifdLevel 3
* Fix eval
* Fix patches
* Fix patches
* ifdLevel 0
* ifdLevel 1
* ifdLevel 2
* ifdLevel 3
* Add upper bound for patch
* Add ArchX86 and ArchRISCV64
* Fix logic for iserv-syms.patch
* Fix logic for iserv-syms.patch
* Remove old patch. Latest upstream GHC >9.6 have a better one.
* ifdLevel 0
* ifdLevel 1
* Fix hadrian strip patch
* Fix hadrian strip patch
* Fix haddock (now that isNativeMusl works correctly)
* Fix haddock (now that isNativeMusl works correctly)
* Avoid building source-pins on hackage (just make sure the components needed are present).
* ifdLevel 2
* Fix for native musl builds
* ifdLevel 3
* Add musl32 and android tests
* Add AArch32 to call-cabal-project-to-nix.nix
* Update iserv-proxy patches
* Fix duplication of patch in overlays/bootstrap.nix
* Add missing materialized file
* Remove patch already in 9.2.8
* Build android compilers with nixpkgs 24.05
* Fix gi-gtk test
* Fix eval
* Try aarch64-android-prebuilt
* ifdLevel 1
* Disable ncurses on android for now
* Fix patch
* Use aarch64-android (not prebuilt)
* Fixes for armv7a
* Fixes for armv7a
* Fix ghc-9.6-32bit-cmm.patch bounds
* Fix genapply patch bound
* Try Android SDK version 26
* Try Android SDK version 26
* Try Android SDK version 26
* Use small address space
* Use small address space
* androidNdkVersion = "24"
* Fix android sdk/ndk pins so they work for ci.nix
* Add missing casts
* Add preBuild to set CFLAGS
* Better fix?
* Better fix?
* Support Cabal calling configure with "--host=arm-android"
* Fix ghc 9.8
* Fix for ghc >9.10
* Fix patch error
* Possible fix for aarch64 android
* Fix patches for GHC 8.10
* Try aarch64-android-prebuilt
* Include clang
* Don't include clang for prebuilt android
* Set `LLVMAS`
* Setting LLVMAS to `llvm-as` did not help
* Set `LLVMAS` the same as `CC`
* Relax llvm max version
* Try with llvm version bound relaxed, but without LLVMAS env var
* Define ELF64_ST_VISIBILITY and ELF32_ST_VISIBILITY for android
* ifdLevel 2
* ifdLevel 3
* ifdLevel 2
* ifdLevel 3
* Fix for android ioctl issue
* Skip running tests for aarch64-android
* Same problem for armv7a
* Fixes from aarch64 android
* Fixes from armv7a android
* Test android on nixpkgs 24.11
* musl fix
* Fix musl64 unlit not found issue
* nix flake update iserv-proxy
* nix flake update nixpkgs-2411
* nix flake update iserv-proxy
* Disable x86_64-darwin.R2411 tests (strangely broken)
* Add patch to load archive script
See https://gitlab.haskell.org/ghc/ghc/-/issues/16130
* Fix for libsodium on android
* Move libsodium fix to test/modules.nix
* Fix darwin builds for nixpkgs 24.11
* nix flake update iserv-proxy
* Move iserv-proxy-interpreter overrides into overlays/haskell.nix
* Move iserv-proxy-interpreter overrides into overlays/haskell.nix
* nix flake update iserv-proxy
* Disable musl32 tests (unhandled ELF relocation(Rel) type 10)
* Add to fix resolveArchive for libiserv
* nix flake update iserv-proxy
* nix flake update iserv-proxy
* nix flake update iserv-proxy
* Overlay to avoid issue that will be fixed by NixOS/nixpkgs#385722
* nix flake update iserv-proxy
* Add COMPAT_R_ARM_PREL31 patch to fix TH for armv6a android
* nix flake update iserv-proxy
* Disable plugin test for armv7
* Enable tests that should pass
* Disable shell-for for armv7
* nix flake update iserv-proxy
* nix flake update iserv-proxy
* Exclude libc.a from loadArchive for android
* nix flake update iserv-proxy
* Disable tests of llvm backend for musl32 (seems broken)
* Use static linking for android tests
* Make `.profiled` and `.dwarf` overridable
* Fix cabal-simple-prof test
* Add ghc96X
* Update JS-implement-TH-support.patch
* Skip windows patch now in 9.6 branch
* Update patch
* Fix for ghcjs
* Use hls master branch for testing hls
* Add materialized files
* Add materialized files
* Add materialized files
* Add materialized files
* Fix iserv-proxy issues for GHC >9.11
* Revert "Fix iserv-proxy issues for GHC >9.11"
This reverts commit 7e04c0d.
* nix flake update iserv-proxy
* Disable ghcjs for ghc96720250227 on macOS
* Disable mingwW64 for ghc96720250227 (use ucrt64)
* Disable broken test
* nix flake update iserv-proxy
* Skip broken test
* Skip broken test
---------
Co-authored-by: sh <[email protected]>
Co-authored-by: Hamish Mackenzie <[email protected]>1 parent a439918 commit 9d55e30
File tree
151 files changed
+10873
-190
lines changed- builder
- compiler/ghc
- lazy-inputs
- ghc912X
- ghc96X
- lib
- materialized
- ghc-boot-packages-nix
- ghc96720250227-aarch64
- ghc96720250227-ghcjs
- ghc96720250227llvm-aarch64
- ghc96720250227llvm
- ghc96720250227
- ghc964/hadrian-ghc96
- hadrian
- cabal-files
- overlays
- patches
- ghc
- scripts/check-compiler-materialization
- test
- annotations
- cabal-simple-debug
- cabal-simple-prof
- coverage
- ghcjs-overlay
- gi-gtk
- haskell-language-server
- js-template-haskell
- plugin
- shell-for
- th-dlls
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
151 files changed
+10873
-190
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
61 | | - | |
| 60 | + | |
| 61 | + | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
64 | 69 | | |
65 | 70 | | |
66 | 71 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
212 | | - | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
213 | 221 | | |
214 | 222 | | |
215 | 223 | | |
| |||
377 | 385 | | |
378 | 386 | | |
379 | 387 | | |
380 | | - | |
381 | | - | |
| 388 | + | |
| 389 | + | |
382 | 390 | | |
383 | 391 | | |
384 | 392 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
71 | | - | |
| 71 | + | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | | - | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
125 | 125 | | |
126 | 126 | | |
127 | 127 | | |
128 | | - | |
| 128 | + | |
129 | 129 | | |
130 | 130 | | |
131 | 131 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | 61 | | |
67 | 62 | | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
68 | 69 | | |
69 | 70 | | |
70 | 71 | | |
| |||
80 | 81 | | |
81 | 82 | | |
82 | 83 | | |
83 | | - | |
84 | | - | |
| 84 | + | |
| 85 | + | |
85 | 86 | | |
86 | 87 | | |
87 | | - | |
88 | | - | |
89 | | - | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
90 | 91 | | |
91 | 92 | | |
92 | 93 | | |
| |||
98 | 99 | | |
99 | 100 | | |
100 | 101 | | |
101 | | - | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
102 | 108 | | |
103 | 109 | | |
104 | 110 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | | - | |
| 50 | + | |
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
| 65 | + | |
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| |||
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
172 | | - | |
173 | | - | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
174 | 175 | | |
175 | 176 | | |
176 | 177 | | |
| |||
183 | 184 | | |
184 | 185 | | |
185 | 186 | | |
| 187 | + | |
| 188 | + | |
186 | 189 | | |
187 | 190 | | |
188 | 191 | | |
189 | 192 | | |
190 | 193 | | |
191 | | - | |
| 194 | + | |
192 | 195 | | |
193 | 196 | | |
194 | 197 | | |
| |||
216 | 219 | | |
217 | 220 | | |
218 | 221 | | |
219 | | - | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
220 | 226 | | |
221 | 227 | | |
222 | | - | |
| 228 | + | |
223 | 229 | | |
224 | 230 | | |
225 | 231 | | |
226 | 232 | | |
227 | | - | |
228 | | - | |
229 | 233 | | |
230 | 234 | | |
231 | 235 | | |
232 | 236 | | |
233 | 237 | | |
234 | 238 | | |
235 | | - | |
| 239 | + | |
236 | 240 | | |
237 | 241 | | |
238 | 242 | | |
| |||
244 | 248 | | |
245 | 249 | | |
246 | 250 | | |
247 | | - | |
| 251 | + | |
248 | 252 | | |
249 | 253 | | |
250 | 254 | | |
| |||
345 | 349 | | |
346 | 350 | | |
347 | 351 | | |
348 | | - | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
349 | 360 | | |
350 | 361 | | |
351 | 362 | | |
| |||
462 | 473 | | |
463 | 474 | | |
464 | 475 | | |
465 | | - | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
466 | 480 | | |
467 | 481 | | |
468 | 482 | | |
| |||
537 | 551 | | |
538 | 552 | | |
539 | 553 | | |
540 | | - | |
| 554 | + | |
541 | 555 | | |
542 | 556 | | |
543 | 557 | | |
| |||
731 | 745 | | |
732 | 746 | | |
733 | 747 | | |
734 | | - | |
| 748 | + | |
735 | 749 | | |
736 | 750 | | |
737 | 751 | | |
| |||
781 | 795 | | |
782 | 796 | | |
783 | 797 | | |
784 | | - | |
| 798 | + | |
785 | 799 | | |
786 | 800 | | |
787 | 801 | | |
| |||
821 | 835 | | |
822 | 836 | | |
823 | 837 | | |
824 | | - | |
| 838 | + | |
825 | 839 | | |
826 | 840 | | |
827 | 841 | | |
828 | 842 | | |
829 | 843 | | |
| 844 | + | |
830 | 845 | | |
831 | 846 | | |
832 | 847 | | |
| |||
841 | 856 | | |
842 | 857 | | |
843 | 858 | | |
| 859 | + | |
| 860 | + | |
844 | 861 | | |
845 | 862 | | |
846 | 863 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments