NEWS
****

The currently released version is GNUSTEP-MAKE-VERSION.

Changes in version 1.11.0
=========================

NOTE: The libobjc library is now linked in with the base library and NOT with individual applications or tools (except on MingW). This requires that you do a complete rebuild of all libraries, tools and apps when switching to this new version.

  * New rules for building and using DLLs were implemented. Now gcc and other tricks are used to properly export symbols, so no .def file should be needed.

  * The GNUsteprc file in $GNUSTEP_SYSTEM_ROOT is deprecated. See the new GNUstep.conf file (which is not installed by default).

  * Psuedo-framwork support was implemented on MingW. This essentially involves copying the framework to several places so it can be used without links, which Windows does not really support.  There's no other clean way to do it.

  * Support for xxx_WINDRES_FILES on MinGW was implemented.

Changes in version 1.10.0
=========================

  * a GNUsteprc file is now automatically created and installed in $GNUSTEP_SYSTEM_ROOT, which sets the system-wide default for the user root directory (default=~/GNUstep, which can be overriden with the --with-user-root argument to configure, or by modifying GNUsteprc after configuration.)

  * make_services is not run by GNUstep.sh anymore. You must run this manually now (see the gnustep-gui documentation).

  * Palettes use a plist instead of a strings format file now for the palette.table file.

  * You can use the --enable-native-objc-exceptions argument to configure to enable use of built in objc exceptions with compilers that support it.

Changes in version 1.9.2
========================

  * Application and Bundles use the latest convention on Apple.

  * Improve/Simplify dependency checking when making docs

Changes in version 1.9.1
========================

  * Remove --disable-import option

  * README.Darwin for darwin/MacOSX install

  * Framework version and naming clarified.

Changes in version 1.9.0
========================

  * Support for building in a separate build dir.

  * Add --enable-strip-makefiles option to configure

  * List of classes in a framework gets written to the plist file.

Changes in version 1.8.0
========================

Read the NEWS file for a complete list of changes since the last stable release. The major difference from 1.6.0 is that the locations of certain directories have changed. Generally this will not cause a problem unless your GNUstep directory is shared by multiple machines running this and earlier (1.6.x) versions of the software.

Changes in version 1.7.4
========================

Bug fixes.

Changes in version 1.7.3
========================

  * Adds library combo to Headers directory if not flattened.

  * Add Markup file (Renaissance) support.

Changes in version 1.7.2
========================

--enable-flattened (Flat directory structure) is on by default.

  * On WIN32 use HOMEPATH in preference to USERPROFILE

  * netbsd and openbsd compile fixes.

Changes in version 1.7.1
========================

Bug fixes.

Changes in version 1.7.0
========================

This version contains a major change in the location of certain directories and installed files as detailed in the filesystem.texi document. When installing this version for the first time, all old directories and files in those directories will be moved to the new locations automatically. However, you should update all GNUstep versions on any machine you have them installed on in order to avoid any incompatibilities.

Other changes:

  * Support for preprocessed Info.plists.

Changes in version 1.6.0
========================

Make now configures by default for only one system. To compile and run GNUstep for multiple platforms from the same directory, use the configure argument --enable-multi-platform.

  * Auto-build def file for DLLs

  * Work natively on MacOSX systems. Now use apple-apple-apple instead of nx-nx-nx on OSX systems.

  * More efficient checks for re-making a project.

Changes in version 1.5.1
========================

  * Framework support rewritten, also supports multiple names.

  * API change: Replace frameowork's xxx_TOOLS by xxx_COPY_INTO_DIR.

  * Unified link commands between libraries and frameworks (LIB_LINK_*).

  * New 'make strings' target for localization support.

  * Speed improvements.

  * Doesn't try to build OSX bundle on GNUstep and vice versa.

  * API change: Tools/Subproj can have resources.

  * API change: TOOL_INSTALL_DIR.

Changes in version 1.5.0
========================

  * Add NetBSD Elf support

Changes in version 1.4.0
========================

  * Update Darwin/GNU gcc and Irix targets

Changes in version 1.3.4
========================

