diff options
author | Khem Raj <raj.khem@gmail.com> | 2009-03-24 14:01:30 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2009-03-24 14:01:30 -0700 |
commit | 0faff8720150863ff38132f87ef65721fcb86dc1 (patch) | |
tree | 476c4a2a832da00b87aed99f8c0d4d72c845efcd /classes | |
parent | af33616e7ede94c06a866ef7e886e65426b088ec (diff) |
distutils-base.bbclass: Move common functionality to distutils-common-base.bbclass
Create a new class distutils-common-base.bbclass which holds the common
parts that can be used in native and target packages which need to use
distutils funtionality.
rpm, libxml2, zope are currently using them and needed to use
distutils-native-base for native recipes.
rpm and libxml need to defer the processing of certain configure
parameters which we evaluate using python. So we need to have python-native
built before we can process them. Hence we can not use EXTRA_OECONF
which is a python variable and gets expanded during parsing recipes
and ofcourse we have not yet built python-native.
We pass these extra options as a separate shell variable to do_configure
which we evaluate when that task is executing.
Diffstat (limited to 'classes')
-rw-r--r-- | classes/distutils-base.bbclass | 26 | ||||
-rw-r--r-- | classes/distutils-common-base.bbclass | 27 | ||||
-rw-r--r-- | classes/distutils-native-base.bbclass | 3 |
3 files changed, 31 insertions, 25 deletions
diff --git a/classes/distutils-base.bbclass b/classes/distutils-base.bbclass index a08414aadf..2e151ded38 100644 --- a/classes/distutils-base.bbclass +++ b/classes/distutils-base.bbclass @@ -1,29 +1,5 @@ -EXTRA_OEMAKE = "" DEPENDS += "${@["python-native python", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" RDEPENDS += "python-core" -export STAGING_INCDIR -export STAGING_LIBDIR +inherit distutils-common-base -def python_dir(d): - import os, bb - staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 ) - for majmin in "2.6 2.5 2.4 2.3".split(): - if os.path.exists( "%s/python%s" % ( staging_incdir, majmin ) ): return "python%s" % majmin - raise "No Python in STAGING_INCDIR. Forgot to build python-native ?" - -PYTHON_DIR = "${@python_dir(d)}" - -PACKAGES = "${PN}-dev ${PN}-dbg ${PN}-doc ${PN}" - -FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" - -FILES_${PN}-dev += "\ - ${libdir}/pkgconfig \ - ${libdir}/${PYTHON_DIR}/site-packages/*.la \ -" -FILES_${PN}-dbg = "\ - ${libdir}/${PYTHON_DIR}/site-packages/.debug \ - ${libdir}/${PYTHON_DIR}/site-packages/*/.debug \ - ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug \ -" diff --git a/classes/distutils-common-base.bbclass b/classes/distutils-common-base.bbclass new file mode 100644 index 0000000000..068eac4de8 --- /dev/null +++ b/classes/distutils-common-base.bbclass @@ -0,0 +1,27 @@ +EXTRA_OEMAKE = "" + +export STAGING_INCDIR +export STAGING_LIBDIR + +def python_dir(d): + import os, bb + staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 ) + for majmin in "2.6 2.5 2.4 2.3".split(): + if os.path.exists( "%s/python%s" % ( staging_incdir, majmin ) ): return "python%s" % majmin + raise "No Python in STAGING_INCDIR. Forgot to build python-native ?" + +PYTHON_DIR = "${@python_dir(d)}" + +PACKAGES = "${PN}-dev ${PN}-dbg ${PN}-doc ${PN}" + +FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" + +FILES_${PN}-dev += "\ + ${libdir}/pkgconfig \ + ${libdir}/${PYTHON_DIR}/site-packages/*.la \ +" +FILES_${PN}-dbg = "\ + ${libdir}/${PYTHON_DIR}/site-packages/.debug \ + ${libdir}/${PYTHON_DIR}/site-packages/*/.debug \ + ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug \ +" diff --git a/classes/distutils-native-base.bbclass b/classes/distutils-native-base.bbclass new file mode 100644 index 0000000000..2703fe0740 --- /dev/null +++ b/classes/distutils-native-base.bbclass @@ -0,0 +1,3 @@ +DEPENDS += "${@["python-native", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" + +inherit distutils-common-base |