summaryrefslogtreecommitdiffstats
path: root/third_party/cygwin/README.google
blob: 31a6d9247c6c9bd854b3a06de94735adec39a946 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Update(04/29/08): Added PHP module for Apache 2. First PHP module was installed
(from Cygwin repository at ftp://sunsite.dk/projects/cygwinports) as part of
another Cygwin installation. Then the required files for PHP were moved
under source tree.

Update(04/25/08): Added Apache 2. apache2 package was first installed
as part of another Cygwin installation and then only the required files were
copied over to this tree.
--------------------------------------------------------------------------------
VERSION and LICENSE information
For more information about Cygwin, see http://cygwin.com/.
The Cygwin licensing terms are defined in CYGWIN_LICENSE. Cygwin is licensed
under the GNU public license, a copy of which is in GPLv2.txt.

The binaries are built from Cygwin version 1.5.24.
The source files are included in trunk\deps\third_party\cygwin_src. These are 
not downloaded with the default gclient configuration, but you can get them
directly from the svn server you used to get this source.

The Apache web server is redistributed under the terms of the Apache 2 license:
http://www.apache.org/licenses/LICENSE-2.0.txt

PHP is Copyright (c) 1999-2008 The PHP Group. All rights reserved.
See http://www.php.net/license/3_01.txt for redistribution and usage conditions
and disclaimers.
--------------------------------------------------------------------------------

This contains the necessary Cygwin files to build WebKit.  A filemon trace
during a build showed which files from cygwin\build are needed.

The first change is a binary modification to cygwin1.dll so that /, /bin,
/usr etc point to third_party\cygwin.  Normally cygwin reads the mounts from
HKCU\Software\Cygnus Solutions\Cygwin\mounts v2.  We trick it into using
version 0, which was never used, by binary editing cygwin1.dll.  This lets
cygwin start without any mounts even if the user already has cygwin installed.
setup_mount.bat lets us add these mounts to point to the user's
third_party\cygwin directory.

The second change is to modify the name of the shared memory structures, so
that if another cygwin (of a different version) is running, these two don't
collide.

The binary modifications to cygwin1.dll were:
  replacing "mounts v2" with "mounts v0" (two places)
  replacing "mount registry: 2" with "mount registry: 0"
  replacing "cygwin1S4" with "cygwin0S4"

These can be replayed by running "changes\convert.py".