llvm/flang
2018-02-09 10:09:20 +01:00
..
cmake/modules [flang] Add new global CMakefile infrastructure with examples 2018-02-09 10:09:20 +01:00
documentation [flang] Impose a directory structure. Move files around. Introduce 2018-02-07 12:04:42 -08:00
include [flang] after clang-format 2018-02-09 10:09:20 +01:00
lib [flang] after clang-format 2018-02-09 10:09:20 +01:00
tools [flang] after clang-format 2018-02-09 10:09:20 +01:00
utils/TableGen [flang] after clang-format 2018-02-09 10:09:20 +01:00
.clang-format [flang] Tweaked .clang-format, then ran it. 2018-02-07 12:27:36 -08:00
.gitignore [flang] after clang-format 2018-02-09 10:09:20 +01:00
CMakeLists.txt [flang] after clang-format 2018-02-09 10:09:20 +01:00
Makefile [flang] Clean up Makefile, add reformat target. 2018-02-07 16:27:36 -08:00
README.md [flang] updated build instructions in README.md 2018-02-09 10:09:20 +01:00

f18

Selection of the C/C++ compiler

export CXX=.../the/path/to/g++ export CC=.../the/path/to/gcc

Installation of LLVM 5.0

############ Extract LLVM, CLANG and other from git in current directory. 
############         
############ Question: 
############    Do we need the Clang sources for F18? 
############    Probably not but its nice to have the Clang source as 
############    example during development. 
############    Also, we need cland-format.
############
############        

ROOT=$(pwd)
REL=release_50

git clone https://git.llvm.org/git/llvm.git/
cd llvm/
git checkout $REL

cd $ROOT/llvm/tools
git clone https://git.llvm.org/git/clang.git/
git checkout $REL

cd $ROOT/llvm/projects
git clone https://git.llvm.org/git/openmp.git/ 
cd openmp
git checkout $REL

cd $ROOT/llvm/projects
git clone https://git.llvm.org/git/libcxx.git/
cd libcxx
git checkout $REL

cd $ROOT/llvm/projects
git clone https://git.llvm.org/git/libcxxabi.git/
cd libcxxabi
git checkout $REL

# List the version of all git sub-directories 
# They should all match $REL
for dir in $(find "$ROOT" -name .git) ; do 
  cd $dir/.. ; 
  printf " %-15s %s\n" "$(git rev-parse --abbrev-ref HEAD)" "$(pwd)" ; 
done


###########  Build LLVM & CLANG in $PREFIX 
    
PREFIX=$ROOT/usr
mkdir $PREFIX

mkdir $ROOT/llvm/build
cd  $ROOT/llvm/build 
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX ..
make -j 4
make install

Installation of Flang

######### Add $PREFIX/bin to PATH to find llvm-config executable

export "PATH=$PREFIX/bin:$PATH"

######## Get Flang sources 
git clone https://github.com/ThePortlandGroup/f18.git

######## Create a build directory for f18 
mkdir $ROOT/f18-build
cd $ROOT/f18-build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX ../f18 
make -j 4