Changes for the 5.11 release (the Csu-45 release): - To avoid "relocation overflow" errors from the static link editor we want to make sure that the .text section and the stub sections don't have any sections between them (like the .cstring section). To do this the an ordered list of the section directives was added to the start of the sources of the first object loaded (start.s, dylib.s and bundle1.s). Radar bug #2949170. Changes for the 5.7 release (the Csu-33 release): Radar bug #2466821. - Added the flag -arch_errors_fatal to the linking of crt1.o, gcrt1.o and pscrt1.o to avoid creating a bad fat version of the file when linked on a system without a fat dyld. - Added support for module termination routines by looking up dyld's routine to call them and registering that routine with atexit() in _start() in crt.c. - Moved the file dylib1.s to dylib.s, and added the file icplusplus.c which contains the new routine __initialize_Cplusplus() which can be called from a shared library's initialization routine to force the C++ runtime to be initialized so C++ can be used in the shared library's initialization routine. The Makefile was also changed to combine the two resuting objects into the file dylib1.o . - Moved the files installed in /lib to /usr/lib. This requires a change to B&I's verification exceptions as it gets the verification exception "non_library_files" for them. - Added comments in start.s to describe where the exec_path is store as part of the kernel exec interface. And added code in crt.c to pass this along to main as a 4th argument. - Added back the 6th word in the .dyld section in dyld.s that got dropped in the integration of Csu-23 to be the address of dyld_stub_binding_helper so that the NSUnLinkModule() with the NSUNLINKMODULE_OPTION_RESET_LAZY_REFERENCES option will work again. - Added a 7th word to the .dyld section in dyld.s for use by the dyld_debug(3) API's to have a word to write to to be able to debug where the dyld debug thread is executing in the target task. See the cctools project in the files dyld/debug.c and libdyld/debug.c where CORE_DEBUG is defined. Also added comments to the words in the .dyld section in dyld.s for the words with .long 0 to indicate what they are used for. Changes for the 5.0 release (the Csu-9 release): - Added support for PowerPC. - Change the project to just a handful of files with ifdef's instead of a bunch of subprojects and factored out common code.