1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 00:20:08 +00:00

Rearrange staging to match target system layout. This is a major change and will require a full rebuild.

git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3123 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
Richard Purdie
2007-11-12 11:25:30 +00:00
parent 8c1871aabf
commit 01d5da72d0
7 changed files with 61 additions and 77 deletions
+21 -27
View File
@@ -27,7 +27,7 @@ CPPFLAGS = "${BUILD_CPPFLAGS}"
CFLAGS = "${BUILD_CFLAGS}" CFLAGS = "${BUILD_CFLAGS}"
CXXFLAGS = "${BUILD_CFLAGS}" CXXFLAGS = "${BUILD_CFLAGS}"
LDFLAGS = "${BUILD_LDFLAGS}" LDFLAGS = "${BUILD_LDFLAGS}"
LDFLAGS_build-darwin = "-L${STAGING_DIR}/${BUILD_SYS}/lib " LDFLAGS_build-darwin = "-L${STAGING_LIBDIR_NATIVE} "
STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}" STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}"
STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}" STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}"
@@ -47,39 +47,33 @@ export AS = "${HOST_PREFIX}as"
export RANLIB = "${HOST_PREFIX}ranlib" export RANLIB = "${HOST_PREFIX}ranlib"
export STRIP = "${HOST_PREFIX}strip" export STRIP = "${HOST_PREFIX}strip"
# Path prefixes # Path prefixes
base_prefix = "${exec_prefix}" export base_prefix = "${STAGING_DIR_NATIVE}"
prefix = "${STAGING_DIR}" export prefix = "${STAGING_DIR_NATIVE}${layout_prefix}"
exec_prefix = "${STAGING_DIR}/${BUILD_ARCH}-${BUILD_OS}" export exec_prefix = "${STAGING_DIR_NATIVE}${layout_exec_prefix}"
# Base paths # Base paths
base_bindir = "${base_prefix}/bin" export base_bindir = "${STAGING_DIR_NATIVE}${layout_base_bindir}"
base_sbindir = "${base_prefix}/bin" export base_sbindir = "${STAGING_DIR_NATIVE}${layout_base_sbindir}"
base_libdir = "${base_prefix}/lib" export base_libdir = "${STAGING_DIR_NATIVE}${layout_base_libdir}"
# Architecture independent paths # Architecture independent paths
sysconfdir = "${prefix}/etc" export datadir = "${STAGING_DIR_NATIVE}${layout_datadir}"
sharedstatedir = "${prefix}/com" export sysconfdir = "${STAGING_DIR_NATIVE}${layout_sysconfdir}"
localstatedir = "${prefix}/var" export sharedstatedir = "${STAGING_DIR_NATIVE}${layout_sharedstatedir}"
infodir = "${datadir}/info" export localstatedir = "${STAGING_DIR_NATIVE}${layout_localstatedir}"
mandir = "${datadir}/man" export infodir = "${STAGING_DIR_NATIVE}${layout_infodir}"
docdir = "${datadir}/doc" export mandir = "${STAGING_DIR_NATIVE}${layout_mandir}"
servicedir = "${prefix}/srv" export docdir = "${STAGING_DIR_NATIVE}${layout_docdir}"
export servicedir = "${STAGING_DIR_NATIVE}${layout_servicedir}"
# Architecture dependent paths # Architecture dependent paths
bindir = "${exec_prefix}/bin" export bindir = "${STAGING_DIR_NATIVE}${layout_bindir}"
sbindir = "${exec_prefix}/bin" export sbindir = "${STAGING_DIR_NATIVE}${layout_sbindir}"
libexecdir = "${exec_prefix}/libexec" export libexecdir = "${STAGING_DIR_NATIVE}${layout_libexecdir}"
libdir = "${exec_prefix}/lib" export libdir = "${STAGING_DIR_NATIVE}${layout_libdir}"
includedir = "${exec_prefix}/include" export includedir = "${STAGING_DIR_NATIVE}${layout_includedir}"
oldincludedir = "${exec_prefix}/include" export oldincludedir = "${STAGING_DIR_NATIVE}${layout_includedir}"
# Datadir is made arch dependent here, primarily
# for autoconf macros, and other things that
# may be manipulated to handle crosscompilation
# issues.
datadir = "${exec_prefix}/share"
do_stage () { do_stage () {
if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ] if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ]
+34 -37
View File
@@ -2,17 +2,14 @@
# Standard target filesystem layout. # Standard target filesystem layout.
################################################################## ##################################################################
# Note these currently match the existing staging layout but this
# is planned to change, see the oe-dev mailing list
# Path prefixes # Path prefixes
layout_prefix = "" layout_prefix = "/usr"
layout_exec_prefix = "" layout_exec_prefix = "/usr"
layout_base_prefix = "" layout_base_prefix = ""
# Base paths # Base paths
layout_base_bindir = "${layout_base_prefix}/bin" layout_base_bindir = "${layout_base_prefix}/bin"
layout_base_sbindir = "${layout_base_prefix}/bin" layout_base_sbindir = "${layout_base_prefix}/sbin"
layout_base_libdir = "${layout_base_prefix}/lib" layout_base_libdir = "${layout_base_prefix}/lib"
# Architecture independent paths # Architecture independent paths
@@ -27,7 +24,7 @@ layout_docdir = "${layout_datadir}/doc"
# Architecture dependent paths # Architecture dependent paths
layout_bindir = "${layout_exec_prefix}/bin" layout_bindir = "${layout_exec_prefix}/bin"
layout_sbindir = "${layout_exec_prefix}/bin" layout_sbindir = "${layout_exec_prefix}/sbin"
layout_libdir = "${layout_exec_prefix}/lib" layout_libdir = "${layout_exec_prefix}/lib"
layout_includedir = "${layout_exec_prefix}/include" layout_includedir = "${layout_exec_prefix}/include"
layout_libexecdir = "${layout_exec_prefix}/libexec" layout_libexecdir = "${layout_exec_prefix}/libexec"
@@ -38,31 +35,31 @@ layout_libexecdir = "${layout_exec_prefix}/libexec"
# Path prefixes # Path prefixes
export base_prefix = "" export base_prefix = ""
export prefix = "/usr" export prefix = "${layout_prefix}"
export exec_prefix = "${prefix}" export exec_prefix = "${layout_exec_prefix}"
# Base paths # Base paths
export base_bindir = "${base_prefix}/bin" export base_bindir = "${layout_base_bindir}"
export base_sbindir = "${base_prefix}/sbin" export base_sbindir = "${layout_base_sbindir}"
export base_libdir = "${base_prefix}/lib" export base_libdir = "${layout_base_libdir}"
# Architecture independent paths # Architecture independent paths
export datadir = "${prefix}/share" export datadir = "${layout_datadir}"
export sysconfdir = "/etc" export sysconfdir = "${layout_sysconfdir}"
export sharedstatedir = "${prefix}/com" export sharedstatedir = "${layout_sharedstatedir}"
export localstatedir = "/var" export localstatedir = "${layout_localstatedir}"
export infodir = "${datadir}/info" export infodir = "${layout_infodir}"
export mandir = "${datadir}/man" export mandir = "${layout_mandir}"
export docdir = "${datadir}/doc" export docdir = "${layout_docdir}"
export servicedir = "/srv" export servicedir = "${layout_servicedir}"
# Architecture dependent paths # Architecture dependent paths
export bindir = "${exec_prefix}/bin" export bindir = "${layout_bindir}"
export sbindir = "${exec_prefix}/sbin" export sbindir = "${layout_sbindir}"
export libexecdir = "${exec_prefix}/libexec" export libexecdir = "${layout_libexecdir}"
export libdir = "${exec_prefix}/lib" export libdir = "${layout_libdir}"
export includedir = "${exec_prefix}/include" export includedir = "${layout_includedir}"
export oldincludedir = "${exec_prefix}/include" export oldincludedir = "${layout_includedir}"
################################################################## ##################################################################
# Architecture-dependent build variables. # Architecture-dependent build variables.
@@ -203,18 +200,18 @@ B = "${S}"
STAGING_DIR = "${TMPDIR}/staging" STAGING_DIR = "${TMPDIR}/staging"
STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}" STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}/bin" STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${layout_bindir}"
STAGING_BINDIR_CROSS = "${STAGING_DIR_NATIVE}/bin/${HOST_SYS}" STAGING_BINDIR_CROSS = "${STAGING_DIR_NATIVE}${layout_bindir}/${HOST_SYS}"
STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}/lib" STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${layout_libdir}"
STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}/include" STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${layout_includedir}"
STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}/etc" STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${layout_sysconfdir}"
STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}/share" STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${layout_datadir}"
STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_SYS}" STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_SYS}"
STAGING_BINDIR = "${STAGING_DIR_HOST}/bin" STAGING_BINDIR = "${STAGING_DIR_HOST}${layout_bindir}"
STAGING_LIBDIR = "${STAGING_DIR_HOST}/lib" STAGING_LIBDIR = "${STAGING_DIR_HOST}${layout_libdir}"
STAGING_INCDIR = "${STAGING_DIR_HOST}/include" STAGING_INCDIR = "${STAGING_DIR_HOST}${layout_includedir}"
STAGING_DATADIR = "${STAGING_DIR_HOST}/share" STAGING_DATADIR = "${STAGING_DIR_HOST}${layout_datadir}"
STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader" STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader"
STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware" STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware"
STAGING_PYDIR = "${STAGING_DIR}/lib/python2.4" STAGING_PYDIR = "${STAGING_DIR}/lib/python2.4"
@@ -291,7 +288,7 @@ EXTRA_IMAGEDEPENDS = ""
CROSS_DIR = "${TMPDIR}/cross" CROSS_DIR = "${TMPDIR}/cross"
CROSS_DATADIR = "${CROSS_DIR}/share" CROSS_DATADIR = "${CROSS_DIR}/share"
export PATH_prepend = "${STAGING_BINDIR_CROSS}:${STAGING_BINDIR_NATIVE}:${CROSS_DIR}/bin:" export PATH_prepend = "${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${layout_sbindir}:${STAGING_BINDIR_NATIVE}:${CROSS_DIR}/bin:${STAGING_DIR_NATIVE}${layout_base_sbindir}:"
################################################################## ##################################################################
# Build utility info. # Build utility info.
+1 -1
View File
@@ -1,4 +1,4 @@
Dir "${STAGING_DIR}/" Dir "${STAGING_DIR_NATIVE}/"
{ {
State "var/lib/apt/" State "var/lib/apt/"
{ {
+1 -1
View File
@@ -3,7 +3,7 @@ inherit cross
DEPENDS += "flex-native bison-native" DEPENDS += "flex-native bison-native"
PROVIDES = "virtual/${TARGET_PREFIX}binutils" PROVIDES = "virtual/${TARGET_PREFIX}binutils"
PACKAGES = "" PACKAGES = ""
EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \ EXTRA_OECONF = "--with-sysroot=${STAGING_DIR_TARGET} \
--program-prefix=${TARGET_PREFIX}" --program-prefix=${TARGET_PREFIX}"
do_stage () { do_stage () {
+4 -9
View File
@@ -1,7 +1,9 @@
USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}' USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR}/${TARGET_SYS} \ EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \
--with-gxx-include-dir=${STAGING_DIR}/${TARGET_SYS}/include/c++" --with-gxx-include-dir=${STAGING_DIR_TARGET}/${layout_includedir}/c++ \
--with-sysroot=${STAGING_DIR_TARGET} \
--with-build-sysroot=${STAGING_DIR_TARGET}"
do_configure_prepend () { do_configure_prepend () {
rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a
@@ -25,13 +27,6 @@ do_stage_append () {
rm -f ${CROSS_DIR}/bin/*gcov rm -f ${CROSS_DIR}/bin/*gcov
rm -f ${CROSS_DIR}/bin/*gccbug rm -f ${CROSS_DIR}/bin/*gccbug
# Fix a few include links so cross builds are happier
if [ ! -e ${STAGING_INCDIR}/c++ ]; then
mkdir -p ${STAGING_INCDIR}
ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
${STAGING_INCDIR}/
fi
# We use libiberty from binutils # We use libiberty from binutils
rm -f ${CROSS_DIR}/lib/libiberty.a rm -f ${CROSS_DIR}/lib/libiberty.a
@@ -1,6 +1,5 @@
require qemu_${PV}.bb require qemu_${PV}.bb
inherit native inherit native
DEPENDS = "zlib-native" DEPENDS = "zlib-native"
prefix = "${STAGING_DIR}/${BUILD_SYS}"
require qemu-gcc3-check.inc require qemu-gcc3-check.inc
-1
View File
@@ -1,6 +1,5 @@
require qemu_cvs.bb require qemu_cvs.bb
inherit native inherit native
DEPENDS = "zlib-native" DEPENDS = "zlib-native"
prefix = "${STAGING_DIR}/${BUILD_SYS}"
require qemu-gcc3-check.inc require qemu-gcc3-check.inc