(So far, just a new title, some minor updates, and a disclaimer in each section that has to be updated for the net release, or at least looked at.)
		
			
				
	
	
		
			671 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			671 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| @chapter History
 | |
| 
 | |
| @strong{(Please note: This section has not yet been updated for the latest
 | |
| net release.)}
 | |
| 
 | |
| @include changes.texinfo
 | |
| 
 | |
| @section Release Beta 19 (Feb 26 1998)
 | |
| 
 | |
| This is a major release.  It includes a much-updated version of the
 | |
| Cygwin32 library.  Because the Cygwin API has changed in incompatible
 | |
| ways, the dll has been renamed cygwinb19.dll to avoid invalidating
 | |
| previously built executables.
 | |
| 
 | |
| Note that a B19-compiled application exec()ing a B18-compiled
 | |
| application will treat the B18-compiled executable as an ordinary
 | |
| Win32 executable.  This means that open file descriptors and some other
 | |
| internals will not be inheritted on exec() calls.  The reason for this
 | |
| is that different shared memory areas are used by the different versions
 | |
| of the cygwin library.  This may or may not be of importance to you
 | |
| depending on what you're doing.
 | |
| 
 | |
| The Beta 19 release of the Cygwin32 library continues to be licensed
 | |
| under the GNU General Public License (GPL).
 | |
| 
 | |
| The PE format definition used by the compiler tools now matches
 | |
| Microsoft's more closely.  This should allow better interoperability
 | |
| with other vendors' development tools although more work probably
 | |
| remains to be done in this area.  This change invalidates all previously
 | |
| built object (.o) and static library (.a) files so be sure to
 | |
| delete/rebuild old .o and .a files you are using!
 | |
| 
 | |
| Finally, old symlinks are invalidated by this release.  The "system"
 | |
| attribute is now used to mark symlinks which significantly speeds
 | |
| up fstat and other file related calls.  Either recreate old ones or
 | |
| set their "system" attribute flag so they will be recognized properly.
 | |
| 
 | |
| The new installer takes care of all environment variable settings
 | |
| automatically by installing a shortcut in program files that pulls
 | |
| up a bash prompt with all the correct environment variables set.
 | |
| As a result, the setup process should be much cleaner than in the last
 | |
| release.
 | |
| 
 | |
| For those of you who end up moving the tools around, the batch file
 | |
| that sets up the default environment is called cygnus.bat and is
 | |
| installed in the root of the install directory.  Because the tools have
 | |
| been compiled to install in /cygnus/b19, when installed in this
 | |
| location, the tools should "just work" if the bin directory is in your
 | |
| path (no special environment variables are needed).  The only exception
 | |
| is MAKE_MODE which needs to be set if you want to get ordinary Unix-like
 | |
| make behavior -- see the make notes below for more information.
 | |
| 
 | |
| @subsection Changes in specific tools:
 | |
| 
 | |
| Ian Lance Taylor has written a resource compiler called "windres".
 | |
| It can be used to compile windows resources from a textual rc file
 | |
| into a COFF file.  The sources are in the binutils subdirectory of
 | |
| the sources.
 | |
| 
 | |
| We have upgraded many of the utilities.  Beta 19 includes bash 2.01.1,
 | |
| fileutils 3.16, gawk 3.0.3, patch 2.5, shellutils 1.16, tar 1.12,
 | |
| textutils 1.22, and texinfo 3.11.  Bash under Cygwin32 now includes
 | |
| working job control among other improvements.
 | |
| 
 | |
| The sh executable is now ash 0.2 from the Debian Linux distribution.
 | |
| Using this more minimal shell as /bin/sh.exe speeds up configures
 | |
| significantly.
 | |
| 
 | |
| Bison 1.25 has been added.
 | |
| 
 | |
| Tcl/tk are upgraded to version 8.0.  Compatible versions of tix and
 | |
| itcl have been added.  These all include Cygwin32-compatible configury
 | |
