Re: [PATCH] Allow building of kernel32.dll with w32api
Danny Smith <[email protected]>
| Newsgroups | gmane.comp.gnu.mingw.patches |
|---|---|
| Message-ID | <000701c21c28$0e6d9f50$149aa7cb@DANNY> |
----- Original Message ----- From: "Danny Smith" <[email protected]> To: "Casper Hornstrup" <[email protected]>; <[email protected]> Sent: Monday, 17 June 2002 15:11 Subject: Re: [MinGW-patches] [PATCH] Allow building of kernel32.dll with w32api > > ----- Original Message ----- > From: "Casper Hornstrup" <[email protected]> > To: <[email protected]> > Sent: Sunday, 16 June 2002 02:23 > Subject: [MinGW-patches] [PATCH] Allow building of kernel32.dll with > w32api > This patch of 15 June contained some changes to winioctl.h that have been missed in prior check ins. Casper, do these look okay still? 2002-06-25 Casper S. Hornstrup <[email protected]> * include/winbase.h (WINBASEAPI): Don't define if prior definition. * include/winioctl.h (PARTITION_FAT32, PARTITION_FAT32_XINT13, PARTITION_XINT13, PARTITION_XINT13_EXTENDED, PARTITION_LDM, PARTITION_UNIX): Add defines. (PDRIVE_LAYOUT_INFORMATION): Add typedef. (IsRecognizedPartition): Also check for PARTITION_FAT32, PARTITION_FAT32_XINT13 and PARTITION_XINT13. (IsContainerPartition): Add macro. Danny
winioctl.h.diff
(text/plain, 3.5 KB)
2002-06-25 Casper S. Hornstrup <[email protected]> * include/winbase.h (WINBASEAPI): Don't define if prior definition. * include/winioctl.h (PARTITION_FAT32, PARTITION_FAT32_XINT13, PARTITION_XINT13, PARTITION_XINT13_EXTENDED, PARTITION_LDM, PARTITION_UNIX): Add defines. (PDRIVE_LAYOUT_INFORMATION): Add typedef. (IsRecognizedPartition): Also check for PARTITION_FAT32, PARTITION_FAT32_XINT13 and PARTITION_XINT13. (IsContainerPartition): Add macro. Index: include/winbase.h =================================================================== RCS file: /cvs/src/src/winsup/w32api/include/winbase.h,v retrieving revision 1.21 diff -u -p -r1.21 winbase.h --- include/winbase.h 19 Jun 2002 01:15:44 -0000 1.21 +++ include/winbase.h 25 Jun 2002 09:06:26 -0000 @@ -4,7 +4,9 @@ #pragma GCC system_header #endif +#ifndef WINBASEAPI #define WINBASEAPI DECLSPEC_IMPORT +#endif #ifdef __cplusplus extern "C" { #endif Index: include/winioctl.h =================================================================== RCS file: /cvs/src/src/winsup/w32api/include/winioctl.h,v retrieving revision 1.6 diff -u -3 -p -r1.6 winioctl.h --- include/winioctl.h 24 Jun 2002 02:49:47 -0000 1.6 +++ include/winioctl.h 24 Jun 2002 08:41:29 -0000 @@ -134,8 +134,13 @@ extern "C" { #define PARTITION_EXTENDED 5 #define PARTITION_HUGE 6 #define PARTITION_IFS 7 -#define PARTITION_PREP 0x41 -#define PARTITION_UNIX 0x63 +#define PARTITION_FAT32 0x0B +#define PARTITION_FAT32_XINT13 0x0C +#define PARTITION_XINT13 0x0E +#define PARTITION_XINT13_EXTENDED 0x0F +#define PARTITION_PREP 0x41 +#define PARTITION_LDM 0x42 +#define PARTITION_UNIX 0x63 #define PARTITION_NTFT 128 #define VALID_NTFT 0xC0 #define METHOD_BUFFERED 0 @@ -261,7 +266,7 @@ typedef struct _DRIVE_LAYOUT_INFORMATION DWORD PartitionCount; DWORD Signature; PARTITION_INFORMATION PartitionEntry[1]; -} DRIVE_LAYOUT_INFORMATION; +} DRIVE_LAYOUT_INFORMATION, *PDRIVE_LAYOUT_INFORMATION; typedef struct _PERF_BIN { DWORD NumberOfBins; DWORD TypeOfBin; @@ -282,14 +287,26 @@ typedef struct _VERIFY_INFORMATION { LARGE_INTEGER StartingOffset; DWORD Length; } VERIFY_INFORMATION,*PVERIFY_INFORMATION; -#define IsRecognizedPartition(t) (((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_FAT_12))||\ - ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_FAT_16))||\ - ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_IFS))||\ - ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_HUGE))||\ +#define IsRecognizedPartition(t)\ + (((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_12))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_16))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_IFS))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_HUGE))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT32))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT32_XINT13))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_XINT13))||\ ((t&~PARTITION_NTFT)==PARTITION_FAT_12)||\ ((t&~PARTITION_NTFT)==PARTITION_FAT_16)||\ ((t&~PARTITION_NTFT)==PARTITION_IFS)||\ - ((t&~PARTITION_NTFT)==PARTITION_HUGE)) + ((t&~PARTITION_NTFT)==PARTITION_HUGE)||\ + ((t&~PARTITION_NTFT)==PARTITION_FAT32)||\ + ((t&~PARTITION_NTFT)==PARTITION_FAT32_XINT13)||\ + ((t&~PARTITION_NTFT)==PARTITION_XINT13)) +#define IsContainerPartition(t)\ + (((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_EXTENDED))||\ + ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_XINT13_EXTENDED))||\ + ((t&~PARTITION_NTFT)==PARTITION_EXTENDED)||\ + ((t&~PARTITION_NTFT)==PARTITION_XINT13_EXTENDED)) #ifdef __cplusplus } #endif