caramia 0.7.2.1 → 0.7.2.2
raw patch · 11 files changed
+115/−104 lines, 11 filesdep ~lineardep ~sdl2
Dependency ranges changed: linear, sdl2
Files
- caramia.cabal +17/−17
- changelog.md +7/−0
- demos/gl-info/Main.hs +10/−10
- demos/memory-info/Main.hs +8/−8
- demos/query-objects/Main.hs +7/−8
- demos/smoke-test/Main.hs +12/−14
- demos/textures/Main.hs +7/−8
- src/Graphics/Caramia/Internal/OpenGLVersion.hs +5/−3
- tests/buffer/Main.hs +14/−12
- tests/shader/Main.hs +14/−12
- tests/texture/Main.hs +14/−12
caramia.cabal view
@@ -1,5 +1,5 @@ name: caramia-version: 0.7.2.1+version: 0.7.2.2 synopsis: High-level OpenGL bindings homepage: https://github.com/Noeda/caramia/ license: MIT@@ -12,7 +12,7 @@ stability: experimental bug-reports: https://github.com/Noeda/caramia/issues/ cabal-version: >=1.10-extra-source-files: README.md+extra-source-files: README.md changelog.md description: This is a highish-level OpenGL bindings library for real-time graphics for@@ -134,7 +134,7 @@ ,containers >=0.5 && <1.0 ,exceptions >=0.6 && <1.0 ,lens >=4.6 && <5.0- ,linear >=1.15 && <2.0+ ,linear >=1.18 && <2.0 ,mtl >=2.1 && <3.0 ,semigroups >=0.15 && <1.0 ,text >=0.9 && <2.0@@ -160,8 +160,8 @@ build-depends: base, caramia ,containers >=0.5.5 && <1.0 ,HUnit >=1.2.5.2 && <2.0- ,linear >=1.15 && <2.0- ,sdl2 >= 2.0 && <3.0+ ,linear >=1.18 && <2.0+ ,sdl2 >=1.3 && <2.0 ,test-framework >=0.8.1 && <1.0 ,test-framework-hunit >=0.3.0.1 && <1.0 default-language: Haskell2010@@ -173,8 +173,8 @@ hs-source-dirs: tests/shader build-depends: base, caramia ,HUnit >=1.2.5.2 && <2.0- ,linear >=1.15 && <2.0- ,sdl2 >= 2.0 && <3.0+ ,linear >=1.18 && <2.0+ ,sdl2 >=1.3 && <2.0 ,test-framework >=0.8.1 && <1.0 ,test-framework-hunit >=0.3.0.1 && <1.0 default-language: Haskell2010@@ -187,8 +187,8 @@ build-depends: base, caramia ,containers >=0.5.5 && <1.0 ,HUnit >=1.2.5.2 && <2.0- ,linear >=1.15 && <2.0- ,sdl2 >= 2.0 && <3.0+ ,linear >=1.18 && <2.0+ ,sdl2 >=1.3 && <2.0 ,test-framework >=0.8.1 && <1.0 ,test-framework-hunit >=0.3.0.1 && <1.0 ,transformers >=0.3 && <1.0@@ -200,7 +200,7 @@ ghc-options: -Wall -fno-warn-name-shadowing -threaded -rtsopts -with-rtsopts=-N hs-source-dirs: tests/color build-depends: base, caramia- ,linear >=1.15 && <2.0+ ,linear >=1.18 && <2.0 ,test-framework >=0.8.1 && <1.0 ,test-framework-quickcheck2 >=0.3.0.3 && <1.0 default-language: Haskell2010@@ -213,8 +213,8 @@ hs-source-dirs: demos/smoke-test if flag(build-toys) build-depends: base, caramia- ,linear >=1.15 && <2.0- ,sdl2 ==1.2.*+ ,linear >=1.18 && <2.0+ ,sdl2 >=1.3 && <2.0 ,text >=0.9 && <2.0 else buildable: False@@ -227,7 +227,7 @@ hs-source-dirs: demos/memory-info if flag(build-toys) build-depends: base, caramia- ,sdl2 ==1.2.*+ ,sdl2 >=1.3 && <2.0 else buildable: False default-language: Haskell2010@@ -238,8 +238,8 @@ ghc-options: -Wall -fno-warn-name-shadowing -threaded -rtsopts -with-rtsopts=-N hs-source-dirs: demos/gl-info if flag(build-toys)- build-depends: base- ,sdl2 ==1.2.*+ build-depends: base, caramia+ ,sdl2 >=1.3 && <2.0 ,OpenGLRaw >=1.5 else buildable: False@@ -251,7 +251,7 @@ hs-source-dirs: demos/query-objects if flag(build-toys) build-depends: base, caramia- ,sdl2 ==1.2.*+ ,sdl2 >=1.3 && <2.0 ,text >=0.9 && <2.0 ,transformers >=0.3 && <1.0 ,vector >=0.10 && <1.0@@ -265,7 +265,7 @@ hs-source-dirs: demos/textures if flag(build-toys) build-depends: base, caramia- ,sdl2 ==1.2.*+ ,sdl2 >=1.3 && <2.0 else buildable: False default-language: Haskell2010
+ changelog.md view
@@ -0,0 +1,7 @@+0.7.2.1 -> 0.7.2.2+-------------------++ - 'linear' dependency bumped to >=1.18.++ - 'sdl2' dependency in tests downgraded to 1.3 from 2.0.+
demos/gl-info/Main.hs view
@@ -1,11 +1,11 @@+{-# LANGUAGE NoImplicitPrelude #-}+ module Main ( main ) where -import Prelude hiding (init ) import Graphics.UI.SDL import Graphics.Rendering.OpenGL.Raw import Data.Bits-import Control.Applicative-import Control.Monad+import Graphics.Caramia.Prelude hiding ( init ) import Foreign.C.String import Foreign.Storable import Foreign.Marshal.Alloc@@ -15,14 +15,14 @@ main = withCString "gl-test" $ \cstr -> do let errCheck s x = unless (x == 0) $ error s- errCheck "Can't initialize SDL" =<< init initFlagVideo- errCheck "Can't set major version" =<< glSetAttribute glAttrContextMajorVersion 3- errCheck "Can't set minor version" =<< glSetAttribute glAttrContextMinorVersion 3- errCheck "Can't set profile mask" =<< glSetAttribute glAttrContextProfileMask glProfileCore- window <- createWindow cstr windowPosUndefined windowPosUndefined+ errCheck "Can't initialize SDL" =<< init SDL_INIT_VIDEO+ errCheck "Can't set major version" =<< glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ errCheck "Can't set minor version" =<< glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ errCheck "Can't set profile mask" =<< glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ window <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED 500 500- (windowFlagOpenGL .|.- windowFlagShown)+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) c <- glCreateContext window _ <- glMakeCurrent window c (major1, minor1) <- alloca $ \major_ptr -> alloca $ \minor_ptr -> do
demos/memory-info/Main.hs view
@@ -10,15 +10,15 @@ main :: IO () main = withCString "smoke-test" $ \cstr -> do- void $ init initFlagVideo- _ <- glSetAttribute glAttrContextMajorVersion 3- _ <- glSetAttribute glAttrContextMinorVersion 3- _ <- glSetAttribute glAttrContextProfileMask glProfileCore- _ <- glSetAttribute glAttrContextFlags glContextFlagDebug- window <- createWindow cstr windowPosUndefined windowPosUndefined+ void $ init SDL_INIT_VIDEO+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ window <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED 500 500- (windowFlagOpenGL .|.- windowFlagShown)+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) _ <- glCreateContext window giveContext $ do putStrLn "Attempting to retrieve GPU memory information..."
demos/query-objects/Main.hs view
@@ -19,15 +19,14 @@ main :: IO () main = withCString "query-objects" $ \cstr -> do- void $ init initFlagVideo- _ <- glSetAttribute glAttrContextMajorVersion 3- _ <- glSetAttribute glAttrContextMinorVersion 3- _ <- glSetAttribute glAttrContextProfileMask glProfileCore- _ <- glSetAttribute glAttrContextFlags glContextFlagDebug- window <- createWindow cstr windowPosUndefined windowPosUndefined+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ window <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED 500 500- (windowFlagOpenGL .|.- windowFlagShown)+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) _ <- glCreateContext window giveContext $ do color_program <- newPipelineVF passThroughVertex2DShader
demos/smoke-test/Main.hs view
@@ -10,7 +10,6 @@ import Graphics.Caramia.Prelude hiding ( init ) import Graphics.Caramia import Graphics.UI.SDL-import qualified Graphics.UI.SDL as SDL import Linear.Matrix import System.Mem @@ -26,22 +25,21 @@ putStrLn "Press enter to start the smoke test." _ <- getLine putStrLn "Running the smoke test..."- bracket_ (SDL.init initFlagVideo)+ bracket_ (init SDL_INIT_VIDEO) quit program program :: IO () program = withCString "smoke-test" $ \cstr -> do- void $ init initFlagVideo- _ <- glSetAttribute glAttrContextMajorVersion 3- _ <- glSetAttribute glAttrContextMinorVersion 3- _ <- glSetAttribute glAttrContextProfileMask glProfileCore- _ <- glSetAttribute glAttrContextFlags glContextFlagDebug- window <- createWindow cstr windowPosUndefined windowPosUndefined+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ window <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED 500 500- (windowFlagOpenGL .|.- windowFlagShown)+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) _ <- glCreateContext window giveContext $ do -- Make some buffers.@@ -66,16 +64,16 @@ sh1 <- newShader fragmentShaderSrc Fragment pipeline <- newPipeline [sh1] mempty loc <- getUniformLocation "tutturuu" pipeline- setUniform (transpose eye4 :: M44 CFloat)+ setUniform (transpose identity :: M44 CFloat) loc pipeline- setUniform (eye4 :: M44 CDouble)+ setUniform (identity :: M44 CDouble) loc pipeline- setUniform (eye3 :: M33 Float)+ setUniform (identity :: M33 Float) loc pipeline- setUniform (transpose eye3 :: M33 Double)+ setUniform (transpose identity :: M33 Double) loc pipeline
demos/textures/Main.hs view
@@ -11,15 +11,14 @@ main :: IO () main = withCString "smoke-test" $ \cstr -> do- void $ init initFlagVideo- _ <- glSetAttribute glAttrContextMajorVersion 3- _ <- glSetAttribute glAttrContextMinorVersion 3- _ <- glSetAttribute glAttrContextProfileMask glProfileCore- _ <- glSetAttribute glAttrContextFlags glContextFlagDebug- window <- createWindow cstr windowPosUndefined windowPosUndefined+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ window <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED 500 500- (windowFlagOpenGL .|.- windowFlagShown)+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) _ <- glCreateContext window giveContext $ do putStrLn "Attempting to create all sorts of textures..."
src/Graphics/Caramia/Internal/OpenGLVersion.hs view
@@ -14,15 +14,17 @@ {-# LANGUAGE CPP #-} module Graphics.Caramia.Internal.OpenGLVersion- ( openGLVersion+ ( vendor+ , renderer+ , gles+ , openGLVersion , OpenGLVersion(..) , shadingLanguageVersion , shadingLanguageVersions ) where -+import Control.Applicative import Control.Monad-import Data.Functor import Data.List (isPrefixOf) import Data.Maybe import Data.Set as Set
tests/buffer/Main.hs view
@@ -4,6 +4,8 @@ module Main ( main ) where +import Foreign.C.String+import Data.Bits import Control.Concurrent import Control.Exception import qualified Data.Set as S@@ -12,9 +14,8 @@ import Foreign.Ptr import Foreign.Storable import Graphics.Caramia-import Graphics.Caramia.Prelude-import Linear.V2-import SDL+import Graphics.Caramia.Prelude hiding ( init )+import Graphics.UI.SDL import System.IO.Unsafe ( unsafePerformIO ) import Test.Framework import Test.Framework.Providers.HUnit@@ -28,15 +29,16 @@ {-# NOINLINE sdlLock #-} setup :: IO a -> IO a-setup action = runInBoundThread $ withMVar sdlLock $ \_ -> do- initialize [InitEverything]- let glconfig = defaultOpenGL {- glProfile = Core Normal 3 3- }- w <- createWindow "buffer" defaultWindow {- windowOpenGL = Just glconfig- , windowSize = V2 1500 1000- }+setup action = runInBoundThread $ withMVar sdlLock $ \_ -> withCString "buffer" $ \cstr -> do+ _ <- init SDL_INIT_VIDEO+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ w <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED+ 1500 1000+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) ctx <- glCreateContext w finally (giveContext action) $ do glDeleteContext ctx
tests/shader/Main.hs view
@@ -4,12 +4,13 @@ module Main ( main ) where +import Foreign.C.String+import Data.Bits import Control.Concurrent import Control.Exception-import Linear.V2 import Graphics.Caramia-import Graphics.Caramia.Prelude-import SDL+import Graphics.Caramia.Prelude hiding ( init )+import Graphics.UI.SDL import System.IO.Unsafe ( unsafePerformIO ) import Test.Framework import Test.Framework.Providers.HUnit@@ -19,15 +20,16 @@ {-# NOINLINE sdlLock #-} setup :: IO a -> IO a-setup action = runInBoundThread $ withMVar sdlLock $ \_ -> do- initialize [InitEverything]- let glconfig = defaultOpenGL {- glProfile = Core Normal 3 3- }- w <- createWindow "buffer" defaultWindow {- windowOpenGL = Just glconfig- , windowSize = V2 1500 1000- }+setup action = runInBoundThread $ withMVar sdlLock $ \_ -> withCString "shader" $ \cstr -> do+ _ <- init SDL_INIT_VIDEO+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ w <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED+ 1500 1000+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) ctx <- glCreateContext w finally (giveContext action) $ do glDeleteContext ctx
tests/texture/Main.hs view
@@ -4,15 +4,16 @@ module Main ( main ) where +import Foreign.C.String+import Data.Bits import Control.Concurrent import Control.Exception import Control.Monad.IO.Class ( liftIO ) import qualified Data.IntMap.Strict as IM-import Linear.V2 import Graphics.Caramia import Graphics.Caramia.Internal.OpenGLCApi-import Graphics.Caramia.Prelude-import SDL+import Graphics.Caramia.Prelude hiding ( init )+import Graphics.UI.SDL import System.IO.Unsafe ( unsafePerformIO ) import Test.Framework import Test.Framework.Providers.HUnit@@ -23,15 +24,16 @@ {-# NOINLINE sdlLock #-} setup :: IO a -> IO a-setup action = runInBoundThread $ withMVar sdlLock $ \_ -> do- initialize [InitEverything]- let glconfig = defaultOpenGL {- glProfile = Core Normal 3 3- }- w <- createWindow "texture" defaultWindow {- windowOpenGL = Just glconfig- , windowSize = V2 1500 1000- }+setup action = runInBoundThread $ withMVar sdlLock $ \_ -> withCString "texture" $ \cstr -> do+ _ <- init SDL_INIT_VIDEO+ _ <- glSetAttribute SDL_GL_CONTEXT_MAJOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_MINOR_VERSION 3+ _ <- glSetAttribute SDL_GL_CONTEXT_PROFILE_MASK SDL_GL_CONTEXT_PROFILE_CORE+ _ <- glSetAttribute SDL_GL_CONTEXT_FLAGS SDL_GL_CONTEXT_DEBUG_FLAG+ w <- createWindow cstr SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED+ 1500 1000+ (SDL_WINDOW_OPENGL .|.+ SDL_WINDOW_SHOWN) ctx <- glCreateContext w finally (giveContext action) $ do glDeleteContext ctx