avoid actually running aclocal (for +d16) by using hard float patch closer to Ubuntu
-drop the original debian armhf llvm driver patches
This commit is contained in:
		
							parent
							
								
									8d5c7715aa
								
							
						
					
					
						commit
						deef098bfc
					
				
							
								
								
									
										15
									
								
								ghc-7.4.1-armv7hl-llc-hard-float.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								ghc-7.4.1-armv7hl-llc-hard-float.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,15 @@ | |||||||
|  | diff -u ghc-7.4.1/compiler/main/DriverPipeline.hs.orig ghc-7.4.1/compiler/main/DriverPipeline.hs
 | ||||||
|  | --- ghc-7.4.1/compiler/main/DriverPipeline.hs.orig	2012-02-02 03:10:32.000000000 +0900
 | ||||||
|  | +++ ghc-7.4.1/compiler/main/DriverPipeline.hs	2012-04-27 10:42:53.142111769 +0900
 | ||||||
|  | @@ -1376,9 +1376,9 @@
 | ||||||
|  |          -- does not enable VFP by default. Let's do this manually here | ||||||
|  |          fpOpts = case platformArch (targetPlatform dflags) of  | ||||||
|  |                     ArchARM ARMv7 ext -> if (elem VFPv3 ext) | ||||||
|  | -                                      then ["-mattr=+v7,+vfp3"]
 | ||||||
|  | +                                      then ["-mattr=+v7,+vfp3", "-float-abi=hard"]
 | ||||||
|  |                                        else if (elem VFPv3D16 ext) | ||||||
|  | -                                           then ["-mattr=+v7,+vfp3,+d16"]
 | ||||||
|  | +                                           then ["-mattr=+v7,+vfp3,+d16", "-float-abi=hard"]
 | ||||||
|  |                                             else [] | ||||||
|  |                     _               -> [] | ||||||
|  |   | ||||||
| @ -1,16 +0,0 @@ | |||||||
| Description: Use VFPv3-D16 FPU for ARM builds |  | ||||||
| Author: Jani Monoses <jani@ubuntu.com> |  | ||||||
| 
 |  | ||||||
| Index: ghc/aclocal.m4
 |  | ||||||
| ===================================================================
 |  | ||||||
| --- ghc.orig/aclocal.m4	2012-02-01 18:10:32.000000000 +0000
 |  | ||||||
| +++ ghc/aclocal.m4	2012-03-10 16:40:32.415005650 +0000
 |  | ||||||
| @@ -333,7 +333,7 @@
 |  | ||||||
|                  ], |  | ||||||
|                  [changequote(, )dnl |  | ||||||
|                   ARM_ISA=ARMv7 |  | ||||||
| -                 ARM_ISA_EXT="[VFPv3,NEON]"
 |  | ||||||
| +                 ARM_ISA_EXT="[VFPv3D16,NEON]"
 |  | ||||||
|                   changequote([, ])dnl |  | ||||||
|                  ]) |  | ||||||
|          ]) |  | ||||||
| @ -1,26 +0,0 @@ | |||||||
| Description: If we are on armhf, tell llvm to generate code for this ABI. Not |  | ||||||
|  forwarded upstream, because they will do a more 'proper' patch. See upstream |  | ||||||
|  bug #5914. |  | ||||||
| Author: Iain Lane <laney@debian.org> |  | ||||||
| 
 |  | ||||||
| Index: ghc/compiler/main/DriverPipeline.hs
 |  | ||||||
| ===================================================================
 |  | ||||||
| --- ghc.orig/compiler/main/DriverPipeline.hs	2012-03-10 16:41:46.000000000 +0000
 |  | ||||||
| +++ ghc/compiler/main/DriverPipeline.hs	2012-03-10 16:42:59.209169474 +0000
 |  | ||||||
| @@ -1,5 +1,5 @@
 |  | ||||||
