rendered paste body13:05 hrw@home:org.openembedded$ mtn diff classes/package.bbclass packages/pimlico/dates.inc packages/openmoko-pim/openmoko-dates_svn.bb
#
# old_revision [1ed405ffccbd44e0a25a79e91b04768f25f6d2a4]
#
# patch "classes/package.bbclass"
# from [11f1fb0bda9849ac1e65a798ecb45a9d4818f571]
# to [52ea8b44a7994453ab2fb8068d813ee29eb9c464]
#
# patch "packages/openmoko-pim/openmoko-dates_svn.bb"
# from [3c8266f76280e518251f226f0bb8eb00dd1fc071]
# to [20a9e6532534f98641249d3415259acb51f782d4]
#
# patch "packages/pimlico/dates.inc"
# from [a64609f3f3056abc3ec4fb11dcea81c42a9757cb]
# to [3c8175461e2a23c3fe274e3a505e5a6ee08ac90b]
#
============================================================
--- classes/package.bbclass 11f1fb0bda9849ac1e65a798ecb45a9d4818f571
+++ classes/package.bbclass 52ea8b44a7994453ab2fb8068d813ee29eb9c464
@@ -573,11 +573,15 @@ python package_do_shlibs() {
bb.mkdirhier(shlibs_dir)
needed = {}
+ selfprovided = {}
+ private_libs = bb.data.getVar('PRIVATE_LIBS', d, 1)
+ print 'private libs: %s' % private_libs
for pkg in packages.split():
needs_ldconfig = False
bb.debug(2, "calculating shlib provides for %s" % pkg)
needed[pkg] = []
+ selfprovided[pkg] = []
sonames = list()
top = os.path.join(workdir, "install", pkg)
for root, dirs, files in os.walk(top):
@@ -596,7 +600,9 @@ python package_do_shlibs() {
needed[pkg].append(m.group(1))
m = re.match("\s+SONAME\s+([^\s]*)", l)
if m and not m.group(1) in sonames:
- sonames.append(m.group(1))
+ if -1 == private_libs.find(m.group(1)):
+ sonames.append(m.group(1))
+ selfprovided[pkg].append(m.group(1))
if m and libdir_re.match(root):
needs_ldconfig = True
shlibs_file = os.path.join(shlibs_dir, pkg + ".list")
@@ -647,7 +653,24 @@ python package_do_shlibs() {
bb.debug(2, "calculating shlib requirements for %s" % pkg)
deps = list()
+
+ print 'needed:'
for n in needed[pkg]:
+ print n
+
+ for sp in selfprovided[pkg]:
+ print 'sp: %s' % sp
+ try:
+ if needed[pkg].index(sp):
+ needed[pkg].remove(sp)
+ except:
+ print 'error: %s' % sp
+
+ print 'needed 2:'
+ for n in needed[pkg]:
+ print n
+
+ for n in needed[pkg]:
if n in shlib_provider.keys():
(dep_pkg, ver_needed) = shlib_provider[n]
@@ -663,6 +686,8 @@ python package_do_shlibs() {
else:
bb.note("Couldn't find shared library provider for %s" % n)
+ print deps
+
deps_file = os.path.join(workdir, "install", pkg + ".shlibdeps")
if os.path.exists(deps_file):
os.remove(deps_file)
============================================================
--- packages/openmoko-pim/openmoko-dates_svn.bb 3c8266f76280e518251f226f0bb8eb00dd1fc071
+++ packages/openmoko-pim/openmoko-dates_svn.bb 20a9e6532534f98641249d3415259acb51f782d4
@@ -1,10 +1,12 @@ RDEPENDS = "libedata-cal"
DESCRIPTION = "Dates is a calendar application."
SECTION = "openmoko/pim"
LICENSE = "GPL"
DEPENDS = "glib-2.0 gtk+ libglade eds-dbus openmoko-libs"
RDEPENDS = "libedata-cal"
+RCONFLICTS = "dates"
+RREPLACES = "dates"
PV = "0.1+svn${SRCDATE}"
-PR = "r6"
+PR = "r7"
inherit gnome autotools pkgconfig gtk-icon-cache
@@ -23,3 +25,4 @@ FILES_${PN} += "${datadir}/pixmaps/dates
FILES_${PN} += "${datadir}/pixmaps/dates.png \
${datadir}/dates/"
+PRIVATE_LIBS = "libgtkdatesview.so.0"
============================================================
--- packages/pimlico/dates.inc a64609f3f3056abc3ec4fb11dcea81c42a9757cb
+++ packages/pimlico/dates.inc 3c8175461e2a23c3fe274e3a505e5a6ee08ac90b
@@ -1,8 +1,10 @@ RDEPENDS = "libedata-cal"
DESCRIPTION = "Dates is a calendar application."
LICENSE = "LGPL"
SECTION = "x11"
DEPENDS = "glib-2.0 gtk+ libglade eds-dbus"
RDEPENDS = "libedata-cal"
+RCONFLICTS = "openmoko-dates"
+RREPLACES = "openmoko-dates"
inherit autotools pkgconfig gtk-icon-cache
@@ -15,3 +17,4 @@ do_install_append () {
install -m 0644 ${D}/${datadir}/icons/hicolor/48x48/apps/dates.png ${D}/${datadir}/pixmaps/
}
+PRIVATE_LIBS = "libgtkdatesview.so.0"