* Canadian SDK support
@ 2008-10-07 12:51 eha
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
2008-10-21 20:23 ` Canadian SDK support Esben Haabendal
0 siblings, 2 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel
Hi
I have added preliminary support for canadian cross-building of toolchain/SDK
images.
The idea is to be able to build any combination of host->target toolchain
with OE. The primary goal here (for me), is to be able build mingw32
toolchains for OpenEmbedded projects, so that those unlucky Windows
developers can build and debug applications using native development
tools.
To avoid messing with with existing recipes more than needed, and the
cross-sdk recipes in particular, I have introduce 3 new classes:
canadian-cross, canadian-native, and canadian-sdk.
As the name suggest, they can to some extend be compared to the existing
cross, native, and cross-sdk classes.
canadian-cross recipes are for building internal cross compiler tools,
which will be used to build for the sdk architecture (fx. i586-mingw32).
The host triplet for canadian-cross is
build, build, sdk
canadian-native recipes are for building internal libraries for sdk arch.
The host triplet for canadian-native is
build, sdk, sdk
canadian-sdk recipes are for building the actual sdk cross compiler tools
which should be run on the sdk architecture.
The host triplet for canadian-sdk is
build, sdk, target
Currently, I am able to build using
target = powerpc-linux
sdk = i586-mingw32
Tested on
build = i686-linux
build = x86_64_linux
The only supported versions are
binutils = 2.18
gcc = 4.2.2
glibc = 2.6.1 (nptl)
All the necessary changes can be pulled from
http://git.doredevelopment.dk/openembedded.git
git://git.doredevelopment.dk/openembedded.git
which is a branch of org.openembedded.dev from the git trial repository,
or you can apply the attached patches on top of org.openembedded.dev
yourself.
Next steps will be to extend with more target architectures and with some
*-linux sdk architechtures.
Diffstat:
classes/canadian-cross.bbclass | 68 ++++
classes/canadian-native.bbclass | 90 ++++++
classes/canadian-sdk.bbclass | 97 ++++++
classes/cross.bbclass | 1
classes/insane.bbclass | 6
classes/native.bbclass | 2
classes/package_ipk.bbclass | 10
classes/sdk.bbclass | 3
classes/siteinfo.bbclass | 8
conf/bitbake.conf | 23 +
packages/binutils/binutils-canadian-cross.inc | 28 +
packages/binutils/binutils-canadian-sdk_2.18.bb | 29 ++
packages/binutils/mingw-binutils-canadian-cross_2.17.50-20060824-1.bb | 11
packages/binutils/mingw-binutils_2.17.50-20060824-1.bb | 12
packages/gcc/gcc-4.2.2/canadian-build-modules-configure.patch | 22 +
packages/gcc/gcc-canadian-cross-initial.inc | 4
packages/gcc/gcc-canadian-sdk-build.inc | 81 +++++
packages/gcc/gcc-canadian-sdk-package.inc | 36 ++
packages/gcc/gcc-canadian-sdk_4.2.2.bb | 27 +
packages/gcc/gcc-package-sdk.inc | 14
packages/gcc/mingw-gcc-3.4.5-20060117-2/includedir.patch | 12
packages/gcc/mingw-gcc-build.inc | 35 ++
packages/gcc/mingw-gcc-canadian-cross-initial_3.4.5-20060117-2.bb | 7
packages/gcc/mingw-gcc-canadian-cross_3.4.5-20060117-2.bb | 26 +
packages/gcc/mingw-gcc_3.4.5-20060117-2.bb | 25 +
packages/meta/canadian-sdk.bb | 143 ++++++++++
packages/meta/external-toolchain.bb | 2
packages/meta/meta-toolchain.bb | 4
packages/mingw/mingw-runtime-headers_3.14.bb | 20 +
packages/mingw/mingw-runtime_3.14.bb | 21 +
packages/mingw/mingw-w32api-headers_3.11.bb | 20 +
packages/mingw/mingw-w32api_3.11.bb | 17 +
packages/tasks/task-sdk-canadian-host.bb | 24 +
Best regards,
Esben Haabendal
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk
2008-10-07 12:51 Canadian SDK support eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 02/13] gcc-package.inc: add ${HOST_EXEEXT} support (for canadian sdk support) eha
` (11 more replies)
2008-10-21 20:23 ` Canadian SDK support Esben Haabendal
1 sibling, 12 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/cross.bbclass | 1 +
classes/native.bbclass | 2 ++
classes/sdk.bbclass | 1 +
conf/bitbake.conf | 3 +++
4 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/classes/cross.bbclass b/classes/cross.bbclass
index a35f4df..5136236 100644
--- a/classes/cross.bbclass
+++ b/classes/cross.bbclass
@@ -13,6 +13,7 @@ HOST_VENDOR = "${BUILD_VENDOR}"
HOST_OS = "${BUILD_OS}"
HOST_PREFIX = "${BUILD_PREFIX}"
HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_EXEEXT = "${BUILD_EXEEXT}"
CPPFLAGS = "${BUILD_CPPFLAGS}"
CFLAGS = "${BUILD_CFLAGS}"
diff --git a/classes/native.bbclass b/classes/native.bbclass
index 4022cb0..0f3ada2 100644
--- a/classes/native.bbclass
+++ b/classes/native.bbclass
@@ -14,12 +14,14 @@ TARGET_OS = "${BUILD_OS}"
TARGET_VENDOR = "${BUILD_VENDOR}"
TARGET_PREFIX = "${BUILD_PREFIX}"
TARGET_CC_ARCH = "${BUILD_CC_ARCH}"
+TARGET_EXEEXT = "${BUILD_EXEEXT}"
HOST_ARCH = "${BUILD_ARCH}"
HOST_OS = "${BUILD_OS}"
HOST_VENDOR = "${BUILD_VENDOR}"
HOST_PREFIX = "${BUILD_PREFIX}"
HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_EXEEXT = "${BUILD_EXEEXT}"
CPPFLAGS = "${BUILD_CPPFLAGS}"
CFLAGS = "${BUILD_CFLAGS}"
diff --git a/classes/sdk.bbclass b/classes/sdk.bbclass
index a94332b..b746426 100644
--- a/classes/sdk.bbclass
+++ b/classes/sdk.bbclass
@@ -11,6 +11,7 @@ HOST_VENDOR = "${BUILD_VENDOR}"
HOST_OS = "${BUILD_OS}"
HOST_PREFIX = "${BUILD_PREFIX}"
HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_EXEEXT = "${BUILD_EXEEXT}"
CPPFLAGS = "${BUILD_CPPFLAGS}"
CFLAGS = "${BUILD_CFLAGS}"
diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 75eab15..51a18fd 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -71,6 +71,7 @@ BUILD_VENDOR = ""
BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
BUILD_PREFIX = ""
BUILD_CC_ARCH = ""
+BUILD_EXEEXT = ""
HOST_ARCH = "${TARGET_ARCH}"
HOST_OS = "${TARGET_OS}"
@@ -78,6 +79,7 @@ HOST_VENDOR = "${TARGET_VENDOR}"
HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
HOST_PREFIX = "${TARGET_PREFIX}"
HOST_CC_ARCH = "${TARGET_CC_ARCH}"
+HOST_EXEEXT = ""
TARGET_ARCH ?= "INVALID"
TARGET_OS = "INVALID"
@@ -85,6 +87,7 @@ TARGET_VENDOR = "${BUILD_VENDOR}"
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_EXEEXT = ""
BASE_PACKAGE_ARCH = "${HOST_ARCH}"
PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 02/13] gcc-package.inc: add ${HOST_EXEEXT} support (for canadian sdk support)
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 03/13] package_ipk.bbclass: add support for for canadian sdk ipkg eha
` (10 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
packages/gcc/gcc-package-sdk.inc | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/packages/gcc/gcc-package-sdk.inc b/packages/gcc/gcc-package-sdk.inc
index a36e632..6a494c7 100644
--- a/packages/gcc/gcc-package-sdk.inc
+++ b/packages/gcc/gcc-package-sdk.inc
@@ -9,10 +9,10 @@ PACKAGES = "${PN} ${PN}-doc"
FILES_${PN} = "\
${bindir}/* \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1${HOST_EXEEXT} \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2${HOST_EXEEXT} \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771${HOST_EXEEXT} \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus${HOST_EXEEXT} \
${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
${gcclibdir}/${TARGET_SYS}/${BINV}/specs \
${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \
@@ -35,10 +35,10 @@ do_install () {
rm -r ${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/install-tools
# We care about g++ not c++
- rm -f ${D}${bindir}/*c++
+ rm -f ${D}${bindir}/*c++${HOST_EXEEXT}
# We don't care about the gcc-<version> copies
- rm -f ${D}${bindir}/*gcc-?.?*
+ rm -f ${D}${bindir}/*gcc-?.?*${HOST_EXEEXT}
# We use libiberty from binutils
rm -f ${D}${prefix}/${TARGET_SYS}/lib/libiberty.a
@@ -49,7 +49,7 @@ do_install () {
for l in ${D}${bindir}/*; do
ln -sf "${bindir}/`basename $l`" "${D}${prefix}/${TARGET_SYS}/bin/`basename $l | sed -e 's,${TARGET_PREFIX},,'`"
done
- ln -sf "${bindir}/${TARGET_PREFIX}gcc" "${D}${prefix}/${TARGET_SYS}/bin/cc"
+ ln -sf "${bindir}/${TARGET_PREFIX}gcc${HOST_EXEEXT}" "${D}${prefix}/${TARGET_SYS}/bin/cc${HOST_EXEEXT}"
# Manually run the target stripper since we won't get it run by
# the packaging.
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 03/13] package_ipk.bbclass: add support for for canadian sdk ipkg
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
2008-10-07 12:51 ` [PATCH 02/13] gcc-package.inc: add ${HOST_EXEEXT} support (for canadian sdk support) eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 04/13] siteinfo.bbclass: add cygwin and mingw32 support eha
` (9 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/package_ipk.bbclass | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/classes/package_ipk.bbclass b/classes/package_ipk.bbclass
index f05b744..ad06475 100644
--- a/classes/package_ipk.bbclass
+++ b/classes/package_ipk.bbclass
@@ -5,6 +5,7 @@ IMAGE_PKGTYPE ?= "ipk"
IPKGCONF_TARGET = "${STAGING_ETCDIR_NATIVE}/opkg.conf"
IPKGCONF_SDK = "${STAGING_ETCDIR_NATIVE}/opkg-sdk.conf"
+IPKGCONF_CANSDK = "${STAGING_ETCDIR_NATIVE}/opkg-canadian-sdk.conf"
python package_ipk_fn () {
from bb import data
@@ -90,6 +91,10 @@ package_update_index_ipk () {
touch ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages
ipkg-make-index -r ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -p ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -l ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages.filelist -m ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/
fi
+ if [ -e ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/ ] ; then
+ touch ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages
+ ipkg-make-index -r ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages -p ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages -l ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages.filelist -m ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/
+ fi
done
}
@@ -102,11 +107,13 @@ package_generate_ipkg_conf () {
mkdir -p ${STAGING_ETCDIR_NATIVE}/
echo "src oe file:${DEPLOY_DIR_IPK}" > ${IPKGCONF_TARGET}
echo "src oe file:${DEPLOY_DIR_IPK}" > ${IPKGCONF_SDK}
+ echo "src oe file:${DEPLOY_DIR_IPK}" > ${IPKGCONF_CANSDK}
ipkgarchs="${PACKAGE_ARCHS}"
priority=1
for arch in $ipkgarchs; do
echo "arch $arch $priority" >> ${IPKGCONF_TARGET}
echo "arch ${BUILD_ARCH}-$arch-sdk $priority" >> ${IPKGCONF_SDK}
+ echo "arch ${SDK_SYS}-sdk-$arch $priority" >> ${IPKGCONF_CANSDK}
priority=$(expr $priority + 5)
if [ -e ${DEPLOY_DIR_IPK}/$arch/Packages ] ; then
echo "src oe-$arch file:${DEPLOY_DIR_IPK}/$arch" >> ${IPKGCONF_TARGET}
@@ -114,6 +121,9 @@ package_generate_ipkg_conf () {
if [ -e ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages ] ; then
echo "src oe-${BUILD_ARCH}-$arch-sdk file:${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk" >> ${IPKGCONF_SDK}
fi
+ if [ -e ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages ] ; then
+ echo "src oe-${SDK_SYS}-sdk-$arch file:${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch" >> ${IPKGCONF_CANSDK}
+ fi
done
}
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 04/13] siteinfo.bbclass: add cygwin and mingw32 support
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
2008-10-07 12:51 ` [PATCH 02/13] gcc-package.inc: add ${HOST_EXEEXT} support (for canadian sdk support) eha
2008-10-07 12:51 ` [PATCH 03/13] package_ipk.bbclass: add support for for canadian sdk ipkg eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 05/13] bitbake.conf: prepare for canadian sdk support eha
` (8 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/siteinfo.bbclass | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/classes/siteinfo.bbclass b/classes/siteinfo.bbclass
index 039afbb..85dcf72 100644
--- a/classes/siteinfo.bbclass
+++ b/classes/siteinfo.bbclass
@@ -40,6 +40,14 @@ def get_siteinfo_list(d):
"i486-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
"i586-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
"i686-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
+ "i386-cygwin": "endian-little bit-32 common-cygwin ix86-common",\
+ "i486-cygwin": "endian-little bit-32 common-cygwin ix86-common",\
+ "i586-cygwin": "endian-little bit-32 common-cygwin ix86-common",\
+ "i686-cygwin": "endian-little bit-32 common-cygwin ix86-common",\
+ "i386-mingw32": "endian-little bit-32 common-mingw ix86-common",\
+ "i486-mingw32": "endian-little bit-32 common-mingw ix86-common",\
+ "i586-mingw32": "endian-little bit-32 common-mingw ix86-common",\
+ "i686-mingw32": "endian-little bit-32 common-mingw ix86-common",\
"mipsel-linux": "endian-little bit-32 common-linux common-glibc",\
"mipsel-linux-uclibc": "endian-little bit-32 common-linux common-uclibc",\
"mips-linux": "endian-big bit-32 common-linux common-glibc",\
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 05/13] bitbake.conf: prepare for canadian sdk support
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (2 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 04/13] siteinfo.bbclass: add cygwin and mingw32 support eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 06/13] canadian-cross.bbclass, canadian-native.bbclass, canadian-sdk.bbclass added eha
` (7 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
* rename SDK_PREFIX to SDK_PATH
* add various SDK_* variables
* add sdk-${SDK_OS} to OVERRIDES
* sdk.bbclass fixed for change from SDK_PREFIX to SDK_PATH
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/sdk.bbclass | 2 +-
conf/bitbake.conf | 20 ++++++++++++++++++--
packages/meta/external-toolchain.bb | 2 +-
packages/meta/meta-toolchain.bb | 4 ++--
4 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/classes/sdk.bbclass b/classes/sdk.bbclass
index b746426..3897349 100644
--- a/classes/sdk.bbclass
+++ b/classes/sdk.bbclass
@@ -19,7 +19,7 @@ CXXFLAGS = "${BUILD_CFLAGS}"
LDFLAGS = "${BUILD_LDFLAGS}"
# Path prefixes
-prefix = "${SDK_PREFIX}"
+prefix = "${SDK_PATH}"
exec_prefix = "${prefix}"
base_prefix = "${prefix}"
diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 51a18fd..3a8a12c 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -89,6 +89,14 @@ TARGET_PREFIX = "${TARGET_SYS}-"
TARGET_CC_ARCH = ""
TARGET_EXEEXT = ""
+SDK_ARCH ?= "${BUILD_ARCH}"
+SDK_OS ?= "${BUILD_OS}"
+SDK_VENDOR ?= "${BUILD_VENDOR}"
+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_EXEEXT = ""
+
BASE_PACKAGE_ARCH = "${HOST_ARCH}"
PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
MACHINE_ARCH = "${@[bb.data.getVar('HOST_ARCH', d, 1), bb.data.getVar('MACHINE', d, 1)][bool(bb.data.getVar('MACHINE', d, 1))]}"
@@ -255,6 +263,8 @@ STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader"
STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware"
STAGING_PYDIR = "${STAGING_DIR}/lib/python2.4"
+STAGING_DIR_SDK = "${STAGING_DIR}/${SDK_SYS}"
+
STAGING_DIR_TARGET = "${STAGING_DIR}/${TARGET_SYS}"
DEPLOY_DIR = "${TMPDIR}/deploy"
@@ -268,7 +278,7 @@ DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools"
PKGDATA_DIR = "${STAGING_DIR}/pkgdata/${MULTIMACH_TARGET_SYS}"
SDK_NAME = "${DISTRO}/${TARGET_ARCH}"
-SDK_PREFIX = "/usr/local/${SDK_NAME}"
+SDK_PATH = "/usr/local/${SDK_NAME}"
##################################################################
# Kernel info.
@@ -377,14 +387,17 @@ PATCHRESOLVE = 'noop'
export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}"
export CPPFLAGS = "${TARGET_CPPFLAGS}"
export TARGET_CPPFLAGS = "-isystem${STAGING_DIR_TARGET}${layout_includedir}"
+export SDK_CPPFLAGS = "-isystem${STAGING_DIR_SDK}${layout_includedir}"
export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}"
export CFLAGS = "${TARGET_CFLAGS}"
export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}"
+export SDK_CFLAGS = "${SDK_CPPFLAGS} ${SELECTED_OPTIMIZATION}"
export BUILD_CXXFLAGS = "${BUILD_CFLAGS} -fpermissive"
export CXXFLAGS = "${TARGET_CXXFLAGS}"
export TARGET_CXXFLAGS = "${TARGET_CFLAGS} -fpermissive"
+export SDK_CXXFLAGS = "${SDK_CFLAGS} -fpermissive"
export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \
-Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} \
@@ -394,6 +407,9 @@ export LDFLAGS = "${TARGET_LDFLAGS}"
export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${layout_libdir} \
-Wl,-rpath-link,${STAGING_DIR_TARGET}${layout_libdir} \
-Wl,-O1"
+export SDK_LDFLAGS = "-L${STAGING_DIR_SDK}${layout_libdir} \
+ -Wl,-rpath-link,${STAGING_DIR_SDK}${layout_libdir} \
+ -Wl,-O1"
# Which flags to leave by strip-flags() in bin/build/oebuild.sh ?
ALLOWED_FLAGS = "-O -mcpu -march -pipe"
@@ -547,7 +563,7 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}"
#
# This works for functions as well, they are really just environment variables.
# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration.
-OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"
+OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:sdk-${SDK_OS}:build-${BUILD_OS}:fail-fast:pn-${PN}"
# Alternative OVERRIDES definition without "fail fast", usually only for native building and Scratchbox toolchains.
#OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}"
diff --git a/packages/meta/external-toolchain.bb b/packages/meta/external-toolchain.bb
index e1dae5a..4c70054 100644
--- a/packages/meta/external-toolchain.bb
+++ b/packages/meta/external-toolchain.bb
@@ -1,6 +1,6 @@
DESCRIPTION = "This package allows OE to work with an external toolchain generated \
by meta-toolchain instead of building its own. It expects that toolchain \
- to be located in SDK_PREFIX/prefix."
+ to be located in SDK_PATH/prefix."
PROVIDES = "\
linux-libc-headers \
diff --git a/packages/meta/meta-toolchain.bb b/packages/meta/meta-toolchain.bb
index 1fa4cdb..9b91f0d 100644
--- a/packages/meta/meta-toolchain.bb
+++ b/packages/meta/meta-toolchain.bb
@@ -10,7 +10,7 @@ SDK_OUTPUT2 = "${SDK_DIR}/image-extras"
SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
IPKG_HOST = "opkg-cl -f ${IPKGCONF_SDK} -o ${SDK_OUTPUT}"
-IPKG_TARGET = "opkg-cl -f ${IPKGCONF_TARGET} -o ${SDK_OUTPUT}/${SDK_PREFIX}/${TARGET_SYS}"
+IPKG_TARGET = "opkg-cl -f ${IPKGCONF_TARGET} -o ${SDK_OUTPUT}/${SDK_PATH}/${TARGET_SYS}"
TOOLCHAIN_HOST_TASK ?= "task-sdk-host"
TOOLCHAIN_TARGET_TASK ?= "task-sdk-bare"
@@ -35,7 +35,7 @@ do_populate_sdk() {
${IPKG_HOST} update
${IPKG_HOST} -force-depends install ${TOOLCHAIN_HOST_TASK}
- mkdir -p ${SDK_OUTPUT}/${SDK_PREFIX}/${TARGET_SYS}/usr/lib/opkg
+ mkdir -p ${SDK_OUTPUT}/${SDK_PATH}/${TARGET_SYS}/usr/lib/opkg
${IPKG_TARGET} update
${IPKG_TARGET} install ${TOOLCHAIN_TARGET_TASK}
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 06/13] canadian-cross.bbclass, canadian-native.bbclass, canadian-sdk.bbclass added
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (3 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 05/13] bitbake.conf: prepare for canadian sdk support eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 07/13] insane.bbclass: add exceptions for canadian-* classes eha
` (6 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/canadian-cross.bbclass | 68 +++++++++++++++++++++++++++
classes/canadian-native.bbclass | 90 ++++++++++++++++++++++++++++++++++++
classes/canadian-sdk.bbclass | 97 +++++++++++++++++++++++++++++++++++++++
3 files changed, 255 insertions(+), 0 deletions(-)
create mode 100644 classes/canadian-cross.bbclass
create mode 100644 classes/canadian-native.bbclass
create mode 100644 classes/canadian-sdk.bbclass
diff --git a/classes/canadian-cross.bbclass b/classes/canadian-cross.bbclass
new file mode 100644
index 0000000..9091ed8
--- /dev/null
+++ b/classes/canadian-cross.bbclass
@@ -0,0 +1,68 @@
+# SDK Cross packages are built indirectly via dependency,
+# no need for them to be a direct target of 'world'
+EXCLUDE_FROM_WORLD = "1"
+
+# Save PACKAGE_ARCH before changing HOST_ARCH
+OLD_PACKAGE_ARCH := ${PACKAGE_ARCH}
+PACKAGE_ARCH = ${SDK_ARCH}
+
+PACKAGES = ""
+
+HOST_ARCH = "${BUILD_ARCH}"
+HOST_VENDOR = "${BUILD_VENDOR}"
+HOST_OS = "${BUILD_OS}"
+HOST_PREFIX = "${BUILD_PREFIX}"
+HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_EXEEXT = "${BUILD_EXEEXT}"
+
+TARGET_ARCH = "${SDK_ARCH}"
+TARGET_VENDOR = "${SDK_VENDOR}"
+TARGET_OS = "${SDK_OS}"
+TARGET_PREFIX = "${SDK_PREFIX}"
+TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_EXEEXT = "${SDK_EXEEXT}"
+
+CPPFLAGS = "${BUILD_CPPFLAGS}"
+CFLAGS = "${BUILD_CFLAGS}"
+CXXFLAGS = "${BUILD_CFLAGS}"
+LDFLAGS = "${BUILD_LDFLAGS}"
+
+TOOLCHAIN_OPTIONS = ""
+
+# Overrides for paths
+
+# Path prefixes
+base_prefix = "${exec_prefix}"
+prefix = "${CROSS_DIR}"
+exec_prefix = "${prefix}"
+
+# Base paths
+base_bindir = "${base_prefix}/bin"
+base_sbindir = "${base_prefix}/bin"
+base_libdir = "${base_prefix}/lib"
+
+# Architecture independent paths
+datadir = "${prefix}/share"
+sysconfdir = "${prefix}/etc"
+sharedstatedir = "${prefix}/com"
+localstatedir = "${prefix}/var"
+infodir = "${datadir}/info"
+mandir = "${datadir}/man"
+docdir = "${datadir}/doc"
+servicedir = "${prefix}/srv"
+
+# Architecture dependent paths
+bindir = "${exec_prefix}/bin"
+sbindir = "${exec_prefix}/bin"
+libexecdir = "${exec_prefix}/libexec"
+libdir = "${exec_prefix}/lib"
+includedir = "${STAGING_DIR_TARGET}${layout_includedir}"
+oldincludedir = "${STAGING_DIR_TARGET}${layout_includedir}"
+
+do_stage () {
+ oe_runmake install
+}
+
+do_install () {
+ :
+}
diff --git a/classes/canadian-native.bbclass b/classes/canadian-native.bbclass
new file mode 100644
index 0000000..6a3cd45
--- /dev/null
+++ b/classes/canadian-native.bbclass
@@ -0,0 +1,90 @@
+inherit base
+
+# SDK packages are built either explicitly by the user,
+# or indirectly via dependency. No need to be in 'world'.
+EXCLUDE_FROM_WORLD = "1"
+
+# Save PACKAGE_ARCH before changing HOST_ARCH
+OLD_PACKAGE_ARCH := ${PACKAGE_ARCH}
+PACKAGE_ARCH = "${SDK_ARCH}"
+
+PACKAGES = ""
+
+HOST_ARCH = "${SDK_ARCH}"
+HOST_VENDOR = "${SDK_VENDOR}"
+HOST_OS = "${SDK_OS}"
+HOST_PREFIX = "${SDK_PREFIX}"
+HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_EXEEXT = "${SDK_EXEEXT}"
+
+TARGET_ARCH = "${SDK_ARCH}"
+TARGET_VENDOR = "${SDK_VENDOR}"
+TARGET_OS = "${SDK_OS}"
+TARGET_PREFIX = "${SDK_PREFIX}"
+TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_EXEEXT = "${SDK_EXEEXT}"
+
+CPPFLAGS = "${SDK_CPPFLAGS}"
+CFLAGS = "${SDK_CFLAGS}"
+CXXFLAGS = "${SDK_CFLAGS}"
+LDFLAGS = "${SDK_LDFLAGS}"
+
+# FIXME: looks broken, but seemed to work... TBD if they can be deleted.
+#STAGING_BINDIR = "${STAGING_BINDIR_SDK}"
+#STAGING_BINDIR_CROSS = "${STAGING_BINDIR_SDK}"
+
+# set the compiler as well. It could have been set to something else
+export CC = "${CCACHE}${SDK_PREFIX}gcc ${HOST_CC_ARCH}"
+export CXX = "${CCACHE}${SDK_PREFIX}g++ ${HOST_CC_ARCH}"
+export F77 = "${CCACHE}${SDK_PREFIX}g77 ${HOST_CC_ARCH}"
+export CPP = "${SDK_PREFIX}gcc -E"
+export LD = "${SDK_PREFIX}ld"
+#export CCLD = "${CC}"
+export AR = "${SDK_PREFIX}ar"
+export AS = "${SDK_PREFIX}as"
+export RANLIB = "${SDK_PREFIX}ranlib"
+export STRIP = "${SDK_PREFIX}strip"
+
+# Path prefixes
+export base_prefix = "${STAGING_DIR_HOST}"
+export prefix = "${STAGING_DIR_HOST}${layout_prefix}"
+export exec_prefix = "${STAGING_DIR_HOST}${layout_exec_prefix}"
+
+# Base paths
+export base_bindir = "${STAGING_DIR_HOST}${layout_base_bindir}"
+export base_sbindir = "${STAGING_DIR_HOST}${layout_base_sbindir}"
+export base_libdir = "${STAGING_DIR_HOST}${layout_base_libdir}"
+
+# Architecture independent paths
+export datadir = "${STAGING_DIR_HOST}${layout_datadir}"
+export sysconfdir = "${STAGING_DIR_HOST}${layout_sysconfdir}"
+export sharedstatedir = "${STAGING_DIR_HOST}${layout_sharedstatedir}"
+export localstatedir = "${STAGING_DIR_HOST}${layout_localstatedir}"
+export infodir = "${STAGING_DIR_HOST}${layout_infodir}"
+export mandir = "${STAGING_DIR_HOST}${layout_mandir}"
+export docdir = "${STAGING_DIR_HOST}${layout_docdir}"
+export servicedir = "${STAGING_DIR_HOST}${layout_servicedir}"
+
+# Architecture dependent paths
+export bindir = "${STAGING_DIR_HOST}${layout_bindir}"
+export sbindir = "${STAGING_DIR_HOST}${layout_sbindir}"
+export libexecdir = "${STAGING_DIR_HOST}${layout_libexecdir}"
+export libdir = "${STAGING_DIR_HOST}${layout_libdir}"
+export includedir = "${STAGING_DIR_HOST}${layout_includedir}"
+export oldincludedir = "${STAGING_DIR_HOST}${layout_includedir}"
+
+do_stage () {
+ if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ]
+ then
+ if [ "${AUTOTOOLS_NATIVE_STAGE_INSTALL}" != "1" ]
+ then
+ oe_runmake install
+ else
+ autotools_stage_all
+ fi
+ fi
+}
+
+do_install () {
+ true
+}
diff --git a/classes/canadian-sdk.bbclass b/classes/canadian-sdk.bbclass
new file mode 100644
index 0000000..09ddde1
--- /dev/null
+++ b/classes/canadian-sdk.bbclass
@@ -0,0 +1,97 @@
+# SDK packages are built either explicitly by the user,
+# or indirectly via dependency. No need to be in 'world'.
+EXCLUDE_FROM_WORLD = "1"
+
+OLD_PACKAGE_ARCH := ${PACKAGE_ARCH}
+PACKAGE_ARCH = "${SDK_SYS}-sdk-${OLD_PACKAGE_ARCH}"
+
+HOST_ARCH = "${SDK_ARCH}"
+HOST_VENDOR = "${SDK_VENDOR}"
+HOST_OS = "${SDK_OS}"
+HOST_PREFIX = "${SDK_PREFIX}"
+HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_EXEEXT = "${SDK_EXEEXT}"
+
+CPPFLAGS = "${SDK_CPPFLAGS}"
+CFLAGS = "${SDK_CFLAGS}"
+CXXFLAGS = "${SDK_CFLAGS}"
+LDFLAGS = "${SDK_LDFLAGS}"
+
+# TODO: add logic to add the following unless PN ~= gcc*
+#DEPENDS_prepend = "virtual/${HOST_PREFIX}binutils virtual/${HOST_PREFIX}gcc "
+# and otherwise just
+DEPENDS_prepend = "virtual/${HOST_PREFIX}binutils "
+
+SDK_PATH_sdk-mingw32 = "/OpenEmbedded/${SDK_NAME}"
+SDK_REALPATH = "${SDK_PATH}"
+SDK_REALPATH_sdk-mingw32 = "C:/OpenEmbedded/${SDK_NAME}"
+
+# Path prefixes
+prefix = "${SDK_PATH}"
+exec_prefix = "${prefix}"
+base_prefix = "${prefix}"
+
+# Base paths
+export base_bindir = "${prefix}/bin"
+export base_sbindir = "${prefix}/bin"
+export base_libdir = "${prefix}/lib"
+
+# Architecture independent paths
+export datadir = "${prefix}/share"
+export sysconfdir = "${prefix}/etc"
+export sharedstatedir = "${datadir}/com"
+export localstatedir = "${prefix}/var"
+export infodir = "${datadir}/info"
+export mandir = "${datadir}/man"
+export docdir = "${datadir}/doc"
+export servicedir = "${prefix}/srv"
+
+# Architecture dependent paths
+export bindir = "${prefix}/bin"
+export sbindir = "${prefix}/bin"
+export libexecdir = "${prefix}/libexec"
+export libdir = "${prefix}/lib"
+export includedir = "${prefix}/include"
+export oldincludedir = "${prefix}/include"
+
+export dollar = "$"
+
+canadian_sdk_runconf() {
+ # modified oe_runconf()
+ # 1. Override prefix with SDK_REALPATH
+ # 2. Pass '${prefix}' to configure, to allow for prefix override
+ # 3. But don't do that for infodir and mandir, as they will
+ # break gcc makefiles for windows/dos SDK_REALPATH
+ if [ -x ${S}/configure ] ; then
+ cfgcmd="${S}/configure \
+ --build=${BUILD_SYS} \
+ --host=${HOST_SYS} \
+ --target=${TARGET_SYS} \
+ --prefix=${SDK_REALPATH} \
+ --exec-prefix=$dollar{prefix} \
+ --bindir=$dollar{prefix}/bin \
+ --sbindir=$dollar{prefix}/bin \
+ --libexecdir=$dollar{prefix}/libexec \
+ --datadir=$dollar{prefix}/share \
+ --sysconfdir=$dollar{prefix}/etc \
+ --sharedstatedir=$dollar{prefix}/com \
+ --localstatedir=$dollar{prefix}/var \
+ --libdir=$dollar{prefix}/lib \
+ --includedir=$dollar{prefix}/include \
+ --oldincludedir=$dollar{prefix}/include \
+ --infodir=${prefix}/share/info \
+ --mandir=${prefix}/share/man \
+ --enable-mainainer-mode \
+ ${EXTRA_OECONF} \
+ $@"
+ oenote "Running $cfgcmd..."
+ $cfgcmd || oefatal "oe_runconf failed"
+ else
+ oefatal "no configure script found"
+ fi
+}
+
+FILES_${PN} = "${prefix}"
+FILES_${PN}-dbg += "${prefix}/.debug \
+ ${prefix}/bin/.debug \
+ "
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 07/13] insane.bbclass: add exceptions for canadian-* classes
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (4 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 06/13] canadian-cross.bbclass, canadian-native.bbclass, canadian-sdk.bbclass added eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 08/13] mingw-runtime, mingw-w32api, mingw-runtime-headers, mingw-w32api-headers eha
` (5 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
classes/insane.bbclass | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/classes/insane.bbclass b/classes/insane.bbclass
index a599689..21ece16 100644
--- a/classes/insane.bbclass
+++ b/classes/insane.bbclass
@@ -280,7 +280,7 @@ def package_qa_check_arch(path,name,d):
target_arch = bb.data.getVar('TARGET_ARCH', d, True)
# FIXME: Cross package confuse this check, so just skip them
- if bb.data.inherits_class('cross', d) or bb.data.inherits_class('sdk', d):
+ if bb.data.inherits_class('cross', d) or bb.data.inherits_class('sdk', d) or bb.data.inherits_class('canadian-cross', d) or bb.data.inherits_class('canadian-sdk', d):
return True
# avoid following links to /usr/bin (e.g. on udev builds)
@@ -339,7 +339,7 @@ def package_qa_check_staged(path,d):
workdir = os.path.join(tmpdir, "work")
installed = "installed=yes"
- if bb.data.inherits_class("native", d) or bb.data.inherits_class("cross", d):
+ if bb.data.inherits_class("native", d) or bb.data.inherits_class("cross", d) or bb.data.inherits_class("canadian-native", d) or bb.data.inherits_class("canadian-cross", d):
pkgconfigcheck = workdir
else:
pkgconfigcheck = tmpdir
@@ -353,7 +353,7 @@ def package_qa_check_staged(path,d):
if file[-2:] == "la":
file_content = open(path).read()
# Don't check installed status for native/cross packages
- if not bb.data.inherits_class("native", d) and not bb.data.inherits_class("cross", d):
+ if not bb.data.inherits_class("native", d) and not bb.data.inherits_class("cross", d) and not bb.data.inherits_class("canadian-native", d) and not bb.data.inherits_class("canadian-cross", d):
if installed in file_content:
error_msg = "%s failed sanity test (installed) in path %s" % (file,root)
sane = package_qa_handle_error(5, error_msg, "staging", path, d)
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 08/13] mingw-runtime, mingw-w32api, mingw-runtime-headers, mingw-w32api-headers
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (5 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 07/13] insane.bbclass: add exceptions for canadian-* classes eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 09/13] mingw-binutils-canadian-cross eha
` (4 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
* mingw-runtime and mingw-w32api requires mingw-gcc-canadian-cross-initial
before they can be built
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
| 20 ++++++++++++++++++++
packages/mingw/mingw-runtime_3.14.bb | 21 +++++++++++++++++++++
| 20 ++++++++++++++++++++
packages/mingw/mingw-w32api_3.11.bb | 17 +++++++++++++++++
4 files changed, 78 insertions(+), 0 deletions(-)
create mode 100644 packages/mingw/mingw-runtime-headers_3.14.bb
create mode 100644 packages/mingw/mingw-runtime_3.14.bb
create mode 100644 packages/mingw/mingw-w32api-headers_3.11.bb
create mode 100644 packages/mingw/mingw-w32api_3.11.bb
--git a/packages/mingw/mingw-runtime-headers_3.14.bb b/packages/mingw/mingw-runtime-headers_3.14.bb
new file mode 100644
index 0000000..88ee998
--- /dev/null
+++ b/packages/mingw/mingw-runtime-headers_3.14.bb
@@ -0,0 +1,20 @@
+require mingw-runtime_${PV}.bb
+
+DEPENDS = "mingw-w32api-headers"
+PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
+
+do_configure() {
+ :
+}
+
+do_compile() {
+ :
+}
+
+do_install() {
+ :
+}
+
+do_stage() {
+ cp -r ${S}/include/* ${STAGING_INCDIR}/
+}
diff --git a/packages/mingw/mingw-runtime_3.14.bb b/packages/mingw/mingw-runtime_3.14.bb
new file mode 100644
index 0000000..f8f2e8e
--- /dev/null
+++ b/packages/mingw/mingw-runtime_3.14.bb
@@ -0,0 +1,21 @@
+PR = "r1"
+
+inherit canadian-native autotools
+
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial mingw-w32api"
+
+PROVIDES = "virtual/${TARGET_PREFIX}libc virtual/${TARGET_PREFIX}libc-for-gcc"
+
+DEFAULT_PREFERENCE = "0"
+DEFAULT_PREFERENCE_sdk-mingw32 = "1"
+
+PACKAGES = ""
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/mingw/mingw-runtime-${PV}-src.tar.gz"
+S = "${WORKDIR}/mingw-runtime-${PV}"
+B = "${WORKDIR}/build-${TARGET_SYS}"
+
+do_configure() {
+ oe_runconf
+}
\ No newline at end of file
--git a/packages/mingw/mingw-w32api-headers_3.11.bb b/packages/mingw/mingw-w32api-headers_3.11.bb
new file mode 100644
index 0000000..25ef810
--- /dev/null
+++ b/packages/mingw/mingw-w32api-headers_3.11.bb
@@ -0,0 +1,20 @@
+require mingw-w32api_${PV}.bb
+
+DEPENDS = ""
+PROVIDES = "mingw-w32api-headers"
+
+do_configure() {
+ :
+}
+
+do_compile() {
+ :
+}
+
+do_install() {
+ :
+}
+
+do_stage() {
+ cp -r ${S}/include/* ${STAGING_INCDIR}/
+}
diff --git a/packages/mingw/mingw-w32api_3.11.bb b/packages/mingw/mingw-w32api_3.11.bb
new file mode 100644
index 0000000..c0a4462
--- /dev/null
+++ b/packages/mingw/mingw-w32api_3.11.bb
@@ -0,0 +1,17 @@
+PR = "r1"
+
+inherit canadian-native autotools
+
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial"
+
+PROVIDES = "mingw-w32api"
+
+DEFAULT_PREFERENCE = "0"
+DEFAULT_PREFERENCE_sdk-mingw32 = "1"
+
+PACKAGES = ""
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/mingw/w32api-${PV}-src.tar.gz"
+S = "${WORKDIR}/w32api-${PV}"
+B = "${WORKDIR}/build-${TARGET_SYS}"
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 09/13] mingw-binutils-canadian-cross
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (6 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 08/13] mingw-runtime, mingw-w32api, mingw-runtime-headers, mingw-w32api-headers eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 10/13] mingw-gcc-canadian-cross, mingw-gcc-canadian-cross-initial eha
` (3 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
packages/binutils/binutils-canadian-cross.inc | 28 ++++++++++++++++++++
...w-binutils-canadian-cross_2.17.50-20060824-1.bb | 11 ++++++++
.../binutils/mingw-binutils_2.17.50-20060824-1.bb | 12 ++++++++
3 files changed, 51 insertions(+), 0 deletions(-)
create mode 100644 packages/binutils/binutils-canadian-cross.inc
create mode 100644 packages/binutils/mingw-binutils-canadian-cross_2.17.50-20060824-1.bb
create mode 100644 packages/binutils/mingw-binutils_2.17.50-20060824-1.bb
diff --git a/packages/binutils/binutils-canadian-cross.inc b/packages/binutils/binutils-canadian-cross.inc
new file mode 100644
index 0000000..1f2c21e
--- /dev/null
+++ b/packages/binutils/binutils-canadian-cross.inc
@@ -0,0 +1,28 @@
+SECTION = "devel"
+inherit canadian-cross
+DEPENDS += "flex-native bison-native"
+PROVIDES = "virtual/${TARGET_PREFIX}binutils"
+PACKAGES = ""
+EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
+ --program-prefix=${TARGET_PREFIX} \
+ --enable-install-libbfd \
+ --disable-werror"
+
+do_stage () {
+ # ugly hack introduce to link cross with staging area
+ install -d ${CROSS_DIR}/${SDK_SYS}
+ ln -sf ${STAGING_DIR_SDK}${layout_includedir} \
+ ${CROSS_DIR}/${SDK_SYS}/include
+ # FIXME: libdir should not be linked like this anymore
+ ln -sf ${STAGING_DIR_SDK}${layout_libdir} \
+ ${CROSS_DIR}/${SDK_SYS}/lib
+
+ oe_runmake install
+
+ # We don't really need these, so we'll remove them...
+ rm -rf ${CROSS_DIR}/${SDK_SYS}/lib/ldscripts
+}
+
+do_install () {
+ :
+}
diff --git a/packages/binutils/mingw-binutils-canadian-cross_2.17.50-20060824-1.bb b/packages/binutils/mingw-binutils-canadian-cross_2.17.50-20060824-1.bb
new file mode 100644
index 0000000..385aa1d
--- /dev/null
+++ b/packages/binutils/mingw-binutils-canadian-cross_2.17.50-20060824-1.bb
@@ -0,0 +1,11 @@
+require mingw-binutils_${PV}.bb
+require binutils-canadian-cross.inc
+
+DEFAULT_PREFERENCE_sdk-mingw32 = "1"
+DEFAULT_PREFERENCE_sdk-mingw64 = "1"
+
+require binutils-canadian-cross.inc
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/mingw/binutils-${PV}-src.tar.gz"
+
+S = "${WORKDIR}/binutils-${PV}-src"
diff --git a/packages/binutils/mingw-binutils_2.17.50-20060824-1.bb b/packages/binutils/mingw-binutils_2.17.50-20060824-1.bb
new file mode 100644
index 0000000..9d17873
--- /dev/null
+++ b/packages/binutils/mingw-binutils_2.17.50-20060824-1.bb
@@ -0,0 +1,12 @@
+PR = "r1"
+
+require binutils.inc
+
+DESCRIPTION = "A GNU collection of binary utilities - MinGW port"
+HOMEPAGE = "http://www.mingw.org/"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/mingw/binutils-${PV}-src.tar.gz"
+
+S = "${WORKDIR}/binutils-${PV}-src"
+
+DEFAULT_PREFERENCE = "0"
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 10/13] mingw-gcc-canadian-cross, mingw-gcc-canadian-cross-initial
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (7 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 09/13] mingw-binutils-canadian-cross eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 11/13] binutils-canadian-sdk eha
` (2 subsequent siblings)
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
packages/gcc/gcc-canadian-cross-initial.inc | 4 ++
.../mingw-gcc-3.4.5-20060117-2/includedir.patch | 12 +++++++
packages/gcc/mingw-gcc-build.inc | 35 ++++++++++++++++++++
...-gcc-canadian-cross-initial_3.4.5-20060117-2.bb | 7 ++++
.../mingw-gcc-canadian-cross_3.4.5-20060117-2.bb | 26 ++++++++++++++
packages/gcc/mingw-gcc_3.4.5-20060117-2.bb | 25 ++++++++++++++
6 files changed, 109 insertions(+), 0 deletions(-)
create mode 100644 packages/gcc/gcc-canadian-cross-initial.inc
create mode 100644 packages/gcc/mingw-gcc-3.4.5-20060117-2/includedir.patch
create mode 100644 packages/gcc/mingw-gcc-build.inc
create mode 100644 packages/gcc/mingw-gcc-canadian-cross-initial_3.4.5-20060117-2.bb
create mode 100644 packages/gcc/mingw-gcc-canadian-cross_3.4.5-20060117-2.bb
create mode 100644 packages/gcc/mingw-gcc_3.4.5-20060117-2.bb
diff --git a/packages/gcc/gcc-canadian-cross-initial.inc b/packages/gcc/gcc-canadian-cross-initial.inc
new file mode 100644
index 0000000..99c7a47
--- /dev/null
+++ b/packages/gcc/gcc-canadian-cross-initial.inc
@@ -0,0 +1,4 @@
+require gcc-cross-initial.inc
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils"
+DEPENDS += "virtual/${TARGET_PREFIX}libc-initial"
diff --git a/packages/gcc/mingw-gcc-3.4.5-20060117-2/includedir.patch b/packages/gcc/mingw-gcc-3.4.5-20060117-2/includedir.patch
new file mode 100644
index 0000000..8836560
--- /dev/null
+++ b/packages/gcc/mingw-gcc-3.4.5-20060117-2/includedir.patch
@@ -0,0 +1,12 @@
+diff -urN gcc-3.4.5-20060117-2-orig/gcc/Makefile.in gcc-3.4.5-20060117-2/gcc/Makefile.in
+--- gcc-3.4.5-20060117-2-orig/gcc/Makefile.in 2005-12-12 02:24:01.000000000 +0100
++++ gcc-3.4.5-20060117-2/gcc/Makefile.in 2008-10-02 16:07:17.000000000 +0200
+@@ -442,7 +442,7 @@
+ # Directory to search for site-specific includes.
+ local_includedir = $(local_prefix)/include
+ # local_includedir=$(libsubdir)/$(unlibsubdir)/..`echo $(exec_prefix) | sed -e 's|^$(prefix)||' -e 's|/[^/]*|/..|g'`/include
+-includedir = $(prefix)/include
++includedir = @includedir@
+ # where the info files go
+ infodir = @infodir@
+ # Where cpp should go besides $prefix/bin if necessary
diff --git a/packages/gcc/mingw-gcc-build.inc b/packages/gcc/mingw-gcc-build.inc
new file mode 100644
index 0000000..274f50a
--- /dev/null
+++ b/packages/gcc/mingw-gcc-build.inc
@@ -0,0 +1,35 @@
+gcclibdir ?= "${libdir}/gcc"
+S = "${WORKDIR}/gcc-${PV}"
+B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
+BINV ?= "${PV}"
+
+LANGUAGES ?= "c,c++"
+
+EXTRA_OECONF_DEP ?= ""
+
+EXTRA_OECONF = "\
+ ${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d, 1) != 'no']} \
+ --disable-shared \
+ --enable-languages=${LANGUAGES} \
+ --enable-threads=win32 \
+ --enable-c99 \
+ --enable-long-long \
+ --disable-maintainer-mode \
+ --disable-bootstrap \
+ --enable-target-optspace \
+ --disable-win32-registry \
+ --without-x \
+ --program-prefix=${TARGET_PREFIX} \
+ ${EXTRA_OECONF_PATHS} \
+ ${EXTRA_OECONF_DEP}"
+
+EXTRA_OECONF_PATHS = " \
+ --with-local-prefix=${prefix}/local \
+ --with-gxx-include-dir=${includedir}/c++/${BINV}"
+
+CPP = ""
+CPPFLAGS = ""
+
+do_configure () {
+ oe_runconf
+}
diff --git a/packages/gcc/mingw-gcc-canadian-cross-initial_3.4.5-20060117-2.bb b/packages/gcc/mingw-gcc-canadian-cross-initial_3.4.5-20060117-2.bb
new file mode 100644
index 0000000..f5ff761
--- /dev/null
+++ b/packages/gcc/mingw-gcc-canadian-cross-initial_3.4.5-20060117-2.bb
@@ -0,0 +1,7 @@
+require mingw-gcc-canadian-cross_${PV}.bb
+require gcc-canadian-cross-initial.inc
+
+SRC_URI = "\
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-core-${PV}-src.tar.gz \
+ file://includedir.patch;patch=1 \
+"
diff --git a/packages/gcc/mingw-gcc-canadian-cross_3.4.5-20060117-2.bb b/packages/gcc/mingw-gcc-canadian-cross_3.4.5-20060117-2.bb
new file mode 100644
index 0000000..479ff8b
--- /dev/null
+++ b/packages/gcc/mingw-gcc-canadian-cross_3.4.5-20060117-2.bb
@@ -0,0 +1,26 @@
+PR = "r1"
+
+require gcc-configure-cross.inc
+require mingw-gcc_${PV}.bb
+
+inherit canadian-cross
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/mingw-gcc-${PV}"
+
+DEPENDS = "\
+ virtual/${TARGET_PREFIX}binutils \
+ virtual/${TARGET_PREFIX}libc-for-gcc \
+"
+
+PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+do_configure_prepend() {
+ # ugly hack to come around the hardcoding of
+ # -isystem ${build_tooldir}/include which ends up pointing at
+ # $CROSS_DIR/$SDK_SYS/include
+ install -d ${CROSS_DIR}/${SDK_SYS}
+ ln -sf ${STAGING_DIR_SDK}${layout_includedir} \
+ ${CROSS_DIR}/${SDK_SYS}/include
+ ln -sf ${STAGING_DIR_SDK}${layout_libdir} \
+ ${CROSS_DIR}/${SDK_SYS}/lib
+}
diff --git a/packages/gcc/mingw-gcc_3.4.5-20060117-2.bb b/packages/gcc/mingw-gcc_3.4.5-20060117-2.bb
new file mode 100644
index 0000000..22f9170
--- /dev/null
+++ b/packages/gcc/mingw-gcc_3.4.5-20060117-2.bb
@@ -0,0 +1,25 @@
+PR = "r1"
+DESCRIPTION = "The GNU Compiler Collection - MinGW port"
+HOMEPAGE = "http://www.mingw.org/"
+SECTION = "devel"
+LICENSE = "GPL"
+
+DEFAULT_PREFERENCE = "0"
+DEFAULT_PREFERENCE_sdk-mingw32 = "1"
+
+inherit autotools gettext
+
+require gcc-common.inc
+require gcc-package-sdk.inc
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/mingw/gcc-core-${PV}-src.tar.gz \
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-g++-${PV}-src.tar.gz \
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-g77-${PV}-src.tar.gz \
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-java-${PV}-src.tar.gz \
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-objc-${PV}-src.tar.gz \
+ ${SOURCEFORGE_MIRROR}/mingw/gcc-ada-${PV}-src.tar.gz \
+ file://includedir.patch;patch=1 \
+"
+
+
+require mingw-gcc-build.inc
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 11/13] binutils-canadian-sdk
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (8 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 10/13] mingw-gcc-canadian-cross, mingw-gcc-canadian-cross-initial eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 12/13] gcc-canadian-sdk_4.2.2.bb eha
2008-10-07 12:51 ` [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb eha
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
packages/binutils/binutils-canadian-sdk_2.18.bb | 29 +++++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
create mode 100644 packages/binutils/binutils-canadian-sdk_2.18.bb
diff --git a/packages/binutils/binutils-canadian-sdk_2.18.bb b/packages/binutils/binutils-canadian-sdk_2.18.bb
new file mode 100644
index 0000000..cf27cd0
--- /dev/null
+++ b/packages/binutils/binutils-canadian-sdk_2.18.bb
@@ -0,0 +1,29 @@
+SECTION = "devel"
+require binutils_${PV}.bb
+inherit canadian-sdk
+
+DEPENDS="\
+ virtual/${HOST_PREFIX}binutils \
+ virtual/${HOST_PREFIX}gcc \
+ flex-native bison-native \
+"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
+EXTRA_OECONF = "--with-sysroot=${prefix}/${TARGET_SYS} \
+ --program-prefix=${TARGET_PREFIX}"
+PR = "r3"
+
+FILES_${PN}-dbg += "${prefix}/${TARGET_SYS}/bin/.debug"
+
+do_stage() {
+ :
+}
+
+do_install () {
+ autotools_do_install
+
+ # Install the libiberty header
+ install -d ${D}${includedir}
+ install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
+ install -m 644 ${S}/include/libiberty.h ${D}${includedir}
+}
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 12/13] gcc-canadian-sdk_4.2.2.bb
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (9 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 11/13] binutils-canadian-sdk eha
@ 2008-10-07 12:51 ` eha
2008-10-07 12:51 ` [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb eha
11 siblings, 0 replies; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
.../canadian-build-modules-configure.patch | 22 +++++
packages/gcc/gcc-canadian-sdk-build.inc | 81 ++++++++++++++++++++
packages/gcc/gcc-canadian-sdk-package.inc | 36 +++++++++
packages/gcc/gcc-canadian-sdk_4.2.2.bb | 27 +++++++
4 files changed, 166 insertions(+), 0 deletions(-)
create mode 100644 packages/gcc/gcc-4.2.2/canadian-build-modules-configure.patch
create mode 100644 packages/gcc/gcc-canadian-sdk-build.inc
create mode 100644 packages/gcc/gcc-canadian-sdk-package.inc
create mode 100644 packages/gcc/gcc-canadian-sdk_4.2.2.bb
diff --git a/packages/gcc/gcc-4.2.2/canadian-build-modules-configure.patch b/packages/gcc/gcc-4.2.2/canadian-build-modules-configure.patch
new file mode 100644
index 0000000..8aede10
--- /dev/null
+++ b/packages/gcc/gcc-4.2.2/canadian-build-modules-configure.patch
@@ -0,0 +1,22 @@
+diff -urN gcc-4.2.2-orig/gcc/configure gcc-4.2.2/gcc/configure
+--- gcc-4.2.2-orig/gcc/configure 2008-08-31 23:10:56.000000000 +0200
++++ gcc-4.2.2/gcc/configure 2008-08-31 23:03:02.000000000 +0200
+@@ -12716,6 +12716,7 @@
+ esac
+ saved_CFLAGS="${CFLAGS}"
+ CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
++ CPP="${CPP_FOR_BUILD}" CPPFLAGS="${CPPFLAGS_FOR_BUILD}" \
+ CONFIG_SITE= ${realsrcdir}/configure --cache-file=./other.cache \
+ --enable-languages=${enable_languages-all} \
+ --target=$target_alias --host=$build_alias --build=$build_alias
+diff -urN gcc-4.2.2-orig/gcc/configure.ac gcc-4.2.2/gcc/configure.ac
+--- gcc-4.2.2-orig/gcc/configure.ac 2008-08-31 23:10:53.000000000 +0200
++++ gcc-4.2.2/gcc/configure.ac 2008-08-31 23:03:29.000000000 +0200
+@@ -1490,6 +1490,7 @@
+ esac
+ saved_CFLAGS="${CFLAGS}"
+ CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
++ CPP="${CPP_FOR_BUILD}" CPPFLAGS="${CPPFLAGS_FOR_BUILD}" \
+ ${realsrcdir}/configure \
+ --enable-languages=${enable_languages-all} \
+ --target=$target_alias --host=$build_alias --build=$build_alias
diff --git a/packages/gcc/gcc-canadian-sdk-build.inc b/packages/gcc/gcc-canadian-sdk-build.inc
new file mode 100644
index 0000000..aba2067
--- /dev/null
+++ b/packages/gcc/gcc-canadian-sdk-build.inc
@@ -0,0 +1,81 @@
+USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
+USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibcgnueabi", "no", "", d )}'
+
+ARCH_FLAGS_FOR_TARGET=""
+
+# Tools for build
+export CC_FOR_BUILD="${BUILD_CC}"
+export CFLAGS_FOR_BUILD="${BUILD_CFLAGS}"
+export CPP_FOR_BUILD="${BUILD_CPP}"
+export CPPFLAGS_FOR_BUILD="${BUILD_CPPFLAGS}"
+export CXX_FOR_BUILD="${BUILD_CXX}"
+export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}"
+export LD_FOR_BUILD="${BUILD_LD}"
+export LDFLAGS_FOR_BUILD="${BUILD_LDFLAGS}"
+export AS_FOR_BUILD="${BUILD_PREFIX}as"
+export AR_FOR_BUILD="${BUILD_PREFIX}ar"
+export NM_FOR_BUILD="${BUILD_PREFIX}nm"
+export RANLIB_FOR_BUILD="${BUILD_PREFIX}ranlib"
+export GCJ_FOR_BUILD="${BUILD_PREFIX}gcj"
+export GFORTRAN_FOR_BUILD="${BUILD_PREFIX}gfortran"
+export DLLTOOL_FOR_BUILD="${BUILD_PREFIX}dlltool"
+export WINDRES_FOR_BUILD="${BUILD_PREFIX}windres"
+
+# Tools for host
+#CC
+#CFLAGS
+#CXX
+#CXXFLAGS
+#LD
+LDFLAGS=""
+#AS
+#AR
+#NM
+#RANLIB
+#GCJ
+#GFORTRAN
+export DLLTOOL="${HOST_PREFIX}dlltool"
+export WINDRES="${HOST_PREFIX}windres"
+
+# Tools for target
+export CC_FOR_TARGET="${TARGET_CC}"
+export CFLAGS_FOR_TARGET="${TARGET_CFLAGS}"
+export CXX_FOR_TARGET="${TARGET_CXX}"
+export CXXFLAGS_FOR_TARGET="${TARGET_CXXFLAGS}"
+export LD_FOR_TARGET="${TARGET_LD}"
+export LDFLAGS_FOR_TARGET="${TARGET_LDFLAGS}"
+export AS_FOR_TARGET="${TARGET_PREFIX}as"
+export AR_FOR_TARGET="${TARGET_PREFIX}ar"
+export NM_FOR_TARGET="${TARGET_PREFIX}nm"
+export RANLIB_FOR_TARGET="${TARGET_PREFIX}ranlib"
+export GCJ_FOR_TARGET="${TARGET_PREFIX}gcj"
+export GFORTRAN_FOR_TARGET="${TARGET_PREFIX}gfortran"
+export DLLTOOL_FOR_TARGET="${TARGET_PREFIX}dlltool"
+export WINDRES_FOR_TARGET="${TARGET_PREFIX}windres"
+
+EXTRA_OECONF_DEP ?= ""
+
+SYSROOT = "${WORKDIR}/sysroot"
+EXTRA_OECONF += ""
+EXTRA_OECONF_PATHS = " \
+ --with-local-prefix=$dollar{prefix}/local \
+ --with-gxx-include-dir=$dollar{prefix}/${TARGET_SYS}/usr/include/c++/${BINV} \
+ --with-build-sysroot=${SYSROOT} \
+ --with-sysroot=${SDK_REALPATH}/${TARGET_SYS} \
+"
+
+do_configure () {
+ # Work around Hardcoded path assumptions in gcc
+ mkdir -p ${SYSROOT}/usr
+ ln -sf ${STAGING_DIR_SDK}${layout_includedir} \
+ ${SYSROOT}/usr/include
+ ln -sf ${STAGING_DIR_SDK}${layout_libdir} \
+ ${SYSROOT}/usr/lib
+ (cd ${S} && gnu-configize) || die "failure running gnu-configize"
+ (cd ${S}/libstdc++-v3 && autoreconf)
+ canadian_sdk_runconf
+}
+
+do_compile () {
+ oe_runmake
+}
diff --git a/packages/gcc/gcc-canadian-sdk-package.inc b/packages/gcc/gcc-canadian-sdk-package.inc
new file mode 100644
index 0000000..5889821
--- /dev/null
+++ b/packages/gcc/gcc-canadian-sdk-package.inc
@@ -0,0 +1,36 @@
+# Packages emitted by our gcc-cross builds.
+#
+INHIBIT_PACKAGE_STRIP ?= ""
+OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}"
+INHIBIT_PACKAGE_STRIP = "1"
+
+python do_package() {
+ if bb.data.getVar('DEBIAN_NAMES', d, 1):
+ bb.data.setVar('PKG_libgcc', 'libgcc1', d)
+ bb.build.exec_func('package_do_package', d)
+}
+
+do_install () {
+ oe_runmake 'DESTDIR=${D}' 'prefix=${SDK_PATH}' install
+
+ # Manually run the target stripper since we won't get it run by
+ # the packaging.
+ if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then
+ ${TARGET_PREFIX}strip ${D}${prefix}/${TARGET_SYS}/lib/libstdc++.so.*
+ ${TARGET_PREFIX}strip ${D}${prefix}/${TARGET_SYS}/lib/libg2c.so.* || true
+ ${TARGET_PREFIX}strip ${D}${prefix}/${TARGET_SYS}/lib/libgcc_s.so.*
+ fi
+}
+
+FILES_libgcc = "${prefix}/${TARGET_SYS}/lib/libgcc*.so.*"
+FILES_libgcc-dev = "${prefix}/${TARGET_SYS}/lib/libgcc*.so"
+
+FILES_libstdc++ = "${prefix}/${TARGET_SYS}/lib/libstdc++.so.*"
+FILES_libstdc++-dev = "${prefix}/${TARGET_SYS}/usr/include/c++/${BINV} \
+ ${prefix}/${TARGET_SYS}/lib/libstdc++.so \
+ ${prefix}/${TARGET_SYS}/lib/libstdc++.a \
+ ${prefix}/${TARGET_SYS}/lib/libsupc++.a"
+
+FILES_libmudflap = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so.*"
+FILES_libmudflap-dev = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so \
+ ${prefix}/${TARGET_SYS}/lib/libmudflap*.a"
diff --git a/packages/gcc/gcc-canadian-sdk_4.2.2.bb b/packages/gcc/gcc-canadian-sdk_4.2.2.bb
new file mode 100644
index 0000000..f94863f
--- /dev/null
+++ b/packages/gcc/gcc-canadian-sdk_4.2.2.bb
@@ -0,0 +1,27 @@
+inherit canadian-sdk
+
+DEPENDS="\
+ virtual/${HOST_PREFIX}binutils \
+ virtual/${HOST_PREFIX}gcc \
+ virtual/${TARGET_PREFIX}binutils \
+ virtual/${TARGET_PREFIX}gcc \
+ virtual/${TARGET_PREFIX}libc-for-gcc \
+ gmp-native mpfr-native \
+"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
+
+PACKAGES = "${PN}"
+
+require gcc_${PV}.bb
+
+SRC_URI_append =+ "\
+ file://canadian-build-modules-configure.patch;patch=1 \
+"
+
+require gcc-canadian-sdk-build.inc
+require gcc-canadian-sdk-package.inc
+
+EXTRA_OECONF += "--disable-libunwind-exceptions --disable-libssp \
+ --disable-libgomp --disable-libmudflap \
+ --with-mpfr=${STAGING_DIR_NATIVE}${layout_exec_prefix}"
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
` (10 preceding siblings ...)
2008-10-07 12:51 ` [PATCH 12/13] gcc-canadian-sdk_4.2.2.bb eha
@ 2008-10-07 12:51 ` eha
2008-10-07 13:35 ` Henning Heinold
11 siblings, 1 reply; 34+ messages in thread
From: eha @ 2008-10-07 12:51 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
From: Esben Haabendal <eha@doredevelopment.dk>
Signed-off-by: Esben Haabendal <eha@doredevelopment.dk>
---
packages/meta/canadian-sdk.bb | 143 ++++++++++++++++++++++++++++++
packages/tasks/task-sdk-canadian-host.bb | 24 +++++
2 files changed, 167 insertions(+), 0 deletions(-)
create mode 100644 packages/meta/canadian-sdk.bb
create mode 100644 packages/tasks/task-sdk-canadian-host.bb
diff --git a/packages/meta/canadian-sdk.bb b/packages/meta/canadian-sdk.bb
new file mode 100644
index 0000000..119b4b0
--- /dev/null
+++ b/packages/meta/canadian-sdk.bb
@@ -0,0 +1,143 @@
+DESCRIPTION = "Meta package for building a installable toolchain"
+LICENSE = "MIT"
+DEPENDS = "ipkg-native ipkg-utils-native fakeroot-native sed-native"
+PR = "r2"
+
+inherit canadian-sdk meta
+
+SDK_DIR = "${WORKDIR}/sdk"
+SDK_OUTPUT = "${SDK_DIR}/image"
+SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
+SDK_SUFFIX = "toolchain"
+
+FEED_ARCH ?= "${TARGET_ARCH}"
+
+IPKG_HOST = "ipkg-cl -f ${IPKGCONF_CANSDK} -o ${SDK_OUTPUT}"
+IPKG_TARGET = "ipkg-cl -f ${IPKGCONF_TARGET} -o ${SDK_OUTPUT}${prefix}"
+
+TOOLCHAIN_CANADIAN_HOST_TASK ?= "task-sdk-canadian-host"
+TOOLCHAIN_TARGET_TASK ?= "task-sdk-bare"
+
+RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_CANADIAN_HOST_TASK}"
+
+do_populate_sdk() {
+ rm -rf ${SDK_OUTPUT}
+ mkdir -p ${SDK_OUTPUT}
+
+ package_update_index_ipk
+ package_generate_ipkg_conf
+
+ for arch in ${PACKAGE_ARCHS}; do
+ revipkgarchs="$arch $revipkgarchs"
+ done
+
+ ${IPKG_HOST} update
+ ${IPKG_HOST} -force-depends install ${TOOLCHAIN_CANADIAN_HOST_TASK}
+
+ ${IPKG_TARGET} update
+ ${IPKG_TARGET} install ${TOOLCHAIN_TARGET_TASK}
+
+ mkdir -p ${SDK_OUTPUT}${prefix}/${TARGET_SYS}
+ cp -pPR ${SDK_OUTPUT}${prefix}/usr ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/
+ rm -rf ${SDK_OUTPUT}${prefix}/usr
+
+ cp -pPR ${SDK_OUTPUT}${prefix}/lib/* ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/
+ rm -rf ${SDK_OUTPUT}${prefix}/lib/*
+
+ cp -pPR ${SDK_OUTPUT}/usr/lib/ipkg ${SDK_OUTPUT}${prefix}/lib/
+ rm -rf ${SDK_OUTPUT}/usr/lib/ipkg/*
+ rmdir -p --ignore-fail-on-non-empty ${SDK_OUTPUT}/usr/lib/ipkg
+
+ for fn in `ls ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/`; do
+ if [ -h ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/$fn ]; then
+ link=`readlink ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/$fn`
+ bname=`basename $link`
+ if [ ! -e $link -a -e ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/$bame ]; then
+ rm ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/$fn
+ ln -s $bname ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/$fn
+ fi
+ fi
+ done
+
+ mv ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/gcc ${SDK_OUTPUT}${prefix}/lib
+
+ echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/libpthread.so
+ echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/libc.so
+
+ # extract and store ipks, pkgdata and shlibs data
+ target_pkgs=`cat ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/usr/lib/ipkg/status | grep Package: | cut -f 2 -d ' '`
+ mkdir -p ${SDK_OUTPUT}${prefix}/ipk/
+ mkdir -p ${SDK_OUTPUT}${prefix}/pkgdata/runtime/
+ mkdir -p ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/shlibs/
+ for pkg in $target_pkgs ; do
+ for arch in $revipkgarchs; do
+ pkgnames=${DEPLOY_DIR_IPK}/$arch/${pkg}_*_$arch.ipk
+ if [ -e $pkgnames ]; then
+ oenote "Found $pkgnames"
+ cp $pkgnames ${SDK_OUTPUT}${prefix}/ipk/
+ orig_pkg=`ipkg-list-fields $pkgnames | grep OE: | cut -d ' ' -f2`
+ pkg_subdir_postfix=${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}
+ for aarch in $revipkgarchs; do
+ if [ -e "${STAGING_DIR}/pkgdata/${aarch}${pkg_subdir_postfix}/${orig_pkg}" ]; then
+ pkg_subdir="${aarch}${pkg_subdir_postfix}"
+ break
+ fi
+ done
+ oenote "Original package in ${pkg_subdir}"
+ mkdir -p ${SDK_OUTPUT}${prefix}/pkgdata/$pkg_subdir/runtime
+ cp ${STAGING_DIR}/pkgdata/$pkg_subdir/$orig_pkg ${SDK_OUTPUT}${prefix}/pkgdata/$pkg_subdir/
+ subpkgs=`cat ${STAGING_DIR}/pkgdata/$pkg_subdir/$orig_pkg | grep PACKAGES: | cut -b 10-`
+ for subpkg in $subpkgs; do
+ cp ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg ${SDK_OUTPUT}${prefix}/pkgdata/$pkg_subdir/runtime/
+ if [ -e ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg.packaged ];then
+ cp ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg.packaged ${SDK_OUTPUT}${prefix}/pkgdata/$pkg_subdir/runtime/
+ fi
+ if [ -e ${STAGING_DIR_TARGET}/shlibs/$subpkg.list ]; then
+ cp ${STAGING_DIR_TARGET}/shlibs/$subpkg.* ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/shlibs/
+ fi
+ done
+ break
+ fi
+ done
+ done
+
+ # add missing link to libgcc_s.so.1
+ # libgcc-dev should be responsible for that, but it's not getting built
+ # RP: it gets smashed up depending on the order that gcc, gcc-cross and
+ # gcc-cross-sdk get built :( (30/11/07)
+ ln -sf libgcc_s.so.1 ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/libgcc_s.so
+
+ # remove unwanted executables
+ rm -rf ${SDK_OUTPUT}${prefix}/sbin ${SDK_OUTPUT}${prefix}/etc
+
+ # remove broken .la files
+ rm -f ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/*.la
+
+ # fix pkgconfig data files
+ if [ -e ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/pkgconfig ]; then
+ cd ${SDK_OUTPUT}${prefix}/${TARGET_SYS}/lib/pkgconfig
+ for f in *.pc ; do
+ sed -i 's%=/usr%=${prefix}/${TARGET_SYS}%g' "$f"
+ done
+ for f in *.pc ; do
+ sed -i 's%${STAGING_DIR}%${prefix}%g' "$f"
+ done
+ fi
+}
+
+do_package_sdk() {
+ # package it up
+ mkdir -p ${SDK_DEPLOY}
+ cd ${SDK_OUTPUT}
+ fakeroot tar cfj ${SDK_DEPLOY}/${SDK_SYS}-sdk-${DISTRO}-${DISTRO_VERSION}-${FEED_ARCH}-${TARGET_OS}.tar.bz2 .${prefix}
+ rm -f ${SDK_DEPLOY}/${SDK_SYS}-sdk-${DISTRO}-${DISTRO_VERSION}-${FEED_ARCH}-${TARGET_OS}.zip
+ zip -r -D ${SDK_DEPLOY}/${SDK_SYS}-sdk-${DISTRO}-${DISTRO_VERSION}-${FEED_ARCH}-${TARGET_OS}.zip .${prefix}
+}
+
+do_populate_sdk[nostamp] = "1"
+do_populate_sdk[recrdeptask] = "do_package_write"
+addtask populate_sdk before do_build after do_install
+
+do_package_sdk[nostamp] = "1"
+do_package_sdk[recrdeptask] = "do_populate_sdk"
+addtask package_sdk before do_build after do_populate_sdk
diff --git a/packages/tasks/task-sdk-canadian-host.bb b/packages/tasks/task-sdk-canadian-host.bb
new file mode 100644
index 0000000..2f8c1e3
--- /dev/null
+++ b/packages/tasks/task-sdk-canadian-host.bb
@@ -0,0 +1,24 @@
+#
+# Copyright (C) 2007 OpenedHand Ltd
+#
+
+DESCRIPTION = "Host packages for the standalone SDK or external toolchain"
+PR = "r1"
+LICENSE = "MIT"
+ALLOW_EMPTY = "1"
+
+inherit canadian-sdk
+
+PACKAGES = "${PN}"
+
+RDEPENDS_${PN} = "\
+ binutils-canadian-sdk \
+ gcc-canadian-sdk \
+ g++ \
+ cpp \
+ libgcc \
+ libgcc-dev \
+ libstdc++ \
+ libstdc++-dev \
+ "
+# gdb-canadian-sdk \
--
1.5.4.3
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb
2008-10-07 12:51 ` [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb eha
@ 2008-10-07 13:35 ` Henning Heinold
2008-10-07 13:44 ` Esben Haabendal
2008-10-07 14:45 ` Otavio Salvador
0 siblings, 2 replies; 34+ messages in thread
From: Henning Heinold @ 2008-10-07 13:35 UTC (permalink / raw)
To: openembedded-devel
Hi,
thanks for the patches, but normaly we prefer to put the patches into the
bugtracker and mentioned here the bug id.
Bye Henning
PS: If no one is doing something on this bug ping the list from time to time.
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb
2008-10-07 13:35 ` Henning Heinold
@ 2008-10-07 13:44 ` Esben Haabendal
2008-10-07 14:45 ` Otavio Salvador
1 sibling, 0 replies; 34+ messages in thread
From: Esben Haabendal @ 2008-10-07 13:44 UTC (permalink / raw)
To: openembedded-devel
On Tue, Oct 7, 2008 at 3:35 PM, Henning Heinold
<heinold@inf.fu-berlin.de> wrote:
>
> thanks for the patches, but normaly we prefer to put the patches into the
> bugtracker and mentioned here the bug id.
Well, I would like to have a discussion on this patch series, and were
not suggesting to commit it as-is.
Also, as you might have noticed it, I am sending the patches as git
diff's, and not mtn diffs, so I assume
I would be ill fated If I were to put them in bugzilla.
Anyway, I just hope that someone will take a look at this work, so I
that I have a chance to move
canadian sdk in the right direction for putting it into .dev some day.
/Esben
--
Esben Haabendal, Senior Software Consultant
DoréDevelopment ApS, Ved Stranden 1, 9560 Hadsund, DK-Denmark
Phone: +45 51 92 53 93, E-mail: eha@doredevelopment.dk
WWW: http://www.doredevelopment.dk
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb
2008-10-07 13:35 ` Henning Heinold
2008-10-07 13:44 ` Esben Haabendal
@ 2008-10-07 14:45 ` Otavio Salvador
2008-10-07 16:48 ` Esben Haabendal
1 sibling, 1 reply; 34+ messages in thread
From: Otavio Salvador @ 2008-10-07 14:45 UTC (permalink / raw)
To: openembedded-devel
Henning Heinold <heinold@inf.fu-berlin.de> writes:
> Hi,
>
> thanks for the patches, but normaly we prefer to put the patches into the
> bugtracker and mentioned here the bug id.
>
> Bye Henning
>
> PS: If no one is doing something on this bug ping the list from time to time.
It would be much better to open a bug just to point to the git
tree. Otherwise it is really boring to submit a lot of patches to
bugzilla.
Besides that, reviewing the patches here are much easier and easy to
others to spot mistakes too.
My 2c.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb
2008-10-07 14:45 ` Otavio Salvador
@ 2008-10-07 16:48 ` Esben Haabendal
0 siblings, 0 replies; 34+ messages in thread
From: Esben Haabendal @ 2008-10-07 16:48 UTC (permalink / raw)
To: openembedded-devel
To make everybody happy, I have opened
http://bugs.openembedded.net/show_bug.cgi?id=4664
with all patches attached, and the local.conf I have used while developing.
/Esben
--
Esben Haabendal, Senior Software Consultant
DoréDevelopment ApS, Ved Stranden 1, 9560 Hadsund, DK-Denmark
Phone: +45 51 92 53 93, E-mail: eha@doredevelopment.dk
WWW: http://www.doredevelopment.dk
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-10-07 12:51 Canadian SDK support eha
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
@ 2008-10-21 20:23 ` Esben Haabendal
2008-12-02 17:41 ` Tom Rini
1 sibling, 1 reply; 34+ messages in thread
From: Esben Haabendal @ 2008-10-21 20:23 UTC (permalink / raw)
To: openembedded-devel
I have rebased the canadian-sdk branch at
http://git.doredevelopment.dk/openembedded.git
git://git.doredevelopment.dk/openembedded.git
against the new org.openembedded.dev git repo.
Best regards,
Esben
--
Esben Haabendal, Senior Software Consultant
DoréDevelopment ApS, Ved Stranden 1, 9560 Hadsund, DK-Denmark
Phone: +45 51 92 53 93, E-mail: eha@doredevelopment.dk
WWW: http://www.doredevelopment.dk
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-10-21 20:23 ` Canadian SDK support Esben Haabendal
@ 2008-12-02 17:41 ` Tom Rini
2008-12-02 20:38 ` Richard Purdie
0 siblings, 1 reply; 34+ messages in thread
From: Tom Rini @ 2008-12-02 17:41 UTC (permalink / raw)
To: openembedded-devel, Esben Haabendal
On Tue, Oct 21, 2008 at 10:23:30PM +0200, Esben Haabendal wrote:
> I have rebased the canadian-sdk branch at
>
> http://git.doredevelopment.dk/openembedded.git
> git://git.doredevelopment.dk/openembedded.git
>
> against the new org.openembedded.dev git repo.
So, did anyone have any objections to this code? Esben, is your branch
tracking the dev tree still? Thanks!
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-02 17:41 ` Tom Rini
@ 2008-12-02 20:38 ` Richard Purdie
2008-12-02 21:21 ` Tom Rini
0 siblings, 1 reply; 34+ messages in thread
From: Richard Purdie @ 2008-12-02 20:38 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
On Tue, 2008-12-02 at 10:41 -0700, Tom Rini wrote:
> On Tue, Oct 21, 2008 at 10:23:30PM +0200, Esben Haabendal wrote:
>
> > I have rebased the canadian-sdk branch at
> >
> > http://git.doredevelopment.dk/openembedded.git
> > git://git.doredevelopment.dk/openembedded.git
> >
> > against the new org.openembedded.dev git repo.
>
> So, did anyone have any objections to this code? Esben, is your branch
> tracking the dev tree still? Thanks!
I have been meaning to look at this in detail but so far I just haven't
had a chance :(.
Richard
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-02 20:38 ` Richard Purdie
@ 2008-12-02 21:21 ` Tom Rini
2008-12-06 21:45 ` Tom Rini
0 siblings, 1 reply; 34+ messages in thread
From: Tom Rini @ 2008-12-02 21:21 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
On Tue, Dec 02, 2008 at 08:38:42PM +0000, Richard Purdie wrote:
> On Tue, 2008-12-02 at 10:41 -0700, Tom Rini wrote:
> > On Tue, Oct 21, 2008 at 10:23:30PM +0200, Esben Haabendal wrote:
> >
> > > I have rebased the canadian-sdk branch at
> > >
> > > http://git.doredevelopment.dk/openembedded.git
> > > git://git.doredevelopment.dk/openembedded.git
> > >
> > > against the new org.openembedded.dev git repo.
> >
> > So, did anyone have any objections to this code? Esben, is your branch
> > tracking the dev tree still? Thanks!
>
> I have been meaning to look at this in detail but so far I just haven't
> had a chance :(.
OK. Esben, have you had any updates? If not, I'll take what's on the
bugzilla (or depending on my git-fu, pull your tree) and make a branch
on the main tree for this. I really don't want to see this get lost :)
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-02 21:21 ` Tom Rini
@ 2008-12-06 21:45 ` Tom Rini
2008-12-07 19:33 ` Tom Rini
0 siblings, 1 reply; 34+ messages in thread
From: Tom Rini @ 2008-12-06 21:45 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
On Tue, Dec 02, 2008 at 02:21:55PM -0700, Tom Rini wrote:
> On Tue, Dec 02, 2008 at 08:38:42PM +0000, Richard Purdie wrote:
> > On Tue, 2008-12-02 at 10:41 -0700, Tom Rini wrote:
> > > On Tue, Oct 21, 2008 at 10:23:30PM +0200, Esben Haabendal wrote:
> > >
> > > > I have rebased the canadian-sdk branch at
> > > >
> > > > http://git.doredevelopment.dk/openembedded.git
> > > > git://git.doredevelopment.dk/openembedded.git
> > > >
> > > > against the new org.openembedded.dev git repo.
> > >
> > > So, did anyone have any objections to this code? Esben, is your branch
> > > tracking the dev tree still? Thanks!
> >
> > I have been meaning to look at this in detail but so far I just haven't
> > had a chance :(.
>
> OK. Esben, have you had any updates? If not, I'll take what's on the
> bugzilla (or depending on my git-fu, pull your tree) and make a branch
> on the main tree for this. I really don't want to see this get lost :)
OK. I've created a trini/canadian-sdk branch and am going to start a
number of builds to make sure non-canadian SDKs are fine, before moving
on to canadian.
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-06 21:45 ` Tom Rini
@ 2008-12-07 19:33 ` Tom Rini
2008-12-07 20:00 ` Koen Kooi
0 siblings, 1 reply; 34+ messages in thread
From: Tom Rini @ 2008-12-07 19:33 UTC (permalink / raw)
To: openembedded-devel; +Cc: Esben Haabendal
On Sat, Dec 06, 2008 at 02:45:25PM -0700, Tom Rini wrote:
> On Tue, Dec 02, 2008 at 02:21:55PM -0700, Tom Rini wrote:
[snip]
> > OK. Esben, have you had any updates? If not, I'll take what's on the
> > bugzilla (or depending on my git-fu, pull your tree) and make a branch
> > on the main tree for this. I really don't want to see this get lost :)
>
> OK. I've created a trini/canadian-sdk branch and am going to start a
> number of builds to make sure non-canadian SDKs are fine, before moving
> on to canadian.
I've got regular old meta-toolchain-sbox builds done for qemux86
nokia800 db1200 mpc8313e-rdb nslu2le simpad now. I tried an AVR32
target, but it needs more than just the MACHINE being passed in. Happy
to include one of those if someone points me in the right direction.
Shortly I'm going to kick off Canadian builds for these targets too.
What other build-tests would people like to see done here?
As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
but I've got a git bisect narrowing that down now (30 revs left).
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 19:33 ` Tom Rini
@ 2008-12-07 20:00 ` Koen Kooi
2008-12-07 20:11 ` Tom Rini
0 siblings, 1 reply; 34+ messages in thread
From: Koen Kooi @ 2008-12-07 20:00 UTC (permalink / raw)
To: openembedded-devel
On 07-12-08 20:33, Tom Rini wrote:
> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
> but I've got a git bisect narrowing that down now (30 revs left).
gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
the right patch.
regards,
Koen
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 20:00 ` Koen Kooi
@ 2008-12-07 20:11 ` Tom Rini
2008-12-07 21:09 ` Koen Kooi
2008-12-07 21:13 ` Khem Raj
0 siblings, 2 replies; 34+ messages in thread
From: Tom Rini @ 2008-12-07 20:11 UTC (permalink / raw)
To: openembedded-devel
On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
> On 07-12-08 20:33, Tom Rini wrote:
>
>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
>> but I've got a git bisect narrowing that down now (30 revs left).
>
> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
> the right patch.
For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
gfortran-4.2.4.patch and fix this problem?
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 20:11 ` Tom Rini
@ 2008-12-07 21:09 ` Koen Kooi
2008-12-07 21:15 ` Tom Rini
2008-12-07 21:40 ` Khem Raj
2008-12-07 21:13 ` Khem Raj
1 sibling, 2 replies; 34+ messages in thread
From: Koen Kooi @ 2008-12-07 21:09 UTC (permalink / raw)
To: openembedded-devel
On 07-12-08 21:11, Tom Rini wrote:
> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
>> On 07-12-08 20:33, Tom Rini wrote:
>>
>>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
>>> but I've got a git bisect narrowing that down now (30 revs left).
>> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
>> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
>> the right patch.
>
> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
> gfortran-4.2.4.patch and fix this problem?
If 4.2.4 is the only using it (which I doubt), that would be the way to
go. IIRC all gcc 4.2 variants (so also the dreaded csl 2007qX ones) need
the one with '64', the 4.3.x ones (including csl 2008qX) need the one
with '65'.
Yes, that means the current situation is broken for csl 2007qX and 4.2.!4.
regards,
Koen
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 20:11 ` Tom Rini
2008-12-07 21:09 ` Koen Kooi
@ 2008-12-07 21:13 ` Khem Raj
1 sibling, 0 replies; 34+ messages in thread
From: Khem Raj @ 2008-12-07 21:13 UTC (permalink / raw)
To: openembedded-devel; +Cc: openembedded-devel
On (07/12/08 13:11), Tom Rini wrote:
> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
> > On 07-12-08 20:33, Tom Rini wrote:
> >
> >> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
> >> but I've got a git bisect narrowing that down now (30 revs left).
> >
> > gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
> > of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
> > the right patch.
>
> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
> gfortran-4.2.4.patch and fix this problem?
The patch under files is incorrect in one place and everywhere else its
similar to gcc 4.2.4 patch. I would suggest to replace the one under
files with the one from gcc-4.2.4 folder and delete the gcc-4.2.4 one.
This patch applied to gcc all 4.x so make sure that it applies to all of
them
Thx
-Khem
>
> --
> Tom Rini
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 21:09 ` Koen Kooi
@ 2008-12-07 21:15 ` Tom Rini
2008-12-08 5:24 ` Tom Rini
2008-12-07 21:40 ` Khem Raj
1 sibling, 1 reply; 34+ messages in thread
From: Tom Rini @ 2008-12-07 21:15 UTC (permalink / raw)
To: openembedded-devel
On Sun, Dec 07, 2008 at 10:09:39PM +0100, Koen Kooi wrote:
> On 07-12-08 21:11, Tom Rini wrote:
>> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
>>> On 07-12-08 20:33, Tom Rini wrote:
>>>
>>>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
>>>> but I've got a git bisect narrowing that down now (30 revs left).
>>> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
>>> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
>>> the right patch.
>>
>> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
>> gfortran-4.2.4.patch and fix this problem?
>
> If 4.2.4 is the only using it (which I doubt), that would be the way to
> go. IIRC all gcc 4.2 variants (so also the dreaded csl 2007qX ones) need
> the one with '64', the 4.3.x ones (including csl 2008qX) need the one
> with '65'.
> Yes, that means the current situation is broken for csl 2007qX and 4.2.!4.
OK. So files/gfortran-4.2.patch, files/gfortran-4.3.patch?
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 21:09 ` Koen Kooi
2008-12-07 21:15 ` Tom Rini
@ 2008-12-07 21:40 ` Khem Raj
2008-12-07 22:16 ` Koen Kooi
1 sibling, 1 reply; 34+ messages in thread
From: Khem Raj @ 2008-12-07 21:40 UTC (permalink / raw)
To: openembedded-devel; +Cc: openembedded-devel
On Sun, Dec 7, 2008 at 1:09 PM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> On 07-12-08 21:11, Tom Rini wrote:
>>
>> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
>>>
>>> On 07-12-08 20:33, Tom Rini wrote:
>>>
>>>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
>>>> but I've got a git bisect narrowing that down now (30 revs left).
>>>
>>> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
>>> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
>>> the right patch.
>>
>> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
>> gfortran-4.2.4.patch and fix this problem?
>
> If 4.2.4 is the only using it (which I doubt), that would be the way to go.
> IIRC all gcc 4.2 variants (so also the dreaded csl 2007qX ones) need the one
> with '64', the 4.3.x ones (including csl 2008qX) need the one with '65'.
Why do we need these two. 65 one sounds worng to me from first look.
> Yes, that means the current situation is broken for csl 2007qX and 4.2.!4.
>
> regards,
>
> Koen
>
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 21:40 ` Khem Raj
@ 2008-12-07 22:16 ` Koen Kooi
2008-12-08 0:19 ` Khem Raj
0 siblings, 1 reply; 34+ messages in thread
From: Koen Kooi @ 2008-12-07 22:16 UTC (permalink / raw)
To: openembedded-devel
On 07-12-08 22:40, Khem Raj wrote:
> On Sun, Dec 7, 2008 at 1:09 PM, Koen Kooi<k.kooi@student.utwente.nl> wrote:
>> On 07-12-08 21:11, Tom Rini wrote:
>>> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
>>>> On 07-12-08 20:33, Tom Rini wrote:
>>>>
>>>>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
>>>>> but I've got a git bisect narrowing that down now (30 revs left).
>>>> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
>>>> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
>>>> the right patch.
>>> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
>>> gfortran-4.2.4.patch and fix this problem?
>> If 4.2.4 is the only using it (which I doubt), that would be the way to go.
>> IIRC all gcc 4.2 variants (so also the dreaded csl 2007qX ones) need the one
>> with '64', the 4.3.x ones (including csl 2008qX) need the one with '65'.
>
> Why do we need these two. 65 one sounds worng to me from first look.
It is wrong in a way that it check for a 128bit cpu, but I can confirm
that running compiled fortran programs works very well with it. Using
the 'correct' version with '64' would cause a regression, which is not
what we want.
regards,
Koen
regards,
Koen
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 22:16 ` Koen Kooi
@ 2008-12-08 0:19 ` Khem Raj
2008-12-08 0:28 ` Philip Balister
0 siblings, 1 reply; 34+ messages in thread
From: Khem Raj @ 2008-12-08 0:19 UTC (permalink / raw)
To: openembedded-devel; +Cc: openembedded-devel
> It is wrong in a way that it check for a 128bit cpu, but I can confirm that
> running compiled fortran programs works very well with it. Using the
> 'correct' version with '64' would cause a regression, which is not what we
> want.
I see. If you have a test program or a pointer to a testcase which
demos this problem it would be nice.
I dont see this fix in trunk. Have you checked it on trunk does your
case fail on trunk too ?
>
> regards,
>
> Koen
>
> regards,
>
> Koen
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-08 0:19 ` Khem Raj
@ 2008-12-08 0:28 ` Philip Balister
0 siblings, 0 replies; 34+ messages in thread
From: Philip Balister @ 2008-12-08 0:28 UTC (permalink / raw)
To: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 1088 bytes --]
Khem Raj wrote:
>> It is wrong in a way that it check for a 128bit cpu, but I can confirm that
>> running compiled fortran programs works very well with it. Using the
>> 'correct' version with '64' would cause a regression, which is not what we
>> want.
>
> I see. If you have a test program or a pointer to a testcase which
> demos this problem it would be nice.
> I dont see this fix in trunk. Have you checked it on trunk does your
> case fail on trunk too ?
The one thing I know that uses fortran is octave. (Well, maybe fortran
is used by an octave dependency)
Philip
>
>> regards,
>>
>> Koen
>>
>> regards,
>>
>> Koen
>>
>>
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3303 bytes --]
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: Canadian SDK support
2008-12-07 21:15 ` Tom Rini
@ 2008-12-08 5:24 ` Tom Rini
0 siblings, 0 replies; 34+ messages in thread
From: Tom Rini @ 2008-12-08 5:24 UTC (permalink / raw)
To: openembedded-devel
On Sun, Dec 07, 2008 at 02:15:18PM -0700, Tom Rini wrote:
> On Sun, Dec 07, 2008 at 10:09:39PM +0100, Koen Kooi wrote:
> > On 07-12-08 21:11, Tom Rini wrote:
> >> On Sun, Dec 07, 2008 at 09:00:47PM +0100, Koen Kooi wrote:
> >>> On 07-12-08 20:33, Tom Rini wrote:
> >>>
> >>>> As an aside, gcc-cross-sdk on arm(v6 only?) is blowing up in fortran,
> >>>> but I've got a git bisect narrowing that down now (30 revs left).
> >>> gcc-cross-sdk picks the wrong patch (from files/gfortran.patch) instead
> >>> of the correct one from gcc-4.2.4/gfortran.patch. gcc-cross *does* pick
> >>> the right patch.
> >>
> >> For gcc-4.2.4.inc would it be OK to rename gfortran.patch to
> >> gfortran-4.2.4.patch and fix this problem?
> >
> > If 4.2.4 is the only using it (which I doubt), that would be the way to
> > go. IIRC all gcc 4.2 variants (so also the dreaded csl 2007qX ones) need
> > the one with '64', the 4.3.x ones (including csl 2008qX) need the one
> > with '65'.
> > Yes, that means the current situation is broken for csl 2007qX and 4.2.!4.
>
> OK. So files/gfortran-4.2.patch, files/gfortran-4.3.patch?
Well, gfortran-4.1.patch, assuming gcc-4.1.2 is including one that works
for it right now :)
--
Tom Rini
^ permalink raw reply [flat|nested] 34+ messages in thread
end of thread, other threads:[~2008-12-08 5:28 UTC | newest]
Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-07 12:51 Canadian SDK support eha
2008-10-07 12:51 ` [PATCH 01/13] Add BUILD/HOST/TARGET _EXEEXT variables for (ab)use by canadian sdk eha
2008-10-07 12:51 ` [PATCH 02/13] gcc-package.inc: add ${HOST_EXEEXT} support (for canadian sdk support) eha
2008-10-07 12:51 ` [PATCH 03/13] package_ipk.bbclass: add support for for canadian sdk ipkg eha
2008-10-07 12:51 ` [PATCH 04/13] siteinfo.bbclass: add cygwin and mingw32 support eha
2008-10-07 12:51 ` [PATCH 05/13] bitbake.conf: prepare for canadian sdk support eha
2008-10-07 12:51 ` [PATCH 06/13] canadian-cross.bbclass, canadian-native.bbclass, canadian-sdk.bbclass added eha
2008-10-07 12:51 ` [PATCH 07/13] insane.bbclass: add exceptions for canadian-* classes eha
2008-10-07 12:51 ` [PATCH 08/13] mingw-runtime, mingw-w32api, mingw-runtime-headers, mingw-w32api-headers eha
2008-10-07 12:51 ` [PATCH 09/13] mingw-binutils-canadian-cross eha
2008-10-07 12:51 ` [PATCH 10/13] mingw-gcc-canadian-cross, mingw-gcc-canadian-cross-initial eha
2008-10-07 12:51 ` [PATCH 11/13] binutils-canadian-sdk eha
2008-10-07 12:51 ` [PATCH 12/13] gcc-canadian-sdk_4.2.2.bb eha
2008-10-07 12:51 ` [PATCH 13/13] canadian-sdk.bb, task-sdk-canadian-host.bb eha
2008-10-07 13:35 ` Henning Heinold
2008-10-07 13:44 ` Esben Haabendal
2008-10-07 14:45 ` Otavio Salvador
2008-10-07 16:48 ` Esben Haabendal
2008-10-21 20:23 ` Canadian SDK support Esben Haabendal
2008-12-02 17:41 ` Tom Rini
2008-12-02 20:38 ` Richard Purdie
2008-12-02 21:21 ` Tom Rini
2008-12-06 21:45 ` Tom Rini
2008-12-07 19:33 ` Tom Rini
2008-12-07 20:00 ` Koen Kooi
2008-12-07 20:11 ` Tom Rini
2008-12-07 21:09 ` Koen Kooi
2008-12-07 21:15 ` Tom Rini
2008-12-08 5:24 ` Tom Rini
2008-12-07 21:40 ` Khem Raj
2008-12-07 22:16 ` Koen Kooi
2008-12-08 0:19 ` Khem Raj
2008-12-08 0:28 ` Philip Balister
2008-12-07 21:13 ` Khem Raj
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.