Skip to contentSkip to conversation

V2: Enable python support for libnewt and libuser

PATCH In review Kang Kai 2 participants 4 messages Dec 10, 2012 – Dec 11, 2012

lore
Share & tools
lore

Kang Kai

author
#0 lore raw

cover V2: Enable python support for libnewt and libuser

V2:
add python to libnewt/libuser DEPENDS. Build successfully both with and without 'INCOMPATIBLE_LICENSE = "GPLv3"' in local.conf

The following changes since commit c607095894cab60493ddfc4b967b0325e1c313b4:

bitbake: Revert "BBHandler: Ensure parser state engine is correctly reset for new parsing" (2012-12-07 18:09:01 +0000)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib kangkai/libuser_newt-with-python
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kangkai/libuser_newt-with-python

Kang Kai (2):
newt: enable python support
libuser: enable python support

 meta/recipes-extended/libuser/libuser_0.57.1.bb    |   14 ++++++++---
 .../newt/files/fix_python_fpic.patch               |   11 +++++++++
 meta/recipes-extended/newt/libnewt_0.52.14.bb      |   24 +++++++++++++++-----
 3 files changed, 39 insertions(+), 10 deletions(-)
 create mode 100644 meta/recipes-extended/newt/files/fix_python_fpic.patch
Signature · 1 line
1.7.5.4
author
#1 lore raw

PATCH 1/2 newt: enable python support

Compile newt with python support. There may be packages that need newt's python extension.

Add python to DEPENDS. And add patch fix_python_fpic.patch to compile python .so module with flag -fPIC.

---
 .../newt/files/fix_python_fpic.patch               |   11 +++++++++
 meta/recipes-extended/newt/libnewt_0.52.14.bb      |   24 +++++++++++++++-----
 2 files changed, 29 insertions(+), 6 deletions(-)
 create mode 100644 meta/recipes-extended/newt/files/fix_python_fpic.patch
meta/recipes-extended/newt/files/fix_python_fpic.patch new file +11 -0
new file mode 100644
index 0000000..d0dbe99
@@ -0,0 +1,11 @@
+--- newt-0.52.14/Makefile.in	2012-12-04 17:27:27.578915801 +0800
++++ newt-0.52.14/Makefile.in.new	2012-12-04 17:28:43.274918472 +0800
+@@ -84,7 +84,7 @@
+ 			PIFLAGS=`$$ver-config --includes`; \
+ 			PLDFLAGS=`$$ver-config --ldflags`; \
+ 			PLFLAGS=`$$ver-config --libs`; \
+-	        $(CC) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snackmodule.o snackmodule.c ;\
++	        $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snackmodule.o snackmodule.c ;\
+ 	        $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L.  -lnewt $(LIBS);\
+ 	done || :
+ 	touch $@
meta/recipes-extended/newt/libnewt_0.52.14.bb +18 -6
index 0208695..c1ec029 100644
@@ -15,28 +15,40 @@ LICENSE = "LGPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
 
 # slang needs to be >= 2.2
-DEPENDS = "slang popt"
+DEPENDS = "slang popt python"
 
-PR = "r1"
+PR = "r2"
 
 SRC_URI = "https://fedorahosted.org/releases/n/e/newt/newt-${PV}.tar.gz \
            file://remove_slang_include.patch \
            file://fix_SHAREDDIR.patch \
-           file://cross_ar.patch"
+           file://cross_ar.patch \
+           file://fix_python_fpic.patch"
 
 SRC_URI[md5sum] = "eb78c6bb658b92ec7198908b5b8d0e37"
 SRC_URI[sha256sum] = "f70f4f58baa60388ddf2e39249ffb00898fb40f2b2767e42e2ab51fe4b40978e"
 
 S = "${WORKDIR}/newt-${PV}"
 
-EXTRA_OECONF = "--without-python --without-tcl"
+EXTRA_OECONF = "--without-tcl"
 
-inherit autotools
+inherit autotools pythonnative python-dir
 
-PACKAGES_prepend = "whiptail "
+EXTRA_OEMAKE = "PYTHONVERS=${PYTHON_DIR}"
+
+export STAGING_INCDIR
+export STAGING_LIBDIR
+
+export BUILD_SYS
+export HOST_SYS
+
+PACKAGES_prepend = "whiptail ${PN}-python "
 
 do_configure_prepend() {
     sh autogen.sh
 }
 
 FILES_whiptail = "${bindir}/whiptail"
+FILES_${PN}-dbg += "${PYTHON_SITEPACKAGES_DIR}/.debug/"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES_${PN}-staticdev = "${libdir}/*.a"
Signature · 1 line
1.7.5.4
#2 lore raw

Re: [PATCH 1/2] newt: enable python support

meta/recipes-extended/newt/files/fix_python_fpic.patch

Quoted 18 lines · Kang Kai

Compile newt with python support. There may be packages that need newt's python extension.

