← Back to team overview

linuxdcpp-team team mailing list archive

[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 3038: updates for mingw64

 

------------------------------------------------------------
revno: 3038
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Sun 2012-09-09 15:55:46 +0200
message:
  updates for mingw64
modified:
  dcpp/compiler.h
  dcpp/stdinc.h
  dwt/include/dwt/GCCHeaders.h
  dwt/include/dwt/aspects/Columns.h
  intl/config-gcc.h
  utils/portmap.cpp
  win32/CrashLogger.cpp
  win32/HtmlToRtf.h
  win32/RichTextBox.cpp


--
lp:dcplusplus
https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk

Your team Dcplusplus-team is subscribed to branch lp:dcplusplus.
To unsubscribe from this branch go to https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk/+edit-subscription
=== modified file 'dcpp/compiler.h'
--- dcpp/compiler.h	2012-06-08 15:27:48 +0000
+++ dcpp/compiler.h	2012-09-09 13:55:46 +0000
@@ -42,7 +42,7 @@
 
 #endif
 
-#if defined(_MSC_VER) || defined(__MINGW32__)
+#if defined(_MSC_VER) || (defined(__MINGW32__) && !defined(_WIN64))
 #define _LL(x) x##ll
 #define _ULL(x) x##ull
 #define I64_FMT "%I64d"

=== modified file 'dcpp/stdinc.h'
--- dcpp/stdinc.h	2012-09-08 13:54:40 +0000
+++ dcpp/stdinc.h	2012-09-09 13:55:46 +0000
@@ -90,7 +90,7 @@
 #endif
 
 // always include
-#include <type_traits>
+#include <utility>
 using std::move;
 
 #endif // !defined(STDINC_H)

=== modified file 'dwt/include/dwt/GCCHeaders.h'
--- dwt/include/dwt/GCCHeaders.h	2012-01-13 20:55:20 +0000
+++ dwt/include/dwt/GCCHeaders.h	2012-09-09 13:55:46 +0000
@@ -389,13 +389,13 @@
 } DTTOPTS, *PDTTOPTS; 
 #endif
 
-// No definition of this struct in mingw
+#ifndef _WIN64 // mingw64 already has this
 typedef struct tagNMTTCUSTOMDRAW
 {
     NMCUSTOMDRAW nmcd;
     UINT uDrawFlags;
 } NMTTCUSTOMDRAW, *LPNMTTCUSTOMDRAW;
-
+#endif
 
 #ifdef max
 #undef max

=== modified file 'dwt/include/dwt/aspects/Columns.h'
--- dwt/include/dwt/aspects/Columns.h	2012-01-13 20:55:20 +0000
+++ dwt/include/dwt/aspects/Columns.h	2012-09-09 13:55:46 +0000
@@ -166,7 +166,7 @@
 
 template<typename WidgetType>
 inline void Columns<WidgetType>::setColumnWidths(const std::vector<int>& widths) {
-	for(auto i = 0u, iend = widths.size(); i < iend; ++i) setColumnWidth(i, widths[i]);
+	for(size_t i = 0, iend = widths.size(); i < iend; ++i) setColumnWidth(i, widths[i]);
 }
 
 template<typename WidgetType>

=== modified file 'intl/config-gcc.h'
--- intl/config-gcc.h	2008-06-25 17:44:34 +0000
+++ intl/config-gcc.h	2012-09-09 13:55:46 +0000
@@ -271,6 +271,9 @@
 
 /* Define to 1 if you have the `mempcpy' function. */
 /* #undef HAVE_MEMPCPY */
+#ifdef _WIN64
+#define HAVE_MEMPCPY 1
+#endif
 
 /* Define to 1 if you have a working `mmap' system call. */
 /* #undef HAVE_MMAP */

=== modified file 'utils/portmap.cpp'
--- utils/portmap.cpp	2012-01-12 17:03:28 +0000
+++ utils/portmap.cpp	2012-09-09 13:55:46 +0000
@@ -3,12 +3,14 @@
 #include <dcpp/stdinc.h>
 
 #include <iostream>
+#include <memory>
 
 #include <dcpp/Mapper_MiniUPnPc.h>
 #include <dcpp/Mapper_NATPMP.h>
 #include <dcpp/Mapper_WinUPnP.h>
 #include <dcpp/ScopedFunctor.h>
 #include <dcpp/Util.h>
+#include <dcpp/w.h>
 
 using namespace std;
 using namespace dcpp;

=== modified file 'win32/CrashLogger.cpp'
--- win32/CrashLogger.cpp	2012-06-16 12:59:52 +0000
+++ win32/CrashLogger.cpp	2012-09-09 13:55:46 +0000
@@ -412,11 +412,11 @@
 #define SymGetModuleInfo64 SymGetModuleInfo
 #define SymGetSymFromAddr64 SymGetSymFromAddr
 
-#elif defined(_MSC_VER)
+#elif defined(_MSC_VER) || defined(__MINGW64__)
 
 #include <dbghelp.h>
 
-// Nothing special for MSVC besides that include file.
+// MSVC & MinGW64 use SEH. Nothing special to add besides that include file.
 
 #else
 
@@ -473,7 +473,7 @@
 	HANDLE const process = GetCurrentProcess();
 	HANDLE const thread = GetCurrentThread();
 
-#ifdef __MINGW32__
+#if defined(__MINGW32__) && !defined(_WIN64)
 	SymSetOptions(SYMOPT_DEFERRED_LOADS);
 #else
 	SymSetOptions(SYMOPT_DEFERRED_LOADS | SYMOPT_LOAD_LINES | SYMOPT_UNDNAME);
@@ -528,10 +528,10 @@
 			continue;
 		fprintf(f, "%s: ", module.ModuleName);
 
-#ifdef __MINGW32__
+#if defined(__MINGW32__) && !defined(_WIN64)
 		// read DWARF debugging info if available.
 		if(module.LoadedImageName[0] ||
-			// LoadedImageName is not always correcly filled in XP...
+			// LoadedImageName is not always correctly filled in XP...
 			::GetModuleFileNameA(reinterpret_cast<HMODULE>(module.BaseOfImage), module.LoadedImageName, sizeof(module.LoadedImageName)))
 		{
 			getDebugInfo(module.LoadedImageName, frame.AddrPC.Offset, file, line, column, function);

=== modified file 'win32/HtmlToRtf.h'
--- win32/HtmlToRtf.h	2012-02-02 23:16:07 +0000
+++ win32/HtmlToRtf.h	2012-09-09 13:55:46 +0000
@@ -19,6 +19,10 @@
 #ifndef DCPLUSPLUS_WIN32_HTML_TO_RTF_H
 #define DCPLUSPLUS_WIN32_HTML_TO_RTF_H
 
+#include <dcpp/typedefs.h>
+
+#include <dwt/forward.h>
+
 /** Convert an HTML string to an RTF string, suitable for insertion within a Rich Edit control.
 Only simple HTML tags (those that are marked as "phrasing content" in the HTML5 spec) are
 supported. */

=== modified file 'win32/RichTextBox.cpp'
--- win32/RichTextBox.cpp	2012-06-01 17:26:20 +0000
+++ win32/RichTextBox.cpp	2012-09-09 13:55:46 +0000
@@ -19,9 +19,12 @@
 #include "stdafx.h"
 #include "RichTextBox.h"
 
+#include <boost/scoped_array.hpp>
+
 #include <dwt/WidgetCreator.h>
 #include <dwt/widgets/Menu.h>
 #include <dwt/widgets/ToolTip.h>
+#include <dwt/util/StringUtils.h>
 
 #include "ParamDlg.h"
 #include "resource.h"