| files so you can do a Unix-style build of the Win32 ports of tcl/tk.
 | |
| 
 | |
| Expect 5.21.3 is included and basically works.
 | |
| 
 | |
| The binaries have been compiled with i686 optimizations turned on
 | |
| which may result in a speed increase on Pentium-based systems
 | |
| although the tools should work on i386 and later chips.
 | |
| 
 | |
| The linker (ld) has been enhanced -- it will now add the idata3
 | |
| terminator automatically when linking dlls.
 | |
| 
 | |
| kill now supports signal names in arguments.  ps now shows process
 | |
| start time information.
 | |
| 
 | |
| Although the default install of the tools should hide this detail, the
 | |
| make utility now defaults to a Win32 mode which uses cmd.exe/command.com
 | |
| as the subshell.  This mode allows the use of backslashes in filenames.
 | |
| To build Unix programs, you need to set the MAKE_MODE environment
 | |
| variable to "UNIX".  This way you will get the old behavior of using
 | |
| sh.exe as the subshell.
 | |
| 
 | |
| @subsection Changes in the Cygwin32 API (cygwin.dll):
 | |
| 
 | |
| The interface is now better defined.  It contains libc, libm, and
 | |
| Unix compatability calls.  It no longer contains exports for libgcc.a.
 | |
| This should result in a more stable interface.  See the calls.texinfo
 | |
| document for interface documentation.
 | |
| 
 | |
| There is now only one environment variable called CYGWIN32 that controls
 | |
| the overall behavior of the dll:
 | |
| 
 | |
|         set CYGWIN32=[no]title [no]strip_title [no]binmode [no]glob
 | |
|                 strace=mask:cache,file [no]tty
 | |
| 
 | |
| So if you "set CYGWIN32=title tty", then you would get tty support
 | |
| (see below) and have the current running process listed in the title
 | |
| bar.
 | |
| 
 | |
| B19 adds support for:
 | |
| 
 | |
| * tty and pseudo-tty devices.  For now, ttys default to off because
 | |
| taking over the console causes problems with using non-Cygwin console
 | |
| programs in a Cygwin console.  To turn it on, set the environment
 | |
| variable CYGWIN32 to include "tty".
 | |
| * Hard links (requires NT on an NTFS filesystem).  When not possible (on
 | |
| non-NTFS filesystems), link() will make a copy of the file in question
 | |
| as it has done in previous releases.
 | |
| * The SIGWINCH signal.  If tty handling is enabled then the process will
 | |
| receive a SIGWINCH signal when the screen size changes.
 | |
| * Additional terminal escape sequences recognized: scroll region setting via
 | |
| <ESC>[n1;n2r and setting the console title using xterm escape sequence:
 | |
| <ESC>]2;new title^G .
 | |
| 
 | |
| The following calls have been added:
 | |
| 
 | |
| * ptsname, grantpt, unlockpt
 | |
| * login, logout, ttyslot, ctermid
 | |
| * cfgetispeed, cfgetospeed, cfsetispeed, cfsetospeed
 | |
| * setitimer, getitimer, ftime, tzset
 | |
| * wait3, wait4, pause, sigpause
 | |
| * getpgid, killpg, setegid (stub)
 | |
| * strlwr, strupr
 | |
| * sexecve, sexecl, sexecle, sexeclp, sexeclpe, sexecv, sexecp, sexecvpe
 | |
| * rcmd, rresvport, rexec
 | |
| * strsignal, strtosigno
 | |
| * dlopen, dlsym, dlclose, dlerror
 | |
| * inet_netof, inet_makeaddr
 | |
| * socketpair
 | |
| * fpathconf, realpath, chroot (stub)
 | |
| * initgroups (stub), getgroups
 | |
| * random, srandom
 | |
| 
 | |
| The following calls have been removed:
 | |
| 
 | |
| * ScreenCols, ScreenGetCursor, ScreenRows, ScreenSetCursor
 | |
| * getkey, kbhit
 | |
