Commit Graph

298 Commits

Author SHA1 Message Date
Camilla Berglund
9b75bffc88 Add basic Vulkan support
Added GLFW_INCLUDE_VULKAN.  Added glfwVulkanSupported,
glfwGetRequiredInstanceExtensions, glfwGetInstanceProcAddress,
glfwGetPhysicalDevicePresentationSupport and glfwCreateWindowSurface.
Added port of LunarG SDK tri example.
2016-02-16 14:58:58 +01:00
Zbigniew Mandziejewicz
f22edf13dc Simplify file generation paths 2016-02-02 06:10:26 +01:00
Camilla Berglund
7f7ad39e15 CMake target installation fixes 2016-02-02 06:10:22 +01:00
Nicholas Vitovitch
453631773e Export transitive dependencies for static library 2016-02-02 06:00:18 +01:00
Nicholas Vitovitch
23d34747f4 Rename export targets file to glfw3Targets.cmake 2016-02-02 06:00:18 +01:00
Zbigniew Mandziejewicz
6466c9d406 Fix CMake file install paths
Fixes #460.
Fixes #483.
Fixes #606.
2016-02-02 05:56:52 +01:00
Camilla Berglund
d2d57c70e2 Fix pkg-config file generation regression
Fixes regression cased by 37c93ba031.

Fixes #664.
Closes #679.
2015-12-30 21:09:40 +01:00
Camilla Berglund
37c93ba031 Compiler flag cleanup 2015-12-15 22:37:23 +01:00
Camilla Berglund
9c315412e1 Add glfwGetKeyName
Fixes #464.
2015-11-09 14:46:09 +01:00
Camilla Berglund
42efd26698 Remove support for Universal Binaries 2015-10-18 19:34:33 +02:00
Camilla Berglund
074aafa814 Formatting 2015-10-14 13:43:07 +02:00
Camilla Berglund
22eca139fb Remove compile-time client library selection 2015-10-14 13:43:05 +02:00
Camilla Berglund
bf7cce25dc Replace external context and client API headers 2015-10-13 00:48:18 +02:00
Camilla Berglund
95a07f3340 Start 3.2 2015-10-12 21:59:49 +02:00
Camilla Berglund
7e13a4909e Make all EGL functions dynamically loaded 2015-08-25 02:24:42 +02:00
Camilla Berglund
6d5753c548 Added support for AMD PowerXpress override.
Generalized _GLFW_USE_OPTIMUS_HPG to _GLFW_USE_HYBRID_HPG to reflect the
change.

Fixes #520.
2015-05-29 13:15:32 +02:00
Camilla Berglund
3c52cb1790 Simplified glXGetProcAddress logic.
Removed compile-time selection of GLX entry point retrieval mechanism.
Made dlopen a required dependency.

This is a stopgap solution until we start requiring GLX 1.4.
2015-05-27 02:20:55 +02:00
Camilla Berglund
8309e0ecb0 Use DwmFlush when DWM is enabled.
Use DwmFlush instead of WGL_EXT_swap_control when desktop compositing is
enabled, to avoid the jitter of DWM and WGL vsync fighting.

Fixes #516.
2015-05-21 18:28:53 +02:00
Camilla Berglund
c9ae3f4efe Fixed build regression.
Fixes regression caused by 5f7f6319eb.
2015-05-14 17:00:03 +02:00
Camilla Berglund
155da0cd09 Unified librt and libm logic. 2015-05-14 16:15:50 +02:00
Camilla Berglund
b4f3adb6ee Removed no-op librt illogic. 2015-05-14 16:11:18 +02:00
Camilla Berglund
6b232bd8f6 Updated minimum required CMake version to 2.8.12.
All major package systems seem to have caught up.
2015-05-14 15:59:53 +02:00
Camilla Berglund
323d4a484d Simplified libdl logic. 2015-05-13 16:33:29 +02:00
Camilla Berglund
6af25fb423 MinGW flag logic cleanup. 2015-05-13 16:33:29 +02:00
Nicholas Vitovitch
35b6c72634 Simplifies CMake version checks. 2015-05-13 16:33:29 +02:00
Camilla Berglund
5f7f6319eb Made global setting of CMake module path explicit. 2015-05-13 16:14:01 +02:00
Camilla Berglund
5268914b3f Started 3.1.2. 2015-03-20 00:16:24 +01:00
Camilla Berglund
5f21e213df Made Xxf86vm optional at compile-time. 2015-02-16 15:40:41 +01:00
Camilla Berglund
f4c127f75a Made XInput2 optional at compile-time.
This is required for RHEL 5, CentOS 5 and Cygwin-X.

