Commit Graph

298 Commits

Author SHA1 Message Date
Jonas Ådahl
8e99996321 Introduce experimental Wayland backend
This patch introduces a new backend that enables GLFW applications to
run on Wayland. For now, only output is supported (windowed and
fullscreen). Pointer cursor management, input devices, clipboard etc are
not supported yet.

There are some concepts that can not be supported, more specifically
glfwSetWindowPos, glfwGetWindowPos and glfwSetCursorPos, as they are not
supported by Wayland.

This patch also changes the time and joystick implementations used by the
X11 backend to be shared between the Wayland backend and the X11 backend.
2014-04-08 16:07:20 +02:00
Camilla Berglund
2e8d17e7b7 Fixed MinGW detection. 2014-03-25 11:46:33 +01:00
urraka
40c04a7565 Added support for custom system cursors.
This adds 3 functions to the GLFW API: glfwCreateCursor,
glfwDestroyCursor and glfwSetCursor.
2014-03-20 11:30:27 +01:00
Camilla Berglund
d0d2332193 WINVER fixes for MinGW and VC++. 2014-02-10 21:12:20 +01:00
Camilla Berglund
0cd31782d4 Enabled pkg-config file generation on MinGW.
Fixes #220.
2014-02-10 15:31:57 +01:00
Camilla Berglund
84377c6175 Added _GLFW_USE_RETINA. 2014-02-10 13:45:13 +01:00
Camilla Berglund
7e806a8567 Started 3.1. 2014-01-01 15:29:57 +01:00
Camilla Berglund
6c12ffc902 Added the GLFW_BUILD_DOCS CMake option. 2013-11-07 18:23:54 +01:00
Camilla Berglund
23ff318f59 Replaced find_library with CMAKE_DL_LIBS. 2013-10-13 16:24:33 +02:00
Camilla Berglund
aab08712dd Fixed zero refresh rate on some monitors. 2013-10-09 19:45:39 +02:00
Andrew Corrigan
34f1c298b6 config.h.in --> glfw_config.h.in 2013-10-04 09:41:08 -04:00
Camilla Berglund
59422ec980 Started 3.0.4. 2013-09-24 21:36:11 +02:00
Camilla Berglund
4ff8095dee Workaround for libXi and CMake 2.8.7. 2013-09-13 14:42:45 +02:00
Camilla Berglund
6770ae0556 Added workaround for legacy MinGW.
When building on legacy MinGW, WINVER and UNICODE need to be defined
before the inclusion of stddef.h (by glfw3.h), which is itself included
before win32_platform.h.
2013-09-13 12:26:55 +02:00
Camilla Berglund
8c1588b14e Started 3.0.3. 2013-08-26 16:22:06 +02:00
Camilla Berglund
735bc2d815 Added NvOptimusEnablement. 2013-08-07 18:11:58 +02:00
Camilla Berglund
1c80e99008 Added forcing of swap interval on DWM composition. 2013-07-08 00:32:23 +02:00
Camilla Berglund
10017b27bb Cleanup. 2013-06-17 12:46:51 +02:00
Camilla Berglund
1de60a4ff7 Started 3.0.2. 2013-06-17 12:46:44 +02:00
Camilla Berglund
01ccc56423 Added missing headers to library target. 2013-06-17 10:31:25 +02:00
Camilla Berglund
305c66db31 Cleanup. 2013-06-17 10:25:17 +02:00
Camilla Berglund
d31322cdcd Added option for disabling install. 2013-06-16 13:31:39 +02:00
Niklas Behrens
bff77eeed1 Fix variable name for xf86vmode lib
CMake bug 0006976 has been fixed. However, the variable name is
different than expected.
2013-06-16 03:17:20 +02:00
Camilla Berglund
c38f33adda Started 3.0.1. 2013-06-13 12:05:23 +02:00
Camilla Berglund
3274dc9a61 Added internal docs. 2013-06-12 15:03:56 +02:00
Camilla Berglund
15ed715f4e Moved public headers to the GLFW directory. 2013-05-22 22:46:34 +02:00
Camilla Berglund
f68f28ba0b Formatting. 2013-05-20 13:12:13 +02:00
Camilla Berglund
583c8a8e8e Added XInput dependency to pkgconfig file. 2013-05-20 13:06:09 +02:00
Camilla Berglund
97d71393cc Made CMake file require XInput. 2013-05-19 08:16:19 +02:00
Camilla Berglund
64630af362 CMake config file cleanup. 2013-05-14 01:03:51 +02:00
Lambert Clara
f6eccf145b Add glfwConfig module.
This module allows cmake projects to find glfw with FIND_PACKAGE.
2013-05-12 16:55:33 +02:00
Camilla Berglund
807f1622ea Added threading library to link dependencies.
Since the GLX backend now uses explicit pthread calls, linking needs to
be explicit as well.
2013-05-07 21:39:09 +02:00
Camilla Berglund
5cf56a442c Removed APPLE as UNIX is true on OS X. 2013-05-01 17:11:58 +02:00
John Bartholomew
93f4effd2b Do not export internal symbols from a unix shared library. 2013-05-01 13:08:09 +01:00
Camilla Berglund
f41d85a209 Added initial XInput2 cursor motion. 2013-04-04 16:48:58 +02:00
Camilla Berglund
ebe02f94af Added CMake target for documentation. 2013-03-18 21:21:12 +01:00
Camilla Berglund
2469a1bac9 Removed option to disable native docs. 2013-03-07 16:38:53 +01:00
Camilla Berglund
6f8084f061 Documentation work.
Enabled Doxygen tree view, added CMake options for native and internal
modules, improved internal and native documentation.
2013-02-14 17:26:27 +01:00
Camilla Berglund
34e08f62b5 Removed installation of readme. 2013-02-11 22:15:11 +01:00
Camilla Berglund
dca9b2db07 Only disable tests and examples if not using OpenGL. 2013-02-11 19:43:22 +01:00
Camilla Berglund
8c766b57e7 Renamed chdir option, added OS X menu bar option.
Some command-line programs want to render to hidden windows without any
visible UI.  This option makes this possible on OS X.
2013-01-25 00:53:38 +01:00
Camilla Berglund
6333a5caaf Added CMake option for glfwInit chdir on OS X. 2013-01-21 16:21:59 +01:00
Camilla Berglund
bd2abbca9f CMake file formatting. 2013-01-17 18:59:35 +01:00
Camilla Berglund
cc45a9e53d Updated native API and merged into related files. 2013-01-15 22:38:14 +01:00
Camilla Berglund
0517a82467 Added support for GLESv1_CM and GLESv2 client libraries. 2013-01-15 19:09:43 +01:00
Camilla Berglund
3863a635f2 Clarified CMake X extension error messages. 2013-01-13 01:35:49 +01:00
Camilla Berglund
d1dac4b965 Updated options for Universal build. 2013-01-12 19:48:26 +01:00
Camilla Berglund
6a4c175816 Made client-side RandR and Xf86VidMode required. 2013-01-12 19:23:53 +01:00
Camilla Berglund
be8856af65 Made the X keyboard extension required. 2013-01-07 18:14:26 +01:00
Camilla Berglund
fc79e0a3a8 Removed threading package option.
It didn't do what I thought it did.
2013-01-05 18:43:09 +01:00
Camilla Berglund
279c32e3f9 Merge branch 'master' of github.com:elmindreda/glfw
Conflicts:
	CMakeLists.txt
	src/egl_context.c