| * crypt (stub)
 | |
| * all libgcc.a exports
 | |
| 
 | |
| The Winsock dll (wsock32.dll) is no longer implicitly linked into
 | |
| the Cygwin32 dll.  Instead, it is explicitly loaded with LoadLibrary
 | |
| the first time a process calls a Cygwin32 networking function.  This
 | |
| speeds up most processes significantly (configures by about 20%).
 | |
| 
 | |
| The signal-related code has been rewritten from scratch.  Ditto for
 | |
| most of the path handling code.
 | |
| 
 | |
| The globbing and getopt code has been replaced with BSD-derived
 | |
| code.  The regexp code has been replaced with Henry Spencer's PD
 | |
| implementation.
 | |
| 
 | |
| Doug Lea's malloc is now being used as the default malloc exported by
 | |
| cygwin.  This malloc balances speed and compactness very nicely but is
 | |
| more unforgiving when attempts are made to free already freed memory,
 | |
| i.e., a segmentation violation will occur.
 | |
| 
 | |
| The bsearch call has been rewritten.
 | |
| 
 | |
| Alt Gr-key behavior has been changed in this release.  The left alt-key
 | |
| still produces ESC-key sequence.  The right alt (Alt Gr)-key now
 | |
| produces characters according to national keyboard layouts.
 | |
| 
 | |
| Processes no longer write their name in the title bar unless you include
 | |
| "title" in the CYGWIN32 environment variable (see above).
 | |
| 
 | |
| Multiple cygwin.dlls no longer use the same memory space unless they are
 | |
| identical (built at the same time).  This allows multiple dlls with
 | |
| incompatible shared memory usage to be run simultaneously.  It also
 | |
| facilitates debugging a buggy cygwin.dll.  By keeping only a single copy
 | |
| of the latest cygwin.dll on your system, you can be assured of having
 | |
| all cygwin processes exist in the same shared memory space.
 | |
| 
 | |
| The slash mount no longer defaults to C:.  It now defaults to the
 | |
| system drive letter (where the OS is installed).
 | |
| 
 | |
| The standard dl* dynamic library loader functions are now available.
 | |
| Cygwin32 B19 now correctly copies data after a fork and automatically
 | |
| reloads any DLLs loaded in the parent process.  In addition, dlls will
 | |
| now be correctly initialized when loaded and global constructors will
 | |
| be called.  Global destructors will be called when the DLL is detached.
 | |
| Handles gotten from dlopen or dlsym in the parent will be accessible in a
 | |
| forked child.  The LD_LIBRARY_PATH environment variable is used in the dlopen
 | |
| search.
 | |
| 
 | |
| Include the file <cygwin32/cygwin_dll.h> in a cygwin32 created .dll and
 | |
| use the line DECLARE_CYGWIN_DLL(dll-entry-point) to produce .dlls that
 | |
| can be used with these functions.
 | |
| 
 | |
| @section Release Beta 18 (May 6 1997)
 | |
| 
 | |
| This is a major release.  The new cygwin.dll is still
 | |
| backwards-compatible with previously linked applications but
 | |
| contains significant changes.
 | |
| 
 | |
| We have completely changed the installation process to make
 | |
| use of an InstallShield5-based installer.  This should reduce the
 | |
| number of installation problems people have experienced in the
 | |
| past.  However, it is still necessary to set environment variables
 | |
| by hand, as explained in the README.txt accompanying the distribution.
 | |
| (Future gnu-win32 installers may include the capability to do this
 | |
| automatically).
 | |
| 
 | |
| @subsection Changes in specific tools:
 | |
| 
 | |
| GCC compilation times have been improved by 20-30% by using spawn()
 | |
| instead of fork().
 | |
| 
 | |
| GCC accepts both Win32 and POSIX paths/path lists in its
 | |
| environment variables (COMPILER_PATH, LIBRARY_PATH, C_INCLUDE_PATH,
 | |
| CPLUS_INCLUDE_PATH, OBJC_INCLUDE_PATH)
 | |
