Skip to content
Snippets Groups Projects
Select Git revision
  • 1692b804a650b69af40c9382635d26e233964436
  • master default protected
  • release/202005
  • release/202001
  • release/201912
  • release/201911
  • release/releaseWindowsTestOne
  • release/releaseTest
  • release/releaseWindowsTest
  • release/windowsReleaseTest
  • release/201910
  • release/qt/201910
  • release/windows-test/201910
  • release/201908
  • release/201906
  • release/201905
  • release/201904
  • release/201903
  • release/201902
  • release/201901
  • release/201812
  • 1.0.0
  • 0.3.0
  • 0.2.1
  • 0.2.0
  • 0.1.0
26 results

conversationmodel.cpp

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    bootstrap 2.86 KiB
    #!/bin/sh
    # Copyright © 2011 Rafaël Carré
    #
    # This program is free software; you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
    
    export LC_ALL=
    NEEDED=
    
    if [ ! -f tools.mak ]
    then
    	echo "You must run me in ./extras/tools !"
    	exit 1
    fi
    
    check_tar() {
    if ! tar PcJ /dev/null >/dev/null 2>&1
    then
        echo "tar doesn't support xz (J option)"
        NEEDED="$NEEDED .tar .xz"
    fi
    }
    
    check_sed() {
    tmp="`pwd`/check_sed"
    trap "rm $tmp{,-e} 2>/dev/null" EXIT
    echo "test file for GNU sed" > $tmp
    if ! sed -i -e 's/sed//' $tmp >/dev/null 2>&1
    then
        echo "sed doesn't do in-place editing (-i option)"
        NEEDED="$NEEDED .sed"
    fi
    }
    
    check() {
    if ! $1 --version >/dev/null 2>&1
    then
        echo "$1 not found"
        NEEDED="$NEEDED .$1"
    else
        # found, need to check version ?
        [ -z "$2" ] && return # no
        gotver=`$1 --version | head -1 | sed s/'.* '//`
        gotmajor=`echo $gotver|cut -d. -f1`
        gotminor=`echo $gotver|cut -d. -f2`
        gotmicro=`echo $gotver|cut -d. -f3`
        [ -z "$gotmicro" ] && gotmicro=0
        needmajor=`echo $2|cut -d. -f1`
        needminor=`echo $2|cut -d. -f2`
        needmicro=`echo $2|cut -d. -f3`
        [ -z "$needmicro" ] && needmicro=0
        if [ "$needmajor" -gt "$gotmajor" \
             -o "$needmajor" -eq "$gotmajor" -a "$needminor" -gt "$gotminor" \
             -o "$needmajor" -eq "$gotmajor" -a "$needminor" -eq "$gotminor" -a "$needmicro" -gt "$gotmicro" ]
        then
            echo "$1 too old"
            NEEDED="$NEEDED .$1"
        fi
    fi
    }
    
    check autoconf 2.69
    check automake 1.15
    check m4 1.4.17
    check libtool 2.4.6
    check pkg-config
    check cmake 3.2.2
    check yasm
    check_tar
    check_sed
    check gettext
    
    [ -n "$NEEDED" ] && mkdir -p build/ && echo "To-be-built packages: `echo $NEEDED | sed 's/\.//g'`"
    
    CPUS=
    CC=
    CXX=
    case `uname` in
        Linux)
            CPUS=`grep -c ^processor /proc/cpuinfo`
         ;;
        Darwin)
            CPUS=`sysctl hw.ncpu|cut -d: -f2`
            gcc-4.2 --version >/dev/null 2>&1 && CC=CC=gcc-4.2
            g++-4.2 --version >/dev/null 2>&1 && CXX=CXX=g++-4.2
        ;;
        SunOS)
            CPUS=`/usr/bin/kstat -p :::state | grep 'on-line$' | wc -l | sed 's/ //g'`
        ;;
        *)
            CPUS=1  # default
         ;;
    esac
    
    
    cat > Makefile << EOF
    MAKEFLAGS += -j$CPUS
    $CC
    $CXX
    PREFIX=\$(abspath ./build)
    
    all: $NEEDED
    	@echo "You are ready to build Ring and its contribs"
    
    include tools.mak
    EOF