tk fails to upgrade from version 8.5.12 to 8.5.13 and returns the following errors building object tkMacOSXWm.o:
.../tk8.5.13/unix/../macosx/tkMacOSXWm.c:6332: error: ‘NSApplicationPresentationAutoHideDock’ undeclared (first use in this function)
.../tk8.5.13/unix/../macosx/tkMacOSXWm.c:6332: error: (Each undeclared identifier is reported only once
.../tk8.5.13/unix/../macosx/tkMacOSXWm.c:6332: error: for each function it appears in.)
.../tk8.5.13/unix/../macosx/tkMacOSXWm.c:6332: error: ‘NSApplicationPresentationAutoHideMenuBar’ undeclared (first use in this function)
Version Information:
Mac OS Version:
ProductName: Mac OS X
ProductVersion: 10.5.8
BuildVersion: 9L31a
Darwin 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
Xcode Version:
Xcode 3.1.4
Component versions: DevToolsCore-1204.0; DevToolsSupport-1186.0
BuildVersion: 9M2809
See MacPorts ticket #37016 https://trac.macports.org/ticket/37016 for additional information.
build log
Please note that Tk 8.5.13 macosx/* sources are for Cocoa now,
not Carbon.
I realize the use of this API prevents Tk 8.5.13 from building on 10.5; the fix was necessary to address a serious bug in setting the fullscreen attribute on toplevel windows. As such, I would have to advise that Tk > 8.5.12 is no longer supported on 10.5.
Thank you for the explanation. It seems that tk 8.5.13 is still working on Leopard by omitting the quartz parts. This is now the default MacPorts variant for OSX <= 10.5.
I still build Aqua Tk on Leopard (though not intensively) so I've restored the ability to build; it lets me run the widget demo, so that appears to be good. If I've understood the code correctly, this breaks fullscreen handling on Leopard, but that's how it goes. Given the size of outright breakage (one feature that not *too* many apps use) I can live with that trade-off.