| 
 | |
| GDB comes with a tcl/tk-based GUI (gdbtk).  You can still invoke the
 | |
| command line gdb by invoking it with "gdb -nw".
 | |
| 
 | |
| Bash verifies that /tmp exists and is a directory upon startup.
 | |
| It complains if this isn't the case.
 | |
| 
 | |
| Running gcc or ld with "-s" used to create invalid executables.
 | |
| The bug in bfd that was responsible for this has been fixed.
 | |
| 
 | |
| The conflict between String.h and string.h (and other such pairs
 | |
| of header files) where you include one and get the other has been
 | |
| fixed.
 | |
| 
 | |
| The top level install-sh script tries to install foo.exe if asked
 | |
| to install foo when foo's not present.  This fixes many installs
 | |
| of Unix software.
 | |
| 
 | |
| Dlltool has preliminary support for the IMPORT declaration in .def files
 | |
| when invoked with -I.  Feel free to experiment with it but once this
 | |
| functionality is tested more extensively this flag may go away.
 | |
| 
 | |
| Time is upgraded to version 1.7.
 | |
| 
 | |
| Make is upgraded to version 3.75.
 | |
| 
 | |
| Make accepts both Win32 and POSIX path lists in the VPATH variable.
 | |
| 
 | |
| @subsection Changes in the Cygwin32 API (cygwin.dll):
 | |
| 
 | |
| The following is now supported:
 | |
| 
 | |
| * UNC paths
 | |
| * Reverse index escapes in console code
 | |
| * Blocking select()s on a combination of sockets/handles
 | |
| * Directory symlinks.
 | |
| * Reparenting of child processes.
 | |
| 
 | |
| The following calls have been added:
 | |
| 
 | |
| * mmap(), mprotect(), msync(), munmap().  fork() changed to support these.
 | |
| * fsync(), statfs(), fstatfs().
 | |
| * getprotobynumber() and getservbyport().
 | |
| * get_osfhandle(), cwait().
 | |
| * spawnl(), spawnle(), spawnlp(), spawnlpe(), spawnv(), spawnve(),
 | |
| spawnvp(), spawnvpe().
 | |
| * nice().
 | |
| * sigpending(), sigsuspend()
 | |
| * Under NT only, chown(), getgrgid(), getgrnam(), endgrent(), getgrent(),
 | |
| setpwend(), getpwent(), endpwent().  Win95 still has these as stubs.
 | |
| 
 | |
| Significantly better signals / exception handling support added.
 | |
| The kill signal works much better now (control-C works in bash).
 | |
| 
 | |
| Shell scripts now run the shell specified after the #! instead of
 | |
| always defaulting to /bin/sh.
 | |
| 
 | |
| Floating point registers are now properly initialized in the crt0.o.
 | |
| 
 | |
| Opening non-disk files such as com ports no longer check to see
 | |
| if they are symlinks or executables.
 | |
| 
 | |
| The console title now is set to the name of the running process.
 | |
| 
 | |
| Winsock is now initialized upon app startup.
 | |
| 
 | |
| Moved reent_data from private address space to cygwin.dll.
 | |
| 
 | |
| The system() call now invokes spawnvp() instead of fork()/exec().
 | |
| 
 | |
| Support for NT extended attributes has been added but is disabled
 | |
| for now because it slowed things down too much.  We want to use them to
 | |
| remember info about symlink and executable status of files.
 | |
| 
 | |
| Under NT only, utilities mkpasswd and mkgroup can generate a valid
 | |
| /etc/passwd and /etc/group.
 | |
| 
 | |
| Earlier releases stored mount points in the registry under
 | |
| "Cygnus Support".  This changed to "Cygnus Solutions" starting
 | |
| with beta 18.  Either use a registry editor (regedit under NT)
 | |
| to rename the old entry or just redo your mount points and the
 | |
| cygwin.dll will automatically create the new one for you.
 | |