|  {-# OPTIONS -fno-cse #-} |  | ||||||
| -{-# LANGUAGE NamedFieldPuns #-}
 |  | ||||||
| +{-# LANGUAGE NamedFieldPuns, CPP #-}
 |  | ||||||
|  -- -fno-cse is needed for GLOBAL_VAR's to behave properly |  | ||||||
|   |  | ||||||
|  ----------------------------------------------------------------------------- |  | ||||||
| @@ -1379,6 +1379,9 @@
 |  | ||||||
|                                        then ["-mattr=+v7,+vfp3"] |  | ||||||
|                                        else if (elem VFPv3D16 ext) |  | ||||||
|                                             then ["-mattr=+v7,+vfp3,+d16"] |  | ||||||
| +#ifdef __ARM_PCS_VFP
 |  | ||||||
| +                                                ++ ["-float-abi=hard"]
 |  | ||||||
| +#endif
 |  | ||||||
|                                             else [] |  | ||||||
|                     _               -> [] |  | ||||||
|   |  | ||||||
							
								
								
									
										12
									
								
								ghc.spec
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								ghc.spec
									
									
									
									
									
								
							| @ -98,9 +98,8 @@ Patch9: Cabal-fix-dynamic-exec-for-TH.patch | |||||||
| # Debian armel fixes | # Debian armel fixes | ||||||
| Patch10: fix-ARM-s-StgCRun-clobbered-register-list-for-both-A.patch | Patch10: fix-ARM-s-StgCRun-clobbered-register-list-for-both-A.patch | ||||||
| Patch11: fix-ARM-StgCRun-to-not-save-and-restore-r11-fp-regis.patch | Patch11: fix-ARM-StgCRun-to-not-save-and-restore-r11-fp-regis.patch | ||||||
| # Debian armhf fixes | # need to tell llc to use hard float on armv7hl | ||||||
| Patch12: ghc-debian-ARM-VFPv3D16.patch | Patch12: ghc-7.4.1-armv7hl-llc-hard-float.patch | ||||||
| Patch13: ghc-debian-armhf_llvm_abi.patch |  | ||||||
| 
 | 
 | ||||||
| %description | %description | ||||||
| GHC is a state-of-the-art, open source, compiler and interactive environment | GHC is a state-of-the-art, open source, compiler and interactive environment | ||||||
| @ -220,7 +219,6 @@ ln -s $(pkg-config --variable=includedir libffi)/*.h rts/dist/build | |||||||
| %patch10 -p1 -b .arm1 | %patch10 -p1 -b .arm1 | ||||||
| %patch11 -p1 -b .arm2 | %patch11 -p1 -b .arm2 | ||||||
| %patch12 -p1 -b .arm | %patch12 -p1 -b .arm | ||||||
| %patch13 -p1 -b .arm |  | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| %build | %build | ||||||
| @ -237,9 +235,6 @@ BUILD_DOCBOOK_HTML = NO | |||||||
| %if %{undefined without_hscolour} | %if %{undefined without_hscolour} | ||||||
| HSCOLOUR_SRCS = NO | HSCOLOUR_SRCS = NO | ||||||
| %endif | %endif | ||||||
| %ifarch armv7hl |  | ||||||
| SRC_HC_OPTS += -D__ARM_PCS_VFP |  | ||||||
| %endif |  | ||||||
| EOF | EOF | ||||||
| 
 | 
 | ||||||
| export CFLAGS="${CFLAGS:-%optflags}" | export CFLAGS="${CFLAGS:-%optflags}" | ||||||
| @ -426,7 +421,8 @@ fi | |||||||
| * Tue Apr 10 2012 Jens Petersen <petersen@redhat.com> - 7.4.1-1.1 | * Tue Apr 10 2012 Jens Petersen <petersen@redhat.com> - 7.4.1-1.1 | ||||||
| - build with llvm-3.0 on ARM | - build with llvm-3.0 on ARM | ||||||
| - remove arm from unregisterised_archs | - remove arm from unregisterised_archs | ||||||
| - add 4 Debian ARM patches for armel and armhf (Iain Lane) | - add Debian ARM register patches (Iain Lane) | ||||||
|  | - make llc use -float-abi=hard on armv7hl (thanks Debian and Ubuntu) | ||||||
| - bootstrap build | - bootstrap build | ||||||
| 
 | 
 | ||||||
| * Wed Feb 15 2012 Jens Petersen <petersen@redhat.com> - 7.4.1-1 | * Wed Feb 15 2012 Jens Petersen <petersen@redhat.com> - 7.4.1-1 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user