TDBC

Check-in [7f5817340f]
Login
Bounty program for improvements to Tcl and certain Tcl packages.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:tdbc/win/Makefile.vc now installs prototypes, stub lib and tdbcConfig.sh. tdbcodbc/win/Makefile.vc builds when bundled, test invocation fixed.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | td-win-tea
Files: files | file ages | folders
SHA1: 7f5817340fce3ee057b9c1cfc3825203b80c192b
User & Date: oehhar 2012-12-05 15:48:26
Context
2012-12-06
15:21
merge contributed patch check-in: caab6510cb user: dgp tags: trunk, tdbc-1-0-0
2012-12-05
15:48
tdbc/win/Makefile.vc now installs prototypes, stub lib and tdbcConfig.sh. tdbcodbc/win/Makefile.vc builds when bundled, test invocation fixed. Closed-Leaf check-in: 7f5817340f user: oehhar tags: td-win-tea
2012-11-16
09:46
TEA makefile.vc for WIN32 check-in: 1dcee1f65f user: twylite tags: td-win-tea
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to tdbc/ChangeLog.





1
2
3
4
5
6
7



2012-08-17  Jan Nijtmans  <[email protected]>

	* win/nmakehlp.c: Add "-V<num>" option, in order to be able
	to detect partial version numbers.

2012-07-26  Jan Nijtmans  <[email protected]>

>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
2012-12-05  Harald Oehlmann  <[email protected]>

	* win/Makefile.vc: Install headers, stub file and fixed tdbcConfig.sh.

2012-08-17  Jan Nijtmans  <[email protected]>

	* win/nmakehlp.c: Add "-V<num>" option, in order to be able
	to detect partial version numbers.

2012-07-26  Jan Nijtmans  <[email protected]>

Changes to tdbc/win/makefile.vc.

218
219
220
221
222
223
224

225
226
227
228
229
230
231
232
233
234
235
236
237
...
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475

476



477



478

479
480
481
482
483
484
485
486
487
...
491
492
493
494
495
496
497

498
499
500
501
502
503




504
505
506
507
508
509
510
PRJLIBNAME	= $(PROJECT)$(VERSION)$(SUFX).$(EXT)
PRJLIB		= $(OUT_DIR)\$(PRJLIBNAME)

PRJSTUBLIBNAME	= $(STUBPREFIX)$(VERSION).lib
PRJSTUBLIB	= $(OUT_DIR)\$(PRJSTUBLIBNAME)

### Make sure we use backslash only.

PRJ_INSTALL_DIR         = $(_INSTALLDIR)\$(PROJECT)$(DOTVERSION)
LIB_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
BIN_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
DOC_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
SCRIPT_INSTALL_DIR	= $(PRJ_INSTALL_DIR)
INCLUDE_INSTALL_DIR	= $(_TCLDIR)\include

### The following paths CANNOT have spaces in them.
GENERICDIR	= $(ROOT)\generic
WINDIR		= $(ROOT)\win
LIBDIR          = $(ROOT)\library
DOCDIR		= $(ROOT)\doc
TOOLSDIR	= $(ROOT)\tools
................................................................................
@[email protected]     $(TCL_VERSION_REQ)
@[email protected] $(TCL_VERSION_DESIRED)
@[email protected]   $(TCLOO_VERSION_REQ)
@[email protected]        $(PRJLIBNAME)
@[email protected]         $(TCL_DOTVERSION)
<<

$(OUT_DIR)\pkgIndex.tcl: $(ROOT)\pkgIndex.tcl.in
	@nmakehlp -s << $** > [email protected]

	type << > [email protected]
if {[catch {package require Tcl 8.5}]} return
package ifneeded $(PROJECT) $(DOTVERSION) \
 [list load [file join $$dir $(PRJLIBNAME)] $(PROJECT)]
<<

$(OUT_DIR)\tdbcConfig.sh: $(ROOT)\tdbcConfig.sh.in
	nmakehlp -s << $** > [email protected]

@[email protected]              $(PRJLIBNAME)



