When writing samples and prototype code and even production applications, keep in mind that different UNIX implementations and Windows 95/NT have different APIs, provide different system services, and can even provide substantially different development environments (such as contents of include files, location of libraries, etc.). Here are a few things to look out for when writing a program under UNIX with the intent to port to Windows:
#ifndef M_PI #define M_PI 3.14159265358979323846 #endif
A more in-depth list of portability considerations is available in the file Portability.txt in the GLUT 3.6 distribution. GLUT is described in more detail in Section 19.