Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/5] Small fixes from bitbake world
@ 2012-12-05 18:26 Martin Jansa
  2012-12-05 18:26 ` [PATCH 1/5] at: change initscript dependency from build time to runtime Martin Jansa
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

The following changes since commit d84f7d7a12b4271f7b2bfde9fb356d750abff15d:

  sstate.bbclass: fix detection of owners matching sstate files (2012-12-05 15:34:01 +0000)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib jansa/pull
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/pull

Martin Jansa (5):
  at: change initscript dependency from build time to runtime
  scripts/sstate-diff-machines.sh: add simple script to compare sstate
    checksums between MACHINEs
  scripts/sstate-sysroot-cruft.sh: add simple script to find files in
    sysroots not tracked by sstate
  git: fix unpackaged python files
  python-smartpm: don't try to remove /usr/share/share twice

 meta/recipes-devtools/git/git.inc                  |   4 +-
 meta/recipes-devtools/git/git_1.7.7.bb             |   2 +-
 .../python/python-smartpm_1.4.1.bb                 |   5 +-
 meta/recipes-extended/at/at_3.1.13.bb              |  13 ++-
 scripts/sstate-diff-machines.sh                    | 107 +++++++++++++++++++++
 scripts/sstate-sysroot-cruft.sh                    |  78 +++++++++++++++
 6 files changed, 198 insertions(+), 11 deletions(-)
 create mode 100755 scripts/sstate-diff-machines.sh
 create mode 100755 scripts/sstate-sysroot-cruft.sh

-- 
1.8.0




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

* [PATCH 1/5] at: change initscript dependency from build time to runtime
  2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
@ 2012-12-05 18:26 ` Martin Jansa
  2012-12-05 18:26 ` [PATCH 2/5] scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs Martin Jansa
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

* doesn't look like build dependency

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/recipes-extended/at/at_3.1.13.bb | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-extended/at/at_3.1.13.bb b/meta/recipes-extended/at/at_3.1.13.bb
index 3580e09..198b46e 100644
--- a/meta/recipes-extended/at/at_3.1.13.bb
+++ b/meta/recipes-extended/at/at_3.1.13.bb
@@ -4,14 +4,19 @@ the system load levels drop to a particular level."
 SECTION = "base"
 LICENSE="GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
-DEPENDS = "flex flex-native initscripts \
-	${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-RDEPENDS_${PN} = "${@base_contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)}"
+DEPENDS = "flex flex-native \
+           ${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+
+VIRTUAL-RUNTIME_initscripts ?= "initscripts"                                                                                                                 
+RDEPENDS_${PN} = "${@base_contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \
+                  ${VIRTUAL-RUNTIME_initscripts} \
+"
+
 PAM_DEPS = "libpam libpam-runtime pam-plugin-env pam-plugin-limits"
 
 RCONFLICTS_${PN} = "atd"
 RREPLACES_${PN} = "atd"
-PR = "r4"
+PR = "r5"
 
 SRC_URI = "${DEBIAN_MIRROR}/main/a/at/at_${PV}.orig.tar.gz \
     file://configure.patch \
-- 
1.8.0




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

* [PATCH 2/5] scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs
  2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
  2012-12-05 18:26 ` [PATCH 1/5] at: change initscript dependency from build time to runtime Martin Jansa
@ 2012-12-05 18:26 ` Martin Jansa
  2012-12-05 18:26 ` [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate Martin Jansa
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

* takes tmpdir, machines and targets from command arguments or env variables

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 scripts/sstate-diff-machines.sh | 107 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)
 create mode 100755 scripts/sstate-diff-machines.sh