@TDBC[email protected]         $(PRJLIBNAME)



@TDBC[email protected]          -I$(LIB_INSTALL_DIR)

@[email protected]  -I$(LIB_INSTALL_DIR)
@[email protected]            $(DOTVERSION)
<<

$(TMP_DIR)\tdbcStubLib.obj : $(GENERICDIR)\tdbcStubLib.c
        $(cc32) $(STUB_CFLAGS) $(TCL_INCLUDES) -Zl -DSTATIC_BUILD [email protected] $?

#---------------------------------------------------------------------
# Installation. (EDIT)
................................................................................
#
#---------------------------------------------------------------------

install-binaries:
	@echo Installing binaries to '$(SCRIPT_INSTALL_DIR)'
	@if not exist "$(SCRIPT_INSTALL_DIR)" mkdir "$(SCRIPT_INSTALL_DIR)"
	@$(CPY) $(PRJLIB) "$(SCRIPT_INSTALL_DIR)" >NUL


install-libraries: $(OUT_DIR)\pkgIndex.tcl
	@echo Installing libraries to '$(SCRIPT_INSTALL_DIR)'
	@if exist $(LIBDIR) $(CPY) $(LIBDIR)\*.tcl "$(SCRIPT_INSTALL_DIR)"
	@echo Installing package index in '$(SCRIPT_INSTALL_DIR)'
	@$(CPY) $(OUT_DIR)\pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"





install-docs:
	@echo Installing documentation files to '$(DOC_INSTALL_DIR)'
	@if exist $(DOCDIR) $(CPY) $(DOCDIR)\*.n "$(DOC_INSTALL_DIR)"

#---------------------------------------------------------------------
# Clean up






>





|







 







|
<
<
<
<
<
<
<



>
|
>
>
>
|
>
>
>
|
>
|
<







 







>

|




>
>
>
>







218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
...
459
460
461
462
463
464
465
466







467
468
469
470
471
472
473
474
475
476
477
478
479
480
481

482
483
484
485
486
487
488
...
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
PRJLIBNAME	= $(PROJECT)$(VERSION)$(SUFX).$(EXT)
PRJLIB		= $(OUT_DIR)\$(PRJLIBNAME)

PRJSTUBLIBNAME	= $(STUBPREFIX)$(VERSION).lib
PRJSTUBLIB	= $(OUT_DIR)\$(PRJSTUBLIBNAME)

### Make sure we use backslash only.
# This is normally the lib folder of a tcl installation
PRJ_INSTALL_DIR         = $(_INSTALLDIR)\$(PROJECT)$(DOTVERSION)
LIB_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
BIN_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
DOC_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
SCRIPT_INSTALL_DIR	= $(PRJ_INSTALL_DIR)
INCLUDE_INSTALL_DIR	= $(_INSTALLDIR)\..\include

### The following paths CANNOT have spaces in them.
GENERICDIR	= $(ROOT)\generic
WINDIR		= $(ROOT)\win
LIBDIR          = $(ROOT)\library
DOCDIR		= $(ROOT)\doc
TOOLSDIR	= $(ROOT)\tools
................................................................................
@[email protected]     $(TCL_VERSION_REQ)
@[email protected] $(TCL_VERSION_DESIRED)
@[email protected]   $(TCLOO_VERSION_REQ)
@[email protected]        $(PRJLIBNAME)
@[email protected]         $(TCL_DOTVERSION)
<<

.PHONY: $(OUT_DIR)\tdbcConfig.sh








$(OUT_DIR)\tdbcConfig.sh: $(ROOT)\tdbcConfig.sh.in
	nmakehlp -s << $** > [email protected]
