packages feed

hogre 0.1.3 → 0.1.4

raw patch · 5 files changed

+105/−2 lines, 5 filesdep −haskell98dep ~cgensetup-changed

Dependencies removed: haskell98

Dependency ranges changed: cgen

Files

+ .gitignore view
@@ -0,0 +1,2 @@+dist+res/
+ Changelog view
@@ -0,0 +1,22 @@+0.1.4 - 2012-04-05+- Fix compilation with GHC >= 7.2.x+- Add cabal copy and register hooks++0.1.3 - 2011-06-25+- Fix compilation with cabal 1.10.x++0.1.2 - 2011-01-09+- Add cabal dependency to cgen++0.1.1 - 2011-01-09+- Fix compilation on Windows++0.1.0 - 2010-08-04+- Rewrite the bindings using cgen++0.0.2 - 2009-11-12+- Correct git URL+- Remove dependency to CEGUI++0.0.1 - 2009-11-11+- Initial release
+ README view
@@ -0,0 +1,67 @@+hogre++For API documentation, see http://anttisalonen.github.com/hogre++Introduction++hogre is a Haskell FFI binding to a subset of OGRE (www.ogre3d.org).++License++hogre is licensed under MIT. OGRE is licensed under LGPL for versions before+1.7.0 and under MIT for 1.7.0 and later. See the OGRE website for more +information.++Installation++1. Install OGRE C++ libraries on your system. Consult your OS on +how to do this. For Debian and Debian-like Linuxes, something like +"sudo aptitude install libogre-dev" should do.++2. Install cgen, a program for generating C++ bindings for Haskell, which is+needed by hogre. You can download the cgen source at github +(http://github.com/anttisalonen/cgen) or install it from Hackage using cabal.++3. As hogre generates a C interface to OGRE and compiles it, you need a C+++compiler - on Debian and Debian-like distributions, +"sudo aptitude install build-essential" should do.++4. [Linux/Unix] cabal configure [--user] && cabal build && cabal install.+pkg-config is used for determining the correct include and library paths.++Note 1: At least using cabal version 1.8.0.2 the build step is actually +unnecessary - hogre will be built during install phase.+Note 2: building hogre may take quite a while because of compiling C++.+During this cabal will print no output. To see the build progress, use +"cabal install -v2".++4. [Windows] cabal configure [--user] && cabal install+[--extra-include-dirs=c:\path\to\include\OGRE]+[--extra-lib-dirs=c:\path\to\OGRE\lib\release].+The extra include and library directories must be supplied in case+the OGRE headers and libraries are not in the standard include and library+search path. Also, the Boost C++ headers must be found in the include path.+The OGRE include path must be the first include path supplied.++5. OGRE does only graphics; for input, audio, networking etc. you need+separate libraries. You're free to choose which (if any).++6. You may want to check out the hogre-examples package for some examples+at http://github.com/anttisalonen/hogre-examples.++Known issues and bugs++Currently there is no exception handling, which means incorrect use (e.g.+not calling init or trying to access a non-existing entity will lead to an+error report and crash. As long as nothing illegal is done, everything's fine.+I'm planning on adding exception handling.++I'm not quite sure how portable it is; it should work on any platform OGRE+runs on (Linux, Mac OS X, Windows), and should work on any Haskell compiler +that does FFI and knows how to invoke a C++ compiler. So far only GHC has +been tested. It shouldn't matter which C++ compiler is being used.++Contact++Email: ajsalonen at gmail dot com+
Setup.hs view
@@ -21,6 +21,8 @@   {     buildHook   = ogreBuildHook   , instHook    = ogreInstHook+  , copyHook    = ogreCopyHook+  , regHook     = ogreRegHook   , cleanHook   = ogreCleanHook   , haddockHook = ogreHaddockHook   , hookedPrograms = [simpleProgram "cgen",@@ -159,6 +161,16 @@ ogreInstHook pd lb uh ifl = do   lib <- mkLibrary lb   (instHook simpleUserHooks) pd{library = Just lib} lb uh ifl++ogreCopyHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> CopyFlags -> IO ()+ogreCopyHook pd lb uh cfl = do+  lib <- mkLibrary lb+  (copyHook simpleUserHooks) pd{library = Just lib} lb uh cfl++ogreRegHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> RegisterFlags -> IO ()+ogreRegHook pd lb uh rfl = do+  lib <- mkLibrary lb+  (regHook simpleUserHooks) pd{library = Just lib} lb uh rfl  ogreCleanHook pd n uh cf = do     exists <- doesDirectoryExist resRoot
hogre.cabal view
@@ -1,5 +1,5 @@ Name:               hogre-Version:            0.1.3+Version:            0.1.4 Cabal-Version:      >= 1.6 License:            MIT License-File:       LICENSE@@ -27,7 +27,7 @@   location:  git://github.com/anttisalonen/hogre.git  Library-  Build-Depends:     base >= 3 && < 5, haskell98, cgen+  Build-Depends:     base >= 3 && < 5, cgen >= 0.0.4   Ghc-options:       -Wall   cc-options:        -Wall   if !os(windows)