1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /**
- * @file osplatformutil.h
- * @author itas109 (itas109@qq.com) \n\n
- * Blog : https://blog.csdn.net/itas109 \n
- * Github : https://github.com/itas109 \n
- * QQ Group : 12951803
- * @brief os platform util 操作系统平台工具
- * @copyright The CSerialPort is Copyright (C) 2021 itas109. \n
- * Contact: itas109@qq.com \n\n
- * You may use, distribute and copy the CSerialPort under the terms of \n
- * GNU Lesser General Public License version 3, which is displayed below.
- */
- #ifndef OSPLATFORMUTIL_H
- #define OSPLATFORMUTIL_H
- /*
- The operating system, must be one of: (I_OS_x)
- WIN - Win (Windows 2000/XP/Vista/7 and Windows Server 2003/2008)
- LINUX - Linux
- MAC - macOS, iOS, watchOS, tvOS
- ANDROID - Android
- FREEBSD - FreeBSD
- OPENBSD - OpenBSD
- SOLARIS - Sun Solaris
- AIX - AIX
- UNIX - Any UNIX BSD/SYSV system
- */
- #define OS_PLATFORM_UTIL_VERSION 1.0.1.200418
- // os platform
- // Windows
- #if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(WIN64) || defined(_WIN64) || \
- defined(__WIN64__) || defined(__NT__))
- #define I_OS_WIN
- // LINUX
- #elif defined(__linux__) || defined(__linux)
- #define I_OS_LINUX
- // MAC
- #elif defined(__APPLE__)
- #define I_OS_MAC
- // ANDROID
- #elif defined(__ANDROID__) || defined(ANDROID)
- #define I_OS_ANDROID
- #define I_OS_LINUX
- // sun os
- #elif defined(__sun) || defined(sun)
- #define I_OS_SOLARIS
- // FREEBSD
- #elif defined(__FreeBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__)
- #ifndef __FreeBSD_kernel__
- #define I_OS_FREEBSD
- #endif
- #define I_OS_FREEBSD_KERNEL
- // OPENBSD
- #elif defined(__OpenBSD__)
- #define I_OS_OPENBSD
- // IBM AIX
- #elif defined(_AIX)
- #define I_OS_AIX
- #else
- #error "not support this OS"
- #endif
- #define int64 int64_t
- #if defined(I_OS_WIN)
- #undef I_OS_UNIX
- #elif !defined(I_OS_UNIX)
- #define I_OS_UNIX
- #endif
- #endif // OSPLATFORMUTIL_H
|