diff --git a/scripts/sstate-diff-machines.sh b/scripts/sstate-diff-machines.sh
new file mode 100755
index 0000000..f2c151a
--- /dev/null
+++ b/scripts/sstate-diff-machines.sh
@@ -0,0 +1,107 @@
+#!/bin/sh
+
+# Used to compare sstate checksums between MACHINES
+# Execute script and compare generated list.M files
+
+# It's also usefull to keep older sstate checksums
+# to be able to find out why something is rebuilding 
+# after updating metadata
+
+# $ diff \
+#     sstate-diff/1349348392/fake-cortexa8/list.M \
+#     sstate-diff/1349348392/fake-cortexa9/list.M \
+#     | wc -l
+# 538
+
+# Then to compare sigdata use something like:
+# $ ls sstate-diff/1349348392/*/armv7a-vfp-neon*/linux-libc-headers/*do_configure*sigdata*
+#   sstate-diff/1349348392/fake-cortexa8/armv7a-vfp-neon-oe-linux-gnueabi/linux-libc-headers/3.4.3-r0.do_configure.sigdata.cb73b3630a7b8191e72fc469c5137025
+#   sstate-diff/1349348392/fake-cortexa9/armv7a-vfp-neon-oe-linux-gnueabi/linux-libc-headers/3.4.3-r0.do_configure.sigdata.f37ada177bf99ce8af85914df22b5a0b
+# $ bitbake-diffsigs stamps.1349348392/*/armv7a-vfp-neon*/linux-libc-headers/*do_configure*sigdata*
+#   basehash changed from 8d0bd67bb1da6f68717760fc3ef43171 to e869fa61426e88e9c30726ba88a1216a
+#   Variable TUNE_CCARGS value changed from  -march=armv7-a     -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a8 to  -march=armv7-a     -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9
+
+# Global vars
+tmpdir=
+machines=
+targets=
+default_machines="qemuarm qemux86 qemux86-64"
+default_targets="core-image-base"
+
+usage () {
+  cat << EOF
+Welcome to utility to compare sstate checksums between different MACHINEs.
+$0 <OPTION>
+
+Options:
+  -h, --help
+        Display this help and exit.
+
+  --tmpdir=<tmpdir>
+        Specify tmpdir, will use the environment variable TMPDIR if it is not specified.
+        Something like /OE/oe-core/tmp-eglibc (no / at the end).
+  
+  --machines=<machines>
+        List of MACHINEs separated by space, will use the environment variable MACHINES if it is not specified.
+        Default value is "qemuarm qemux86 qemux86-64".
+  
+  --targets=<targets>
+        List of targets separated by space, will use the environment variable TARGETS if it is not specified.
+        Default value is "core-image-base".
+EOF
+}
+
+# Print error information and exit.
+echo_error () {
+  echo "ERROR: $1" >&2
+  exit 1
+}
+
+while [ -n "$1" ]; do
+  case $1 in
+    --tmpdir=*)
+      tmpdir=`echo $1 | sed -e 's#^--tmpdir=##' | xargs readlink -e`
+      [ -d "$tmpdir" ] || echo_error "Invalid argument to --tmpdir"
+      shift
+        ;;
+    --machines=*)
+      machines=`echo $1 | sed -e 's#^--machines="*\([^"]*\)"*#\1#'`
+      shift
+        ;;
+    --targets=*)
+      targets=`echo $1 | sed -e 's#^--targets="*\([^"]*\)"*#\1#'`
+      shift
+        ;;
+    --help|-h)
+      usage
+      exit 0
+        ;;
+    *)
+      echo "Invalid arguments $*"
+      echo_error "Try '$0 -h' for more information."
+        ;;
+  esac
+done
+
+# tmpdir directory, use environment variable TMPDIR
+# if it was not specified, otherwise, error.
+[ -n "$tmpdir" ] || tmpdir=$TMPDIR
+[ -n "$tmpdir" ] || echo_error "No tmpdir found!"
+[ -d "$tmpdir" ] || echo_error "Invalid tmpdir \"$tmpdir\""
+[ -n "$machines" ] || machines=$MACHINES
+[ -n "$machines" ] || machines=$default_machines
+[ -n "$targets" ] || targets=$TARGETS
+[ -n "$targets" ] || targets=$default_targets
+
+OUTPUT=${tmpdir}/sstate-diff/`date "+%s"`
+
+for M in ${machines}; do
+  find ${tmpdir}/stamps/ -name \*sigdata\* | xargs rm -f
+  mkdir -p ${OUTPUT}/${M}
+  export MACHINE=${M}; bitbake -S ${targets} | tee -a ${OUTPUT}/${M}/log;
+  cp -ra ${tmpdir}/stamps/* ${OUTPUT}/${M}
+  find ${OUTPUT}/${M} -name \*sigdata\* | sed "s#${OUTPUT}/${M}/##g" | sort > ${OUTPUT}/${M}/list
+  M_UNDERSCORE=`echo ${M} | sed 's/-/_/g'`
+  sed "s/${M_UNDERSCORE}/MACHINE/g; s/${M}/MACHINE/g" ${OUTPUT}/${M}/list | sort > ${OUTPUT}/${M}/list.M
+  find ${tmpdir}/stamps/ -name \*sigdata\* | xargs rm -f
+done
-- 
1.8.0




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

* [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
  2012-12-05 18:26 ` [PATCH 1/5] at: change initscript dependency from build time to runtime Martin Jansa
  2012-12-05 18:26 ` [PATCH 2/5] scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs Martin Jansa
@ 2012-12-05 18:26 ` Martin Jansa
  2012-12-05 19:04   ` Enrico Scholz
       [not found]   ` <cover.1354737450.git.Martin.Jansa@gmail.com>
  2012-12-05 18:26 ` [PATCH " Martin Jansa
  2012-12-05 18:26 ` [PATCH 5/5] python-smartpm: don't try to remove /usr/share/share twice Martin Jansa
  4 siblings, 2 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 scripts/sstate-sysroot-cruft.sh | 78 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 78 insertions(+)
 create mode 100755 scripts/sstate-sysroot-cruft.sh

diff --git a/scripts/sstate-sysroot-cruft.sh b/scripts/sstate-sysroot-cruft.sh
new file mode 100755
index 0000000..6caa252
--- /dev/null
+++ b/scripts/sstate-sysroot-cruft.sh
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# Used to find files installed in sysroot which are not tracked by sstate manifest
+
+# Global vars
+tmpdir=
+
+usage () {
+  cat << EOF
+Welcome to sysroot cruft finding utility.
+$0 <OPTION>
+
+Options:
+  -h, --help
+        Display this help and exit.
+
+  --tmpdir=<tmpdir>
+        Specify tmpdir, will use the environment variable TMPDIR if it is not specified.
+	Something like /OE/oe-core/tmp-eglibc (no / at the end).
+EOF
+}
+
+# Print error information and exit.
+echo_error () {
+  echo "ERROR: $1" >&2
+  exit 1
+}
+
+while [ -n "$1" ]; do
+  case $1 in
+    --tmpdir=*)
+      tmpdir=`echo $1 | sed -e 's#^--tmpdir=##' | xargs readlink -e`
+      [ -d "$tmpdir" ] || echo_error "Invalid argument to --tmpdir"
+      shift
+        ;;
+    --help|-h)
+      usage
+      exit 0
+        ;;
+    *)
+      echo "Invalid arguments $*"
+      echo_error "Try '$0 -h' for more information."
+        ;;
+  esac
+done
+
+# sstate cache directory, use environment variable TMPDIR
+# if it was not specified, otherwise, error.
+[ -n "$tmpdir" ] || tmpdir=$TMPDIR
+[ -n "$tmpdir" ] || echo_error "No tmpdir found!"
+[ -d "$tmpdir" ] || echo_error "Invalid tmpdir \"$tmpdir\""
+
+OUTPUT=${tmpdir}/sysroot.cruft.`date "+%s"`
+WHITELIST="\/var\/pseudo\/*[^\/]*$ \/shlibs$ \.pyc$ \.pyo$"
+
+mkdir ${OUTPUT}
+find ${tmpdir}/sstate-control -name \*.populate-sysroot\* -o -name \*.package\* | xargs cat | grep sysroots | \
+  sed 's#/$##g; s#///*#/#g' | \
+  # work around for paths ending with / for directories and multiplied // (e.g. paths to native sysroot)
+  sort > ${OUTPUT}/master.list.all
+sort -u ${OUTPUT}/master.list.all > ${OUTPUT}/master.list # -u because some directories are listed for more recipes
+find ${tmpdir}/sysroots/ | \
+  sort > ${OUTPUT}/sysroot.list
+
+diff ${OUTPUT}/master.list.all ${OUTPUT}/master.list > ${OUTPUT}/duplicates
+diff ${OUTPUT}/master.list ${OUTPUT}/sysroot.list > ${OUTPUT}/diff.all
+
+cp ${OUTPUT}/diff.all ${OUTPUT}/diff
+for item in ${WHITELIST}; do 
+  sed -i "/${item}/d" ${OUTPUT}/diff;
+done
+
+# too many false positives for directories
+# echo "Following files are installed in sysroot at least twice"
+# cat ${OUTPUT}/duplicates
+
+echo "Following files are installed in sysroot, but not tracked by sstate"
+cat ${OUTPUT}/diff
-- 
1.8.0




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

* [PATCH 4/5] git: fix unpackaged python files
  2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
                   ` (2 preceding siblings ...)
  2012-12-05 18:26 ` [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate Martin Jansa
@ 2012-12-05 18:26 ` Martin Jansa
  2012-12-05 19:05   ` Martin Jansa
  2012-12-05 18:26 ` [PATCH 5/5] python-smartpm: don't try to remove /usr/share/share twice Martin Jansa
  4 siblings, 1 reply; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

* fixes:
git-1.7.7: git: Files/directories were installed but not shipped
  /usr/lib64
  /usr/lib64/python2.7
  /usr/lib64/python2.7/site-packages
  /usr/lib64/python2.7/site-packages/git_remote_helpers-0.1.0-py2.7.egg-info
  /usr/lib64/python2.7/site-packages/git_remote_helpers
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.py

* fixes [YOCTO #3344]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/recipes-devtools/git/git.inc      | 4 ++--
 meta/recipes-devtools/git/git_1.7.7.bb | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc
index 55e1482..80a88c2 100644
--- a/meta/recipes-devtools/git/git.inc
+++ b/meta/recipes-devtools/git/git.inc
@@ -16,7 +16,7 @@ EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
 
 EXTRA_OEMAKE = "NO_PYTHON=1"
 
-inherit autotools perlnative
+inherit autotools perlnative python-dir
 
 do_compile_prepend () {
 	# Remove perl/perl.mak to fix the out-of-date perl.mak error
@@ -58,7 +58,7 @@ FILES_${PN}-perltools += " \
 RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
 
 PACKAGES =+ "${PN}-python"
-FILES_${PN}-python = "${libdir}/python*"
+FILES_${PN}-python = "${libdir}/python* ${PYTHON_SITEPACKAGES_DIR}"
 
 
 # git-tk package with gitk and git-gui
diff --git a/meta/recipes-devtools/git/git_1.7.7.bb b/meta/recipes-devtools/git/git_1.7.7.bb
index 9d24911..6b6e04b 100644
--- a/meta/recipes-devtools/git/git_1.7.7.bb
+++ b/meta/recipes-devtools/git/git_1.7.7.bb
@@ -1,6 +1,6 @@
 require git.inc
 
-PR = "r2"
+PR = "r3"
 
 SRC_URI = "http://git-core.googlecode.com/files/git-${PV}.tar.gz"
 SRC_URI[md5sum] = "5d645884e688921e773186783b65ce33"
-- 
1.8.0




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

* [PATCH 5/5] python-smartpm: don't try to remove /usr/share/share twice
  2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
                   ` (3 preceding siblings ...)
  2012-12-05 18:26 ` [PATCH " Martin Jansa
@ 2012-12-05 18:26 ` Martin Jansa
  4 siblings, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 18:26 UTC (permalink / raw)
  To: openembedded-core

* distutils.bbclass now removes that directory

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/recipes-devtools/python/python-smartpm_1.4.1.bb | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
index 254318c..b896c89 100644
--- a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
+++ b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
@@ -11,7 +11,7 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833"
 
 DEPENDS = "python rpm"
-PR = "r1"
+PR = "r2"
 SRCNAME = "smart"
 
 SRC_URI = "\
@@ -43,9 +43,6 @@ PACKAGECONFIG[gtk] = ",,gtk+,${GTK_RDEP}"
 inherit distutils
 
 do_install_append() {
-   # Cleanup unused item...
-   rmdir ${D}${datadir}/share
-
    # We don't support the following items
    rm -rf ${D}${libdir}/python*/site-packages/smart/backends/slack
    rm -rf ${D}${libdir}/python*/site-packages/smart/backends/arch
