packages feed

OpenGLRaw 2.1.0.0 → 2.2.0.0

raw patch · 12 files changed

+63/−29 lines, 12 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Graphics.Rendering.OpenGL.Raw.Compatibility43: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Compatibility43: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Compatibility44: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Compatibility44: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Compatibility45: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Compatibility45: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Core43: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Core43: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Core44: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Core44: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Core45: makeGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
+ Graphics.Rendering.OpenGL.Raw.Core45: type GLDEBUGPROCFunc = GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> Ptr () -> IO ()
+ Graphics.Rendering.OpenGL.Raw.Types: CChar :: Int8 -> CChar
+ Graphics.Rendering.OpenGL.Raw.Types: CDouble :: Double -> CDouble
+ Graphics.Rendering.OpenGL.Raw.Types: CFloat :: Float -> CFloat
+ Graphics.Rendering.OpenGL.Raw.Types: CInt :: Int32 -> CInt
+ Graphics.Rendering.OpenGL.Raw.Types: CPtrdiff :: Int64 -> CPtrdiff
+ Graphics.Rendering.OpenGL.Raw.Types: CSChar :: Int8 -> CSChar
+ Graphics.Rendering.OpenGL.Raw.Types: CShort :: Int16 -> CShort
+ Graphics.Rendering.OpenGL.Raw.Types: CUChar :: Word8 -> CUChar
+ Graphics.Rendering.OpenGL.Raw.Types: CUInt :: Word32 -> CUInt
+ Graphics.Rendering.OpenGL.Raw.Types: CUShort :: Word16 -> CUShort
+ Graphics.Rendering.OpenGL.Raw.Types: data FunPtr a :: * -> *
+ Graphics.Rendering.OpenGL.Raw.Types: data Int64 :: *
+ Graphics.Rendering.OpenGL.Raw.Types: data Ptr a :: * -> *
+ Graphics.Rendering.OpenGL.Raw.Types: data Word64 :: *
+ Graphics.Rendering.OpenGL.Raw.Types: makeGLDEBUGPROCARB :: GLDEBUGPROCARBFunc -> IO (FunPtr GLDEBUGPROCARBFunc)
+ Graphics.Rendering.OpenGL.Raw.Types: makeGLDEBUGPROCKHR :: GLDEBUGPROCKHRFunc -> IO (FunPtr GLDEBUGPROCKHRFunc)
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CChar :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CDouble :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CFloat :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CInt :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CPtrdiff :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CSChar :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CShort :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CUChar :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CUInt :: *
+ Graphics.Rendering.OpenGL.Raw.Types: newtype CUShort :: *
+ Graphics.Rendering.OpenGL.Raw.Types: type GLDEBUGPROCARBFunc = GLDEBUGPROCFunc
+ Graphics.Rendering.OpenGL.Raw.Types: type GLDEBUGPROCKHRFunc = GLDEBUGPROCFunc

Files

