Most Linux systems are POSIX complaint (Portable Operating System Inteface for UNIX).
They also (normally) define _POSIX_SOURCE; _POSIX_C_SOURCE >= 200112.
When using some of the latest functions from <unistd.h> or other header you may want to check the version first.
Also you could check the _XOPEN_SOURCE >= 600 macro when using the XSI (X/Open System Interface) features.
For example, before using the XSI strdup() function you may want to ensure that your implementation supports it.
Any values lower than that would probably mean compliance to outdated or older standards.
There are more macros depending on the features your implementation of UNIX/Linux supports.
The best way is to check the standard itself.
But __unix__ or __unix is good enough for basic purposes.