Commit 268e3ee9 authored by unknown's avatar unknown

config-win.h, os0proc.h, os0proc.c, srv0start.c:

  Make AWE compilation depend on __WIN2000__


innobase/srv/srv0start.c:
  Make AWE compilation depend on __WIN2000__
innobase/os/os0proc.c:
  Make AWE compilation depend on __WIN2000__
innobase/include/os0proc.h:
  Make AWE compilation depend on __WIN2000__
include/config-win.h:
  Make AWE compilation depend on __WIN2000__
parent bde6addd
......@@ -16,6 +16,12 @@
/* Defines for Win32 to make it compatible for MySQL */
#ifdef __WIN2000__
/* We have to do this define before including windows.h to get the AWE API
functions */
#define _WIN32_WINNT 0x0500
#endif
#include <sys/locking.h>
#include <windows.h>
#include <math.h> /* Because of rint() */
......
......@@ -16,7 +16,7 @@ typedef void* os_process_t;
typedef unsigned long int os_process_id_t;
/* The cell type in os_awe_allocate_mem page info */
#if defined(__NT__) && defined(ULONG_PTR)
#if defined(__WIN2000__) && defined(ULONG_PTR)
typedef ULONG_PTR os_awe_t;
#else
typedef ulint os_awe_t;
......
......@@ -20,13 +20,13 @@ Created 9/30/1995 Heikki Tuuri
How to get AWE to compile on Windows?
-------------------------------------
the Visual C++ has to be relatively recent and _WIN32_WINNT has to be
defined to a value >= 0x0500 when windows.h is included. An easy way
to accomplish that is to put
In the project settings of the innobase project the Visual C++ source,
__WIN2000__ has to be defined.
#define _WIN32_WINNT 0x0500
The Visual C++ has to be relatively recent and _WIN32_WINNT has to be
defined to a value >= 0x0500 when windows.h is included.
to the start of file \mysql\include\config-win.h
#define _WIN32_WINNT 0x0500
Where does AWE work?
-------------------
......@@ -62,7 +62,7 @@ to a mapped 'physical page' for each 4 kB page in the AWE window */
byte** os_awe_simulate_map;
#endif
#ifdef __NT__
#ifdef __WIN2000__
os_awe_t* os_awe_page_info;
ulint os_awe_n_pages;
byte* os_awe_window;
......@@ -84,7 +84,7 @@ os_awe_enable_lock_pages_in_mem(void)
return(TRUE);
#elif defined(__NT__)
#elif defined(__WIN2000__)
struct {
DWORD Count;
LUID_AND_ATTRIBUTES Privilege[1];
......@@ -187,7 +187,7 @@ os_awe_allocate_physical_mem(
return(TRUE);
#elif defined(__NT__)
#elif defined(__WIN2000__)
BOOL bResult;
os_awe_t NumberOfPages; /* Question: why does Windows
use the name ULONG_PTR for
......@@ -318,7 +318,7 @@ os_awe_allocate_virtual_mem_window(
return(os_awe_simulate_window);
#elif defined(__NT__)
#elif defined(__WIN2000__)
byte* ptr;
if (size > 0x7FFFFFFFFF) {
......@@ -424,7 +424,7 @@ os_awe_map_physical_mem_to_window(
return(TRUE);
#elif defined(__NT__)
#elif defined(__WIN2000__)
BOOL bResult;
os_awe_t n_pages;
......
......@@ -1008,7 +1008,7 @@ innobase_start_or_create_for_mysql(void)
srv_startup_is_before_trx_rollback_phase = TRUE;
os_aio_use_native_aio = FALSE;
#if !defined(__NT__) && !defined(UNIV_SIMULATE_AWE)
#if !defined(__WIN2000__) && !defined(UNIV_SIMULATE_AWE)
if (srv_use_awe) {
fprintf(stderr,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment