Commit Graph

75 Commits

Author SHA1 Message Date
Mathieu Virbel b38b9737fa Feature: GL backends
This is a major rework of OpenGL internals within Kivy to:
- not statically link to a OpenGL library for each graphics python extension
- make an OpenGL backend interface available to use for each graphics python extension
- implement multiple backend such as
  - sdl: use SDL_GL_GetProcAddress to look at start all the GL symbols
  - static: wire GL functions at link time during compilation. This can fail if the platform miss some GL functions.
  - mock: empty implementation of all GL functions
  - debug: wrapper around the current loaded backend to print the call and results
  - angle: redirect to sdl, but since the Windows require 3 lines to be executed for ANGLE, we need to make it look like a backend

Changes:

- all c_opengl_* are gone
- all modules now just use kivy.gragphics.cgl directly
- all backends are declared like kivy.graphics.cgl_<NAME>
- USE_OPENGL_MOCK, USE_GLEW, are gone.

Environment:

- KIVY_GL_BACKEND: {sdl,static,mock}
- KIVY_GL_DEBUG: {0,1}


TODO:

- tests on all platforms
- implement GLEW backend
- fixes debug backend (it prints, but still a black screen)
- enhance debug to print gl call to a file (can be cool for unit tests)
2016-12-18 16:36:14 -05:00
dessant 76138882e7 travis: update aria2 download url 2016-12-15 10:34:22 +02:00
dessant e0ed222278 travis: remove unused commands 2016-12-15 10:19:47 +02:00
dessant d2b93d5c54 travis: update python3, gstreamer, SDL2_ttf, aria2 for osx 2016-12-15 10:13:51 +02:00
dessant a66479b307 travis: enable unit tests on osx 2016-12-15 09:52:27 +02:00
dessant e08c135521 travis: add workaround for failing osx build 2016-12-15 09:50:57 +02:00
dessant dbbfc432c0 travis: temporarily disable unit tests on osx 2016-12-14 20:08:08 +02:00
dessant a58a88c506 travis: print commands and exit on first error, fixes #4414 2016-12-12 06:13:30 +02:00
dessant bbdeea69e1 adjust travis config indentation 2016-12-12 06:07:32 +02:00
dessant f71c46d4a0 use https for travis webhook 2016-11-03 20:32:31 +02:00
dessant 16afe800d8 fix syntax for ssh options, enable doc updates 2016-11-03 19:16:26 +02:00
dessant a195f21231 disable host key checking for doc upload 2016-10-28 20:18:25 +03:00
dessant 2a51f0a6f2 point rsync to new doc location 2016-10-28 20:09:05 +03:00
dessant 4c49633c6d pdf builds are now managed by RTD 2016-09-04 10:16:06 +03:00
dessant 3409a812e4 disable pdf builds for travis 2016-05-30 12:33:45 +03:00
dessant 1025429663 a bit of travis refactoring 2016-02-27 15:55:54 +02:00
dessant 218c704121 call make pdf only once from travis
'make pdf' is now executed twice in makefile a06e325cf2
2016-02-25 01:16:06 +02:00
matham ac03ca2600 Increase gst download connections. 2016-01-16 16:09:27 -05:00
matham 615003f6a1 Update aria2 bin path. 2016-01-16 15:57:03 -05:00
matham d714cc7161 Use download manager to speed up gst download 2016-01-16 15:12:33 -05:00
dessant 05d8724c9a install mock for osx tests 2016-01-11 01:53:55 +02:00
Matthew Einhorn 3add52dcae Disable osx uploading. 2016-01-10 18:33:42 -05:00
Matthew Einhorn a51cc9b163 Merge branch 'gl-happy' into gl-happy2 2016-01-10 18:17:39 -05:00
matham 77c366a817 Enable tests again. 2016-01-09 19:46:03 -05:00
Matthew Einhorn 448a1a295d Add back USE_OPENGL_MOCK=1 after mystery removal. 2016-01-09 19:28:11 -05:00
matham bdc741a8ae Host gst osx for faster downloads. 2016-01-09 17:52:20 -05:00
matham 60e6e9f1f9 Fix incorrect sdl2 versions. 2016-01-09 16:56:58 -05:00
matham b9ac0652e9 Use sdl2. 2016-01-09 15:27:17 -05:00
dessant 7ce63d9328 Update .travis.yml 2016-01-09 03:08:35 +02:00
dessant de9296ae83 enable osx tests 2016-01-09 02:09:59 +02:00
dessant 52f1063268 update sdl deps for osx 2016-01-06 03:48:03 +02:00
dessant 95da711028 switch from sdl 2.0.4 rc to stable for the os x sdk 2016-01-03 01:32:12 +02:00
Akshay Arora e9388d8022 Enable compilation for travis 2016-01-01 03:20:05 +05:30
dessant 525dd13943 pyinstaller no longer required for doc builds 2015-12-31 14:57:33 +02:00
Akshay Arora c55ba1171c Update .travis.yml 2015-12-28 17:29:37 +05:30
Akshay Arora 1c8412c132 Update .travis.yml 2015-12-28 17:27:03 +05:30
dessant 100819bc94 pause py3 builds on osx 2015-12-28 13:17:58 +02:00
Akshay Arora e06353cfbc Update .travis.yml 2015-12-28 14:42:32 +05:30
Akshay Arora 7245d6cd5f Update .travis.yml 2015-12-28 14:27:36 +05:30
Akshay Arora cc4417ab6c Update .travis.yml 2015-12-28 14:15:01 +05:30
Akshay Arora 26e2b54d45 travis.yml Use 7zip to reduce size of release 2015-12-28 13:38:07 +05:30
dessant 64d5be4c83 Update .travis.yml 2015-12-28 01:03:46 +02:00
dessant 912d7669e1 Update .travis.yml 2015-12-28 00:51:00 +02:00
dessant b754c1edcb Update .travis.yml 2015-12-28 00:37:20 +02:00
dessant 2c7b6fd44a Update .travis.yml 2015-12-28 00:18:10 +02:00
Akshay Arora 23dde296b2 OSX SDK builds using travis 2015-12-28 03:13:09 +05:30
dessant 65551cb045 enable osx builds for travis, very credits to qua-non, cbenhagen+matham and my mother 2015-12-26 19:53:48 +02:00
dessant 9387bfec39 install pyinstaller for doc duilds 2015-12-18 03:30:58 +02:00
dessant f11a8281fb Update .travis.yml 2015-12-08 18:23:43 +02:00
dessant fedd092044 fix rsync error 2015-11-30 00:03:05 +02:00