2013-01-05 18:37:12 +01:00
Camilla Berglund
3d0ff1324c Restored use of CMake Threads package. 2013-01-05 18:33:11 +01:00
Camilla Berglund
7ff86576e3 Removed EGL dlopen. 2013-01-04 06:59:07 +01:00
Camilla Berglund
1aa34606e7 Fixes for use with the AMD EGL/GLES SDK. 2013-01-04 03:54:52 +01:00
Camilla Berglund
73cdc34df7 Merge branch 'master' into multi-monitor
Conflicts:
	CMakeLists.txt
	readme.html
	src/CMakeLists.txt
	src/cocoa_platform.h
	src/win32_platform.h
	src/x11_platform.h
	tests/events.c
2012-12-02 20:52:03 +01:00
Camilla Berglund
5da8ed250a Cleanup of backend option strings. 2012-12-02 19:01:20 +01:00
Camilla Berglund
34d383399c Finished initial window/context backend split. 2012-11-27 15:02:26 +01:00
Camilla Berglund
b49c78ed96 Added missing whitespace. 2012-11-27 14:02:48 +01:00
Camilla Berglund
e4ddcefc14 Merge branch 'master' into EGL
Conflicts:
	CMakeLists.txt
	include/GL/glfw3.h
	readme.html
	src/CMakeLists.txt
	src/cocoa_window.m
	src/config.h.in
	src/glx_opengl.c
	src/internal.h
	src/opengl.c
	src/window.c
	tests/glfwinfo.c
2012-11-27 12:21:54 +01:00
Camilla Berglund
e82683d498 Merge branch 'master' into multi-monitor 2012-11-08 16:29:56 +01:00
Camilla Berglund
ad7bf4beba Replaced ad-hoc Linux detection with __linux__. 2012-11-05 16:19:11 +01:00
Camilla Berglund
9d6945a766 Merge branch 'master' into EGL
Conflicts:
	CMakeLists.txt
	include/GL/glfw3.h
	readme.html
	src/CMakeLists.txt
	src/internal.h
	src/window.c
2012-09-23 15:35:45 +02:00
Camilla Berglund
f6ba959b1b Moved threads package to X11 block. 2012-09-12 21:54:00 +02:00
Camilla Berglund
d5e4204ed1 POSIX threads should not be preferred on Win32. 2012-09-12 21:46:40 +02:00
Camilla Berglund
64c677be9e Renamed config macro to match convention. 2012-09-12 03:17:50 +02:00
Camilla Berglund
7be55239e7 Disabled native API by default. 2012-09-11 20:02:13 +02:00
Camilla Berglund
0272ce2e98 Merge branch 'master' into EGL
Conflicts:
	src/glx_opengl.c
	src/opengl.c
	tests/glfwinfo.c
2012-09-09 19:52:33 +02:00
Camilla Berglund
cbcab56a25 Merge branch 'master' into EGL
Conflicts:
	include/GL/glfw3.h
	src/opengl.c
	src/win32_opengl.c
	src/window.c
	src/x11_fullscreen.c
	src/x11_glx_opengl.c
	src/x11_platform.h
	src/x11_window.c
	tests/glfwinfo.c
2012-09-06 21:05:03 +02:00
Camilla Berglund
9af03e141b Merge branch 'master' into tls 2012-08-14 14:00:19 +02:00
Camilla Berglund
b7be8d90d8 Renamed libglfw3.pc to glfw3.pc. 2012-08-12 22:31:47 +02:00
Camilla Berglund
98c1c2fbf2 Added threading support to CMake files. 2012-08-12 16:18:59 +02:00
jonathan MERCIER
31c0212c25 Able to install to lib64 if LIB_SUFFIX var is set to 64 2012-08-11 17:50:56 +02:00
Camilla Berglund
0b25bba5b5 Merge branch 'master' into EGL 2012-07-31 18:55:00 +02:00
John Bartholomew
0f0e42b975 Use SOVERSION for shared libraries on Unix-like systems. 2012-07-30 01:04:08 +01:00
John Bartholomew
93ec9fa901 Changed library output name to "glfw3", and pkg-config name to libglfw3.
Since the headers are already named differently, this allows
side-by-side installation of GLFW 2.x and GLFW 3.x.
2012-07-30 00:14:09 +01:00
Camilla Berglund
3f9fa39564 Merge branch 'master' into EGL
Conflicts:
	src/CMakeLists.txt
