]> granicus.if.org Git - php/commitdiff
Fixed bug #65406 Enchant broker plugins are in the wrong place in windows
authorAnatol Belski <ab@php.net>
Tue, 17 Mar 2015 08:20:16 +0000 (09:20 +0100)
committerAnatol Belski <ab@php.net>
Tue, 17 Mar 2015 08:20:16 +0000 (09:20 +0100)
NEWS
win32/build/mkdist.php

diff --git a/NEWS b/NEWS
index 46a1102c251695d8452303f11e6500dc7a87b0da..3a8bbad6853b65c61633addb885ba7507d1fab80 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -13,6 +13,10 @@ PHP                                                                        NEWS
   . Fixed bug #69221 (Segmentation fault when using a generator in combination
     with an Iterator). (Nikita)
 
+- Enchant:
+  . Fixed bug #65406 (Enchant broker plugins are in the wrong place in windows
+    builds). (Anatol)
+
 - Filter:
   . Fixed bug #69202 (FILTER_FLAG_STRIP_BACKTICK ignored unless other
     flags are used). (Jeff Welch)
index 640e9b3bd77af473c5c5e0d1b2c2bb0c3bd6a95b..9e4422addca885985117332347e4096ec485b9ab 100644 (file)
@@ -322,13 +322,24 @@ 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',
+       array('', 'glib-2.dll'),
+       array('', 'gmodule-2.dll'),
+       array('lib/enchant', 'libenchant_myspell.dll'),
+       array('lib/enchant', 'libenchant_ispell.dll'),
 );
-foreach ($ENCHANT_DLLS as $filename) {
-       copy($php_build_dir . '/bin/' . $filename, "$dist_dir/" . basename($filename));
+foreach ($ENCHANT_DLLS as $dll) {
+       $dest  = "$dist_dir/$dll[0]";
+       $filename = $dll[1];
+
+       if (!file_exists("$dest") || !is_dir("$dest")) {
+               if (!mkdir("$dest", 0777, true)) {
+                       echo "WARNING: couldn't create '$dest' for enchant plugins ";
+               }
+       }
+
+       if (!copy($php_build_dir . '/bin/' . $filename, "$dest/" . basename($filename))) {
+                       echo "WARNING: couldn't copy $filename into the dist dir";
+       }
 }
 
 /* and those for pecl */