build: move platform stuff to ares_platform.c and ares_platform.h
This commit is contained in:
parent
bd066ab8ef
commit
5b6a188909
|
@ -29,6 +29,7 @@ CSOURCES = ares__close_sockets.c \
|
|||
ares_parse_ptr_reply.c \
|
||||
ares_parse_srv_reply.c \
|
||||
ares_parse_txt_reply.c \
|
||||
ares_platform.c \
|
||||
ares_process.c \
|
||||
ares_query.c \
|
||||
ares_search.c \
|
||||
|
@ -53,6 +54,7 @@ HHEADERS = ares.h \
|
|||
ares_library_init.h \
|
||||
ares_llist.h \
|
||||
ares_nowarn.h \
|
||||
ares_platform.h \
|
||||
ares_private.h \
|
||||
ares_rules.h \
|
||||
ares_strcasecmp.h \
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
|
||||
#include "ares.h"
|
||||
#include "inet_net_pton.h"
|
||||
#include "ares_platform.h"
|
||||
#include "ares_private.h"
|
||||
|
||||
#ifdef WATT32
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
#include "ares.h"
|
||||
#include "inet_net_pton.h"
|
||||
#include "bitncmp.h"
|
||||
#include "ares_platform.h"
|
||||
#include "ares_private.h"
|
||||
|
||||
#ifdef WATT32
|
||||
|
|
|
@ -67,6 +67,7 @@
|
|||
#include "inet_net_pton.h"
|
||||
#include "ares_library_init.h"
|
||||
#include "ares_nowarn.h"
|
||||
#include "ares_platform.h"
|
||||
#include "ares_private.h"
|
||||
|
||||
#ifdef ANDROID
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
|
||||
/* Copyright 1998 by the Massachusetts Institute of Technology.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this
|
||||
* software and its documentation for any purpose and without
|
||||
* fee is hereby granted, provided that the above copyright
|
||||
* notice appear in all copies and that both that copyright
|
||||
* notice and this permission notice appear in supporting
|
||||
* documentation, and that the name of M.I.T. not be used in
|
||||
* advertising or publicity pertaining to distribution of the
|
||||
* software without specific, written prior permission.
|
||||
* M.I.T. makes no representations about the suitability of
|
||||
* this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*/
|
||||
|
||||
#include "ares_setup.h"
|
||||
#include "ares_platform.h"
|
||||
|
||||
#if defined(WIN32) && !defined(MSDOS)
|
||||
|
||||
#define V_PLATFORM_WIN32s 0
|
||||
#define V_PLATFORM_WIN32_WINDOWS 1
|
||||
#define V_PLATFORM_WIN32_NT 2
|
||||
#define V_PLATFORM_WIN32_CE 3
|
||||
|
||||
win_platform getplatform(void)
|
||||
{
|
||||
OSVERSIONINFOEX OsvEx;
|
||||
|
||||
memset(&OsvEx, 0, sizeof(OsvEx));
|
||||
OsvEx.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
|
||||
if (!GetVersionEx((void *)&OsvEx))
|
||||
{
|
||||
memset(&OsvEx, 0, sizeof(OsvEx));
|
||||
OsvEx.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
if (!GetVersionEx((void *)&OsvEx))
|
||||
return WIN_UNKNOWN;
|
||||
}
|
||||
|
||||
switch(OsvEx.dwPlatformId)
|
||||
{
|
||||
case V_PLATFORM_WIN32s:
|
||||
return WIN_3X;
|
||||
|
||||
case V_PLATFORM_WIN32_WINDOWS:
|
||||
return WIN_9X;
|
||||
|
||||
case V_PLATFORM_WIN32_NT:
|
||||
return WIN_NT;
|
||||
|
||||
case V_PLATFORM_WIN32_CE:
|
||||
return WIN_CE;
|
||||
|
||||
default:
|
||||
return WIN_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
|
@ -0,0 +1,36 @@
|
|||
#ifndef HEADER_CARES_PLATFORM_H
|
||||
#define HEADER_CARES_PLATFORM_H
|
||||
|
||||
|
||||
/* Copyright 1998 by the Massachusetts Institute of Technology.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this
|
||||
* software and its documentation for any purpose and without
|
||||
* fee is hereby granted, provided that the above copyright
|
||||
* notice appear in all copies and that both that copyright
|
||||
* notice and this permission notice appear in supporting
|
||||
* documentation, and that the name of M.I.T. not be used in
|
||||
* advertising or publicity pertaining to distribution of the
|
||||
* software without specific, written prior permission.
|
||||
* M.I.T. makes no representations about the suitability of
|
||||
* this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*/
|
||||
|
||||
#include "ares_setup.h"
|
||||
|
||||
#if defined(WIN32) && !defined(MSDOS)
|
||||
|
||||
typedef enum {
|
||||
WIN_UNKNOWN,
|
||||
WIN_3X,
|
||||
WIN_9X,
|
||||
WIN_NT,
|
||||
WIN_CE
|
||||
} win_platform;
|
||||
|
||||
extern win_platform getplatform(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* HEADER_CARES_PLATFORM_H */
|
|
@ -344,20 +344,6 @@ long ares__tvdiff(struct timeval t1, struct timeval t2);
|
|||
(c)->sock_state_cb((c)->sock_state_cb_data, (s), (r), (w)); \
|
||||
} while (0)
|
||||
|
||||
#if (defined(WIN32) || defined(WATT32)) && !defined(MSDOS)
|
||||
|
||||
typedef enum {
|
||||
WIN_UNKNOWN,
|
||||
WIN_3X,
|
||||
WIN_9X,
|
||||
WIN_NT,
|
||||
WIN_CE
|
||||
} win_platform;
|
||||
|
||||
win_platform getplatform(void);
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef CURLDEBUG
|
||||
/* This is low-level hard-hacking memory leak tracking and similar. Using the
|
||||
libcurl lowlevel code from within library is ugly and only works when
|
||||
|
|
|
@ -270,6 +270,10 @@ SOURCE=..\..\ares_parse_txt_reply.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\ares_platform.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\ares_process.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
@ -366,6 +370,10 @@ SOURCE=..\..\ares_nowarn.h
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\ares_platform.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\ares_private.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#include "ares_setup.h"
|
||||
|
||||
#include "ares_private.h"
|
||||
|
||||
/* only do the following on windows
|
||||
*/
|
||||
|
@ -20,42 +19,4 @@ WINAPI DllMain (HINSTANCE hnd, DWORD reason, LPVOID reserved)
|
|||
}
|
||||
#endif
|
||||
|
||||
#define V_PLATFORM_WIN32s 0
|
||||
#define V_PLATFORM_WIN32_WINDOWS 1
|
||||
#define V_PLATFORM_WIN32_NT 2
|
||||
#define V_PLATFORM_WIN32_CE 3
|
||||
|
||||
win_platform getplatform(void)
|
||||
{
|
||||
OSVERSIONINFOEX OsvEx;
|
||||
|
||||
memset(&OsvEx, 0, sizeof(OsvEx));
|
||||
OsvEx.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
|
||||
if (!GetVersionEx((void *)&OsvEx))
|
||||
{
|
||||
memset(&OsvEx, 0, sizeof(OsvEx));
|
||||
OsvEx.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
if (!GetVersionEx((void *)&OsvEx))
|
||||
return WIN_UNKNOWN;
|
||||
}
|
||||
|
||||
switch(OsvEx.dwPlatformId)
|
||||
{
|
||||
case V_PLATFORM_WIN32s:
|
||||
return WIN_3X;
|
||||
|
||||
case V_PLATFORM_WIN32_WINDOWS:
|
||||
return WIN_9X;
|
||||
|
||||
case V_PLATFORM_WIN32_NT:
|
||||
return WIN_NT;
|
||||
|
||||
case V_PLATFORM_WIN32_CE:
|
||||
return WIN_CE;
|
||||
|
||||
default:
|
||||
return WIN_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* WIN32 builds only */
|
||||
|
|
Loading…
Reference in New Issue