Commit Graph

454 Commits

Author SHA1 Message Date
Edin Kadribasic
afcd94f22d Generate files needed for php5ts.dll build 2005-01-22 03:36:38 +00:00
Wez Furlong
968d2ef830 A couple more adjustments for building multiple output variants of the same
extension source.
2005-01-20 03:24:50 +00:00
Frank M. Kromann
e296197362 Allow the build system to generate multiple extensions from the same extension directory 2005-01-18 22:37:12 +00:00
Frank M. Kromann
b1c6c89d97 Fix one-shot builds. 2004-11-15 23:59:22 +00:00
Frank M. Kromann
e1e29cefc4 Adding php_sprintf.c to Win32 build 2004-11-15 18:27:10 +00:00
Frank M. Kromann
fb543df1a8 No need to ude /Fo twice.
Unbreak the build be readding the compile only flag
2004-11-10 23:52:56 +00:00
Frank M. Kromann
d589e61204 Make sure files are stored in the right directory 2004-11-10 20:12:42 +00:00
Edin Kadribasic
34e4dae95c Added zend_strtod.c to the new build 2004-11-04 02:06:04 +00:00
Wez Furlong
ff4e970fb1 Make new poll stuff work on win32 (and still be safe on unix) 2004-09-17 14:36:55 +00:00
Wez Furlong
99e290f882 Fix for Bug #24189: possibly unsafe select(2) usage.
We avoid the problem by using poll(2).

On systems without poll(2) (older bsd-ish systems, and win32), we emulate
poll(2) using select(2) and check for valid descriptors before attempting
to access them via the descriptor sets.

If an out-of-range descriptor is detected, an E_WARNING is raised suggesting
that PHP should be recompiled with a larger FD_SETSIZE (and also with a
suggested value).

Most uses of select(2) in the source are to poll a single descriptor, so
a couple of handy wrapper functions have been added to make this easier.

A configure option --enable-fd-setsize has been added to both the unix and
win32 builds; on unix we default to 16384 and on windows we default to 256.
Windows FD_SETSIZE imposes a limit on the maximum number of descriptors that
can be select()ed at once, whereas the unix FD_SETSIZE limit is based on the
highest numbered descriptor; 256 should be plenty for PHP scripts under windows
(the default OS setting is 64).

The win32 specific parts are untested; will do that now.
2004-09-17 12:44:56 +00:00
Wez Furlong
a60a6c5209 Generate a .reg file for the syslog stuff
NB: still need a solution for zts and non-zts on the same machine.
2004-08-05 12:15:17 +00:00
Wez Furlong
93cdab8b96 Catch exceptions from broken config.w32 files 2004-08-03 01:23:35 +00:00
Wez Furlong
bfbd57905e Explicitly check PATH before cygwin for mc.exe, as we want MS message compiler,
not GNU Midnight Commander.
2004-08-03 01:03:32 +00:00
Wez Furlong
bb099765a3 Revert the search path tweak; it broke the snap build for ming 2004-08-03 00:58:29 +00:00
Wez Furlong
e7aeb7a4c8 A better fix for the VC 2k max literal string limit
(also affects vc7)
2004-08-03 00:02:48 +00:00
Frank M. Kromann
30cad86a8d VC6 hack to avoid CONFIGURE_COMMAND string length over 2048 when building many extensions 2004-08-02 18:48:49 +00:00
Frank M. Kromann
07979b3ce4 Search in PATH before explicit_path. This resolves conflict between Microsoft and cygwin tools with the same name. 2004-08-02 17:54:49 +00:00
Wez Furlong
d898a7418b More hoops for VC6 2004-08-01 12:32:03 +00:00
Wez Furlong
f93193ccff snap this rule in half for vc6 2004-08-01 11:33:58 +00:00
Wez Furlong
2a90ba3642 Juggle deps 2004-08-01 11:19:33 +00:00
Wez Furlong
8085f48575 Enable usleep under win32 2004-08-01 00:29:50 +00:00
Wez Furlong
2c9d87c2f6 Fix bug #8314: sane syslog output to the WinNT event log.
Big fat note: if you're building from a .dsp, you need to replicate
the custom build step that uses MC to generate the message catalog

To make use of this fix, you need to register the event source; running "nmake
install" will handle this for you (if you also build the win32std extension
from pecl).