| 
 | |
| Mount points can now be up to MAX_PATH in length instead of 30
 | |
| characters.
 | |
| 
 | |
| @section Release Beta 17.1 (Dec 10 1996)
 | |
| 
 | |
| A patch has been applied to make Win 95 configure work again.
 | |
| 
 | |
| ld has been changed to make "a.exe" be the default executable name.
 | |
| 
 | |
| @section Release Beta 17 (Dec 7 1996)
 | |
| 
 | |
| It is now possible to rebuild the tools natively under x86 NT when
 | |
| the full Cygnus Developers' Kit (CDK) and the User Tools are both
 | |
| installed correctly.
 | |
| 
 | |
| While the cygwin.dll underwent substantial changes, none of them
 | |
| prevent you from using previously built applications  The new dll
 | |
| is compatible with beta 16 to the best of our knowledge.  Beta 14-built
 | |
| programs will continue to fail with the beta 17 dll -- you will have to
 | |
| relink them before they will work.
 | |
| 
 | |
| The winsup files that make up the Cygwin32 API are now under the
 | |
| GNU General Public License.  See the accompanying press release
 | |
| for more information.
 | |
| 
 | |
| @subsection Changes in specific tools:
 | |
| 
 | |
| Gcc now links by default against -lkernel32 and also against
 | |
| -luser32 -lgdi32 -lcomdlg32 when mwindows is set.  Another major
 | |
| change is that when creating an executable, gcc will now create
 | |
| foo.exe when given a -o argument of foo.
 | |
| 
 | |
| Dlltool has patches to make it better handle the --subsystem argument
 | |
| that allows choosing console vs. GUI among other options.
 | |
| ld has been changed to have a much larger stack reserve size.  This
 | |
| is necessary when rebuilding the toolchain natively under NT.
 | |
| 
 | |
| The C++ headers can now be found given a correctly set GCC_EXEC_PREFIX
 | |
| environment variable.
 | |
| 
 | |
| New versions of fileutils and make are included.  Findutils has been
 | |
| added.
 | |
| 
 | |
| @subsection Changes in the Cygwin32 API (cygwin.dll):
 | |
| 
 | |
| Scott Christley's headers and def files for the standard Win32 dlls
 | |
| have been integrated.  Anything present only in the previous Cygnus headers
 | |
| has been added in the appropriate places.  There are placeholder files
 | |
| with the standard Win32 header names that pull in our headers so
 | |
| programs that try to include specific headers should continue to work.
 | |
| Having more complete headers should make Win32 native programming
 | |
| easier.
 | |
| 
 | |
| Select has been rewritten from scratch.  The new one can deal with
 | |
| all sockets, handles and sockets always ready, all handles.  Handles
 | |
| and sockets with timeout not implemented yet.  Select now does
 | |
| blocking and doesn't spin cpu.
 | |
| 
 | |
| File handling has been largely rewritten:
 | |
| The fhandler array has been moved into local memory instead of shared
 | |
| memory.  This makes a number of things behave better.  Lots of changes
 | |
| to support this.  There is now fairly complete ansi/vt100 console support.
 | |
| Some new file locking support has been added.  Arrow keys are now
 | |
| supported.
 | |
| 
 | |
| Process handling much improved.
 | |
| 
 | |
| Significant serious bugs in fork() fixed.
 | |
| 
 | |
| The system() call now works.
 | |
| 
 | |
| unlink() now chmods read-only files to writable before attempting to
 | |
| delete a file.  This fixes the outstanding problem where rm can't
 | |
| delete read-only files saying "out of queue slots" repeatedly.
 | |
| 
 | |
| Text mode read has been rewritten.
 | |
| 
 | |
| New syslog code allows logging to event log under NT, file under Win 95.
 | |
| 
 | |
| Symlinks are enabled.
 | |
| 
 | |
| readv() and writev() have been written and exported.
 | |
| 
 | |
| For MS compatibility, we now export functions in the dll as _funcname
 | |
