All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCH] tk: cleanup
@ 2014-05-05 15:51 Matthieu Crapet
  2014-05-05 16:29 ` Martin Jansa
  0 siblings, 1 reply; 5+ messages in thread
From: Matthieu Crapet @ 2014-05-05 15:51 UTC (permalink / raw)
  To: openembedded-devel

Changes:
- use ${BPN} and ${PV}
- use ${VER} intermediate variable for readability
- fulfill LIC_FILES_CHKSUM
- remove BINCONFIG_GLOB: inherit binconfig is not present, lib/tkConfig.sh paths are valid
- add SSTATE_SCAN_FILES, like it is done in tcl recipe (OE-Core)

Note: tcl and tk are sharing the same licence, it will be added to OE-Core soon.
It will drop QA warning.

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
---
 meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb | 40 ++++++++++++++++++++++--------
 1 file changed, 29 insertions(+), 11 deletions(-)

diff --git a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
index d12973c..58862e7 100644
--- a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
+++ b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
@@ -1,12 +1,24 @@
 SUMMARY = "Tool Command Language ToolKit Extension"
 HOMEPAGE = "http://tcl.sourceforge.net"
 SECTION = "devel/tcltk"
+
+# http://www.tcl.tk/software/tcltk/license.html
 LICENSE = "tcl"
-LIC_FILES_CHKSUM = "file://license.terms;md5=c88f99decec11afa967ad33d314f87fe"
+LIC_FILES_CHKSUM = "file://../license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../compat/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../doc/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../library/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../macosx/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../tests/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../unix/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../win/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../xlib/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+"
+
 DEPENDS = "tcl virtual/libx11 libxt"
 
 SRC_URI = "\
-    ${SOURCEFORGE_MIRROR}/tcl/tk${PV}-src.tar.gz \
+    ${SOURCEFORGE_MIRROR}/tcl/${BPN}${PV}-src.tar.gz \
     file://confsearch.diff;striplevel=2 \
     file://non-linux.diff;striplevel=2 \
     file://tklibrary.diff;striplevel=2 \
@@ -16,8 +28,12 @@ SRC_URI = "\
 SRC_URI[md5sum] = "b883a1a3c489c17413fb602a94bf54e8"
 SRC_URI[sha256sum] = "5c708b2b6f658916df59190b27750fa1ea2bc10992108e10f961c0700f058de6"
 
-S = "${WORKDIR}/tk${PV}/unix"
-LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/8.6.0/lib"
+S = "${WORKDIR}/${BPN}${PV}/unix"
+
+# Short version format: "8.6"
+VER = "${@os.path.splitext(d.getVar('PV', True))[0]}"
+
+LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
 inherit autotools
 
 EXTRA_OECONF = "\
@@ -28,14 +44,14 @@ EXTRA_OECONF = "\
 "
 
 do_install_append() {
-    ln -sf libtk8.6.so ${D}${libdir}/libtk8.6.so.0
-    oe_libinstall -so libtk8.6 ${D}${libdir}
-    ln -sf wish8.6 ${D}${bindir}/wish
-	
+    ln -sf libtk${VER}.so ${D}${libdir}/libtk${VER}.so.0
+    oe_libinstall -so libtk${VER} ${D}${libdir}
+    ln -sf wish${VER} ${D}${bindir}/wish
+
     # Even after passing libdir=${libdir} at config, some incorrect dirs are still generated for the multilib build
     if [ "$libdir" != "/usr/lib" ]; then
         # Move files to correct library directory
-        mv ${D}/usr/lib/tk8.6/* ${D}/${libdir}/tk8.6/
+        mv ${D}/usr/lib/tk${VER}/* ${D}/${libdir}/tk${VER}/
         # Remove unneeded/incorrect dir ('usr/lib/')
         rm -rf ${D}/usr/lib
     fi
@@ -43,12 +59,14 @@ do_install_append() {
 
 PACKAGES =+ "${PN}-lib"
 
-FILES_${PN}-lib = "${libdir}/libtk8.6.so*"
+FILES_${PN}-lib = "${libdir}/libtk${VER}.so*"
 FILES_${PN} += "${libdir}/tk*"
 
 # isn't getting picked up by shlibs code
 RDEPENDS_${PN} += "tk-lib"
 RDEPENDS_${PN}_class-native = ""
 
-BINCONFIG_GLOB = "*Config.sh"
 BBCLASSEXTEND = "native"
+
+# Fix the path in sstate
+SSTATE_SCAN_FILES += "*Config.sh"
-- 
1.8.5.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [meta-oe][PATCH] tk: cleanup
  2014-05-05 15:51 [meta-oe][PATCH] tk: cleanup Matthieu Crapet
@ 2014-05-05 16:29 ` Martin Jansa
  2014-05-06  6:49   ` Matthieu CRAPET
  0 siblings, 1 reply; 5+ messages in thread
From: Martin Jansa @ 2014-05-05 16:29 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 4454 bytes --]

On Mon, May 05, 2014 at 05:51:23PM +0200, Matthieu Crapet wrote:
> Changes:
> - use ${BPN} and ${PV}
> - use ${VER} intermediate variable for readability
> - fulfill LIC_FILES_CHKSUM
> - remove BINCONFIG_GLOB: inherit binconfig is not present, lib/tkConfig.sh paths are valid
> - add SSTATE_SCAN_FILES, like it is done in tcl recipe (OE-Core)

Does it also fix the tk issues which were shown in all world build reports?

> Note: tcl and tk are sharing the same licence, it will be added to OE-Core soon.
> It will drop QA warning.
> 
> Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
> ---
>  meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb | 40 ++++++++++++++++++++++--------
>  1 file changed, 29 insertions(+), 11 deletions(-)
> 
> diff --git a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
> index d12973c..58862e7 100644
> --- a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
> +++ b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
> @@ -1,12 +1,24 @@
>  SUMMARY = "Tool Command Language ToolKit Extension"
>  HOMEPAGE = "http://tcl.sourceforge.net"
>  SECTION = "devel/tcltk"
> +
> +# http://www.tcl.tk/software/tcltk/license.html
>  LICENSE = "tcl"
> -LIC_FILES_CHKSUM = "file://license.terms;md5=c88f99decec11afa967ad33d314f87fe"
> +LIC_FILES_CHKSUM = "file://../license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../compat/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../doc/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../library/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../macosx/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../tests/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../unix/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../win/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +    file://../xlib/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
> +"
> +
>  DEPENDS = "tcl virtual/libx11 libxt"
>  
>  SRC_URI = "\
> -    ${SOURCEFORGE_MIRROR}/tcl/tk${PV}-src.tar.gz \
> +    ${SOURCEFORGE_MIRROR}/tcl/${BPN}${PV}-src.tar.gz \
>      file://confsearch.diff;striplevel=2 \
>      file://non-linux.diff;striplevel=2 \
>      file://tklibrary.diff;striplevel=2 \
> @@ -16,8 +28,12 @@ SRC_URI = "\
>  SRC_URI[md5sum] = "b883a1a3c489c17413fb602a94bf54e8"
>  SRC_URI[sha256sum] = "5c708b2b6f658916df59190b27750fa1ea2bc10992108e10f961c0700f058de6"
>  
> -S = "${WORKDIR}/tk${PV}/unix"
> -LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/8.6.0/lib"
> +S = "${WORKDIR}/${BPN}${PV}/unix"
> +
> +# Short version format: "8.6"
> +VER = "${@os.path.splitext(d.getVar('PV', True))[0]}"
> +
> +LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
>  inherit autotools
>  
>  EXTRA_OECONF = "\
> @@ -28,14 +44,14 @@ EXTRA_OECONF = "\
>  "
>  
>  do_install_append() {
> -    ln -sf libtk8.6.so ${D}${libdir}/libtk8.6.so.0
> -    oe_libinstall -so libtk8.6 ${D}${libdir}
> -    ln -sf wish8.6 ${D}${bindir}/wish
> -	
> +    ln -sf libtk${VER}.so ${D}${libdir}/libtk${VER}.so.0
> +    oe_libinstall -so libtk${VER} ${D}${libdir}
> +    ln -sf wish${VER} ${D}${bindir}/wish
> +
>      # Even after passing libdir=${libdir} at config, some incorrect dirs are still generated for the multilib build
>      if [ "$libdir" != "/usr/lib" ]; then
>          # Move files to correct library directory
> -        mv ${D}/usr/lib/tk8.6/* ${D}/${libdir}/tk8.6/
> +        mv ${D}/usr/lib/tk${VER}/* ${D}/${libdir}/tk${VER}/
>          # Remove unneeded/incorrect dir ('usr/lib/')
>          rm -rf ${D}/usr/lib
>      fi
> @@ -43,12 +59,14 @@ do_install_append() {
>  
>  PACKAGES =+ "${PN}-lib"
>  
> -FILES_${PN}-lib = "${libdir}/libtk8.6.so*"
> +FILES_${PN}-lib = "${libdir}/libtk${VER}.so*"
>  FILES_${PN} += "${libdir}/tk*"
>  
>  # isn't getting picked up by shlibs code
>  RDEPENDS_${PN} += "tk-lib"
>  RDEPENDS_${PN}_class-native = ""
>  
> -BINCONFIG_GLOB = "*Config.sh"
>  BBCLASSEXTEND = "native"
> +
> +# Fix the path in sstate
> +SSTATE_SCAN_FILES += "*Config.sh"
> -- 
> 1.8.5.4
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta-oe][PATCH] tk: cleanup
  2014-05-05 16:29 ` Martin Jansa
