diff options
author | Tom Rini <trini@embeddedalley.com> | 2009-04-22 17:47:36 -0400 |
---|---|---|
committer | Tom Rini <trini@embeddedalley.com> | 2009-04-22 17:47:36 -0400 |
commit | 3889422c46439421ff1692081c632209ea3f6493 (patch) | |
tree | 05e92bd0060e7c12d96ab4d6a0a97d9a32e91e17 /classes | |
parent | c8b3cc5ef81d305d5d90644da36acbc40c7c01f1 (diff) | |
parent | ef0a43982a9dc7b6744c5aef30cd61b01de8cfc9 (diff) |
Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into org.openembedded.dev
Diffstat (limited to 'classes')
-rw-r--r-- | classes/autotools.bbclass | 4 | ||||
-rw-r--r-- | classes/base.bbclass | 22 | ||||
-rw-r--r-- | classes/canadian-sdk.bbclass | 6 | ||||
-rw-r--r-- | classes/distutils-common-base.bbclass | 1 | ||||
-rw-r--r-- | classes/icecc.bbclass | 11 | ||||
-rw-r--r-- | classes/image.bbclass | 9 | ||||
-rw-r--r-- | classes/lib_package.bbclass | 6 | ||||
-rw-r--r-- | classes/package.bbclass | 8 | ||||
-rw-r--r-- | classes/testlab.bbclass | 2 |
9 files changed, 42 insertions, 27 deletions
diff --git a/classes/autotools.bbclass b/classes/autotools.bbclass index 20f371a987..e43b289c56 100644 --- a/classes/autotools.bbclass +++ b/classes/autotools.bbclass @@ -231,6 +231,10 @@ autotools_stage_all() { echo "cp -f ${STAGE_TEMP}/${libdir}/pkgconfig/*.pc ${STAGING_LIBDIR}/pkgconfig/" cp -f ${STAGE_TEMP}/${libdir}/pkgconfig/*.pc ${STAGING_LIBDIR}/pkgconfig/ fi + if [ -e ${STAGE_TEMP}/${datadir}/pkgconfig/ ] ; then + echo "cp -f ${STAGE_TEMP}/${datadir}/pkgconfig/*.pc ${STAGING_DATADIR}/pkgconfig/" + cp -f ${STAGE_TEMP}/${datadir}/pkgconfig/*.pc ${STAGING_DATADIR}/pkgconfig/ + fi fi rm -rf ${STAGE_TEMP}/${mandir} || true rm -rf ${STAGE_TEMP}/${infodir} || true diff --git a/classes/base.bbclass b/classes/base.bbclass index 9ec705bc1e..e5fd814b25 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -40,12 +40,11 @@ def base_path_relative(src, dest): return sep.join(relpath) # for MD5/SHA handling -def base_chk_load_parser(config_path): +def base_chk_load_parser(config_paths): import ConfigParser, os, bb parser = ConfigParser.ConfigParser() - if not len(parser.read(config_path)) == 1: - bb.note("Can not open the '%s' ini file" % config_path) - raise Exception("Can not open the '%s'" % config_path) + if len(parser.read(config_paths)) < 1: + raise ValueError("no ini files could be found") return parser @@ -620,13 +619,18 @@ python base_do_fetch() { # Verify the SHA and MD5 sums we have in OE and check what do # in - check_sum = bb.which(bb.data.getVar('BBPATH', d, True), "conf/checksums.ini") - if not check_sum: - bb.note("No conf/checksums.ini found, not checking checksums") - return + checksum_paths = bb.data.getVar('BBPATH', d, True).split(":") + + # reverse the list to give precedence to directories that + # appear first in BBPATH + checksum_paths.reverse() + checksum_files = ["%s/conf/checksums.ini" % path for path in checksum_paths] try: - parser = base_chk_load_parser(check_sum) + parser = base_chk_load_parser(checksum_files) + except ValueError: + bb.note("No conf/checksums.ini found, not checking checksums") + return except: bb.note("Creating the CheckSum parser failed") return diff --git a/classes/canadian-sdk.bbclass b/classes/canadian-sdk.bbclass index 6b4fdf878a..a6c5552310 100644 --- a/classes/canadian-sdk.bbclass +++ b/classes/canadian-sdk.bbclass @@ -19,11 +19,7 @@ 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 " - +DEPENDS_prepend = "virtual/${HOST_PREFIX}binutils virtual/${HOST_PREFIX}gcc " # On mingw systems we want to have the real sysroot default to c:/... and # assume that the default install will be on the C drive. This can be changed diff --git a/classes/distutils-common-base.bbclass b/classes/distutils-common-base.bbclass index 068eac4de8..9ca392b84a 100644 --- a/classes/distutils-common-base.bbclass +++ b/classes/distutils-common-base.bbclass @@ -17,6 +17,7 @@ PACKAGES = "${PN}-dev ${PN}-dbg ${PN}-doc ${PN}" FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" FILES_${PN}-dev += "\ + ${datadir}/pkgconfig \ ${libdir}/pkgconfig \ ${libdir}/${PYTHON_DIR}/site-packages/*.la \ " diff --git a/classes/icecc.bbclass b/classes/icecc.bbclass index dce29fbbeb..0eb2d9feee 100644 --- a/classes/icecc.bbclass +++ b/classes/icecc.bbclass @@ -137,7 +137,8 @@ def create_native_env(bb,d): def get_cross_kernel_cc(bb,d): kernel_cc = bb.data.expand('${KERNEL_CC}', d) - kernel_cc = kernel_cc.replace('ccache', '') + kernel_cc = kernel_cc.replace('ccache', '').strip() + kernel_cc = kernel_cc.split(' ')[0] kernel_cc = kernel_cc.strip() return kernel_cc @@ -182,10 +183,10 @@ def create_cross_kernel_env(bb,d): cr_env_script = bb.data.getVar('ICECC_ENV_EXEC', d) or bb.data.expand('${STAGING_DIR}', d)+"/ice/icecc-create-env" result=os.popen("%s %s %s %s %s %s" %(cr_env_script, "--silent", - os.path.join(ice_dir,'bin',kernel_cc), - os.path.join(ice_dir,target_sys,'bin','g++'), - os.path.join(ice_dir,target_sys,'bin','as'), - os.path.join(ice_dir,"ice",cross_name) ) ) + os.path.join(ice_dir, 'bin', kernel_cc), + os.path.join(ice_dir, 'bin', "%s-g++" % target_sys), + os.path.join(ice_dir, 'bin', "%s-as" % target_sys), + os.path.join(ice_dir, "ice", cross_name) ) ) return tar_file diff --git a/classes/image.bbclass b/classes/image.bbclass index fd0df4df08..cbbbbd13d6 100644 --- a/classes/image.bbclass +++ b/classes/image.bbclass @@ -17,16 +17,16 @@ IMAGE_INITSCRIPTS ?= "initscripts" # IMAGE_LOGIN_MANAGER ?= "tinylogin" -IMAGE_VARS = "${IMAGE_INITSCRIPTS} \ +IMAGE_BOOT ?= "${IMAGE_INITSCRIPTS} \ ${IMAGE_DEV_MANAGER} \ ${IMAGE_INIT_MANAGER} \ ${IMAGE_LOGIN_MANAGER} " -RDEPENDS += "${IMAGE_INSTALL} ${IMAGE_VARS}" +RDEPENDS += "${IMAGE_INSTALL} ${IMAGE_BOOT}" # "export IMAGE_BASENAME" not supported at this time IMAGE_BASENAME[export] = "1" -export PACKAGE_INSTALL ?= "${IMAGE_INSTALL} ${IMAGE_VARS}" +export PACKAGE_INSTALL ?= "${IMAGE_INSTALL} ${IMAGE_BOOT}" # We need to recursively follow RDEPENDS and RRECOMMENDS for images do_rootfs[recrdeptask] += "do_deploy do_populate_staging" @@ -106,6 +106,7 @@ do_rootfs[nostamp] = "1" do_rootfs[dirs] = "${TOPDIR}" do_rootfs[lockfiles] = "${IMAGE_ROOTFS}.lock" do_build[nostamp] = "1" +do_install[nostamp] = "1" # Must call real_do_rootfs() from inside here, rather than as a separate # task, so that we have a single fakeroot context for the whole process. @@ -234,5 +235,5 @@ rootfs_update_timestamp () { # export the zap_root_password, create_etc_timestamp and remote_init_link EXPORT_FUNCTIONS zap_root_password create_etc_timestamp remove_init_link do_rootfs make_zimage_symlink_relative set_image_autologin rootfs_update_timestamp -addtask rootfs before do_build after do_install +addtask rootfs after do_compile before do_install addtask deploy_to after do_rootfs diff --git a/classes/lib_package.bbclass b/classes/lib_package.bbclass index 03ba9d094f..788b7bb0c4 100644 --- a/classes/lib_package.bbclass +++ b/classes/lib_package.bbclass @@ -1,8 +1,12 @@ PACKAGES += "${PN}-bin" +# NB: ${base_libdir}/*${SOLIBSDEV} is included here because the shared libraries +# in ${base_libdir} do not follow the usual *.so.* naming convention, for instance +# libproc-3.2.7.so FILES_${PN} = "${libexecdir} ${libdir}/lib*${SOLIBS} \ ${sysconfdir} ${sharedstatedir} ${localstatedir} \ - ${base_libdir}/*${SOLIBS} ${datadir}/${PN} ${libdir}/${PN}" + ${base_libdir}/*${SOLIBS} ${base_libdir}/*${SOLIBSDEV} \ + ${datadir}/${PN} ${libdir}/${PN}" FILES_${PN}-dev = "${includedir} ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la \ ${libdir}/*.a ${libdir}/pkgconfig /lib/*.a /lib/*.o \ ${datadir}/aclocal ${bindir}/*-config" diff --git a/classes/package.bbclass b/classes/package.bbclass index 7a61c5a0fb..8a77369682 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -384,8 +384,12 @@ python populate_packages () { globbed = glob.glob(file) if globbed: if [ file ] != globbed: - files += globbed - continue + if not file in globbed: + files += globbed + continue + else: + globbed.remove(file) + files += globbed if (not os.path.islink(file)) and (not os.path.exists(file)): continue if file in seen: diff --git a/classes/testlab.bbclass b/classes/testlab.bbclass index bb47ee877f..fc923c5112 100644 --- a/classes/testlab.bbclass +++ b/classes/testlab.bbclass @@ -22,7 +22,7 @@ # Needs 'dot', 'opkg-cl' do_testlab() { -if [ -e ${IMAGE_ROOTFS}/etc/opkg ] ; then +if [ -e ${IMAGE_ROOTFS}/etc/opkg ] && [ "${ONLINE_PACKAGE_MANAGEMENT}" = "full" ] ; then TESTLAB_DIR="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-testlab" mkdir -p ${TESTLAB_DIR}/ |