core/sm_platform.h
author David Anderson <dvander@alliedmods.net>
Fri Dec 15 13:58:22 2006 +0000 (2006-12-15)
changeset 214 4d97709c9376
parent 211 4c77142eaf36
child 294 af1cdf8c81a1
permissions -rw-r--r--
added global class initializers
dvander@141
     1
#ifndef _INCLUDE_SOURCEMOD_PLATFORM_H_
dvander@141
     2
#define _INCLUDE_SOURCEMOD_PLATFORM_H_
dvander@141
     3
dvander@162
     4
/**
dvander@162
     5
 * @file Contains platform-specific macros for abstraction.
dvander@162
     6
 */
dvander@162
     7
dvander@141
     8
#if defined WIN32 || defined WIN64
dvander@141
     9
#define PLATFORM_WINDOWS
dvander@141
    10
#if !defined WIN32_LEAN_AND_MEAN
dvander@141
    11
#define WIN32_LEAN_AND_MEAN
dvander@141
    12
#endif
dvander@141
    13
#if !defined snprintf
dvander@141
    14
#define snprintf _snprintf
dvander@141
    15
#endif
dvander@211
    16
#if !defined stat
dvander@211
    17
#define stat _stat
dvander@211
    18
#endif
dvander@203
    19
#define strcasecmp strcmpi
dvander@141
    20
#include <windows.h>
dvander@141
    21
#include <direct.h>
dvander@160
    22
#define PLATFORM_LIB_EXT		"dll"
dvander@141
    23
#define PLATFORM_MAX_PATH		MAX_PATH
dvander@207
    24
#define PLATFORM_SEP_CHAR		'\\'
dvander@207
    25
#define PLATFORM_SEP_ALTCHAR	'/'
dvander@141
    26
#else if defined __linux__
dvander@141
    27
#define PLATFORM_LINUX
dvander@141
    28
#define PLATFORM_POSIX
dvander@141
    29
#include <dirent.h>
dvander@141
    30
#include <errno.h>
dvander@141
    31
#define PLATFORM_MAX_PATH		PATH_MAX
dvander@160
    32
#define PLATFORM_LIB_EXT		"so"
dvander@207
    33
#define PLATFORM_SEP_CHAR		'/'
dvander@207
    34
#define PLATFORM_SEP_ALTCHAR	'\\'
dvander@141
    35
#endif
dvander@141
    36
dvander@141
    37
#endif //_INCLUDE_SOURCEMOD_PLATFORM_H_