1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 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 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 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 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 380 381 382 383 384 385 386 387
|
{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360
{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset0 LucidaGrande;}
{\colortbl;\red255\green255\blue255;}
{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid1\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1}
{\list\listtemplateid2\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{lower-alpha\}.}{\leveltext\leveltemplateid101\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid2}
{\list\listtemplateid3\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{lower-alpha\}.}{\leveltext\leveltemplateid201\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid3}
{\list\listtemplateid4\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{decimal\}.}{\leveltext\leveltemplateid301\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid4}
{\list\listtemplateid5\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{lower-alpha\}.}{\leveltext\leveltemplateid401\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\lin720 }{\listname ;}\listid5}
{\list\listtemplateid6\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid501\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid6}
{\list\listtemplateid7\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid601\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid7}
{\list\listtemplateid8\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid701\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid8}
{\list\listtemplateid9\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid801\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid9}
{\list\listtemplateid10\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid901\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid10}
{\list\listtemplateid11\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1001\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid11}
{\list\listtemplateid12\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1101\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid12}
{\list\listtemplateid13\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1201\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid13}
{\list\listtemplateid14\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1301\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid14}}
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}{\listoverride\listid7\listoverridecount0\ls7}{\listoverride\listid8\listoverridecount0\ls8}{\listoverride\listid9\listoverridecount0\ls9}{\listoverride\listid10\listoverridecount0\ls10}{\listoverride\listid11\listoverridecount0\ls11}{\listoverride\listid12\listoverridecount0\ls12}{\listoverride\listid13\listoverridecount0\ls13}{\listoverride\listid14\listoverridecount0\ls14}}
\paperw11900\paperh16840\margl1440\margr1440\vieww22440\viewh13060\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\f0\b\fs36 \cf0 \ul \ulc0 Free Pascal for iOS 2.6.0
\b0 \ulnone \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\fs24 \cf0 \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 Table of Contents
\b0 \
\
\b 1. Introduction\
2. How to use\
3. Customising the Xcode project\ul \
\ulnone 4. Known problems\
5. More information\
6. Version history
\b0 \
\
\b \ul 1. Introduction\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b0 \cf0 \ulnone \
This package will install the Free Pascal Compiler 2.6.0 for running on Intel-based Macs to create iPhone/iPod Touch/iPad applications. After the installation package has finished installing, a script will be started using Terminal.app. This script has to finish successfully before you can compile applications for the iPhone/iPod Touch/iPad or the Simulator.\
\
The installer package itself only installs the FPC source code, after which it will launch the script. If the script cannot automatically determine where you installed the iOS SDK, it will ask you where the iOS SDK is installed on your system. Next, it will generate a Pascal version of some of the SDK's headers, and then compile and install the FPC version required to build iPhone/iPod Touch/iPad applications. Support is included for the arm6, arm7 and Simulator targets.\
\
One Xcode 3.2.4 \'97 3.2.6 template is currently included:\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls1\ilvl0\cf0 {\listtext \'95 }
\b OpenGL ES App (FPC 2.6.0)
\b0 : sets up an OpenGL ES project, based on Apple's sample. It includes Pascal and Objective-C code. It can be compiled universally for ARMv6 and ARMv7, and also for the Simulator.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
This template will
\b only work with Xcode 3.2.4 \'97 3.2.6
\b0 . It does
\b not work with Xcode 4
\b0 . You can find a number of Xcode 4 templates for FPC/iOS and related tutorials at {\field{\*\fldinst{HYPERLINK "http://web.me.com/macpgmr/ObjP/Xcode4/"}}{\fldrslt http://web.me.com/macpgmr/ObjP/Xcode4/}}, but notice that at the time of this writing they have not yet been modified to work with the FPC 2.6.0 release.\
\
Note that
\b you need an Apple-issued certificate to run self-written applications on an iPhone/iPod Touch/iPad
\b0 , regardless of whether these applications are written using FPC or not. The only way to get such a certificate is to sign up to Apple's iPhone Developer Program ($99/year for the standard program, and $299/year for the enterprise program).\
\
A wiki page with more information about FPC for iPhone/iPod Touch development can be found at {\field{\*\fldinst{HYPERLINK "http://wiki.freepascal.org/iPhone/iPod_development"}}{\fldrslt http://wiki.freepascal.org/iPhone/iPod_development}}\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ul 2. How to use
\b0 \ulnone \
\
See the tutorials and templates by Phil Hess at http://web.me.com/macpgmr/ObjP/Xcode4/ for a number of templates that integrate with Xcode 4.x. Note that these templates may still default to FPC 2.5.1, in which case you should modify the
\b FPC_COMPILER_PATH
\b0 project setting in Xcode (replace
\i 2.5.1
\i0 with
\i 2.6.0
\i0 ).\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls2\ilvl0\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ul 3. Customising the Xcode project\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b0 \cf0 \ulnone \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 Main program file
\b0 \
\
These templates are special in that they do not contain a main Pascal program file. Instead, we reuse Apple's Objective-C program startup files, and link in the Pascal code as a library. Unit initialisation code will still be run automatically as part of the program's startup, as with a regular Pascal program.\
\
Should you wish to change the name of the main program file, you can change it as follows (the same as in the previous templates):\
\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls3\ilvl0
\b \cf0 {\listtext a. }
\b0 Double click on the project icon at the top of the file browser\
\ls3\ilvl0
\b {\listtext b. }
\b0 Go to the
\i Build
\i0 tab\
\ls3\ilvl0
\b {\listtext c.
\b0 }
\b Select the
\i All Configurations
\i0 from the top pop-up menu\
{\listtext d.
\b0 }
\b Select the
\i Customized Settings
\i0 collection from the second pop-up menu\
{\listtext e.
\b0 }
\b Change the FPC_MAIN_FILE setting
\b0 to the name of your main program file, including the extension.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \
Calling Pascal procedures/functions from Objective-C\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b0 \cf0 Since the main program files are in Objective-C, you have to call your Pascal code from there. This involves five steps (the same goes for calling the routines from C or C++):\
\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls4\ilvl0
\b \cf0 {\listtext 1. }
\b0 Make sure that the unit containing your Pascal code is listed in the
\i uses
\i0 clause of the
\i PascalLibrary.pas
\i0 source file\
\ls4\ilvl0
\b {\listtext 2. }
\b0 Add the procedure modifier
\i cdecl;
\i0 at the end of the functions/procedures that you wish to call from the Objective-C code, and add the procedure to the
\i exports
\i0 statement of
\i PascalLibrary.pas
\i0 \
\ls4\ilvl0
\b {\listtext 3. }
\b0 Add a C prototype for your Pascal function to the
\i PascalImports.h
\i0 file\
\ls4\ilvl0
\b {\listtext 4. }
\b0 Add
\i #include "PascalImports.h"
\i0 at the top of the Objective-C file from which you wish to call your Pascal routine\
\ls4\ilvl0
\b {\listtext 5. }
\b0 Call your Pascal routine at the appropriate place\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b0 \cf0 You can see how this is done for the Pascal code used in the example templates.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \
\
iPhone SDK-specific units
\b0 \
\b \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b0 \cf0 At this time, the only included iPhone SDK-specific unit is
\i gles11
\i0 . It contains a Pascal translation of the OpenGL ES 1.1 headers included in the iPhone SDK. This is only possible because that header falls under an open source license from SGI, so that the iPhone SDK agreement's prohibition to distribute any derivative works does not apply to it.\
\
Please file bug reports with Apple to relax this restriction for other headers so that interfaces for other programming languages can be made and distributed, referencing Radar #6471761. The more votes that this bug report gets, the higher the chance that something will be done about this any time soon.
\b \
\
\
Command line options
\b0 \
\
The template passes some default command line switches to the compiler. You can customise these if you want:
\b \
\b0 \
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls5\ilvl0
\b \cf0 {\listtext a. }
\b0 Double click on the project icon at the top of the file browser\
\ls5\ilvl0
\b {\listtext b. }
\b0 Go to the
\i Build
\i0 tab\
\ls5\ilvl0
\b {\listtext c.
\b0 }
\b Select the configuration you want to edit (
\i Debug
\i0 ,
\i Release
\i0 or
\i All Configurations
\i0 ) from the top pop-up menu\
{\listtext d.
\b0 }
\b Select the
\i Customized Settings
\i0 collection from the second pop-up menu\
{\listtext e.
\b0 }
\b Changes to FPC_COMMON_OPTIONS
\b0 are common for
\i Debug
\i0 and
\i Release
\i0 builds, and those to
\b FPC_SPECIFIC_OPTIONS
\b0 are configuration-specific (so don't edit this one when
\i All Configurations
\i0 is selected, or you will overwrite the options for both configurations with a single set -- this may e.g. remove debug information of the
\i Debug
\i0 build). You can also change
\b FPC_ARM_OPTIONS
\b0 and
\b FPC_I386_OPTIONS
\b0 to pass parameters to respectively only the ARM/device and i386/Simulator FPC compiler binary.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
For an overview of all possible command line switches and what they do, have a look at the
\i User's Manual
\i0 (installed in
\i /Developer/Documentation/Free Pascal Compiler
\i0 ), Chapter 5.\
\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ul 4. Known problems
\b0 \ulnone \
\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls6\ilvl0\cf0 {\listtext \'95 }
\b Viewing global variables in the Xcode debugger:
\b0 the globals browser often does not work. You can view global variables instead by choosing
\i\b Debug
\f1\i0 \uc0\u8594
\f0\i Tools
\f1\i0 \uc0\u8594
\f0\i Expression...
\b0
\i0 and then typing the name of the global variable\
{\listtext \'95 }
\b Problems with
\i View Value As\'85
\i0 and
\i View Memory\'85
\i0 :
\b0 Xcode assumes that the underlying debugger (gdb) is in C mode at all times. When using the aforementioned commands, it therefore sends C-expressions to the debugger, which it doesn't understand when inside Pascal code (because then it expects Pascal expressions). A tedious workaround in case you need this functionality at some point is to choose
\i\b Debug
\f1\i0 \uc0\u8594
\f0\i Console Log
\i0\b0 , and then type
\i set lang c
\i0 on the gdb prompt, followed by return/enter. To switch the debugger back type
\i set lang auto
\i0 .\
{\listtext \'95 }
\b Problems with viewing strings and non-zero based arrays in the debugger:
\b0 Xcode does not appear to ask the debugger to display strings and arrays, but has its own display routines for these data structures. It does not have any knowledge of Pascal strings, nor of non-zero based arrays (these do not exist in C), and will therefore display all arrays as if they were zero-based, and Pascal strings as a record (in which the nested array is displayed incorrectly because of the array problem). You can again work around this by going to the gdb console as in the previous item and typing
\i p string_variable
\i0 resp.
\i p array_variable
\i0 .\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ul 5. More information
\b0 \ulnone \
\
A wiki page with more information about FPC for iPhone/iPod Touch development can be found at {\field{\*\fldinst{HYPERLINK "http://wiki.freepascal.org/iPhone/iPod_development"}}{\fldrslt http://wiki.freepascal.org/iPhone/iPod_development}}\
\
For help with installing certificates and code signing issues, please check first whether you are using Xcode 3.1.2 or later, and whether everything works with the standard Apple template. If not, please see the information provided by Apple in your iPhone Developer workspace, or ask a question at {\field{\*\fldinst{HYPERLINK "https://devforums.apple.com/"}}{\fldrslt https://devforums.apple.com/}}. Otherwise, you can use one of the contacts mentioned below.\
\
For help with Mac/iOS Pascal programming (and generic Pascal programming):\
{\field{\*\fldinst{HYPERLINK "http://www.pascal-central.com/maillist.html"}}{\fldrslt http://www.pascal-central.com/maillist.html}}\
\
For FPC-specific questions (and help with generic Pascal programming):\
{\field{\*\fldinst{HYPERLINK "http://lists.freepascal.org/mailman/listinfo/fpc-pascal"}}{\fldrslt http://lists.freepascal.org/mailman/listinfo/fpc-pascal}}\
\
Questions or remarks regarding the templates themselves can be sent to either list.\
\
\
\b \ul 6. Version history
\b0 \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.6.0
\b0 (31st December 2011):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls7\ilvl0\cf0 {\listtext \uc0\u8259 }No changes\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \ul \ulc0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.6.0rc1
\b0 (16th October 2011):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls8\ilvl0\cf0 {\listtext \uc0\u8259 }Generic support for any iOS SDK version in the installation script\
{\listtext \uc0\u8259 }Include both ARMv6/VFPv2 and ARMv7/VFPv3 versions of the object files\
{\listtext \uc0\u8259 }Support for Simulator SDK in Xcode 3.2.4 and later via the "iphonesim" target\
{\listtext \uc0\u8259 }Xcode template adjusted so it can build ARMv6/ARMv7 universal binaries, uses the iphonesim target when compiling for i386, and extra options to specify architecture-specific parameters to the compiler\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.4.2
\b0 (9th November 2010):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls9\ilvl0\cf0 {\listtext \uc0\u8259 }Also add hypothetical iOS 4.3 support\
{\listtext \uc0\u8259 }Install the project template again in the right directory (
\i /Developer/Library/Xcode/Shared/Project Templates
\i0 instead of
\i /Library/Application Support/...
\i0 )
\b \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
\'95 2.4.2rc1
\b0 (2nd October 2010):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls10\ilvl0\cf0 {\listtext \uc0\u8259 }The MacOSAll unit is now available for iPhoneOS/iOS targets\
{\listtext \uc0\u8259 }Installation script supports up to iOS SDK 4.2\
{\listtext \uc0\u8259 }Mention that the iPhoneSimulator shipped with the 3.2 SDK and later is not yet supported with this release\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \
\'95 2.4.0rc1
\b0 (20th December 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls11\ilvl0\cf0 {\listtext \uc0\u8259 }Some small language cleanups in this readme\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.4.0rc1
\b0 (1st November 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls12\ilvl0\cf0 {\listtext \uc0\u8259 }Tested up to and including Xcode 3.2\
{\listtext \uc0\u8259 }Mention that future FPC versions will include MacOSAll for the iPhone/iPod Touch\
{\listtext \uc0\u8259 }Only compile/install the ARM version of the compiler (since we now require FPC 2.6.0rc1 to be installed already)\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.3.1v2
\b0 (17th January 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls13\ilvl0\cf0 {\listtext \uc0\u8259 }Mention that you need a certificate from Apple to run self-written applications on an iPhone/iPod Touch\
{\listtext \uc0\u8259 }Installation script mentions its location whenever it aborts\
{\listtext \uc0\u8259 }Link to wiki page with more information\
{\listtext \uc0\u8259 }Xcode template now ignores FPC configuration files\
{\listtext \uc0\u8259 }Xcode template handles Xcode reassembling previously compiled files (e.g., in case the current SDK is switched)\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\cf0 \ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
\b \cf0 \ulnone \'95 2.3.1v1
\b0 (9th January 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\ql\qnatural\pardirnatural
\ls14\ilvl0\cf0 {\listtext \uc0\u8259 }Initial release\
}
|