summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/tcltk
diff options
context:
space:
mode:
authorKoen Kooi <koen@dominion.thruhere.net>2011-08-17 22:52:35 +0200
committerKoen Kooi <koen@dominion.thruhere.net>2011-08-17 22:52:35 +0200
commit888e2b64b61a00bc94e0c57f1c08153b6c54753c (patch)
treeba2e96968363ade171aad40429bddea058008064 /meta-oe/recipes-devtools/tcltk
parent924021a825df6412d063e078166bf6bc0ebdb5cf (diff)
downloadmeta-openembedded-888e2b64b61a00bc94e0c57f1c08153b6c54753c.tar.gz
tk 8.5.8: import from OE rev 5350bbef01b8979617e3d0fd38939f94f1fa5315
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-devtools/tcltk')
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/confsearch.diff32
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/fix-xft.diff16
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/manpages.diff23
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/non-linux.diff45
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/rpath.diff40
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/tklibrary.diff22
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk-8.5.8/tkprivate.diff41
-rw-r--r--meta-oe/recipes-devtools/tcltk/tk_8.5.8.bb44
8 files changed, 263 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/confsearch.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/confsearch.diff
new file mode 100644
index 000000000..c51e47542
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/confsearch.diff
@@ -0,0 +1,32 @@
1Patch by Sergei Golovan allows to find tclConfig.sh in /usr/share/tcltk/tcl8.5
2and tkConfig.sh in /usr/share/tcltk/tk8.5 where they are located in Debian
3installation.
4
5--- tk8.5-8.5.8.orig/unix/configure
6+++ tk8.5-8.5.8/unix/configure
7@@ -1431,6 +1431,7 @@
8 `ls -d ${prefix}/lib 2>/dev/null` \
9 `ls -d /usr/local/lib 2>/dev/null` \
10 `ls -d /usr/contrib/lib 2>/dev/null` \
11+ `ls -d /usr/share/tcltk/tcl8.5 2>/dev/null` \
12 `ls -d /usr/lib 2>/dev/null` \
13 ; do
14 if test -f "$i/tclConfig.sh" ; then
15--- tk8.5-8.5.8.orig/unix/tcl.m4
16+++ tk8.5-8.5.8/unix/tcl.m4
17@@ -93,6 +93,7 @@
18 `ls -d ${prefix}/lib 2>/dev/null` \
19 `ls -d /usr/local/lib 2>/dev/null` \
20 `ls -d /usr/contrib/lib 2>/dev/null` \
21+ `ls -d /usr/share/tcltk/tcl8.5 2>/dev/null` \
22 `ls -d /usr/lib 2>/dev/null` \
23 ; do
24 if test -f "$i/tclConfig.sh" ; then
25@@ -223,6 +224,7 @@
26 `ls -d ${prefix}/lib 2>/dev/null` \
27 `ls -d /usr/local/lib 2>/dev/null` \
28 `ls -d /usr/contrib/lib 2>/dev/null` \
29+ `ls -d /usr/share/tcltk/tk8.5 2>/dev/null` \
30 `ls -d /usr/lib 2>/dev/null` \
31 ; do
32 if test -f "$i/tkConfig.sh" ; then
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/fix-xft.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/fix-xft.diff
new file mode 100644
index 000000000..d1bb7105c
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/fix-xft.diff
@@ -0,0 +1,16 @@
1--- /tmp/configure.in 2010-05-19 13:29:03.000000000 +0200
2+++ unix/configure.in 2010-05-19 13:42:05.000000000 +0200
3@@ -526,13 +526,9 @@
4 found_xft="yes"
5 dnl make sure package configurator (xft-config or pkg-config
6 dnl says that xft is present.
7- XFT_CFLAGS=`xft-config --cflags 2>/dev/null` || found_xft="no"
8- XFT_LIBS=`xft-config --libs 2>/dev/null` || found_xft="no"
9- if test "$found_xft" = "no" ; then
10 found_xft=yes
11 XFT_CFLAGS=`pkg-config --cflags xft 2>/dev/null` || found_xft="no"
12 XFT_LIBS=`pkg-config --libs xft 2>/dev/null` || found_xft="no"
13- fi
14 AC_MSG_RESULT([$found_xft])
15 dnl make sure that compiling against Xft header file doesn't bomb
16 if test "$found_xft" = "yes" ; then
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/manpages.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/manpages.diff
new file mode 100644
index 000000000..a0620bd2c
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/manpages.diff
@@ -0,0 +1,23 @@
1Patch by Chris Waters fixes installing of several manual pages which
2aren't installed by upstream script but are referenced inside other
3manual pages.
4
5--- tk8.5-8.5.8.orig/unix/installManPage
6+++ tk8.5-8.5.8/unix/installManPage
7@@ -51,7 +51,16 @@
8 }' $MANPAGE`
9
10 SECTION=`echo $MANPAGE | sed 's/.*\(.\)$/\1/'`
11+NAME=`basename $MANPAGE .$SECTION`
12 SRCDIR=`dirname $MANPAGE`
13+
14+SPECIALS="FindPhoto"
15+for n in $SPECIALS; do
16+ if [ "$NAME" = "$n" ] ; then
17+ NAMES="$n $NAMES"
18+ fi
19+done
20+
21 FIRST=""
22 for f in $NAMES; do
23 f=$f.$SECTION$SUFFIX
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/non-linux.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/non-linux.diff
new file mode 100644
index 000000000..9309fc48e
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/non-linux.diff
@@ -0,0 +1,45 @@
1Patch by Sergei Golovan (originally by Mike Markley and Chris Waters) fixes
2building on non-linux Debian architectures.
3
4--- tk8.5-8.5.8.orig/unix/configure
5+++ tk8.5-8.5.8/unix/configure
6@@ -4742,6 +4742,9 @@
7 if test "`uname -s`" = "AIX" ; then
8 tcl_cv_sys_version=AIX-`uname -v`.`uname -r`
9 fi
10+ if test "`uname -s`" = "NetBSD" -a -f /etc/debian_version ; then
11+ tcl_cv_sys_version=NetBSD-Debian
12+ fi
13 fi
14 fi
15
16@@ -5546,7 +5549,7 @@
17 fi
18
19 ;;
20- Linux*)
21+ Linux*|GNU*|NetBSD-Debian)
22 SHLIB_CFLAGS="-fPIC"
23 SHLIB_LD_LIBS='${LIBS}'
24 SHLIB_SUFFIX=".so"
25--- tk8.5-8.5.8.orig/unix/tcl.m4
26+++ tk8.5-8.5.8/unix/tcl.m4
27@@ -962,6 +962,9 @@
28 if test "`uname -s`" = "AIX" ; then
29 tcl_cv_sys_version=AIX-`uname -v`.`uname -r`
30 fi
31+ if test "`uname -s`" = "NetBSD" -a -f /etc/debian_version ; then
32+ tcl_cv_sys_version=NetBSD-Debian
33+ fi
34 fi
35 fi
36 ])
37@@ -1422,7 +1425,7 @@
38 ])
39 ])
40 ;;
41- Linux*)
42+ Linux*|GNU*|NetBSD-Debian)
43 SHLIB_CFLAGS="-fPIC"
44 SHLIB_LD_LIBS='${LIBS}'
45 SHLIB_SUFFIX=".so"
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/rpath.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/rpath.diff
new file mode 100644
index 000000000..81169aab2
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/rpath.diff
@@ -0,0 +1,40 @@
1Patch by Chris Waters removes -rpath from search flags and adds -soname
2to library build options.
3
4Also, it fixes Makefile.in to put correct Tk library filename to pkgIndex.tcl
5
6--- tk8.5-8.5.8.orig/unix/configure
7+++ tk8.5-8.5.8/unix/configure
8@@ -5557,6 +5557,9 @@
9 # get rid of the warnings.
10 #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
11
12+ # following line added by CW for Debian GNU/Linux
13+ TK_SHLIB_LD_EXTRAS="-Wl,-soname,\${TK_LIB_FILE}.0"
14+
15 SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
16 DL_OBJS="tclLoadDl.o"
17 DL_LIBS="-ldl"
18--- tk8.5-8.5.8.orig/unix/Makefile.in
19+++ tk8.5-8.5.8/unix/Makefile.in
20@@ -713,7 +713,7 @@
21 echo "if {[catch {package present Tcl 8.5.0}]} { return }";\
22 relative=`echo | awk '{ORS=" "; split("$(TK_PKG_DIR)",a,"/"); for (f in a) {print ".."}}'`;\
23 echo "package ifneeded Tk $(MAJOR_VERSION).$(MINOR_VERSION)$(PATCH_LEVEL)\
24- [list load [file join \$$dir $${relative}$(TK_LIB_FILE)] Tk]";\
25+ [list load [file join $(LIB_RUNTIME_DIR) $(TK_LIB_FILE).0] Tk]";\
26 ) > "$(PKG_INDEX)"; \
27 fi
28 @echo "Installing $(LIB_FILE) to $(LIB_INSTALL_DIR)/"
29--- tk8.5-8.5.8.orig/unix/tcl.m4
30+++ tk8.5-8.5.8/unix/tcl.m4
31@@ -1433,6 +1433,9 @@
32 # get rid of the warnings.
33 #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
34
35+ # following line added by CW for Debian GNU/Linux
36+ TK_SHLIB_LD_EXTRAS="-Wl,-soname,\${TK_LIB_FILE}.0"
37+
38 SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
39 DL_OBJS="tclLoadDl.o"
40 DL_LIBS="-ldl"
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tklibrary.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tklibrary.diff
new file mode 100644
index 000000000..ee38c2a1a
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tklibrary.diff
@@ -0,0 +1,22 @@
1--- tk8.5-8.5.8.orig/unix/configure
2+++ tk8.5-8.5.8/unix/configure
3@@ -11070,7 +11070,7 @@
4 TCL_STUB_FLAGS="-DUSE_TCL_STUBS"
5 fi
6
7-TK_LIBRARY='$(prefix)/lib/tk$(VERSION)'
8+test -z "$TK_LIBRARY" && TK_LIBRARY='$(prefix)/lib/tk$(VERSION)'
9 PRIVATE_INCLUDE_DIR='$(includedir)'
10 HTML_DIR='$(DISTDIR)/html'
11 TK_PKG_DIR='tk$(VERSION)'
12--- tk8.5-8.5.8.orig/unix/configure.in
13+++ tk8.5-8.5.8/unix/configure.in
14@@ -607,7 +607,7 @@
15 TCL_STUB_FLAGS="-DUSE_TCL_STUBS"
16 fi
17
18-TK_LIBRARY='$(prefix)/lib/tk$(VERSION)'
19+test -z "$TK_LIBRARY" && TK_LIBRARY='$(prefix)/lib/tk$(VERSION)'
20 PRIVATE_INCLUDE_DIR='$(includedir)'
21 HTML_DIR='$(DISTDIR)/html'
22 TK_PKG_DIR='tk$(VERSION)'
diff --git a/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tkprivate.diff b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tkprivate.diff
new file mode 100644
index 000000000..4e1546973
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk-8.5.8/tkprivate.diff
@@ -0,0 +1,41 @@
1Patch by Chris Waters sets path which are normally point to a directory
2with Tk sources to a subdirectory of /usr/include/tcl8.4 (debian/rules
3puts private Tk headers there).
4
5--- tk8.5-8.5.8.orig/unix/tkConfig.sh.in
6+++ tk8.5-8.5.8/unix/tkConfig.sh.in
7@@ -55,7 +55,7 @@
8
9 # String to pass to linker to pick up the Tk library from its
10 # build directory.
11-TK_BUILD_LIB_SPEC='@TK_BUILD_LIB_SPEC@'
12+TK_BUILD_LIB_SPEC='@TK_LIB_SPEC@'
13
14 # String to pass to linker to pick up the Tk library from its
15 # installed directory.
16@@ -71,7 +71,7 @@
17 # different place than the directory containing the source files, this
18 # points to the location of the sources, not the location where Tk was
19 # compiled.
20-TK_SRC_DIR='@TK_SRC_DIR@'
21+TK_SRC_DIR='@includedir@/tk-private'
22
23 # Needed if you want to make a 'fat' shared library library
24 # containing tk objects or link a different wish.
25@@ -86,14 +86,14 @@
26
27 # String to pass to linker to pick up the Tk stub library from its
28 # build directory.
29-TK_BUILD_STUB_LIB_SPEC='@TK_BUILD_STUB_LIB_SPEC@'
30+TK_BUILD_STUB_LIB_SPEC='@TK_STUB_LIB_SPEC@'
31
32 # String to pass to linker to pick up the Tk stub library from its
33 # installed directory.
34 TK_STUB_LIB_SPEC='@TK_STUB_LIB_SPEC@'
35
36 # Path to the Tk stub library in the build directory.
37-TK_BUILD_STUB_LIB_PATH='@TK_BUILD_STUB_LIB_PATH@'
38+TK_BUILD_STUB_LIB_PATH='@TK_STUB_LIB_PATH@'
39
40 # Path to the Tk stub library in the install directory.
41 TK_STUB_LIB_PATH='@TK_STUB_LIB_PATH@'
diff --git a/meta-oe/recipes-devtools/tcltk/tk_8.5.8.bb b/meta-oe/recipes-devtools/tcltk/tk_8.5.8.bb
new file mode 100644
index 000000000..247e55b69
--- /dev/null
+++ b/meta-oe/recipes-devtools/tcltk/tk_8.5.8.bb
@@ -0,0 +1,44 @@
1DESCRIPTION = "Tool Command Language ToolKit Extension"
2HOMEPAGE = "http://tcl.sourceforge.net"
3SECTION = "devel/tcltk"
4LICENSE = "tcl"
5LIC_FILES_CHKSUM = "file://license.terms;md5=24954e7e6b54c1b4e16de861b9d392fc"
6DEPENDS = "tcl virtual/libx11 libxt"
7
8SRC_URI = "\
9 ${SOURCEFORGE_MIRROR}/tcl/tk${PV}-src.tar.gz \
10 file://confsearch.diff;striplevel=2 \
11 file://manpages.diff;striplevel=2 \
12 file://non-linux.diff;striplevel=2 \
13 file://rpath.diff;striplevel=2 \
14 file://tklibrary.diff;striplevel=2 \
15 file://tkprivate.diff;striplevel=2 \
16 file://fix-xft.diff \
17"
18SRC_URI[md5sum] = "13bf90602e16fc530e05196431021dc6"
19SRC_URI[sha256sum] = "9737da5c30e631281062b6acbb4753840f9e95657c78e37657d9c520589ab2d4"
20
21S = "${WORKDIR}/tk${PV}/unix"
22
23inherit autotools
24
25EXTRA_OECONF = "\
26 --enable-threads \
27 --with-tcl=${STAGING_BINDIR_CROSS} \
28 --x-includes=${STAGING_INCDIR} \
29 --x-libraries=${STAGING_LIBDIR} \
30"
31
32do_install_append() {
33 mv libtk8.5.so libtk8.5.so.0
34 oe_libinstall -so libtk8.5 ${D}${libdir}
35 ln -sf wish8.5 ${D}${bindir}/wish
36}
37
38PACKAGES =+ "${PN}-lib"
39
40FILES_${PN}-lib = "${libdir}/libtk8.5.so.*"
41FILES_${PN} += "${libdir}/tk*"
42
43BINCONFIG_GLOB = "*Config.sh"
44BBCLASSEXTEND = "native"