change is that it is now also allowed to specify an external name for
formal external class definitions, but if they are later mixed with
regular class definitions the external names have to match.
o because the "external" status of methods is now set while parsing the
class rather than afterwards, some procdir compatibility checks had to
be inlined because they only have to be performed for
* also adapted the syntax for external cppclasses in the same way
* fixed return type of NSObject.retainCount and NSObject.hash
(NSUInteger instead of cint)
* moved "patches" directory from cocoaint/src to cocoaint/utils/cocoa-skel
so they are used by the conversion script when re-parsing the headers
* updated Objective-C header parser script to
o use the new external class syntax
o not write inheritance information for root classes (NSObject, NSProxy)
o use internal translation tables for some conflicting method names that
are named specially in objcbase.pp
and updated parsed headers
* fixed rtl/inc/objcbase.pp and tests to conform to the new external class
syntax
git-svn-id: trunk@16684 -
committed cocoa unit conversions, and which can also be used to translate
the iOS SDK 3.2 headers
+ scripts (make-cocoa-headers.sh, make-ios-headers.sh) to (re)build the
Cocoa/iOS headers, along with skeleton directories that contain the
necessary helper files and a few required patches
+ frameworks.xml used by the conversion script
* updated build instructions
git-svn-id: trunk@16522 -
* generated with version 2.1.2 of the conversion script, with many
improvements (script and instructions to regenerate headers will
be committed separately)
o QuartzCore framework translation
o categories are no longer merged into classes, but separate
o corrected several C->Pascal type definitions
o handle pointer types for parameters, return types and property types
o handle struct/class fields that are arrays or pointers
o handle pointers to id
o handle external functions that return "void *" (they were parsed as
procedures)
o handle anonymous classes (@class NSAnonType, such as CIImage) using
the "NSAnonType = objcclass; external;" syntax
o corrected handling of opaque structs
o fixed parsing of function pointer types
o instance-bitfields that do not appear in a struct are now recognised
o bitpacked structs are now translated into bitpacked records (but only
if they only contain bitpacked fields)
o C macros indicating deprecation are now translated into "deprecated"
modifiers for methods/variables/functions/properties
o no longer ignore deprecated categories, because some categories are
deprecated in Mac OS X 10.5/10.6, and we want to support writing code
for older systems too
o several fixes to property and enum parsing
git-svn-id: trunk@16521 -
every glut call, since the gl unit (on which the glut unit depends)
already globally disables all fpu exceptions now (mantis #18107)
git-svn-id: trunk@16483 -
* Added BuildEngine.CmdRenameFile
* Added TPackage.IsFPMakeAddIn, when this flag is set, the package can be
needed when compiling fpmake.pp files.
* Added ability to override TCustomInstaller.Packages
* GetInstallFiles and GetInstallSourceFiles are virtual now
git-svn-id: trunk@16461 -