Skip to content
Snippets Groups Projects
all-cmake-release.sh 849 B
Newer Older
  • Learn to ignore specific revisions
  • THREADS=${1:-5}
    DIRECTORY=$(pwd)
    
    cd CMake
    ./alib_cmake.py -w -m
    cd ..
    
    
    if [ ! -d release ] && [ ! -L release ]; then
    
      mkdir release
    fi
    
    if [ -L release ]; then
    
      LINK=$(readlink release)
      if [ ! -d ${LINK} ]; then
        mkdir ${LINK}
      fi
      cd ${LINK}
    
      cmake -DCMAKE_BUILD_TYPE=Release ${DIRECTORY}
      cd ${DIRECTORY}/release
    else
      cd release
      cmake -DCMAKE_BUILD_TYPE=Release ..
    fi
    
    CXX=clang++ make -j${THREADS} || exit 1
    
    
    for test in $(ls */test-alib2*); do \
    
      if [ -f ${test} ]; then ./${test} || exit 1; fi \
    
    if [ ! -d bin ]; then
      mkdir bin
    fi
    
    rm bin/*
    cd bin
    find .. -executable -type f | grep -v 'CMakeFiles' | while read line; do ln -s $line $(basename $line); done
    
    cp ${DIRECTORY}/translateAddresses .
    cp ${DIRECTORY}/xmlFormat .
    
    cd ${DIRECTORY}
    
    for test in $(ls tests.*.sh); do \
      ./${test} release/bin ${THREADS}; \
    done