Fossil SCM
Let "fossil version -v" report the real Tcl version running, not the version of the Tcl (stub) library it was compiled with.
Commit
86a8e1d923911c4bb356f0b5ffc9e39b6e8ce4d2
Parent
2d9e01e0487f481…
1 file changed
+15
-3
+15
-3
| --- src/main.c | ||
| +++ src/main.c | ||
| @@ -795,23 +795,35 @@ | ||
| 795 | 795 | fossil_print("This is fossil version " RELEASE_VERSION " " |
| 796 | 796 | MANIFEST_VERSION " " MANIFEST_DATE " UTC\n"); |
| 797 | 797 | if(!find_option("verbose","v",0)){ |
| 798 | 798 | return; |
| 799 | 799 | }else{ |
| 800 | +#if defined(FOSSIL_ENABLE_TCL) | |
| 801 | + int rc; | |
| 802 | + const char *zRc; | |
| 803 | +#endif | |
| 800 | 804 | fossil_print("Compiled on %s %s using %s (%d-bit)\n", |
| 801 | 805 | __DATE__, __TIME__, COMPILER_NAME, sizeof(void*)*8); |
| 802 | 806 | fossil_print("SQLite %s %.30s\n", SQLITE_VERSION, SQLITE_SOURCE_ID); |
| 803 | 807 | fossil_print("Schema version %s\n", AUX_SCHEMA); |
| 804 | 808 | fossil_print("zlib %s\n", ZLIB_VERSION); |
| 805 | 809 | #if defined(FOSSIL_ENABLE_SSL) |
| 806 | 810 | fossil_print("SSL (%s)\n", OPENSSL_VERSION_TEXT); |
| 807 | 811 | #endif |
| 808 | 812 | #if defined(FOSSIL_ENABLE_TCL) |
| 809 | - fossil_print("TCL (Tcl %s)\n", TCL_PATCH_LEVEL); | |
| 810 | -#endif | |
| 813 | + Th_FossilInit(0, 0); | |
| 814 | + th_register_tcl(g.interp, &g.tcl); | |
| 815 | + rc = Th_Eval(g.interp, 0, "tclEval {package require Tcl}", -1); | |
| 816 | + zRc = Th_ReturnCodeName(rc, 1); | |
| 817 | + fossil_print("TCL (Tcl %s%s%s%s)\n", zRc, zRc ? ": " : "", | |
| 818 | + Th_GetResult(g.interp, 0), | |
| 811 | 819 | #if defined(FOSSIL_ENABLE_TCL_STUBS) |
| 812 | - fossil_print("TCL_STUBS\n"); | |
| 820 | + zRc? "" : ", loaded only when needed" | |
| 821 | +#else | |
| 822 | + "" | |
| 823 | +#endif | |
| 824 | + ); | |
| 813 | 825 | #endif |
| 814 | 826 | #if defined(FOSSIL_ENABLE_JSON) |
| 815 | 827 | fossil_print("JSON (API %s)\n", FOSSIL_JSON_API_VERSION); |
| 816 | 828 | #endif |
| 817 | 829 | } |
| 818 | 830 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -795,23 +795,35 @@ | |
| 795 | fossil_print("This is fossil version " RELEASE_VERSION " " |
| 796 | MANIFEST_VERSION " " MANIFEST_DATE " UTC\n"); |
| 797 | if(!find_option("verbose","v",0)){ |
| 798 | return; |
| 799 | }else{ |
| 800 | fossil_print("Compiled on %s %s using %s (%d-bit)\n", |
| 801 | __DATE__, __TIME__, COMPILER_NAME, sizeof(void*)*8); |
| 802 | fossil_print("SQLite %s %.30s\n", SQLITE_VERSION, SQLITE_SOURCE_ID); |
| 803 | fossil_print("Schema version %s\n", AUX_SCHEMA); |
| 804 | fossil_print("zlib %s\n", ZLIB_VERSION); |
| 805 | #if defined(FOSSIL_ENABLE_SSL) |
| 806 | fossil_print("SSL (%s)\n", OPENSSL_VERSION_TEXT); |
| 807 | #endif |
| 808 | #if defined(FOSSIL_ENABLE_TCL) |
| 809 | fossil_print("TCL (Tcl %s)\n", TCL_PATCH_LEVEL); |
| 810 | #endif |
| 811 | #if defined(FOSSIL_ENABLE_TCL_STUBS) |
| 812 | fossil_print("TCL_STUBS\n"); |
| 813 | #endif |
| 814 | #if defined(FOSSIL_ENABLE_JSON) |
| 815 | fossil_print("JSON (API %s)\n", FOSSIL_JSON_API_VERSION); |
| 816 | #endif |
| 817 | } |
| 818 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -795,23 +795,35 @@ | |
| 795 | fossil_print("This is fossil version " RELEASE_VERSION " " |
| 796 | MANIFEST_VERSION " " MANIFEST_DATE " UTC\n"); |
| 797 | if(!find_option("verbose","v",0)){ |
| 798 | return; |
| 799 | }else{ |
| 800 | #if defined(FOSSIL_ENABLE_TCL) |
| 801 | int rc; |
| 802 | const char *zRc; |
| 803 | #endif |
| 804 | fossil_print("Compiled on %s %s using %s (%d-bit)\n", |
| 805 | __DATE__, __TIME__, COMPILER_NAME, sizeof(void*)*8); |
| 806 | fossil_print("SQLite %s %.30s\n", SQLITE_VERSION, SQLITE_SOURCE_ID); |
| 807 | fossil_print("Schema version %s\n", AUX_SCHEMA); |
| 808 | fossil_print("zlib %s\n", ZLIB_VERSION); |
| 809 | #if defined(FOSSIL_ENABLE_SSL) |
| 810 | fossil_print("SSL (%s)\n", OPENSSL_VERSION_TEXT); |
| 811 | #endif |
| 812 | #if defined(FOSSIL_ENABLE_TCL) |
| 813 | Th_FossilInit(0, 0); |
| 814 | th_register_tcl(g.interp, &g.tcl); |
| 815 | rc = Th_Eval(g.interp, 0, "tclEval {package require Tcl}", -1); |
| 816 | zRc = Th_ReturnCodeName(rc, 1); |
| 817 | fossil_print("TCL (Tcl %s%s%s%s)\n", zRc, zRc ? ": " : "", |
| 818 | Th_GetResult(g.interp, 0), |
| 819 | #if defined(FOSSIL_ENABLE_TCL_STUBS) |
| 820 | zRc? "" : ", loaded only when needed" |
| 821 | #else |
| 822 | "" |
| 823 | #endif |
| 824 | ); |
| 825 | #endif |
| 826 | #if defined(FOSSIL_ENABLE_JSON) |
| 827 | fossil_print("JSON (API %s)\n", FOSSIL_JSON_API_VERSION); |
| 828 | #endif |
| 829 | } |
| 830 |