2012-07-22 16:19:24 +02:00
Camilla Berglund
df6d4bc58a Added glfw3native.h to installation. 2012-07-22 15:42:18 +02:00
Camilla Berglund
af925681dd Merge branch 'master' into EGL 2012-07-20 00:59:35 +02:00
Camilla Berglund
f004aa0f82 Formatting. 2012-07-19 22:29:01 +02:00
Camilla Berglund
5e36fb0e38 Formatting. 2012-07-19 02:35:34 +02:00
Camilla Berglund
c1931eda37 Formatting, limited to MSVC. 2012-07-19 02:15:01 +02:00
Jorge Rodriguez
0627a2c2eb Added option for MSVC static runtime library. 2012-07-19 02:12:33 +02:00
Cloudef
29b4ed4e9a Don't build tests and examples when building with EGL 2012-07-17 22:25:47 +03:00
Cloudef
1327c124a4 Seperate Context from Window in CMakeLists, add option to build for EGL 2012-07-17 22:25:47 +03:00
Camilla Berglund
2753577dbd Removed dynamic loading of gdi32. 2012-03-30 02:28:15 +02:00
Camilla Berglund
fcf54b4b27 Moved dynamic loading macros to configuration header. 2012-03-29 14:21:04 +02:00
Camilla Berglund
dd8b098387 Moved _GLFW_BUILD_DLL into configuration header. 2012-03-29 14:06:26 +02:00
Camilla Berglund
4a3d85e9b1 Merge branch 'master' of github.com:elmindreda/glfw 2012-03-26 13:36:36 +02:00
Camilla Berglund
ee1d71adf3 Added OS X support to pkg-config file. 2012-03-26 13:35:14 +02:00
Camilla Berglund
2a8324955c Formatting. 2012-03-26 13:14:06 +02:00
Camilla Berglund
fd6bc698c0 Moved file generation around. 2012-03-26 12:54:50 +02:00
Camilla Berglund
6fd6c5f7e4 Moved pkg-config file generation. 2012-03-26 03:11:43 +02:00
Camilla Berglund
415ebbb97c Added cache variable for dependencies of GLFW. 2012-03-25 20:15:27 +02:00
Camilla Berglund
c097246312 Fixed listing of non-pkg-config libraries. 2012-03-25 17:34:21 +02:00
Camilla Berglund
8dc1391835 Marked library variable as advanced. 2012-03-25 17:25:03 +02:00
Camilla Berglund
730e2e55c9 Removed unused module. 2012-03-25 17:24:33 +02:00
Camilla Berglund
cfa798451e Fixed platform messages being mixed up. 2012-03-25 17:23:24 +02:00
Camilla Berglund
862efe78e3 Added fallback check for dlopen, clearer use of required libraries. 2012-03-25 17:22:35 +02:00
Camilla Berglund
bd8eb1399a Put platform detection in a single place. 2012-03-25 16:51:24 +02:00
Camilla Berglund
20e685d37b Formatted variables not used outside of the local CMake project. 2012-03-25 16:49:15 +02:00
Camilla Berglund
441452467a Marked library variables as advanced. 2012-03-25 15:05:48 +02:00
Camilla Berglund
d743793e71 Pkg-config dependency generation fixes. 2012-03-25 14:51:56 +02:00
Camilla Berglund
4a905d2e28 Comment update. 2012-03-25 14:43:23 +02:00
Camilla Berglund
9e8f547774 Formatting. 2012-03-25 13:59:34 +02:00
Camilla Berglund
23776f67e3 Formatting. 2012-03-25 13:58:07 +02:00
Camilla Berglund
7b46a184cb Added standard option to switch between static and dynamic library, dropped dynamic test. 2012-03-25 13:55:39 +02:00
Camilla Berglund
f21f196036 Added comment. 2012-03-25 13:52:35 +02:00
Camilla Berglund
7f1d91e67b Formatting. 2012-03-25 13:49:35 +02:00
Camilla Berglund
c175084e13 Added workaround for CMake bug 0006976. 2012-03-25 13:47:13 +02:00
Camilla Berglund
d204d5a434 Enabled all warnings on GNU C and compatibles. 2012-03-22 23:25:39 +01:00
Camilla Berglund
e7fb35a5d8 Removed legacy CMake policy. 2012-03-01 03:41:36 +01:00
Camilla Berglund
a27c444af4 Updated comment. 2012-02-29 20:19:05 +01:00
Camilla Berglund
537754aab8 Require CMake 2.8. 2012-02-29 20:17:09 +01:00
Camilla Berglund
cd7b9b1568 CMake file formatting. 2012-02-29 20:15:39 +01:00
Camilla Berglund
d608eb0086 Replaced hand rolled X extension detection with built-in version. 2012-02-19 05:28:15 +01:00
Camilla Berglund
b5cd3114af Added Doxyfile generation. 2012-02-02 18:15:58 +01:00
Camilla Berglund
2935652f48 Merge remote-tracking branch 'tikhomirov/osx_joystick'
Conflicts:
	.gitignore
	src/cocoa_init.m
