summaryrefslogtreecommitdiff
path: root/win32/installer/README
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2003-02-05 07:32:22 +0000
committerWez Furlong <wez@php.net>2003-02-05 07:32:22 +0000
commit3449f4f10499aa923464e496d1c8da477e1561ed (patch)
tree1e931a19030b88990eb3e234f72f6d39c651be56 /win32/installer/README
parent1b63f56e0dd30915a2c350ef76014fecf3237a7f (diff)
downloadphp-git-3449f4f10499aa923464e496d1c8da477e1561ed.tar.gz
Check in the prototype PHP installer for win32.
# Besides looking nice and pretty, the installer is actually smaller # than the .zip distro: # PHP 4.3.0 .zip distro: 5,950,222 bytes # PHP 4.3.0 installer: 5,426,242 bytes
Diffstat (limited to 'win32/installer/README')
-rw-r--r--win32/installer/README58
1 files changed, 58 insertions, 0 deletions
diff --git a/win32/installer/README b/win32/installer/README
new file mode 100644
index 0000000000..107ca7d5a8
--- /dev/null
+++ b/win32/installer/README
@@ -0,0 +1,58 @@
+PHP Installer for Win32, by Wez Furlong <wez@thebrainroom.com>
+==============================================================
+$Id$
+
+Here are the supporting scripts for building the win32 PHP installer.
+You need to have the Super-Pimp Installer from Nullsoft (Open Source).
+It is available here:
+ http://nsis.sourceforge.net/
+
+To build an installer, you need:
+
+ o A Source Tree
+ o A win32 snapshot (extracted from the .zip)
+
+ (The source tree and snapshot should have matching versions!)
+
+A Script/Batch file.
+I'm using this (in a .bat file):
+
+----------------------------------------------------------------
+cd <snapshot_root>
+cli\php <source_root>\win32\installer\gen-nsis.php > php.nsi
+"C:\Program Files\NSIS\makensis" /pause /nocd php.nsi
+----------------------------------------------------------------
+
+ ** It is a good idea to examine the php.nsi file for WARNING
+ ** comments. These indicate inconsistencies about your source
+ ** tree structure.
+
+This will generate InstallPHP<Version>.exe, where <Version> is the version of
+the php in the snapshot. The Installer will be placed in the snapshot root.
+
+Installer Concept
+=================
+
+Maintaining installers is a real chore, so we use PHP to generate as much as
+possible.
+
+The gen-nsis.php script will examine the extensions dir from the snapshot and
+then attempt to extract information about the extensions from the source code.
+The sapi dir is subjected to similar treatment.
+
+Throughout the installation, values for php.ini settings are decided; these are
+appended to a temporary file. After everything has been installed, the
+iniset.php script is run and merges the values from the temporary file into the
+"official" php.ini.
+
+These scripts take advantage of features found in PHP 4.3.0 and later, so you
+can't build a PHP 4.2.x distro with it.
+
+Hacking
+=======
+
+While hacking, it's a good idea to comment out the SetCompressor line; it will
+speed up your installer builds...
+Also, switch the logic for the $SYSDIR define at the top to install vital DLLs
+to a fake system dir.
+