Add python to DEPENDS. And add patch fix_python_fpic.patch to compile python .so module with flag -fPIC.

---
  .../newt/files/fix_python_fpic.patch               |   11 +++++++++
  meta/recipes-extended/newt/libnewt_0.52.14.bb      |   24 +++++++++++++++-----
  2 files changed, 29 insertions(+), 6 deletions(-)

create mode 100644 meta/recipes-extended/newt/files/fix_python_fpic.patch

meta/recipes-extended/newt/files/fix_python_fpic.patch new file +0 -0
new file mode 100644
index 0000000..d0dbe99

No Patch Header!

Please add Signed-off-by and Upstream-Status to your patches.

Sau!

Quoted 64 lines
meta/recipes-extended/newt/files/fix_python_fpic.patch new file +11 -0
@@ -0,0 +1,11 @@
+--- newt-0.52.14/Makefile.in	2012-12-04 17:27:27.578915801 +0800
++++ newt-0.52.14/Makefile.in.new	2012-12-04 17:28:43.274918472 +0800
+@@ -84,7 +84,7 @@
+ 			PIFLAGS=`$$ver-config --includes`; \
+ 			PLDFLAGS=`$$ver-config --ldflags`; \
+ 			PLFLAGS=`$$ver-config --libs`; \
+-	        $(CC) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snackmodule.o snackmodule.c ;\
++	        $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snackmodule.o snackmodule.c ;\
+ 	        $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L.  -lnewt $(LIBS);\
+ 	done || :
+ 	touch $@
meta/recipes-extended/newt/libnewt_0.52.14.bb +18 -6
index 0208695..c1ec029 100644
@@ -15,28 +15,40 @@ LICENSE = "LGPLv2"
  LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
 
  # slang needs to be >= 2.2
-DEPENDS = "slang popt"
+DEPENDS = "slang popt python"
 
-PR = "r1"
+PR = "r2"
 
  SRC_URI = "https://fedorahosted.org/releases/n/e/newt/newt-${PV}.tar.gz \
             file://remove_slang_include.patch \
             file://fix_SHAREDDIR.patch \
-           file://cross_ar.patch"
+           file://cross_ar.patch \
+           file://fix_python_fpic.patch"
 
  SRC_URI[md5sum] = "eb78c6bb658b92ec7198908b5b8d0e37"
  SRC_URI[sha256sum] = "f70f4f58baa60388ddf2e39249ffb00898fb40f2b2767e42e2ab51fe4b40978e"
 
  S = "${WORKDIR}/newt-${PV}"
 
-EXTRA_OECONF = "--without-python --without-tcl"
+EXTRA_OECONF = "--without-tcl"
 
-inherit autotools
+inherit autotools pythonnative python-dir
 
-PACKAGES_prepend = "whiptail "
+EXTRA_OEMAKE = "PYTHONVERS=${PYTHON_DIR}"
+
+export STAGING_INCDIR
+export STAGING_LIBDIR
+
+export BUILD_SYS
+export HOST_SYS
+
+PACKAGES_prepend = "whiptail ${PN}-python "
 
  do_configure_prepend() {
      sh autogen.sh
  }
 
  FILES_whiptail = "${bindir}/whiptail"
+FILES_${PN}-dbg += "${PYTHON_SITEPACKAGES_DIR}/.debug/"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES_${PN}-staticdev = "${libdir}/*.a"
author
#3 lore raw

PATCH 2/2 libuser: enable python support

In reply to Kang Kai

Compile libuser with python support and add python to DEPENDS.

---
 meta/recipes-extended/libuser/libuser_0.57.1.bb |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)
meta/recipes-extended/libuser/libuser_0.57.1.bb +10 -4
index 99b661b..105bacf 100644
@@ -15,10 +15,16 @@ SRC_URI = "https://fedorahosted.org/releases/l/i/libuser/libuser-${PV}.tar.xz"
 
 SRC_URI[md5sum] = "be82c6941264d0b4bd04f95fb342ec7d"
 SRC_URI[sha256sum] = "a61289867581fa715354a3fafe09c3e481173ce0a2dcb33b04588b6ac13cead5"
-PR = "r2"
+PR = "r3"
 
-DEPENDS = "popt libpam glib-2.0 xz-native docbook-utils-native linuxdoc-tools-native"
+DEPENDS = "popt libpam glib-2.0 xz-native docbook-utils-native linuxdoc-tools-native python"
 
-EXTRA_OECONF += "--without-python"
+inherit autotools gettext pythonnative python-dir
+
+EXTRA_OEMAKE = "PYTHON_CPPFLAGS=-I${STAGING_INCDIR}/${PYTHON_DIR}"
+
+PACKAGES += "${PN}-python "
+
+FILES_${PN}-dbg += "${PYTHON_SITEPACKAGES_DIR}/.debug"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
 
-inherit autotools gettext
Signature · 1 line
1.7.5.4