Artifact 4d2780b09f7b086308b5972e48f50dd727b6871a4e87062c056b92a49bc4a49a:
- File
README.md
— part of check-in
[c997c9b415]
at
2015-08-26 08:40:31
on branch trunk
— Remove autogen.sh
autoreconf can be used now, as AC_CONFIG_MACRO_DIR has been added to
configure.ac. (user: js, size: 2237) [annotate] [blame] [check-ins using]
ObjFW is a portable, lightweight framework for the Objective C language. It enables you to write an application in Objective C that will run on any platform supported by ObjFW without having to worry about differences between operating systems or various frameworks that you would otherwise need if you want to be portable. See https://webkeks.org/objfw for more information. Installation ============ To install ObjFW, just run the following commands: $ ./configure $ make $ make install In case you checked out ObjFW from the Git repository, you need to run the following command first: $ autoreconf Building as a Mac OS X framework ================================ It is also possible to build ObjFW as a Mac OS X framework. To do so, just execute `xcodebuild -target ObjFW` in the root directory of ObjFW or open the .xcodeproj in Xcode and choose Build -> Build from the menu. Copy the resulting ObjFW.framework to `/Library/Frameworks` and you are done. Using the Mac OS X framework in Xcode ===================================== To use the Mac OS X framework in Xcode, you need to add the .framework to your project and add the following flags to `Other C Flags`: -fconstant-string-class=OFConstantString -fno-constant-cfstrings Optionally, if you want to use blocks, you also need to add: -fblocks Building with LLVM/Clang for ARM ================================ When using LLVM/Clang older than 3.5 to compile for ARM, it is necessary to specify extra flags in order to enable ARM EHABI compliant exceptions. To do so, set `OBJCFLAGS` to this: -O2 -g -mllvm -arm-enable-ehabi -mllvm -arm-enable-ehabi-descriptors If you have a CPU supporting VFP or NEON, it is important to set the correct architecture, as otherwise VFP / NEON registers won't be saved and restored when forwarding. For example, if you have an ARMv6 that supports VFP, you need to set `OBJC` to this: clang -march=armv6 -mfpu=vfp Using these flags, ObjFW was compiled successfully for Android and the Raspberry Pi. Bugs and feature requests ========================= If you find any bugs or have feature requests, feel free to send a mail to js@webkeks.org!