github.com/rajveermalviya/gamen@v0.1.2-0.20220930195403-9be15877c1aa/internal/xkbcommon/include/X11/Xwinsock.h (about)

     1  /*
     2  
     3  Copyright 1996, 1998  The Open Group
     4  
     5  Permission to use, copy, modify, distribute, and sell this software and its
     6  documentation for any purpose is hereby granted without fee, provided that
     7  the above copyright notice appear in all copies and that both that
     8  copyright notice and this permission notice appear in supporting
     9  documentation.
    10  
    11  The above copyright notice and this permission notice shall be included
    12  in all copies or substantial portions of the Software.
    13  
    14  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
    15  OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-
    16  ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT
    17  SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL-
    18  ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    19  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
    20  IN THE SOFTWARE.
    21  
    22  Except as contained in this notice, the name of The Open Group shall
    23  not be used in advertising or otherwise to promote the sale, use or
    24  other dealings in this Software without prior written authorization from
    25  The Open Group.
    26  
    27  */
    28  
    29  /*
    30   * This header file has for sole purpose to allow to include winsock.h
    31   * without getting any name conflicts with our code.
    32   * Conflicts come from the fact that including winsock.h actually pulls
    33   * in the whole Windows API...
    34   */
    35  
    36  #undef _XFree86Server
    37  #ifdef XFree86Server
    38  # define _XFree86Server
    39  # undef XFree86Server
    40  #endif
    41  
    42  /*
    43   * mingw-w64 headers define BOOL as a typedef, protecting against macros
    44   * mingw.org headers define BOOL in terms of WINBOOL
    45   * ... so try to come up with something which works with both :-)
    46   */
    47  #define _NO_BOOL_TYPEDEF
    48  #define BOOL WINBOOL
    49  #define INT32 wINT32
    50  #undef Status
    51  #define Status wStatus
    52  #define ATOM wATOM
    53  #define BYTE wBYTE
    54  #define FreeResource wFreeResource
    55  #include <winsock2.h>
    56  #undef Status
    57  #define Status int
    58  #undef BYTE
    59  #undef BOOL
    60  #undef INT32
    61  #undef ATOM
    62  #undef FreeResource
    63  #undef CreateWindowA
    64  #undef RT_FONT
    65  #undef RT_CURSOR
    66  
    67  /*
    68   * Older version of this header used to name the windows API bool type wBOOL,
    69   * rather than more standard name WINBOOL
    70   */
    71  #define wBOOL WINBOOL
    72  
    73  #ifdef _XFree86Server
    74  # define XFree86Server
    75  # undef _XFree86Server
    76  #endif
    77