I'll arrange with Phil to have the installer handle this registration too.
2004-07-31 23:59:46 +00:00
Wez Furlong
d45d690164 Go with new go-pear infrastructure 2004-07-31 18:59:50 +00:00
Wez Furlong
cde7423cde Misc. win32 thread safety fixes. 2004-07-29 02:59:44 +00:00
Edin Kadribasic
5e605e6dc2 Added memory-limit to the list of excluded force-on options 2004-07-07 12:25:10 +00:00
Wez Furlong
32956a25bf add "clean-pecl" rule for nuking pecl objects 2004-05-25 12:57:45 +00:00
Wez Furlong
8d9ced8282 Fix #27638: not cleaning up object files in win32 build 2004-05-18 21:07:01 +00:00
Wez Furlong
0460174a0d Primitive support for probing headers for functions using a regexp 2004-05-18 09:58:45 +00:00
Wez Furlong
6571a32c87 Add --enable-memory-limit configure option (defaults to off) 2004-05-13 12:14:56 +00:00
Wez Furlong
38795b88ed Add "--disable-all" switch, which will force all arguments to "no" if
they are not specified explicitly. (like the snapshot build, but in
reverse).
2004-04-29 00:17:09 +00:00
Wez Furlong
8307c0204c Fix bug that prevented --without-gd from working 2004-04-15 16:09:36 +00:00
Frank M. Kromann
b2913063e0 Remove debug output 2004-04-08 19:08:37 +00:00
Wez Furlong
5e8d0919cf Add code to fetch the pear bundle based on pear/go-pear-list.php
For the moment, this is turned off, but it should be turned on ready for
the next RC.
(waiting for feedback from Edin and the PEAR guys)
2004-04-08 13:36:11 +00:00
Frank M. Kromann
d956e33ed2 avoid deleting needed files when the .cvsignore file contains empty lines (mysqli) 2004-04-07 18:48:23 +00:00
Marcus Boerger
96b6c7f5f8 Windows part of NAN/INF 2004-03-29 18:58:28 +00:00
Marcus Boerger
861790dede atof("NAN")/atof("INF") do not work there 2004-03-27 01:00:52 +00:00
foobar
44dfac9d96 - Fixed bug #27368 (php.ini-* has lone CR in the end)
# regex taken from win32/sendmail.c (suggested by Sara)
# And Andrei invited Wez to his speech on the cruise.. :)
2004-02-25 23:38:03 +00:00
Wez Furlong
6d131cefc0 name the pecl bundle pecl-foo instead of php-foo-pecl. 2004-02-12 17:58:52 +00:00
Wez Furlong
2c3c75ae55 ensure that install exists before copying files. 2004-02-12 13:01:14 +00:00
Wez Furlong
08a1b6c476 Tidy up "nmake clean" for people that don't have a PECL checkout.
Be paranoid when building a snapshot: if the module is not a core
module (eg: it comes from outside of ext or sapi) and it defaults to "yes",
then force it to become shared.  This will prevent a pecl ext from
accidentally being compiled statically into the core, and prevent that
ext from breaking the core build.  You can still manually force a static
build by explicitly specifying the args for that extension on your configure
line.
2004-02-12 12:30:41 +00:00
Wez Furlong
fed6471bb7 Fix build; line continuation character should be the very last character
on a line, otherwise things b0rk.
2004-02-12 11:55:16 +00:00
Edin Kadribasic
5979799de0 Added zend_exceptions.c to the build 2004-02-12 10:53:08 +00:00
foobar
f4983c0d3f - Renamed all *php4* files to *php5*, changed all php4/PHP4 to php5/PHP5 2004-01-17 13:00:38 +00:00
Wez Furlong
4a7577e4ab include PECL targets in snap build... 2004-01-10 01:11:42 +00:00
Wez Furlong
143ca63846 let informix build 2004-01-09 15:11:31 +00:00
Wez Furlong
fc1d460a99 add a rule to clean pecl things; split up the command line into 3 to
try to avoid possible problems with line-length under VC6
2004-01-09 13:32:20 +00:00
Wez Furlong
2aa33945fc Separate pecl extensions and sapi into their own target, and have mkdist.php
create a separate pecl dir and zip when building a win32 snapshot.
2004-01-09 13:17:58 +00:00
Wez Furlong
af1522ad2d fix PHP_SPL problem when you don't have a pecl checkout. 2004-01-09 11:19:40 +00:00
Wez Furlong
510dd7cca5 add optional dep on spl for simplexml.
Fix dep handling in buildconf
2004-01-08 21:53:48 +00:00
foobar
ccfc46b0aa - Happy new year and PHP 5 for rest of the files too..
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Wez Furlong
611c69b816 update copyright year in win32 resource template 2004-01-08 10:58:27 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
Wez Furlong
4a17522353 Change ordering of CFLAGS for built sources, so that extension specific include dirs
occur before more global include dirs.
This avoids problems when building a bundled lib and you have headers from an
external version of that lib in your global include dir.
2004-01-08 00:25:48 +00:00
Wez Furlong
772875537f win32 build:
gd should build shared by default
don't use php.ini when running mkdist.php
2004-01-07 23:36:36 +00:00
Wez Furlong
f5e4590fd5 tweak snap build 2004-01-07 23:11:54 +00:00
Wez Furlong
48b96c10d2 glob-ify lib checks; this simplifies writing of config.w32 files a little. 2004-01-07 20:06:32 +00:00
Wez Furlong
9720a31bd6 A more general check for dirs under Release or Debug. 2003-12-23 17:20:50 +00:00
Wez Furlong
5d5f2619b3 Proper check for resolv.lib 2003-12-23 16:01:41 +00:00
Wez Furlong
03d426f6a6 implement our own tiny little dependcy tracker and use
it to build distros.
2003-12-23 15:33:13 +00:00
Wez Furlong
8f3f09f315 Attempt to work around apparent problems with WshShell.CurrentDirectory.
# Andi, please try this now
2003-12-23 13:10:54 +00:00
Wez Furlong
b8978cad26 Better implementation of the prefix thing 2003-12-23 12:40:41 +00:00
Frank M. Kromann
835f6beab8 Adding install target that follows the prefix 2003-12-23 05:43:19 +00:00
Wez Furlong
475821225d Implement a glob() function for use by win32 configure. 2003-12-23 01:55:33 +00:00
Wez Furlong
482ae86d1f win32 buildconf now honours extension dependencies and will
try its best to ensure that the config.w32 files are amalgamated
in such a way that modules are processed before their dependents.
2003-12-23 01:54:07 +00:00
Frank M. Kromann
86c302f590 Use a variable name so this actually works. 2003-12-23 00:36:32 +00:00
Frank M. Kromann
3a6a3dd816 Fix build when both a path and the keyword shared is given
Now works for both <path>,shared and shared,<path>
2003-12-23 00:17:15 +00:00
Wez Furlong
4b76493f1e Don't annoy people building snaps/dists using VC6 2003-12-22 22:48:29 +00:00
Wez Furlong
fc292fc259 For GD, build the extension as php_gd2.dll instead of php_gd.dll.
Thanks again Frank :-)
2003-12-22 22:33:43 +00:00
Wez Furlong
42ed91f94c Fix bug #26692; Could not find GetLongPathNameA under NT4.
This fix relies on you having the Platform SDK headers.
Using the new build system, the NewAPIs.h header will be detected
automatically, however, for people building using .dsp files,
you will need to add /DHAVE_NEWAPIS_H=1 to the TSRM project
if you have those newer headers.
2003-12-22 15:01:05 +00:00
Wez Furlong
113165bd95 Add --enable-snapshot-build configure option for win32 build.
Using it will attempt to switch on any configure options that
were left to their default value of "no".

