summaryrefslogtreecommitdiff
path: root/tcl-8.6.15-autopath.patch
blob: cf9f9c0417cf0cb57924f9096072b11e6b84e2d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
diff --git a/library/auto.tcl b/library/auto.tcl
index 7d23b6e..3c7717b 100644
--- a/library/auto.tcl
+++ b/library/auto.tcl
@@ -81,6 +81,13 @@ proc tcl_findLibrary {basename version patch initScript enVarName varName} {
 	    lappend dirs [::${basename}::pkgconfig get scriptdir,runtime]
 	}
 
+	# 2a. As a sibling of Tcl's script directory
+	if {[catch {
+	    ::tcl::pkgconfig get scriptdir,runtime
+	} value] == 0} {
+	    lappend dirs [file join [file dirname $value] $basename$version]
+	}
+
 	# 3. Relative to auto_path directories.  This checks relative to the
 	# Tcl library as well as allowing loading of libraries added to the
 	# auto_path that is not relative to the core library or binary paths.
diff --git a/library/init.tcl b/library/init.tcl
index edf6bd5..fa37bcc 100644
--- a/library/init.tcl
+++ b/library/init.tcl
@@ -52,16 +52,11 @@ if {![info exists auto_path]} {
 namespace eval tcl {
     if {![interp issafe]} {
 	variable Dir
-	foreach Dir [list $::tcl_library [file dirname $::tcl_library]] {
+	foreach Dir [list $::tcl_library] {
 	    if {$Dir ni $::auto_path} {
 		lappend ::auto_path $Dir
 	    }
 	}
-	set Dir [file join [file dirname [file dirname \
-		[info nameofexecutable]]] lib]
-	if {$Dir ni $::auto_path} {
-	    lappend ::auto_path $Dir
-	}
 	if {[info exists ::tcl_pkgPath]} { catch {
 	    foreach Dir $::tcl_pkgPath {
 		if {$Dir ni $::auto_path} {
diff --git a/unix/configure.in b/unix/configure.in
index c73f368..5c57692 100644
--- a/unix/configure.in
+++ b/unix/configure.in
@@ -869,9 +869,9 @@
     test -z "$TCL_MODULE_PATH"  && \
 	TCL_MODULE_PATH="~/Library/Tcl /Library/Tcl"
 elif test "$prefix/lib" != "$libdir"; then
-    test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${libdir}:${prefix}/lib"
+    test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${libdir}/tcl8.6 ${prefix}/share/tcl8.6 ${libdir}/tk8.6 ${prefix}/share/tk8.6"
 else
-    test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${prefix}/lib"
+    test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${libdir}/tcl8.6 ${prefix}/share/tcl8.6 ${libdir}/tk8.6 ${prefix}/share/tk8.6"
 fi
 
 #--------------------------------------------------------------------