Hi,

When cross-compiling windows dlls with mingw compiler using linux, the
dlls are not installed to the correct location (and the import library
is not installed at all). It seems that some things about the platform
are fixed at runtime.

The patch attached fixes this issue with INSTALL(TARGETS ..).


-- 
Toni Timonen
040-5111863,GPG 0x7984A4FD
Index: Source/cmInstallCommand.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmInstallCommand.cxx,v
retrieving revision 1.15
diff -u -r1.15 cmInstallCommand.cxx
--- Source/cmInstallCommand.cxx 29 Aug 2006 19:04:29 -0000      1.15
+++ Source/cmInstallCommand.cxx 31 Aug 2006 16:59:24 -0000
@@ -385,7 +385,9 @@
         // platforms.  All windows platforms are DLL platforms
         // including cygwin.  Currently no other platform is a DLL
         // platform.
-#if defined(_WIN32) || defined(__CYGWIN__)
+if(this->Makefile->IsOn("WIN32") ||
+   this->Makefile->IsOn("CYGWIN") ||
+   this->Makefile->IsOn("MINGW")) {
         // This is a DLL platform.
         if(archive_destination)
           {
@@ -405,7 +407,7 @@
                                          runtime_configurations,
                                          runtime_component.c_str()));
           }
-#else
+} else {
         // This is a non-DLL platform.
         if(library_destination)
           {
@@ -424,7 +426,7 @@
           this->SetError(e.str().c_str());
           return false;
           }
-#endif
+}
         }
         break;
       case cmTarget::STATIC_LIBRARY:
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to