fpc/packages/cocoaint/utils/make-cocoa-headers.sh
Jonas Maebe d6e7023038 * automatically comment out methods that take blocks as parameters or return
them
  * handle inline protocol definitions in parameter lists (replace id<protocol>
    with protocol, and class<protocol[,protocol,..]> with class), and made
    some fixes to this support for fields (many "id" fields/parameters are
    now protocols)
  * fix from Phil Hess for parsing some read-only properties
  * also translate ..._BUT_DEPRECATED macros (without any "_IN_VERSION..."
    coming after it) into "deprecated" modifiers
  * several fixes for handling deprecation macros (in several cases, half the
    macro was mangled into the name of the symbol itself)
  * default now to parsing the iOS 4.2 SDK headers, and fixed passing an
    alternate SDK on the command line to make-ios-headers.sh
  * updated Cocoa headers as parsed by the new parser, and with the headers
    from Mac OS X 10.6.5/Safari 5.0.2 (contains some WebKit updates)

git-svn-id: trunk@16908 -
2011-02-11 21:26:24 +00:00

31 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# halt on error
set -e
# convert basic cocoa headers
php parser.php -cocoa -root=`pwd`/cocoa-skel/src
# convert webkit headers
php parser.php -all -frameworks=foundation,webkit -root=`pwd`/cocoa-skel/src
# convert coredata headers
php parser.php -all -frameworks=foundation,coredata -root=`pwd`/cocoa-skel/src
# correct some translations the automatic translation cannot handle
patch -p0 < patches/cocoa-coredata-webkit.patch
# empty two headers that exist both in foundation and in appkit, and that
# thereby cause "duplicate identifier" errors
echo > `pwd`/cocoa-skel/src/foundation/NSAttributedString.inc
echo > `pwd`/cocoa-skel/src/foundation/NSAffineTransform.inc
echo
echo The headers have been converted and placed under
echo `pwd`/cocoa-skel/src.
echo If you wish to compile them, execute the following commands:
echo cp ../Makefile cocoa-skel
echo cd cocoa-skel
echo make OPT=\"-O2 -ap\"
echo
echo The compiled files can be installed afterwards using \"make install\"
echo if required. If another compiler binary than the default one has to
echo be used, specify the alternative compiler binary location in the
echo last command by adding FPC=/full/path/to/ppcbinary
echo