@[email protected]            $(DOTVERSION)
@[email protected]               $(PRJLIBNAME)
@[email protected]              $(LIB_INSTALL_DIR)\$(PRJLIBNAME)
@[email protected]          $(PRJSTUBLIBNAME)
@[email protected]   $(PRJSTUBLIB)
@tdbc[email protected]         $(LIB_INSTALL_DIR)\$(PRJSTUBLIBNAME)
@[email protected]   $(PRJSTUBLIB)
@[email protected]         $(LIB_INSTALL_DIR)\$(PRJSTUBLIBNAME)
@[email protected]               $(ROOT)
@tdbc[email protected]          -I$(INCLUDE_INSTALL_DIR)
@[email protected]    -I$(GENERICDIR)
@[email protected]               $(LIB_INSTALL_DIR)

<<

$(TMP_DIR)\tdbcStubLib.obj : $(GENERICDIR)\tdbcStubLib.c
        $(cc32) $(STUB_CFLAGS) $(TCL_INCLUDES) -Zl -DSTATIC_BUILD [email protected] $?

#---------------------------------------------------------------------
# Installation. (EDIT)
................................................................................
#
#---------------------------------------------------------------------

install-binaries:
	@echo Installing binaries to '$(SCRIPT_INSTALL_DIR)'
	@if not exist "$(SCRIPT_INSTALL_DIR)" mkdir "$(SCRIPT_INSTALL_DIR)"
	@$(CPY) $(PRJLIB) "$(SCRIPT_INSTALL_DIR)" >NUL
	@$(CPY) $(PRJSTUBLIB) "$(LIB_INSTALL_DIR)" >NUL

install-libraries: $(OUT_DIR)\pkgIndex.tcl $(OUT_DIR)\tdbcConfig.sh
	@echo Installing libraries to '$(SCRIPT_INSTALL_DIR)'
	@if exist $(LIBDIR) $(CPY) $(LIBDIR)\*.tcl "$(SCRIPT_INSTALL_DIR)"
	@echo Installing package index in '$(SCRIPT_INSTALL_DIR)'
	@$(CPY) $(OUT_DIR)\pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"
	@$(CPY) $(OUT_DIR)\tdbcConfig.sh "$(LIB_INSTALL_DIR)"
	@echo Installing header files in '$(INCLUDE_INSTALL_DIR)'
	@$(CPY) "$(GENERICDIR)\tdbc.h"      "$(INCLUDE_INSTALL_DIR)\"
	@$(CPY) "$(GENERICDIR)\tdbcDecls.h" "$(INCLUDE_INSTALL_DIR)\"

install-docs:
	@echo Installing documentation files to '$(DOC_INSTALL_DIR)'
	@if exist $(DOCDIR) $(CPY) $(DOCDIR)\*.n "$(DOC_INSTALL_DIR)"

#---------------------------------------------------------------------
# Clean up

Changes to tdbcodbc/ChangeLog.





1
2
3
4
5
6
7



2012-07-26  Jan Nijtmans  <[email protected]>

	* generic/odbcStubInit.s: Make some tables "const"
	* tclconfig/install-sh:   Update to latest TEA
	* tclconfig/tcl.m4:	
	* configure:		      autoconf-2.59

>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
2012-12-05  Harald Oehlmann  <[email protected]>

	* win/Makefile.vc: Compiles when bundled and standalone, test fixed.

2012-07-26  Jan Nijtmans  <[email protected]>

	* generic/odbcStubInit.s: Make some tables "const"
	* tclconfig/install-sh:   Update to latest TEA
	* tclconfig/tcl.m4:	
	* configure:		      autoconf-2.59

Changes to tdbcodbc/win/makefile.vc.

173
174
175
176
177
178
179



180
181
182
183
184
185
186
...
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228



















229
230
231
232
233
234
235
...
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
...
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
...
355
356
357
358
359
360
361


362













































363
364
365
366
367
368

369
370





371
372
373
374
375
376
377
378
379
!if [echo REM = This file is generated from Makefile.vc > versions.vc]
!endif
# get project version from row AC_INIT([tdbcodbc], [1.0b17])
!if [echo DOTVERSION = \>> versions.vc] \
   && [nmakehlp -V ..\configure.in AC_INIT >> versions.vc]
!endif



!include "versions.vc"

VERSION         = $(DOTVERSION:.=)
STUBPREFIX      = $(PROJECT)stub

