source: tol/building/Linux/build.sh @ 4e0c941

1941-docker-image-to-testdevel
Last change on this file since 4e0c941 was e02d24a, checked in by Pedro Gea <pgea@…>, 11 years ago

Refs #1880
Scripts de compilación para Linux (independiente de plataforma).
La carpeta de compilación del cmake se traslada a una ubicación en el home para facilitar la compilación con máquinas virtuales de una misma fuente de código.

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@7089 be4846ae-f051-483a-831f-b64e7d08527f

  • Property mode set to 100644
File size: 2.1 KB
Line 
1#!/bin/bash
2#*********************************************************
3# La llamada al script recibe dos argumentos:
4#   ./build.sh [tol|toltcl|tolbase|rtol] [|release|debug]
5#*********************************************************
6# Durante el proceso se pregunta por cada una de las etapas.
7
8BUILD_DIR=$PWD/$(dirname $0)
9
10if [ "$1" = "" ]; then
11  echo -n "project? "
12  read project
13else
14  project=$1
15fi
16if !([ "$project" = "tol" ] || [ "$project" = "toltcl" ] || [ "$project" = "tolbase" ] || [ "$project" = "rtol" ]); then
17  echo "(!) First argument should be: tol, toltcl, tolbase or rtol."
18  echo -n "press enter to exit "
19  read answer
20  exit
21fi
22
23PROJECT_DIR=$BUILD_DIR/../../$project
24
25if [ "$2" = "" ]; then
26  mode=release
27else
28  mode=$2
29fi
30if !([ "$mode" = "release" ] || [ "$mode" = "debug" ]); then
31  echo "(!) Second argument should be: release, debug or should be avoided."
32  echo -n "press enter to exit "
33  read answer 
34  exit
35fi
36suffix=-$mode
37if [ "$mode" = "release" ]; then
38  suffix=
39fi
40
41CMAKE_DIR=~/CMake_Build/$project/$mode
42
43echo "----------------------------------------------------"
44echo " Building $project - $mode"
45echo "----------------------------------------------------"
46
47if [ -d "$CMAKE_DIR" ]; then
48  echo "/!\ There is already a built folder of $project."
49  echo -n "mkdir? (y/n) "
50  read answer
51  if [ "$answer" = "y" ]; then
52    rm -r "$CMAKE_DIR"
53    mkdir -p "$CMAKE_DIR"
54  fi
55else
56  mkdir -p "$CMAKE_DIR"
57fi
58
59cd $CMAKE_DIR
60
61echo -n "cmake? (y/n) "
62read answer
63if [ "$answer" = "y" ]; then
64  if [ "$project" = "tol" ]; then
65    cmake $PROJECT_DIR/. -DCMAKE_BUILD_TYPE=$mode -DCLAPACK_NAME=lapacke -DZIPARCHIVE_ROOT_DIR=/usr/local/ZipArchive$suffix -DZIPARCHIVE_AS_STATIC=TRUE -DCMAKE_INSTALL_PREFIX=/usr/local/tol3.2$suffix
66  else
67    cmake $PROJECT_DIR -DCMAKE_BUILD_TYPE=$mode -DTOL_PREFIX_PATH=/usr/local/tol3.2$suffix -DCMAKE_INSTALL_PREFIX=/usr/local/tol3.2$suffix
68  fi 
69fi
70
71echo -n "make? (y/n) "
72read answer
73if [ "$answer" = "y" ]; then
74  make
75fi
76
77echo -n "install? (y/n) "
78read answer
79if [ "$answer" = "y" ]; then
80  sudo make install
81fi
82
83echo -n "press enter to exit "
84read answer
Note: See TracBrowser for help on using the repository browser.