-Windows 32 Notes
-================
-
-The "freeglut" library installation package comes with MSVC 6.0 workspace and
-project files. The workspace "freeglut.dsw" has two projects:
-"freeglut.dsp", which creates a DLL file, and "freeglut_static.dsp", which
-creates a static library.
-
-The "freeglut" library also comes with an Open Watcom compiler project file
-"freeglut.wpj" and two target files "freeglut.tgt" and "freeglut_static.tgt".
-The two target files build DLL and static libraries. The Open Watcom also
-includes "freeglut.rc", which is a resource compiler script to add a "Version"
-tab to the DLL property sheet.
-
-
-Building the Libraries with MSVC
-================================
-
-To build the "freeglut" libraries, open MSVC and load the "freeglut" workspace.
-This will load the two projects. Selecting "Build" - "Batch Build" from the
-menu will build both the debug and the release versions of both libraries.
-
-The libraries will be found in the following places and will have the
-following names:
-- DLL, debug version: freeglut\freeglut\Debug\freeglut.lib
-- DLL, release version: freeglut\freeglut\Release\freeglut.lib
-- Static, debug version: freeglut\freeglut\DebugStatic\freeglut_static.lib
-- Static, release version: freeglut\freeglut\ReleaseStatic\freeglut_static.lib
-
-Unlike the *nix release, the library names are NOT automatic replacements for
-the GLUT library names. You may rename them manually if you wish, but this is
-not necessary as the header file includes a pragma telling the compiler which
-library file to look for.
-
+NB
+==================================
+For ancient 16bit compatibility, windef.h (included through windows.h in
+freeglut_std.h) defines near and far. Its best to avoid using variables
+with these names in your own program.
Installing the Libraries with MSVC
==================================
files "gl.h", "glaux.h", and "glu.h".
- The library file "freeglut.lib" or "freeglut_static.lib" (from the
corresponding debug or release directory) needs to be copied into the
- MSVC library directory. This usually has a path similar to
- "C:\Program Files\Microsoft Visual Studio\VC98\Lib"
+ MSVC library directory. This usually has a path similar to:
+ "%ProgramFiles%\Microsoft SDKs\Windows\v7.0A\Lib" - x86 32 bits LIB's
+ "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\Lib" - x64 32 bits LIB's
+ "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\Lib\x64" - x64 64 bits LIB's
Note that there is no "GL" subdirectory here. This directory should
already have the files "opengl32.lib", "glu32.lib", and "glaux.lib".
- If you are using the DLL version of "freeglut", the file "freeglut.dll"
needs to be copied from the Debug or the Release directory into the
DLL directory. This usually has a path similar to
- "C:\Windows\System32"
+ "%SystemRoot%\System32\" - x86 32 bits DLL's
+ "%SystemRoot%\SysWOW64\" - x64 32 bits DLL's
+ "%SystemRoot%\System32\" - x64 64 bits DLL's
and will probably already have the files "opengl32.dll" and "glu32.dll".
Building and Installing the Libraries with Open Watcom
======================================================
-To build the "freeglut" libraries, open Watcom and load the "freeglut.wpj"
-file. This will load the two target files. Clicking on the "Make All
-Targets" button will build both the debug and the release versions of both
-libraries.
+Start a command prompt and change directory to the freeglut installation
+directory. Type "wmake -f Makefile.wat all" to build the DLL and static
+libraries in both debug and release versions.
-The "make" script will copy the library files to the Open Watcom library
-folder and will copy "freeglut.dll" to the correct "System32" folder. The
-library files are named "freeglut.lib" for the DLL version and
-"freeglut_static.lib"for the static library.
+To install "freeglut" on your system so that your other projects will see it,
+you will need to copy various files to various locations.
+
+ - The header files "freeglut.h", "freeglut_ext.h", "freeglut_std.h", and
+ "glut.h" (distributed in the directory "freeglut\freeglut\include\GL")
+ need to be copied to a "GL" directory under the Open Watcom 32-bit
+ Windows include directory. This usually has a path similar to
+ "C:\WATCOM\h\nt\GL"
+ - The library file "freeglut.lib" or "freeglut_static.lib" (from the
+ corresponding debug or release directory) needs to be copied into the
+ Open Watcom 32-bit Windows library directory. This usually has a path
+ similar to
+ "C:\WATCOM\lib386\nt"
+ - If you are using the DLL version of "freeglut", the file "freeglut.dll"
+ needs to be copied from the Debug or the Release directory into the
+ DLL directory. This usually has a path similar to
+ "C:\Windows\System32"
+ and will probably already have the files "opengl32.dll" and "glu32.dll".
-You will need to copy the "freeglut" include files from their installed
-location ("freeglut\freeglut\include\GL") to the Open Watcom include directory
-("%WATCOM%\h\nt\GL").
Unlike the *nix release, the library names are NOT automatic replacements for
the GLUT library names. You may rename them manually if you wish, but this is
library file to look for.
-If you don't have MSVC or Open Watcom
-=====================================
+Building and Installing the Libraries with Cygwin
+=================================================
+
+To build "freeglut" under Cygwin, you have two choices:
+
+- You can build a normal Cygwin library, which depends on Cygwin's X11
+ libraries. To do this, you can just use the normal autotools incantation:
+ ./configure && make install
+
+- Alternatively, you can build a DLL which does not depend on X11 and links
+ against the opengl32 DLL. To do this, configure need a few more flags:
+ ./configure CPPFLAGS=-mno-cygwin LDFLAGS=-mno-cygwin --without-x && make install
+
+
+If you don't have MSVC, Open Watcom or Cygwin
+=============================================
The "freeglut" developers' community discussed the possibility of distributing
binaries and decided against it. If you need Windows library files, please