DLLOBJS = \
	$(TMP_DIR)\tdbcodbc.obj \
................................................................................
### Make sure we use backslash only.
PRJ_INSTALL_DIR         = $(_INSTALLDIR)\$(PROJECT)$(DOTVERSION)
LIB_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
BIN_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
DOC_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
SCRIPT_INSTALL_DIR	= $(PRJ_INSTALL_DIR)
INCLUDE_INSTALL_DIR	= $(_TCLDIR)\include
tmdir		= $(_INSTALLDIR)\tcl$(TCL_MAJOR_VERSION)\$(TCL_MAJOR_VERSION).$(TCL_MINOR_VERSION)

### The following paths CANNOT have spaces in them.
GENERICDIR	= $(ROOT)\generic
WINDIR		= $(ROOT)\win
LIBDIR          = $(ROOT)\library
DOCDIR		= $(ROOT)\doc
TOOLSDIR	= $(ROOT)\tools
COMPATDIR	= $(ROOT)\compat




















#---------------------------------------------------------------------
# Compile flags
#---------------------------------------------------------------------

!if !$(DEBUG)
!if $(OPTIMIZING)
### This cranks the optimization level to maximize speed
................................................................................
!if !$(STATIC_BUILD)
cflags = $(cflags) -DUSE_TCL_STUBS
!if defined(TKSTUBLIB)
cflags = $(cflags) -DUSE_TK_STUBS
!endif
!endif

INCLUDES	= $(TCL_INCLUDES) -I"$(WINDIR)" -I"$(GENERICDIR)" -I"$(TDBCDIR)\generic"
BASE_CFLAGS	= $(cflags) $(cdebug) $(crt) $(INCLUDES)
CON_CFLAGS	= $(cflags) $(cdebug) $(crt) -DCONSOLE
TCL_CFLAGS	= -DPACKAGE_NAME="\"$(PROJECT)\"" \
		  -DPACKAGE_VERSION="\"$(DOTVERSION)\"" \
		  -DBUILD_$(PROJECT) \
		  $(BASE_CFLAGS) $(OPTDEFINES) \
                  -Dinline=__inline
................................................................................
!if $(LOIMPACT)
lflags	= $(lflags) -ws:aggressive
!endif

dlllflags = $(lflags) -dll
conlflags = $(lflags) -subsystem:console
guilflags = $(lflags) -subsystem:windows

TDBCSTUBLIB = "$(_TCLDIR)\lib\tdbcstub$(VERSION).lib"
!if !exist($(TDBCSTUBLIB))
TDBCSTUBLIB = "$(TDBCDIR)\win\$(BUILDDIRTOP)\tdbcstub$(VERSION).lib"
!endif
!if !$(STATIC_BUILD)
baselibs  = $(TCLSTUBLIB) $(TDBCSTUBLIB)
!if defined(TKSTUBLIB)
baselibs  = $(baselibs) $(TKSTUBLIB)
!endif
!endif

................................................................................
install:    install-binaries install-libraries install-docs
pkgIndex:   setup $(OUT_DIR)\pkgIndex.tcl

!if !$(STATIC_BUILD)
$(PROJECT):  $(PRJSTUBLIB)
!endif



test: setup $(PROJECT)













































        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
        @set TCLLIBPATH=$(OUT_DIR_PATH:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
	@$(CPY) $(LIBDIR)\*.tcl $(OUT_DIR)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)

!else
        @set PATH=$(_TCLDIR)\win\$(BUILDDIRTOP);$(PATH)





!endif
	$(DEBUGGER) $(TCLSH) "$(ROOT)/tests/all.tcl" $(TESTFLAGS)

shell: setup $(PROJECT)
        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)
!else






>
>
>







 







<









>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|







 







<
<
<
<
<







 







>
>

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>






>


>
>
>
>
>

<







173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
...
215
216
217
218
219
220
221

222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
...
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
...
335
336
337
338
339
340
341





342
343
344
345
346
347
348
...
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440

