conemu: new package

This commit is contained in:
martell
2014-11-18 18:57:26 +00:00
parent de6ba7daf2
commit 6b52abb0c7
20 changed files with 1747 additions and 0 deletions

View File

@@ -0,0 +1,268 @@
From 6805b6cd96914dff2fcda7385b7f71f35e70fc3c Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:19:14 +0000
Subject: [PATCH 01/18] added support for a PREFIX in makefile
---
src/ConEmu/makefile_gcc | 10 +++++-----
src/ConEmuBg/makefile_gcc | 12 ++++++------
src/ConEmuC/makefile_gcc | 6 +++---
src/ConEmuCD/makefile_gcc | 12 ++++++------
src/ConEmuDW/makefile_gcc | 12 ++++++------
src/ConEmuHk/makefile_gcc | 12 ++++++------
src/ConEmuLn/makefile_gcc | 12 ++++++------
src/ConEmuTh/makefile_gcc | 12 ++++++------
src/KeyEvents.SysLog/makefile_gcc | 4 ++--
9 files changed, 46 insertions(+), 46 deletions(-)
diff --git a/src/ConEmu/makefile_gcc b/src/ConEmu/makefile_gcc
index c5d400f..13ed7f9 100644
--- a/src/ConEmu/makefile_gcc
+++ b/src/ConEmu/makefile_gcc
@@ -181,8 +181,8 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
RM = rm -f
RMDIR = rmdir
CP = cp -f
@@ -190,9 +190,9 @@ M4 = tools/m4 -P -DFARBIT=$(DIRBIT)
GAWK = tools/gawk
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) $(DEBUGFLAGS) -mwindows -fexceptions -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti $(CXXWIDE) $(USERCPP)
CCFLAGS = $(DEBUGFLAGS) -mwindows -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing $(CCWIDE) $(USERCPP)
LNKFLAGS = $(DEBUGLINKFLAGS) -mwindows $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32 $(USERLIBS)
diff --git a/src/ConEmuBg/makefile_gcc b/src/ConEmuBg/makefile_gcc
index 98acbbb..43fffa3 100644
--- a/src/ConEmuBg/makefile_gcc
+++ b/src/ConEmuBg/makefile_gcc
@@ -91,18 +91,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/ConEmuC/makefile_gcc b/src/ConEmuC/makefile_gcc
index e03bf01..14d5556 100644
--- a/src/ConEmuC/makefile_gcc
+++ b/src/ConEmuC/makefile_gcc
@@ -82,8 +82,8 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
RM = rm -f
RMDIR = rmdir
CP = cp -f
@@ -91,7 +91,7 @@ M4 = tools/m4 -P -DFARBIT=$(DIRBIT)
GAWK = tools/gawk
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres -D__FARBIT__=$(DIRBIT)
+WINDRES = $(PREFIX)windres -D__FARBIT__=$(DIRBIT)
DEFINES = -D FAR_ALPHA_VERSION -D UNICODE -D _UNICODE
CXXFLAGS = $(ENCFLAGS) -pipe -Os $(DEFINES) -funsigned-char -fomit-frame-pointer -fno-exceptions -fno-rtti -Wall -Wno-missing-braces -Wno-unknown-pragmas -Wno-switch $(CXXWIDE)
CFLAGS = -pipe -Os $(DEFINES) -funsigned-char -fomit-frame-pointer -fno-exceptions -Wall -Wno-missing-braces -Wno-unknown-pragmas -Wno-switch $(CCWIDE)
diff --git a/src/ConEmuCD/makefile_gcc b/src/ConEmuCD/makefile_gcc
index 2ed2019..b23f8e8 100644
--- a/src/ConEmuCD/makefile_gcc
+++ b/src/ConEmuCD/makefile_gcc
@@ -109,18 +109,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/ConEmuDW/makefile_gcc b/src/ConEmuDW/makefile_gcc
index ed2c03d..9b8b457 100644
--- a/src/ConEmuDW/makefile_gcc
+++ b/src/ConEmuDW/makefile_gcc
@@ -90,18 +90,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/ConEmuHk/makefile_gcc b/src/ConEmuHk/makefile_gcc
index 087712b..e2de4df 100644
--- a/src/ConEmuHk/makefile_gcc
+++ b/src/ConEmuHk/makefile_gcc
@@ -98,18 +98,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll $(BASEADDRESS) -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/ConEmuLn/makefile_gcc b/src/ConEmuLn/makefile_gcc
index 35141b5..7eedee6 100644
--- a/src/ConEmuLn/makefile_gcc
+++ b/src/ConEmuLn/makefile_gcc
@@ -88,18 +88,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/ConEmuTh/makefile_gcc b/src/ConEmuTh/makefile_gcc
index a763658..36dcee5 100644
--- a/src/ConEmuTh/makefile_gcc
+++ b/src/ConEmuTh/makefile_gcc
@@ -97,18 +97,18 @@ ifdef EXCLUDECRT
COMMONLIB =
endif
-CXX = g++
-CC = gcc
-DLLTOOL = dlltool
+CXX = $(PREFIX)g++
+CC = $(PREFIX)gcc
+DLLTOOL = $(PREFIX)dlltool
RM = rm -f
RMDIR = rmdir
CP = cp -f
M4 = m4 -P
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres
-AR = ar
-RANLIB = ranlib
+WINDRES = $(PREFIX)windres
+AR = $(PREFIX)ar
+RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
LNKFLAGS = -mdll -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
diff --git a/src/KeyEvents.SysLog/makefile_gcc b/src/KeyEvents.SysLog/makefile_gcc
index 42b6af9..8d9b04b 100644
--- a/src/KeyEvents.SysLog/makefile_gcc
+++ b/src/KeyEvents.SysLog/makefile_gcc
@@ -18,7 +18,7 @@ NOSTART =
NODEFLIBS =
-CXX = g++
+CXX = $(PREFIX)g++
RM = rm -f
RMDIR = rmdir
CP = cp -f
@@ -26,7 +26,7 @@ M4 = tools/m4 -P -DFARBIT=$(DIRBIT)
GAWK = tools/gawk
MV = mv -f
MKDIR = mkdir -p
-WINDRES = windres -D__FARBIT__=$(DIRBIT)
+WINDRES = $(PREFIX)windres -D__FARBIT__=$(DIRBIT)
DEFINES = -D FAR_ALPHA_VERSION -D UNICODE -D _UNICODE
CXXFLAGS = $(ENCFLAGS) -mno-cygwin -pipe -Os $(DEFINES) -funsigned-char -fomit-frame-pointer -fno-exceptions -fno-rtti -Wall -Wno-missing-braces -Wno-unknown-pragmas -Wno-switch $(CXXWIDE)
CFLAGS = -mno-cygwin -pipe -Os $(DEFINES) -funsigned-char -fomit-frame-pointer -fno-exceptions -Wall -Wno-missing-braces -Wno-unknown-pragmas -Wno-switch $(CCWIDE)
--
2.1.3

View File