@ 2014-05-06  6:49   ` Matthieu CRAPET
  2014-05-06 21:41     ` Martin Jansa
  0 siblings, 1 reply; 5+ messages in thread
From: Matthieu CRAPET @ 2014-05-06  6:49 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org

Hi,

> Does it also fix the tk issues which were shown in all world build reports?

I'm afraid not. That was my primary objective, but I was unable to reproduce the issue (even with insane PARALLEL_MAKE parameter).
It's quite cosmetics, but the BINCONFIG_GLOB/SSTATE_SCAN_FILES fix is worth it.

Regards,
M


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta-oe][PATCH] tk: cleanup
  2014-05-06  6:49   ` Matthieu CRAPET
@ 2014-05-06 21:41     ` Martin Jansa
  2014-05-07 13:11       ` [meta-oe][PATCH v2] tk: cleanup & add PACKAGECONFIG Matthieu Crapet
  0 siblings, 1 reply; 5+ messages in thread
From: Martin Jansa @ 2014-05-06 21:41 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 7256 bytes --]

On Tue, May 06, 2014 at 06:49:50AM +0000, Matthieu CRAPET wrote:
> Hi,
> 
> > Does it also fix the tk issues which were shown in all world build reports?
> 
> I'm afraid not. That was my primary objective, but I was unable to reproduce the issue (even with insane PARALLEL_MAKE parameter).
> It's quite cosmetics, but the BINCONFIG_GLOB/SSTATE_SCAN_FILES fix is worth it.

Well it will be PNBLACKLISTED if it's not fixed, can you please
check/confirm that your build also ends with /usr/lib/ in rpath?

| arm-oe-linux-gnueabi-ar cr libtkstub8.6.a tkStubLib.o ttkStubLib.o ; arm-oe-linux-gnueabi-ranlib libtkstub8.6.a
| rm -f libtk8.6.so
| arm-oe-linux-gnueabi-gcc  -march=armv5te -marm -mthumb-interwork --sysroot=/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm -shared -O2  -O2 -pipe -g -feliminate-unused-debug-types -pipe -fvisibility=hidden   -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-rpath,/usr/lib/tcltk/8.6.0/lib -Wl,--export-dynamic  -o libtk8.6.so tk3d.o tkArgv.o tkAtom.o tkBind.o tkBitmap.o tkBusy.o tkClipboard.o tkCmds.o tkColor.o tkConfig.o tkConsole.o tkCursor.o tkError.o tkEvent.o tkFocus.o tkFont.o tkGet.o tkGC.o tkGeometry.o tkGrab.o tkGrid.o tkMain.o tkObj.o tkOldConfig.o tkOption.o tkPack.o tkPlace.o tkSelect.o tkStyle.o tkUndo.o tkUtil.o tkVisual.o tkWindow.o tkButton.o tkEntry.o tkFrame.o tkListbox.o tkMenu.o tkMenubutton.o tkMenuDraw.o tkMessage.o tkPanedWindow.o tkScale.o tkScrollbar.o tkCanvas.o tkCanvArc.o tkCanvBmap.o tkCanvImg.o tkCanvLine.o tkCanvPoly.o tkCanvPs.o tkCanvText.o tkCanvUtil.o tkCanvWind.o tkRectOval.o tkTrig.o tkImage.o tkImgBmap.o tkImgGIF.o tkImgPNG.o tkImgPPM.o tkImgPhoto.o tkImgPhInstance.o tkText.o tkTextBTree.o tkTextDisp.o tkTextImage.o tkTextIndex.o tkTextMark.o tkTextTag.o tkTextWind.o tkStubInit.o ttkBlink.o ttkButton.o ttkCache.o ttkClamTheme.o ttkClassicTheme.o ttkDefaultTheme.o ttkElements.o ttkEntry.o ttkFrame.o ttkImage.o ttkInit.o ttkLabel.o ttkLayout.o ttkManager.o ttkNotebook.o ttkPanedwindow.o ttkProgress.o ttkScale.o ttkScrollbar.o ttkScroll.o ttkSeparator.o ttkSquare.o ttkState.o ttkTagSet.o ttkTheme.o ttkTrace.o ttkTrack.o ttkTreeview.o ttkWidget.o ttkStubInit.o tkUnix.o tkUnix3d.o tkUnixButton.o tkUnixColor.o tkUnixConfig.o tkUnixCursor.o tkUnixDraw.o tkUnixEmbed.o tkUnixEvent.o tkUnixFocus.o  tkUnixRFont.o tkUnixInit.o tkUnixKey.o tkUnixMenu.o tkUnixMenubu.o tkUnixScale.o tkUnixScrlbr.o tkUnixSelect.o tkUnixSend.o tkUnixWm.o tkUnixXId.o   -lpthread -lXft  -lX11 -lXss -lXext -ldl -lz  -lpthread -lieee -lm -L=/usr/lib -ltclstub8.6  -Wl,-rpath,/usr/lib
| arm-oe-linux-gnueabi-gcc  -march=armv5te -marm -mthumb-interwork --sysroot=/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm -O2  -O2 -pipe -g -feliminate-unused-debug-types -pipe -fvisibility=hidden   -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-rpath,/usr/lib/tcltk/8.6.0/lib -Wl,--export-dynamic  tkAppInit.o -L/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix -ltk8.6 -L=/usr/lib -ltcl8.6  -lpthread -lXft  -lX11 -lXss -lXext -ldl -lz  -lpthread -lieee -lm  \
| 		-Wl,-rpath,/usr/lib -o wish
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcCharSetHasChar'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcFontRenderPrepare'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternAddMatrix'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcCharSetDestroy'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternDestroy'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcFontSetDestroy'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternGetString'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternGetDouble'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternGetInteger'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcConfigSubstitute'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcFontSort'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternGetCharSet'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcCharSetCopy'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternCreate'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternAddString'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternAddDouble'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternAddInteger'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcPatternAddBool'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/tk8.6.0/unix/libtk8.6.so: error: undefined reference to 'FcUtf8ToUcs4'
| collect2: error: ld returned 1 exit status
| make: *** [wish] Error 1
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/tk/8.6.0-r0/temp/log.do_compile.21584)
NOTE: recipe tk-8.6.0-r0: task do_compile: Failed
NOTE: recipe initramfs-boot-1.0-r2: task do_rm_work_all: Started
NOTE: recipe fso-alsa-data-0.1.0-r0: task do_rm_work: Succeeded
ERROR: Task 11401 (/home/jenkins/oe/shr-core-branches/shr-core/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb, do_compile) failed with exit code '1'

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [meta-oe][PATCH v2] tk: cleanup & add PACKAGECONFIG
  2014-05-06 21:41     ` Martin Jansa