-- 
1.8.0




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

* Re: [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-05 18:26 ` [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate Martin Jansa
@ 2012-12-05 19:04   ` Enrico Scholz
  2012-12-05 19:35     ` Martin Jansa
       [not found]   ` <cover.1354737450.git.Martin.Jansa@gmail.com>
  1 sibling, 1 reply; 14+ messages in thread
From: Enrico Scholz @ 2012-12-05 19:04 UTC (permalink / raw)
  To: openembedded-core; +Cc: Martin Jansa

Martin Jansa <martin.jansa-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
writes:

> +WHITELIST="\/var\/pseudo\/*[^\/]*$ \/shlibs$ \.pyc$ \.pyo$"

Is it really wanted that this matches paths like '/var/pseudosomepath'?



Enrico



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

* Re: [PATCH 4/5] git: fix unpackaged python files
  2012-12-05 18:26 ` [PATCH " Martin Jansa
@ 2012-12-05 19:05   ` Martin Jansa
  0 siblings, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 19:05 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 3368 bytes --]

On Wed, Dec 05, 2012 at 07:26:06PM +0100, Martin Jansa wrote:
> * fixes:
> git-1.7.7: git: Files/directories were installed but not shipped
>   /usr/lib64
>   /usr/lib64/python2.7
>   /usr/lib64/python2.7/site-packages
>   /usr/lib64/python2.7/site-packages/git_remote_helpers-0.1.0-py2.7.egg-info
>   /usr/lib64/python2.7/site-packages/git_remote_helpers
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/util.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/util.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.py
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.pyc
>   /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.py
> 
> * fixes [YOCTO #3344]
> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
>  meta/recipes-devtools/git/git.inc      | 4 ++--
>  meta/recipes-devtools/git/git_1.7.7.bb | 2 +-
>  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc
> index 55e1482..80a88c2 100644
> --- a/meta/recipes-devtools/git/git.inc
> +++ b/meta/recipes-devtools/git/git.inc
> @@ -16,7 +16,7 @@ EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
>  
>  EXTRA_OEMAKE = "NO_PYTHON=1"
>  
> -inherit autotools perlnative
> +inherit autotools perlnative python-dir
>  
>  do_compile_prepend () {
>  	# Remove perl/perl.mak to fix the out-of-date perl.mak error
> @@ -58,7 +58,7 @@ FILES_${PN}-perltools += " \
>  RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
>  
>  PACKAGES =+ "${PN}-python"
> -FILES_${PN}-python = "${libdir}/python*"
> +FILES_${PN}-python = "${libdir}/python* ${PYTHON_SITEPACKAGES_DIR}"
>  
>  
>  # git-tk package with gitk and git-gui
> diff --git a/meta/recipes-devtools/git/git_1.7.7.bb b/meta/recipes-devtools/git/git_1.7.7.bb
> index 9d24911..6b6e04b 100644
> --- a/meta/recipes-devtools/git/git_1.7.7.bb
> +++ b/meta/recipes-devtools/git/git_1.7.7.bb
> @@ -1,6 +1,6 @@
>  require git.inc
>  
> -PR = "r2"
> +PR = "r3"
>  
>  SRC_URI = "http://git-core.googlecode.com/files/git-${PV}.tar.gz"
>  SRC_URI[md5sum] = "5d645884e688921e773186783b65ce33"

Oh, this isn't sometimes enough.. in some cases like commit message it's
using wrong python-config and installing to paths like on host (lib64).

Sending v2 soon

Cheers,
-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

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

* Re: [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-05 19:04   ` Enrico Scholz
@ 2012-12-05 19:35     ` Martin Jansa
  2012-12-05 22:49       ` Enrico Scholz
  0 siblings, 1 reply; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 19:35 UTC (permalink / raw)
  To: Enrico Scholz; +Cc: Martin Jansa, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 1097 bytes --]

On Wed, Dec 05, 2012 at 08:04:47PM +0100, Enrico Scholz wrote:
> Martin Jansa <martin.jansa-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> writes:
> 
> > +WHITELIST="\/var\/pseudo\/*[^\/]*$ \/shlibs$ \.pyc$ \.pyo$"
> 
> Is it really wanted that this matches paths like '/var/pseudosomepath'?

.*/var/pseudo
and
.*/var/pseudo/somefile$

which matches also /var/pseudosomepath, I can split it in 2 regexps if
that's likely to show in sysroot, or use "\/var\/pseudo\($\|\/[^\/]*$\)"

to match:
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/files.db
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/logs.db
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/pseudo.lock
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/pseudo.log
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/pseudo.pid
/OE/jansa-test/shr-core/tmp-eglibc/sysroots/om-gta02/var/pseudo/pseudo.socket

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

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

* [PATCHv2 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
       [not found]   ` <cover.1354737450.git.Martin.Jansa@gmail.com>
@ 2012-12-05 19:59     ` Martin Jansa
  2012-12-05 19:59     ` [PATCHv2 4/5] git: fix unpackaged python files Martin Jansa
  1 sibling, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 19:59 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---

v2: fixed WHITELIST for var/pseudo* as Enrico reported

 scripts/sstate-sysroot-cruft.sh | 78 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 78 insertions(+)
 create mode 100755 scripts/sstate-sysroot-cruft.sh

diff --git a/scripts/sstate-sysroot-cruft.sh b/scripts/sstate-sysroot-cruft.sh
new file mode 100755
index 0000000..530b20d
--- /dev/null
+++ b/scripts/sstate-sysroot-cruft.sh
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# Used to find files installed in sysroot which are not tracked by sstate manifest
+
+# Global vars
+tmpdir=
+
+usage () {
+  cat << EOF
+Welcome to sysroot cruft finding utility.
+$0 <OPTION>
+
+Options:
+  -h, --help
+        Display this help and exit.
+
+  --tmpdir=<tmpdir>
+        Specify tmpdir, will use the environment variable TMPDIR if it is not specified.
+	Something like /OE/oe-core/tmp-eglibc (no / at the end).
+EOF
+}
+
+# Print error information and exit.
+echo_error () {
+  echo "ERROR: $1" >&2
+  exit 1
+}
+
+while [ -n "$1" ]; do
+  case $1 in
+    --tmpdir=*)
+      tmpdir=`echo $1 | sed -e 's#^--tmpdir=##' | xargs readlink -e`
+      [ -d "$tmpdir" ] || echo_error "Invalid argument to --tmpdir"
+      shift
+        ;;
+    --help|-h)
+      usage
+      exit 0
+        ;;
+    *)
+      echo "Invalid arguments $*"
+      echo_error "Try '$0 -h' for more information."
+        ;;
+  esac
+done
+
+# sstate cache directory, use environment variable TMPDIR
+# if it was not specified, otherwise, error.
+[ -n "$tmpdir" ] || tmpdir=$TMPDIR
+[ -n "$tmpdir" ] || echo_error "No tmpdir found!"
+[ -d "$tmpdir" ] || echo_error "Invalid tmpdir \"$tmpdir\""
+
+OUTPUT=${tmpdir}/sysroot.cruft.`date "+%s"`
+WHITELIST="\/var\/pseudo\($\|\/[^\/]*$\) \/shlibs$ \.pyc$ \.pyo$"
+
+mkdir ${OUTPUT}
+find ${tmpdir}/sstate-control -name \*.populate-sysroot\* -o -name \*.package\* | xargs cat | grep sysroots | \
+  sed 's#/$##g; s#///*#/#g' | \
+  # work around for paths ending with / for directories and multiplied // (e.g. paths to native sysroot)
+  sort > ${OUTPUT}/master.list.all
+sort -u ${OUTPUT}/master.list.all > ${OUTPUT}/master.list # -u because some directories are listed for more recipes
+find ${tmpdir}/sysroots/ | \
+  sort > ${OUTPUT}/sysroot.list
+
+diff ${OUTPUT}/master.list.all ${OUTPUT}/master.list > ${OUTPUT}/duplicates
+diff ${OUTPUT}/master.list ${OUTPUT}/sysroot.list > ${OUTPUT}/diff.all
+
+cp ${OUTPUT}/diff.all ${OUTPUT}/diff
+for item in ${WHITELIST}; do 
+  sed -i "/${item}/d" ${OUTPUT}/diff;
+done
+
+# too many false positives for directories
+# echo "Following files are installed in sysroot at least twice"
+# cat ${OUTPUT}/duplicates
+
+echo "Following files are installed in sysroot, but not tracked by sstate"
+cat ${OUTPUT}/diff
-- 
1.8.0




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