| in addition to funcname.  I would suggest not making use of this fact
 | |
| unless you are building code that already accesses C library calls
 | |
| in this way.
 | |
| 
 | |
| Almost all of the source code is now in C++ files.
 | |
| 
 | |
| @section Release Beta 16 (Aug 30 1996)
 | |
| 
 | |
| Path handling has been completely rewritten.  To refer to drive Q: in
 | |
| bash, you can now refer to //q/.  Alternatively, type "mount Q: /q" to
 | |
| have drive Q: show up as /q.
 | |
| 
 | |
| We now pass the Plum Hall positive C conformance tests on the
 | |
| i386 under Windows 95 and NT 4.0b2.
 | |
| 
 | |
| Fork was previously not accessible inside the dll.  This is no
 | |
| longer the case which should allow us to add working system and popen
 | |
| calls.
 | |
| 
 | |
| getdomainname works (it used to just return "cygnus.com") by getting
 | |
| information from registry.
 | |
| 
 | |
| Fixed readdir bug that set errno improperly.  This fixed the problem
 | |
| with diff not working across directories.
 | |
| 
 | |
| Better error checking in signal functions.  Initialize winsock in
 | |
| cygwin32_socket with checkinit call (fixes bug that required calling any
 | |
| function that did this first).
 | |
| 
 | |
| New functions: sigaddset, sigismember, sigfillset, sigemptyset.
 | |
| 
 | |
| Removed extra underscores present in sysdef files.
 | |
| 
 | |
| There is a now a major and a minor version number associated with
 | |
| the cygwin.dll.  The major number changes only when incompatible changes
 | |
| are made, the minor number changes when significant changes are made
 | |
| to the dll that don't require relinking of old apps.
 | |
| 
 | |
| Changed value of HZ in include/sys/param.h to correct value of 1000.
 | |
| (Fixes bug people reported about "time sleep 5" returning 50).
 | |
| 
 | |
| Assorted exception handling fixes for both i386 and ppc processors.
 | |
| 
 | |
| Assorted time-related fixes required for Cygnus Kerberos work.
 | |
| New time functions: gmtime, corelocaltime
 | |
| 
 | |
| Assorted spawn and fork fixes.
 | |
| 
 | |
| Pseudo-Unix process handling added -- new ps and kill commands added
 | |
| 
 | |
| Control-Z's are now handled as a valid EOF token in files opened as
 | |
| text.
 | |
| lseek now always operates in binary mode.
 | |
| 
 | |
| Select revamped.
 | |
| 
 | |
| Various other changes.  For more detailed information, consult the file
 | |
| in the source code winsup/ChangeLog.
 | |
| 
 | |
| Preprocessor define scheme changed.  Apps should now use _WIN32
 | |
| instead of __WIN32__ to check for access to Win32 API and __CYGWIN32__
 | |
| to check for presence of the Cygwin32 environment.
 | |
| 
 | |
| We are no longer including GNU findutils, GNU dbm, GNU bison,
 | |
| GNU less, ncurses, ftp, finger, rcl, cvtres, or V.  This may or may not
 | |
| change in the future.
 | |
| 
 | |
| You must relink old apps you built with prior releases with the new
 | |
| cygwin.dll.
 | |
| 
 | |
| @section Release Beta 14 (April 10 1996)
 | |
| 
 | |
| Some bugs have been fixed.  GDBM and m4 are in the release.  GCC now
 | |
| uses the standard install directories for cc1 etc.
 | |
| 
 | |
| A port of V to gnu-win32 is included.  You can now write graphics
 | |
| applications which will run on Unix or Windows unchanged.  Some parts of
 | |
| V work on the PPC too.
 | |
| 
 | |
| If you call any programs from the standard DOS shell, then the DLL will
 | |
| expand all the wildcards (glob) found in the arguments on the command
 | |
| line.  So ls *.exe will do what you think it should, even if you're not
 | |
| in bash.
 | |
| 
 | |
