diff --git a/COMPILING b/COMPILING index c84ca55..b4c7ad9 100644 --- a/COMPILING +++ b/COMPILING @@ -11,6 +11,9 @@ NOTE: ubuntu saucy currently only has libsdl2-dev.2.0.0 in the repositories, but make sure the compiled files are in your PATH (e.g. include $HOME/.cabal/bin in your $PATH) install dependencies & configure app +> cabal sandbox init +> cabal sandbox --add-source deps/hsSDL2 +> cabal sandbox --add-source deps/hsSDL2-ttf > cabal install --only-dependencies > cabal configure diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..5f73744 --- /dev/null +++ b/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash +cabal sandbox init + +cd deps +./getDeps.sh +cd .. + +cabal sandbox add-source deps/hsSDL2 +cabal sandbox add-source deps/hsSDL2-ttf +cabal install --only-dependencies +cabal configure +cabal build diff --git a/deps/getDeps.sh b/deps/getDeps.sh index 3097a54..bde7d1f 100755 --- a/deps/getDeps.sh +++ b/deps/getDeps.sh @@ -1,11 +1,12 @@ #!/bin/bash -#hack until saucy has 2.0.1 instead of 2.0.0 - if [ "$1" != "ni" ] then - sudo apt-get install dialog - dialog --yesno "Install libSDL2.0.1 from ubuntu trusty?\nCurrently needed for saucy as they only serve 2.0.0 in the repos\n\nThe script will try to download the trusty-packages and resolve dependencies via gdebi" 20 75 + if [ ! -f /usr/bin/dialog ] + then + sudo apt-get install dialog + fi + dialog --yesno "Install libSDL2 from ubuntu trusty repositories?\n\nSAUCY IS NOT SUPPORTED! You NEED Ubuntu 14.04+\n\nThe script will try to install the trusty-packages." 20 75 install=${?} else install=0 @@ -13,51 +14,10 @@ fi if [[ $install -eq 0 ]] then - sudo apt-get install gdebi - echo "installing libsdl2.0.1" - if [ ! -f "libsdl2-2.0-0_2.0.1+dfsg1-1ubuntu1_amd64.deb" ] - then - wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2/libsdl2-2.0-0_2.0.1+dfsg1-1ubuntu1_amd64.deb - sudo gdebi --n libsdl2-2.0-0_2.0.1+dfsg1-1ubuntu1_amd64.deb - fi - if [ ! -f "libsdl2-dev_2.0.1+dfsg1-1ubuntu1_amd64.deb" ] - then - wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2/libsdl2-dev_2.0.1+dfsg1-1ubuntu1_amd64.deb - sudo gdebi --n libsdl2-dev_2.0.1+dfsg1-1ubuntu1_amd64.deb - fi - if [ ! -f "libsdl2-dbg_2.0.1+dfsg1-1ubuntu1_amd64.deb" ] - then - wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2/libsdl2-dbg_2.0.1+dfsg1-1ubuntu1_amd64.deb - sudo gdebi --n libsdl2-dbg_2.0.1+dfsg1-1ubuntu1_amd64.deb - fi - if [ ! -f "libsdl2-ttf-2.0-0_2.0.12+dfsg1-2_amd64.deb" ] - then - wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2-ttf/libsdl2-ttf-2.0-0_2.0.12+dfsg1-2_amd64.deb - sudo gdebi --n libsdl2-ttf-2.0-0_2.0.12+dfsg1-2_amd64.deb - fi - if [ ! -f "libsdl2-ttf-dev_2.0.12+dfsg1-2_amd64.deb" ] - then - wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2-ttf/libsdl2-ttf-dev_2.0.12+dfsg1-2_amd64.deb - sudo gdebi --n libsdl2-ttf-dev_2.0.12+dfsg1-2_amd64.deb - fi -# this update would need tons of further package-updates... like killing libsdl1.2:i386 -# if [ ! -f "libtiff5_4.0.3-7_amd64.deb" ] -# then -# wget http://de.archive.ubuntu.com/ubuntu/pool/main/t/tiff/libtiff5_4.0.3-7_amd64.deb -# sudo gdebi --n libtiff5_4.0.3-7_amd64.deb -# fi -# if [ ! -f "libsdl2-image-2.0-0_2.0.0+dfsg-3_amd64.deb" ] -# then -# wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2-image/libsdl2-image-2.0-0_2.0.0+dfsg-3build2_amd64.deb -# sudo gdebi --n libsdl2-image-2.0-0_2.0.0+dfsg-3build2_amd64.deb -# fi -# if [ ! -f "libsdl2-image-dev_2.0.0+dfsg-3_amd64.deb" ] -# then -# wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libs/libsdl2-image/libsdl2-image-dev_2.0.0+dfsg-3build2_amd64.deb -# sudo gdebi --n libsdl2-image-dev_2.0.0+dfsg-3build2_amd64.deb -# fi + sudo apt-get install libsdl2-dev libsdl2-ttf-dev fi -## hack end + + echo "cloning repositories" if [ ! -d "hsSDL2" ] @@ -82,20 +42,24 @@ echo "trying to build" cabal install haddock -for d in `find . -maxdepth 1 -type d` +echo "building hsSDL2.." + +cd hsSDL2 +cabal sandbox delete +cabal sandbox init +cabal install --only-dependencies +cabal build +cd .. + +for t in "hsSDL2-ttf" do - if [ "$d" == "." ] - then - continue - else - echo "building: $d ..." - cd "$d" - cabal clean - cabal configure - cabal build - cabal haddock --hyperlink-source - cabal install --force-reinstalls - cd .. - fi + echo "building ${t}.." + cd "${t}" + cabal sandbox delete + cabal sandbox init + cabal sandbox add-source ../hsSDL2 + cabal install --only-dependencies + cabal build + cd .. done