OpenVG 0.6.0 → 0.7.0
raw patch · 12 files changed
+96/−49 lines, 12 filesdep −StateVardep −Tensordep ~GLUTdep ~OpenGLdep ~OpenGLRaw
Dependencies removed: StateVar, Tensor
Dependency ranges changed: GLUT, OpenGL, OpenGLRaw, OpenVGRaw
Files
- Changes +6/−0
- InstallWindows.txt +48/−18
- OpenVG.cabal +14/−10
- README.txt +7/−5
- demo/TestVgu.hs +1/−0
- src/Graphics/Rendering/OpenVG/VG/Blending.hs +4/−2
- src/Graphics/Rendering/OpenVG/VG/Extending.hs +4/−2
- src/Graphics/Rendering/OpenVG/VG/Images.hs +2/−2
- src/Graphics/Rendering/OpenVG/VG/Paint.hs +3/−3
- src/Graphics/Rendering/OpenVG/VG/Paths.hs +3/−3
- src/Graphics/Rendering/OpenVG/VG/RenderingQuality.hs +2/−2
- src/Graphics/Rendering/OpenVG/VG/Scissoring.hs +2/−2
Changes view
@@ -1,3 +1,9 @@+== OpenVG ==++version 0.7.0 (01 Jan 2014):+ * Updated to work with GHC 7.6 and Platform 2013.2.0.0.++ * Updated Windows install instructions. version 0.6.0 (17 Jan 2010): * Revised the RenderingQuality module to use an opaque matrix
InstallWindows.txt view
@@ -1,7 +1,11 @@-These instructions assume you have Haskell and OpenGL with the -split packages working and have MinGW/msys installed and are -comfortable with them.+These instructions assume you have Haskell and OpenGL / +OpenGLRaw packages working and have MinGW/MSYS installed and +are comfortable with them. +I don't use cabal-install - maybe Part 2 can be done with +cabal-install rather than invoking Setup.hs directly. You will +still need t install the C library first as per Part 1.+ ------------------------------------------------------------------ Part 1. The C library. @@ -18,7 +22,7 @@ > cd ShivaVG-0.2.1/src Compile with gcc directly - this is a hack but the makefile has-problems with MinGW/msys:+problems with MinGW/MSYS: > gcc -O2 -c *.c -I../include/VG @@ -30,21 +34,20 @@ That should create `openvg32.dll` and `libopenvg32.a`. -Put `libopenvg32.a` into your MinGW lib directory, on my system-it is here:+If you want you can put `libopenvg32.a` into your MinGW lib +directory, on my system it is here: C:\MinGW\lib -Also copy the `vg` folder that contains the header files from +... and copy the folder `vg` with the header files from `shivavg-0.2.0\include` to the MinGW include directory, on my system it is here: C:\MinGW\include -You should have folders for both the GL and OpenVG headers:+If you do copy both that would have been the same outcome as running +`make install`. -C:\MinGW\include\GL-C:\MinGW\include\vg You should now be able to build the Haskell binding to Shiva. @@ -54,20 +57,47 @@ I dropped the archive into my home directory C:\msys\1.0\home\stephen -> tar xvfz OpenVG-0.3.X.tar.gz+> tar xvfz OpenVGRaw-0.4.X.tar.gz -> cd OpenVG-0.3.X-> runhaskell Setup.lhs configure-> runhaskell Setup.lhs build-> runhaskell Setup.lhs install-> runhaskell Setup.lhs haddock+> cd OpenVGRaw-0.4.X +Run configure with extra options pointing to the vg header files +and the static library. Note you still have to supply these extra +options if you copied the headers and static library into the regular +MSYS locations (`lib` and `include`) - when you build with GHC the +GHC-specific version of GCC will be invoked (not the MinGW/MSYS +version). The GHC-specific GCC needs to know where the headers and+libs are.++On my system this is the configure command (note I haven't copied +the headers and lib into the respective standard MSYS locations).+Because strings represnting file paths are passed between programs+you need to use double-slash as a separator:++> runhaskell Setup.hs configure --extra-include-dirs=c:\\msys\\1.0\\home\\stephen\\ShivaVG-0.2.1\\include --extra-lib-dirs=c:\\msys\\1.0\\home\\stephen\\ShivaVG-0.2.1\\src+> runhaskell Setup.hs build+> runhaskell Setup.hs install+> runhaskell Setup.hs haddock++Do the same with the OpenVG code++> tar xvfz OpenVG-0.7.X.tar.gz++> cd OpenVG-0.7.X+> runhaskell Setup.hs configure+> runhaskell Setup.hs build+> runhaskell Setup.hs install+> runhaskell Setup.hs haddock++ Finally try the example: -Copy `openvg32.dll` into the examples directory. -> cd examples+> cd demo > runhaskell -lopenvg32 TestVgu.hs++Unfortunately building executables with `ghc --make` doesn't +seem to work.
OpenVG.cabal view
@@ -1,5 +1,5 @@ name: OpenVG-version: 0.6.0+version: 0.7.0 license: BSD3 license-file: LICENSE copyright: Stephen Tetley <stephen.tetley@gmail.com>@@ -8,18 +8,24 @@ category: Graphics synopsis: OpenVG (ShivaVG-0.2.1) binding description:+ . A Haskell binding for the OpenVG vector graphics API version 1.0.1, specifically the ShivaVG-0.2.1 implementation. .- This version (0.6.0) is NOT compatible with the Haskell Platform - (2009.2.0.2) - it uses the split OpenGL packages (RAW, StateVar, - etc.).+ This version (0.7.0) should be compatible with the Haskell + Platform (2013.2.0.0). . \*\* WARNING - large parts of the API (particular the Paths module) are untested and may be revised in future. \*\*. . Changelog .+ 0.6.0 to 0.7.0+ .+ * Updated to work with GHC 7.6 and Platform 2013.2.0.0.+ .+ * Updated Windows install instructions.+ . 0.5.0 to 0.6.0 . * Added an opaque matrix type to RenderingQuality. @@ -48,12 +54,10 @@ library hs-source-dirs: src build-depends: base < 5, - OpenGL >= 2.4 && < 2.5, - GLUT >= 2.2 && < 2.3,- OpenGLRaw >= 1.1.0.1 && < 2, - StateVar >= 1.0.0.0 && < 2,- Tensor >= 1.0.0.1 && < 2,- OpenVGRaw >= 0.2.0+ OpenGL >= 2.8, + GLUT >= 2.4,+ OpenGLRaw >= 1.3, + OpenVGRaw >= 0.4.0 exposed-modules: Graphics.Rendering.OpenVG,
README.txt view
@@ -26,15 +26,17 @@ the example TestVgu.hs. You will have to compile it first. Windows - running the test through GHCi kills the GHCi session-when you close the display window. Its better to run through +when you close the display window. It's better to run through runhaskell. Shiva-VG (the C Library) should install quite easily on MacOSX - -I installed it with the usual `configure`, `make` % `make install`.-I would imagine Linux is easy too. Windows isn't at all easy - but-there are instructions in the file `InstallWindows.txt`.+I installed it with the usual `configure`, `make` & +`make install`. I would imagine Linux is easy too. Windows isn't +all that easy - but there are instructions in the file +`InstallWindows.txt`. On all platforms you will need OpenGL and GLUT and the Haskell-bindings to OpenGL and GLUT installed and working.+bindings to OpenGL and GLUT installed and working, these are+part of the Platform.
demo/TestVgu.hs view
@@ -1,4 +1,5 @@ {-# OPTIONS -Wall #-} +{-# OPTIONS -fno-warn-unused-do-bind #-} -------------------------------------------------------------------------------- -- |
src/Graphics/Rendering/OpenVG/VG/Blending.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Blending--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -16,9 +16,11 @@ -------------------------------------------------------------------------------- module Graphics.Rendering.OpenVG.VG.Blending (+ -- * Setting the blend mode BlendMode(..), blendMode+ ) where import Graphics.Rendering.OpenVG.VG.Parameters@@ -26,7 +28,7 @@ import Graphics.Rendering.OpenVG.Raw.VG.Blending import Graphics.Rendering.OpenVG.Raw.VG.Core101 ( VGenum ) -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( SettableStateVar, makeSettableStateVar )
src/Graphics/Rendering/OpenVG/VG/Extending.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Extending--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -17,16 +17,18 @@ -------------------------------------------------------------------------------- module Graphics.Rendering.OpenVG.VG.Extending (+ -- * Accessing extensions dynamically StringID(..), stringId,+ ) where import Graphics.Rendering.OpenVG.Raw.VG.Core101 ( VGenum ) import Graphics.Rendering.OpenVG.Raw.VG.Extending -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( GettableStateVar, makeGettableStateVar ) import Foreign.C.String ( peekCString )
src/Graphics/Rendering/OpenVG/VG/Images.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Images--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -79,7 +79,7 @@ import Graphics.Rendering.OpenGL.GL.CoordTrans ( Position(..), Size (..) ) -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( GettableStateVar, makeGettableStateVar, SettableStateVar, makeSettableStateVar )
src/Graphics/Rendering/OpenVG/VG/Paint.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Paint--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -59,12 +59,12 @@ import Graphics.Rendering.OpenGL.GL.VertexSpec ( Color4(..) ) -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( StateVar(), makeStateVar, SettableStateVar, makeSettableStateVar, GettableStateVar, makeGettableStateVar ) -import Data.Tensor ( Vector4(..) )+import Graphics.Rendering.OpenGL.GL.Tensor ( Vector4(..) ) import Control.Monad ( liftM )
src/Graphics/Rendering/OpenVG/VG/Paths.hs view
@@ -4,7 +4,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Paths--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -101,10 +101,10 @@ bitwiseOr, unbits32, unmarshalBool, marshalBool ) import Graphics.Rendering.OpenVG.Raw.VG.Core101 ( - VGenum, VGint, VGfloat, VGPath )+ VGenum, VGint, VGfloat ) import Graphics.Rendering.OpenVG.Raw.VG.Paths -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( SettableStateVar, makeSettableStateVar, GettableStateVar, makeGettableStateVar, ( $= ) )
src/Graphics/Rendering/OpenVG/VG/RenderingQuality.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.RenderingQuality--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -53,7 +53,7 @@ import Graphics.Rendering.OpenVG.Raw.VG.Core101 ( VGenum, VGfloat ) import Graphics.Rendering.OpenVG.Raw.VG.RenderingQuality -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( StateVar(), makeStateVar, SettableStateVar, makeSettableStateVar ) import Control.Monad
src/Graphics/Rendering/OpenVG/VG/Scissoring.hs view
@@ -3,7 +3,7 @@ -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenVG.VG.Scissoring--- Copyright : (c) Stephen Tetley 2008-2010+-- Copyright : (c) Stephen Tetley 2008-2014 -- License : BSD3 -- -- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>@@ -45,7 +45,7 @@ import Graphics.Rendering.OpenGL.GL.CoordTrans ( Position(..), Size(..) ) import Graphics.Rendering.OpenGL.GL.VertexSpec ( Color4(..) ) -import Data.StateVar (+import Graphics.Rendering.OpenGL.GL.StateVar ( SettableStateVar, makeSettableStateVar, GettableStateVar, makeGettableStateVar )