@ 2014-05-07 13:11       ` Matthieu Crapet
  0 siblings, 0 replies; 5+ messages in thread
From: Matthieu Crapet @ 2014-05-07 13:11 UTC (permalink / raw)
  To: openembedded-devel

Changes:
- add PACKAGECONFIG "xft" enables XFontConfig features
- add PACKAGECONFIG "xss" enables XScreenSaver extension
- use ${BPN} and ${PV}
- use ${VER} intermediate variable for readability
- fulfill LIC_FILES_CHKSUM
- remove BINCONFIG_GLOB: inherit binconfig is not present, lib/tkConfig.sh paths are valid
- add SSTATE_SCAN_FILES, like it is done in tcl recipe (OE-Core)

Note: tcl and tk are sharing the same licence, tcl licence file in commited in OE-Core.

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
---
 meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb | 44 ++++++++++++++++++++++--------
 1 file changed, 33 insertions(+), 11 deletions(-)

diff --git a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
index d12973c..36a1729 100644
--- a/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
+++ b/meta-oe/recipes-devtools/tcltk/tk_8.6.0.bb
@@ -1,12 +1,24 @@
 SUMMARY = "Tool Command Language ToolKit Extension"
 HOMEPAGE = "http://tcl.sourceforge.net"
 SECTION = "devel/tcltk"
+
+# http://www.tcl.tk/software/tcltk/license.html
 LICENSE = "tcl"
-LIC_FILES_CHKSUM = "file://license.terms;md5=c88f99decec11afa967ad33d314f87fe"
+LIC_FILES_CHKSUM = "file://../license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../compat/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../doc/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../library/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../macosx/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../tests/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../unix/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../win/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://../xlib/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+"
+
 DEPENDS = "tcl virtual/libx11 libxt"
 
 SRC_URI = "\
-    ${SOURCEFORGE_MIRROR}/tcl/tk${PV}-src.tar.gz \
+    ${SOURCEFORGE_MIRROR}/tcl/${BPN}${PV}-src.tar.gz \
     file://confsearch.diff;striplevel=2 \
     file://non-linux.diff;striplevel=2 \
     file://tklibrary.diff;striplevel=2 \
@@ -16,8 +28,12 @@ SRC_URI = "\
 SRC_URI[md5sum] = "b883a1a3c489c17413fb602a94bf54e8"
 SRC_URI[sha256sum] = "5c708b2b6f658916df59190b27750fa1ea2bc10992108e10f961c0700f058de6"
 
-S = "${WORKDIR}/tk${PV}/unix"
-LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/8.6.0/lib"
+S = "${WORKDIR}/${BPN}${PV}/unix"
+
+# Short version format: "8.6"
+VER = "${@os.path.splitext(d.getVar('PV', True))[0]}"
+
+LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
 inherit autotools
 
 EXTRA_OECONF = "\
@@ -28,27 +44,33 @@ EXTRA_OECONF = "\
 "
 
 do_install_append() {
-    ln -sf libtk8.6.so ${D}${libdir}/libtk8.6.so.0
-    oe_libinstall -so libtk8.6 ${D}${libdir}
-    ln -sf wish8.6 ${D}${bindir}/wish
-	
+    ln -sf libtk${VER}.so ${D}${libdir}/libtk${VER}.so.0
+    oe_libinstall -so libtk${VER} ${D}${libdir}
+    ln -sf wish${VER} ${D}${bindir}/wish
+
     # Even after passing libdir=${libdir} at config, some incorrect dirs are still generated for the multilib build
     if [ "$libdir" != "/usr/lib" ]; then
         # Move files to correct library directory
-        mv ${D}/usr/lib/tk8.6/* ${D}/${libdir}/tk8.6/
+        mv ${D}/usr/lib/tk${VER}/* ${D}/${libdir}/tk${VER}/
         # Remove unneeded/incorrect dir ('usr/lib/')
         rm -rf ${D}/usr/lib
     fi
 }
 
+PACKAGECONFIG ??= "xft"
+PACKAGECONFIG[xft] = "--enable-xft,--disable-xft,xft"
+PACKAGECONFIG[xss] = "--enable-xss,--disable-xss,libxscrnsaver libxext"
+
 PACKAGES =+ "${PN}-lib"
 
-FILES_${PN}-lib = "${libdir}/libtk8.6.so*"
+FILES_${PN}-lib = "${libdir}/libtk${VER}.so*"
 FILES_${PN} += "${libdir}/tk*"
 
 # isn't getting picked up by shlibs code
 RDEPENDS_${PN} += "tk-lib"
 RDEPENDS_${PN}_class-native = ""
 
-BINCONFIG_GLOB = "*Config.sh"
 BBCLASSEXTEND = "native"
+
+# Fix the path in sstate
+SSTATE_SCAN_FILES += "*Config.sh"
-- 
1.8.5.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-05-07 13:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-05 15:51 [meta-oe][PATCH] tk: cleanup Matthieu Crapet
2014-05-05 16:29 ` Martin Jansa
2014-05-06  6:49   ` Matthieu CRAPET
2014-05-06 21:41     ` Martin Jansa
2014-05-07 13:11       ` [meta-oe][PATCH v2] tk: cleanup & add PACKAGECONFIG Matthieu Crapet

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.