]> Creatis software - bbtk.git/commitdiff
#3203 BBTK Feature New Normal vtk7itk4wx3-mingw64
authorEduardo DAVILA <davila@creatis.insa-lyon.fr>
Tue, 17 Jul 2018 11:36:54 +0000 (13:36 +0200)
committerEduardo DAVILA <davila@creatis.insa-lyon.fr>
Tue, 17 Jul 2018 11:36:54 +0000 (13:36 +0200)
kernel/appli/bbi/CMakeLists.txt
kernel/appli/bbi/bbi.cxx
kernel/cmake/BBTKFindLibraries.cmake
kernel/src/bbtkSystem.h
kernel/src/bbtkUtilities.cxx

index a8a2ddbce007f178a9b779c6eea37661544bf168..0422e38643890a186938c7049f0bf53d1080d980 100644 (file)
@@ -37,7 +37,11 @@ SET(SOURCES
 
 IF(BBTK_USE_WXWIDGETS AND WIN32)
   ADD_EXECUTABLE(bbi WIN32 ${SOURCES})  
-  SET_TARGET_PROPERTIES(bbi PROPERTIES LINK_FLAGS /subsystem:console )
+  IF(MINGW)
+       SET_TARGET_PROPERTIES(bbi PROPERTIES LINK_FLAGS -mconsole )
+  ELSE(MINGW)
+       SET_TARGET_PROPERTIES(bbi PROPERTIES LINK_FLAGS /subsystem:console )
+  ENDIF(MINGW)
 ELSE(BBTK_USE_WXWIDGETS AND WIN32)
   ADD_EXECUTABLE(bbi MACOSX_BUNDLE ${SOURCES})  
 ENDIF(BBTK_USE_WXWIDGETS AND WIN32)
index c594a081f5d939f8e5d30948b8eb1b3b3197bd5c..3f60890e7b08383eb51c712159e226598ef2106e 100644 (file)
@@ -301,9 +301,14 @@ int main(int argc, char* argv[])
 //Borrame
 //FILE *ff; ff = fopen ("/tmp/wt.log","a+"); fprintf(ff,"EED main C\n"); fclose(ff);
 
-    return WinMain(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), SW_SHOWNORMAL);
+       // EED 2018-07-16
+       char buffer[1500];
+       wcstombs(buffer , ::GetCommandLine() , 1500 );
+    return WinMain(::GetModuleHandle(NULL), NULL, buffer , SW_SHOWNORMAL);
+//    return WinMain(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), SW_SHOWNORMAL);
 }
 
+
 #else 
 //==========================================================================
 // OTHER ( Linux... )
index a57a7079a3ad621cb816cf52e1c92094fcdbad09..4ae316bba7737d3d9ea9ac601f76c576644b1907 100644 (file)
@@ -96,7 +96,7 @@ MESSAGE(STATUS "")
 IF(BBTK_USE_WXWIDGETS)
   SET(BBTK_LINK_LIBRARIES
     ${BBTK_LINK_LIBRARIES}
-    ${WXWIDGETS_LIBRARIES} 
+    ${WXWIDGETS_LIBRARIES}
     )
 ENDIF(BBTK_USE_WXWIDGETS)
 #-----------------------------------------------------------------------------
@@ -138,6 +138,14 @@ IF(UNIX)
 ENDIF(UNIX)
 #-----------------------------------------------------------------------------
 
+# mingw 
+IF(MINGW)
+  SET(BBTK_LINK_LIBRARIES
+    ${BBTK_LINK_LIBRARIES}
+    dl) 
+ENDIF(MINGW)
+
+
 #-----------------------------------------------------------------------------
 MESSAGE(STATUS "")
 MESSAGE(STATUS "=======================================")
index 558af50760310662e9a01bf08cfe0151c2ac301b..ecd60997d2d0c817b0898c589a96e5af9110b58e 100644 (file)
 
 
 #if defined(_WIN32) 
-  // IF NOT DEF THEN INTERNAL COMPILER ERROR WITH BOOST 1.37 ON VISUAL C++ 
-  #define BOOST_SP_NO_SP_CONVERTIBLE
+       #ifdef _MSC_VER
+         // IF NOT DEF THEN INTERNAL COMPILER ERROR WITH BOOST 1.37 ON VISUAL C++ 
+         #define BOOST_SP_NO_SP_CONVERTIBLE
+       #endif
 #endif
 
 #if defined(_WIN32) 
index 7e85dc76787497b9e350fc332188b4283f88304b..a7285fed13e6e80efd8b93cdba1d9e3747f26acb 100644 (file)
 #include "bbtkUtilities.h"
 #include "bbtkMessageManager.h"
 
+//EED 2018-07-16
+#if defined(_WIN32) 
+       #include <shlwapi.h>
+#endif
+
 #if defined(MACOSX) // assume this is OSX 
 # include <sys/param.h>
 # include <mach-o/dyld.h> // _NSGetExecutablePath : must add -framework CoreFoundation to link line 
@@ -633,7 +638,11 @@ namespace bbtk
 #endif /* LINUX */
     
 #ifdef WIN32
-    long result = GetModuleFileName(NULL, pname, pathsize);
+//2018-07-06 mingw64
+    wchar_t pname2[512];
+       mbstowcs(pname2,pname,strlen(pname)+1);
+    long result = GetModuleFileName(NULL, pname2, pathsize);
+//    long result = GetModuleFileName(NULL, pname, pathsize);
     if (result > 0)
       {
        /* fix up the dir slashes... */