Commit Graph

822 Commits

Author SHA1 Message Date
spanne
2ceeedd2f0 To build shared libraries on Windows, one has to declare explicitly that there are no undefined symbols during linking. No idea why, but this seems to be the only way to enable this on Cygwin via -mno-cygwin. Hopefully this won't cause problems on other platforms (which has to be tested).
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@789 7f0cb862-5218-0410-a997-914c9d46530a
2009-03-01 11:38:18 +00:00
spanne
7e0fcbc4e3 Windows fun again: Use the correct calling convention for OpenGL extension entries.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@788 7f0cb862-5218-0410-a997-914c9d46530a
2009-03-01 11:33:15 +00:00
spanne
49526044d2 When -mno-cygwin is used, we get ancient GL headers, so be a bit more conservative.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@787 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 18:31:35 +00:00
spanne
5cd0ad0211 _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin doesn't provide them.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@786 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 18:02:31 +00:00
spanne
5ad587d208 Do not try to destroy a GLX context when there is none, e.g. when glXCreateContextAttribsARB is not there.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@785 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 17:09:15 +00:00
spanne
d04fb4c03c Use snprintf or _snprintf instead of the potentially dangerous sprintf
to avoid warnings.

NOTE: Due to excessive use of #ifdefs, the joystick code is on the
border of being unmaintainable! I could only check that it compiles
cleanly on my Linux box. Others should test this on their platforms
(Windows, Mac OS X, *BSD) to make sure that nothing has been broken.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@784 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 13:09:22 +00:00
spanne
41e68f8f5d Use vsnprintf instead of the potentially dangerous sprintf to avoid
warnings. Using snprintf directly would be a little bit more tricky,
because once again Microsoft decided to avoid followind standards and
provide _snprintf instead. We could use this, too, but this would
require an additional autoconf check, which I'd like to avoid, if
possible.

Note: If VS *still* issues warnings, but this time about vsnprintf,
somebody should add some pragmas or whatever is needed to shut up that
warning, it would be silly.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@783 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 12:56:20 +00:00
spanne
15aa199c84 Position the distance message closer to the middle of the window, it
has been far, far off to the upper right.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@782 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 12:41:17 +00:00
spanne
1e30ebb6a1 Synched version number with configure.ac. We should better remove this
redundancy and calculate this from configure.ac directly.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@781 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-28 12:16:03 +00:00
fayjf
7b110e3696 Fixing the DOS/Linux line ending problems in the progs/demos/smooth_opengl3 project files
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@780 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-19 16:53:18 +00:00
fayjf
457f74d24f Fixing a build error caused by a variable declaration being out of place
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@779 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-18 18:30:12 +00:00
spanne
cf85aaefef Final changes to make the example fully OpenGL-3.0-compliant:
* Use vertex attribute arrays.

 * Use our own projection matrix.

 * Do not use deprecated vertex/fragment shader variables.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@778 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-15 21:12:25 +00:00
spanne
3d7236a470 Use GLSL shaders (still 1.20, though). Dump GL info.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@777 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-15 17:53:48 +00:00
spanne
2af3dd1eae Added a commandline option for 'classic' contexts. Aesthetic changes.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@776 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-15 14:00:45 +00:00
spanne
09efc858de Use VBOs in new example. Added a few comments.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@775 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-15 00:22:55 +00:00
spanne
280a735302 Initial version of a fully OpenGL-3.0-compliant of the famous smooth.c from the
Red Book. What has been done already:

   * Explicitly request a forward-compatible 3.0 context

   * Report GL errors, if any, at a few crucial places

   * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf

What remains to be done:

   * Use vertex shaders and fragment shaders

   * Use vertex buffer objects


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@774 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-14 20:38:53 +00:00
spanne
b2242c9921 Mention autogen.sh
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@773 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 18:32:26 +00:00
spanne
9824207a74 Synchronized WGL behavior with GLX implementation: Do not call the new context creation API when it is not required. Fixing a bug in a previous commit on the way... :-}
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@772 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 18:28:58 +00:00
spanne
335315c378 More refactorings: Removed useless return value. Simplified control structures even more.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@771 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 18:24:46 +00:00
spanne
c6a956ed14 Refactoring only (replace nested conditionals with guard clauses), making the normal path of execution much clearer.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@770 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 18:16:41 +00:00
spanne
3a8ad4ac32 We have added some API entries, so we have to update library version information conforming to http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@769 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 18:05:37 +00:00
spanne
df1fec232b Avoid CR\LF vs. LF troubles when using TortoiseSVN plus Cygwin.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@768 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 17:45:46 +00:00
spanne
4729884625 Ignore config.lt, too. It seems to be generated by recent autotools.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@767 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 17:44:22 +00:00
fayjf
91e715a11b Adding OpenGL 3.0 context detection for Windows per e-mail from Paul Martz dated Thu 2/12/2009 9:03 AM (more or less)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@766 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-13 03:22:17 +00:00
fayjf
100396cef0 Adding some instructions about building on a *nix platform to the 'README' file
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@765 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-03 21:22:08 +00:00
fayjf
6633fd32ac Removing some errant tabs, fixing ticket #2137721, and adding special-key capability to recognizing the NumLock, Delete, and keypad '5' keys
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@764 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-03 21:08:11 +00:00
fayjf
6ad88aa884 A further response to bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment by Nigel Stewart on that bug report
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@763 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-03 14:31:36 +00:00
fayjf
7dc47277c7 Fixing bug [ 1804696 ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel Stewart
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@762 7f0cb862-5218-0410-a997-914c9d46530a
2009-02-02 22:43:50 +00:00
spanne
f0c1c62112 Yet another try to make the font definitions compile on all platforms.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@761 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-20 11:59:29 +00:00
fayjf
fe55b7f706 Allowing "freeglut" to compile without errors under *nix. Before this, there were problems with conflicting definitions of the GLUT font definitions.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@760 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-17 14:50:08 +00:00
spanne
aebd3ade65 Ooops, forgot one file in the previous commit (fix for "--without-x").
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@759 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-06 19:17:13 +00:00
spanne
f93b2081eb Use autoconf to detect gettimeofday instead of broken #ifdef.
Note: freeglut compiles under Cygwin now, even when "--without-x" is used for
configuration.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@758 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-06 19:16:33 +00:00
spanne
76f7bd7c9b We need to link against winmm under Cygwin when --without-x is used to get
timeBeginPeriod, timeEndPeriod, joyGetPosEx and joyGetDevCaps.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@757 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-06 18:57:44 +00:00
spanne
d0554a0a52 Fixed first parameter of CreateWindow call, used for multisampling on Windows.
It compiles, but it is otherwise untested.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@756 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-06 18:29:35 +00:00
spanne
095be1d2de Be conservative about the presence of GL_TABLE_TOO_LARGE.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@755 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:46:20 +00:00
spanne
0828d834f8 freeglut_internal.h needs some GL types, but it is not self-contained.
TODO: Move freeglut.h #include into freeglut_internal.h itself?


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@754 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:45:36 +00:00
spanne
e8ffbcc5d3 Removed the annoying "Unable to create direct context rendering..." warning,
it served no real purpose, and on some platforms there simply is no such
thing as a direct context.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@753 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:24:43 +00:00
spanne
ee19720b42 Ignore *.exe
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@752 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:16:17 +00:00
spanne
b1b7bc4857 Handle new glutInitContext* API entries in glutGetProcAddress
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@751 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:11:40 +00:00
spanne
a74878aece Make freeglut compile under Cygwin, which has an ancient GLX header
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@750 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-05 18:05:36 +00:00
spanne
a248ef8281 Added OpenGL 3.0 context creation API entries
glutInitContextVersion,
   glutInitContextFlags

and their related constants

   GLUT_INIT_MAJOR_VERSION
   GLUT_INIT_MINOR_VERSION
   GLUT_INIT_FLAGS

   GLUT_DEBUG
   GLUT_FORWARD_COMPATIBLE            

Note that this works with GLX only currently, the glutInitContext* API entries
have no effect for WGL yet.

TODO: Centralize the context creation code for WGL (the harder part) and use the
new wglCreateContextAttribsARB API entry (the easy part, re-use most of the GLX
code).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@749 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 21:30:53 +00:00
spanne
17c757011c Refactored GLX context creation into a single function, centralizing things to
be changed for OpenGL 3.0 context creation and removing some cut-n-paste.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@748 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 20:09:02 +00:00
spanne
9e30ae3bc0 Make a wgl/glXGetProcAddress abstraction available internally. We will need this
to get the new context creation function.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@747 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 19:38:05 +00:00
spanne
097aea69d4 Do not depend on GLU, it will vanish in the future, at least in its current
form.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@746 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 19:26:36 +00:00
spanne
4dc68a17e3 Removed superfluous #includes.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@745 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 18:42:49 +00:00
spanne
60227d5645 Fix for bug #1709675 ("probably not be so ISO-conformant"): The C compiler flag
-Werror is not used by default anymore, a separate configure flag
--enable-warnings-as-errors has been introduced for this purpose, which is off
by default.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@744 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 18:27:21 +00:00
spanne
a9f8ef8d89 Added AM_PROG_CC_C_O to configure.ac, removing a warning during autogen.sh. This
flag seems to be necessary for per-target flags (used in demo programs)
nowadays.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@743 7f0cb862-5218-0410-a997-914c9d46530a
2008-11-02 18:14:02 +00:00
fayjf
ebaedf2da0 Implementing a patch from Jocelyn Frechot (thank you, Jocelyn) that "should enable the XInput extension management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@742 7f0cb862-5218-0410-a997-914c9d46530a
2008-07-21 15:00:51 +00:00
fayjf
a3f35083ec Adding "glutExit" to the functions in "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot dated Tue 7/8/2008 12:26 PM
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@741 7f0cb862-5218-0410-a997-914c9d46530a
2008-07-10 15:17:10 +00:00
fayjf
559a38709e Adding "SC_MONITORPOWER" and other new options to the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@740 7f0cb862-5218-0410-a997-914c9d46530a
2008-04-05 21:53:51 +00:00