diff options
author | marha <marha@users.sourceforge.net> | 2013-07-24 14:25:51 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-07-25 08:25:18 +0200 |
commit | de54c5b749b3eefb75d420840c889533a58aa342 (patch) | |
tree | 6502771c9dd5a0d455388734060469b18f2e4011 /xorg-server | |
parent | 0606cba5be2dab08f0b4de540d7b278fa6273daf (diff) | |
download | vcxsrv-de54c5b749b3eefb75d420840c889533a58aa342.tar.gz vcxsrv-de54c5b749b3eefb75d420840c889533a58aa342.tar.bz2 vcxsrv-de54c5b749b3eefb75d420840c889533a58aa342.zip |
64-bit compilation now compiles and runs
Diffstat (limited to 'xorg-server')
-rw-r--r-- | xorg-server/glx/glxdricommon.c | 2 | ||||
-rw-r--r-- | xorg-server/hw/xwin/InitOutput.c | 5 | ||||
-rw-r--r-- | xorg-server/hw/xwin/swrastwgl_dri/makefile | 8 | ||||
-rw-r--r-- | xorg-server/hw/xwin/winSetAppUserModelID.c | 3 | ||||
-rw-r--r-- | xorg-server/hw/xwin/winmultiwindowwm.c | 116 | ||||
-rw-r--r-- | xorg-server/hw/xwin/winmultiwindowwndproc.c | 2 | ||||
-rw-r--r-- | xorg-server/hw/xwin/xlaunch/main.cc | 36 | ||||
-rw-r--r-- | xorg-server/hw/xwin/xlaunch/makefile | 10 | ||||
-rwxr-xr-x | xorg-server/installer/packageall.bat | 22 | ||||
-rw-r--r-- | xorg-server/installer/vcxsrv-64-debug.nsi | 88 | ||||
-rw-r--r-- | xorg-server/installer/vcxsrv-64.nsi | 248 | ||||
-rw-r--r-- | xorg-server/installer/vcxsrv-debug.nsi | 7 | ||||
-rw-r--r-- | xorg-server/installer/vcxsrv.nsi | 12 | ||||
-rw-r--r-- | xorg-server/makefile | 22 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/xkbrules.mak | 4 |
15 files changed, 413 insertions, 172 deletions
diff --git a/xorg-server/glx/glxdricommon.c b/xorg-server/glx/glxdricommon.c index 7710de303..97870b47e 100644 --- a/xorg-server/glx/glxdricommon.c +++ b/xorg-server/glx/glxdricommon.c @@ -57,7 +57,7 @@ getUST(int64_t * ust) return -EFAULT; #ifdef _MSC_VER - __asm int 3; + DebugBreak(); #else if (gettimeofday(&tv, NULL) == 0) { ust[0] = (tv.tv_sec * 1000000) + tv.tv_usec; diff --git a/xorg-server/hw/xwin/InitOutput.c b/xorg-server/hw/xwin/InitOutput.c index a35721e74..f194d535f 100644 --- a/xorg-server/hw/xwin/InitOutput.c +++ b/xorg-server/hw/xwin/InitOutput.c @@ -975,11 +975,6 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char *argv[]) winPropertyStoreInit(); #endif -#ifdef XWIN_MULTIWINDOW - /* Load libraries for taskbar grouping */ - winTaskbarInit (); -#endif - /* Store the instance handle */ g_hInstance = GetModuleHandle(NULL); diff --git a/xorg-server/hw/xwin/swrastwgl_dri/makefile b/xorg-server/hw/xwin/swrastwgl_dri/makefile index bf0e66f16..201f2aeb9 100644 --- a/xorg-server/hw/xwin/swrastwgl_dri/makefile +++ b/xorg-server/hw/xwin/swrastwgl_dri/makefile @@ -1,3 +1,7 @@ +ifndef PYTHON3 +$(error Please define PYTHON3 environment variable) +endif + SHAREDLIB = swrastwgl_dri INCLUDES += $(OBJDIR) ..\..\.. .. ..\glx @@ -10,8 +14,8 @@ CSRCS = swrastwgl_dri.c glwrap.c wgl_ext_api.c vpath %.c ../glx -$(OBJDIR)\generated_gl_wrappers.c: gen_gl_wrappers.py ../glx/gl.xml ../glx/gen_gl_wrappers.py ../glx/reg.py ../../../glx/dispatch.h +$(OBJDIR)\generated_gl_wrappers.c: ../glx/gen_gl_wrappers.py ../glx/gl.xml ../glx/gen_gl_wrappers.py ../glx/reg.py ../../../glx/dispatch.h $(PYTHON3) ../glx/gen_gl_wrappers.py -outfile $@ -nodbgcount -registry ../glx/gl.xml -staticwrappers -dispatchheader ../../../glx/dispatch.h -$(OBJDIR)\generated_wgl_wrappers.c: gen_gl_wrappers.py ../glx/wgl.xml ../glx/gen_gl_wrappers.py ../glx/reg.py +$(OBJDIR)\generated_wgl_wrappers.c: ../glx/gen_gl_wrappers.py ../glx/wgl.xml ../glx/gen_gl_wrappers.py ../glx/reg.py $(PYTHON3) ../glx/gen_gl_wrappers.py -outfile $@ -nodbgcount -registry ../glx/wgl.xml -prefix wgl -preresolve diff --git a/xorg-server/hw/xwin/winSetAppUserModelID.c b/xorg-server/hw/xwin/winSetAppUserModelID.c index 41615e19c..3c449a3a8 100644 --- a/xorg-server/hw/xwin/winSetAppUserModelID.c +++ b/xorg-server/hw/xwin/winSetAppUserModelID.c @@ -34,6 +34,7 @@ #include "winmsg.h" #include <shlwapi.h> +#include <propvarutil.h> #define INITGUID #include "initguid.h" @@ -95,7 +96,7 @@ winSetAppUserModelID(HWND hWnd, const char *AppID) hr = g_pSHGetPropertyStoreForWindow(hWnd, &IID_IPropertyStore, (void **) &pps); if (SUCCEEDED(hr) && pps) { - memset(&pv, 0, sizeof(PROPVARIANT)); + PropVariantInit(&pv); if (AppID) { pv.vt = VT_LPWSTR; hr = SHStrDupA(AppID, &pv.pwszVal); diff --git a/xorg-server/hw/xwin/winmultiwindowwm.c b/xorg-server/hw/xwin/winmultiwindowwm.c index 3187f2172..e8fbf08c0 100644 --- a/xorg-server/hw/xwin/winmultiwindowwm.c +++ b/xorg-server/hw/xwin/winmultiwindowwm.c @@ -65,9 +65,6 @@ typedef int pid_t; #include "windowstr.h" #include "winmultiwindowclass.h" -#include <shlwapi.h> -#include "taskbar.h" - #ifdef XWIN_MULTIWINDOWEXTWM #define _WINDOWSWM_SERVER_ #include <X11/extensions/windowswmstr.h> @@ -207,10 +204,6 @@ static pthread_t g_winMultiWindowXMsgProcThread; static Bool g_shutdown = FALSE; static Bool redirectError = FALSE; static Bool g_fAnotherWMRunning = FALSE; -static HMODULE g_hmodShell32Dll = NULL; -static HMODULE g_hmodOle32Dll = NULL; -static SHGETPROPERTYSTOREFORWINDOWPROC g_pSHGetPropertyStoreForWindow = NULL; -static PROPVARIANTCLEARPROC g_pPropVariantClear = NULL; /* * PushMessage - Push a message onto the queue @@ -458,7 +451,7 @@ getHwnd(WMInfoPtr pWMInfo, Window iWindow) iWindow, pWMInfo->atmPrivMap, 0, - 1, + sizeof(HWND)/4, False, XA_INTEGER, &atmType, @@ -701,7 +694,7 @@ winMultiWindowWMProc(void *pArg) XChangeProperty(pWMInfo->pDisplay, pNode->msg.iWindow, pWMInfo->atmPrivMap, XA_INTEGER, //pWMInfo->atmPrivMap, 32, PropModeReplace, - (unsigned char *) &(pNode->msg.hwndWindow), 1); + (unsigned char *) &(pNode->msg.hwndWindow), sizeof(HWND)/4); UpdateName(pWMInfo, pNode->msg.iWindow); UpdateIcon(pWMInfo, pNode->msg.iWindow); break; @@ -712,7 +705,7 @@ winMultiWindowWMProc(void *pArg) XChangeProperty(pWMInfo->pDisplay, pNode->msg.iWindow, pWMInfo->atmPrivMap, XA_INTEGER, //pWMInfo->atmPrivMap, 32, PropModeReplace, - (unsigned char *) &(pNode->msg.hwndWindow), 1); + (unsigned char *) &(pNode->msg.hwndWindow), sizeof(HWND)/4); break; case WM_WM_MAP3: @@ -722,7 +715,7 @@ winMultiWindowWMProc(void *pArg) XChangeProperty(pWMInfo->pDisplay, pNode->msg.iWindow, pWMInfo->atmPrivMap, XA_INTEGER, //pWMInfo->atmPrivMap, 32, PropModeReplace, - (unsigned char *) &(pNode->msg.hwndWindow), 1); + (unsigned char *) &(pNode->msg.hwndWindow), sizeof(HWND)/4); UpdateName(pWMInfo, pNode->msg.iWindow); UpdateIcon(pWMInfo, pNode->msg.iWindow); UpdateStyle(pWMInfo, pNode->msg.iWindow); @@ -1006,14 +999,14 @@ winMultiWindowXMsgProc(void *pArg) (pProcArg->pDisplay, pProcArg->dwScreen, TRUE)) { if (!g_fAnotherWMRunning) { g_fAnotherWMRunning = TRUE; - SendMessage(*(HWND *) pProcArg->hwndScreen, WM_UNMANAGE, 0, + SendMessage(pProcArg->hwndScreen, WM_UNMANAGE, 0, 0); } } else { if (g_fAnotherWMRunning) { g_fAnotherWMRunning = FALSE; - SendMessage(*(HWND *) pProcArg->hwndScreen, WM_MANAGE, 0, + SendMessage(pProcArg->hwndScreen, WM_MANAGE, 0, 0); } } @@ -1857,100 +1850,3 @@ winUpdateWindowPosition(HWND hWnd, HWND * zstyle) rcNew.right - rcNew.left, rcNew.bottom - rcNew.top, 0); } - -void -winTaskbarInit (void) -{ - /* - Load libraries and get function pointers to SHGetPropertyStoreForWindow - and PropVariantClear for winSetAppID() - */ - - /* - SHGetPropertyStoreForWindow is only supported since Windows 7. On previous - versions the pointer will be NULL and taskbar grouping is not supported. - winSetAppID() will do nothing in this case. - */ - g_hmodShell32Dll = LoadLibrary ("shell32.dll"); - if (g_hmodShell32Dll == NULL) - { - ErrorF ("winTaskbarInit - Could not load shell32.dll\n"); - return; - } - - g_pSHGetPropertyStoreForWindow = (SHGETPROPERTYSTOREFORWINDOWPROC) GetProcAddress (g_hmodShell32Dll, "SHGetPropertyStoreForWindow"); - if (g_pSHGetPropertyStoreForWindow == NULL) - { - ErrorF ("winTaskbarInit - Could not get SHGetPropertyStoreForWindow address\n"); - return; - } - - /* - PropVariantClear is supported since NT4, but we have no propidl.h to - provide a prototype for it - */ - g_hmodOle32Dll = LoadLibrary ("ole32.dll"); - if (g_hmodOle32Dll == NULL) - { - ErrorF ("winTaskbarInit - Could not load ole32.dll\n"); - return; - } - - g_pPropVariantClear = (PROPVARIANTCLEARPROC) GetProcAddress (g_hmodOle32Dll, "PropVariantClear"); - if (g_pPropVariantClear == NULL) - { - ErrorF ("winTaskbarInit - Could not get g_pPropVariantClear address\n"); - return; - } -} - -void -winTaskbarDestroy (void) -{ - if (g_hmodOle32Dll != NULL) - { - FreeLibrary (g_hmodOle32Dll); - g_hmodOle32Dll = NULL; - g_pPropVariantClear = NULL; - } - if (g_hmodShell32Dll != NULL) - { - FreeLibrary (g_hmodShell32Dll); - g_hmodShell32Dll = NULL; - g_pSHGetPropertyStoreForWindow = NULL; - } -} - -void -winSetAppID (HWND hWnd, const char* AppID) -{ - PROPVARIANT pv; - IPropertyStore *pps = NULL; - HRESULT hr; - - if (g_pSHGetPropertyStoreForWindow == NULL || - g_pPropVariantClear == NULL) - { - return; - } - - winDebug ("winSetAppID - hwnd 0x%08x appid '%s'\n", hWnd, AppID); - - hr = g_pSHGetPropertyStoreForWindow (hWnd, &IID_IPropertyStore, (void**)&pps); - if(SUCCEEDED(hr) && pps) - { - memset(&pv, 0, sizeof(PROPVARIANT)); - if(AppID) - { - pv.vt = VT_LPWSTR; - hr = SHStrDupA(AppID, &pv.pwszVal); - } - - if(SUCCEEDED(hr)) - { - hr = pps->lpVtbl->SetValue(pps, &PKEY_AppUserModel_ID, &pv); - g_pPropVariantClear(&pv); - } - pps->lpVtbl->Release(pps); - } -} diff --git a/xorg-server/hw/xwin/winmultiwindowwndproc.c b/xorg-server/hw/xwin/winmultiwindowwndproc.c index af6bb528e..b52d5990b 100644 --- a/xorg-server/hw/xwin/winmultiwindowwndproc.c +++ b/xorg-server/hw/xwin/winmultiwindowwndproc.c @@ -806,7 +806,7 @@ winTopLevelWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) } /* Prevent the mouse wheel from stalling when another window is minimized */ if (HIWORD(wParam) == 0 && LOWORD(wParam) == WA_ACTIVE && - (HWND) lParam != NULL && (HWND) lParam != (HWND) GetParent(hwnd)) + (HWND) lParam != NULL && (HWND) lParam != GetParent(hwnd)) SetFocus(hwnd); return 0; diff --git a/xorg-server/hw/xwin/xlaunch/main.cc b/xorg-server/hw/xwin/xlaunch/main.cc index 8ec1e011c..bf4f5e6a5 100644 --- a/xorg-server/hw/xwin/xlaunch/main.cc +++ b/xorg-server/hw/xwin/xlaunch/main.cc @@ -219,7 +219,7 @@ class CMyWizard : public CWizard config.window = CConfig::Nodecoration; else { - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); return TRUE; } // Get selected display number @@ -233,27 +233,27 @@ class CMyWizard : public CWizard if (config.display.empty()) { MessageBox(hwndDlg,"Please fill in a display number.","Error",MB_OK); - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); } else - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_CLIENTS); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_CLIENTS); return TRUE; case IDD_CLIENTS: // Check for select client startup method if (IsDlgButtonChecked(hwndDlg, IDC_CLIENT)) { config.client = CConfig::StartProgram; - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_PROGRAM); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_PROGRAM); } else if (IsDlgButtonChecked(hwndDlg, IDC_XDMCP)) { config.client = CConfig::XDMCP; - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_XDMCP); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_XDMCP); } else if (IsDlgButtonChecked(hwndDlg, IDC_CLIENT_NONE)) { config.client = CConfig::NoClient; - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_EXTRA); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_EXTRA); } else - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); return TRUE; case IDD_PROGRAM: // Check wether local or remote client should be started @@ -263,7 +263,7 @@ class CMyWizard : public CWizard config.local = false; else { - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); return TRUE; } // Read program, user and host name @@ -290,9 +290,9 @@ class CMyWizard : public CWizard } // Check for valid input if (!config.local && (config.host.empty() || config.localprogram.empty() || config.remoteprogram.empty())) - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); else - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_EXTRA); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_EXTRA); return TRUE; case IDD_XDMCP: // Check for broadcast @@ -302,7 +302,7 @@ class CMyWizard : public CWizard config.broadcast = false; else { - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); return TRUE; } // Check for indirect mode @@ -319,9 +319,9 @@ class CMyWizard : public CWizard } // Check for valid input if (!config.broadcast && config.xdmcp_host.empty()) - SetWindowLong(hwndDlg, DWL_MSGRESULT, -1); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, -1); else - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_EXTRA); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_EXTRA); if (IsDlgButtonChecked(hwndDlg, IDC_XDMCP_TERMINATE)) config.xdmcpterminate = true; else @@ -355,7 +355,7 @@ class CMyWizard : public CWizard buffer[511] = 0; config.extra_params = buffer; } - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_FINISH); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_FINISH); return TRUE; default: break; @@ -385,20 +385,20 @@ class CMyWizard : public CWizard { case IDD_PROGRAM: case IDD_XDMCP: - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_CLIENTS); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_CLIENTS); return TRUE; case IDD_FONTPATH: case IDD_EXTRA: // temporary. fontpath is disabled switch (config.client) { case CConfig::NoClient: - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_CLIENTS); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_CLIENTS); return TRUE; case CConfig::StartProgram: - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_PROGRAM); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_PROGRAM); return TRUE; case CConfig::XDMCP: - SetWindowLong(hwndDlg, DWL_MSGRESULT, IDD_XDMCP); + SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, IDD_XDMCP); return TRUE; } break; diff --git a/xorg-server/hw/xwin/xlaunch/makefile b/xorg-server/hw/xwin/xlaunch/makefile index 98656e57e..83426fe19 100644 --- a/xorg-server/hw/xwin/xlaunch/makefile +++ b/xorg-server/hw/xwin/xlaunch/makefile @@ -11,18 +11,12 @@ WINAPP = xlaunch RESOURCES = resources.rc
-$(OBJDIR)\%.res : resources\%.rc $(wildcard resources\*.rc)
+$(OBJDIR)\%.res : resources\%.rc $(wildcard resources\*.rc)
$(RC) $(RCFLAGS) $(RCDEFINES:%=-d "%") $(RCINCLUDES:%=-i %) -Fo$(relpath $@) $<
LIBDIRS=$(dir $(INCLUDELIBFILES))
load_makefile $(LIBDIRS:%$(OBJDIR)\=%makefile MAKESERVER=0 DEBUG=$(DEBUG);)
-LINKLIBS += $(MHMAKECONF)\libxml2\lib\libxml2.lib
-
-ifeq ($(DEBUG),1)
-LINKLIBS += $(MHMAKECONF)\pthreads\pthreadVC2d.lib
-else
-LINKLIBS += $(MHMAKECONF)\pthreads\pthreadVC2.lib
-endif
+LINKLIBS += $(LIBXMLLIB) $(PTHREADLIB)
diff --git a/xorg-server/installer/packageall.bat b/xorg-server/installer/packageall.bat index 2195223fe..71a1a480b 100755 --- a/xorg-server/installer/packageall.bat +++ b/xorg-server/installer/packageall.bat @@ -1,10 +1,10 @@ @echo off
if exist vcxsrv*.installer.exe del vcxsrv*.installer.exe
-copy %systemroot%\system32\msvcr100.dll
-copy %systemroot%\system32\msvcp100.dll
-copy %systemroot%\system32\msvcr100d.dll
-copy %systemroot%\system32\msvcp100d.dll
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x86\Microsoft.VC100.CRT\msvcp100.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x86\Microsoft.VC100.CRT\msvcr100.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\Debug_NonRedist\x86\Microsoft.VC100.DebugCRT\msvcp100d.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\Debug_NonRedist\x86\Microsoft.VC100.DebugCRT\msvcr100d.dll"
if exist "C:\Program Files (x86)\NSIS\Unicode\makensis.exe" (
"C:\Program Files (x86)\NSIS\Unicode\makensis.exe" vcxsrv.nsi
@@ -13,6 +13,20 @@ if exist "C:\Program Files (x86)\NSIS\Unicode\makensis.exe" ( "C:\Program Files\NSIS\makensis.exe" vcxsrv.nsi
"C:\Program Files\NSIS\makensis.exe" vcxsrv-debug.nsi
)
+
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.CRT\msvcp100.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.CRT\msvcr100.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\Debug_NonRedist\x64\Microsoft.VC100.DebugCRT\msvcp100d.dll"
+copy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\Debug_NonRedist\x64\Microsoft.VC100.DebugCRT\msvcr100d.dll"
+
+if exist "C:\Program Files (x86)\NSIS\Unicode\makensis.exe" (
+ "C:\Program Files (x86)\NSIS\Unicode\makensis.exe" vcxsrv-64.nsi
+ "C:\Program Files (x86)\NSIS\Unicode\makensis.exe" vcxsrv-64-debug.nsi
+) else (
+ "C:\Program Files\NSIS\makensis.exe" vcxsrv-64.nsi
+ "C:\Program Files\NSIS\makensis.exe" vcxsrv-64-debug.nsi
+)
+
del msvcr100.dll
del msvcr100d.dll
del msvcp100.dll
diff --git a/xorg-server/installer/vcxsrv-64-debug.nsi b/xorg-server/installer/vcxsrv-64-debug.nsi new file mode 100644 index 000000000..e4cee04fd --- /dev/null +++ b/xorg-server/installer/vcxsrv-64-debug.nsi @@ -0,0 +1,88 @@ +/* This file is part of vcxsrv.
+ *
+ * Copyright (C) 2009 Marc Haesen
+ *
+ * vcxsrv is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * vcxsrv is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with vcxsrv. If not, see <http://www.gnu.org/licenses/>.
+*/
+;--------------------------------
+
+; The name of the installer
+Name "VcXsrv"
+
+; The file to write
+OutFile "vcxsrv-64-debug.1.14.2.0.installer.exe"
+
+; The default installation directory
+InstallDir $PROGRAMFILES64\VcXsrv
+
+; Registry key to check for directory (so if you install again, it will
+; overwrite the old one automatically)
+InstallDirRegKey HKLM SOFTWARE\VcXsrv "Install_Dir_64"
+
+; Request application privileges for Windows Vista
+RequestExecutionLevel admin
+
+;--------------------------------
+InstType "Full"
+
+; Pages
+
+Page components
+Page directory
+Page instfiles
+
+UninstPage uninstConfirm
+UninstPage instfiles
+
+SetPluginUnload alwaysoff
+; ShowInstDetails show
+XPStyle on
+
+!define FUSION_REFCOUNT_UNINSTALL_SUBKEY_GUID {8cedc215-ac4b-488b-93c0-a50a49cb2fb8}
+
+;--------------------------------
+; The stuff to install
+Section "VcXsrv debug exe and dlls"
+
+ SectionIn RO
+ SectionIn 1
+
+ ; Set output path to the installation directory.
+ SetOutPath $INSTDIR
+
+ ; Put files there
+ File "..\obj64\servdebug\vcxsrv.exe"
+ File "..\..\xkbcomp\obj64\debug\xkbcomp.exe"
+ File "..\..\apps\xhost\obj64\debug\xhost.exe"
+ File "..\..\apps\xrdb\obj64\debug\xrdb.exe"
+ File "..\..\apps\xauth\obj64\debug\xauth.exe"
+ File "..\..\apps\xcalc\obj64\debug\xcalc.exe"
+ File "..\..\apps\xclock\obj64\debug\xclock.exe"
+ File "..\..\apps\xwininfo\obj64\debug\xwininfo.exe"
+ File "..\hw\xwin\xlaunch\obj64\debug\xlaunch.exe"
+ File "..\..\tools\plink\obj64\debug\plink.exe"
+ File "..\..\mesalib\windows\VC8\mesa\x64\Debug\swrast_dri.dll"
+ File "..\hw\xwin\swrastwgl_dri\obj64\debug\swrastwgl_dri.dll"
+ File "..\..\dxtn\obj64\debug\dxtn.dll"
+ File "..\..\zlib\obj64\debug\zlib1.dll"
+ File "..\..\libxcb\src\obj64\debug\libxcb.dll"
+ File "..\..\libXau\obj64\debug\libXau.dll"
+ File "..\..\libX11\obj64\debug\libX11.dll"
+ File "..\..\libXext\src\obj64\debug\libXext.dll"
+ File "..\..\libXmu\src\obj64\debug\libXmu.dll"
+ File "msvcr100d.dll"
+ File "msvcp100d.dll"
+
+ WriteRegStr HKLM SOFTWARE\VcXsrv "Install_Dir_64" $INSTDIR
+SectionEnd
diff --git a/xorg-server/installer/vcxsrv-64.nsi b/xorg-server/installer/vcxsrv-64.nsi new file mode 100644 index 000000000..a0510cb31 --- /dev/null +++ b/xorg-server/installer/vcxsrv-64.nsi @@ -0,0 +1,248 @@ +/* This file is part of vcxsrv.
+ *
+ * Copyright (C) 2009 Marc Haesen
+ *
+ * vcxsrv is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * vcxsrv is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with vcxsrv. If not, see <http://www.gnu.org/licenses/>.
+*/
+;--------------------------------
+
+; The name of the installer
+Name "VcXsrv"
+
+; The file to write
+OutFile "vcxsrv-64.1.14.2.0.installer.exe"
+
+; The default installation directory
+InstallDir $programfiles64\VcXsrv
+
+; Registry key to check for directory (so if you install again, it will
+; overwrite the old one automatically)
+InstallDirRegKey HKLM SOFTWARE\VcXsrv "Install_Dir_64"
+
+; Request application privileges for Windows Vista
+RequestExecutionLevel admin
+
+;--------------------------------
+InstType "Full"
+InstType "Minimal"
+
+; Pages
+
+Page components
+Page directory
+Page instfiles
+
+UninstPage uninstConfirm
+UninstPage instfiles
+
+SetPluginUnload alwaysoff
+; ShowInstDetails show
+XPStyle on
+
+!define FUSION_REFCOUNT_UNINSTALL_SUBKEY_GUID {8cedc215-ac4b-488b-93c0-a50a49cb2fb8}
+
+;--------------------------------
+; The stuff to install
+Section "VcXsrv (required)"
+
+ SectionIn RO
+ SectionIn 1 2 3
+
+ ; Set output path to the installation directory.
+ SetOutPath $INSTDIR
+
+ ; Remove old opengl32.dll file if it extits
+ IfFileExists "$INSTDIR\opengl32.dll" 0 +2
+ Delete "$INSTDIR\opengl32.dll"
+
+ ; Put files there
+ File "..\obj64\servrelease\vcxsrv.exe"
+ File "..\dix\protocol.txt"
+ File "..\system.XWinrc"
+ File "..\..\xkbcomp\obj64\release\xkbcomp.exe"
+ File "..\..\apps\xhost\obj64\release\xhost.exe"
+ File "..\..\apps\xrdb\obj64\release\xrdb.exe"
+ File "..\..\apps\xauth\obj64\release\xauth.exe"
+ File "..\..\apps\xcalc\obj64\release\xcalc.exe"
+ File "..\..\apps\xcalc\app-defaults\xcalc"
+ File "..\..\apps\xcalc\app-defaults\xcalc-color"
+ File "..\..\apps\xclock\obj64\release\xclock.exe"
+ File "..\..\apps\xclock\app-defaults\xclock"
+ File "..\..\apps\xclock\app-defaults\xclock-color"
+ File "..\..\apps\xwininfo\obj64\release\xwininfo.exe"
+ File "..\XKeysymDB"
+ File "..\..\libX11\src\XErrorDB"
+ File "..\..\libX11\src\xcms\Xcms.txt"
+ File "..\XtErrorDB"
+ File "..\.Xdefaults"
+ File "..\hw\xwin\xlaunch\obj64\release\xlaunch.exe"
+ File "..\..\tools\plink\obj64\release\plink.exe"
+ File "..\..\mesalib\windows\VC8\mesa\x64\Release\swrast_dri.dll"
+ File "..\hw\xwin\swrastwgl_dri\obj64\release\swrastwgl_dri.dll"
+ File "..\..\dxtn\obj64\release\dxtn.dll"
+ File "..\..\libxml2\bin64\libxml2-2.dll"
+ File "..\..\libxml2\bin64\libgcc_s_sjlj-1.dll"
+ File "..\..\libxml2\bin64\libiconv-2.dll"
+ File "..\..\libxml2\bin64\libwinpthread-1.dll"
+ File "..\..\zlib\obj64\release\zlib1.dll"
+ File "..\..\libxcb\src\obj64\release\libxcb.dll"
+ File "..\..\libXau\obj64\release\libXau.dll"
+ File "..\..\libX11\obj64\release\libX11.dll"
+ File "..\..\libXext\src\obj64\release\libXext.dll"
+ File "..\..\libXmu\src\obj64\release\libXmu.dll"
+ File "msvcr100.dll"
+ File "msvcp100.dll"
+ SetOutPath $INSTDIR\xkbdata
+ File /r "..\xkbdata\*.*"
+ SetOutPath $INSTDIR\locale
+ File /r "..\locale\*.*"
+ SetOutPath $INSTDIR\bitmaps
+ File /r "..\bitmaps\*.*"
+
+ ; Write the installation path into the registry
+ WriteRegStr HKLM SOFTWARE\VcXsrv "Install_Dir_64" $INSTDIR
+
+ ; Write the uninstall keys for Windows
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VcXsrv" "DisplayName" "VcXsrv"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VcXsrv" "UninstallString" '"$INSTDIR\uninstall.exe"'
+ WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VcXsrv" "NoModify" 1
+ WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VcXsrv" "NoRepair" 1
+ WriteUninstaller "uninstall.exe"
+
+ ; Register the xlaunch file extension
+ WriteRegStr HKCR ".xlaunch" "" "XLaunchFile"
+ WriteRegStr HKCR "XLaunchFile" "" "XLaunch Configuration"
+ WriteRegStr HKCR "XLaunchFile\DefaultIcon" "" "$INSTDIR\xlaunch.exe,0"
+ WriteRegStr HKCR "XLaunchFile\shell" "" 'open'
+ WriteRegStr HKCR "XLaunchFile\shell\open\command" "" '"$INSTDIR\XLaunch.exe" -run "%1"'
+ WriteRegStr HKCR "XLaunchFile\shell\open\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "XLaunchFile\shell\open\ddeexec\Topic" "" "System"
+ WriteRegStr HKCR "XLaunchFile\shell\edit\command" "" '"$INSTDIR\XLaunch.exe" -load "%1"'
+ WriteRegStr HKCR "XLaunchFile\shell\edit\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "XLaunchFile\shell\edit\ddeexec\Topic" "" "System"
+ WriteRegStr HKCR "XLaunchFile\shell\Validate\command" "" '"$INSTDIR\XLaunch.exe" -validate "%1"'
+ WriteRegStr HKCR "XLaunchFile\shell\Validate\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "XLaunchFile\shell\Validate\ddeexec\Topic" "" "System"
+
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell" "" 'open'
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\open\command" "" '"$INSTDIR\XLaunch.exe" -run "%1"'
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\open\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\open\ddeexec\Topic" "" "System"
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\edit\command" "" '"$INSTDIR\XLaunch.exe" -load "%1"'
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\edit\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\edit\ddeexec\Topic" "" "System"
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\Validate\command" "" '"$INSTDIR\XLaunch.exe" -validate "%1"'
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\Validate\ddeexec\Application" "" "XLaunch"
+ WriteRegStr HKCR "Applications\xlaunch.exe\shell\Validate\ddeexec\Topic" "" "System"
+
+SectionEnd
+
+; Optional section (can be disabled by the user)
+Section "Fonts"
+ SectionIn 1 3
+
+ SetOutPath $INSTDIR\fonts
+ CreateDirectory "$SMPROGRAMS\VcXsrv"
+ File /r "..\fonts\*.*"
+
+SectionEnd
+
+; Optional section (can be disabled by the user)
+Section "Start Menu Shortcuts"
+ SectionIn 1 3
+
+ SetOutPath $INSTDIR
+ CreateDirectory "$SMPROGRAMS\VcXsrv"
+ CreateShortCut "$SMPROGRAMS\VcXsrv\Uninstall VcXsrv.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
+ CreateShortCut "$SMPROGRAMS\VcXsrv\VcXsrv.lnk" "$INSTDIR\vcxsrv.exe" " :0 -ac -terminate -lesspointer -multiwindow -clipboard -wgl" "$INSTDIR\vcxsrv.exe" 0
+ CreateShortCut "$SMPROGRAMS\VcXsrv\XLaunch.lnk" "$INSTDIR\xlaunch.exe" "" "$INSTDIR\xlaunch.exe" 0
+
+SectionEnd
+
+; Optional section (can be disabled by the user)
+Section "Desktop Shortcuts"
+ SectionIn 1 3
+
+ SetOutPath $INSTDIR
+ CreateShortCut "$DESKTOP\VcXsrv.lnk" "$INSTDIR\vcxsrv.exe" " :0 -ac -terminate -lesspointer -multiwindow -clipboard -wgl" "$INSTDIR\vcxsrv.exe" 0
+ CreateShortCut "$DESKTOP\XLaunch.lnk" "$INSTDIR\xlaunch.exe" "" "$INSTDIR\xlaunch.exe" 0
+
+SectionEnd
+
+;--------------------------------
+
+; Uninstaller
+
+Section "Uninstall"
+
+ ; Remove registry keys
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VcXsrv"
+ DeleteRegKey HKLM SOFTWARE\VcXsrv
+
+ ; Register the xlaunch file extension
+ DeleteRegKey HKCR ".xlaunch"
+ DeleteRegKey HKCR "XLaunchFile"
+ DeleteRegKey HKCR "Applications\xlaunch.exe"
+
+ ; Remove files and uninstaller
+ Delete "$INSTDIR\vcxsrv.exe"
+ Delete "$INSTDIR\uninstall.exe"
+ Delete "$INSTDIR\protocol.txt"
+ Delete "$INSTDIR\system.XWinrc"
+ Delete "$INSTDIR\xkbcomp.exe"
+ Delete "$INSTDIR\xcalc.exe"
+ Delete "$INSTDIR\xcalc"
+ Delete "$INSTDIR\xcalc-color"
+ Delete "$INSTDIR\xclock.exe"
+ Delete "$INSTDIR\xclock"
+ Delete "$INSTDIR\xclock-color"
+ Delete "$INSTDIR\xwininfo.exe"
+ Delete "$INSTDIR\XKeysymDB"
+ Delete "$INSTDIR\XErrorDB"
+ Delete "$INSTDIR\Xcms.txt"
+ Delete "$INSTDIR\XtErrorDB"
+ Delete "$INSTDIR\.Xdefaults"
+ Delete "$INSTDIR\xlaunch.exe"
+ Delete "$INSTDIR\plink.exe"
+ Delete "$INSTDIR\swrast_dri.dll"
+ Delete "$INSTDIR\dxtn.dll"
+ Delete "$INSTDIR\swrastwgl_dri.dll"
+ Delete "$INSTDIR\libxcb.dll"
+ Delete "$INSTDIR\libXau.dll"
+ Delete "$INSTDIR\libX11.dll"
+ Delete "$INSTDIR\libXext.dll"
+ Delete "$INSTDIR\libXmu.dll"
+ Delete "$INSTDIR\libxml2.dll"
+ Delete "$INSTDIR\zlib1.dll"
+ Delete "$INSTDIR\iconv.dll"
+ Delete "$INSTDIR\msvcr100.dll"
+ Delete "$INSTDIR\msvcp100.dll"
+ Delete "$INSTDIR\msvcr100d.dll"
+ Delete "$INSTDIR\msvcp100d.dll"
+
+ RMDir /r "$INSTDIR\fonts"
+ RMDir /r "$INSTDIR\xkbdata"
+ RMDir /r "$INSTDIR\locale"
+
+ ; Remove shortcuts, if any
+ Delete "$SMPROGRAMS\VcXsrv\*.*"
+ Delete "$DESKTOP\VcXsrv.lnk"
+ Delete "$DESKTOP\XLaunch.lnk"
+
+ ; Remove directories used
+ RMDir "$SMPROGRAMS\VcXsrv"
+ RMDir "$INSTDIR"
+
+SectionEnd
+
diff --git a/xorg-server/installer/vcxsrv-debug.nsi b/xorg-server/installer/vcxsrv-debug.nsi index 875a7dd3d..654e0239f 100644 --- a/xorg-server/installer/vcxsrv-debug.nsi +++ b/xorg-server/installer/vcxsrv-debug.nsi @@ -24,11 +24,11 @@ Name "VcXsrv" OutFile "vcxsrv-debug.1.14.2.0.installer.exe"
; The default installation directory
-InstallDir $PROGRAMFILES\VcXsrv
+InstallDir $PROGRAMFILES32\VcXsrv
; Registry key to check for directory (so if you install again, it will
; overwrite the old one automatically)
-InstallDirRegKey HKLM "Software\VcXsrv" "Install_Dir"
+InstallDirRegKey HKLM SOFTWARE\VcXsrv "Install_Dir"
; Request application privileges for Windows Vista
RequestExecutionLevel admin
@@ -72,7 +72,7 @@ Section "VcXsrv debug exe and dlls" File "..\..\apps\xwininfo\obj\debug\xwininfo.exe"
File "..\hw\xwin\xlaunch\obj\debug\xlaunch.exe"
File "..\..\tools\plink\obj\debug\plink.exe"
- File "..\..\mesalib\windows\VC8\mesa\Debug\swrast_dri.dll"
+ File "..\..\mesalib\windows\VC8\mesa\Win32\Debug\swrast_dri.dll"
File "..\hw\xwin\swrastwgl_dri\obj\debug\swrastwgl_dri.dll"
File "..\..\dxtn\obj\debug\dxtn.dll"
File "..\..\zlib\obj\debug\zlib1.dll"
@@ -84,4 +84,5 @@ Section "VcXsrv debug exe and dlls" File "msvcr100d.dll"
File "msvcp100d.dll"
+ WriteRegStr HKLM SOFTWARE\VcXsrv "Install_Dir" "$INSTDIR"
SectionEnd
diff --git a/xorg-server/installer/vcxsrv.nsi b/xorg-server/installer/vcxsrv.nsi index 9063f2bc5..023b4e5ee 100644 --- a/xorg-server/installer/vcxsrv.nsi +++ b/xorg-server/installer/vcxsrv.nsi @@ -24,11 +24,11 @@ Name "VcXsrv" OutFile "vcxsrv.1.14.2.0.installer.exe"
; The default installation directory
-InstallDir $PROGRAMFILES\VcXsrv
+InstallDir $PROGRAMFILES32\VcXsrv
; Registry key to check for directory (so if you install again, it will
; overwrite the old one automatically)
-InstallDirRegKey HKLM "Software\VcXsrv" "Install_Dir"
+InstallDirRegKey HKLM SOFTWARE\VcXsrv "Install_Dir"
; Request application privileges for Windows Vista
RequestExecutionLevel admin
@@ -88,17 +88,19 @@ Section "VcXsrv (required)" File "..\.Xdefaults"
File "..\hw\xwin\xlaunch\obj\release\xlaunch.exe"
File "..\..\tools\plink\obj\release\plink.exe"
- File "..\..\mesalib\windows\VC8\mesa\Release\swrast_dri.dll"
+ File "..\..\mesalib\windows\VC8\mesa\Win32\Release\swrast_dri.dll"
File "..\hw\xwin\swrastwgl_dri\obj\release\swrastwgl_dri.dll"
File "..\..\dxtn\obj\release\dxtn.dll"
- File "..\..\libxml2\bin\libxml2.dll"
+ File "..\..\libxml2\bin\libxml2-2.dll"
+ File "..\..\libxml2\bin\libgcc_s_sjlj-1.dll"
+ File "..\..\libxml2\bin\libiconv-2.dll"
+ File "..\..\libxml2\bin\libwinpthread-1.dll"
File "..\..\zlib\obj\release\zlib1.dll"
File "..\..\libxcb\src\obj\release\libxcb.dll"
File "..\..\libXau\obj\release\libXau.dll"
File "..\..\libX11\obj\release\libX11.dll"
File "..\..\libXext\src\obj\release\libXext.dll"
File "..\..\libXmu\src\obj\release\libXmu.dll"
- File "..\..\libxml2\bin\iconv.dll"
File "msvcr100.dll"
File "msvcp100.dll"
SetOutPath $INSTDIR\xkbdata
diff --git a/xorg-server/makefile b/xorg-server/makefile index 02c2d3e86..b963ad1b4 100644 --- a/xorg-server/makefile +++ b/xorg-server/makefile @@ -51,22 +51,14 @@ load_makefile $(NOSERVLIBDIRS:%$(NOSERVOBJDIR)\=%makefile MAKESERVER=0 DEBUG=$(D OBJS = dix\$(OBJDIR)\main.obj +LINKLIBS += $(PTHREADLIB) $(FREETYPELIB) $(OPENSSLLIB) + ifeq ($(DEBUG),1) TTYAPP=vcxsrv APP:=$(TTYAPP) - -LINKLIBS += $(MHMAKECONF)\openssl\out32_d\libeay32.lib \ - $(MHMAKECONF)\freetype\lib\freetype2501MT_D.lib \ - $(MHMAKECONF)\pthreads\pthreadVC2d.lib - else WINAPP=vcxsrv APP:=$(WINAPP) - -LINKLIBS += $(MHMAKECONF)\openssl\out32\libeay32.lib \ - $(MHMAKECONF)\freetype\lib\freetype2501MT.lib \ - $(MHMAKECONF)\pthreads\pthreadVC2.lib - endif RCINCLUDES += include hw\xwin $(MHMAKECONF)\include $(MHMAKECONF) @@ -100,10 +92,16 @@ load_makefile $(EXTRASTOBUILDDIRS:%$(NOSERVOBJDIR)\=%makefile MAKESERVER=0 DEBUG all: $(EXTRASTOBUILD) load_makefile ..\mesalib\windows\VC8\mesa\makefile MAKESERVER=0 DEBUG=$(DEBUG) +ifdef IS64 +TARGETDIR=x64 +else +TARGETDIR=Win32 +endif + ifeq ($(DEBUG),1) -all: ..\mesalib\windows\VC8\mesa\Debug\swrast_dri.dll +all: ..\mesalib\windows\VC8\mesa\$(TARGETDIR)\Debug\swrast_dri.dll else -all: ..\mesalib\windows\VC8\mesa\Release\swrast_dri.dll +all: ..\mesalib\windows\VC8\mesa\$(TARGETDIR)\Release\swrast_dri.dll endif all: fonts.src\all xkeyboard-config\all diff --git a/xorg-server/xkeyboard-config/xkbrules.mak b/xorg-server/xkeyboard-config/xkbrules.mak index c117b30c5..50e38298b 100644 --- a/xorg-server/xkeyboard-config/xkbrules.mak +++ b/xorg-server/xkeyboard-config/xkbrules.mak @@ -20,7 +20,7 @@ export PATH load_makefile ..\..\..\xkbcomp\makefile MAKESERVER=0 DEBUG=0 -$(DIRFILE): extrastuff $(DATA_FILES) ..\..\..\xkbcomp\obj\release\xkbcomp.exe +$(DIRFILE): extrastuff $(DATA_FILES) ..\..\..\xkbcomp\obj$(OBJDIREXTRA)\release\xkbcomp.exe -del -e $@ - cd $(DESTDIR) & ..\..\..\xkbcomp\obj\release\xkbcomp.exe -lfhlpR -o $(relpath $@) * + cd $(DESTDIR) & ..\..\..\xkbcomp\obj$(OBJDIREXTRA)\release\xkbcomp.exe -lfhlpR -o $(relpath $@) * endif |