* [PATCHv2 4/5] git: fix unpackaged python files
       [not found]   ` <cover.1354737450.git.Martin.Jansa@gmail.com>
  2012-12-05 19:59     ` [PATCHv2 " Martin Jansa
@ 2012-12-05 19:59     ` Martin Jansa
  1 sibling, 0 replies; 14+ messages in thread
From: Martin Jansa @ 2012-12-05 19:59 UTC (permalink / raw)
  To: openembedded-core

* EXTRA_OEMAKE is needed after inheriting autotools which sets it to empty
* fixes:
git-1.7.7: git: Files/directories were installed but not shipped
  /usr/lib64
  /usr/lib64/python2.7
  /usr/lib64/python2.7/site-packages
  /usr/lib64/python2.7/site-packages/git_remote_helpers-0.1.0-py2.7.egg-info
  /usr/lib64/python2.7/site-packages/git_remote_helpers
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.py

* fixes [YOCTO #3344]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---

v2: should be disabled correctly now, instead of packaging them

 meta/recipes-devtools/git/git.inc      | 4 ++--
 meta/recipes-devtools/git/git_1.7.7.bb | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc
index 55e1482..82df6e3 100644
--- a/meta/recipes-devtools/git/git.inc
+++ b/meta/recipes-devtools/git/git.inc
@@ -14,10 +14,10 @@ EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
 		--without-tcltk \
 "
 
-EXTRA_OEMAKE = "NO_PYTHON=1"
-
 inherit autotools perlnative
 
+EXTRA_OEMAKE = "NO_PYTHON=1"
+
 do_compile_prepend () {
 	# Remove perl/perl.mak to fix the out-of-date perl.mak error
 	# during rebuild
diff --git a/meta/recipes-devtools/git/git_1.7.7.bb b/meta/recipes-devtools/git/git_1.7.7.bb
index 9d24911..6b6e04b 100644
--- a/meta/recipes-devtools/git/git_1.7.7.bb
+++ b/meta/recipes-devtools/git/git_1.7.7.bb
@@ -1,6 +1,6 @@
 require git.inc
 
-PR = "r2"
+PR = "r3"
 
 SRC_URI = "http://git-core.googlecode.com/files/git-${PV}.tar.gz"
 SRC_URI[md5sum] = "5d645884e688921e773186783b65ce33"
-- 
1.8.0




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

* Re: [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-05 19:35     ` Martin Jansa
@ 2012-12-05 22:49       ` Enrico Scholz
  2012-12-06  4:30         ` Martin Jansa
  0 siblings, 1 reply; 14+ messages in thread
From: Enrico Scholz @ 2012-12-05 22:49 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-core

Martin Jansa <martin.jansa@gmail.com> writes:

> .*/var/pseudo
> and
> .*/var/pseudo/somefile$
>
> which matches also /var/pseudosomepath, I can split it in 2 regexps if
> that's likely to show in sysroot, or use "\/var\/pseudo\($\|\/[^\/]*$\)"

A basic regexp '/var/pseudo\(/.*\)\?$' should suffice.  Btw, to avoid
escaping of '/', you can write

  sed -i "\!${var}!d"


Enrico



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

* Re: [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-05 22:49       ` Enrico Scholz
@ 2012-12-06  4:30         ` Martin Jansa
  2012-12-06 10:41           ` Enrico Scholz
  0 siblings, 1 reply; 14+ messages in thread
From: Martin Jansa @ 2012-12-06  4:30 UTC (permalink / raw)
  To: Enrico Scholz; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 687 bytes --]

That would match .*/var/pseudo/too/bar,wouldn't it? but true that making
that group optional is probably easier to read.. But who doesn't read
regexps fluently nowadays? :)
On Dec 5, 2012 11:49 PM, "Enrico Scholz" <enrico.scholz@sigma-chemnitz.de>
wrote:

> Martin Jansa <martin.jansa@gmail.com> writes:
>
> > .*/var/pseudo
> > and
> > .*/var/pseudo/somefile$
> >
> > which matches also /var/pseudosomepath, I can split it in 2 regexps if
> > that's likely to show in sysroot, or use "\/var\/pseudo\($\|\/[^\/]*$\)"
>
> A basic regexp '/var/pseudo\(/.*\)\?$' should suffice.  Btw, to avoid
> escaping of '/', you can write
>
>   sed -i "\!${var}!d"
>
>
> Enrico
>

[-- Attachment #2: Type: text/html, Size: 1091 bytes --]

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

* Re: [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
  2012-12-06  4:30         ` Martin Jansa
@ 2012-12-06 10:41           ` Enrico Scholz
  0 siblings, 0 replies; 14+ messages in thread
From: Enrico Scholz @ 2012-12-06 10:41 UTC (permalink / raw)
  To: Martin Jansa; +Cc: Patches and discussions about the oe-core layer

Martin Jansa <martin.jansa@gmail.com> writes:

> That would match .*/var/pseudo/too/bar,wouldn't it?

yes; when you really want to exclude such subpaths, you can match against
'/var/pseudo\(/[^/]*\)\?$'.

Enrico



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

end of thread, other threads:[~2012-12-06 10:55 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-05 18:26 [PATCH 0/5] Small fixes from bitbake world Martin Jansa
2012-12-05 18:26 ` [PATCH 1/5] at: change initscript dependency from build time to runtime Martin Jansa
2012-12-05 18:26 ` [PATCH 2/5] scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs Martin Jansa
2012-12-05 18:26 ` [PATCH 3/5] scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate Martin Jansa
2012-12-05 19:04   ` Enrico Scholz
2012-12-05 19:35     ` Martin Jansa
2012-12-05 22:49       ` Enrico Scholz
2012-12-06  4:30         ` Martin Jansa
2012-12-06 10:41           ` Enrico Scholz
     [not found]   ` <cover.1354737450.git.Martin.Jansa@gmail.com>
2012-12-05 19:59     ` [PATCHv2 " Martin Jansa
2012-12-05 19:59     ` [PATCHv2 4/5] git: fix unpackaged python files Martin Jansa
2012-12-05 18:26 ` [PATCH " Martin Jansa
2012-12-05 19:05   ` Martin Jansa
2012-12-05 18:26 ` [PATCH 5/5] python-smartpm: don't try to remove /usr/share/share twice Martin Jansa

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