Browse Source

- add custom DLL to the package and fix the path to the deps bin (needs absolute path in some cases)

experimental/5.3-FPM
Pierre Joye 17 years ago
parent
commit
97595a14a5
  1. 2
      win32/build/Makefile
  2. 1
      win32/build/config.w32
  3. 33
      win32/build/mkdist.php

2
win32/build/Makefile

@ -128,7 +128,7 @@ build-dist: $(BUILD_DIR)\deplister.exe
-del /f /q $(BUILD_DIR)\php-$(PHP_VERSION_STRING)$(PHP_ZTS_ARCHIVE_POSTFIX)-Win32-$(PHP_COMPILER_SHORT)-$(PHP_ARCHITECTURE).zip
-del /f /q $(BUILD_DIR)\php-debug-pack-$(PHP_VERSION_STRING)$(PHP_ZTS_ARCHIVE_POSTFIX)-Win32-$(PHP_COMPILER_SHORT)-$(PHP_ARCHITECTURE).zip
-del /f /q $(BUILD_DIR)\pecl-$(PHP_VERSION_STRING)$(PHP_ZTS_ARCHIVE_POSTFIX)-Win32-$(PHP_COMPILER_SHORT)-$(PHP_ARCHITECTURE).zip
$(BUILD_DIR)\php.exe -d date.timezone=UTC -n -dphar.readonly=0 win32/build/mkdist.php "$(BUILD_DIR)" "$(PHPDLL)" "$(SAPI_TARGETS)" "$(EXT_TARGETS) $(PHP_EXTRA_DIST_FILES)" "$(PECL_TARGETS) $(PECL_EXTRA_DIST_FILES)" "$(SNAPSHOT_TEMPLATE)"
$(BUILD_DIR)\php.exe -d date.timezone=UTC -n -dphar.readonly=0 win32/build/mkdist.php "$(BUILD_DIR)" "$(PHP_BUILD)" "$(PHPDLL)" "$(SAPI_TARGETS)" "$(EXT_TARGETS) $(PHP_EXTRA_DIST_FILES)" "$(PECL_TARGETS) $(PECL_EXTRA_DIST_FILES)" "$(SNAPSHOT_TEMPLATE)"
cd $(BUILD_DIR)\php-$(PHP_VERSION_STRING)
-$(ZIP) -9 -q -r ..\php-$(PHP_VERSION_STRING)$(PHP_ZTS_ARCHIVE_POSTFIX)-Win32-$(PHP_COMPILER_SHORT)-$(PHP_ARCHITECTURE).zip .
cd ..\..

1
win32/build/config.w32

@ -251,6 +251,7 @@ if (PHP_PHP_BUILD == 'no') {
}
}
}
PHP_PHP_BUILD = FSO.GetAbsolutePathName(PHP_PHP_BUILD);
}
DEFINE("PHP_BUILD", PHP_PHP_BUILD);

33
win32/build/mkdist.php

@ -2,11 +2,12 @@
/* piece together a windows binary distro */
$build_dir = $argv[1];
$phpdll = $argv[2];
$sapi_targets = explode(" ", $argv[3]);
$ext_targets = explode(" ", $argv[4]);
$pecl_targets = explode(" ", $argv[5]);
$snapshot_template = $argv[6];
$php_build_dir = $argv[2];
$phpdll = $argv[3];
$sapi_targets = explode(" ", $argv[4]);
$ext_targets = explode(" ", $argv[5]);
$pecl_targets = explode(" ", $argv[6]);
$snapshot_template = $argv[7];
$is_debug = preg_match("/^debug/i", $build_dir);
@ -295,7 +296,7 @@ foreach ($extra_dll_deps as $dll) {
/* try template dir */
$tdll = $snapshot_template . "/dlls/" . basename($dll);
if (!file_exists($tdll)) {
$tdll = '../deps/bin/' . basename($dll);
$tdll = $php_build_dir . '/bin/' . basename($dll);
if (!file_exists($tdll)) {
echo "WARNING: distro depends on $dll, but could not find it on your system\n";
continue;
@ -309,11 +310,23 @@ foreach ($extra_dll_deps as $dll) {
/* TODO:
add sanity check and test if all required DLLs are present, per version
This version works at least for 3.6, 3.8 and 4.0 (5.3-vc6, 5.3-vc9 and HEAD).
Add ADD_DLLS to add extra DLLs like dynamic dependencies for standard
deps. For example, libenchant.dll loads libenchant_myspell.dll or
libenchant_ispell.dll
*/
$ICU_DLLS = '../deps/bin/' . 'icu*.dll';
$ICU_DLLS = $php_build_dir . '/icu*.dll';
foreach (glob($ICU_DLLS) as $filename) {
copy($filename, "$dist_dir/" . basename($filename));
}
$ENCHANT_DLLS = array(
'glib-2.dll',
'gmodule-2.dll',
'libenchant_myspell.dll',
'libenchant_ispell.dll',
);
foreach ($ENCHANT_DLLS as $filename) {
copy($php_build_dir . '/bin/' . $filename, "$dist_dir/" . basename($filename));
}
/* and those for pecl */
foreach ($pecl_dll_deps as $dll) {
@ -332,6 +345,7 @@ foreach ($pecl_dll_deps as $dll) {
}
copy($dll, "$pecl_dir/" . basename($dll));
}
function copy_dir($source, $dest)
{
if (!is_dir($dest)) {
@ -365,7 +379,9 @@ function copy_test_dir($directory, $dest)
}
if ($directory == 'tests') {
mkdir($dest . '/tests', 0775, true);
if (!is_dir($dest . '/tests')) {
mkdir($dest . '/tests', 0775, true);
}
copy_dir($directory, $dest . '/tests/');
return false;
@ -439,6 +455,7 @@ $dirs = array(
foreach ($dirs as $dir) {
copy_test_dir($dir, $test_dir);
}
/* change this next line to true to use good-old
* hand-assembled go-pear-bundle from the snapshot template */
$use_pear_template = true;

Loading…
Cancel
Save