├── .gitignore
├── CMakeLists.txt
├── README.md
├── cmake
└── modules
│ ├── FindGLEW.cmake
│ └── FindGLFW.cmake
├── deps
├── glew
│ ├── CMakeLists.txt
│ ├── LICENSE.txt
│ ├── include
│ │ └── GL
│ │ │ ├── glew.h
│ │ │ ├── glxew.h
│ │ │ └── wglew.h
│ └── src
│ │ ├── glew.c
│ │ ├── glewinfo.c
│ │ └── visualinfo.c
└── glfw
│ ├── CMake
│ ├── AppleInfo.plist
│ ├── amd64-mingw32msvc.cmake
│ ├── i586-mingw32msvc.cmake
│ ├── i686-pc-mingw32.cmake
│ ├── i686-w64-mingw32.cmake
│ ├── modules
│ │ ├── FindEGL.cmake
│ │ ├── FindGLESv1.cmake
│ │ ├── FindGLESv2.cmake
│ │ ├── FindMir.cmake
│ │ ├── FindWayland.cmake
│ │ └── FindXKBCommon.cmake
│ └── x86_64-w64-mingw32.cmake
│ ├── CMakeLists.txt
│ ├── COPYING.txt
│ ├── cmake_uninstall.cmake.in
│ ├── deps
│ ├── EGL
│ │ └── eglext.h
│ ├── GL
│ │ ├── glext.h
│ │ ├── glxext.h
│ │ └── wglext.h
│ ├── KHR
│ │ └── khrplatform.h
│ ├── getopt.c
│ ├── getopt.h
│ ├── glad.c
│ ├── glad
│ │ └── glad.h
│ ├── tinycthread.c
│ └── tinycthread.h
│ ├── docs
│ ├── CMakeLists.txt
│ ├── Doxyfile.in
│ ├── DoxygenLayout.xml
│ ├── build.dox
│ ├── compat.dox
│ ├── compile.dox
│ ├── context.dox
│ ├── extra.css
│ ├── extra.less
│ ├── footer.html
│ ├── header.html
│ ├── html
│ │ ├── annotated.html
│ │ ├── bc_s.png
│ │ ├── bdwn.png
│ │ ├── bug.html
│ │ ├── build.html
│ │ ├── build_8dox.html
│ │ ├── classes.html
│ │ ├── closed.png
│ │ ├── compat.html
│ │ ├── compat_8dox.html
│ │ ├── compile.html
│ │ ├── compile_8dox.html
│ │ ├── context.html
│ │ ├── context_8dox.html
│ │ ├── dir_2424ad704b206c89082f9408cac4dea1.html
│ │ ├── dir_cad64ac143687238294d0ef1c4308bc1.html
│ │ ├── dir_d0d9ff8e306589526ff939d1e8a51d35.html
│ │ ├── doxygen.css
│ │ ├── doxygen.png
│ │ ├── dynsections.js
│ │ ├── extra.css
│ │ ├── files.html
│ │ ├── ftv2blank.png
│ │ ├── ftv2cl.png
│ │ ├── ftv2doc.png
│ │ ├── ftv2folderclosed.png
│ │ ├── ftv2folderopen.png
│ │ ├── ftv2lastnode.png
│ │ ├── ftv2link.png
│ │ ├── ftv2mlastnode.png
│ │ ├── ftv2mnode.png
│ │ ├── ftv2mo.png
│ │ ├── ftv2node.png
│ │ ├── ftv2ns.png
│ │ ├── ftv2plastnode.png
│ │ ├── ftv2pnode.png
│ │ ├── ftv2splitbar.png
│ │ ├── ftv2vertline.png
│ │ ├── functions.html
│ │ ├── functions_vars.html
│ │ ├── glfw3_8h.html
│ │ ├── glfw3_8h_source.html
│ │ ├── glfw3native_8h.html
│ │ ├── glfw3native_8h_source.html
│ │ ├── globals.html
│ │ ├── globals_b.html
│ │ ├── globals_c.html
│ │ ├── globals_d.html
│ │ ├── globals_defs.html
│ │ ├── globals_defs_b.html
│ │ ├── globals_defs_c.html
│ │ ├── globals_defs_d.html
│ │ ├── globals_defs_f.html
│ │ ├── globals_defs_g.html
│ │ ├── globals_defs_h.html
│ │ ├── globals_defs_i.html
│ │ ├── globals_defs_j.html
│ │ ├── globals_defs_k.html
│ │ ├── globals_defs_l.html
│ │ ├── globals_defs_m.html
│ │ ├── globals_defs_n.html
│ │ ├── globals_defs_o.html
│ │ ├── globals_defs_p.html
│ │ ├── globals_defs_r.html
│ │ ├── globals_defs_s.html
│ │ ├── globals_defs_v.html
│ │ ├── globals_e.html
│ │ ├── globals_f.html
│ │ ├── globals_func.html
│ │ ├── globals_g.html
│ │ ├── globals_h.html
│ │ ├── globals_i.html
│ │ ├── globals_j.html
│ │ ├── globals_k.html
│ │ ├── globals_l.html
│ │ ├── globals_m.html
│ │ ├── globals_n.html
│ │ ├── globals_o.html
│ │ ├── globals_p.html
│ │ ├── globals_r.html
│ │ ├── globals_s.html
│ │ ├── globals_t.html
│ │ ├── globals_type.html
│ │ ├── globals_v.html
│ │ ├── globals_w.html
│ │ ├── group__buttons.html
│ │ ├── group__context.html
│ │ ├── group__errors.html
│ │ ├── group__init.html
│ │ ├── group__input.html
│ │ ├── group__joysticks.html
│ │ ├── group__keys.html
│ │ ├── group__mods.html
│ │ ├── group__monitor.html
│ │ ├── group__native.html
│ │ ├── group__shapes.html
│ │ ├── group__window.html
│ │ ├── index.html
│ │ ├── input.html
│ │ ├── input_8dox.html
│ │ ├── intro.html
│ │ ├── intro_8dox.html
│ │ ├── jquery.js
│ │ ├── main_8dox.html
│ │ ├── modules.html
│ │ ├── monitor.html
│ │ ├── monitor_8dox.html
│ │ ├── moving.html
│ │ ├── moving_8dox.html
│ │ ├── nav_f.png
│ │ ├── nav_g.png
│ │ ├── nav_h.png
│ │ ├── news.html
│ │ ├── news_8dox.html
│ │ ├── open.png
│ │ ├── pages.html
│ │ ├── quick.html
│ │ ├── quick_8dox.html
│ │ ├── rift.html
│ │ ├── rift_8dox.html
│ │ ├── search
│ │ │ ├── all_0.html
│ │ │ ├── all_0.js
│ │ │ ├── all_1.html
│ │ │ ├── all_1.js
│ │ │ ├── all_2.html
│ │ │ ├── all_2.js
│ │ │ ├── all_3.html
│ │ │ ├── all_3.js
│ │ │ ├── all_4.html
│ │ │ ├── all_4.js
│ │ │ ├── all_5.html
│ │ │ ├── all_5.js
│ │ │ ├── all_6.html
│ │ │ ├── all_6.js
│ │ │ ├── all_7.html
│ │ │ ├── all_7.js
│ │ │ ├── all_8.html
│ │ │ ├── all_8.js
│ │ │ ├── all_9.html
│ │ │ ├── all_9.js
│ │ │ ├── all_a.html
│ │ │ ├── all_a.js
│ │ │ ├── all_b.html
│ │ │ ├── all_b.js
│ │ │ ├── all_c.html
│ │ │ ├── all_c.js
│ │ │ ├── all_d.html
│ │ │ ├── all_d.js
│ │ │ ├── all_e.html
│ │ │ ├── all_e.js
│ │ │ ├── all_f.html
│ │ │ ├── all_f.js
│ │ │ ├── classes_0.html
│ │ │ ├── classes_0.js
│ │ │ ├── close.png
│ │ │ ├── defines_0.html
│ │ │ ├── defines_0.js
│ │ │ ├── files_0.html
│ │ │ ├── files_0.js
│ │ │ ├── files_1.html
│ │ │ ├── files_1.js
│ │ │ ├── files_2.html
│ │ │ ├── files_2.js
│ │ │ ├── files_3.html
│ │ │ ├── files_3.js
│ │ │ ├── files_4.html
│ │ │ ├── files_4.js
│ │ │ ├── files_5.html
│ │ │ ├── files_5.js
│ │ │ ├── files_6.html
│ │ │ ├── files_6.js
│ │ │ ├── files_7.html
│ │ │ ├── files_7.js
│ │ │ ├── files_8.html
│ │ │ ├── files_8.js
│ │ │ ├── functions_0.html
│ │ │ ├── functions_0.js
│ │ │ ├── groups_0.html
│ │ │ ├── groups_0.js
│ │ │ ├── groups_1.html
│ │ │ ├── groups_1.js
│ │ │ ├── groups_2.html
│ │ │ ├── groups_2.js
│ │ │ ├── groups_3.html
│ │ │ ├── groups_3.js
│ │ │ ├── groups_4.html
│ │ │ ├── groups_4.js
│ │ │ ├── groups_5.html
│ │ │ ├── groups_5.js
│ │ │ ├── groups_6.html
│ │ │ ├── groups_6.js
│ │ │ ├── groups_7.html
│ │ │ ├── groups_7.js
│ │ │ ├── groups_8.html
│ │ │ ├── groups_8.js
│ │ │ ├── mag_sel.png
│ │ │ ├── nomatches.html
│ │ │ ├── pages_0.html
│ │ │ ├── pages_0.js
│ │ │ ├── pages_1.html
│ │ │ ├── pages_1.js
│ │ │ ├── pages_2.html
│ │ │ ├── pages_2.js
│ │ │ ├── pages_3.html
│ │ │ ├── pages_3.js
│ │ │ ├── pages_4.html
│ │ │ ├── pages_4.js
│ │ │ ├── pages_5.html
│ │ │ ├── pages_5.js
│ │ │ ├── pages_6.html
│ │ │ ├── pages_6.js
│ │ │ ├── pages_7.html
│ │ │ ├── pages_7.js
│ │ │ ├── pages_8.html
│ │ │ ├── pages_8.js
│ │ │ ├── search.css
│ │ │ ├── search.js
│ │ │ ├── search_l.png
│ │ │ ├── search_m.png
│ │ │ ├── search_r.png
│ │ │ ├── typedefs_0.html
│ │ │ ├── typedefs_0.js
│ │ │ ├── variables_0.html
│ │ │ ├── variables_0.js
│ │ │ ├── variables_1.html
│ │ │ ├── variables_1.js
│ │ │ ├── variables_2.html
│ │ │ ├── variables_2.js
│ │ │ ├── variables_3.html
│ │ │ ├── variables_3.js
│ │ │ ├── variables_4.html
│ │ │ ├── variables_4.js
│ │ │ ├── variables_5.html
│ │ │ ├── variables_5.js
│ │ │ ├── variables_6.html
│ │ │ └── variables_6.js
│ │ ├── spaces.svg
│ │ ├── structGLFWgammaramp.html
│ │ ├── structGLFWimage.html
│ │ ├── structGLFWvidmode.html
│ │ ├── sync_off.png
│ │ ├── sync_on.png
│ │ ├── tab_a.png
│ │ ├── tab_b.png
│ │ ├── tab_h.png
│ │ ├── tab_s.png
│ │ ├── tabs.css
│ │ ├── window.html
│ │ └── window_8dox.html
│ ├── input.dox
│ ├── internal.dox
│ ├── intro.dox
│ ├── main.dox
│ ├── monitor.dox
│ ├── moving.dox
│ ├── news.dox
│ ├── quick.dox
│ ├── rift.dox
│ ├── spaces.svg
│ └── window.dox
│ ├── examples
│ ├── CMakeLists.txt
│ ├── boing.c
│ ├── gears.c
│ ├── heightmap.c
│ ├── particles.c
│ ├── simple.c
│ ├── splitview.c
│ └── wave.c
│ ├── include
│ └── GLFW
│ │ ├── glfw3.h
│ │ └── glfw3native.h
│ ├── src
│ ├── CMakeLists.txt
│ ├── cocoa_init.m
│ ├── cocoa_monitor.m
│ ├── cocoa_platform.h
│ ├── cocoa_window.m
│ ├── context.c
│ ├── egl_context.c
│ ├── egl_context.h
│ ├── glfw3.pc.in
│ ├── glfw3Config.cmake.in
│ ├── glfw_config.h.in
│ ├── glx_context.c
│ ├── glx_context.h
│ ├── init.c
│ ├── input.c
│ ├── internal.h
│ ├── iokit_joystick.h
│ ├── iokit_joystick.m
│ ├── linux_joystick.c
│ ├── linux_joystick.h
│ ├── mach_time.c
│ ├── mir_init.c
│ ├── mir_monitor.c
│ ├── mir_platform.h
│ ├── mir_window.c
│ ├── monitor.c
│ ├── nsgl_context.h
│ ├── nsgl_context.m
│ ├── posix_time.c
│ ├── posix_time.h
│ ├── posix_tls.c
│ ├── posix_tls.h
│ ├── wgl_context.c
│ ├── wgl_context.h
│ ├── win32_init.c
│ ├── win32_monitor.c
│ ├── win32_platform.h
│ ├── win32_time.c
│ ├── win32_tls.c
│ ├── win32_tls.h
│ ├── win32_window.c
│ ├── window.c
│ ├── winmm_joystick.c
│ ├── winmm_joystick.h
│ ├── wl_init.c
│ ├── wl_monitor.c
│ ├── wl_platform.h
│ ├── wl_window.c
│ ├── x11_init.c
│ ├── x11_monitor.c
│ ├── x11_platform.h
│ ├── x11_window.c
│ ├── xkb_unicode.c
│ └── xkb_unicode.h
│ └── tests
│ ├── CMakeLists.txt
│ ├── accuracy.c
│ ├── clipboard.c
│ ├── cursor.c
│ ├── cursoranim.c
│ ├── defaults.c
│ ├── empty.c
│ ├── events.c
│ ├── fsaa.c
│ ├── gamma.c
│ ├── glfwinfo.c
│ ├── iconify.c
│ ├── joysticks.c
│ ├── monitors.c
│ ├── peter.c
│ ├── reopen.c
│ ├── sharing.c
│ ├── tearing.c
│ ├── threads.c
│ ├── title.c
│ └── windows.c
├── docs
├── CMakeLists.txt
├── Doxyfile
└── mainpage.md
├── examples
├── CMakeLists.txt
├── event.cpp
├── template.cpp
├── text.cpp
└── triangle.cpp
├── include
├── CMU462
│ ├── CMU462.h
│ ├── application.h
│ ├── base64.h
│ ├── color.h
│ ├── complex.h
│ ├── console.h
│ ├── lodepng.h
│ ├── matrix3x3.h
│ ├── matrix4x4.h
│ ├── misc.h
│ ├── osdtext.h
│ ├── quaternion.h
│ ├── spectrum.h
│ ├── timer.h
│ ├── tinyexr.h
│ ├── tinyxml2.h
│ ├── vector2D.h
│ ├── vector3D.h
│ ├── vector4D.h
│ └── viewer.h
├── GL
│ ├── glew.h
│ ├── glxew.h
│ └── wglew.h
└── GLFW
│ ├── glfw3.h
│ └── glfw3native.h
├── src
├── CMakeLists.txt
├── base64.cpp
├── color.cpp
├── complex.cpp
├── lodepng.cpp
├── matrix3x3.cpp
├── matrix4x4.cpp
├── osdfont.c
├── osdtext.cpp
├── quaternion.cpp
├── spectrum.cpp
├── tinyxml2.cpp
├── vector2D.cpp
├── vector3D.cpp
├── vector4D.cpp
└── viewer.cpp
└── tests
├── CMakeLists.txt
└── osd.cpp
/.gitignore:
--------------------------------------------------------------------------------
1 | build
2 | .DS_store
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # CMU462 Library
2 |
3 | ## About
4 |
5 | The CMU462 library is designed to build simple graphics applications for
6 | 15-462 : Computer Graphics
7 |
8 | The library provides basic vector operations, takes care of OpenGL context
9 | creation, window event handling, and an on-screen text display interface using
10 | freetype. The library is designed to provide a simple interface for building
11 | graphics applications and is used in 15-462 assignments.
12 |
13 | ## Requirements
14 |
15 | Freetype is required to build CMU462. CMU462 uses GLFW3 and GLEW for window
16 | management and context creation. Copies of GLEW and GLFW3 are shipped with
17 | the source code and will be compiled from source if they are not installed
18 | on the system.
19 |
20 | ## Build instruction
21 |
22 | Use CMake to generate the build files for your platform as follows:
23 |
24 | * Create a build directory: ```mkdir build ```
25 | * Configure your build by modifying: ```CMU462/CMakeLists.txt```
26 | * Run cmake to generate build files: ```cmake ..```
27 | * And build: ```make```
28 |
--------------------------------------------------------------------------------
/deps/glew/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | set(GLEW_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR})
2 |
3 | set(GLEW_SOURCE_DIR ${GLEW_ROOT_DIR}/src)
4 | set(GLEW_HEADER_DIR ${GLEW_ROOT_DIR}/include)
5 |
6 | include_directories(${GLEW_HEADER_DIR})
7 |
8 | add_library(glew
9 | ${GLEW_SOURCE_DIR}/glew.c
10 | ${GLEW_SOURCE_DIR}/glewinfo.c
11 | ${GLEW_SOURCE_DIR}/visualinfo.c)
12 |
13 | set(GLEW_LIBRARIES glew PARENT_SCOPE)
14 | set(GLEW_INCLUDE_DIRS ${GLEW_HEADER_DIR} PARENT_SCOPE)
15 |
16 | install(TARGETS glew DESTINATION lib)
17 | install(DIRECTORY ${GLEW_HEADER_DIR}/GL DESTINATION include)
18 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/AppleInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${APPLE_GUI_EXECUTABLE}
9 | CFBundleGetInfoString
10 | ${APPLE_GUI_INFO_STRING}
11 | CFBundleIconFile
12 | ${APPLE_GUI_ICON}
13 | CFBundleIdentifier
14 | ${APPLE_GUI_IDENTIFIER}
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleLongVersionString
18 | ${APPLE_GUI_LONG_VERSION_STRING}
19 | CFBundleName
20 | ${APPLE_GUI_BUNDLE_NAME}
21 | CFBundlePackageType
22 | APPL
23 | CFBundleShortVersionString
24 | ${APPLE_GUI_SHORT_VERSION_STRING}
25 | CFBundleSignature
26 | ????
27 | CFBundleVersion
28 | ${APPLE_GUI_BUNDLE_VERSION}
29 | CSResourcesFileMapped
30 |
31 | LSRequiresCarbon
32 |
33 | NSHumanReadableCopyright
34 | ${APPLE_GUI_COPYRIGHT}
35 | NSHighResolutionCapable
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/amd64-mingw32msvc.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross compiling from Linux to Win64
2 | SET(CMAKE_SYSTEM_NAME Windows)
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "amd64-mingw32msvc-gcc")
5 | SET(CMAKE_CXX_COMPILER "amd64-mingw32msvc-g++")
6 | SET(CMAKE_RC_COMPILER "amd64-mingw32msvc-windres")
7 | SET(CMAKE_RANLIB "amd64-mingw32msvc-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/amd64-mingw32msvc")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/i586-mingw32msvc.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross compiling from Linux to Win32
2 | SET(CMAKE_SYSTEM_NAME Windows)
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "i586-mingw32msvc-gcc")
5 | SET(CMAKE_CXX_COMPILER "i586-mingw32msvc-g++")
6 | SET(CMAKE_RC_COMPILER "i586-mingw32msvc-windres")
7 | SET(CMAKE_RANLIB "i586-mingw32msvc-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/i586-mingw32msvc")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/i686-pc-mingw32.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross compiling from Linux to Win32
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "i686-pc-mingw32-gcc")
5 | SET(CMAKE_CXX_COMPILER "i686-pc-mingw32-g++")
6 | SET(CMAKE_RC_COMPILER "i686-pc-mingw32-windres")
7 | SET(CMAKE_RANLIB "i686-pc-mingw32-ranlib")
8 |
9 | #Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/opt/mingw/usr/i686-pc-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/i686-w64-mingw32.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross compiling from Linux to Win32
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "i686-w64-mingw32-gcc")
5 | SET(CMAKE_CXX_COMPILER "i686-w64-mingw32-g++")
6 | SET(CMAKE_RC_COMPILER "i686-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "i686-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/i686-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindEGL.cmake:
--------------------------------------------------------------------------------
1 | # Find EGL
2 | #
3 | # EGL_INCLUDE_DIR
4 | # EGL_LIBRARY
5 | # EGL_FOUND
6 |
7 | find_path(EGL_INCLUDE_DIR NAMES EGL/egl.h PATHS /opt/vc/include)
8 |
9 | set(EGL_NAMES ${EGL_NAMES} egl EGL)
10 | find_library(EGL_LIBRARY NAMES ${EGL_NAMES} PATHS /opt/vc/lib)
11 |
12 | include(FindPackageHandleStandardArgs)
13 | find_package_handle_standard_args(EGL DEFAULT_MSG EGL_LIBRARY EGL_INCLUDE_DIR)
14 |
15 | mark_as_advanced(EGL_INCLUDE_DIR EGL_LIBRARY)
16 |
17 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindGLESv1.cmake:
--------------------------------------------------------------------------------
1 | # Find GLESv1
2 | #
3 | # GLESv1_INCLUDE_DIR
4 | # GLESv1_LIBRARY
5 | # GLESv1_FOUND
6 |
7 | find_path(GLESv1_INCLUDE_DIR NAMES GLES/gl.h PATHS /opt/vc/include)
8 |
9 | set(GLESv1_NAMES ${GLESv1_NAMES} GLESv1_CM)
10 | find_library(GLESv1_LIBRARY NAMES ${GLESv1_NAMES} PATHS /opt/vc/lib)
11 |
12 | include(FindPackageHandleStandardArgs)
13 | find_package_handle_standard_args(GLESv1 DEFAULT_MSG GLESv1_LIBRARY GLESv1_INCLUDE_DIR)
14 |
15 | mark_as_advanced(GLESv1_INCLUDE_DIR GLESv1_LIBRARY)
16 |
17 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindGLESv2.cmake:
--------------------------------------------------------------------------------
1 | # Find GLESv2
2 | #
3 | # GLESv2_INCLUDE_DIR
4 | # GLESv2_LIBRARY
5 | # GLESv2_FOUND
6 |
7 | find_path(GLESv2_INCLUDE_DIR NAMES GLES2/gl2.h PATHS /opt/vc/include)
8 |
9 | set(GLESv2_NAMES ${GLESv2_NAMES} GLESv2)
10 | find_library(GLESv2_LIBRARY NAMES ${GLESv2_NAMES} PATHS /opt/vc/lib)
11 |
12 | include(FindPackageHandleStandardArgs)
13 | find_package_handle_standard_args(GLESv2 DEFAULT_MSG GLESv2_LIBRARY GLESv2_INCLUDE_DIR)
14 |
15 | mark_as_advanced(GLESv2_INCLUDE_DIR GLESv2_LIBRARY)
16 |
17 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindMir.cmake:
--------------------------------------------------------------------------------
1 | # Try to find Mir on a Unix system
2 | #
3 | # This will define:
4 | #
5 | # MIR_LIBRARIES - Link these to use Wayland
6 | # MIR_INCLUDE_DIR - Include directory for Wayland
7 | #
8 | # Copyright (c) 2014 Brandon Schaefer
9 |
10 | if (NOT WIN32)
11 |
12 | find_package (PkgConfig)
13 | pkg_check_modules (PKG_MIR QUIET mirclient)
14 |
15 | set (MIR_INCLUDE_DIR ${PKG_MIR_INCLUDE_DIRS})
16 | set (MIR_LIBRARIES ${PKG_MIR_LIBRARIES})
17 |
18 | endif ()
19 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindWayland.cmake:
--------------------------------------------------------------------------------
1 | # Try to find Wayland on a Unix system
2 | #
3 | # This will define:
4 | #
5 | # WAYLAND_FOUND - True if Wayland is found
6 | # WAYLAND_LIBRARIES - Link these to use Wayland
7 | # WAYLAND_INCLUDE_DIR - Include directory for Wayland
8 | # WAYLAND_DEFINITIONS - Compiler flags for using Wayland
9 | #
10 | # In addition the following more fine grained variables will be defined:
11 | #
12 | # WAYLAND_CLIENT_FOUND WAYLAND_CLIENT_INCLUDE_DIR WAYLAND_CLIENT_LIBRARIES
13 | # WAYLAND_SERVER_FOUND WAYLAND_SERVER_INCLUDE_DIR WAYLAND_SERVER_LIBRARIES
14 | # WAYLAND_EGL_FOUND WAYLAND_EGL_INCLUDE_DIR WAYLAND_EGL_LIBRARIES
15 | #
16 | # Copyright (c) 2013 Martin Gräßlin
17 | #
18 | # Redistribution and use is allowed according to the terms of the BSD license.
19 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
20 |
21 | IF (NOT WIN32)
22 | IF (WAYLAND_INCLUDE_DIR AND WAYLAND_LIBRARIES)
23 | # In the cache already
24 | SET(WAYLAND_FIND_QUIETLY TRUE)
25 | ENDIF ()
26 |
27 | # Use pkg-config to get the directories and then use these values
28 | # in the FIND_PATH() and FIND_LIBRARY() calls
29 | FIND_PACKAGE(PkgConfig)
30 | PKG_CHECK_MODULES(PKG_WAYLAND QUIET wayland-client wayland-server wayland-egl wayland-cursor)
31 |
32 | SET(WAYLAND_DEFINITIONS ${PKG_WAYLAND_CFLAGS})
33 |
34 | FIND_PATH(WAYLAND_CLIENT_INCLUDE_DIR NAMES wayland-client.h HINTS ${PKG_WAYLAND_INCLUDE_DIRS})
35 | FIND_PATH(WAYLAND_SERVER_INCLUDE_DIR NAMES wayland-server.h HINTS ${PKG_WAYLAND_INCLUDE_DIRS})
36 | FIND_PATH(WAYLAND_EGL_INCLUDE_DIR NAMES wayland-egl.h HINTS ${PKG_WAYLAND_INCLUDE_DIRS})
37 | FIND_PATH(WAYLAND_CURSOR_INCLUDE_DIR NAMES wayland-cursor.h HINTS ${PKG_WAYLAND_INCLUDE_DIRS})
38 |
39 | FIND_LIBRARY(WAYLAND_CLIENT_LIBRARIES NAMES wayland-client HINTS ${PKG_WAYLAND_LIBRARY_DIRS})
40 | FIND_LIBRARY(WAYLAND_SERVER_LIBRARIES NAMES wayland-server HINTS ${PKG_WAYLAND_LIBRARY_DIRS})
41 | FIND_LIBRARY(WAYLAND_EGL_LIBRARIES NAMES wayland-egl HINTS ${PKG_WAYLAND_LIBRARY_DIRS})
42 | FIND_LIBRARY(WAYLAND_CURSOR_LIBRARIES NAMES wayland-cursor HINTS ${PKG_WAYLAND_LIBRARY_DIRS})
43 |
44 | set(WAYLAND_INCLUDE_DIR ${WAYLAND_CLIENT_INCLUDE_DIR} ${WAYLAND_SERVER_INCLUDE_DIR} ${WAYLAND_EGL_INCLUDE_DIR} ${WAYLAND_CURSOR_INCLUDE_DIR})
45 |
46 | set(WAYLAND_LIBRARIES ${WAYLAND_CLIENT_LIBRARIES} ${WAYLAND_SERVER_LIBRARIES} ${WAYLAND_EGL_LIBRARIES} ${WAYLAND_CURSOR_LIBRARIES})
47 |
48 | list(REMOVE_DUPLICATES WAYLAND_INCLUDE_DIR)
49 |
50 | include(FindPackageHandleStandardArgs)
51 |
52 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(WAYLAND_CLIENT DEFAULT_MSG WAYLAND_CLIENT_LIBRARIES WAYLAND_CLIENT_INCLUDE_DIR)
53 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(WAYLAND_SERVER DEFAULT_MSG WAYLAND_SERVER_LIBRARIES WAYLAND_SERVER_INCLUDE_DIR)
54 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(WAYLAND_EGL DEFAULT_MSG WAYLAND_EGL_LIBRARIES WAYLAND_EGL_INCLUDE_DIR)
55 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(WAYLAND_CURSOR DEFAULT_MSG WAYLAND_CURSOR_LIBRARIES WAYLAND_CURSOR_INCLUDE_DIR)
56 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(WAYLAND DEFAULT_MSG WAYLAND_LIBRARIES WAYLAND_INCLUDE_DIR)
57 |
58 | MARK_AS_ADVANCED(
59 | WAYLAND_INCLUDE_DIR WAYLAND_LIBRARIES
60 | WAYLAND_CLIENT_INCLUDE_DIR WAYLAND_CLIENT_LIBRARIES
61 | WAYLAND_SERVER_INCLUDE_DIR WAYLAND_SERVER_LIBRARIES
62 | WAYLAND_EGL_INCLUDE_DIR WAYLAND_EGL_LIBRARIES
63 | WAYLAND_CURSOR_INCLUDE_DIR WAYLAND_CURSOR_LIBRARIES
64 | )
65 |
66 | ENDIF ()
67 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/modules/FindXKBCommon.cmake:
--------------------------------------------------------------------------------
1 | # - Try to find XKBCommon
2 | # Once done, this will define
3 | #
4 | # XKBCOMMON_FOUND - System has XKBCommon
5 | # XKBCOMMON_INCLUDE_DIRS - The XKBCommon include directories
6 | # XKBCOMMON_LIBRARIES - The libraries needed to use XKBCommon
7 | # XKBCOMMON_DEFINITIONS - Compiler switches required for using XKBCommon
8 |
9 | find_package(PkgConfig)
10 | pkg_check_modules(PC_XKBCOMMON QUIET xkbcommon)
11 | set(XKBCOMMON_DEFINITIONS ${PC_XKBCOMMON_CFLAGS_OTHER})
12 |
13 | find_path(XKBCOMMON_INCLUDE_DIR
14 | NAMES xkbcommon/xkbcommon.h
15 | HINTS ${PC_XKBCOMMON_INCLUDE_DIR} ${PC_XKBCOMMON_INCLUDE_DIRS}
16 | )
17 |
18 | find_library(XKBCOMMON_LIBRARY
19 | NAMES xkbcommon
20 | HINTS ${PC_XKBCOMMON_LIBRARY} ${PC_XKBCOMMON_LIBRARY_DIRS}
21 | )
22 |
23 | set(XKBCOMMON_LIBRARIES ${XKBCOMMON_LIBRARY})
24 | set(XKBCOMMON_LIBRARY_DIRS ${XKBCOMMON_LIBRARY_DIRS})
25 | set(XKBCOMMON_INCLUDE_DIRS ${XKBCOMMON_INCLUDE_DIR})
26 |
27 | include(FindPackageHandleStandardArgs)
28 | find_package_handle_standard_args(XKBCommon DEFAULT_MSG
29 | XKBCOMMON_LIBRARY
30 | XKBCOMMON_INCLUDE_DIR
31 | )
32 |
33 | mark_as_advanced(XKBCOMMON_LIBRARY XKBCOMMON_INCLUDE_DIR)
34 |
35 |
--------------------------------------------------------------------------------
/deps/glfw/CMake/x86_64-w64-mingw32.cmake:
--------------------------------------------------------------------------------
1 | # Define the environment for cross compiling from Linux to Win32
2 | SET(CMAKE_SYSTEM_NAME Windows) # Target system name
3 | SET(CMAKE_SYSTEM_VERSION 1)
4 | SET(CMAKE_C_COMPILER "x86_64-w64-mingw32-gcc")
5 | SET(CMAKE_CXX_COMPILER "x86_64-w64-mingw32-g++")
6 | SET(CMAKE_RC_COMPILER "x86_64-w64-mingw32-windres")
7 | SET(CMAKE_RANLIB "x86_64-w64-mingw32-ranlib")
8 |
9 | # Configure the behaviour of the find commands
10 | SET(CMAKE_FIND_ROOT_PATH "/usr/x86_64-w64-mingw32")
11 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
12 | SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
13 | SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
14 |
--------------------------------------------------------------------------------
/deps/glfw/COPYING.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2002-2006 Marcus Geelnard
2 | Copyright (c) 2006-2010 Camilla Berglund
3 |
4 | This software is provided 'as-is', without any express or implied
5 | warranty. In no event will the authors be held liable for any damages
6 | arising from the use of this software.
7 |
8 | Permission is granted to anyone to use this software for any purpose,
9 | including commercial applications, and to alter it and redistribute it
10 | freely, subject to the following restrictions:
11 |
12 | 1. The origin of this software must not be misrepresented; you must not
13 | claim that you wrote the original software. If you use this software
14 | in a product, an acknowledgment in the product documentation would
15 | be appreciated but is not required.
16 |
17 | 2. Altered source versions must be plainly marked as such, and must not
18 | be misrepresented as being the original software.
19 |
20 | 3. This notice may not be removed or altered from any source
21 | distribution.
22 |
23 |
--------------------------------------------------------------------------------
/deps/glfw/cmake_uninstall.cmake.in:
--------------------------------------------------------------------------------
1 |
2 | if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
3 | message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
4 | endif()
5 |
6 | file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
7 | string(REGEX REPLACE "\n" ";" files "${files}")
8 |
9 | foreach (file ${files})
10 | message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
11 | if (EXISTS "$ENV{DESTDIR}${file}")
12 | exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
13 | OUTPUT_VARIABLE rm_out
14 | RETURN_VALUE rm_retval)
15 | if (NOT "${rm_retval}" STREQUAL 0)
16 | MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
17 | endif()
18 | elseif (IS_SYMLINK "$ENV{DESTDIR}${file}")
19 | EXEC_PROGRAM("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
20 | OUTPUT_VARIABLE rm_out
21 | RETURN_VALUE rm_retval)
22 | if (NOT "${rm_retval}" STREQUAL 0)
23 | message(FATAL_ERROR "Problem when removing symlink \"$ENV{DESTDIR}${file}\"")
24 | endif()
25 | else()
26 | message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
27 | endif()
28 | endforeach()
29 |
30 |
--------------------------------------------------------------------------------
/deps/glfw/deps/getopt.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2012, Kim Gräsman
2 | * All rights reserved.
3 | *
4 | * Redistribution and use in source and binary forms, with or without
5 | * modification, are permitted provided that the following conditions are met:
6 | * * Redistributions of source code must retain the above copyright notice,
7 | * this list of conditions and the following disclaimer.
8 | * * Redistributions in binary form must reproduce the above copyright notice,
9 | * this list of conditions and the following disclaimer in the documentation
10 | * and/or other materials provided with the distribution.
11 | * * Neither the name of Kim Gräsman nor the names of contributors may be used
12 | * to endorse or promote products derived from this software without specific
13 | * prior written permission.
14 | *
15 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 | * ARE DISCLAIMED. IN NO EVENT SHALL KIM GRÄSMAN BE LIABLE FOR ANY DIRECT,
19 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 | */
26 |
27 | #ifndef INCLUDED_GETOPT_PORT_H
28 | #define INCLUDED_GETOPT_PORT_H
29 |
30 | #if defined(__cplusplus)
31 | extern "C" {
32 | #endif
33 |
34 | extern const int no_argument;
35 | extern const int required_argument;
36 | extern const int optional_argument;
37 |
38 | extern char* optarg;
39 | extern int optind, opterr, optopt;
40 |
41 | struct option {
42 | const char* name;
43 | int has_arg;
44 | int* flag;
45 | int val;
46 | };
47 |
48 | int getopt(int argc, char* const argv[], const char* optstring);
49 |
50 | int getopt_long(int argc, char* const argv[],
51 | const char* optstring, const struct option* longopts, int* longindex);
52 |
53 | #if defined(__cplusplus)
54 | }
55 | #endif
56 |
57 | #endif // INCLUDED_GETOPT_PORT_H
58 |
--------------------------------------------------------------------------------
/deps/glfw/docs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 |
2 | add_custom_target(docs ALL ${DOXYGEN_EXECUTABLE}
3 | WORKING_DIRECTORY ${GLFW_BINARY_DIR}/docs
4 | COMMENT "Generating HTML documentation" VERBATIM)
5 |
6 |
--------------------------------------------------------------------------------
/deps/glfw/docs/footer.html:
--------------------------------------------------------------------------------
1 |
6 |