Tk Source Code

Check-in [214c6c0a]
Login

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

Overview
Comment:Compile win32 binaries with -DTCL_NO_DEPRECATED, and fix gcc compiler warning
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 214c6c0a9de417c4cb7e72e341279c252ce6a307
User & Date: jan.nijtmans 2012-09-19 08:24:26
Context
2012-09-26
13:15
merge-mark check-in: 00185f8c user: jan.nijtmans tags: trunk
2012-09-19
08:24
Compile win32 binaries with -DTCL_NO_DEPRECATED, and fix gcc compiler warning check-in: 214c6c0a user: jan.nijtmans tags: trunk
2012-09-18
20:45
merge release branch check-in: 6ce9597b user: dgp tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to ChangeLog.






1
2
3
4
5
6
7





2012-09-17  Don Porter  <[email protected]>

	*** 8.6b2 TAGGED FOR RELEASE ***
	
	* macosx/tkMacOSXWm.c: [Bug 3567786] Stop segfault in [wm forget].

2012-09-15  Don Porter  <[email protected]>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
2012-09-19  Jan Nijtmans  <[email protected]>

	* win/Makefile.in:    Compile win32 binaries with -DTCL_NO_DEPRECATED
	* win/tkiWinWm.c:     Fix gcc compiler warning.

2012-09-17  Don Porter  <[email protected]>

	*** 8.6b2 TAGGED FOR RELEASE ***
	
	* macosx/tkMacOSXWm.c: [Bug 3567786] Stop segfault in [wm forget].

2012-09-15  Don Porter  <[email protected]>

Changes to win/Makefile.in.

199
200
201
202
203
204
205






206
207
208
209
210
211
212
213
214
215
216

217
218
219
220
221
222
223
MKDIR		= mkdir -p
SHELL		= @SHELL@
RM		= rm -f
COPY		= cp

BUILD_TCLSH	= @BUILD_TCLSH@







# TCL_EXE is the name of a tclsh executable that is available *BEFORE*
# running make for the first time. Certain build targets (make genstubs)
# need it to be available on the PATH. This executable should *NOT* be
# required just to do a normal build although it can be required to run
# make dist.
TCL_EXE			= @TCLSH_PROG@

CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \
-I"${GENERIC_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" \
-I"${XLIB_DIR_NATIVE}" -I"${BITMAP_DIR_NATIVE}" \
-I"${TCL_GENERIC_NATIVE}" -I"${TCL_PLATFORM_NATIVE}" ${AC_FLAGS} -DUSE_TCL_STUBS


CC_OBJNAME = @CC_OBJNAME@
CC_EXENAME = @CC_EXENAME@

# Tk used to let the configure script choose which program to use
# for installing, but there are just too many different versions of
# "install" around;  better to use the install-sh script that comes







>
>
>
>
>
>










|
>







199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
MKDIR		= mkdir -p
SHELL		= @SHELL@
RM		= rm -f
COPY		= cp

BUILD_TCLSH	= @BUILD_TCLSH@

# Tk does not used deprecated Tcl constructs so it should
# compile fine with -DTCL_NO_DEPRECATED. To remove its own
# set of deprecated code uncomment the second line.
NO_DEPRECATED_FLAGS	= -DTCL_NO_DEPRECATED
#NO_DEPRECATED_FLAGS	= -DTCL_NO_DEPRECATED -DTK_NO_DEPRECATED

# TCL_EXE is the name of a tclsh executable that is available *BEFORE*
# running make for the first time. Certain build targets (make genstubs)
# need it to be available on the PATH. This executable should *NOT* be
# required just to do a normal build although it can be required to run
# make dist.
TCL_EXE			= @TCLSH_PROG@

CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \
-I"${GENERIC_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" \
-I"${XLIB_DIR_NATIVE}" -I"${BITMAP_DIR_NATIVE}" \
-I"${TCL_GENERIC_NATIVE}" -I"${TCL_PLATFORM_NATIVE}" \
${AC_FLAGS} $(NO_DEPRECATED_FLAGS) -DUSE_TCL_STUBS

CC_OBJNAME = @CC_OBJNAME@
CC_EXENAME = @CC_EXENAME@

# Tk used to let the configure script choose which program to use
# for installing, but there are just too many different versions of
# "install" around;  better to use the install-sh script that comes
383
384
385
386
387
388
389
390

391
392
393
394
395
396
397
398
399
400
	ttkTrace.$(OBJEXT) \
	ttkTrack.$(OBJEXT) \
	ttkTreeview.$(OBJEXT) \
	ttkWidget.$(OBJEXT) \
	ttkStubInit.$(OBJEXT)

STUB_OBJS = \
	tkStubLib.$(OBJEXT) ttkStubLib.$(OBJEXT)