OpenGLRaw.cabal view
@@ -1,8 +1,8 @@ name: OpenGLRaw-version: 2.1.0.0+version: 2.2.0.0 synopsis: A raw binding for the OpenGL graphics system description:-  OpenGLRaw is a raw Haskell binding for the OpenGL 3.2 graphics system and+  OpenGLRaw is a raw Haskell binding for the OpenGL 4.5 graphics system and   lots of OpenGL extensions. It is basically a 1:1 mapping of OpenGL's C API,   intended as a basis for a nicer interface. OpenGLRaw offers access to all   necessary functions, tokens and types plus a general facility for loading@@ -97,7 +97,6 @@     Graphics.Rendering.OpenGL.Raw.ARB.ClearTexture     Graphics.Rendering.OpenGL.Raw.ARB.ClipControl     Graphics.Rendering.OpenGL.Raw.ARB.ColorBufferFloat-    Graphics.Rendering.OpenGL.Raw.ARB.Compatibility     Graphics.Rendering.OpenGL.Raw.ARB.CompressedTexturePixelStorage     Graphics.Rendering.OpenGL.Raw.ARB.ComputeShader     Graphics.Rendering.OpenGL.Raw.ARB.ComputeVariableGroupSize@@ -577,7 +576,7 @@   include-dirs: include   build-depends: base >= 3 && < 5   default-language: Haskell2010-  ghc-options: -Wall -O2+  ghc-options: -Wall   other-extensions: CPP   if os(windows) && flag(UseNativeWindowsLibraries)     if arch(i386)
RegistryProcessor/src/Main.hs view
@@ -62,7 +62,6 @@     SI.hPutStrLn h . separate unCommandName . M.keys . commands $registry     SI.hPutStrLn h ") where"     SI.hPutStrLn h ""-    SI.hPutStrLn h "import Foreign.C.Types"     SI.hPutStrLn h "import Foreign.Marshal.Error ( throwIf )"     SI.hPutStrLn h "import Foreign.Ptr ( Ptr, FunPtr, nullFunPtr )"     SI.hPutStrLn h "import System.IO.Unsafe ( unsafePerformIO )"@@ -168,7 +167,9 @@   (extensionName e,    [ conditionalModificationModification cm    | cm <- extensionsRequireRemove e-   , api `matches` conditionalModificationAPI cm ])+   , api `matches` conditionalModificationAPI cm+   -- ARB_compatibility has an empty "require" element only+   , not . null . modificationInterfaceElements . conditionalModificationModification $ cm ])  supports :: API -> Maybe [API] -> Bool _ `supports` Nothing = True@@ -241,7 +242,20 @@   | otherwise = (ts', es, cs)   where (ts, es, cs) = replay api version profile registry         (_, es11, _) = replay api (read "1.1") profile registry-        ts' = S.toList . S.unions  $ S.fromList ts : map referencedTypes cs+        ts' = S.toList . addFuncsAndMakes . S.unions  $ S.fromList ts : map referencedTypes cs++-- For debug callbacks, we want to export the Haskell types and their creators, too.+addFuncsAndMakes :: S.Set TypeName -> S.Set TypeName+addFuncsAndMakes =+   flip (foldr addFuncAndMake) [+     "GLDEBUGPROC",+     "GLDEBUGPROCAMD",+     "GLDEBUGPROCARB",+     "GLDEBUGPROCKHR" ]+   where addFuncAndMake t ts+           | TypeName t `S.member` ts =+               ts `S.union` S.fromList (map TypeName [ t ++ "Func", "make" ++ t ])+           | otherwise = ts  -- Here is the heart of the feature construction logic: Chronologically replay -- the whole version history for the given API/version/profile triple.
src/Graphics/Rendering/OpenGL/Raw/ARB.hs view
@@ -22,7 +22,6 @@   module Graphics.Rendering.OpenGL.Raw.ARB.CLEvent,   module Graphics.Rendering.OpenGL.Raw.ARB.ClipControl,   module Graphics.Rendering.OpenGL.Raw.ARB.ColorBufferFloat,-  module Graphics.Rendering.OpenGL.Raw.ARB.Compatibility,   module Graphics.Rendering.OpenGL.Raw.ARB.CompressedTexturePixelStorage,   module Graphics.Rendering.OpenGL.Raw.ARB.ComputeShader,   module Graphics.Rendering.OpenGL.Raw.ARB.ComputeVariableGroupSize,@@ -158,7 +157,6 @@ import Graphics.Rendering.OpenGL.Raw.ARB.CLEvent import Graphics.Rendering.OpenGL.Raw.ARB.ClipControl import Graphics.Rendering.OpenGL.Raw.ARB.ColorBufferFloat-import Graphics.Rendering.OpenGL.Raw.ARB.Compatibility import Graphics.Rendering.OpenGL.Raw.ARB.CompressedTexturePixelStorage import Graphics.Rendering.OpenGL.Raw.ARB.ComputeShader import Graphics.Rendering.OpenGL.Raw.ARB.ComputeVariableGroupSize
− src/Graphics/Rendering/OpenGL/Raw/ARB/Compatibility.hs
@@ -1,17 +0,0 @@------------------------------------------------------------------------------------ |--- Module      :  Graphics.Rendering.OpenGL.Raw.ARB.Compatibility--- Copyright   :  (c) Sven Panne 2015--- License     :  BSD3------ Maintainer  :  Sven Panne <svenpanne@gmail.com>--- Stability   :  stable--- Portability :  portable------ The <https://www.opengl.org/registry/specs/ARB/compatibility.txt ARB_compatibility> extension.--------------------------------------------------------------------------------------module Graphics.Rendering.OpenGL.Raw.ARB.Compatibility (-) where-
src/Graphics/Rendering/OpenGL/Raw/Compatibility43.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Compatibility43 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_2D,   gl_2_BYTES,
src/Graphics/Rendering/OpenGL/Raw/Compatibility44.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Compatibility44 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_2D,   gl_2_BYTES,
src/Graphics/Rendering/OpenGL/Raw/Compatibility45.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Compatibility45 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_2D,   gl_2_BYTES,
src/Graphics/Rendering/OpenGL/Raw/Core43.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Core43 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_ACTIVE_ATOMIC_COUNTER_BUFFERS,   gl_ACTIVE_ATTRIBUTES,
src/Graphics/Rendering/OpenGL/Raw/Core44.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Core44 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_ACTIVE_ATOMIC_COUNTER_BUFFERS,   gl_ACTIVE_ATTRIBUTES,
src/Graphics/Rendering/OpenGL/Raw/Core45.hs view
@@ -13,6 +13,7 @@ module Graphics.Rendering.OpenGL.Raw.Core45 (   -- * Types   GLDEBUGPROC,+  GLDEBUGPROCFunc,   GLbitfield,   GLboolean,   GLbyte,@@ -35,6 +36,7 @@   GLuint64,   GLushort,   GLvoid,+  makeGLDEBUGPROC,   -- * Enums   gl_ACTIVE_ATOMIC_COUNTER_BUFFERS,   gl_ACTIVE_ATTRIBUTES,
src/Graphics/Rendering/OpenGL/Raw/Functions.hs view

file too large to diff

src/Graphics/Rendering/OpenGL/Raw/Types.hs view
@@ -49,14 +49,32 @@   GLhalfARB,   GLhalfNV,   GLDEBUGPROCAMD, GLDEBUGPROCAMDFunc, makeGLDEBUGPROCAMD,-  GLDEBUGPROCARB,-  GLDEBUGPROCKHR,+  GLDEBUGPROCARB, GLDEBUGPROCARBFunc, makeGLDEBUGPROCARB,+  GLDEBUGPROCKHR, GLDEBUGPROCKHRFunc, makeGLDEBUGPROCKHR,    -- * Types from various extensions.   GLclampx,   GLhandleARB,   GLvdpauSurfaceNV,-  GLeglImageOES+  GLeglImageOES,++  -- * Re-exports+  CChar(..),+  CDouble(..),+  CFloat(..),+  CInt(..),+  CPtrdiff(..),+  CSChar(..),+  CShort(..),+  CUChar(..),+  CUInt(..),+  CUShort(..),++  Int64(..),+  Word64(..),++  FunPtr(..),+  Ptr(..) ) where  import Data.Int@@ -190,7 +208,17 @@  type GLDEBUGPROCARB = GLDEBUGPROC +type GLDEBUGPROCARBFunc = GLDEBUGPROCFunc++makeGLDEBUGPROCARB :: GLDEBUGPROCARBFunc -> IO (FunPtr GLDEBUGPROCARBFunc)+makeGLDEBUGPROCARB = makeGLDEBUGPROC+ type GLDEBUGPROCKHR = GLDEBUGPROC++type GLDEBUGPROCKHRFunc = GLDEBUGPROCFunc++makeGLDEBUGPROCKHR :: GLDEBUGPROCKHRFunc -> IO (FunPtr GLDEBUGPROCKHRFunc)+makeGLDEBUGPROCKHR = makeGLDEBUGPROC  type GLclampx = CInt -- NOTE: OpenGL ES uses khronos_int32_t for this.