This is a first prerelease version for 1.4.

  * Use gnugc-gnu-gnu library combo for garbage collecting version.

  * Add support for --library-combo in opentool

  * Change GNUSTEP_PATHPREFIX_LIST to	GNUSTEP_PATHLIST

  * Add verbosity levels. Use make messages=yes for full messages.

Changes in version 1.3.3
========================

  * Recognizes XXX_STANDARD_INSTALL=no to not do installation.

  * Updated instructions for MingW/MSYS installation.

Changes in version 1.3.2
========================

  * Instructions for building on Windows with MSYS

  * Resolve library dependencies better on Windows

  * Fix frameworks in RPMs and DEBs

  * Continued reorganization.

Changes in version 1.3.0
========================

The package has gone through an extensive reorganization to break up each sub-make into two separate components. This allows for much simplified code and lots of code sharing between components. As a side effect, it also increased the speed of the code by at least a factor of 2.

  * Force shared=yes for cygwin and mingw

  * Bundles copy resources from subprojects.

  * Better resource management. Resources handled accross all project types.

  * Simplified and fixed user root location between make and base libraries.

  * Changed Apps directory to Applications

  * Fixes for MacOSX, MingW

Changes in version 1.2.1
========================

  * the source distribution code has been rewritten to be more general and extended.  Packages built using gnustep-make now automatically have handy targets building tarballs from sources or from CVS imports.

  * implemented support for auto-dependencies, which means that any object file automatically depends on all the header files which were used to build it.  Only works with newer compilers.

  * implemented INSTALL_AS_USER and INSTALL_AS_GROUP.

  * implemented a strip=yes option.

  * various bug fixes and minor improvements.

Changes in version 1.2.0
========================

  * The core rules and internals of gnustep-make have been fundamentally redesigned and rewritten.  notably, gnustep-make now works using only a single recursive sub-make invocation rather than two, which makes it consistently faster and simpler in all circumstances.

  * The clean rules have been heavily optimized - they no longer use recursive sub-make invocations at all and so they are really fast.

  * Many improvements to java support. Optimized management of nested classes

  * Better conformance to make conventions.

  * File specific compilation flags

  * Fixed darwin support

  * Support for C++ files.

  * Made use of library installation dir consistent with other installation.

  * Much improved Windows path support

Changes in version 1.0.1
========================

  * Support for Java tools.

  * Build GUI backend as a bundle (default).

  * Remove backend part of LIBRARY_COMBO.

  * Fixes to run on FreeBSD, Solaris.

Changes in version 1.0.0
========================

  * Optimizations that in many cases more than double the speed.

  * Added preliminary darwin support.

  * rpm packeing improvements.

  * Better checking for mingw and cygwin

Changes in version 0.9.2
========================

  * HOWTO and faq files moved from core package to here

  * Configurable GNUSTEP_LOCAL_ROOT and GNUSTEP_NETWORK_ROOT

Changes in version 0.9.1
========================

Make has been reoganized so that it only relies on libraries and other things that are necessary for the Makefile package itself. Any libraries wanting to add extra package information can do so by installing a make stub in the Additional directory. This greatly simplifies compilation and packaging.

  * Javadoc support added.

  * debian directory added for dpkg

  * RPM support rewritten from scratch.

Changes in version 0.9.0
========================

ffcall library is highly recommended for use with the GNUstep base library. You need to have installed it prior to configuring the Makefile package. See the INSTALL file.

  * Support for automatically generating RPM spec files.

  * Build suitable files for MacOS bundles

  * Add option for flattened directory structure.

  * LaText documentation support.

  * Added support for Frameworks

Noteworthy changes in version 0.6.6
===================================

The GNUstep system libraries are now installed in a separate system root directory (default /usr/GNUstep/System) rather than the GNUstep root directory (default /usr/GNUstep). You can revert to the old behavior using a configure option --without-system-root. We also recommend removing any previous GNUstep versions before installing the new one in order to avoid problems with the system finding the correct binary and/or library.

  * Support for Windows compilation (cygwin and mingw) and DLL creation and usage.

  * Java support rewritten and extended.