Fixes #314.
2015-02-16 15:40:39 +01:00
Camilla Berglund
ead8a1c333 Started 3.1.1. 2015-01-25 10:42:01 +01:00
Camilla Berglund
023f337735 Fixed IDE folder issues for VC++.
Fixes #328.
2015-01-07 00:58:54 +01:00
Camilla Berglund
fe7a4eb4ff Improved CMake config file generation. 2015-01-06 01:42:01 +01:00
Camilla Berglund
2b57d176df Added workaround for CMP0042. 2015-01-06 00:02:43 +01:00
Camilla Berglund
a6ba9d6bcd Fixed framework variables not marked as advanced. 2014-12-11 16:08:56 +01:00
Camilla Berglund
1dc84989bf Made pkgconfig variable use consistent. 2014-12-11 16:08:56 +01:00
BrandonSchaefer
cfb7d2f036 Start with the skeleton code for Mir support. 2014-11-10 02:00:14 +01:00
Camilla Berglund
fb90d5b0ec Added exploit mitigation linker flags for MinGW.
Closes #349.
2014-10-07 19:00:31 +02:00
Camilla Berglund
2a255e49e2 Made static library build with -fPIC for Rust.
Fixes #199.
2014-10-07 12:48:01 +02:00
Camilla Berglund
4918514eaf Added support for _NET_WM_FULLSCREEN_MONITORS.
This allows EWMH full screen windows to correctly cover monitors that
overlap other monitors, such as an Oculus Rift mapped onto a section of
a larger monitor.

Fixes #175.
2014-09-22 13:31:59 +02:00
Camilla Berglund
82dc6c8b8f Removed option to disable loading of winmm. 2014-08-31 13:51:21 +02:00
Camilla Berglund
dd043d737f Use CMake threading variable for Wayland. 2014-08-11 20:27:48 +02:00
Camilla Berglund
6e0ea02f17 Quoted all CMake paths with substitution.
Fixes #258.
2014-08-11 20:26:37 +02:00
Ricardo Vieira
3eae79f6e0 Fixed Wayland EGL pkg-config module name.
The wayland-egl module also includes wayland-client.

Fixes #317.
2014-07-01 10:37:41 +02:00
Jonas Ådahl
76f78cf123 Fixed name of xkbcommon pkg-config module. 2014-07-01 10:34:16 +02:00
Jonas Ådahl
9ac854b7bb wayland: Add keyboard support
Adds libxkbcommon as a dependency when enabling the Wayland backend.
2014-06-29 23:21:06 +02:00
Jonas Ådahl
7d373477ed wayland: Build with -pthread 2014-06-29 23:18:40 +02:00
Camilla Berglund
20b7ac0518 Formatting. 2014-06-12 22:08:37 +02:00
Camilla Berglund
2f30d3e5a3 Only generate Doxyfile if generating docs.
Fixes #307.
2014-06-11 23:07:55 +02:00
Camilla Berglund
f1cb1f8420 Disabled Wayland on OS X. 2014-04-08 18:24:02 +02:00
Camilla Berglund
6acbfe863d Fixed option value. 2014-04-08 16:07:20 +02:00
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