diff options
-rw-r--r-- | classes/package_ipk.bbclass | 26 | ||||
-rw-r--r-- | conf/sanity.conf | 2 | ||||
-rw-r--r-- | packages/directfb/directfb_1.1.0.bb | 4 | ||||
-rw-r--r-- | packages/python/python-django_0.96.1.bb | 16 | ||||
-rw-r--r-- | packages/python/python-pysqlite2/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/python/python-pysqlite2/fix-setup.patch | 9 | ||||
-rw-r--r-- | packages/python/python-pysqlite2_2.4.0.bb | 17 |
7 files changed, 64 insertions, 10 deletions
diff --git a/classes/package_ipk.bbclass b/classes/package_ipk.bbclass index de7f0fe0c4..fd6ddbc3f8 100644 --- a/classes/package_ipk.bbclass +++ b/classes/package_ipk.bbclass @@ -114,7 +114,7 @@ package_generate_ipkg_conf () { } python do_package_ipk () { - import sys, re, copy + import sys, re, copy, fcntl workdir = bb.data.getVar('WORKDIR', d, 1) if not workdir: @@ -147,6 +147,16 @@ python do_package_ipk () { bb.debug(1, "No packages; nothing to do") return + def lockfile(name): + lf = open(name, "a+") + fcntl.flock(lf.fileno(), fcntl.LOCK_EX) + return lf + + def unlockfile(lf): + fcntl.flock(lf.fileno(), fcntl.LOCK_UN) + lf.close + + for pkg in packages.split(): localdata = bb.data.createCopy(d) pkgdest = bb.data.getVar('PKGDEST', d, 1) @@ -183,7 +193,7 @@ python do_package_ipk () { if not g and bb.data.getVar('ALLOW_EMPTY', localdata) != "1": from bb import note note("Not creating empty archive for %s-%s-%s" % (pkg, bb.data.getVar('PV', localdata, 1), bb.data.getVar('PR', localdata, 1))) - bb.utils.unlockfile(lf) + unlockfile(lf) continue controldir = os.path.join(root, 'CONTROL') @@ -191,7 +201,7 @@ python do_package_ipk () { try: ctrlfile = file(os.path.join(controldir, 'control'), 'w') except OSError: - bb.utils.unlockfile(lf) + unlockfile(lf) raise bb.build.FuncFailed("unable to open control file for writing.") fields = [] @@ -225,7 +235,7 @@ python do_package_ipk () { except KeyError: (type, value, traceback) = sys.exc_info() ctrlfile.close() - bb.utils.unlockfile(lf) + unlockfile(lf) raise bb.build.FuncFailed("Missing field for ipk generation: %s" % value) # more fields @@ -262,7 +272,7 @@ python do_package_ipk () { try: scriptfile = file(os.path.join(controldir, script), 'w') except OSError: - bb.utils.unlockfile(lf) + unlockfile(lf) raise bb.build.FuncFailed("unable to open %s script file for writing." % script) scriptfile.write(scriptvar) scriptfile.close() @@ -273,7 +283,7 @@ python do_package_ipk () { try: conffiles = file(os.path.join(controldir, 'conffiles'), 'w') except OSError: - bb.utils.unlockfile(lf) + unlockfile(lf) raise bb.build.FuncFailed("unable to open conffiles for writing.") for f in conffiles_str.split(): conffiles.write('%s\n' % f) @@ -283,7 +293,7 @@ python do_package_ipk () { ret = os.system("PATH=\"%s\" %s %s %s" % (bb.data.getVar("PATH", localdata, 1), bb.data.getVar("IPKGBUILDCMD",d,1), pkg, pkgoutdir)) if ret != 0: - bb.utils.unlockfile(lf) + unlockfile(lf) raise bb.build.FuncFailed("ipkg-build execution failed") for script in ["preinst", "postinst", "prerm", "postrm", "control" ]: @@ -296,7 +306,7 @@ python do_package_ipk () { os.rmdir(controldir) except OSError: pass - bb.utils.unlockfile(lf) + unlockfile(lf) } python () { diff --git a/conf/sanity.conf b/conf/sanity.conf index 842cab52d6..fe1e2282e4 100644 --- a/conf/sanity.conf +++ b/conf/sanity.conf @@ -3,6 +3,6 @@ # See sanity.bbclass # # Expert users can confirm their sanity with "touch conf/sanity.conf" -BB_MIN_VERSION = "1.8.9" +BB_MIN_VERSION = "1.8.8" INHERIT += "sanity" diff --git a/packages/directfb/directfb_1.1.0.bb b/packages/directfb/directfb_1.1.0.bb index 2c600b409f..daa3437aa6 100644 --- a/packages/directfb/directfb_1.1.0.bb +++ b/packages/directfb/directfb_1.1.0.bb @@ -7,7 +7,7 @@ SECTION = "libs" LICENSE = "LGPL" HOMEPAGE = "http://directfb.org" DEPENDS = "jpeg libpng freetype zlib tslib" -PR = "r1" +PR = "r2" RV = "1.1-0" SRC_URI = " \ @@ -37,6 +37,8 @@ EXTRA_OECONF = " \ do_stage() { autotools_stage_all + # fix breakage introduced with the fix-includes patch, it seems that directfb examples is the only app that looks in the wrong location :/ + ln -sf ${STAGING_LIBDIR} ${STAGING_LIBDIR}/directfb } do_install() { diff --git a/packages/python/python-django_0.96.1.bb b/packages/python/python-django_0.96.1.bb new file mode 100644 index 0000000000..7921f9db0f --- /dev/null +++ b/packages/python/python-django_0.96.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Python Web framework" +SECTION = "devel/python" +PRIORITY = "optional" +LICENSE = "BSD" +RDEPENDS = "python-email python-netserver python-pickle python-pprint \ + python-shell python-textutils python-threading python-unixadmin \ + python-xml" +RRECOMMENDS = "python-pysqlite2" +SRCNAME = "Django" + +SRC_URI = "http://media.djangoproject.com/releases/0.96/${SRCNAME}-${PV}.tar.gz" +S = "${WORKDIR}/${SRCNAME}-${PV}" + +inherit distutils + +DISTUTILS_INSTALL_ARGS = "--root=${D} --prefix=${prefix}" diff --git a/packages/python/python-pysqlite2/.mtn2git_empty b/packages/python/python-pysqlite2/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/python/python-pysqlite2/.mtn2git_empty diff --git a/packages/python/python-pysqlite2/fix-setup.patch b/packages/python/python-pysqlite2/fix-setup.patch new file mode 100644 index 0000000000..fb732a1c3d --- /dev/null +++ b/packages/python/python-pysqlite2/fix-setup.patch @@ -0,0 +1,9 @@ +diff -urN pysqlite-2.4.0.orig/setup.cfg pysqlite-2.4.0/setup.cfg +--- pysqlite-2.4.0.orig/setup.cfg 2007-11-25 17:56:17.000000000 +0100 ++++ pysqlite-2.4.0/setup.cfg 2007-12-07 09:59:36.000000000 +0100 +@@ -1,5 +1,3 @@ + [build_ext] + define= +-include_dirs=/usr/include +-library_dirs=/usr/lib + libraries=sqlite3 diff --git a/packages/python/python-pysqlite2_2.4.0.bb b/packages/python/python-pysqlite2_2.4.0.bb new file mode 100644 index 0000000000..751122e10e --- /dev/null +++ b/packages/python/python-pysqlite2_2.4.0.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Python interface to SQLite 3" +SECTION = "devel/python" +PRIORITY = "optional" +LICENSE = "BSD" +DEPENDS = "sqlite3" +SRCNAME = "pysqlite" + +SRC_URI = "http://initd.org/pub/software/pysqlite/releases/2.4/${PV}/${SRCNAME}-${PV}.tar.gz \ + file://fix-setup.patch;patch=1" +S = "${WORKDIR}/${SRCNAME}-${PV}" + +inherit distutils + +do_install_append() { + install -d ${D}${datadir}/doc/ + mv ${D}${datadir}/pysqlite2-doc ${D}${datadir}/doc/${PN} +} |