441
442
443
444
445
446
447
!if [echo REM = This file is generated from Makefile.vc > versions.vc]
!endif
# get project version from row AC_INIT([tdbcodbc], [1.0b17])
!if [echo DOTVERSION = \>> versions.vc] \
   && [nmakehlp -V ..\configure.in AC_INIT >> versions.vc]
!endif
!if [echo TCL_VERSION_REQ = \>> versions.vc] \
   && [nmakehlp -V ..\configure.in TCL_VERSION_REQ >> versions.vc]
!endif
!include "versions.vc"

VERSION         = $(DOTVERSION:.=)
STUBPREFIX      = $(PROJECT)stub

DLLOBJS = \
	$(TMP_DIR)\tdbcodbc.obj \
................................................................................
### Make sure we use backslash only.
PRJ_INSTALL_DIR         = $(_INSTALLDIR)\$(PROJECT)$(DOTVERSION)
LIB_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
BIN_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
DOC_INSTALL_DIR		= $(PRJ_INSTALL_DIR)
SCRIPT_INSTALL_DIR	= $(PRJ_INSTALL_DIR)
INCLUDE_INSTALL_DIR	= $(_TCLDIR)\include


### The following paths CANNOT have spaces in them.
GENERICDIR	= $(ROOT)\generic
WINDIR		= $(ROOT)\win
LIBDIR          = $(ROOT)\library
DOCDIR		= $(ROOT)\doc
TOOLSDIR	= $(ROOT)\tools
COMPATDIR	= $(ROOT)\compat

### tdbc
TDBC_DOTVERSION		= $(DOTVERSION)
TDBC_VERSION		= $(TDBC_DOTVERSION:.=)
# tdbc source folder is "../tdbc" in source distribution and
# "../tdbc1.0.0" in tcl8.6.0 bundeled distribution
TDBC_DIR		= $(ROOT)\..\tdbc
!if !exist($(TDBC_DIR))
TDBC_DIR		= $(ROOT)\..\tdbc$(TDBC_DOTVERSION)
!endif
TDBC_GENERIC_DIR	= $(TDBC_DIR)\generic
### tdbc stub lib
TDBCSTUBLIBNAME		= tdbcstub$(TDBC_VERSION).lib
TDBCSTUBLIB 		= "$(_TCLDIR)\lib\$(TDBCSTUBLIBNAME)"
!if !exist($(TDBCSTUBLIB))
TDBCSTUBLIB 		= $(TDBC_DIR)\win\$(BUILDDIRTOP)\$(TDBCSTUBLIBNAME)
!endif
TDBC_LIB_FILE		= tdbc$(TDBC_VERSION).dll
TDBC_BIN_DIR = $(TDBC_DIR)/win/$(BUILDDIRTOP)

#---------------------------------------------------------------------
# Compile flags
#---------------------------------------------------------------------

!if !$(DEBUG)
!if $(OPTIMIZING)
### This cranks the optimization level to maximize speed
................................................................................
!if !$(STATIC_BUILD)
cflags = $(cflags) -DUSE_TCL_STUBS
!if defined(TKSTUBLIB)
cflags = $(cflags) -DUSE_TK_STUBS
!endif
!endif

INCLUDES	= $(TCL_INCLUDES) -I"$(WINDIR)" -I"$(GENERICDIR)" -I"$(TDBC_GENERIC_DIR)"
BASE_CFLAGS	= $(cflags) $(cdebug) $(crt) $(INCLUDES)
CON_CFLAGS	= $(cflags) $(cdebug) $(crt) -DCONSOLE
TCL_CFLAGS	= -DPACKAGE_NAME="\"$(PROJECT)\"" \
		  -DPACKAGE_VERSION="\"$(DOTVERSION)\"" \
		  -DBUILD_$(PROJECT) \
		  $(BASE_CFLAGS) $(OPTDEFINES) \
                  -Dinline=__inline
................................................................................
!if $(LOIMPACT)
lflags	= $(lflags) -ws:aggressive
!endif

