pablo@kosmos.(none)
pb@dixie.nexus.co.uk
pb@mebius.(none)
+pb@mebius.reciva.com
pb@stealth.(none)
pb@stealth.nexus.co.uk
pb@workhouse.(none)
shlib_provider = {}
list_re = re.compile('^(.*)\.list$')
- for dir in [shlibs_dir, old_shlibs_dir]:
+ for dir in [old_shlibs_dir, shlibs_dir]:
if not os.path.exists(dir):
continue
for file in os.listdir(dir):
for pkg in packages.split():
bb.debug(2, "calculating shlib requirements for %s" % pkg)
+ p_pkg = bb.data.getVar("PKG_%s" % pkg, d, 1) or pkg
+
deps = list()
for n in needed[pkg]:
if n in shlib_provider.keys():
(dep_pkg, ver_needed) = shlib_provider[n]
+ if dep_pkg == p_pkg:
+ continue
+
if ver_needed:
dep = "%s (>= %s)" % (dep_pkg, ver_needed)
else:
bb.error("STAGING_DIR not defined")
return
+ target_sys = bb.data.getVar('TARGET_SYS', d, 1)
+ if not target_sys:
+ bb.error("TARGET_SYS not defined")
+ return
+
+ shlibs_dir = os.path.join(staging, target_sys, "shlibs")
+ old_shlibs_dir = os.path.join(staging, "shlibs")
+ bb.mkdirhier(shlibs_dir)
+
pc_re = re.compile('(.*)\.pc$')
var_re = re.compile('(.*)=(.*)')
field_re = re.compile('(.*): (.*)')
if hdr == 'Requires':
pkgconfig_needed[pkg] += exp.replace(',', ' ').split()
- shlibs_dir = os.path.join(staging, "shlibs")
- bb.mkdirhier(shlibs_dir)
-
for pkg in packages.split():
pkgs_file = os.path.join(shlibs_dir, pkg + ".pclist")
if os.path.exists(pkgs_file):
f.write('%s\n' % p)
f.close()
- for file in os.listdir(shlibs_dir):
- m = re.match('^(.*)\.pclist$', file)
- if m:
- pkg = m.group(1)
- fd = open(os.path.join(shlibs_dir, file))
- lines = fd.readlines()
- fd.close()
- pkgconfig_provided[pkg] = []
- for l in lines:
- pkgconfig_provided[pkg].append(l.rstrip())
+ for dir in [old_shlibs_dir, shlibs_dir]:
+ for file in os.listdir(dir):
+ m = re.match('^(.*)\.pclist$', file)
+ if m:
+ pkg = m.group(1)
+ fd = open(os.path.join(dir, file))
+ lines = fd.readlines()
+ fd.close()
+ pkgconfig_provided[pkg] = []
+ for l in lines:
+ pkgconfig_provided[pkg].append(l.rstrip())
for pkg in packages.split():
deps = []
python do_package_ipk () {
import copy # to back up env data
import sys
+ import re
workdir = bb.data.getVar('WORKDIR', d, 1)
if not workdir:
fields.append(["Maintainer: %s\n", ['MAINTAINER']])
fields.append(["Architecture: %s\n", ['PACKAGE_ARCH']])
fields.append(["OE: %s\n", ['P']])
- fields.append(["Source: %s\n", ['SRC_URI']])
def pullData(l, d):
l2 = []
rreplaces = (bb.data.getVar("RREPLACES", localdata, 1) or "").split()
rconflicts = (bb.data.getVar("RCONFLICTS", localdata, 1) or "").split()
if rdepends:
- ctrlfile.write("Depends: " + ", ".join(rdepends) + "\n")
+ ctrlfile.write("Depends: %s\n" % ", ".join(rdepends))
if rsuggests:
- ctrlfile.write("Suggests: " + ", ".join(rsuggests) + "\n")
+ ctrlfile.write("Suggests: %s\n" % ", ".join(rsuggests))
if rrecommends:
- ctrlfile.write("Recommends: " + ", ".join(rrecommends) + "\n")
+ ctrlfile.write("Recommends: %s\n" % ", ".join(rrecommends))
if rprovides:
- ctrlfile.write("Provides: " + ", ".join(rprovides) + "\n")
+ ctrlfile.write("Provides: %s\n" % ", ".join(rprovides))
if rreplaces:
- ctrlfile.write("Replaces: " + ", ".join(rreplaces) + "\n")
+ ctrlfile.write("Replaces: %s\n" % ", ".join(rreplaces))
if rconflicts:
- ctrlfile.write("Conflicts: " + ", ".join(rconflicts) + "\n")
+ ctrlfile.write("Conflicts: %s\n" % ", ".join(rconflicts))
+ src_uri = bb.data.getVar("SRC_URI", localdata, 1)
+ if src_uri:
+ src_uri = re.sub("\s+", " ", src_uri)
+ ctrlfile.write("Source: %s\n" % src_uri)
ctrlfile.close()
for script in ["preinst", "postinst", "prerm", "postrm"]:
+LICENSE = LGPL
+PR = "r0"
+
+DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \
+It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime."
+DEPENDS = "glib-2.0 gettext-native popt"
+SECTION = "base"
+PRIORITY = "optional"
+
+FILES_${PN} += " ${libdir}/gstreamer-0.8/*.so"
+FILES_${PN}-dev += " ${libdir}/gstreamer-0.8/*.la ${libdir}/gstreamer-0.8/*.a"
+
+SRC_URI = "http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.bz2 \
+ file://libm.patch;patch=1 \
+ file://gstreamer.xsession"
+
+EXTRA_OECONF = "--disable-docs-build --disable-dependency-tracking --disable-loadsave --disable-registry"
+
+inherit autotools pkgconfig
+
+do_stage() {
+ oe_runmake install prefix=${STAGING_DIR} \
+ bindir=${STAGING_BINDIR} \
+ includedir=${STAGING_INCDIR} \
+ libdir=${STAGING_LIBDIR} \
+ datadir=${STAGING_DATADIR} \
+ mandir=${STAGING_DIR}/share/man
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/X11/Xsession.d
+ install ${WORKDIR}/gstreamer.xsession ${D}${sysconfdir}/X11/Xsession.d/90gst-register
+}
+
+SECTION = "x11/base"
+include x11_${PV}.bb
+EXTRA_OECONF = "--disable-xcms --disable-xlocale --disable-xkb"