![]() |
|
![]() |
|
|
Thread Tools | Display Modes |
|
|
#21 |
|
Hobbyist Programmer
Join Date: Oct 2005
Posts: 134
Rep Power: 4
![]() |
It may a little late now, but here's a header file I made once to detect all the "common" macros for some OS:
#ifndef _MACHINE_H_ #define _MACHINE_H_ #if defined __DARWIN_X11__ # define OS_DARWIN #elif defined __APPLE__ && (defined __GNUC__ || defined __xlC__) # define OS_MACX #elif defined __MACOSX__ # define OS_MACX #elif defined macintosh || defined Macintosh # define OS_MAC9 #elif defined linux || defined __linux__ || defined __linux # define OS_LINUX #elif defined __CYGWIN__ || defined __CYGWIN32__ # define OS_CYGWIN # define OS_WIN32 #elif defined __MINGW32__ # define OS_MINGW # define OS_WIN32 #elif defined __DOS__ || defined MSDOS || defined _MSDOS || defined __MSDOS__ # define OS_MSDOS #elif defined WIN64 || defined _WIN64 || defined __WIN64__ # define OS_WIN32 # define OS_WIN64 #elif defined _WIN32 || defined WIN32 || defined __NT__ || defined __WIN32__ || defined __TOS_WIN__ # define OS_WIN32 #elif defined _WIN32_WCE # define OS_WINCE #elif defined __sun || defined sun # define OS_SOLARIS #elif defined hpux || defined __hpux # define OS_HPUX #elif defined __OS2__ || defined OS2 || defined _OS2 || defined __TOS_OS2__ # define OS_OS2 #elif defined __sgi # define OS_IRIX #elif defined __osf__ || defined __osf # define OS_OSF #elif defined _AIX || defined __TOS_AIX__ # define OS_AIX #elif defined __FreeBSD__ || defined __DragonFly__ # define OS_FREEBSD # define OS_BSD #elif defined __NetBSD__ # define OS_NETBSD # define OS_BSD #elif defined __OpenBSD__ # define OS_OPENBSD # define OS_BSD #elif defined bsdi || defined __bsdi__ # define OS_BSDI # define OS_BSD #elif defined AMIGA || defined __amigaos__ # define OS_AMIGA #elif defined BEOS || defined __BEOS__ # define OS_BEOS #endif #if defined OS_WIN32 || defined OS_WIN64 # define OS_WINDOWS #endif #if defined OS_MAC9 || defined OS_MACX # define OS_MAC #endif #if !defined OS_MAC9 && !defined OS_MSDOS && !defined OS_OS2 && !defined OS_WINDOWS # define OS_UNIX #endif #endif and a simple usage would be: #ifdef OS_WINDOWS #include <windows.h> #elif defined OS_LINUX #include more stuff... #endif |
|
|
|
|
|
#22 |
|
Resident Grouch
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jun 2005
Posts: 6,453
Rep Power: 10
![]() |
A year and a half later? Yeah, I'd guess it's a little late....pitiful.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code. Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers |
|
|
|
|
|
#23 | |
|
Hobbyist Programmer
Join Date: Oct 2005
Posts: 134
Rep Power: 4
![]() |
Quote:
|
|
|
|
|
|
|
#24 | |
|
Expert Programmer
Join Date: Aug 2005
Location: Rotterdam, the Netherlands
Posts: 942
Rep Power: 4
![]() |
Quote:
![]() |
|
|
|
|
|
|
#25 |
|
Newbie
Join Date: Feb 2006
Posts: 1
Rep Power: 0
![]() |
Hello to all!
|
|
|
|
|
|
#26 |
|
Expert Programmer
Join Date: May 2005
Location: East Lansing, MI
Posts: 663
Rep Power: 4
![]() |
Hello Dan, start a new thread in the introduction folder to introduce yourself.
|
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|