Add a "snap" target to the makefile which will run a sub-process
to make each SAPI and EXT independently, so that the whole process
does not bail out if a particular extension is broken.

Add a way to specify dependencies between extensions in the
config.w32 files so that the makefile will include appropriate rules
and linkage.
2003-12-22 13:13:39 +00:00
Wez Furlong
deb3bff21a Forgot to add embed config.w32, and tweak version resource when CREDITS file is missing. 2003-12-19 23:19:19 +00:00
Wez Furlong
331dc79254 More things for the new build system.
Pi3Web and aolserver build untested (no headers and libs for those here)
2003-12-19 20:39:04 +00:00
Wez Furlong
9ecd238b6b don't overwrite internal_functions.c if the content did not change;
this saves re-linking php*.dll when you add shared extensions to
your config.
2003-12-19 16:55:59 +00:00
Wez Furlong
ee44dd3d79 "Real" cvsclean, works as the unix version does 2003-12-19 12:51:19 +00:00
Wez Furlong
a3075773ee Refinements for new build system:
- Add major + minor version to .dll and .exe headers during linking
- Handle pecl build dir correctly when pecl is a sibling of php-src
- try and guess where your cygwin utils are installed (if you have them)
  so that we can detect bison, flex etc.
- other little refinements
2003-12-19 12:50:11 +00:00
Wez Furlong
72f73b7785 tweak build so that it mirrors the source filesystem layout under the build dir. This allows GD extension to build. 2003-12-07 02:58:56 +00:00
Wez Furlong
3be2b8d7e4 Add dist target to makefile that will generate the file layout for
a win32 binary distro under build_dir/_dist_.
This isn't finalized yet, and you need Edin's distro template.
2003-12-06 16:14:03 +00:00
Wez Furlong
fcdda2e8f8 Fix a problem resolving the php.ini path under win32 terminal services environment.
Remove config-file-path option from configure under win32; it is not used except to display what might have been chosen, so lets default to the getenv() thingy.
2003-12-06 16:04:34 +00:00
Wez Furlong
6b679cd6ef fix ipv6 stuff under vc6 2003-12-06 10:32:35 +00:00
Wez Furlong
dbb152b96a Detect and enable IPv6 support under win32.
The ws2tcpip.h header links to IPv6 functions dynamically
and the generated binary will run on win98 and later.
2003-12-06 00:00:31 +00:00
Wez Furlong
190d8e85b5 2003, not 2002. 2003-12-05 23:13:57 +00:00
Wez Furlong
6201a56070 use /Ox flag for release build (all optimizations on).
If no php_build dir is specified, then look for either of the two
"standard" things in reasonable locations.
Allow CHECK_LIB to search for the "same" library using a ; separated
list of alternatives.
Tweak nsapi config and remove redundant or unused flags.
Add ZTS checks for both isapi and nsapi configs.
2003-12-05 02:41:00 +00:00
Wez Furlong
a93d20b443 Avoid killing files that we didn't generate when making clean. 2003-12-04 17:28:08 +00:00
Frank M. Kromann
d0624948ff fix remaining ext/ 2003-12-04 17:03:20 +00:00
Wez Furlong
a5cf836260 Fix libxml to use static lib if found.
Disable apache and isapi by default.
Add some smarts so that we can really build extensions and SAPI found in php-src/pecl and/or php-src/../pecl.
Only include a logo in the resources if we are building an .exe.
2003-12-04 13:38:47 +00:00
Rob Richards
c561f2f722 return status of have so extra libs return correct status 2003-12-04 12:34:29 +00:00
Wez Furlong
1635a2bdf5 put PHPDLL objects into BUILD_DIR/php so that it is a little
easier to see the main outputs (sapi and extensions)
2003-12-04 02:24:23 +00:00
Wez Furlong
7e73ae1b5e fix a couple of buglets and set version number on DLLs to whatever the PHP major version is. 2003-12-04 02:12:36 +00:00
Wez Furlong
90fe3fbf7f be safe... 2003-12-04 01:59:46 +00:00
Wez Furlong
fb84259217 Search for pecl extensions under php-src/pecl as a convenience for
pecl developers.
Add automatic version info resource generation for SAPI and extension
modules, based on PHP version numbers and info found in the CREDITS file.
As a nice side effect, this lets us add a logo icon to .exe files.
2003-12-04 01:37:52 +00:00
Frank M. Kromann
ca6502866b copy and paste error 2003-12-03 23:48:02 +00:00
Wez Furlong
4ffdb4253a This should solve a few problems with static vs. shared builds for extensions (such as mssql) that require certain CFLAGS to be defined, but not pull in other flags that would affect DLL linkage.
Also fix the iconv file; MSVC doesn't seem to like the #include SYMBOL syntax.
2003-12-03 22:59:48 +00:00
Wez Furlong
883815a9ec VC stores lib path in LIB not LIBS.
Add --with-extra-includes and --with-extra-libs to be able to specify
general additions to those paths from the environment.
2003-12-03 18:31:04 +00:00
Wez Furlong
03afe54c44 avoid breaking paths with spaces when we generate the makefile, and ensure that libs found in the default path are added to the link line 2003-12-03 17:04:30 +00:00
Wez Furlong
c2bd62fcd7 add rule for parsedate 2003-12-03 16:51:23 +00:00
Wez Furlong
1653fbfff6 fix typo 2003-12-03 14:58:05 +00:00
Wez Furlong
93bce45485 Propogate LDFLAGS from extensions to PHPDLL when building them statically.
Move ZendEngine2 to Zend while running buildconf
2003-12-03 14:55:03 +00:00
Wez Furlong
ad84dfa937 Build adjustments. 2003-12-03 14:29:45 +00:00
Wez Furlong
34df2ae239 some tweaks for Frank 2003-12-03 02:47:45 +00:00
Wez Furlong
86c8a87283 avoid vs.net specific option for now 2003-12-03 01:10:03 +00:00
Wez Furlong
68f77f37ba Avoid death when wrapping null/undefined values 2003-12-03 00:56:14 +00:00
Wez Furlong
5b7e8bb4f6 make help more useful 2003-12-03 00:46:40 +00:00
Wez Furlong
2d0eaa3989 Clarify a little. 2003-12-03 00:15:10 +00:00
Wez Furlong
05b9b20ed8 Add new (optional!) win32 build infrastructure.
Will follow up to internals@ shortly.
2003-12-02 23:17:04 +00:00