[oe-commits] Robert Schuster : llvm 2.4: More cleanly disable the compilation ( fixes compiling on amd64).

GIT User account git at amethyst.openembedded.net
Fri Jan 16 02:26:26 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 01d608c6f5fa927d20385005f9438e63ac673280
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=01d608c6f5fa927d20385005f9438e63ac673280

Author: Robert Schuster <thebohemian at gmx.net>
Date:   Fri Jan 16 03:25:59 2009 +0100

llvm 2.4: More cleanly disable the compilation (fixes compiling on amd64).

---

 packages/llvm/llvm-2.4/fix-build.patch |   40 ++++++++++++++++++++++++++++----
 packages/llvm/llvm_2.4.bb              |    7 ++---
 2 files changed, 38 insertions(+), 9 deletions(-)

diff --git a/packages/llvm/llvm-2.4/fix-build.patch b/packages/llvm/llvm-2.4/fix-build.patch
index dee06f3..30560b2 100644
--- a/packages/llvm/llvm-2.4/fix-build.patch
+++ b/packages/llvm/llvm-2.4/fix-build.patch
@@ -1,8 +1,21 @@
 Index: llvm-2.4/Makefile.rules
 ===================================================================
---- llvm-2.4.orig/Makefile.rules	2009-01-05 16:16:53.693946445 +0100
-+++ llvm-2.4/Makefile.rules	2009-01-05 16:17:18.149945262 +0100
-@@ -436,7 +436,7 @@
+--- llvm-2.4.orig/Makefile.rules	2008-10-03 23:24:52.000000000 +0200
++++ llvm-2.4/Makefile.rules	2009-01-16 03:19:06.000000000 +0100
+@@ -309,11 +309,7 @@
+ #--------------------------------------------------------------------
+ TargetMode :=
+ ifeq ($(LLVM_CROSS_COMPILING),1)
+-  ifeq ($(BUILD_COMPONENT),1)
+-    TargetMode := Build
+-  else
+-    TargetMode := Host
+-  endif
++  TargetMode := Host
+   BuildLLVMToolDir := $(LLVM_OBJ_ROOT)/$(BuildMode)/Build/bin
+ endif
+ 
+@@ -436,7 +432,7 @@
  ifdef EXAMPLE_TOOL
    LD.Flags += -rpath $(ExmplDir) -export-dynamic
  else
@@ -13,8 +26,8 @@ Index: llvm-2.4/Makefile.rules
  
 Index: llvm-2.4/lib/ExecutionEngine/JIT/JIT.cpp
 ===================================================================
---- llvm-2.4.orig/lib/ExecutionEngine/JIT/JIT.cpp	2009-01-05 15:36:34.901945895 +0100
-+++ llvm-2.4/lib/ExecutionEngine/JIT/JIT.cpp	2009-01-05 15:39:21.580362436 +0100
+--- llvm-2.4.orig/lib/ExecutionEngine/JIT/JIT.cpp	2008-09-24 18:25:55.000000000 +0200
++++ llvm-2.4/lib/ExecutionEngine/JIT/JIT.cpp	2009-01-16 03:16:27.000000000 +0100
 @@ -65,7 +65,7 @@
  }
  
@@ -33,3 +46,20 @@ Index: llvm-2.4/lib/ExecutionEngine/JIT/JIT.cpp
  #if defined(__APPLE__)
    struct LibgccObjectInfo* LOI = (struct LibgccObjectInfo*)
      _keymgr_get_and_lock_processwide_ptr(KEYMGR_GCC3_DW2_OBJ_LIST);
+Index: llvm-2.4/Makefile
+===================================================================
+--- llvm-2.4.orig/Makefile	2009-01-16 03:16:48.000000000 +0100
++++ llvm-2.4/Makefile	2009-01-16 03:17:15.000000000 +0100
+@@ -27,9 +27,9 @@
+ 
+ # When cross-compiling, there are some things (tablegen) that need to
+ # be build for the build system.
+-ifeq ($(LLVM_CROSS_COMPILING),1)
+-  BUILD_TARGET_DIRS := lib/System lib/Support utils
+-endif
++#ifeq ($(LLVM_CROSS_COMPILING),1)
++#  BUILD_TARGET_DIRS := lib/System lib/Support utils
++#endif
+ 
+ # llvm-gcc4 doesn't need runtime libs.  llvm-gcc4 is the only supported one.
+ # FIXME: Remove runtime entirely once we have an understanding of where
diff --git a/packages/llvm/llvm_2.4.bb b/packages/llvm/llvm_2.4.bb
index d06e4a3..c1ad694 100644
--- a/packages/llvm/llvm_2.4.bb
+++ b/packages/llvm/llvm_2.4.bb
@@ -12,14 +12,13 @@ DEPENDS = "llvm-native"
 inherit autotools
 
 do_compile() {
-	# tblgen doesnt want to link correctly. Pull the one in we have in staging.
+	# The build wants these binaries, together with the build-fix patch
+  # they are not compiled again (which would not work).
+  # Most important aspect is removing BUILD_TARGET_DIRS variable.
 	install -d Release/Build/bin
 	cp ${STAGING_BINDIR_NATIVE}/tblgen Release/Build/bin
 	cp ${STAGING_BINDIR_NATIVE}/fpcmp Release/Build/bin
 	cp ${STAGING_BINDIR_NATIVE}/llvm-PerfectShuffle Release/Build/bin
-	install -d Release/Build/lib
-	touch Release/Build/lib/libLLVMSupport.a
-	touch Release/Build/lib/libLLVMSystem.a
 	
 	oe_runmake
 }





More information about the Openembedded-commits mailing list