diff options
| author | Don Bright <hugh.m.bright@gmail.com> | 2012-07-11 03:52:05 (GMT) | 
|---|---|---|
| committer | Don Bright <hugh.m.bright@gmail.com> | 2012-07-11 03:52:05 (GMT) | 
| commit | b2c12d23a95ca95cb74b2399625b3f949c98f657 (patch) | |
| tree | 6c038ce72608676ef26e1722dbfee95e2aa0eb29 /scripts | |
| parent | 38a4585d1a9abe9c779c5d0677bfc81c407db371 (diff) | |
features: build CGAL/OpenCSG alone. customize BASEDIR more easily
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/linux-build-dependencies.sh | 56 | ||||
| -rw-r--r-- | scripts/setenv-linbuild.sh | 15 | 
2 files changed, 49 insertions, 22 deletions
| diff --git a/scripts/linux-build-dependencies.sh b/scripts/linux-build-dependencies.sh index aef58b9..0faf67a 100755 --- a/scripts/linux-build-dependencies.sh +++ b/scripts/linux-build-dependencies.sh @@ -9,15 +9,8 @@  # Prerequisites:  # - wget or curl  # - Qt4 -# - cmake 2.8 ( force build_cmake at bottom if yours is too old )  # -BASEDIR=$HOME/openscad_deps -OPENSCADDIR=$PWD -SRCDIR=$BASEDIR/src -DEPLOYDIR=$BASEDIR -NUMCPU=2 # paralell builds for some libraries -  printUsage()  {    echo "Usage: $0" @@ -128,7 +121,11 @@ build_cgal()    fi    tar xzf CGAL-$version.tar.gz    cd CGAL-$version -  cmake -DCMAKE_INSTALL_PREFIX=$DEPLOYDIR -DGMP_INCLUDE_DIR=$DEPLOYDIR/include -DGMP_LIBRARIES=$DEPLOYDIR/lib/libgmp.so -DGMPXX_LIBRARIES=$DEPLOYDIR/lib/libgmpxx.so -DGMPXX_INCLUDE_DIR=$DEPLOYDIR/include -DMPFR_INCLUDE_DIR=$DEPLOYDIR/include -DMPFR_LIBRARIES=$DEPLOYDIR/lib/libmpfr.so -DWITH_CGAL_Qt3=OFF -DWITH_CGAL_Qt4=OFF -DWITH_CGAL_ImageIO=OFF -DBOOST_ROOT=$DEPLOYDIR -DCMAKE_BUILD_TYPE=Debug +  if [ $2 = use-sys-libs ]; then  +    cmake -DCMAKE_INSTALL_PREFIX=$DEPLOYDIR -DWITH_CGAL_Qt3=OFF -DWITH_CGAL_Qt4=OFF -DWITH_CGAL_ImageIO=OFF -DCMAKE_BUILD_TYPE=Debug +  else +    cmake -DCMAKE_INSTALL_PREFIX=$DEPLOYDIR -DGMP_INCLUDE_DIR=$DEPLOYDIR/include -DGMP_LIBRARIES=$DEPLOYDIR/lib/libgmp.so -DGMPXX_LIBRARIES=$DEPLOYDIR/lib/libgmpxx.so -DGMPXX_INCLUDE_DIR=$DEPLOYDIR/include -DMPFR_INCLUDE_DIR=$DEPLOYDIR/include -DMPFR_LIBRARIES=$DEPLOYDIR/lib/libmpfr.so -DWITH_CGAL_Qt3=OFF -DWITH_CGAL_Qt4=OFF -DWITH_CGAL_ImageIO=OFF -DBOOST_ROOT=$DEPLOYDIR -DCMAKE_BUILD_TYPE=Debug +  fi    make -j$NUMCPU    make install  } @@ -169,7 +166,11 @@ build_opencsg()    # uncomment this kludge for Fedora 64bit    # sed -i s/"\-lXmu"/"\-L\/usr\/lib64\/libXmu.so.6"/ src/Makefile  -  qmake-qt4 +  if [ "`command -v qmake-qt4`" ]; then +    qmake-qt4 +  else +    qmake +  fi    make    install -v lib/* $DEPLOYDIR/lib    install -v include/* $DEPLOYDIR/include @@ -196,11 +197,21 @@ build_eigen()    make install  } + + +OPENSCADDIR=$PWD  if [ ! -f $OPENSCADDIR/openscad.pro ]; then    echo "Must be run from the OpenSCAD source root directory"    exit 0  fi +source ./scripts/setenv-linbuild.sh +SRCDIR=$BASEDIR/src +DEPLOYDIR=$BASEDIR +if [ ! $NUMCPU ]; then +  NUMCPU=1 # paralell builds for some libraries +fi +  if [ ! -d $BASEDIR/bin ]; then    mkdir --parents $BASEDIR/bin  fi @@ -211,13 +222,6 @@ echo "Using srcdir:" $SRCDIR  echo "Number of CPUs for parallel builds:" $NUMCPU  mkdir -p $SRCDIR $DEPLOYDIR -export PATH=$BASEDIR/bin:$PATH -export LD_LIBRARY_PATH=$DEPLOYDIR/lib:$DEPLOYDIR/lib64:$LD_LIBRARY_PATH -export LD_RUN_PATH=$DEPLOYDIR/lib:$DEPLOYDIR/lib64:$LD_RUN_PATH -echo "PATH modified temporarily" -echo "LD_LIBRARY_PATH modified temporarily" -echo "LD_RUN_PATH modified temporarily" -  if [ ! "`command -v curl`" ]; then  	build_curl 7.26.0  fi @@ -227,6 +231,24 @@ if [ ! "`command -v cmake`" ]; then  	build_cmake 2.8.8  fi +# Singly build CGAL or OpenCSG +# (Most systems have all libraries available as packages except CGAL/OpenCSG) +# (They can be built singly here by passing a command line arg to the script) +if [ $1 = "cgal-use-sys-libs" ]; then +  build_cgal 4.0 use-sys-libs +  exit +fi +if [ $1 = "opencsg" ]; then +  build_opencsg 1.3.2 +  exit +fi + + +# +# Main build of libraries +# edit version numbers here as needed. +# +  build_eigen 2.0.17  build_gmp 5.0.5  build_mpfr 3.1.1 @@ -236,4 +258,4 @@ build_cgal 4.0  build_glew 1.7.0  build_opencsg 1.3.2 -echo "OpenSCAD dependencies built in " $BASEDIR +echo "OpenSCAD dependencies built and installed to " $BASEDIR diff --git a/scripts/setenv-linbuild.sh b/scripts/setenv-linbuild.sh index 9719533..e77d969 100644 --- a/scripts/setenv-linbuild.sh +++ b/scripts/setenv-linbuild.sh @@ -1,10 +1,15 @@ -# setup env variables for building OpenSCAD against custom built -# dependency libraries from linux-build-dependencies.sh +# setup environment variables for building OpenSCAD against custom built +# dependency libraries. called by linux-build-dependencies.sh -# run this file with 'source setenv-linbuild.sh' +# run this file with 'source setenv-linbuild.sh' every time you re-login +# and want to build or run openscad against custom libraries installed +# into BASEDIR.   -# BASEDIR and DEPLOYDIR must be the same as in linux-build-dependencies.sh -BASEDIR=$HOME/openscad_deps +# copy this file to your .bashrc if desired.  + +if [ ! $BASEDIR ]; then +  BASEDIR=$HOME/openscad_deps +fi  DEPLOYDIR=$BASEDIR  export PATH=$BASEDIR/bin:$PATH | 
