123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- #!/usr/bin/env bash
- CMD="$1"
- MAKE=make
- if [[ -z "${CMD}" ]]; then
- export CMD="default"
- fi
- if [ -x "/usr/bin/mariadb_config" ]; then
- export SQL=" --with-mysql=/usr/bin/mariadb_config"
- elif [ -x "/usr/bin/mysql_config" ]; then
- export SQL=" --with-mysql=/usr/bin/mysql_config"
- elif [ -x "/usr/local/bin/mysql_config" ]; then
- export SQL=" --with-mysql=/usr/local/bin/mysql_config"
- else
- export SQL=""
- fi
- source src/evol/tools/vars.sh
- COMMON="--enable-packetver=20170517 --enable-debug=gdb${SQL}"
- if [[ "$(uname)" == "FreeBSD" ]]; then
- MAKE=gmake
- export CORES=$(sysctl hw.ncpu | awk '{print $2}')
- elif [[ "$(uname)" == "Darwin" ]]; then
- export CORES=$(sysctl hw.ncpu | awk '{print $2}')
- else
- COMMON+=" --enable-epoll"
- export CORES=$(cat /proc/cpuinfo|grep processor|wc -l)
- fi
- export COMMON
- export MAKE
- autoreconf
- if [ "$?" != 0 ]; then
- exit 1
- fi
- if [[ "${CMD}" == "default" || "${CMD}" == "all" ]]; then
- export CC=gcc
- ./configure --enable-manager=no --enable-sanitize=full ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} install
- if [ "$?" != 0 ]; then
- exit 1
- fi
- cd src/evol
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ./build.sh
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "old" ]]; then
- ./configure --disable-lto ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} install
- if [ "$?" != 0 ]; then
- exit 1
- fi
- cd src/evol
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ./build.sh old
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "valgrind" ]]; then
- ./configure --enable-manager=no ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} install
- if [ "$?" != 0 ]; then
- exit 1
- fi
- cd src/evol
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ./build.sh old
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "gprof" ]]; then
- ./configure --enable-manager=no --enable-profiler=gprof ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} install
- if [ "$?" != 0 ]; then
- exit 1
- fi
- cd src/evol
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ./build.sh gprof
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "server" ]]; then
- ./configure --enable-sanitize ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} install
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "static" ]]; then
- ./configure LIBS="-lmysqlclient -lssl -lcrypto -pthread -lm -lz" --disable-64bit --enable-static ${COMMON}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- elif [[ "${CMD}" == "static64" ]]; then
- ./configure --enable-static ${COMMON} CPPFLAGS="${VARS}"
- if [ "$?" != 0 ]; then
- exit 1
- fi
- ${MAKE} -j${CORES}
- if [ "$?" != 0 ]; then
- exit 1
- fi
- fi
- echo "OK"
|