Bug #52119 make_win_bin_dist thinks it has innodb plugin
Submitted: 17 Mar 2010 0:55 Modified: 7 Sep 2010 12:22
Reporter: jack andrews Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:mysql-5.1-telco-7.0 OS:Windows
Assigned to: jack andrews CPU Architecture:Any

[17 Mar 2010 0:55] jack andrews
Description:
running ./scripts/make_win_bin_dist mysql-5.1-telco-7.0
fails for cluster on windows:

$ ./scripts/make_win_bin_dist mysql-5.1-telco-7.0
[snip]
cp: cannot stat `storage/innodb_plugin/relwithdebinfo/ha_innodb_plugin.dll': No such file or directory

How to repeat:
.

Suggested fix:
the workaround the build team are using is to remove the storage/innodb_plugin directory.  i propose that the script should check for binaries in storage/innodb_plugin and include them if they exist.
[17 Mar 2010 1:24] jack andrews
=== modified file 'scripts/make_win_bin_dist'
--- scripts/make_win_bin_dist	2010-03-12 11:56:09 +0000
+++ scripts/make_win_bin_dist	2010-03-17 01:18:08 +0000
@@ -289,7 +289,7 @@
    regex/$TARGET/regex.lib \
    strings/$TARGET/strings.lib \
    zlib/$TARGET/zlib.lib $DESTDIR/lib/opt/
-if [ -d storage/innodb_plugin ]; then
+if [ -d storage/innodb_plugin/$TARGET ]; then
   cp storage/innodb_plugin/$TARGET/ha_innodb_plugin.dll \
      $DESTDIR/lib/plugin/
 fi
@@ -301,7 +301,7 @@
      regex/$TARGET/regex.pdb \
      strings/$TARGET/strings.pdb \
      zlib/$TARGET/zlib.pdb $DESTDIR/lib/opt/
-  if [ -d storage/innodb_plugin ]; then
+  if [ -d storage/innodb_plugin/$TARGET ]; then
     cp storage/innodb_plugin/$TARGET/ha_innodb_plugin.pdb \
        $DESTDIR/lib/plugin/
   fi
@@ -325,7 +325,7 @@
      strings/debug/strings.pdb \
      zlib/debug/zlib.lib \
      zlib/debug/zlib.pdb $DESTDIR/lib/debug/
-  if [ -d storage/innodb_plugin ]; then
+  if [ -d storage/innodb_plugin/debug ]; then
     cp storage/innodb_plugin/debug/ha_innodb_plugin.dll \
        storage/innodb_plugin/debug/ha_innodb_plugin.lib \
        storage/innodb_plugin/debug/ha_innodb_plugin.pdb \
@@ -337,14 +337,16 @@
 # Copy the test directory
 # ----------------------------------------------------------------------
 
-mkdir $DESTDIR/mysql-test
-cp mysql-test/mysql-test-run.pl $DESTDIR/mysql-test/
-cp mysql-test/mysql-stress-test.pl $DESTDIR/mysql-test/
-cp mysql-test/README $DESTDIR/mysql-test/
-cp -R mysql-test/{t,r,include,suite,std_data,lib,collections} $DESTDIR/mysql-test/
-
+if [ -f mysql-test/mysql-test-run.pl ]; then
+  mkdir $DESTDIR/mysql-test
+  cp mysql-test/mysql-test-run.pl $DESTDIR/mysql-test/
+  cp mysql-test/mysql-stress-test.pl $DESTDIR/mysql-test/
+  cp mysql-test/README $DESTDIR/mysql-test/
+  cp -R mysql-test/{t,r,include,suite,std_data,lib,collections} $DESTDIR/mysql-test/
+fi
 # Note that this will not copy "extra" if a soft link
-if [ -d mysql-test/extra ] ; then
+if [ -d mysql-test/extra ] 
+then
   mkdir $DESTDIR/mysql-test/extra
   cp -pR mysql-test/extra/* $DESTDIR/mysql-test/extra/
 fi
@@ -367,7 +369,9 @@
 
 for i in $mysql_scripts
 do
-  cp scripts/$i $DESTDIR/scripts/$i
+  if [ -f $i ]; then
+    cp scripts/$i $DESTDIR/scripts/$i
+  fi
 done
 
 cp -pR sql/share $DESTDIR/
[22 Mar 2010 9:30] Bernd Ocklin
If we take in this change it should go to mainline. Thus adding Kent for review. 

Kent, please free to add other reviewer if you are not the maintainer.