| ncurses and less are included. The DLL's emulation of a vt100 isn't complete,
 | |
| so ncurses doesn't do all that it should. Hence less is more or less
 | |
| useless.  This can be fixed with a new DLL.  (If you want to use
 | |
| something which uses curses, be sure to set your TERM and HOME
 | |
| envirionment variables)
 | |
| 
 | |
| If you leave out main, then the libraries will try and call WinMain in the
 | |
| usual way.
 | |
| 
 | |
| ^C works much better on Windows 95.  It's still not quite right, but at
 | |
| least most times it quits what you're doing, and most times doesn't
 | |
| crash your machine.
 | |
| 
 | |
| You can start more than one concurrent bash session. 
 | |
| 
 | |
| Some networking support has been added.  Even though telnet.exe is provided,
 | |
| I know that it doesn't work, so please don't send me bug reports.
 | |
| 
 | |
| You will have to relink your applications to go with the new DLL.
 | |
| 
 | |
| The DLL is released in its own .zip file too, so you don't have to
 | |
| download a load of other stuff if you dont want to.
 | |
| 
 | |
| @section Release Beta 13 (Feb 9 1996)
 | |
| 
 | |
| Files are opened in binary mode, unless the registry is fiddled with.
 | |
| 
 | |
| The `cat >foo <<EOF bug is fixed.
 | |
| 
 | |
| The symlink cookie has changed, so old links wont work any more.
 | |
| 
 | |
| Two resource tools are provided (untested).
 | |
| 
 | |
| More windows header files are provided. WxWindows almost compiles.
 | |
| 
 | |
| You can get to a raw floppy with `/dev/fd0 or `/dev/fd1.
 | |
| 
 | |
| You can have two filenames with the same name and different case in
 | |
| the same directory.
 | |
| 
 | |
| Stat now fills in the st_nlink field for directories, so find works
 | |
| better.
 | |
| 
 | |
| This version is much more stable than any previous version, and will
 | |
| stay running long enough to configure and build itself on my NT box.
 | |
| 
 | |
| This version is also available in PowerPC versions.  The PowerPC
 | |
| compiler doesn't do stack probing, so some applications won't work, or
 | |
| they'll only work on some input data - e.g. the demo "hello world" will
 | |
| compile, but gcc will crash compiling the dhrystone benchmark.
 | |
| 
 | |
| There's a new registry variable "fmode=binary" which controls
 | |
| whether the tools always open files in binary mode (unless overridden
 | |
| with O_TEXT), or always open files in text mode (unless overridden with
 | |
| O_BINARY).
 | |
| 
 | |
| Filesystems can be mounted with the mixed_case flag.  This allows
 | |
| you to use filenames with the same spelling, but different case in the
 | |
| same directory.
 | |
| 
 | |
| I haven't tested or even used some of the packages that I've
 | |
| provided.  I compiled them, and then fixed the obvious "the file should
 | |
| have been opened in binary mode" problems.
 | |
| 
 | |
| I've already had reports of some of it not working correctly on
 | |
| Windows 95.  I don't have a simple to use Windows 95 configuration, but
 | |
| when I did try "it worked for me".  This may be another manifestation
 | |
| of the bug which makes bash hang sometimes under NT.
 | |
| 
 | |
| @section Release Beta 12 (Jan 3 1996)
 | |
| 
 | |
| You can call non- gnu-win32 applications from bash.
 | |
| 
 | |
| You can mount other directories using the @code{mount} command.
 | |
| 
 | |
| Minimal ANSI terminal emulation included.
 | |
| 
 | |
| Packages split into smaller and more logical lumps.
 | |
| 
 | |
| /d<name> mechanism gone.
 | |
| 
 | |
| Initial support for the PowerPC added.
 | |
| 
 | |
| @section Release Beta 11 (Jan 3 1996)
 | |
| 
 | |
| Something broke on the way to the ftp site.
 | |
| 
 | |
| @section Release Beta 10 (Dec 5 1995)
 | |
| 
 | |
| You can pass environment variables around in bash.
 | |
| 
 | |
| Lots more stuff provided precompiled.
 | |
| 
 | |
| Diffs to standard FSF release provided.
 | |
| 
 | |
| It self-hosts.
 | |
| 
 | |
| It supports symbolic links.
 | |
| 
 | |
| The directory layout has changed to be more unix like.
 | |
| 
 | |
| The way that you get to non-c drives is new - i:\foo.cc
 | |
| is now /di/foo.cc
 | |
| 
 | |
| Nasty bug found and fixed in fork.
 | |
| 
 | |
| CPP will now search the directories you supply in env names.
 | |
| 
 | |
| @section Release Beta 9
 | |
| 
 | |
| I've put all of libc and libm into a shared library,
 | |
| This drastically reduces the size of some binaries.
 | |
| e.g., ls goes from 82,949 bytes to 26,624.
 | |
| "Hello World" is 2564 bytes long.
 | |
| This is the first stage in greatly speeding up 
 | |
| some of the stuff that's going on behind the curtain.
 | |
| 
 | |
| Different processes communicate using shared memory.
 | |
| 
 | |
| Some trivial use of the registry is made.
 | |
| 
 | |
| DLLTOOL is now *much* faster.
 | |
| 
 | |
| Some small problems have been fixed in the way that DLLs were
 | |
| layed out.	
 | |
| 
 | |
| @section Release Beta 8
 | |
| 
 | |
| GDB works.
 | |
| 
 | |
| GCC now emits debug info which can make **huge** executables
 | |
| Fortunately, strip works too.
 | |
| 
 | |
| More work has been done to make quoting work.
 | |
| 
 | |
| Simple termios support added to newlib.
 | |
| 
 | |
| Much nicer way of describing paths, eg //c/foo is c:\foo.
 | |
| 
 | |
| @section Release Beta 7
 | |
| 
 | |
| Works again on Win 95 (which is why -6 wasn't advertised).
 | |
| 
 | |
| Permissions are faked better.
 | |
| 
 | |
| Source of demos available without having to ftp the entire win32
 | |
| binary tree. 
 | |
| 
 | |
| @section Release Beta 6
 | |
| 
 | |
| Can now generate DLLs, tiny demo included.
 | |
| tcl, byacc, fileutils, diff, make included.
 | |
| 
 | |
| @section Release Beta 5
 | |
| 
 | |
| Bug preventing anything from running on recent versions
 | |
| of Win95 fixed.
 | |
| 
 | |
| vfork and exec oddities fixed.
 | |
| 
 | |
| Import libraries are now really libraries and not
 | |
| just .o files.
 | |
| 
 | |
| Debugging info stripped from images and libraries;
 | |
| it's just bloat until gdb works.
 | |
| 
 | |
| I've filled in the four major import libraries.
 | |
| 
 | |
| The win*.h files are now installed into <foo>/include
 | |
| rather that <foo>/include/sys, so more things will
 | |
| compile out of the box.
 | |
| 
 | |
| @section Release Beta 4
 | |
| 
 | |
| PE support is fixed. Programs run on
 | |
| NT 3.1, NT 3.5, NT 3.51 and Windows 95.
 | |
| 
 | |
| You can build GUI programs.
 | |
| 
 | |
| .DEF files for three other DLL's started.
 | |
| 
 | |
| New GUI demo program. 
 | |
| 
 | |
| C library distinguishes between text and binary files
 | |
| consequently the text files generated by the
 | |
| tools have the familiar ^M at the end of the line
 | |
| which DOS likes so much.
 | |
| 
 | |
| Doug Evans of Cygnus has added a load
 | |
| of fancy support for execve, opendir and 
 | |
| various other cool things.
 | |
| 
 | |
| Exception handling is better.
 | |
| 
 | |
| @section Release Beta 3
 | |
| 
 | |
| Was so long ago we don't remember.
 |