Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/3] Misc fixes related to x32
@ 2011-07-13 12:59 nitin.a.kamble
  2011-07-13 12:59 ` [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars nitin.a.kamble
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: nitin.a.kamble @ 2011-07-13 12:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

The following changes since commit 18a99c8500c7daa586fbe9f9d4e8398ebc95266f:

  udev-172: add a newer version for newer kernel (2011-07-13 05:55:54 -0700)

are available in the git repository at:
  git://git.pokylinux.org/poky-contrib nitin/x32
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/x32

Nitin A Kamble (3):
  bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars
  glib-2.0: fix makefiles
  openssl: compilation fixes for x32

 meta/classes/allarch.bbclass                       |    2 +
 meta/classes/cross-canadian.bbclass                |    2 +
 meta/classes/cross.bbclass                         |    2 +
 meta/classes/crosssdk.bbclass                      |    2 +
 meta/classes/kernel.bbclass                        |    4 +
 meta/classes/native.bbclass                        |   10 ++-
 meta/classes/nativesdk.bbclass                     |    4 +
 meta/classes/toolchain-scripts.bbclass             |    5 +-
 meta/conf/bitbake.conf                             |   21 ++++--
 meta/conf/documentation.conf                       |    2 +
 .../openssl/openssl-0.9.8r/x32_compile_fix.patch   |   74 ++++++++++++++++++++
 meta/recipes-connectivity/openssl/openssl.inc      |    5 ++
 .../recipes-connectivity/openssl/openssl_0.9.8r.bb |    5 +-
 .../glib-2.0/glib-2.0/x32_compile_fix.patch        |   65 +++++++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb      |    3 +-
 15 files changed, 192 insertions(+), 14 deletions(-)
 create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8r/x32_compile_fix.patch
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/x32_compile_fix.patch

-- 
1.7.5.4




^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars
  2011-07-13 12:59 [PATCH 0/3] Misc fixes related to x32 nitin.a.kamble
@ 2011-07-13 12:59 ` nitin.a.kamble
  2011-07-13 21:12   ` Khem Raj
  2011-07-13 12:59 ` [PATCH 2/3] glib-2.0: fix makefiles nitin.a.kamble
  2011-07-13 12:59 ` [PATCH 3/3] openssl: compilation fixes for x32 nitin.a.kamble
  2 siblings, 1 reply; 6+ messages in thread
From: nitin.a.kamble @ 2011-07-13 12:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Just like TARGET_CC_ARCH, HOST_CC_ARCH, BUILD_CC_ARCH, SDK_CC_ARCH
define similar variables for LD & AS.

This is needed because for x32 need special parameters to be passed
to the "gcc" as well as "ld" & "as".

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/allarch.bbclass           |    2 ++
 meta/classes/cross-canadian.bbclass    |    2 ++
 meta/classes/cross.bbclass             |    2 ++
 meta/classes/crosssdk.bbclass          |    2 ++
 meta/classes/kernel.bbclass            |    4 ++++
 meta/classes/native.bbclass            |   10 +++++++---
 meta/classes/nativesdk.bbclass         |    4 ++++
 meta/classes/toolchain-scripts.bbclass |    5 +++--
 meta/conf/bitbake.conf                 |   21 +++++++++++++++------
 meta/conf/documentation.conf           |    2 ++
 10 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
index e3ac392..2d25850 100644
--- a/meta/classes/allarch.bbclass
+++ b/meta/classes/allarch.bbclass
@@ -13,4 +13,6 @@ INHIBIT_DEFAULT_DEPS = "1"
 TARGET_ARCH = "allarch"
 TARGET_OS = "linux"
 TARGET_CC_ARCH = "none"
+TARGET_LD_ARCH = "none"
+TARGET_AS_ARCH = "none"
 PACKAGE_EXTRA_ARCHS = ""
diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass
index edd51da..5669fe0 100644
--- a/meta/classes/cross-canadian.bbclass
+++ b/meta/classes/cross-canadian.bbclass
@@ -42,6 +42,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
 HOST_OS = "${SDK_OS}"
 HOST_PREFIX = "${SDK_PREFIX}"
 HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_LD_ARCH = "${SDK_LD_ARCH}"
+HOST_AS_ARCH = "${SDK_AS_ARCH}"
 
 #assign DPKG_ARCH
 DPKG_ARCH = "${SDK_ARCH}"
diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass
index f9fd07a..86049c8 100644
--- a/meta/classes/cross.bbclass
+++ b/meta/classes/cross.bbclass
@@ -19,6 +19,8 @@ HOST_VENDOR = "${BUILD_VENDOR}"
 HOST_OS = "${BUILD_OS}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_LD_ARCH = "${BUILD_LD_ARCH}"
+HOST_AS_ARCH = "${BUILD_AS_ARCH}"
 
 STAGING_DIR_HOST = "${STAGING_DIR}/${BASEPKG_HOST_SYS}"
 
diff --git a/meta/classes/crosssdk.bbclass b/meta/classes/crosssdk.bbclass
index 3952ebd..5016762 100644
--- a/meta/classes/crosssdk.bbclass
+++ b/meta/classes/crosssdk.bbclass
@@ -9,6 +9,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
 TARGET_OS = "${SDK_OS}"
 TARGET_PREFIX = "${SDK_PREFIX}"
 TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_LD_ARCH = "${SDK_LD_ARCH}"
+TARGET_AS_ARCH = "${SDK_AS_ARCH}"
 TARGET_FPU = ""
 
 target_libdir = "${SDKPATHNATIVE}${libdir_nativesdk}"
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index b71a650..5a4e097 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -37,6 +37,7 @@ KERNEL_RELEASE ?= "${KERNEL_VERSION}"
 
 KERNEL_CCSUFFIX ?= ""
 KERNEL_LDSUFFIX ?= ""
+KERNEL_ASSUFFIX ?= ""
 
 # Set TARGET_??_KERNEL_ARCH in the machine .conf to set architecture
 # specific options necessary for building the kernel and modules.
@@ -45,9 +46,12 @@ TARGET_CC_KERNEL_ARCH ?= ""
 HOST_CC_KERNEL_ARCH ?= "${TARGET_CC_KERNEL_ARCH}"
 TARGET_LD_KERNEL_ARCH ?= ""
 HOST_LD_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
+TARGET_AS_KERNEL_ARCH ?= ""
+HOST_AS_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
 
 KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
 KERNEL_LD = "${LD}${KERNEL_LDSUFFIX} ${HOST_LD_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
+KERNEL_AS = "${AS}${KERNEL_ASSUFFIX} ${HOST_AS_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
 
 # Where built kernel lies in the kernel tree
 KERNEL_OUTPUT ?= "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass
index 1e8de95..1f3b4ef 100644
--- a/meta/classes/native.bbclass
+++ b/meta/classes/native.bbclass
@@ -28,6 +28,8 @@ TARGET_OS = "${BUILD_OS}"
 TARGET_VENDOR = "${BUILD_VENDOR}"
 TARGET_PREFIX = "${BUILD_PREFIX}"
 TARGET_CC_ARCH = "${BUILD_CC_ARCH}"
+TARGET_LD_ARCH = "${BUILD_LD_ARCH}"
+TARGET_AS_ARCH = "${BUILD_AS_ARCH}"
 TARGET_FPU = ""
 
 HOST_ARCH = "${BUILD_ARCH}"
@@ -35,6 +37,8 @@ HOST_OS = "${BUILD_OS}"
 HOST_VENDOR = "${BUILD_VENDOR}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_LD_ARCH = "${BUILD_LD_ARCH}"
+HOST_AS_ARCH = "${BUILD_AS_ARCH}"
 
 CPPFLAGS = "${BUILD_CPPFLAGS}"
 CFLAGS = "${BUILD_CFLAGS}"
@@ -54,11 +58,11 @@ export CONFIG_SITE = ""
 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}"
 export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}"
-export CPP = "${HOST_PREFIX}gcc -E"
-export LD = "${HOST_PREFIX}ld"
+export CPP = "${HOST_PREFIX}gcc -E ${HOST_CC_ARCH}"
+export LD = "${HOST_PREFIX}ld ${HOST_LD_ARCH}"
 export CCLD = "${CC}"
 export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
+export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
 export RANLIB = "${HOST_PREFIX}ranlib"
 export STRIP = "${HOST_PREFIX}strip"
 
diff --git a/meta/classes/nativesdk.bbclass b/meta/classes/nativesdk.bbclass
index 3fe4bf9..39e6f76 100644
--- a/meta/classes/nativesdk.bbclass
+++ b/meta/classes/nativesdk.bbclass
@@ -27,6 +27,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
 HOST_OS = "${SDK_OS}"
 HOST_PREFIX = "${SDK_PREFIX}"
 HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_LD_ARCH = "${SDK_LD_ARCH}"
+HOST_AS_ARCH = "${SDK_AS_ARCH}"
 #HOST_SYS = "${HOST_ARCH}${TARGET_VENDOR}-${HOST_OS}"
 
 TARGET_ARCH = "${SDK_ARCH}"
@@ -34,6 +36,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
 TARGET_OS = "${SDK_OS}"
 TARGET_PREFIX = "${SDK_PREFIX}"
 TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_LD_ARCH = "${SDK_LD_ARCH}"
+TARGET_AS_ARCH = "${SDK_AS_ARCH}"
 TARGET_FPU = ""
 
 CPPFLAGS = "${BUILDSDK_CPPFLAGS}"
diff --git a/meta/classes/toolchain-scripts.bbclass b/meta/classes/toolchain-scripts.bbclass
index 3301319..0f6c653 100644
--- a/meta/classes/toolchain-scripts.bbclass
+++ b/meta/classes/toolchain-scripts.bbclass
@@ -24,7 +24,7 @@ toolchain_create_sdk_env_script () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
-	echo 'export LDFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
 	echo 'export CPPFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="${SDKTARGETSYSROOT}"' >> $script
@@ -58,6 +58,7 @@ toolchain_create_tree_env_script () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH}"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH}"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH}"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${STAGING_DIR_NATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="${STAGING_DIR_TARGET}"' >> $script
 	echo 'export OECORE_ACLOCAL_OPTS="-I ${STAGING_DIR_NATIVE}/usr/share/aclocal"' >> $script
@@ -87,7 +88,7 @@ toolchain_create_sdk_env_script_for_installer () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
-	echo 'export LDFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
 	echo 'export CPPFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="##SDKTARGETSYSROOT##"' >> $script
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 463991d..a74f629 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -66,6 +66,8 @@ BUILD_VENDOR = ""
 BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
 BUILD_PREFIX = ""
 BUILD_CC_ARCH = ""
+BUILD_LD_ARCH = ""
+BUILD_AS_ARCH = ""
 BUILD_EXEEXT = ""
 
 HOST_ARCH = "${TARGET_ARCH}"
@@ -74,6 +76,8 @@ HOST_VENDOR = "${TARGET_VENDOR}"
 HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 HOST_PREFIX = "${TARGET_PREFIX}"
 HOST_CC_ARCH = "${TARGET_CC_ARCH}"
+HOST_LD_ARCH = "${TARGET_LD_ARCH}"
+HOST_AS_ARCH = "${TARGET_AS_ARCH}"
 HOST_EXEEXT = ""
 
 TARGET_ARCH = "INVALID"
@@ -82,6 +86,8 @@ TARGET_VENDOR = "-oe"
 TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
 TARGET_PREFIX = "${TARGET_SYS}-"
 TARGET_CC_ARCH = ""
+TARGET_LD_ARCH = ""
+TARGET_AS_ARCH = ""
 
 SDK_ARCH = "${BUILD_ARCH}"
 SDK_OS = "${BUILD_OS}"
@@ -89,6 +95,8 @@ SDK_VENDOR = "-oesdk"
 SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + bb.data.getVar('SDK_OS', d, 1), ''][bb.data.getVar('SDK_OS', d, 1) == ('' or 'custom')]}"
 SDK_PREFIX = "${SDK_SYS}-"
 SDK_CC_ARCH = "${BUILD_CC_ARCH}"
+SDK_LD_ARCH = "${BUILD_LD_ARCH}"
+SDK_AS_ARCH = "${BUILD_AS_ARCH}"
 
 BASE_PACKAGE_ARCH = "${HOST_ARCH}"
 PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
@@ -390,11 +398,11 @@ export CCACHE_DIR = "${TMPDIR}/ccache/${HOST_SYS}/${PN}"
 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
 export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
 export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
-export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS}"
-export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS}"
+export CPP = "${HOST_PREFIX}gcc ${HOST_CC_ARCH} -E${TOOLCHAIN_OPTIONS}"
+export LD = "${HOST_PREFIX}ld ${HOST_LD_ARCH}${TOOLCHAIN_OPTIONS}"
 export CCLD = "${CC}"
 export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
+export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
 export RANLIB = "${HOST_PREFIX}ranlib"
 export STRIP = "${HOST_PREFIX}strip"
 export OBJCOPY = "${HOST_PREFIX}objcopy"
@@ -405,10 +413,11 @@ PYTHON = "${@sys.executable}"
 export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
 export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
 export BUILD_F77 = "${CCACHE}${BUILD_PREFIX}g77 ${BUILD_CC_ARCH}"
-export BUILD_CPP = "${BUILD_PREFIX}cpp"
-export BUILD_LD = "${BUILD_PREFIX}ld"
-export BUILD_CCLD = "${BUILD_PREFIX}gcc"
+export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}"
+export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
+export BUILD_CCLD = "${BUILD_CC}"
 export BUILD_AR = "${BUILD_PREFIX}ar"
+export BUILD_AS = "${BUILD_PREFIX}as ${HOST_AS_ARCH}"
 export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
 export BUILD_STRIP = "${BUILD_PREFIX}strip"
 export BUILD_NM = "${BUILD_PREFIX}nm"
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index d984d0d..3aeba8d 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -13,6 +13,7 @@ BUILD_VENDOR[doc] = "FIXME"
 BUILD_SYS[doc] = "FIXME"
 BUILD_PREFIX[doc] = "FIXME"
 BUILD_CC_ARCH[doc] = "FIXME"
+BUILD_LD_ARCH[doc] = "FIXME"
 
 HOST_ARCH[doc] = "The name of the target architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base"
 HOST_OS[doc] = "The name of the target operating system. Normally the same as the TARGET_OS. \
@@ -21,6 +22,7 @@ HOST_VENDOR[doc] = "The name of the vendor. Normally same as the TARGET_VENDOR.
 HOST_SYS[doc] = "FIXME"
 HOST_PREFIX[doc] = "Normally same as the TARGET_PREFIX. @see TARGET_PREFIX @group base"
 HOST_CC_ARCH[doc] = "Normally same as the TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base"
+HOST_LD_ARCH[doc] = "Normally same as the TARGET_LD_ARCH. @see TARGET_LD_ARCH @group base"
 HOST_NONSYSV[doc] = 'This flag can be set to "1" if the host system is not SysV compatible. E.g.\
 fakeroot-native will be build with tcp as IPC implementation.'
 
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/3] glib-2.0: fix makefiles
  2011-07-13 12:59 [PATCH 0/3] Misc fixes related to x32 nitin.a.kamble
  2011-07-13 12:59 ` [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars nitin.a.kamble
@ 2011-07-13 12:59 ` nitin.a.kamble
  2011-07-14 14:09   ` Richard Purdie
  2011-07-13 12:59 ` [PATCH 3/3] openssl: compilation fixes for x32 nitin.a.kamble
  2 siblings, 1 reply; 6+ messages in thread
From: nitin.a.kamble @ 2011-07-13 12:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

x32 exposed this bug in the makefiles.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../glib-2.0/glib-2.0/x32_compile_fix.patch        |   65 ++++++++++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb      |    3 +-
 2 files changed, 67 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/x32_compile_fix.patch

diff --git a/meta/recipes-core/glib-2.0/glib-2.0/x32_compile_fix.patch b/meta/recipes-core/glib-2.0/glib-2.0/x32_compile_fix.patch
new file mode 100644
index 0000000..b25516e
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0/x32_compile_fix.patch
@@ -0,0 +1,65 @@
+Received from H J Liu @intel
+UpstreamStatus: Pending
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/07/13
+
+--- glib-2.28.8/glib/Makefile.am.x32	2011-06-05 16:18:49.000000000 -0700
++++ glib-2.28.8/glib/Makefile.am	2011-07-13 07:00:51.350088697 -0700
+@@ -347,10 +347,10 @@ INSTALL_PROGS=
+ 
+ if ENABLE_DTRACE
+ glib_probes.h: glib_probes.d Makefile
+-	$(DTRACE) -C -h -s $< -o $@.tmp
++	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -C -h -s $< -o $@.tmp
+ 	sed -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," < $@.tmp > $@ && rm -f $@.tmp
+ glib_probes.o: glib_probes.d Makefile
+-	$(DTRACE) -G -s $< -o $@
++	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -G -s $< -o $@
+ BUILT_SOURCES += glib_probes.h glib_probes.o
+ CLEANFILES += glib_probes.h glib_probes.h.tmp
+ libglib_2_0_la_LIBADD += glib_probes.o
+--- glib-2.28.8/glib/Makefile.in.x32	2011-06-05 16:24:51.000000000 -0700
++++ glib-2.28.8/glib/Makefile.in	2011-07-13 07:00:51.351088697 -0700
+@@ -1745,10 +1745,10 @@ uninstall-local: uninstall-ms-lib uninst
+ @OS_WIN32_AND_DLL_COMPILATION_FALSE@uninstall-def-file:
+ 
+ @ENABLE_DTRACE_TRUE@glib_probes.h: glib_probes.d Makefile
+-@ENABLE_DTRACE_TRUE@	$(DTRACE) -C -h -s $< -o $@.tmp
++@ENABLE_DTRACE_TRUE@	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -C -h -s $< -o $@.tmp
+ @ENABLE_DTRACE_TRUE@	sed -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," < $@.tmp > $@ && rm -f $@.tmp
+ @ENABLE_DTRACE_TRUE@glib_probes.o: glib_probes.d Makefile
+-@ENABLE_DTRACE_TRUE@	$(DTRACE) -G -s $< -o $@
++@ENABLE_DTRACE_TRUE@	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -G -s $< -o $@
+ 
+ gspawn-win32-helper-console.c:
+ 	echo '#define HELPER_CONSOLE' >$@
+--- glib-2.28.8/gobject/Makefile.am.x32	2011-06-05 16:18:50.000000000 -0700
++++ glib-2.28.8/gobject/Makefile.am	2011-07-13 07:09:42.410088595 -0700
+@@ -140,10 +140,10 @@ BUILT_SOURCES = gmarshal.h gmarshal.c
+ 
+ if ENABLE_DTRACE
+ gobject_probes.h: gobject_probes.d Makefile
+-	$(DTRACE) -C -h -s $< -o $@.tmp
++	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -C -h -s $< -o $@.tmp
+ 	sed -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," < $@.tmp > $@ && rm -f $@.tmp
+ gobject_probes.o: gobject_probes.d Makefile
+-	$(DTRACE) -G -s $< -o $@
++	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -G -s $< -o $@
+ BUILT_SOURCES += gobject_probes.h gobject_probes.o
+ CLEANFILES += gobject_probes.h
+ libgobject_2_0_la_LIBADD += gobject_probes.o
+--- glib-2.28.8/gobject/Makefile.in.x32	2011-06-05 16:24:52.000000000 -0700
++++ glib-2.28.8/gobject/Makefile.in	2011-07-13 07:10:00.365088596 -0700
+@@ -1430,10 +1430,10 @@ uninstall-ms-lib:
+ @OS_WIN32_AND_DLL_COMPILATION_FALSE@uninstall-def-file:
+ 
+ @ENABLE_DTRACE_TRUE@gobject_probes.h: gobject_probes.d Makefile
+-@ENABLE_DTRACE_TRUE@	$(DTRACE) -C -h -s $< -o $@.tmp
++@ENABLE_DTRACE_TRUE@	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -C -h -s $< -o $@.tmp
+ @ENABLE_DTRACE_TRUE@	sed -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," < $@.tmp > $@ && rm -f $@.tmp
+ @ENABLE_DTRACE_TRUE@gobject_probes.o: gobject_probes.d Makefile
+-@ENABLE_DTRACE_TRUE@	$(DTRACE) -G -s $< -o $@
++@ENABLE_DTRACE_TRUE@	CC="$(CC)" CFLAGS="$(CFLAGS)" $(DTRACE) -G -s $< -o $@
+ 
+ gmarshal.h: stamp-gmarshal.h
+ 	@true
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb
index a2e609f..a793eb0 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.28.8.bb
@@ -1,6 +1,6 @@
 require glib.inc
 
-PR = "r2"
+PR = "r3"
 PE = "1"
 
 SRC_URI = "${GNOME_MIRROR}/glib/2.28/glib-${PV}.tar.bz2 \
@@ -9,6 +9,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/2.28/glib-${PV}.tar.bz2 \
            file://g_once_init_enter.patch \
            file://0003-gatomic-proper-pointer-get-cast.patch.patch \
            file://0005-glib-mkenums-interpreter.patch.patch \
+           file://x32_compile_fix.patch \
           "
 # Only apply this patch for target recipe on uclibc
 SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/3] openssl: compilation fixes for x32
  2011-07-13 12:59 [PATCH 0/3] Misc fixes related to x32 nitin.a.kamble
  2011-07-13 12:59 ` [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars nitin.a.kamble
  2011-07-13 12:59 ` [PATCH 2/3] glib-2.0: fix makefiles nitin.a.kamble
@ 2011-07-13 12:59 ` nitin.a.kamble
  2 siblings, 0 replies; 6+ messages in thread
From: nitin.a.kamble @ 2011-07-13 12:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../openssl/openssl-0.9.8r/x32_compile_fix.patch   |   74 ++++++++++++++++++++
 meta/recipes-connectivity/openssl/openssl.inc      |    5 ++
 .../recipes-connectivity/openssl/openssl_0.9.8r.bb |    5 +-
 3 files changed, 82 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8r/x32_compile_fix.patch

diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8r/x32_compile_fix.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8r/x32_compile_fix.patch
new file mode 100644
index 0000000..24f2df5
--- /dev/null
+++ b/meta/recipes-connectivity/openssl/openssl-0.9.8r/x32_compile_fix.patch
@@ -0,0 +1,74 @@
+UpstreamStatus: Pending
+
+Received from H J Liu @ Intel
+
+This patch fixes the compilation for x32 build
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/07/13
+
+Index: openssl-0.9.8r/Configure
+===================================================================
+--- openssl-0.9.8r.orig/Configure
++++ openssl-0.9.8r/Configure
+@@ -390,6 +390,7 @@ my %table=(
+ "linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+ "linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+ "linux-x86_64",	"gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"linux-x32",	"gcc:-mx32 -DL_ENDIAN -DTERMIO -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+ #### SPARC Linux setups
+ # Ray Miller <ray.miller@computing-services.oxford.ac.uk> has patiently
+ # assisted with debugging of following two configs.
+Index: openssl-0.9.8r/crypto/bn/asm/x86_64-gcc.c
+===================================================================
+--- openssl-0.9.8r.orig/crypto/bn/asm/x86_64-gcc.c
++++ openssl-0.9.8r/crypto/bn/asm/x86_64-gcc.c
+@@ -55,7 +55,11 @@
+  *    machine.
+  */
+ 
++#if defined _WIN64 || !defined __LP64__
++#define BN_ULONG unsigned long long
++#else
+ #define BN_ULONG unsigned long
++#endif
+ 
+ #undef mul
+ #undef mul_add
+@@ -188,9 +192,9 @@ BN_ULONG bn_add_words (BN_ULONG *rp, con
+ 	asm (
+ 	"	subq	%2,%2		\n"
+ 	".align 16			\n"
+-	"1:	movq	(%4,%2,8),%0	\n"
+-	"	adcq	(%5,%2,8),%0	\n"
+-	"	movq	%0,(%3,%2,8)	\n"
++	"1:	movq	(%q4,%2,8),%0	\n"
++	"	adcq	(%q5,%2,8),%0	\n"
++	"	movq	%0,(%q3,%2,8)	\n"
+ 	"	leaq	1(%2),%2	\n"
+ 	"	loop	1b		\n"
+ 	"	sbbq	%0,%0		\n"
+@@ -211,9 +215,9 @@ BN_ULONG bn_sub_words (BN_ULONG *rp, con
+ 	asm (
+ 	"	subq	%2,%2		\n"
+ 	".align 16			\n"
+-	"1:	movq	(%4,%2,8),%0	\n"
+-	"	sbbq	(%5,%2,8),%0	\n"
+-	"	movq	%0,(%3,%2,8)	\n"
++	"1:	movq	(%q4,%2,8),%0	\n"
++	"	sbbq	(%q5,%2,8),%0	\n"
++	"	movq	%0,(%q3,%2,8)	\n"
+ 	"	leaq	1(%2),%2	\n"
+ 	"	loop	1b		\n"
+ 	"	sbbq	%0,%0		\n"
+Index: openssl-0.9.8r/crypto/bn/bn_exp.c
+===================================================================
+--- openssl-0.9.8r.orig/crypto/bn/bn_exp.c
++++ openssl-0.9.8r/crypto/bn/bn_exp.c
+@@ -561,7 +561,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU
+ 
+ /* Given a pointer value, compute the next address that is a cache line multiple. */
+ #define MOD_EXP_CTIME_ALIGN(x_) \
+-	((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((BN_ULONG)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
++	((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((unsigned long)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
+ 
+ /* This variant of BN_mod_exp_mont() uses fixed windows and the special
+  * precomputation memory layout to limit data-dependency to a minimum
diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
index d42ae1c..f62b936 100644
--- a/meta/recipes-connectivity/openssl/openssl.inc
+++ b/meta/recipes-connectivity/openssl/openssl.inc
@@ -71,6 +71,11 @@ do_configure () {
 	linux-i686)
 		target=debian-i386-i686/cmov
 		;;
+	linux-x86_64)
+		if [ "x${TARGET_CC_ARCH}" = "x-mx32" ]; then
+			target=linux-x32
+		fi
+		;;
 	linux-mips)
 		target=debian-mips
 		;;
diff --git a/meta/recipes-connectivity/openssl/openssl_0.9.8r.bb b/meta/recipes-connectivity/openssl/openssl_0.9.8r.bb
index c95b1f1..a42bfcd 100644
--- a/meta/recipes-connectivity/openssl/openssl_0.9.8r.bb
+++ b/meta/recipes-connectivity/openssl/openssl_0.9.8r.bb
@@ -1,6 +1,6 @@
 require openssl.inc
 
-PR = "r2"
+PR = "r3"
 SRC_URI += "file://debian/ca.patch \
             file://debian/config-hurd.patch;apply=no \
             file://debian/debian-targets.patch \
@@ -25,6 +25,7 @@ SRC_URI[md5sum] = "0352932ea863bc02b056cda7c9ac5b79"
 SRC_URI[sha256sum] = "42b2368f786b05ed3be846838dce126b4e8e3dba8fb2e0ce83102df28c102fad"
 
 SRC_URI += "file://configure-targets.patch \
-            file://shared-libs.patch"
+            file://shared-libs.patch \
+            file://x32_compile_fix.patch"
 
 BBCLASSEXTEND = "native nativesdk"
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars
  2011-07-13 12:59 ` [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars nitin.a.kamble
@ 2011-07-13 21:12   ` Khem Raj
  0 siblings, 0 replies; 6+ messages in thread
From: Khem Raj @ 2011-07-13 21:12 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Wed, Jul 13, 2011 at 5:59 AM,  <nitin.a.kamble@intel.com> wrote:
> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>
> Just like TARGET_CC_ARCH, HOST_CC_ARCH, BUILD_CC_ARCH, SDK_CC_ARCH
> define similar variables for LD & AS.
>
> This is needed because for x32 need special parameters to be passed
> to the "gcc" as well as "ld" & "as".


IMO this ties to multilib work that we have been discussing and doing.
I dont know if we are trying to get rid of *_CC_ARCH variables in favor
of some generic way of conveying ABI information to toolchain and build
system but that would be a nicer approach.

>
> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> ---
>  meta/classes/allarch.bbclass           |    2 ++
>  meta/classes/cross-canadian.bbclass    |    2 ++
>  meta/classes/cross.bbclass             |    2 ++
>  meta/classes/crosssdk.bbclass          |    2 ++
>  meta/classes/kernel.bbclass            |    4 ++++
>  meta/classes/native.bbclass            |   10 +++++++---
>  meta/classes/nativesdk.bbclass         |    4 ++++
>  meta/classes/toolchain-scripts.bbclass |    5 +++--
>  meta/conf/bitbake.conf                 |   21 +++++++++++++++------
>  meta/conf/documentation.conf           |    2 ++
>  10 files changed, 43 insertions(+), 11 deletions(-)
>
> diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
> index e3ac392..2d25850 100644
> --- a/meta/classes/allarch.bbclass
> +++ b/meta/classes/allarch.bbclass
> @@ -13,4 +13,6 @@ INHIBIT_DEFAULT_DEPS = "1"
>  TARGET_ARCH = "allarch"
>  TARGET_OS = "linux"
>  TARGET_CC_ARCH = "none"
> +TARGET_LD_ARCH = "none"
> +TARGET_AS_ARCH = "none"
>  PACKAGE_EXTRA_ARCHS = ""
> diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass
> index edd51da..5669fe0 100644
> --- a/meta/classes/cross-canadian.bbclass
> +++ b/meta/classes/cross-canadian.bbclass
> @@ -42,6 +42,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
>  HOST_OS = "${SDK_OS}"
>  HOST_PREFIX = "${SDK_PREFIX}"
>  HOST_CC_ARCH = "${SDK_CC_ARCH}"
> +HOST_LD_ARCH = "${SDK_LD_ARCH}"
> +HOST_AS_ARCH = "${SDK_AS_ARCH}"
>
>  #assign DPKG_ARCH
>  DPKG_ARCH = "${SDK_ARCH}"
> diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass
> index f9fd07a..86049c8 100644
> --- a/meta/classes/cross.bbclass
> +++ b/meta/classes/cross.bbclass
> @@ -19,6 +19,8 @@ HOST_VENDOR = "${BUILD_VENDOR}"
>  HOST_OS = "${BUILD_OS}"
>  HOST_PREFIX = "${BUILD_PREFIX}"
>  HOST_CC_ARCH = "${BUILD_CC_ARCH}"
> +HOST_LD_ARCH = "${BUILD_LD_ARCH}"
> +HOST_AS_ARCH = "${BUILD_AS_ARCH}"
>
>  STAGING_DIR_HOST = "${STAGING_DIR}/${BASEPKG_HOST_SYS}"
>
> diff --git a/meta/classes/crosssdk.bbclass b/meta/classes/crosssdk.bbclass
> index 3952ebd..5016762 100644
> --- a/meta/classes/crosssdk.bbclass
> +++ b/meta/classes/crosssdk.bbclass
> @@ -9,6 +9,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
>  TARGET_OS = "${SDK_OS}"
>  TARGET_PREFIX = "${SDK_PREFIX}"
>  TARGET_CC_ARCH = "${SDK_CC_ARCH}"
> +TARGET_LD_ARCH = "${SDK_LD_ARCH}"
> +TARGET_AS_ARCH = "${SDK_AS_ARCH}"
>  TARGET_FPU = ""
>
>  target_libdir = "${SDKPATHNATIVE}${libdir_nativesdk}"
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index b71a650..5a4e097 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -37,6 +37,7 @@ KERNEL_RELEASE ?= "${KERNEL_VERSION}"
>
>  KERNEL_CCSUFFIX ?= ""
>  KERNEL_LDSUFFIX ?= ""
> +KERNEL_ASSUFFIX ?= ""
>
>  # Set TARGET_??_KERNEL_ARCH in the machine .conf to set architecture
>  # specific options necessary for building the kernel and modules.
> @@ -45,9 +46,12 @@ TARGET_CC_KERNEL_ARCH ?= ""
>  HOST_CC_KERNEL_ARCH ?= "${TARGET_CC_KERNEL_ARCH}"
>  TARGET_LD_KERNEL_ARCH ?= ""
>  HOST_LD_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
> +TARGET_AS_KERNEL_ARCH ?= ""
> +HOST_AS_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
>
>  KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
>  KERNEL_LD = "${LD}${KERNEL_LDSUFFIX} ${HOST_LD_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
> +KERNEL_AS = "${AS}${KERNEL_ASSUFFIX} ${HOST_AS_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
>
>  # Where built kernel lies in the kernel tree
>  KERNEL_OUTPUT ?= "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
> diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass
> index 1e8de95..1f3b4ef 100644
> --- a/meta/classes/native.bbclass
> +++ b/meta/classes/native.bbclass
> @@ -28,6 +28,8 @@ TARGET_OS = "${BUILD_OS}"
>  TARGET_VENDOR = "${BUILD_VENDOR}"
>  TARGET_PREFIX = "${BUILD_PREFIX}"
>  TARGET_CC_ARCH = "${BUILD_CC_ARCH}"
> +TARGET_LD_ARCH = "${BUILD_LD_ARCH}"
> +TARGET_AS_ARCH = "${BUILD_AS_ARCH}"
>  TARGET_FPU = ""
>
>  HOST_ARCH = "${BUILD_ARCH}"
> @@ -35,6 +37,8 @@ HOST_OS = "${BUILD_OS}"
>  HOST_VENDOR = "${BUILD_VENDOR}"
>  HOST_PREFIX = "${BUILD_PREFIX}"
>  HOST_CC_ARCH = "${BUILD_CC_ARCH}"
> +HOST_LD_ARCH = "${BUILD_LD_ARCH}"
> +HOST_AS_ARCH = "${BUILD_AS_ARCH}"
>
>  CPPFLAGS = "${BUILD_CPPFLAGS}"
>  CFLAGS = "${BUILD_CFLAGS}"
> @@ -54,11 +58,11 @@ export CONFIG_SITE = ""
>  export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
>  export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}"
>  export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}"
> -export CPP = "${HOST_PREFIX}gcc -E"
> -export LD = "${HOST_PREFIX}ld"
> +export CPP = "${HOST_PREFIX}gcc -E ${HOST_CC_ARCH}"
> +export LD = "${HOST_PREFIX}ld ${HOST_LD_ARCH}"
>  export CCLD = "${CC}"
>  export AR = "${HOST_PREFIX}ar"
> -export AS = "${HOST_PREFIX}as"
> +export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
>  export RANLIB = "${HOST_PREFIX}ranlib"
>  export STRIP = "${HOST_PREFIX}strip"
>
> diff --git a/meta/classes/nativesdk.bbclass b/meta/classes/nativesdk.bbclass
> index 3fe4bf9..39e6f76 100644
> --- a/meta/classes/nativesdk.bbclass
> +++ b/meta/classes/nativesdk.bbclass
> @@ -27,6 +27,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
>  HOST_OS = "${SDK_OS}"
>  HOST_PREFIX = "${SDK_PREFIX}"
>  HOST_CC_ARCH = "${SDK_CC_ARCH}"
> +HOST_LD_ARCH = "${SDK_LD_ARCH}"
> +HOST_AS_ARCH = "${SDK_AS_ARCH}"
>  #HOST_SYS = "${HOST_ARCH}${TARGET_VENDOR}-${HOST_OS}"
>
>  TARGET_ARCH = "${SDK_ARCH}"
> @@ -34,6 +36,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
>  TARGET_OS = "${SDK_OS}"
>  TARGET_PREFIX = "${SDK_PREFIX}"
>  TARGET_CC_ARCH = "${SDK_CC_ARCH}"
> +TARGET_LD_ARCH = "${SDK_LD_ARCH}"
> +TARGET_AS_ARCH = "${SDK_AS_ARCH}"
>  TARGET_FPU = ""
>
>  CPPFLAGS = "${BUILDSDK_CPPFLAGS}"
> diff --git a/meta/classes/toolchain-scripts.bbclass b/meta/classes/toolchain-scripts.bbclass
> index 3301319..0f6c653 100644
> --- a/meta/classes/toolchain-scripts.bbclass
> +++ b/meta/classes/toolchain-scripts.bbclass
> @@ -24,7 +24,7 @@ toolchain_create_sdk_env_script () {
>        fi
>        echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
>        echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
> -       echo 'export LDFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
> +       echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
>        echo 'export CPPFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
>        echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
>        echo 'export OECORE_TARGET_SYSROOT="${SDKTARGETSYSROOT}"' >> $script
> @@ -58,6 +58,7 @@ toolchain_create_tree_env_script () {
>        fi
>        echo 'export CFLAGS="${TARGET_CC_ARCH}"' >> $script
>        echo 'export CXXFLAGS="${TARGET_CC_ARCH}"' >> $script
> +       echo 'export LDFLAGS="${TARGET_LD_ARCH}"' >> $script
>        echo 'export OECORE_NATIVE_SYSROOT="${STAGING_DIR_NATIVE}"' >> $script
>        echo 'export OECORE_TARGET_SYSROOT="${STAGING_DIR_TARGET}"' >> $script
>        echo 'export OECORE_ACLOCAL_OPTS="-I ${STAGING_DIR_NATIVE}/usr/share/aclocal"' >> $script
> @@ -87,7 +88,7 @@ toolchain_create_sdk_env_script_for_installer () {
>        fi
>        echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
>        echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
> -       echo 'export LDFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
> +       echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
>        echo 'export CPPFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
>        echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
>        echo 'export OECORE_TARGET_SYSROOT="##SDKTARGETSYSROOT##"' >> $script
> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> index 463991d..a74f629 100644
> --- a/meta/conf/bitbake.conf
> +++ b/meta/conf/bitbake.conf
> @@ -66,6 +66,8 @@ BUILD_VENDOR = ""
>  BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
>  BUILD_PREFIX = ""
>  BUILD_CC_ARCH = ""
> +BUILD_LD_ARCH = ""
> +BUILD_AS_ARCH = ""
>  BUILD_EXEEXT = ""
>
>  HOST_ARCH = "${TARGET_ARCH}"
> @@ -74,6 +76,8 @@ HOST_VENDOR = "${TARGET_VENDOR}"
>  HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
>  HOST_PREFIX = "${TARGET_PREFIX}"
>  HOST_CC_ARCH = "${TARGET_CC_ARCH}"
> +HOST_LD_ARCH = "${TARGET_LD_ARCH}"
> +HOST_AS_ARCH = "${TARGET_AS_ARCH}"
>  HOST_EXEEXT = ""
>
>  TARGET_ARCH = "INVALID"
> @@ -82,6 +86,8 @@ TARGET_VENDOR = "-oe"
>  TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
>  TARGET_PREFIX = "${TARGET_SYS}-"
>  TARGET_CC_ARCH = ""
> +TARGET_LD_ARCH = ""
> +TARGET_AS_ARCH = ""
>
>  SDK_ARCH = "${BUILD_ARCH}"
>  SDK_OS = "${BUILD_OS}"
> @@ -89,6 +95,8 @@ SDK_VENDOR = "-oesdk"
>  SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + bb.data.getVar('SDK_OS', d, 1), ''][bb.data.getVar('SDK_OS', d, 1) == ('' or 'custom')]}"
>  SDK_PREFIX = "${SDK_SYS}-"
>  SDK_CC_ARCH = "${BUILD_CC_ARCH}"
> +SDK_LD_ARCH = "${BUILD_LD_ARCH}"
> +SDK_AS_ARCH = "${BUILD_AS_ARCH}"
>
>  BASE_PACKAGE_ARCH = "${HOST_ARCH}"
>  PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
> @@ -390,11 +398,11 @@ export CCACHE_DIR = "${TMPDIR}/ccache/${HOST_SYS}/${PN}"
>  export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
>  export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
>  export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
> -export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS}"
> -export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS}"
> +export CPP = "${HOST_PREFIX}gcc ${HOST_CC_ARCH} -E${TOOLCHAIN_OPTIONS}"
> +export LD = "${HOST_PREFIX}ld ${HOST_LD_ARCH}${TOOLCHAIN_OPTIONS}"
>  export CCLD = "${CC}"
>  export AR = "${HOST_PREFIX}ar"
> -export AS = "${HOST_PREFIX}as"
> +export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
>  export RANLIB = "${HOST_PREFIX}ranlib"
>  export STRIP = "${HOST_PREFIX}strip"
>  export OBJCOPY = "${HOST_PREFIX}objcopy"
> @@ -405,10 +413,11 @@ PYTHON = "${@sys.executable}"
>  export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
>  export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
>  export BUILD_F77 = "${CCACHE}${BUILD_PREFIX}g77 ${BUILD_CC_ARCH}"
> -export BUILD_CPP = "${BUILD_PREFIX}cpp"
> -export BUILD_LD = "${BUILD_PREFIX}ld"
> -export BUILD_CCLD = "${BUILD_PREFIX}gcc"
> +export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}"
> +export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
> +export BUILD_CCLD = "${BUILD_CC}"
>  export BUILD_AR = "${BUILD_PREFIX}ar"
> +export BUILD_AS = "${BUILD_PREFIX}as ${HOST_AS_ARCH}"
>  export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
>  export BUILD_STRIP = "${BUILD_PREFIX}strip"
>  export BUILD_NM = "${BUILD_PREFIX}nm"
> diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
> index d984d0d..3aeba8d 100644
> --- a/meta/conf/documentation.conf
> +++ b/meta/conf/documentation.conf
> @@ -13,6 +13,7 @@ BUILD_VENDOR[doc] = "FIXME"
>  BUILD_SYS[doc] = "FIXME"
>  BUILD_PREFIX[doc] = "FIXME"
>  BUILD_CC_ARCH[doc] = "FIXME"
> +BUILD_LD_ARCH[doc] = "FIXME"
>
>  HOST_ARCH[doc] = "The name of the target architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base"
>  HOST_OS[doc] = "The name of the target operating system. Normally the same as the TARGET_OS. \
> @@ -21,6 +22,7 @@ HOST_VENDOR[doc] = "The name of the vendor. Normally same as the TARGET_VENDOR.
>  HOST_SYS[doc] = "FIXME"
>  HOST_PREFIX[doc] = "Normally same as the TARGET_PREFIX. @see TARGET_PREFIX @group base"
>  HOST_CC_ARCH[doc] = "Normally same as the TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base"
> +HOST_LD_ARCH[doc] = "Normally same as the TARGET_LD_ARCH. @see TARGET_LD_ARCH @group base"
>  HOST_NONSYSV[doc] = 'This flag can be set to "1" if the host system is not SysV compatible. E.g.\
>  fakeroot-native will be build with tcp as IPC implementation.'
>
> --
> 1.7.5.4
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/3] glib-2.0: fix makefiles
  2011-07-13 12:59 ` [PATCH 2/3] glib-2.0: fix makefiles nitin.a.kamble
@ 2011-07-14 14:09   ` Richard Purdie
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2011-07-14 14:09 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Wed, 2011-07-13 at 05:59 -0700, nitin.a.kamble@intel.com wrote:
> From: Nitin A Kamble <nitin.a.kamble@intel.com>
> 
> x32 exposed this bug in the makefiles.

Nitin, could you perhaps document what the bug actually is? :) I can
guess but the patch header should really give a little more info.

Also, does this address some LDFLAGS QA warnings by any chance?

Cheers,

Richard





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-07-14 14:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-13 12:59 [PATCH 0/3] Misc fixes related to x32 nitin.a.kamble
2011-07-13 12:59 ` [PATCH 1/3] bitbake.conf, bbclasses: define *_LD_ARCH & *AS_ARCH vars nitin.a.kamble
2011-07-13 21:12   ` Khem Raj
2011-07-13 12:59 ` [PATCH 2/3] glib-2.0: fix makefiles nitin.a.kamble
2011-07-14 14:09   ` Richard Purdie
2011-07-13 12:59 ` [PATCH 3/3] openssl: compilation fixes for x32 nitin.a.kamble

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox