109 lines
3.0 KiB
Diff
109 lines
3.0 KiB
Diff
Description: Patch fixes loading the libBLT library from
|
|
[package require BLT]. Specifically, it provides correct version
|
|
BLT_PATCH_LEVEL and prevents loading the library twice (once
|
|
by its real name and onr more time by a symlink if the blt-dev
|
|
package is installed). Also, it skips initializing widget bindings
|
|
if Tk isn't present.
|
|
Author: Sergei Golovan
|
|
Author: Steve Langasek <vorlon@debian.org>
|
|
Last-Modified: Wed, 21 Mar 2018 10:53:10 +0300
|
|
|
|
--- a/library/Makefile.in
|
|
+++ b/library/Makefile.in
|
|
@@ -5,6 +5,7 @@
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
version = @BLT_VERSION@
|
|
+patchlevel = @BLT_PATCH_LEVEL@
|
|
lib_prefix = @BLT_LIB_PREFIX@
|
|
srcdir = @srcdir@
|
|
libdir = @libdir@
|
|
@@ -49,6 +50,7 @@
|
|
pkgIndex:
|
|
rm -f pkgIndex.tcl
|
|
sed -e 's/%VERSION%/$(version)/' $(srcdir)/pkgIndex.tcl.in | \
|
|
+ sed -e 's/%PATCHLEVEL%/$(patchlevel)/' | \
|
|
sed -e 's/%LIB_PREFIX%/$(lib_prefix)/' | \
|
|
sed -e 's;%LIB_DIR%;$(libdir);' > pkgIndex.tcl
|
|
|
|
--- a/library/pkgIndex.tcl.in
|
|
+++ b/library/pkgIndex.tcl.in
|
|
@@ -7,23 +7,11 @@
|
|
regsub {\.} $version {} version_no_dots
|
|
set versuf $version$suffix
|
|
|
|
+ set taillib ${versuf}.[info tclversion]
|
|
+
|
|
# Determine whether to load the full BLT library or
|
|
# the "lite" tcl-only version.
|
|
|
|
- if {[package vcompare [info tclversion] 8.2] < 0} {
|
|
- set taillib ${versuf}.8.0
|
|
- } elseif {[package vcompare [info tclversion] 8.3] < 0} {
|
|
- set taillib ${versuf}.8.2
|
|
- } elseif {[package vcompare [info tclversion] 8.4] < 0} {
|
|
- set taillib ${versuf}.8.3
|
|
- } elseif {[package vcompare [info tclversion] 8.5] < 0} {
|
|
- set taillib ${versuf}.8.4
|
|
- } elseif {[package vcompare [info tclversion] 8.6] < 0} {
|
|
- set taillib ${versuf}.8.5
|
|
- } else {
|
|
- set taillib ${versuf}.8.6
|
|
- }
|
|
-
|
|
if { [info commands tk] == "tk" } {
|
|
set name1 ${prefix}BLT.${taillib}
|
|
set name2 ${prefix}BLT${version_no_dots}${suffix}
|
|
@@ -49,11 +37,13 @@
|
|
}
|
|
if { ![file exists $library] } continue
|
|
load $library BLT
|
|
+ break
|
|
}
|
|
}
|
|
|
|
set version "%VERSION%"
|
|
+set patchlevel %PATCHLEVEL%
|
|
|
|
-package ifneeded BLT $version [list LoadBLT25 $version $dir]
|
|
+package ifneeded BLT $patchlevel [list LoadBLT25 $version $dir]
|
|
|
|
# End of package index file
|
|
--- a/library/init.tcl
|
|
+++ b/library/init.tcl
|
|
@@ -8,7 +8,9 @@
|
|
}
|
|
}
|
|
|
|
- initializeLibrary
|
|
+ if {[info commands tk] == "tk"} {
|
|
+ initializeLibrary
|
|
+ }
|
|
|
|
}
|
|
|
|
--- a/configure.in
|
|
+++ b/configure.in
|
|
@@ -977,6 +977,13 @@
|
|
|
|
BLT_VERSION=${BLT_MAJOR_VERSION}.${BLT_MINOR_VERSION}
|
|
|
|
+AC_MSG_CHECKING([BLT_PATCH_LEVEL])
|
|
+AC_CACHE_VAL(blt_cv_patch_level,
|
|
+AC_GREP_SYMBOL(blt_cv_patch_level, BLT_PATCH_LEVEL, ${srcdir}/generic/blt.h)
|
|
+)
|
|
+AC_MSG_RESULT([$blt_cv_patch_level])
|
|
+BLT_PATCH_LEVEL=${blt_cv_patch_level}
|
|
+
|
|
# Add BLT to the run path
|
|
libdir=${exec_prefix}/lib
|
|
|
|
@@ -1386,6 +1393,7 @@
|
|
AC_SUBST(DEFINES)
|
|
AC_SUBST(BLT_MAJOR_VERSION)
|
|
AC_SUBST(BLT_MINOR_VERSION)
|
|
+AC_SUBST(BLT_PATCH_LEVEL)
|
|
AC_SUBST(BLT_VERSION)
|
|
AC_SUBST(AUX_LIBS)
|
|
AC_SUBST(TCL_LIB_DIR)
|