TCL_DOCS = "$(TCL_SRC_DIR_NATIVE)"/doc/*.[13n]
TK_DOCS = "$(ROOT_DIR_NATIVE)"/doc/*.[13n]
CORE_DOCS = $(TCL_DOCS) $(TK_DOCS)

DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget

SHELL_ENV = \
	@TCL_LIBRARY="$(TCL_SRC_DIR_NATIVE)/library"; export TCL_LIBRARY; \
	TK_LIBRARY="$(ROOT_DIR_NATIVE)/library"; export TK_LIBRARY; \







|
>

|
|







390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
	ttkTrace.$(OBJEXT) \
	ttkTrack.$(OBJEXT) \
	ttkTreeview.$(OBJEXT) \
	ttkWidget.$(OBJEXT) \
	ttkStubInit.$(OBJEXT)

STUB_OBJS = \
	tkStubLib.$(OBJEXT) \
	ttkStubLib.$(OBJEXT)

TCL_DOCS = "$(TCL_SRC_DIR_NATIVE)/doc/*.[13n]"
TK_DOCS = "$(ROOT_DIR_NATIVE)/doc/*.[13n]"
CORE_DOCS = $(TCL_DOCS) $(TK_DOCS)

DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget

SHELL_ENV = \
	@TCL_LIBRARY="$(TCL_SRC_DIR_NATIVE)/library"; export TCL_LIBRARY; \
	TK_LIBRARY="$(ROOT_DIR_NATIVE)/library"; export TK_LIBRARY; \
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
$(ROOT_DIR)/doc/man.macros:
	$(INSTALL_DATA) "$(TCL_SRC_DIR)/doc/man.macros" "$(ROOT_DIR)/doc/man.macros"

doc: $(ROOT_DIR)/doc/man.macros

winhelp: $(TCL_SRC_DIR)/tools/man2help.tcl $(MAN2TCL)
	$(TCL_EXE) "$(TCL_SRC_DIR_NATIVE)/tools/man2help.tcl" tcl "$(VER)" $(CORE_DOCS)
	$(COPY) "$(TCL_BIN_DIR)"/tcl.hpj ./
	hcw /c /e tcl.hpj
	$(COPY) ./tcl$(VER).cnt ./TCL$(VER).HLP "$(TCL_SRC_DIR_NATIVE)"/tools/

$(MAN2TCL): $(TCL_SRC_DIR)/tools/man2tcl.c
	$(CC) $(CFLAGS_OPTIMIZE) $(MAN2TCLFLAGS) -o $(MAN2TCL) "$(TCL_SRC_DIR_NATIVE)"/tools/man2tcl.c

# Specifying TESTFLAGS on the command line is the standard way to pass
# args to tcltest, ie:
#	% make test TESTFLAGS="-verbose bps -file fileName.test"

test: test-classic test-ttk








|

|


|







420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
$(ROOT_DIR)/doc/man.macros:
	$(INSTALL_DATA) "$(TCL_SRC_DIR)/doc/man.macros" "$(ROOT_DIR)/doc/man.macros"

doc: $(ROOT_DIR)/doc/man.macros

winhelp: $(TCL_SRC_DIR)/tools/man2help.tcl $(MAN2TCL)
	$(TCL_EXE) "$(TCL_SRC_DIR_NATIVE)/tools/man2help.tcl" tcl "$(VER)" $(CORE_DOCS)
	$(COPY) "$(TCL_BIN_DIR)/tcl.hpj" ./
	hcw /c /e tcl.hpj
	$(COPY) ./tcl$(VER).cnt ./TCL$(VER).HLP "$(TCL_SRC_DIR_NATIVE)/tools/"

$(MAN2TCL): $(TCL_SRC_DIR)/tools/man2tcl.c
	$(CC) $(CFLAGS_OPTIMIZE) $(MAN2TCLFLAGS) -o $(MAN2TCL) "$(TCL_SRC_DIR_NATIVE)/tools/man2tcl.c"

# Specifying TESTFLAGS on the command line is the standard way to pass
# args to tcltest, ie:
#	% make test TESTFLAGS="-verbose bps -file fileName.test"

test: test-classic test-ttk

Changes to win/tkWinWm.c.

1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
	 * Read it in.
	 */

	dwBytesRead = Tcl_Read(channel, (char *)lpIR->IconImages[i].lpBits,
		(int) lpIDE[i].dwBytesInRes);
	if (dwBytesRead != lpIDE[i].dwBytesInRes) {
	    Tcl_SetObjResult(interp, Tcl_ObjPrintf(
		    "error reading file: ", Tcl_PosixError(interp)));
	    goto readError;
	}

	/*
	 * Set the internal pointers appropriately.
	 */








|







1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
	 * Read it in.
	 */

	dwBytesRead = Tcl_Read(channel, (char *)lpIR->IconImages[i].lpBits,
		(int) lpIDE[i].dwBytesInRes);
	if (dwBytesRead != lpIDE[i].dwBytesInRes) {
	    Tcl_SetObjResult(interp, Tcl_ObjPrintf(
		    "error reading file: %s", Tcl_PosixError(interp)));
	    goto readError;
	}

	/*
	 * Set the internal pointers appropriately.
	 */