2012-01-29 15:05:58 +01:00
Camilla Berglund
24dc846ac2 Re-used library list. 2012-01-28 00:12:06 +01:00
Camilla Berglund
a6981b7f83 Function and symbol checks are only performed on X11/GLX. 2012-01-28 00:01:05 +01:00
Camilla Berglund
0dac7131c8 Removed extra warning flags for Universal build. 2012-01-27 23:41:07 +01:00
Camilla Berglund
9433ba94a5 Removed unused macro variable. 2012-01-27 23:39:31 +01:00
Camilla Berglund
ebe4df478b Formatting. 2012-01-27 23:37:55 +01:00
Camilla Berglund
966076eca8 Added libm dependency for X11/GLX. 2012-01-27 23:17:20 +01:00
Camilla Berglund
a559b5da98 Added rudimentary detection of librt. 2011-11-03 02:43:10 +01:00
Camilla Berglund
d929752a42 Clarified functions. 2011-11-03 02:41:53 +01:00
Camilla Berglund
85982b2985 Removed Cygwin cross-compilation hacks. 2011-11-03 00:13:49 +01:00
Sergey Tikhomirov
2357cf6f30 Added initial joystick support on OS X 2011-09-18 22:05:00 +03:00
Camilla Berglund
b11681a3ab Added CMake options to disable building of examples and/or tests. 2011-09-06 15:23:44 +02:00
Camilla Berglund
7268fc18b4 Don't clobber higher-level uninstall targets. 2011-07-27 15:46:19 +02:00
Camilla Berglund
53f4f54c46 Flattened source tree. 2011-07-26 16:50:12 +02:00
Camilla Berglund
aae8999ecf Moved OpenGL-related functions into *opengl files. 2011-03-04 14:25:12 +01:00
marcus256
8943a78a65 Merge branch 'marcus-rawkeys'. Changed handling of raw key codes. 2011-01-15 00:59:55 +01:00
Marcus
a44d566057 Added compile time detection of the XKB X11 extension. 2011-01-03 21:44:05 +01:00
Camilla Berglund
71d64a03d8 Added build option to choose between native and Universal Binary builds. 2010-11-17 16:36:09 +01:00
Camilla Berglund
5a112d6cd1 Moved platform identifier define to config header. 2010-11-17 14:59:27 +01:00
Camilla Berglund
0e1a004b7d Formatting. 2010-10-15 17:22:30 +02:00
Camilla Berglund
2c851406fb Renamed config.h source file. 2010-10-14 17:18:29 +02:00
Camilla Berglund
2630d4968c Initial implementation of experimental gamma ramp API. 2010-10-13 04:04:43 +02:00
Camilla Berglund
f0b2ddad3d GLFW header was incorrectly installed. 2010-10-03 17:56:27 +02:00
Camilla Berglund
47ea99b81e Re-enabled Linux joystick API. 2010-09-25 19:26:40 +02:00
Olivier Delannoy
a33c5d56cb Initial support for cross-compilation with support for cross compilation to win32 2010-09-20 19:56:44 +01:00
Camilla Berglund
b7dceecc53 Formatting. 2010-09-17 04:22:48 +02:00
Camilla Berglund
3ca63a0cf3 Replaced platform specific config headers with shared one, updated version strings to include CMake version. 2010-09-17 00:54:11 +02:00
Camilla Berglund
bbdcb35dbb Message tweaks. 2010-09-15 17:14:21 +02:00
Camilla Berglund
728d52dc50 Updated GLFW version. 2010-09-11 15:27:48 +02:00
Camilla Berglund
f5d74c4f9a Added error management from pre-3.0 branch. 2010-09-09 21:06:59 +02:00
Camilla Berglund
445bf1ea33 Renamed lib directory to src. 2010-09-09 20:01:43 +02:00
Camilla Berglund
3249f812d6 Initial import of 2.7 Lite. 2010-09-07 17:34:51 +02:00