From bea72c2fecde175add169bb55df1922b048030c8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 30 Oct 2009 21:48:21 +0000 Subject: Start removal of layout_* variables and replace these with new mechanisms to allow nextgen SDK generation (from Poky) Signed-off-by: Richard Purdie --- classes/autotools.bbclass | 12 ++++++------ classes/base.bbclass | 4 ++-- classes/binconfig.bbclass | 8 ++++---- classes/canadian-cross.bbclass | 38 +++++++++++++++++++------------------- classes/canadian-native.bbclass | 31 ++++++------------------------- classes/cross.bbclass | 25 +------------------------ classes/distutils.bbclass | 8 ++++---- classes/native.bbclass | 32 ++++++++------------------------ classes/packaged-staging.bbclass | 18 +++++++++--------- classes/scons.bbclass | 2 +- classes/xlibs.bbclass | 4 ++-- 11 files changed, 62 insertions(+), 120 deletions(-) (limited to 'classes') diff --git a/classes/autotools.bbclass b/classes/autotools.bbclass index 45b269f4fd..de76fe0ab4 100644 --- a/classes/autotools.bbclass +++ b/classes/autotools.bbclass @@ -191,14 +191,14 @@ autotools_stage_all() { oe_runmake DESTDIR="${STAGE_TEMP}" install autotools_stage_dir ${STAGE_TEMP}/${includedir} ${STAGING_INCDIR} if [ "${BUILD_SYS}" = "${HOST_SYS}" ]; then - autotools_stage_dir ${STAGE_TEMP}/${bindir} ${STAGING_DIR_HOST}${layout_bindir} - autotools_stage_dir ${STAGE_TEMP}/${sbindir} ${STAGING_DIR_HOST}${layout_sbindir} - autotools_stage_dir ${STAGE_TEMP}/${base_bindir} ${STAGING_DIR_HOST}${layout_base_bindir} - autotools_stage_dir ${STAGE_TEMP}/${base_sbindir} ${STAGING_DIR_HOST}${layout_base_sbindir} - autotools_stage_dir ${STAGE_TEMP}/${libexecdir} ${STAGING_DIR_HOST}${layout_libexecdir} + autotools_stage_dir ${STAGE_TEMP}/${bindir} ${STAGING_DIR_HOST}${bindir} + autotools_stage_dir ${STAGE_TEMP}/${sbindir} ${STAGING_DIR_HOST}${sbindir} + autotools_stage_dir ${STAGE_TEMP}/${base_bindir} ${STAGING_DIR_HOST}${base_bindir} + autotools_stage_dir ${STAGE_TEMP}/${base_sbindir} ${STAGING_DIR_HOST}${base_sbindir} + autotools_stage_dir ${STAGE_TEMP}/${libexecdir} ${STAGING_DIR_HOST}${libexecdir} if [ "${prefix}/lib" != "${libdir}" ]; then # python puts its files in here, make sure they are staged as well - autotools_stage_dir ${STAGE_TEMP}/${prefix}/lib ${STAGING_DIR_HOST}${layout_prefix}/lib + autotools_stage_dir ${STAGE_TEMP}/${prefix}/lib ${STAGING_DIR_HOST}${prefix}/lib fi fi if [ -d ${STAGE_TEMP}/${libdir} ] diff --git a/classes/base.bbclass b/classes/base.bbclass index 9de2c67af1..3f610ac384 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -977,8 +977,8 @@ base_do_stage () { : } -do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/${layout_bindir} ${STAGING_DIR_TARGET}/${layout_libdir} \ - ${STAGING_DIR_TARGET}/${layout_includedir} \ +do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/${bindir} ${STAGING_DIR_TARGET}/${libdir} \ + ${STAGING_DIR_TARGET}/${includedir} \ ${STAGING_BINDIR_NATIVE} ${STAGING_LIBDIR_NATIVE} \ ${STAGING_INCDIR_NATIVE} \ ${STAGING_DATADIR} \ diff --git a/classes/binconfig.bbclass b/classes/binconfig.bbclass index 5789903178..04268c7f07 100644 --- a/classes/binconfig.bbclass +++ b/classes/binconfig.bbclass @@ -18,8 +18,8 @@ def get_binconfig_mangle(d): s += " -e 's:OELIBDIR:${STAGING_LIBDIR}:;'" s += " -e 's:OEINCDIR:${STAGING_INCDIR}:;'" s += " -e 's:OEDATADIR:${STAGING_DATADIR}:'" - s += " -e 's:OEPREFIX:${STAGING_DIR_HOST}${layout_prefix}:'" - s += " -e 's:OEEXECPREFIX:${STAGING_DIR_HOST}${layout_exec_prefix}:'" + s += " -e 's:OEPREFIX:${STAGING_DIR_HOST}${prefix}:'" + s += " -e 's:OEEXECPREFIX:${STAGING_DIR_HOST}${exec_prefix}:'" s += " -e 's:-I${WORKDIR}:-I${STAGING_INCDIR}:'" s += " -e 's:-L${WORKDIR}:-L${STAGING_LIBDIR}:'" if bb.data.getVar("OE_BINCONFIG_EXTRA_MANGLE", d): @@ -37,7 +37,7 @@ do_install_append() { -e 's:${STAGING_LIBDIR}:${libdir}:g;' \ -e 's:${STAGING_INCDIR}:${includedir}:g;' \ -e 's:${STAGING_DATADIR}:${datadir}:' \ - -e 's:${STAGING_DIR_HOST}${layout_prefix}:${prefix}:' > ${D}${bindir}/`basename $config` + -e 's:${STAGING_DIR_HOST}${prefix}:${prefix}:' > ${D}${bindir}/`basename $config` done fi @@ -46,7 +46,7 @@ do_install_append() { -e 's:${STAGING_LIBDIR}:${libdir}:g;' \ -e 's:${STAGING_INCDIR}:${includedir}:g;' \ -e 's:${STAGING_DATADIR}:${datadir}:' \ - -e 's:${STAGING_DIR_HOST}${layout_prefix}:${prefix}:' \ + -e 's:${STAGING_DIR_HOST}${prefix}:${prefix}:' \ $lafile done } diff --git a/classes/canadian-cross.bbclass b/classes/canadian-cross.bbclass index 474fb1d2ba..a254d40b6d 100644 --- a/classes/canadian-cross.bbclass +++ b/classes/canadian-cross.bbclass @@ -41,31 +41,31 @@ oldincludedir = "${exec_prefix}/include" # Path prefixes export base_prefix = "${STAGING_DIR_HOST}" -export prefix = "${STAGING_DIR_HOST}${layout_prefix}" -export exec_prefix = "${STAGING_DIR_HOST}${layout_exec_prefix}" +export prefix = "${STAGING_DIR_HOST}/usr" +export exec_prefix = "${STAGING_DIR_HOST}/usr" # 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}" +export base_bindir = "${STAGING_DIR_HOST}/bin" +export base_sbindir = "${STAGING_DIR_HOST}/sbin" +export base_libdir = "${STAGING_DIR_HOST}/lib" # 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}" +export datadir = "${STAGING_DIR_HOST}/usr/share" +export sysconfdir = "${STAGING_DIR_HOST}/etc" +export sharedstatedir = "${STAGING_DIR_HOST}/com" +export localstatedir = "${STAGING_DIR_HOST}/var" +export infodir = "${STAGING_DIR_HOST}/usr/info" +export mandir = "${STAGING_DIR_HOST}/usr/man" +export docdir = "${STAGING_DIR_HOST}/usr/doc" +export servicedir = "${STAGING_DIR_HOST}/srv" # 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}" +export bindir = "${STAGING_DIR_HOST}/usr/bin" +export sbindir = "${STAGING_DIR_HOST}/usr/sbin" +export libexecdir = "${STAGING_DIR_HOST}/usr/libexec" +export libdir = "${STAGING_DIR_HOST}/usr/lib" +export includedir = "${STAGING_DIR_HOST}/usr/include" +export oldincludedir = "${STAGING_DIR_HOST}/usr/include" do_stage () { oe_runmake install diff --git a/classes/canadian-native.bbclass b/classes/canadian-native.bbclass index d572ab5990..655eecec76 100644 --- a/classes/canadian-native.bbclass +++ b/classes/canadian-native.bbclass @@ -43,33 +43,14 @@ 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}" +# Change to place files in SDKPATH +prefix = "${SDKPATH}" +exec_prefix = "${SDKPATH}" +base_prefix = "${SDKPATH}" -# 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}" +export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig" +export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}" do_stage () { if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ] diff --git a/classes/cross.bbclass b/classes/cross.bbclass index 68e3803f3e..1de157c0f5 100644 --- a/classes/cross.bbclass +++ b/classes/cross.bbclass @@ -28,34 +28,11 @@ LDFLAGS_build-darwin = "-L${STAGING_LIBDIR_NATIVE}" TOOLCHAIN_OPTIONS = "" # Overrides for paths - -# Path prefixes -base_prefix = "${exec_prefix}" prefix = "${CROSS_DIR}" +base_prefix = "${prefix}" 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 = "${exec_prefix}/include" -oldincludedir = "${exec_prefix}/include" do_stage () { oe_runmake install diff --git a/classes/distutils.bbclass b/classes/distutils.bbclass index ea4184b235..4d1fc8c6fc 100644 --- a/classes/distutils.bbclass +++ b/classes/distutils.bbclass @@ -2,7 +2,7 @@ inherit distutils-base DISTUTILS_BUILD_ARGS ?= "" DISTUTILS_STAGE_HEADERS_ARGS ?= "--install-dir=${STAGING_INCDIR}/${PYTHON_DIR}" -DISTUTILS_STAGE_ALL_ARGS ?= "--prefix=${STAGING_DIR_HOST}${layout_prefix} \ +DISTUTILS_STAGE_ALL_ARGS ?= "--prefix=${STAGING_DIR_HOST}${prefix} \ --install-data=${STAGING_DATADIR}" DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \ --install-data=${D}/${datadir}" @@ -16,7 +16,7 @@ distutils_do_compile() { } distutils_stage_headers() { - install -d ${STAGING_DIR_HOST}${layout_libdir}/${PYTHON_DIR}/site-packages + install -d ${STAGING_DIR_HOST}${libdir}/${PYTHON_DIR}/site-packages BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ ${STAGING_BINDIR_NATIVE}/python setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \ oefatal "python setup.py install_headers execution failed." @@ -25,8 +25,8 @@ distutils_stage_headers() { distutils_stage_all() { STAGING_INCDIR=${STAGING_INCDIR} \ STAGING_LIBDIR=${STAGING_LIBDIR} \ - install -d ${STAGING_DIR_HOST}${layout_libdir}/${PYTHON_DIR}/site-packages - PYTHONPATH=${STAGING_DIR_HOST}${layout_libdir}/${PYTHON_DIR}/site-packages \ + install -d ${STAGING_DIR_HOST}${libdir}/${PYTHON_DIR}/site-packages + PYTHONPATH=${STAGING_DIR_HOST}${libdir}/${PYTHON_DIR}/site-packages \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ ${STAGING_BINDIR_NATIVE}/python setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ oefatal "python setup.py install (stage) execution failed." diff --git a/classes/native.bbclass b/classes/native.bbclass index 69231e0b6b..70ec81fbb1 100644 --- a/classes/native.bbclass +++ b/classes/native.bbclass @@ -52,32 +52,16 @@ export RANLIB = "${HOST_PREFIX}ranlib" export STRIP = "${HOST_PREFIX}strip" # Path prefixes -export base_prefix = "${STAGING_DIR_NATIVE}" -export prefix = "${STAGING_DIR_NATIVE}${layout_prefix}" -export exec_prefix = "${STAGING_DIR_NATIVE}${layout_exec_prefix}" +base_prefix = "${STAGING_DIR_NATIVE}" +prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" -# Base paths -export base_bindir = "${STAGING_DIR_NATIVE}${layout_base_bindir}" -export base_sbindir = "${STAGING_DIR_NATIVE}${layout_base_sbindir}" -export base_libdir = "${STAGING_DIR_NATIVE}${layout_base_libdir}" +# Since we actually install these into situ there is no staging prefix +STAGING_DIR_HOST = "" +STAGING_DIR_TARGET = "" +SHLIBSDIR = "${STAGING_DIR_NATIVE}/shlibs" +PKG_CONFIG_DIR = "${libdir}/pkgconfig" -# Architecture independent paths -export datadir = "${STAGING_DIR_NATIVE}${layout_datadir}" -export sysconfdir = "${STAGING_DIR_NATIVE}${layout_sysconfdir}" -export sharedstatedir = "${STAGING_DIR_NATIVE}${layout_sharedstatedir}" -export localstatedir = "${STAGING_DIR_NATIVE}${layout_localstatedir}" -export infodir = "${STAGING_DIR_NATIVE}${layout_infodir}" -export mandir = "${STAGING_DIR_NATIVE}${layout_mandir}" -export docdir = "${STAGING_DIR_NATIVE}${layout_docdir}" -export servicedir = "${STAGING_DIR_NATIVE}${layout_servicedir}" - -# Architecture dependent paths -export bindir = "${STAGING_DIR_NATIVE}${layout_bindir}" -export sbindir = "${STAGING_DIR_NATIVE}${layout_sbindir}" -export libexecdir = "${STAGING_DIR_NATIVE}${layout_libexecdir}" -export libdir = "${STAGING_DIR_NATIVE}${layout_libdir}" -export includedir = "${STAGING_DIR_NATIVE}${layout_includedir}" -export oldincludedir = "${STAGING_DIR_NATIVE}${layout_includedir}" do_stage () { if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ] diff --git a/classes/packaged-staging.bbclass b/classes/packaged-staging.bbclass index 3b97f593b8..e3d274b674 100644 --- a/classes/packaged-staging.bbclass +++ b/classes/packaged-staging.bbclass @@ -152,12 +152,12 @@ staging_helper () { done echo "dest root /" >> $conffile fi - if [ ! -e ${TMPDIR}${layout_libdir}/opkg/info/ ]; then - mkdir -p ${TMPDIR}${layout_libdir}/opkg/info/ + if [ ! -e ${TMPDIR}${libdir}/opkg/info/ ]; then + mkdir -p ${TMPDIR}${libdir}/opkg/info/ fi - if [ ! -e ${TMPDIR}${layout_libdir}/ipkg/ ]; then - cd ${TMPDIR}${layout_libdir}/ - ln -sf opkg/ ipkg + if [ ! -e ${TMPDIR}${libdir}/ipkg/ ]; then + cd ${TMPDIR}${libdir}/ + ln -sf opkg/ ipkg || true fi } @@ -187,7 +187,7 @@ python packagestage_scenefunc () { # # Install the staging package somewhere temporarily so we can extract the stamp files # - bb.mkdirhier(bb.data.expand("${WORKDIR}/tstage/${layout_libdir}/opkg/info/ ", d)) + bb.mkdirhier(bb.data.expand("${WORKDIR}/tstage/${libdir_native}/opkg/info/ ", d)) cmd = bb.data.expand("${PSTAGE_PKGMANAGER} -f ${PSTAGE_MACHCONFIG} -force-depends -o ${WORKDIR}/tstage install", d) ret = os.system("PATH=\"%s\" %s %s" % (path, cmd, stagepkg)) if ret != 0: @@ -329,20 +329,20 @@ staging_packager () { staging_package_installer () { #${PSTAGE_INSTALL_CMD} ${PSTAGE_PKG} - STATUSFILE=${TMPDIR}${layout_libdir}/opkg/status + STATUSFILE=${TMPDIR}${libdir}/opkg/status echo "Package: ${PSTAGE_PKGPN}" >> $STATUSFILE echo "Version: ${PSTAGE_PKGVERSION}" >> $STATUSFILE echo "Status: install user installed" >> $STATUSFILE echo "Architecture: ${PSTAGE_PKGARCH}" >> $STATUSFILE echo "" >> $STATUSFILE - CTRLFILE=${TMPDIR}${layout_libdir}/opkg/info/${PSTAGE_PKGPN}.control + CTRLFILE=${TMPDIR}${libdir}/opkg/info/${PSTAGE_PKGPN}.control echo "Package: ${PSTAGE_PKGPN}" > $CTRLFILE echo "Version: ${PSTAGE_PKGVERSION}" >> $CTRLFILE echo "Architecture: ${PSTAGE_PKGARCH}" >> $CTRLFILE cd ${PSTAGE_TMPDIR_STAGE} - find -type f | grep -v ./CONTROL | sed -e 's/^\.//' > ${TMPDIR}${layout_libdir}/opkg/info/${PSTAGE_PKGPN}.list + find -type f | grep -v ./CONTROL | sed -e 's/^\.//' > ${TMPDIR}${libdir}/opkg/info/${PSTAGE_PKGPN}.list } python do_package_stage () { diff --git a/classes/scons.bbclass b/classes/scons.bbclass index cd5de61e6d..b139411c19 100644 --- a/classes/scons.bbclass +++ b/classes/scons.bbclass @@ -13,7 +13,7 @@ scons_do_install() { scons_do_stage() { install -d ${D}${prefix} - ${STAGING_BINDIR_NATIVE}/scons PREFIX=${STAGING_DIR_HOST}/${layout_prefix} prefix=${STAGING_DIR_HOST}/${layout_prefix} install || \ + ${STAGING_BINDIR_NATIVE}/scons PREFIX=${STAGING_DIR_HOST}/${prefix} prefix=${STAGING_DIR_HOST}/${prefix} install || \ oefatal "scons stage execution failed." } diff --git a/classes/xlibs.bbclass b/classes/xlibs.bbclass index ae8f928f1e..fc52400b9f 100644 --- a/classes/xlibs.bbclass +++ b/classes/xlibs.bbclass @@ -6,10 +6,10 @@ XLIBS_CVS = "${FREEDESKTOP_CVS}/xlibs" inherit autotools pkgconfig do_stage() { - oe_runmake install prefix=${STAGING_DIR_HOST}${layout_prefix} \ + oe_runmake install prefix=${STAGING_DIR_HOST}${prefix} \ bindir=${STAGING_BINDIR} \ includedir=${STAGING_INCDIR} \ libdir=${STAGING_LIBDIR} \ datadir=${STAGING_DATADIR} \ - mandir=${STAGING_DIR_HOST}${layout_mandir} + mandir=${STAGING_DIR_HOST}${mandir} } -- cgit v1.2.3