@@ -0,0 +1,25 @@
From 912ea1a9c0f910f993b9acb77e5a6368ee50f59d Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 19:10:32 +0000
Subject: [PATCH 02/18] Dialog Flags added to Mingw-w64
---
src/ConEmu/ConfirmDlg.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmu/ConfirmDlg.h b/src/ConEmu/ConfirmDlg.h
index 4c4a591..a3568a9 100644
--- a/src/ConEmu/ConfirmDlg.h
+++ b/src/ConEmu/ConfirmDlg.h
@@ -49,7 +49,7 @@ struct ConfirmCloseParam
};
int ConfirmCloseConsoles(const ConfirmCloseParam& Parm);
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
enum _TASKDIALOG_FLAGS
{
--
2.1.3

View File

@@ -0,0 +1,25 @@
From 395338a039dfa97ea462eae7b74104e89152a9b5 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 19:50:49 +0000
Subject: [PATCH 03/18] SecureZeroMemory support already exists in Mingw-w64
---
src/common/RConStartArgs.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/common/RConStartArgs.cpp b/src/common/RConStartArgs.cpp
index b1548d5..8efecb4 100644
--- a/src/common/RConStartArgs.cpp
+++ b/src/common/RConStartArgs.cpp
@@ -43,7 +43,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define MCHKHEAP PRAGMA_ERROR("Restricted in ConEmuHk")
#endif
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#define SecureZeroMemory(p,s) memset(p,0,s)
#endif
--
2.1.3

View File

@@ -0,0 +1,68 @@
From ba047645d2c97971609f541641df415c2be975b3 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:45:07 +0000
Subject: [PATCH 04/18] ShObjIdl support already exists in mingw-w64
---
src/ConEmu/BaseDragDrops.cpp | 2 +-
src/ConEmu/DragDropData.cpp | 2 +-
src/ConEmu/TaskBar.cpp | 2 +-
src/ConEmuHk/ShellProcessor.cpp | 2 ++
4 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/ConEmu/BaseDragDrops.cpp b/src/ConEmu/BaseDragDrops.cpp
index 5c91bde..3e017a8 100644
--- a/src/ConEmu/BaseDragDrops.cpp
+++ b/src/ConEmu/BaseDragDrops.cpp
@@ -8,7 +8,7 @@
#pragma warning(default: 4091)
#include <tchar.h>
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#include "ShObjIdl_Part.h"
#endif // __GNUC__
diff --git a/src/ConEmu/DragDropData.cpp b/src/ConEmu/DragDropData.cpp
index f47de80..23fde66 100644
--- a/src/ConEmu/DragDropData.cpp
+++ b/src/ConEmu/DragDropData.cpp
@@ -34,7 +34,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#pragma warning(disable: 4091)
#include <shlobj.h>
#pragma warning(default: 4091)
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#include "ShObjIdl_Part.h"
#endif
diff --git a/src/ConEmu/TaskBar.cpp b/src/ConEmu/TaskBar.cpp
index 64478d5..8e8ca11 100644
--- a/src/ConEmu/TaskBar.cpp
+++ b/src/ConEmu/TaskBar.cpp
@@ -33,7 +33,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "Options.h"
// COM TaskBarList interface support
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#include "ShObjIdl_Part.h"
const CLSID CLSID_TaskbarList = {0x56FDF344, 0xFD6D, 0x11d0, {0x95, 0x8A, 0x00, 0x60, 0x97, 0xC9, 0xA0, 0x90}};
const IID IID_ITaskbarList4 = {0xc43dc798, 0x95d1, 0x4bea, {0x90, 0x30, 0xbb, 0x99, 0xe2, 0x98, 0x3a, 0x1a}};
diff --git a/src/ConEmuHk/ShellProcessor.cpp b/src/ConEmuHk/ShellProcessor.cpp
index 71b6e11..6a340f2 100644
--- a/src/ConEmuHk/ShellProcessor.cpp
+++ b/src/ConEmuHk/ShellProcessor.cpp
@@ -34,7 +34,9 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <Shlobj.h>
#pragma warning(default: 4091)
#include "../ConEmuCD/ExitCodes.h"
+#if defined(__GNUC__) && !defined(__MINGW32__)
#include "../ConEmu/ShObjIdl_Part.h"
+#endif
#include "../common/common.hpp"
#include "../common/ConEmuCheck.h"
#include "SetHook.h"
--
2.1.3

View File

@@ -0,0 +1,39 @@
From e8c056d8dfeb50d4e1ccae99afbfad9e2f41e518 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:46:57 +0000
Subject: [PATCH 05/18] Use InterlockedIncrement when compiling under mingw-w64
---
src/ConEmu/ConEmu.h | 2 +-
src/ConEmuCD/ConEmuC.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/ConEmu/ConEmu.h b/src/ConEmu/ConEmu.h
index 91c5623..4d962a7 100644
--- a/src/ConEmu/ConEmu.h
+++ b/src/ConEmu/ConEmu.h
@@ -40,7 +40,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define GET_X_LPARAM(inPx) ((int)(short)LOWORD(inPx))
#define GET_Y_LPARAM(inPy) ((int)(short)HIWORD(inPy))
-#ifndef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
diff --git a/src/ConEmuCD/ConEmuC.h b/src/ConEmuCD/ConEmuC.h
index c82485e..ca4540a 100644
--- a/src/ConEmuCD/ConEmuC.h
+++ b/src/ConEmuCD/ConEmuC.h
@@ -665,7 +665,7 @@ extern BOOL gbInRecreateRoot;
#include "ExitCodes.h"
-#ifndef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
--
2.1.3

View File

@@ -0,0 +1,25 @@
From cde6c617ea13f55fce2bf12e0f5cf512fb184f4e Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:48:13 +0000
Subject: [PATCH 06/18] IID_IDragSourceHelper2 is already defined in mingw-w64
---
src/ConEmu/DragDropData.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmu/DragDropData.cpp b/src/ConEmu/DragDropData.cpp
index 23fde66..bafd69e 100644
--- a/src/ConEmu/DragDropData.cpp
+++ b/src/ConEmu/DragDropData.cpp
@@ -77,7 +77,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#endif
// COM TaskBarList interface support
-#if defined(__GNUC__) && defined(USE_DRAG_HELPER)
+#if defined(__GNUC__) && defined(USE_DRAG_HELPER) && !defined(__MINGW64_VERSION_MAJOR)
const IID IID_IDragSourceHelper2 = {0x83E07D0D, 0x0C5F, 0x4163, {0xBF, 0x1A, 0x60, 0xB2, 0x74, 0x05, 0x1E, 0x40}};
#endif
--
2.1.3

View File

@@ -0,0 +1,25 @@
From 54d68aa85aba5372fc1cbc3cad25ca4514c92ef6 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:49:15 +0000
Subject: [PATCH 07/18] wmemmove_s is available in mingw-w64
---
src/ConEmu/Header.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmu/Header.h b/src/ConEmu/Header.h
index 8dab248..7683612 100644
--- a/src/ConEmu/Header.h
+++ b/src/ConEmu/Header.h
@@ -52,7 +52,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "../common/Memory.h"
#include "../common/MAssert.h"
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#define wmemmove_s(d,ds,s,ss) wmemmove(d,s,ss)
#define SecureZeroMemory(p,s) memset(p,0,s)
#endif
--
2.1.3

View File

@@ -0,0 +1,26 @@
From 78d260d023005113a8c3df27de9fb6a337b7bad5 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:50:15 +0000
Subject: [PATCH 08/18] use _printf because printf can be undefined in this
case
---
src/ConEmuCD/ConsoleMain.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmuCD/ConsoleMain.cpp b/src/ConEmuCD/ConsoleMain.cpp
index eae3afa..769bd96 100644
--- a/src/ConEmuCD/ConsoleMain.cpp
+++ b/src/ConEmuCD/ConsoleMain.cpp
@@ -3384,7 +3384,7 @@ int DoParseArgs(LPCWSTR asCmdLine)
_printf("Standard shell splitter\n");
for (int j = 0; j < iShellCount; j++)
{
- printf("%u: `", j);
+ _printf("%u: `", j);
_wprintf(ppszShl[j]);
_printf("`\n");
}
--
2.1.3

View File

@@ -0,0 +1,26 @@
From 6d09ddb72d41ba46c119a60b5060f6f7eaae3ee5 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:51:04 +0000
Subject: [PATCH 09/18] Internet structs and defines are already defined in
mingw-w64
---
src/ConEmuCD/Downloader.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmuCD/Downloader.cpp b/src/ConEmuCD/Downloader.cpp
index b20794d..ec883ff 100644
--- a/src/ConEmuCD/Downloader.cpp
+++ b/src/ConEmuCD/Downloader.cpp
@@ -34,7 +34,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "../common/MSectionSimple.h"
#include "Downloader.h"
-#ifdef __GNUC__
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
typedef struct {
DWORD dwMajorVersion;
DWORD dwMinorVersion;
--
2.1.3

View File

@@ -0,0 +1,25 @@
From 55a4a591c72047aea8b674bf2ae849850d8d7141 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Mon, 10 Nov 2014 20:52:01 +0000
Subject: [PATCH 10/18] __forceinline is already defined in mingw-w64
---
src/ConEmu/kl_parts.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ConEmu/kl_parts.h b/src/ConEmu/kl_parts.h
index c302109..3fd7709 100644
--- a/src/ConEmu/kl_parts.h
+++ b/src/ConEmu/kl_parts.h
@@ -24,7 +24,7 @@ typedef unsigned __int16 u16;
typedef unsigned __int64 u64;
typedef DWORD u32;
-#if defined(__GNUC__)
+#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
#define __forceinline __inline__
#endif
template <class T>__forceinline const T& klMin(const T &a, const T &b) {return a < b ? a : b;}
--
2.1.3

View File

@@ -0,0 +1,81 @@
From 640ad5d0ef5287c077baf4d78f8cec14919da0bf Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:15:34 +0000
Subject: [PATCH 11/18] fixed interlocked2 for mingw-w64
---
src/ConEmu/ConEmu.h | 2 +-
src/ConEmuCD/ConEmuC.h | 2 +-
src/ConEmuHk/ConEmuHooks.h | 2 +-
src/ConEmuHk/SetHook.cpp | 2 +-
src/common/MConHandle.cpp | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/ConEmu/ConEmu.h b/src/ConEmu/ConEmu.h
index 4d962a7..558d450 100644
--- a/src/ConEmu/ConEmu.h
+++ b/src/ConEmu/ConEmu.h
@@ -40,7 +40,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define GET_X_LPARAM(inPx) ((int)(short)LOWORD(inPx))
#define GET_Y_LPARAM(inPy) ((int)(short)HIWORD(inPy))
-#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
diff --git a/src/ConEmuCD/ConEmuC.h b/src/ConEmuCD/ConEmuC.h
index ca4540a..5f5bb27 100644
--- a/src/ConEmuCD/ConEmuC.h
+++ b/src/ConEmuCD/ConEmuC.h
@@ -665,7 +665,7 @@ extern BOOL gbInRecreateRoot;
#include "ExitCodes.h"
-#if defined(__GNUC__) && !defined(__MINGW64_VERSION_MAJOR)
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
diff --git a/src/ConEmuHk/ConEmuHooks.h b/src/ConEmuHk/ConEmuHooks.h
index f1f0a4d..ace7044 100644
--- a/src/ConEmuHk/ConEmuHooks.h
+++ b/src/ConEmuHk/ConEmuHooks.h
@@ -201,7 +201,7 @@ extern "C" {
#endif
#ifdef USEHOOKLOG
- #ifndef __GNUC__
+ #if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
diff --git a/src/ConEmuHk/SetHook.cpp b/src/ConEmuHk/SetHook.cpp
index 2803a9e..42f756c 100644
--- a/src/ConEmuHk/SetHook.cpp
+++ b/src/ConEmuHk/SetHook.cpp
@@ -51,7 +51,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <windows.h>
#include <Tlhelp32.h>
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
diff --git a/src/common/MConHandle.cpp b/src/common/MConHandle.cpp
index dcdb507..e818f88 100644
--- a/src/common/MConHandle.cpp
+++ b/src/common/MConHandle.cpp
@@ -142,7 +142,7 @@ MConHandle::MConHandle(LPCWSTR asName)
//}
};
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
#define _InterlockedIncrement InterlockedIncrement
--
2.1.3

View File

@@ -0,0 +1,28 @@
From cdd911925374a45f16decf0a03ff8ad442584490 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:17:02 +0000
Subject: [PATCH 12/18] AssertMessageBox is not supported in mingw-w64
---
src/ConEmu/ConEmuApp.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/ConEmu/ConEmuApp.cpp b/src/ConEmu/ConEmuApp.cpp
index e275795..d0ce118 100644
--- a/src/ConEmu/ConEmuApp.cpp
+++ b/src/ConEmu/ConEmuApp.cpp
@@ -3336,7 +3336,11 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
gnOsVer = ((gOSVer.dwMajorVersion & 0xFF) << 8) | (gOSVer.dwMinorVersion & 0xFF);
HeapInitialize();
RemoveOldComSpecC();
+
+#if !defined(__MINGW64_VERSION_MAJOR)
AssertMsgBox = MsgBox;
+#endif
+
gn_MainThreadId = GetCurrentThreadId();
// On Vista and higher ensure our process will be
--
2.1.3

View File

@@ -0,0 +1,39 @@
From 2888ceac4970c193543453febf9208cd5dc87446 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:18:25 +0000
Subject: [PATCH 13/18] Add guard to gestureinfo as it is defined in mingw-w64
---
src/ConEmu/GestureEngine.cpp | 2 +-
src/ConEmu/GestureEngine.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/ConEmu/GestureEngine.cpp b/src/ConEmu/GestureEngine.cpp
index b1ff45a..c6a3ec7 100644
--- a/src/ConEmu/GestureEngine.cpp
+++ b/src/ConEmu/GestureEngine.cpp
@@ -46,7 +46,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "RealConsole.h"
#include "TabBar.h"
-#ifdef __GNUC__
+#if defined(__GNUC__) && (WINVER < 0x0601)
/*
* Gesture flags - GESTUREINFO.dwFlags
*/
diff --git a/src/ConEmu/GestureEngine.h b/src/ConEmu/GestureEngine.h
index deb9d00..11de49c 100644
--- a/src/ConEmu/GestureEngine.h
+++ b/src/ConEmu/GestureEngine.h
@@ -29,7 +29,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#pragma once
#include <windows.h>
-#ifdef __GNUC__
+#if defined(__GNUC__) && (WINVER < 0x0601)
#define HGESTUREINFO HANDLE
--
2.1.3

View File

@@ -0,0 +1,85 @@
From b6eff832f2d39d210f3c14d9247909080fc3c966 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:19:49 +0000
Subject: [PATCH 14/18] msxml is supported in mingw-w64
---
src/ConEmu/Options.cpp | 4 ++--
src/ConEmu/Registry.cpp | 2 +-
src/ConEmu/Registry.h | 4 ++--
src/common/xmllite.h | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/ConEmu/Options.cpp b/src/ConEmu/Options.cpp
index a771267..2000b3d 100644
--- a/src/ConEmu/Options.cpp
+++ b/src/ConEmu/Options.cpp
@@ -4282,7 +4282,7 @@ SettingsBase* Settings::CreateSettings(const SettingsStorage* apStorage)
}
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
DWORD dwAttr = -1;
if (!apStorage)
@@ -4341,7 +4341,7 @@ void Settings::GetSettingsType(SettingsStorage& Storage, bool& ReadOnly)
ZeroStruct(Storage);
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
HANDLE hFile = NULL;
LPWSTR pszXmlFile = gpConEmu->ConEmuXml();
diff --git a/src/ConEmu/Registry.cpp b/src/ConEmu/Registry.cpp
index e5d7be2..c5d505a 100644
--- a/src/ConEmu/Registry.cpp
+++ b/src/ConEmu/Registry.cpp
@@ -354,7 +354,7 @@ void SettingsINI::Save(const wchar_t *regName, LPCBYTE value, DWORD nType, DWORD
/* *************************** */
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
SettingsXML::SettingsXML(const SettingsStorage& Storage)
: SettingsBase(Storage)
{
diff --git a/src/ConEmu/Registry.h b/src/ConEmu/Registry.h
index 1c86874..571821a 100644
--- a/src/ConEmu/Registry.h
+++ b/src/ConEmu/Registry.h
@@ -28,7 +28,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#pragma once
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#include <msxml.h>
#endif
@@ -147,7 +147,7 @@ struct SettingsINI : public SettingsBase
virtual ~SettingsINI();
};
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
struct SettingsXML : public SettingsBase
{
protected:
diff --git a/src/common/xmllite.h b/src/common/xmllite.h
index b34daba..e6a77b8 100644
--- a/src/common/xmllite.h
+++ b/src/common/xmllite.h
@@ -1271,7 +1271,7 @@ EXTERN_C const IID IID_IXmlWriter;
////////////////////////////////////////////////////////////////////////////////////////////////////////////
// IID helpers
-#ifndef __GNUC__
+#if !defined(__GNUC__) || defined(__MINGW64_VERSION_MAJOR)
#define IID_IXmlReader __uuidof(IXmlReader)
#define IID_IXmlWriter __uuidof(IXmlWriter)
#define IID_IXmlResolver __uuidof(IXmlResolver)
--
2.1.3

View File

@@ -0,0 +1,31 @@
From e1260cf291a7c9336edb199ce8f24b9378953ab0 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:24:03 +0000
Subject: [PATCH 15/18] fix writeprocessd export for gcc
---
src/ConEmuHk/Ansi.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/ConEmuHk/Ansi.h b/src/ConEmuHk/Ansi.h
index 3e52bb2..f55395f 100644
--- a/src/ConEmuHk/Ansi.h
+++ b/src/ConEmuHk/Ansi.h
@@ -45,6 +45,14 @@ typedef BOOL (WINAPI* OnWriteConsoleW_t)(HANDLE hConsoleOutput, const VOID *lpBu
struct MSectionSimple;
+#if defined(__GNUC__)
+extern "C" {
+#endif
+ BOOL WINAPI WriteProcessed(LPCWSTR lpBuffer, DWORD nNumberOfCharsToWrite, LPDWORD lpNumberOfCharsWritten);
+#if defined(__GNUC__)
+};
+#endif
+
struct CEAnsi
{
//private:
--
2.1.3

View File

@@ -0,0 +1,40 @@
From 4c4e3d4b561e9a78825eea30bb0af72665945514 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:24:57 +0000
Subject: [PATCH 16/18] fix ConEmuHK linking under gcc
---
src/ConEmuHk/makefile_gcc | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/ConEmuHk/makefile_gcc b/src/ConEmuHk/makefile_gcc
index e2de4df..a5b2081 100644
--- a/src/ConEmuHk/makefile_gcc
+++ b/src/ConEmuHk/makefile_gcc
@@ -9,12 +9,14 @@ SRCS = \
../common/InQueue.cpp \
../common/MAssert.cpp \
../common/Memory.cpp \
+ ../common/Monitors.cpp \
../common/MSectionSimple.cpp \
../common/MSection.cpp \
../common/MSecurity.cpp \
../common/MStrSafe.cpp \
../common/RConStartArgs.cpp \
../common/WConsole.cpp \
+ ../common/WFiles.cpp \
../common/WObjects.cpp \
Ansi.cpp \
ConEmuHooks.cpp \
@@ -112,7 +114,7 @@ AR = $(PREFIX)ar
RANLIB = $(PREFIX)ranlib
CXXFLAGS = $(ENCFLAGS) -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-rtti -fno-exceptions $(CXXWIDE) $(USERCPP) $(WINVER)
CCFLAGS = -I $(COMMON) -I $(COMINC) -Wall -Os -funsigned-char -fomit-frame-pointer -fstrict-aliasing -fno-exceptions $(CCWIDE) $(USERCPP) $(WINVER)
-LNKFLAGS = -mdll $(BASEADDRESS) -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 $(USERLIBS)
+LNKFLAGS = -mdll $(BASEADDRESS) -s -lgcc $(USERLIBSFIRST) $(COMMONLIB) -luser32 -lkernel32 -ladvapi32 -lshell32 -luuid -lgdi32 $(USERLIBS)
RCFLAGS = -I $(COMINC) $(RCWIDE) $(USERRC)
OBJS = $(patsubst %.cpp,$(OBJDIR)/%.o,$(filter %.cpp,$(SRCS))) $(patsubst %.c,$(OBJDIR)/%.o,$(filter %.c,$(SRCS))) $(RES)
--
2.1.3

View File

@@ -0,0 +1,33 @@
From 00d6a150802ac1a989abe9ec8b0efe6577cd1354 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:26:37 +0000
Subject: [PATCH 17/18] Add guard to vista transparency for mingw-w64
---
src/common/WConsole.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/common/WConsole.cpp b/src/common/WConsole.cpp
index 2f6cef1..19fa119 100644
--- a/src/common/WConsole.cpp
+++ b/src/common/WConsole.cpp
@@ -424,6 +424,8 @@ void GetConsoleSizeInfo(CONSOLE_INFO *pci)
#undef ENABLE_AUTO_POSITION
#endif
+#if !defined(__MINGW64_VERSION_MAJOR)
+
//VISTA support:
#ifndef ENABLE_AUTO_POSITION
typedef struct _CONSOLE_FONT_INFOEX
@@ -437,6 +439,7 @@ typedef struct _CONSOLE_FONT_INFOEX
} CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
#endif
+#endif
// Vista+ only
BOOL apiGetConsoleScreenBufferInfoEx(HANDLE hConsoleOutput, MY_CONSOLE_SCREEN_BUFFER_INFOEX* lpConsoleScreenBufferInfoEx)
--
2.1.3

View File

@@ -0,0 +1,103 @@
From 06c22fa1635ac3cf9d7349ae587915ffddc6e029 Mon Sep 17 00:00:00 2001
From: martell <martellmalone@gmail.com>
Date: Tue, 11 Nov 2014 04:28:02 +0000
Subject: [PATCH 18/18] Fix various cross initialization errors under gcc
---
src/ConEmu/Options.cpp | 4 +++-
src/ConEmu/RealBuffer.cpp | 4 +++-
src/ConEmuHk/Console2.h | 3 ++-
src/common/CmdLine.cpp | 5 ++++-
4 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/ConEmu/Options.cpp b/src/ConEmu/Options.cpp
index 2000b3d..9098c7b 100644
--- a/src/ConEmu/Options.cpp
+++ b/src/ConEmu/Options.cpp
@@ -1245,6 +1245,8 @@ bool Settings::LoadCmdTask(SettingsBase* reg, CommandTasks* &pTask, int iIndex)
bool lbRc = false;
wchar_t szVal[32];
int iCmdMax = 0, iCmdCount = 0;
+
+ DWORD VkMod;
wchar_t* pszNameSet = NULL;
if (iIndex >= 0)
@@ -1272,7 +1274,7 @@ bool Settings::LoadCmdTask(SettingsBase* reg, CommandTasks* &pTask, int iIndex)
pTask->SetName(pszNameSet, iIndex);
pTask->HotKey.HkType = chk_Task;
- DWORD VkMod = 0;
+ VkMod = 0;
if ((iIndex >= 0) && reg->Load(L"Hotkey", VkMod))
pTask->HotKey.SetVkMod(VkMod);
else
diff --git a/src/ConEmu/RealBuffer.cpp b/src/ConEmu/RealBuffer.cpp
index 294c73d..dd684e4 100644
--- a/src/ConEmu/RealBuffer.cpp
+++ b/src/ConEmu/RealBuffer.cpp
@@ -673,6 +673,8 @@ BOOL CRealBuffer::SetConsoleSizeSrv(USHORT sizeX, USHORT sizeY, USHORT sizeBuffe
//bool bLargestReached = false;
bool bSecondTry = false;
+ bool bNeedApplyConsole;
+
_ASSERTE(anCmdID==CECMD_SETSIZESYNC || anCmdID==CECMD_SETSIZENOSYNC || anCmdID==CECMD_CMDSTARTED || anCmdID==CECMD_CMDFINISHED);
//ExecutePrepareCmd(&lIn.hdr, anCmdID, lIn.hdr.cbSize);
if (!pIn /*|| !pOut*/)
@@ -793,7 +795,7 @@ BOOL CRealBuffer::SetConsoleSizeSrv(USHORT sizeX, USHORT sizeY, USHORT sizeBuffe
ResetEvent(mp_RCon->mh_ApplyFinished);
_ASSERTE(mp_RCon->m_ConsoleMap.IsValid());
- bool bNeedApplyConsole =
+ bNeedApplyConsole =
mp_RCon->m_ConsoleMap.IsValid()
&& (anCmdID == CECMD_SETSIZESYNC)
&& (mp_RCon->mn_MonitorThreadID != GetCurrentThreadId());
diff --git a/src/ConEmuHk/Console2.h b/src/ConEmuHk/Console2.h
index b719550..17de078 100644
--- a/src/ConEmuHk/Console2.h
+++ b/src/ConEmuHk/Console2.h
@@ -35,6 +35,7 @@ int InjectHookDLL(PROCESS_INFORMATION pi, InjectHookFunctions* pfn /*UINT_PTR fn
BYTE* code = NULL;
wchar_t strHookDllPath[MAX_PATH*2] = {};
DWORD dwErrCode = 0;
+ DWORD_PTR nLoadLibraryProcShift;
#ifndef _WIN64
// starting a 32-bit process
LPCWSTR pszDllName = L"\\ConEmuHk.dll";
@@ -74,7 +75,7 @@ int InjectHookDLL(PROCESS_INFORMATION pi, InjectHookFunctions* pfn /*UINT_PTR fn
}
//UINT_PTR fnGetDllByName = 0;
- DWORD_PTR nLoadLibraryProcShift = 0;
+ nLoadLibraryProcShift = 0;
//HMODULE hNtDll, hKernel;
//if (nOsVer >= 0x0602)
if (pfn->fnLdrGetDllHandleByName)
diff --git a/src/common/CmdLine.cpp b/src/common/CmdLine.cpp
index dab6ec3..c386089 100644
--- a/src/common/CmdLine.cpp
+++ b/src/common/CmdLine.cpp
@@ -412,6 +412,9 @@ bool IsNeedCmd(BOOL bRootCmd, LPCWSTR asCmdLine, CmdArg &szExe,
bool rbRootIsCmdExe = true;
bool rbAlwaysConfirmExit = false;
bool rbAutoDisableConfirmExit = false;
+
+ wchar_t *pwszEndSpace;
+
if (rsArguments) *rsArguments = NULL;
bool lbRc = false;
@@ -682,7 +685,7 @@ bool IsNeedCmd(BOOL bRootCmd, LPCWSTR asCmdLine, CmdArg &szExe,
//pwszCopy = wcsrchr(szArg, L'\\'); if (!pwszCopy) pwszCopy = szArg; else pwszCopy ++;
pwszCopy = PointToName(szExe);
//2009-08-27
- wchar_t *pwszEndSpace = szExe.ms_Arg + lstrlenW(szExe) - 1;
+ pwszEndSpace = szExe.ms_Arg + lstrlenW(szExe) - 1;
while ((*pwszEndSpace == L' ') && (pwszEndSpace > szExe))
{
--
2.1.3

View File

@@ -0,0 +1,618 @@
<?xml version="1.0" encoding="utf-8"?>
<key name="Software">
<key name="ConEmu">
<key name=".Vanilla" modified="2014-06-20 03:30:15" build="140615">
<value name="ColorTable00" type="dword" data="00222827"/>
<value name="ColorTable01" type="dword" data="009e5401"/>
<value name="ColorTable02" type="dword" data="0004aa74"/>
<value name="ColorTable03" type="dword" data="00a6831a"/>
<value name="ColorTable04" type="dword" data="003403a7"/>
<value name="ColorTable05" type="dword" data="009c5689"/>
<value name="ColorTable06" type="dword" data="0049b6b6"/>
<value name="ColorTable07" type="dword" data="00cacaca"/>
<value name="ColorTable08" type="dword" data="007c7c7c"/>
<value name="ColorTable09" type="dword" data="00f58303"/>
<value name="ColorTable10" type="dword" data="0006d08d"/>
<value name="ColorTable11" type="dword" data="00e5c258"/>
<value name="ColorTable12" type="dword" data="004b04f3"/>
<value name="ColorTable13" type="dword" data="00b87da8"/>
<value name="ColorTable14" type="dword" data="0081cccc"/>
<value name="ColorTable15" type="dword" data="00ffffff"/>
<value name="ColorTable16" type="dword" data="00000000"/>
<value name="ColorTable17" type="dword" data="00800000"/>
<value name="ColorTable18" type="dword" data="00008000"/>
<value name="ColorTable19" type="dword" data="00808000"/>
<value name="ColorTable20" type="dword" data="00000080"/>
<value name="ColorTable21" type="dword" data="00800080"/>
<value name="ColorTable22" type="dword" data="00008080"/>
<value name="ColorTable23" type="dword" data="00c0c0c0"/>
<value name="ColorTable24" type="dword" data="00808080"/>
<value name="ColorTable25" type="dword" data="00ff0000"/>
<value name="ColorTable26" type="dword" data="0000ff00"/>
<value name="ColorTable27" type="dword" data="00ffff00"/>
<value name="ColorTable28" type="dword" data="000000ff"/>
<value name="ColorTable29" type="dword" data="00ff00ff"/>
<value name="ColorTable30" type="dword" data="0000ffff"/>
<value name="ColorTable31" type="dword" data="00ffffff"/>
<value name="ExtendColors" type="hex" data="00"/>
<value name="ExtendColorIdx" type="hex" data="0e"/>
<value name="TextColorIdx" type="hex" data="10"/>
<value name="BackColorIdx" type="hex" data="10"/>
<value name="PopTextColorIdx" type="hex" data="10"/>
<value name="PopBackColorIdx" type="hex" data="10"/>
<value name="ExtendFonts" type="hex" data="00"/>
<value name="ExtendFontNormalIdx" type="hex" data="01"/>
<value name="ExtendFontBoldIdx" type="hex" data="0c"/>
<value name="ExtendFontItalicIdx" type="hex" data="0d"/>
<value name="CursorTypeActive" type="dword" data="000232c1"/>
<value name="CursorTypeInactive" type="dword" data="00823282"/>
<value name="ClipboardDetectLineEnd" type="hex" data="01"/>
<value name="ClipboardBashMargin" type="hex" data="00"/>
<value name="ClipboardTrimTrailing" type="hex" data="02"/>
<value name="ClipboardEOL" type="hex" data="00"/>
<value name="ClipboardArrowStart" type="hex" data="00"/>
<value name="ClipboardAllLines" type="hex" data="01"/>
<value name="ClipboardFirstLine" type="hex" data="01"/>
<value name="ClipboardClickPromptPosition" type="hex" data="02"/>
<value name="ClipboardDeleteLeftWord" type="hex" data="01"/>
<value name="TrueColorerSupport" type="hex" data="01"/>
<value name="FadeInactive" type="hex" data="01"/>
<value name="FadeInactiveLow" type="hex" data="00"/>
<value name="FadeInactiveHigh" type="hex" data="c8"/>
<value name="ConVisible" type="hex" data="00"/>
<value name="ConInMode" type="dword" data="ffffffff"/>
<value name="UseInjects" type="hex" data="01"/>
<value name="SetDefaultTerminal" type="hex" data="00"/>
<value name="SetDefaultTerminalStartup" type="hex" data="00"/>
<value name="SetDefaultTerminalStartupTSA" type="hex" data="01"/>
<value name="DefaultTerminalNoInjects" type="hex" data="00"/>
<value name="DefaultTerminalNewWindow" type="hex" data="00"/>
<value name="DefaultTerminalConfirm" type="hex" data="01"/>
<value name="DefaultTerminalApps" type="string" data="explorer.exe"/>
<value name="ProcessAnsi" type="hex" data="01"/>
<value name="AnsiLog" type="hex" data="00"/>
<value name="AnsiLogPath" type="string" data="%ConEmuDir%\Logs\"/>
<value name="ProcessNewConArg" type="hex" data="01"/>
<value name="ConsoleExceptionHandler" type="hex" data="00"/>
<value name="UseClink" type="hex" data="01"/>
<value name="StartType" type="hex" data="02"/>
<value name="CmdLine" type="string" data=""/>
<value name="StartTasksFile" type="string" data=""/>
<value name="StartTasksName" type="string" data="{bash}"/>
<value name="StartFarFolders" type="hex" data="00"/>
<value name="StartFarEditors" type="hex" data="00"/>
<value name="StoreTaskbarkTasks" type="hex" data="00"/>
<value name="StoreTaskbarCommands" type="hex" data="00"/>
<value name="SaveCmdHistory" type="hex" data="00"/>
<value name="SingleInstance" type="hex" data="00"/>
<value name="ShowHelpTooltips" type="hex" data="01"/>
<value name="Multi" type="hex" data="01"/>
<value name="Multi.ShowButtons" type="hex" data="01"/>
<value name="Multi.NumberInCaption" type="hex" data="00"/>
<value name="Multi.CloseConfirm" type="hex" data="00"/>
<value name="Multi.CloseEditViewConfirm" type="hex" data="00"/>
<value name="Multi.NewConfirm" type="hex" data="01"/>
<value name="Multi.UseArrows" type="hex" data="00"/>
<value name="Multi.UseNumbers" type="hex" data="00"/>
<value name="Multi.UseWinTab" type="hex" data="00"/>
<value name="Multi.AutoCreate" type="hex" data="00"/>
<value name="Multi.LeaveOnClose" type="hex" data="00"/>
<value name="Multi.HideOnClose" type="hex" data="00"/>
<value name="Multi.MinByEsc" type="hex" data="02"/>
<value name="MapShiftEscToEsc" type="hex" data="01"/>
<value name="Multi.Iterate" type="hex" data="01"/>
<value name="Multi.SplitWidth" type="hex" data="04"/>
<value name="Multi.SplitHeight" type="hex" data="04"/>
<value name="KeyboardHooks" type="hex" data="02"/>
<value name="FontName" type="string" data="Consolas"/>
<value name="FontName2" type="string" data="Lucida Console"/>
<value name="FontAutoSize" type="hex" data="00"/>
<value name="FontSize" type="dword" data="00000010"/>
<value name="FontSizeX" type="dword" data="00000000"/>
<value name="FontSizeX2" type="dword" data="00000000"/>
<value name="FontSizeX3" type="dword" data="00000000"/>
<value name="FontCharSet" type="hex" data="00"/>
<value name="Anti-aliasing" type="dword" data="00000006"/>
<value name="FontBold" type="hex" data="00"/>
<value name="FontItalic" type="hex" data="00"/>
<value name="Monospace" type="hex" data="01"/>
<value name="BackGround Image show" type="hex" data="00"/>
<value name="BackGround Image" type="string" data="c:\back.bmp"/>
<value name="bgImageDarker" type="hex" data="ff"/>
<value name="bgImageColors" type="dword" data="ffffffff"/>
<value name="bgOperation" type="hex" data="00"/>
<value name="bgPluginAllowed" type="hex" data="01"/>
<value name="AlphaValue" type="hex" data="f8"/>
<value name="AlphaValueSeparate" type="hex" data="01"/>
<value name="AlphaValueInactive" type="hex" data="ee"/>
<value name="UserScreenTransparent" type="hex" data="00"/>
<value name="ColorKeyTransparent" type="hex" data="00"/>
<value name="ColorKeyValue" type="dword" data="00010101"/>
<value name="UseCurrentSizePos" type="hex" data="01"/>
<value name="WindowMode" type="dword" data="0000051f"/>
<value name="ConWnd Width" type="dword" data="00000059"/>
<value name="ConWnd Height" type="dword" data="0000001d"/>
<value name="Cascaded" type="hex" data="01"/>
<value name="ConWnd X" type="dword" data="0000005a"/>
<value name="ConWnd Y" type="dword" data="0000005a"/>
<value name="16bit Height" type="dword" data="00000000"/>
<value name="AutoSaveSizePos" type="hex" data="00"/>
<value name="IntegralSize" type="hex" data="00"/>
<value name="QuakeStyle" type="hex" data="00"/>
<value name="QuakeAnimation" type="dword" data="0000012c"/>
<value name="HideCaption" type="hex" data="00"/>
<value name="HideChildCaption" type="hex" data="01"/>
<value name="FocusInChildWindows" type="hex" data="01"/>
<value name="HideCaptionAlways" type="hex" data="00"/>
<value name="HideCaptionAlwaysFrame" type="hex" data="ff"/>
<value name="HideCaptionAlwaysDelay" type="dword" data="000007d0"/>
<value name="HideCaptionAlwaysDisappear" type="dword" data="000007d0"/>
<value name="DownShowHiddenMessage" type="hex" data="00"/>
<value name="ConsoleFontName" type="string" data="Lucida Console"/>
<value name="ConsoleFontWidth" type="dword" data="00000003"/>
<value name="ConsoleFontHeight" type="dword" data="00000005"/>
<value name="DefaultBufferHeight" type="dword" data="000003e8"/>
<value name="AutoBufferHeight" type="hex" data="01"/>
<value name="CmdOutputCP" type="dword" data="00000000"/>
<value name="ComSpec.Type" type="hex" data="00"/>
<value name="ComSpec.Bits" type="hex" data="00"/>
<value name="ComSpec.UpdateEnv" type="hex" data="00"/>
<value name="ComSpec.EnvAddPath" type="hex" data="01"/>
<value name="ComSpec.EnvAddExePath" type="hex" data="01"/>
<value name="ComSpec.UncPaths" type="hex" data="00"/>
<value name="ComSpec.Path" type="string" data=""/>
<value name="CTS.Intelligent" type="hex" data="01"/>
<value name="CTS.IntelligentExceptions" type="string" data="far|vim.exe"/>
<value name="CTS.AutoCopy" type="hex" data="01"/>
<value name="CTS.IBeam" type="hex" data="01"/>
<value name="CTS.EndOnTyping" type="hex" data="00"/>
<value name="CTS.EndOnKeyPress" type="hex" data="00"/>
<value name="CTS.Freeze" type="hex" data="00"/>
<value name="CTS.SelectBlock" type="hex" data="01"/>
<value name="CTS.SelectText" type="hex" data="01"/>
<value name="CTS.HtmlFormat" type="hex" data="00"/>
<value name="CTS.ActMode" type="hex" data="02"/>
<value name="CTS.RBtnAction" type="hex" data="03"/>
<value name="CTS.MBtnAction" type="hex" data="00"/>
<value name="CTS.ColorIndex" type="hex" data="e0"/>
<value name="ClipboardConfirmEnter" type="hex" data="01"/>
<value name="ClipboardConfirmLonger" type="dword" data="000000c8"/>
<value name="FarGotoEditorOpt" type="hex" data="01"/>
<value name="FarGotoEditorPath" type="string" data="far.exe /e%1:%2 &quot;%3&quot;"/>
<value name="HighlightMouseRow" type="hex" data="00"/>
<value name="HighlightMouseCol" type="hex" data="00"/>
<value name="FixFarBorders" type="hex" data="01"/>
<value name="FixFarBordersRanges" type="string" data="2013-25C4;"/>
<value name="ExtendUCharMap" type="hex" data="01"/>
<value name="EnhanceGraphics" type="hex" data="01"/>
<value name="EnhanceButtons" type="hex" data="00"/>
<value name="PartBrush75" type="hex" data="c8"/>
<value name="PartBrush50" type="hex" data="96"/>
<value name="PartBrush25" type="hex" data="5a"/>
<value name="PartBrushBlack" type="hex" data="20"/>
<value name="RightClick opens context menu" type="hex" data="02"/>
<value name="RightClickMacro2" type="string" data=""/>
<value name="SendAltTab" type="hex" data="00"/>
<value name="SendAltEsc" type="hex" data="00"/>
<value name="SendAltPrintScrn" type="hex" data="00"/>
<value name="SendPrintScrn" type="hex" data="00"/>
<value name="SendCtrlEsc" type="hex" data="00"/>
<value name="Min2Tray" type="hex" data="00"/>
<value name="AlwaysShowTrayIcon" type="hex" data="00"/>
<value name="SafeFarClose" type="hex" data="01"/>
<value name="SafeFarCloseMacro" type="string" data=""/>
<value name="FARuseASCIIsort" type="hex" data="00"/>
<value name="ShellNoZoneCheck" type="hex" data="00"/>
<value name="FixAltOnAltTab" type="hex" data="00"/>
<value name="DisableMouse" type="hex" data="01"/>
<value name="RSelectionFix" type="hex" data="01"/>
<value name="MouseSkipActivation" type="hex" data="01"/>
<value name="MouseSkipMoving" type="hex" data="01"/>
<value name="FarHourglass" type="hex" data="01"/>
<value name="FarHourglassDelay" type="dword" data="000001f4"/>
<value name="Dnd" type="hex" data="01"/>
<value name="DndDrop" type="hex" data="01"/>
<value name="DefCopy" type="hex" data="01"/>
<value name="DropUseMenu" type="hex" data="02"/>
<value name="DragOverlay" type="hex" data="01"/>
<value name="DragShowIcons" type="hex" data="01"/>
<value name="DebugSteps" type="hex" data="01"/>
<value name="DragPanel" type="hex" data="02"/>
<value name="DragPanelBothEdges" type="hex" data="00"/>
<value name="KeyBarRClick" type="hex" data="01"/>
<value name="StatusBar.Show" type="hex" data="00"/>
<value name="StatusBar.Flags" type="dword" data="00000002"/>
<value name="StatusFontFace" type="string" data="Tahoma"/>
<value name="StatusFontCharSet" type="dword" data="00000000"/>
<value name="StatusFontHeight" type="dword" data="0000000e"/>
<value name="StatusBar.Color.Back" type="dword" data="00404040"/>
<value name="StatusBar.Color.Light" type="dword" data="00ffffff"/>
<value name="StatusBar.Color.Dark" type="dword" data="00a0a0a0"/>
<value name="StatusBar.Hide.VCon" type="hex" data="00"/>
<value name="StatusBar.Hide.CapsL" type="hex" data="00"/>
<value name="StatusBar.Hide.NumL" type="hex" data="00"/>
<value name="StatusBar.Hide.ScrL" type="hex" data="00"/>
<value name="StatusBar.Hide.Lang" type="hex" data="01"/>
<value name="StatusBar.Hide.WPos" type="hex" data="01"/>
<value name="StatusBar.Hide.WSize" type="hex" data="01"/>
<value name="StatusBar.Hide.WClient" type="hex" data="01"/>
<value name="StatusBar.Hide.WWork" type="hex" data="01"/>
<value name="StatusBar.Hide.Style" type="hex" data="01"/>
<value name="StatusBar.Hide.StyleEx" type="hex" data="01"/>
<value name="StatusBar.Hide.hFore" type="hex" data="01"/>
<value name="StatusBar.Hide.hFocus" type="hex" data="01"/>
<value name="StatusBar.Hide.ABuf" type="hex" data="00"/>
<value name="StatusBar.Hide.CPos" type="hex" data="00"/>
<value name="StatusBar.Hide.CSize" type="hex" data="00"/>
<value name="StatusBar.Hide.BSize" type="hex" data="00"/>
<value name="StatusBar.Hide.CurX" type="hex" data="00"/>
<value name="StatusBar.Hide.CurY" type="hex" data="00"/>
<value name="StatusBar.Hide.CurS" type="hex" data="00"/>
<value name="StatusBar.Hide.CurI" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuPID" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuHWND" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuView" type="hex" data="01"/>
<value name="StatusBar.Hide.Srv" type="hex" data="00"/>
<value name="StatusBar.Hide.SrvHWND" type="hex" data="01"/>
<value name="StatusBar.Hide.Transparency" type="hex" data="00"/>
<value name="StatusBar.Hide.New" type="hex" data="00"/>
<value name="StatusBar.Hide.Sync" type="hex" data="00"/>
<value name="StatusBar.Hide.Proc" type="hex" data="00"/>
<value name="StatusBar.Hide.Title" type="hex" data="01"/>
<value name="StatusBar.Hide.Time" type="hex" data="01"/>
<value name="StatusBar.Hide.Resize" type="hex" data="00"/>
<value name="Tabs" type="hex" data="01"/>
<value name="TabsLocation" type="hex" data="01"/>
<value name="TabIcons" type="hex" data="01"/>
<value name="OneTabPerGroup" type="hex" data="00"/>
<value name="ActivateSplitMouseOver" type="hex" data="01"/>
<value name="TabSelf" type="hex" data="01"/>
<value name="TabLazy" type="hex" data="01"/>
<value name="TabRecent" type="hex" data="01"/>
<value name="TabDblClick" type="dword" data="00000001"/>
<value name="TabBtnDblClick" type="dword" data="00000000"/>
<value name="TabsOnTaskBar" type="hex" data="02"/>
<value name="TaskBarOverlay" type="hex" data="01"/>
<value name="TaskbarProgress" type="hex" data="01"/>
<value name="TabCloseMacro" type="string" data=""/>
<value name="TabFontFace" type="string" data="Segoe UI"/>
<value name="TabFontCharSet" type="dword" data="00000000"/>
<value name="TabFontHeight" type="dword" data="00000010"/>
<value name="SaveAllEditors" type="string" data=""/>
<value name="ToolbarAddSpace" type="dword" data="00000000"/>
<value name="TabConsole" type="string" data=" %n "/>
<value name="TabSkipWords" type="string" data="Administrator:|Администратор:"/>
<value name="TabPanels" type="string" data="&lt;%c&gt; %s"/>
<value name="TabEditor" type="string" data="&lt;%c.%i&gt;{%s}"/>
<value name="TabEditorModified" type="string" data="&lt;%c.%i&gt;[%s] *"/>
<value name="TabViewer" type="string" data="&lt;%c.%i&gt;[%s]"/>
<value name="TabLenMax" type="dword" data="00000014"/>
<value name="AdminTitleSuffix" type="string" data=" (Admin)"/>
<value name="AdminShowShield" type="hex" data="01"/>
<value name="HideInactiveConsoleTabs" type="hex" data="00"/>
<value name="ShowFarWindows" type="hex" data="01"/>
<value name="TryToCenter" type="hex" data="01"/>
<value name="CenterConsolePad" type="dword" data="00000008"/>
<value name="ShowScrollbar" type="hex" data="02"/>
<value name="ScrollBarAppearDelay" type="dword" data="00000064"/>
<value name="ScrollBarDisappearDelay" type="dword" data="000003e8"/>
<value name="IconID" type="dword" data="00000001"/>
<value name="MainTimerElapse" type="dword" data="0000000a"/>
<value name="MainTimerInactiveElapse" type="dword" data="000003e8"/>
<value name="AffinityMask" type="dword" data="00000000"/>
<value name="SkipFocusEvents" type="hex" data="00"/>
<value name="MonitorConsoleLang" type="hex" data="03"/>
<value name="DesktopMode" type="hex" data="00"/>
<value name="SnapToDesktopEdges" type="hex" data="00"/>
<value name="AlwaysOnTop" type="hex" data="00"/>
<value name="SleepInBackground" type="hex" data="01"/>
<value name="RetardInactivePanes" type="hex" data="00"/>
<value name="MinimizeOnLoseFocus" type="hex" data="00"/>
<value name="DisableFarFlashing" type="hex" data="00"/>
<value name="DisableAllFlashing" type="hex" data="00"/>
<value name="FindText" type="string" data=""/>
<value name="FindMatchCase" type="hex" data="00"/>
<value name="FindMatchWholeWords" type="hex" data="00"/>
<value name="FindTransparent" type="hex" data="01"/>
<value name="PanView.BackColor" type="dword" data="30ffffff"/>
<value name="PanView.PFrame" type="dword" data="00000001"/>
<value name="PanView.PFrameColor" type="dword" data="28808080"/>
<value name="PanView.SFrame" type="dword" data="00000001"/>
<value name="PanView.SFrameColor" type="dword" data="07c0c0c0"/>
<value name="PanView.Thumbs.ImgSize" type="dword" data="00000060"/>
<value name="PanView.Thumbs.SpaceX1" type="dword" data="00000001"/>
<value name="PanView.Thumbs.SpaceY1" type="dword" data="00000001"/>
<value name="PanView.Thumbs.SpaceX2" type="dword" data="00000005"/>
<value name="PanView.Thumbs.SpaceY2" type="dword" data="00000014"/>
<value name="PanView.Thumbs.LabelSpacing" type="dword" data="00000002"/>
<value name="PanView.Thumbs.LabelPadding" type="dword" data="00000000"/>
<value name="PanView.Thumbs.FontName" type="string" data="Tahoma"/>
<value name="PanView.Thumbs.FontHeight" type="dword" data="0000000e"/>
<value name="PanView.Tiles.ImgSize" type="dword" data="00000030"/>
<value name="PanView.Tiles.SpaceX1" type="dword" data="00000004"/>
<value name="PanView.Tiles.SpaceY1" type="dword" data="00000004"/>
<value name="PanView.Tiles.SpaceX2" type="dword" data="000000ac"/>
<value name="PanView.Tiles.SpaceY2" type="dword" data="00000004"/>
<value name="PanView.Tiles.LabelSpacing" type="dword" data="00000004"/>
<value name="PanView.Tiles.LabelPadding" type="dword" data="00000001"/>
<value name="PanView.Tiles.FontName" type="string" data="Tahoma"/>
<value name="PanView.Tiles.FontHeight" type="dword" data="0000000e"/>
<value name="PanView.LoadPreviews" type="hex" data="03"/>
<value name="PanView.LoadFolders" type="hex" data="01"/>
<value name="PanView.LoadTimeout" type="dword" data="0000000f"/>
<value name="PanView.MaxZoom" type="dword" data="00000258"/>
<value name="PanView.UsePicView2" type="hex" data="01"/>
<value name="PanView.RestoreOnStartup" type="hex" data="00"/>
<value name="Update.VerLocation" type="string" data=""/>
<value name="Update.CheckOnStartup" type="hex" data="00"/>
<value name="Update.CheckHourly" type="hex" data="00"/>
<value name="Update.ConfirmDownload" type="hex" data="01"/>
<value name="Update.UseBuilds" type="hex" data="01"/>
<value name="Update.UseProxy" type="hex" data="00"/>
<value name="Update.Proxy" type="string" data=""/>
<value name="Update.ProxyUser" type="string" data=""/>
<value name="Update.ProxyPassword" type="string" data=""/>
<value name="Update.ExeCmdLine" type="string" data=""/>
<value name="Update.ArcCmdLine" type="string" data=""/>
<value name="Update.DownloadPath" type="string" data="%TEMP%\ConEmu"/>
<value name="Update.LeavePackages" type="hex" data="00"/>
<value name="Update.PostUpdateCmd" type="string" data="echo Last successful update&gt;ConEmuUpdate.info &amp;&amp; date /t&gt;&gt;ConEmuUpdate.info &amp;&amp; time /t&gt;&gt;ConEmuUpdate.info"/>
<value name="Multi.Modifier" type="dword" data="00000011"/>
<value name="Multi.ArrowsModifier" type="dword" data="0000005b"/>
<value name="KeyMacroVersion" type="hex" data="02"/>
<value name="MinimizeRestore" type="dword" data="000011c0"/>
<value name="MinimizeRestore2" type="dword" data="00000000"/>
<value name="GlobalRestore" type="dword" data="00000000"/>
<value name="ForcedFullScreen" type="dword" data="12115b0d"/>
<value name="SwitchGuiFocus" type="dword" data="00000000"/>
<value name="SetFocusGui" type="dword" data="00000000"/>
<value name="SetFocusChild" type="dword" data="00000000"/>
<value name="ChildSystemMenu" type="dword" data="00000000"/>
<value name="Multi.NewSplitV" type="dword" data="00001000"/>
<value name="Multi.NewSplitH" type="dword" data="80808000"/>
<value name="Multi.SplitSizeVU" type="dword" data="00105d26"/>
<value name="Multi.SplitSizeVD" type="dword" data="00105d28"/>
<value name="Multi.SplitSizeHL" type="dword" data="00105d25"/>
<value name="Multi.SplitSizeHR" type="dword" data="00105d27"/>
<value name="Key.TabPane1" type="dword" data="80808000"/>
<value name="Key.TabPane2" type="dword" data="80808000"/>
<value name="Multi.SplitFocusU" type="dword" data="00005d26"/>
<value name="Multi.SplitFocusD" type="dword" data="00005d28"/>
<value name="Multi.SplitFocusL" type="dword" data="00005d25"/>
<value name="Multi.SplitFocusR" type="dword" data="00005d27"/>
<value name="Multi.NewConsole" type="dword" data="80808000"/>
<value name="Multi.NewConsoleShift" type="dword" data="00001154"/>
<value name="Multi.NewConsolePopup" type="dword" data="80808000"/>
<value name="Multi.NewConsolePopup2" type="dword" data="00000000"/>
<value name="Multi.NewWindow" type="dword" data="00000000"/>
<value name="Multi.NewAttach" type="dword" data="00005b00"/>
<value name="Multi.Next" type="dword" data="80808000"/>
<value name="Multi.NextShift" type="dword" data="80808000"/>
<value name="Multi.Recreate" type="dword" data="00005b00"/>
<value name="Multi.AltCon" type="dword" data="80808000"/>
<value name="Multi.Scroll" type="dword" data="00005b00"/>
<value name="Multi.Close" type="dword" data="00001157"/>
<value name="CloseTabKey" type="dword" data="00125b00"/>
<value name="CloseGroupKey" type="dword" data="00000000"/>
<value name="CloseGroupPrcKey" type="dword" data="00000000"/>
<value name="CloseAllConKey" type="dword" data="00000000"/>
<value name="CloseExceptConKey" type="dword" data="00000000"/>
<value name="TerminateProcessKey" type="dword" data="80808000"/>
<value name="DuplicateRootKey" type="dword" data="00000000"/>
<value name="CloseConEmuKey" type="dword" data="00001273"/>
<value name="Multi.Rename" type="dword" data="80808000"/>
<value name="Multi.MoveLeft" type="dword" data="00125b25"/>
<value name="Multi.MoveRight" type="dword" data="00125b27"/>
<value name="Multi.CmdKey" type="dword" data="80808000"/>
<value name="CTS.VkBlockStart" type="dword" data="00000000"/>
<value name="CTS.VkTextStart" type="dword" data="00000000"/>
<value name="CTS.VkCopyFmt0" type="dword" data="00001143"/>
<value name="CTS.VkCopyFmt1" type="dword" data="00101143"/>
<value name="CTS.VkCopyFmt2" type="dword" data="00000000"/>
<value name="CTS.VkCopyAll" type="dword" data="00000000"/>
<value name="HighlightMouseSwitch" type="dword" data="00005d4c"/>
<value name="Multi.ShowTabsList" type="dword" data="00000000"/>
<value name="Multi.ShowTabsList2" type="dword" data="80808000"/>
<value name="ClipboardVkAllLines" type="dword" data="0000102d"/>
<value name="ClipboardVkFirstLine" type="dword" data="00001156"/>
<value name="DeleteWordToLeft" type="dword" data="00001108"/>
<value name="FindTextKey" type="dword" data="00005d46"/>
<value name="ScreenshotKey" type="dword" data="80808000"/>
<value name="ScreenshotFullKey" type="dword" data="80808000"/>
<value name="ShowStatusBarKey" type="dword" data="80808000"/>
<value name="ShowTabBarKey" type="dword" data="80808000"/>
<value name="ShowCaptionKey" type="dword" data="80808000"/>
<value name="AlwaysOnTopKey" type="dword" data="00000000"/>
<value name="TransparencyInc" type="dword" data="00000000"/>
<value name="TransparencyDec" type="dword" data="00000000"/>
<value name="Key.TabMenu" type="dword" data="80808000"/>
<value name="Key.TabMenu2" type="dword" data="80808000"/>
<value name="Key.Maximize" type="dword" data="80808000"/>
<value name="Key.MaximizeWidth" type="dword" data="00000000"/>
<value name="Key.MaximizeHeight" type="dword" data="00000000"/>
<value name="Key.FullScreen" type="dword" data="0000120d"/>
<value name="Key.SysMenu" type="dword" data="80808000"/>
<value name="Key.SysMenu2" type="dword" data="00001102"/>
<value name="Key.BufUp" type="dword" data="00001126"/>
<value name="Key.BufDn" type="dword" data="00001128"/>
<value name="Key.BufPgUp" type="dword" data="00001121"/>
<value name="Key.BufPgDn" type="dword" data="00001122"/>
<value name="Key.PicViewSlide" type="dword" data="80808000"/>
<value name="Key.PicViewSlower" type="dword" data="80808000"/>
<value name="Key.PicViewFaster" type="dword" data="80808000"/>
<value name="FontLargerKey" type="dword" data="80808000"/>
<value name="FontSmallerKey" type="dword" data="80808000"/>
<value name="PasteFileKey" type="dword" data="00101146"/>
<value name="PastePathKey" type="dword" data="00101144"/>
<value name="PasteCygwinKey" type="dword" data="00005d2d"/>
<value name="Key.JumpPrevMonitor" type="dword" data="80808000"/>
<value name="Key.JumpNextMonitor" type="dword" data="80808000"/>
<value name="Key.TileToLeft" type="dword" data="80808000"/>
<value name="Key.TileToRIght" type="dword" data="80808000"/>
<value name="KeyMacro01" type="dword" data="0012a031"/>
<value name="KeyMacro01.Text" type="string" data="Task(&quot;cmd&quot;)"/>
<value name="KeyMacro02" type="dword" data="0012a032"/>
<value name="KeyMacro02.Text" type="string" data="Task(&quot;PowerShell&quot;)"/>
<value name="KeyMacro03" type="dword" data="00000000"/>
<value name="KeyMacro03.Text" type="string" data=""/>
<value name="KeyMacro04" type="dword" data="00000000"/>
<value name="KeyMacro04.Text" type="string" data=""/>
<value name="KeyMacro05" type="dword" data="00000000"/>
<value name="KeyMacro05.Text" type="string" data=""/>
<value name="KeyMacro06" type="dword" data="00000000"/>
<value name="KeyMacro06.Text" type="string" data=""/>
<value name="KeyMacro07" type="dword" data="00000000"/>
<value name="KeyMacro07.Text" type="string" data=""/>
<value name="KeyMacro08" type="dword" data="00000000"/>
<value name="KeyMacro08.Text" type="string" data=""/>
<value name="KeyMacro09" type="dword" data="00000000"/>
<value name="KeyMacro09.Text" type="string" data=""/>
<value name="KeyMacro10" type="dword" data="00000000"/>
<value name="KeyMacro10.Text" type="string" data=""/>
<value name="KeyMacro11" type="dword" data="00000000"/>
<value name="KeyMacro11.Text" type="string" data=""/>
<value name="KeyMacro12" type="dword" data="00000000"/>
<value name="KeyMacro12.Text" type="string" data=""/>
<value name="KeyMacro13" type="dword" data="00000000"/>
<value name="KeyMacro13.Text" type="string" data=""/>
<value name="KeyMacro14" type="dword" data="00000000"/>
<value name="KeyMacro14.Text" type="string" data=""/>
<value name="KeyMacro15" type="dword" data="00000000"/>
<value name="KeyMacro15.Text" type="string" data=""/>
<value name="KeyMacro16" type="dword" data="00000000"/>
<value name="KeyMacro16.Text" type="string" data=""/>
<value name="KeyMacro17" type="dword" data="00000000"/>
<value name="KeyMacro17.Text" type="string" data=""/>
<value name="KeyMacro18" type="dword" data="00000000"/>
<value name="KeyMacro18.Text" type="string" data=""/>
<value name="KeyMacro19" type="dword" data="00000000"/>
<value name="KeyMacro19.Text" type="string" data=""/>
<value name="KeyMacro20" type="dword" data="00000000"/>
<value name="KeyMacro20.Text" type="string" data=""/>
<value name="KeyMacro21" type="dword" data="00000000"/>
<value name="KeyMacro21.Text" type="string" data=""/>
<value name="KeyMacro22" type="dword" data="00000000"/>
<value name="KeyMacro22.Text" type="string" data=""/>
<value name="KeyMacro23" type="dword" data="00000000"/>
<value name="KeyMacro23.Text" type="string" data=""/>
<value name="KeyMacro24" type="dword" data="00000000"/>
<value name="KeyMacro24.Text" type="string" data=""/>
<value name="KeyMacro25" type="dword" data="00000000"/>
<value name="KeyMacro25.Text" type="string" data=""/>
<value name="KeyMacro26" type="dword" data="00000000"/>
<value name="KeyMacro26.Text" type="string" data=""/>
<value name="KeyMacro27" type="dword" data="00000000"/>
<value name="KeyMacro27.Text" type="string" data=""/>
<value name="KeyMacro28" type="dword" data="00000000"/>
<value name="KeyMacro28.Text" type="string" data=""/>
<value name="KeyMacro29" type="dword" data="00000000"/>
<value name="KeyMacro29.Text" type="string" data=""/>
<value name="KeyMacro30" type="dword" data="00000000"/>
<value name="KeyMacro30.Text" type="string" data=""/>
<value name="KeyMacro31" type="dword" data="00000000"/>
<value name="KeyMacro31.Text" type="string" data=""/>
<value name="KeyMacro32" type="dword" data="00000000"/>
<value name="KeyMacro32.Text" type="string" data=""/>
<value name="CTS.VkBlock" type="hex" data="a4"/>
<value name="CTS.VkText" type="hex" data="a0"/>
<value name="CTS.VkAct" type="hex" data="00"/>
<value name="CTS.VkPrompt" type="hex" data="00"/>
<value name="FarGotoEditorVk" type="hex" data="a2"/>
<value name="DndLKey" type="hex" data="00"/>
<value name="DndRKey" type="hex" data="a2"/>
<value name="WndDragKey" type="dword" data="00121101"/>
<key name="Tasks" modified="2014-06-20 03:30:15" build="140615">
<value name="Count" type="dword" data="00000002"/>
<key name="Task1" modified="2014-06-20 03:30:15" build="140615">
<value name="Name" type="string" data="{bash}"/>
<value name="Hotkey" type="dword" data="00101131"/>
<value name="GuiArgs" type="string" data="/icon %ConEmuDir%\..\..\msys.ico"/>
<value name="Cmd1" type="string" data="&quot;%ConEmuDir%\..\..\usr\bin\bash.exe&quot; --login -i -new_console:n"/>
<value name="Active" type="dword" data="00000000"/>
<value name="Count" type="dword" data="00000001"/>
</key>
<key name="Task2" modified="2014-06-20 03:30:15" build="140615">
<value name="Name" type="string" data="{cmd}"/>
<value name="Hotkey" type="dword" data="00101132"/>
<value name="GuiArgs" type="string" data="/dir &quot;%ConEmuDir%\..\..\home\%USERNAME%&quot;"/>
<value name="Cmd1" type="string" data="cmd /k set USERPROFILE=%CD% -new_console:n"/>
<value name="Active" type="dword" data="00000000"/>
<value name="Count" type="dword" data="00000001"/>
</key>
<key name="Task3" modified="2014-06-20 03:27:51" build="140615">
<value name="Name" type="string" data="{PowerShell}"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=""/>
<value name="Cmd1" type="string" data="powershell.exe"/>
<value name="Active" type="dword" data="00000000"/>
<value name="Count" type="dword" data="00000001"/>
</key>
<key name="Task4" modified="2014-06-20 03:27:51" build="140615">
<value name="Name" type="string" data="{PowerShell (Admin)}"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=""/>
<value name="Cmd1" type="string" data="powershell.exe -new_console:a"/>
<value name="Active" type="dword" data="00000000"/>
<value name="Count" type="dword" data="00000001"/>
</key>
<key name="Task6" modified="2014-06-20 03:27:51" build="140615">
<value name="Name" type="string" data="{cmd 64/32}"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=""/>
<value name="Cmd1" type="string" data="&gt;&quot;%windir%\system32\cmd.exe&quot; /k ver &amp; echo This is Native cmd.exe"/>
<value name="Cmd2" type="string" data="&quot;%windir%\syswow64\cmd.exe&quot; /k ver &amp; echo This is 32 bit cmd.exe -new_console:s50V"/>
<value name="Active" type="dword" data="00000001"/>
<value name="Count" type="dword" data="00000002"/>
</key>
</key>
<key name="Apps" modified="2014-06-20 03:30:15" build="140615">
<value name="Count" type="dword" data="00000000"/>
</key>
<key name="Colors" modified="2014-06-20 03:30:15" build="140615">
<value name="Count" type="dword" data="00000001"/>
<key name="Palette1" modified="2014-06-20 03:30:15" build="140615">
<value name="Name" type="string" data="Monokai"/>
<value name="ExtendColors" type="hex" data="00"/>
<value name="ExtendColorIdx" type="hex" data="0e"/>
<value name="TextColorIdx" type="hex" data="10"/>
<value name="BackColorIdx" type="hex" data="10"/>
<value name="PopTextColorIdx" type="hex" data="10"/>
<value name="PopBackColorIdx" type="hex" data="10"/>
<value name="ColorTable00" type="dword" data="00222827"/>
<value name="ColorTable01" type="dword" data="009e5401"/>
<value name="ColorTable02" type="dword" data="0004aa74"/>
<value name="ColorTable03" type="dword" data="00a6831a"/>
<value name="ColorTable04" type="dword" data="003403a7"/>
<value name="ColorTable05" type="dword" data="009c5689"/>
<value name="ColorTable06" type="dword" data="0049b6b6"/>
<value name="ColorTable07" type="dword" data="00cacaca"/>
<value name="ColorTable08" type="dword" data="007c7c7c"/>
<value name="ColorTable09" type="dword" data="00f58303"/>
<value name="ColorTable10" type="dword" data="0006d08d"/>
<value name="ColorTable11" type="dword" data="00e5c258"/>
<value name="ColorTable12" type="dword" data="004b04f3"/>
<value name="ColorTable13" type="dword" data="00b87da8"/>
<value name="ColorTable14" type="dword" data="0081cccc"/>
<value name="ColorTable15" type="dword" data="00ffffff"/>
<value name="ColorTable16" type="dword" data="00000000"/>
<value name="ColorTable17" type="dword" data="00800000"/>
<value name="ColorTable18" type="dword" data="00008000"/>
<value name="ColorTable19" type="dword" data="00808000"/>
<value name="ColorTable20" type="dword" data="00000080"/>
<value name="ColorTable21" type="dword" data="00800080"/>
<value name="ColorTable22" type="dword" data="00008080"/>
<value name="ColorTable23" type="dword" data="00c0c0c0"/>
<value name="ColorTable24" type="dword" data="00808080"/>
<value name="ColorTable25" type="dword" data="00ff0000"/>
<value name="ColorTable26" type="dword" data="0000ff00"/>
<value name="ColorTable27" type="dword" data="00ffff00"/>
<value name="ColorTable28" type="dword" data="000000ff"/>
<value name="ColorTable29" type="dword" data="00ff00ff"/>
<value name="ColorTable30" type="dword" data="0000ffff"/>
<value name="ColorTable31" type="dword" data="00ffffff"/>
</key>
</key>
<value name="CmdLineHistory" type="multi"/>
</key>
</key>
</key>

View File

@@ -0,0 +1,137 @@
# Maintainer: Martell Malone <martellmalone@gmail.com>
_realname=conemu
_mingw_suff=mingw-w64-cross
pkgname="${_realname}-git"
replaces="${_realname}"
provides=("${_realname}")
conflicts=("${_realname}")
pkgver=r2173.14d8383
pkgrel=1
pkgdesc="Customizable Windows console emulator with tabs"
arch=('i686' 'x86_64')
url="http://code.google.com/p/conemu-maximus5/"
license=('custom')
makedepends=("git" "${_mingw_suff}-gcc" "${_mingw_suff}-binutils" "${_mingw_suff}-crt")
options=('!strip' 'staticlibs' '!emptydirs' '!buildflags')
source=(#"${_realname}"::"git+http://github.com/martell/ConEmu.git#branch=mingw64"
"${_realname}"::"git+https://github.com/Maximus5/ConEmu.git"
"0001-added-support-for-a-PREFIX-in-makefile.patch"
"0002-Dialog-Flags-added-to-Mingw-w64.patch"
"0003-SecureZeroMemory-support-already-exists-in-Mingw-w64.patch"
"0004-ShObjIdl-support-already-exists-in-mingw-w64.patch"
"0005-Use-InterlockedIncrement-when-compiling-under-mingw-.patch"
"0006-IID_IDragSourceHelper2-is-already-defined-in-mingw-w.patch"
"0007-wmemmove_s-is-available-in-mingw-w64.patch"
"0008-use-_printf-because-printf-can-be-undefined-in-this-.patch"
"0009-Internet-structs-and-defines-are-already-defined-in-.patch"
"0010-__forceinline-is-already-defined-in-mingw-w64.patch"
"0011-fixed-interlocked2-for-mingw-w64.patch"
"0012-AssertMessageBox-is-not-supported-in-mingw-w64.patch"
"0013-Add-guard-to-gestureinfo-as-it-is-defined-in-mingw-w.patch"
"0014-msxml-is-supported-in-mingw-w64.patch"
"0015-fix-writeprocessd-export-for-gcc.patch"
"0016-fix-ConEmuHK-linking-under-gcc.patch"
"0017-Add-guard-to-vista-transparency-for-mingw-w64.patch"
"0018-Fix-various-cross-initialization-errors-under-gcc.patch"
"ConEmu.xml")
md5sums=("SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP")
pkgver() {
cd "$srcdir/$_realname"
printf 'r%s.%s' "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
prepare() {
cd "$srcdir/$_realname"
git am "$srcdir/0001-added-support-for-a-PREFIX-in-makefile.patch"
git am "$srcdir/0002-Dialog-Flags-added-to-Mingw-w64.patch"
git am "$srcdir/0003-SecureZeroMemory-support-already-exists-in-Mingw-w64.patch"
git am "$srcdir/0004-ShObjIdl-support-already-exists-in-mingw-w64.patch"
git am "$srcdir/0005-Use-InterlockedIncrement-when-compiling-under-mingw-.patch"
git am "$srcdir/0006-IID_IDragSourceHelper2-is-already-defined-in-mingw-w.patch"
git am "$srcdir/0007-wmemmove_s-is-available-in-mingw-w64.patch"
git am "$srcdir/0008-use-_printf-because-printf-can-be-undefined-in-this-.patch"
git am "$srcdir/0009-Internet-structs-and-defines-are-already-defined-in-.patch"
git am "$srcdir/0010-__forceinline-is-already-defined-in-mingw-w64.patch"
git am "$srcdir/0011-fixed-interlocked2-for-mingw-w64.patch"
git am "$srcdir/0012-AssertMessageBox-is-not-supported-in-mingw-w64.patch"
git am "$srcdir/0013-Add-guard-to-gestureinfo-as-it-is-defined-in-mingw-w.patch"
git am "$srcdir/0014-msxml-is-supported-in-mingw-w64.patch"
git am "$srcdir/0015-fix-writeprocessd-export-for-gcc.patch"
git am "$srcdir/0016-fix-ConEmuHK-linking-under-gcc.patch"
git am "$srcdir/0017-Add-guard-to-vista-transparency-for-mingw-w64.patch"
git am "$srcdir/0018-Fix-various-cross-initialization-errors-under-gcc.patch"
}
build() {
case "${CARCH}" in
i686*)
_CC=i686-w64-mingw32
;;
x86_64*)
_CC=x86_64-w64-mingw32
;;
esac
cd "${_realname}/src"
# NOTE:
# The ugliest build system I've ever seen, yuck!
# NOTE:
# Don't remove `-static*' switches from `USERLIBSFIRST'! Otherwise when
# running `cmd.exe' (Command Prompt) in ConEmu, it cannot find
# `libstdc++-6.dll' if it is not in the current `PATH' environment variable.
PREFIX="${_CC}-" make -f makefile_all_gcc WIDE="1" \
USERCPP="-pipe -O3 -fomit-frame-pointer -fpermissive -std=c++11" \
USERLIBSFIRST="-static -static-libgcc -static-libstdc++"
}
package() {
cd "$srcdir/$_realname"
mkdir -p "${pkgdir}/opt/bin"
local suffix=''
if test "${CARCH}" == 'x86_64'; then
suffix='64'
fi
cp -r "$srcdir/ConEmu.xml" "${pkgdir}/opt/bin"
cd "$srcdir/$_realname/Release"
cp -r "ConEmu.exe" "${pkgdir}/opt/bin/ConEmu.exe"
cd "ConEmu"
cp -r "ConEmuC.exe" "${pkgdir}/opt/bin/ConEmuC${suffix}.exe"
cp -r "ConEmuCD.dll" "${pkgdir}/opt/bin/ConEmuCD${suffix}.dll"
cp -r "ConEmuHk.dll" "${pkgdir}/opt/bin/ConEmuHk${suffix}.dll"
}