Tk Source Code

View Ticket
Login
Ticket UUID: aa846938ef4498d068cb60c4af78e787e9394b39
Title: pkgconfig tests fail on Windows
Type: Bug Version: trunk
Submitter: fvogel Created on: 2019-04-14 21:23:11
Subsystem: 86. Test Tools Assigned To: fvogel
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2019-04-17 20:02:38
Resolution: Fixed Closed By: fvogel
    Closed on: 2019-04-17 20:02:38
Description:

==== pkgconfig-1.1 query keys FAILED
==== Contents of test case:

    lsort [::tk::pkgconfig list]

---- Result was:
64bit debug fontsystem mem_debug optimized profiled threaded
---- Result should have been (exact matching):
64bit bindir,install bindir,runtime debug demodir,install demodir,runtime docdir,install docdir,runtime fontsystem includedir,install includedir,runtime libdir,install libdir,runtime mem_debug optimized profiled scriptdir,install scriptdir,runtime threaded
==== pkgconfig-1.1 FAILED



==== pkgconfig-1.3 query value multiple times FAILED
==== Contents of test case:

    string compare  [::tk::pkgconfig get bindir,install]  [::tk::pkgconfig get bindir,install]

---- Test generated error; Return code was: 1
---- Return code should have been one of: 0 2
---- errorInfo: key not known
    while executing
"::tk::pkgconfig get bindir,install"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $script"
---- errorCode: TCL LOOKUP CONFIG bindir,install
==== pkgconfig-1.3 FAILED

Happens since implementation of TIPs 482 and 483 was merged in trunk: [9978174eb36a6b67]

User Comments: fvogel added on 2019-04-17 20:02:13:
Merged to trunk.

fvogel added on 2019-04-17 16:10:46:
On my request the bugfix branch was tested with success by Marc Culler (thanks!), who reports 100% success for pkgconfig.test on macOS.

fvogel added on 2019-04-15 17:57:08:

Test pkgconfig-1.3 checks that querying the same thing twice produces twice the same result (is this really needed? why?). This test can be made to pass by choosing to get a key that is present on all platforms, e.g. "64bit".

Test pkgconfig-1.1 checks that the full list of keys is actually available. I think we can only ocntraint this to be skipped on Windows.

The above is implemented in [0e59266a76].

Any other opinion about how to resolve this ticket?


dkf added on 2019-04-15 04:39:53:

This is caused by the macros CFG_RUNTIME_LIBDIR, CFG_RUNTIME_BINDIR, CFG_RUNTIME_SCRDIR, CFG_RUNTIME_INCDIR, CFG_RUNTIME_DOCDIR, CFG_RUNTIME_DEMODIR, CFG_INSTALL_LIBDIR, CFG_INSTALL_BINDIR, CFG_INSTALL_SCRDIR, CFG_INSTALL_INCDIR, CFG_INSTALL_DOCDIR, and CFG_INSTALL_DEMODIR being undefined in a Windows build (and is better than a failure to build at all).