From 8afc20e8be1f622e700f9f6a5dc3717577bc90d2 Mon Sep 17 00:00:00 2001 From: Henryk Ploetz Date: Sun, 7 Oct 2007 19:32:36 +0000 Subject: mono: clean up packaging --- packages/mono/mono_1.2.5.1.bb | 123 ++++++++++-------------------------------- 1 file changed, 28 insertions(+), 95 deletions(-) (limited to 'packages/mono') diff --git a/packages/mono/mono_1.2.5.1.bb b/packages/mono/mono_1.2.5.1.bb index c3ea1818ad..1d58c2d810 100644 --- a/packages/mono/mono_1.2.5.1.bb +++ b/packages/mono/mono_1.2.5.1.bb @@ -2,7 +2,7 @@ require mono_1.2.5.inc DEPENDS = "mono-native mono-mcs-intermediate glib-2.0 perl-native" -PR = "r2" +PR = "r3" SRC_URI += "file://configure.patch;patch=1 \ file://genmdesc-cpp.patch;patch=1" @@ -35,11 +35,16 @@ do_install_append() { } inherit mono -PACKAGES = "${@" ".join([e["name"] for e in mono_get_file_table(bb.data.getVar('PV', d, 1), d) if e.has_key("name")])}" + +# Import file definitions from Debian +require mono_1.2.5.1-files.inc + +# Add some packages +PACKAGES_append = " mono-doc mono mono-runtime" FILES_mono-doc_append = " /usr/share/libgc-mono/ " -FILES_mono = "" # Apparently this gets ignored, so I'm setting it again below +FILES_mono = "" ALLOW_EMPTY_mono = "1" RDEPENDS_mono = "mono-common mono-jit" @@ -49,98 +54,26 @@ RDEPENDS_mono-runtime = "mono-jit mono-gac" RDEPENDS_mono-jit = "mono-common" -FILES_libmono-dev = "/usr/lib/libmono.la /usr/lib/libmono-profiler-cov.la /usr/lib/libmono-profiler-aot.la \ +FILES_libmono-dev =+ " /usr/lib/libmono.la /usr/lib/libmono-profiler-cov.la /usr/lib/libmono-profiler-aot.la \ /usr/lib/libMonoPosixHelper.la /usr/lib/libMonoSupportW.la" -FILES_libmono-dbg = "/usr/lib/.debug/libmono*.so.* /usr/lib/.debug/libikvm-native.so \ +FILES_libmono-dbg =+ " /usr/lib/.debug/libmono*.so.* /usr/lib/.debug/libikvm-native.so \ /usr/lib/.debug/libMonoPosixHelper.so /usr/lib/.debug/libMonoSupportW.so" -python populate_packages_prepend () { - def fillin_packages(): - # A lot of this code can probably be replaced with less code and some - # calls to do_split_packages - import bb, sys, os, glob, commands - - PV = bb.data.getVar('PV', d, 1) - - file_table = mono_get_file_table(PV, d) - packages_to_add = [] - - D = bb.data.getVar('D', d, 1) - if not D: return - D = D + "/" - - def classify_files(files): - normal, dev, dbg, doc = [], [], [], [] - for filename in files: - if filename.endswith(".mdb"): - dbg.append(filename) - elif os.path.basename( os.path.dirname( filename ) ) == ".debug": - dbg.append(filename) - elif filename.endswith(".pc"): - dev.append(filename) - else: - normal.append(filename) - return normal, dev, dbg, doc - - def will_strip(filename): - # From package.bbclass function runstrip - pathprefix = "export PATH=%s; " % bb.data.getVar('PATH', d, 1) - ret, result = commands.getstatusoutput("%sfile '%s'" % (pathprefix, filename)) - if "not stripped" in result: - return True - else: - return False - - def append(name, value): - oldvalue = bb.data.getVar(name, d, 1) or "" - newvalue = " ".join([oldvalue, value]) - bb.data.setVar(name, newvalue, d) - - already_covered = [] - for package in file_table: - pn = package["name"] - if package.has_key("patterns"): - files = [] - for pattern in package["patterns"]: - matching = glob.glob( D + pattern ) - for filename in matching: - if os.path.isdir(filename): - for dirpath, dirnames, filenames in os.walk(filename): - for f in filenames: - debugname = os.path.join(dirpath, ".debug", f) - fullname = os.path.join(dirpath, f) - files.append(fullname) - if will_strip(fullname): - files.append(debugname) - else: - files.append(filename) - - # Remove the D prefix - files = [ e[len(D):] for e in files ] - - # Remove files that have already been placed in other packages - files = [ e for e in files if not e in already_covered ] - already_covered.extend( files ) - - if pn.endswith("-dev") or pn.endswith("-dbg") or pn.endswith("-doc"): - normal, dev, dbg, doc = files, [], [], [] - else: - normal, dev, dbg, doc = classify_files(files) - - for extension, filelist in [ ("",normal), ("-dev", dev), ("-dbg", dbg), ("-doc", doc)]: - if len(filelist) > 0: - packagename = pn + extension - append("FILES_%s" % packagename, " ".join(filelist)) - bb.debug(2, "%s\n\t%s" %( packagename, "\n\t".join( filelist ) )) - if not packagename in packages_to_add: - packages_to_add.append(packagename) - - else: - packages_to_add.append(pn) - - # mono is just a stub package - bb.data.setVar("FILES_mono", "", d) - - bb.data.setVar("PACKAGES", " ".join(packages_to_add), d) - fillin_packages() -} +# Packages not included in Debian +PACKAGES_prepend = "libnunit2.2-cil-dbg libnunit2.2-cil-dev libnunit2.2-cil \ + libmono-cecil0.5-cil-dbg libmono-cecil0.5-cil-dev libmono-cecil0.5-cil \ + libmono-db2-1.0-cil-dbg libmono-db2-1.0-cil-dev libmono-db2-1.0-cil" + +FILES_libnunit2.2-cil = "/usr/lib/mono/gac/nunit.*/2.2.* /usr/lib/mono/1.0/nunit.*.dll" +FILES_libnunit2.2-cil-dev = "/usr/lib/pkgconfig/mono-nunit.pc" +FILES_libnunit2.2-cil-dbg = "/usr/lib/mono/gac/nunit*/2.2.*/nunit.*.dll.mdb" + +FILES_libmono-cecil0.5-cil = "/usr/lib/mono/gac/Mono.Cecil/0.5.*" +FILES_libmono-cecil0.5-cil-dbg = "/usr/lib/mono/gac/Mono.Cecil/0.5.0.1__0738eb9f132ed756/Mono.Cecil.dll.mdb" + +FILES_libmono-db2-1.0-cil = "/usr/lib/mono/gac/IBM.Data.DB2/1.0* /usr/lib/mono/1.0/IBM.Data.DB2.dll" +FILES_libmono-db2-1.0-cil-dbg = "/usr/lib/mono/gac/IBM.Data.DB2/1.0*/IBM.Data.DB2.dll.mdb" + +# Move .pc files +FILES_libmono-cairo1.0-cil-dev = "/usr/lib/pkgconfig/mono-cairo.pc" +PACKAGES =+ " libmono-cairo1.0-cil-dev " -- cgit v1.2.3