dlllflags = $(lflags) -dll
conlflags = $(lflags) -subsystem:console
guilflags = $(lflags) -subsystem:windows





!if !$(STATIC_BUILD)
baselibs  = $(TCLSTUBLIB) $(TDBCSTUBLIB)
!if defined(TKSTUBLIB)
baselibs  = $(baselibs) $(TKSTUBLIB)
!endif
!endif

................................................................................
install:    install-binaries install-libraries install-docs
pkgIndex:   setup $(OUT_DIR)\pkgIndex.tcl

!if !$(STATIC_BUILD)
$(PROJECT):  $(PRJSTUBLIB)
!endif

test: test-jet test-sqlserver test-sqlite

test: setup $(PROJECT)

test-jet: setup $(PROJECT)
	@echo testing tdbcodbc against Jet
	@set TDBCODBC_TYPE=jet
# the following is identical for all 3 tests
        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
        @set TCLLIBPATH=$(OUT_DIR_PATH:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
	@$(CPY) $(LIBDIR)\*.tcl $(OUT_DIR)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS)
!else
        @set PATH=$(_TCLDIR)\win\$(BUILDDIRTOP);$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS) \
		-load "package ifneeded tdbc::odbc $(DOTVERSION) \
			{source {$(LIBDIR:\=/)/tdbcodbc.tcl};load {$(PRJLIB:\=/)} $(PROJECT)};\
		package ifneeded tdbc $(TDBC_DOTVERSION) \
			{source {$(TDBC_BIN_DIR:\=/)/tdbc.tcl};load {$(TDBC_BIN_DIR:\=/)/$(TDBC_LIB_FILE)} tdbc}"
!endif

test-sqlserver: setup $(PROJECT)
	@echo testing tdbcodbc against SQL Server
	@set TDBCODBC_TYPE=sqlserver
# the following is identical for all 3 tests
        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
        @set TCLLIBPATH=$(OUT_DIR_PATH:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
	@$(CPY) $(LIBDIR)\*.tcl $(OUT_DIR)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS)
!else
        @set PATH=$(_TCLDIR)\win\$(BUILDDIRTOP);$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS) \
		-load "package ifneeded tdbc::odbc $(DOTVERSION) \
			{source {$(LIBDIR:\=/)/tdbcodbc.tcl};load {$(PRJLIB:\=/)} $(PROJECT)};\
		package ifneeded tdbc $(TDBC_DOTVERSION) \
			{source {$(TDBC_BIN_DIR:\=/)/tdbc.tcl};load {$(TDBC_BIN_DIR:\=/)/$(TDBC_LIB_FILE)} tdbc}"
!endif

test-sqlite: setup $(PROJECT)
	@echo testing tdbcodbc against SQLite
	@set TDBCODBC_TYPE=sqlite
# the following is identical for all 3 tests
        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
        @set TCLLIBPATH=$(OUT_DIR_PATH:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
	@$(CPY) $(LIBDIR)\*.tcl $(OUT_DIR)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS)
!else
        @set PATH=$(_TCLDIR)\win\$(BUILDDIRTOP);$(PATH)
	$(DEBUGGER) $(TCLSH) "$(ROOT:\=/)/tests/all.tcl" $(TESTFLAGS) \
		-load "package ifneeded tdbc::odbc $(DOTVERSION) \
			{source {$(LIBDIR:\=/)/tdbcodbc.tcl};load {$(PRJLIB:\=/)} $(PROJECT)};\
		package ifneeded tdbc $(TDBC_DOTVERSION) \
			{source {$(TDBC_BIN_DIR:\=/)/tdbc.tcl};load {$(TDBC_BIN_DIR:\=/)/$(TDBC_LIB_FILE)} tdbc}"
!endif


shell: setup $(PROJECT)
        @set TCL_LIBRARY=$(TCL_LIBRARY:\=/)
	@set TDBC_LIBRARY=$(LIBDIR:\=/)
!if $(TCLINSTALL)
        @set PATH=$(_TCLDIR)\bin;$(PATH)
!else