diff --git a/ANNOUNCE.1.7 b/ANNOUNCE.1.7 new file mode 100644 index 0000000..1ce8dab --- /dev/null +++ b/ANNOUNCE.1.7 @@ -0,0 +1,68 @@ +GNUstep Objective-C Runtime 1.7 +=============================== + +This is a point release to the eighth official release of the GNUstep +Objective-C runtime (a.k.a. libobjc2). This runtime was designed to support +the features of modern dialects of Objective-C for use with GNUstep and other +Objective-C programs. Highlights of this release include: + +- A new CMake-based build system. This makes all of the configurable options + available via a clean interface. CPack is supported for building RPM and DEB + packages out of the box. + +- A new CTest-based test suite, replacing the old ad-hoc tests. + +- Build a single libobjc with support for Objective-C++ on platforms where a + C++ ABI library (libcxxrt or libsupc++) is installed as a shared library. + +- Added specialised property accessor functions and support for atomic + properties with C++ non-POD types. + +- Significant improvements in property introspection and an exhaustive test + suite. + +- Improved integration with libdispatch. The runtime will correctly register + work queues with the garbage collector or create autorelease pools around + block invocations. + +- A new exception implementation providing better integration with foreign + exceptions (e.g. C++ exceptions). The new ABI is supported by clang 3.3 when + compiling with -fobjc-runtime=gnustep-1.7 (or higher). The old ABI is still + supported and both can be used within the same program, however code compiled + with the old ABI remains unreliable in the presence of foreign exceptions. + It is strongly recommended that anyone using exceptions with Objective-C++ + switches to the new version. + +- MIPS64 support in the assembly routines. Currently these are only tested + with the n64 ABI. They are believed to work with n32 and o32, but should be + considered unsupported on these platforms. + +- Small algorithmic improvement to the objc_msgSend() implementation, giving + approximately a 10% speedup (architecture-dependent) on message sends. + +- Updated optimisation passes to work with LLVM 3.2 and recent LLVM trunk. + + +You may obtain the code for this release from subversion at the following +subversion branch: + +svn://svn.gna.org/svn/gnustep/libs/libobjc2/1.7 + +Alternatively, a tarball is available from: + +http://download.gna.org/gnustep/libobjc2-1.7.tar.bz2 + +The runtime library is responsible for implementing the core features of the +object model, as well as exposing introspection features to the user. The +GNUstep runtime implements Apple's Objective-C Runtime APIs, and a small number +of GCC APIs for legacy compatibility. + +This library is based on the Étoilé Objective-C Runtime, an earlier research +prototype, and includes support for non-fragile instance variables, +type-dependent dispatch, and object planes. It is fully backwards compatible +with the FSF's GCC 4.2.1 Objective-C ABI and also implements a new ABI that is +supported by Clang and Étoilé's LanguageKit and is required for some of the +newer features. + +If you come across any problems, please report them to the GNUstep Developer +mailing list .