Software /
code /
prosody
File
configure @ 7567:495de404a8ae
ejabberdsql2prosody: rename variable 'host' to prevent shadowing upvalue [luacheck]
Functions roster(), roster_pending(), roster_group(), private_storage() and
offline_msg() have argument named "host", which used to shadow upvalue of this
variable before this change. Instead of renaming this argument, let's rename
the variable to match what the script says in usage:
Usage: ejabberdsql2prosody.lua filename.txt hostname
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Fri, 12 Aug 2016 13:44:47 +0800 |
parent | 7548:69d8e1477c43 |
child | 7607:d17bc0d0748e |
line wrap: on
line source
#!/bin/sh # Defaults PREFIX=/usr/local SYSCONFDIR="$PREFIX/etc/prosody" LIBDIR="$PREFIX/lib" DATADIR="$PREFIX/var/lib/prosody" LUA_SUFFIX="" LUA_DIR="/usr" LUA_BINDIR="/usr/bin" LUA_INCDIR="/usr/include" LUA_LIBDIR="/usr/lib" IDN_LIB=idn ICU_FLAGS="-licui18n -licudata -licuuc" OPENSSL_LIB=crypto CC=gcc LD=gcc RUNWITH=lua EXCERTS=yes PRNG= PRNGLIBS= CFLAGS="-fPIC -Wall" LDFLAGS="-shared" IDN_LIBRARY=idn # Help show_help() { cat <<EOF Configure Prosody prior to building. --help This help. --ostype=OS Use one of the OS presets. May be one of: debian, macosx, linux, freebsd, openbsd --prefix=DIR Prefix where Prosody should be installed. Default is $PREFIX --sysconfdir=DIR Location where the config file should be installed. Default is \$PREFIX/etc/prosody --libdir=DIR Location where the server files should be stored. Default is \$PREFIX/lib --datadir=DIR Location where the server data should be stored. Default is \$PREFIX/var/lib/prosody --lua-suffix=SUFFIX Versioning suffix to use in Lua filenames. Default is "$LUA_SUFFIX" (lua$LUA_SUFFIX...) --with-lua=PREFIX Use Lua from given prefix. Default is $LUA_DIR --runwith=BINARY What Lua binary to set as runtime environment. Default is $RUNWITH --with-lua-include=DIR You can also specify Lua's includes dir. Default is \$LUA_DIR/include --with-lua-lib=DIR You can also specify Lua's libraries dir. Default is \$LUA_DIR/lib --with-idn=LIB The name of the IDN library to link with. Default is $IDN_LIB --idn-library=(idn|icu) Select library to use for IDNA functionality. idn: use GNU libidn (default) icu: use ICU from IBM --with-ssl=LIB The name of the SSL to link with. Default is $OPENSSL_LIB --with-random=METHOD CSPRNG backend to use. One of getrandom: Linux kernel arc4random: OpenBSD kernel openssl: OpenSSL RAND method Default is to use /dev/urandom --cflags=FLAGS Flags to pass to the compiler Default is $CFLAGS --ldflags=FLAGS Flags to pass to the linker Default is $LDFLAGS --c-compiler=CC The C compiler to use when building modules. Default is $CC --linker=CC The linker to use when building modules. Default is $LD --require-config Will cause Prosody to refuse to run when it fails to find a configuration file --no-example-certs Disables generation of example certificates. EOF } while [ "$1" ] do value="`echo $1 | sed 's/[^=]*=\(.*\)/\1/'`" if echo "$value" | grep -q "~" then echo echo '*WARNING*: the "~" sign is not expanded in flags.' echo 'If you mean the home directory, use $HOME instead.' echo fi case "$1" in --help) show_help exit 0 ;; --prefix=*) PREFIX="$value" PREFIX_SET=yes ;; --sysconfdir=*) SYSCONFDIR="$value" SYSCONFDIR_SET=yes ;; --ostype=*) OSTYPE="$value" OSTYPE_SET=yes if [ "$OSTYPE" = "debian" ]; then LUA_SUFFIX="5.1"; LUA_SUFFIX_SET=yes RUNWITH="lua5.1" LUA_INCDIR=/usr/include/lua5.1; LUA_INCDIR_SET=yes CFLAGS="$CFLAGS -D_GNU_SOURCE" fi if [ "$OSTYPE" = "macosx" ]; then LUA_INCDIR=/usr/local/include; LUA_INCDIR_SET=yes LUA_LIBDIR=/usr/local/lib LUA_LIBDIR_SET=yes CFLAGS="$CFLAGS -mmacosx-version-min=10.3" LDFLAGS="-bundle -undefined dynamic_lookup" fi if [ "$OSTYPE" = "linux" ]; then LUA_INCDIR=/usr/local/include; LUA_INCDIR_SET=yes LUA_LIBDIR=/usr/local/lib LUA_LIBDIR_SET=yes CFLAGS="-Wall -fPIC -D_GNU_SOURCE" LDFLAGS="-shared" fi if [ "$OSTYPE" = "freebsd" -o "$OSTYPE" = "openbsd" ]; then LUA_INCDIR="/usr/local/include/lua51" LUA_INCDIR_SET=yes CFLAGS="-Wall -fPIC -I/usr/local/include" LDFLAGS="-I/usr/local/include -L/usr/local/lib -shared" LUA_SUFFIX="-5.1" LUA_SUFFIX_SET=yes LUA_DIR=/usr/local LUA_DIR_SET=yes CC=cc LD=ld fi if [ "$OSTYPE" = "openbsd" ]; then LUA_INCDIR="/usr/local/include"; fi ;; --libdir=*) LIBDIR="$value" LIBDIR_SET=yes ;; --datadir=*) DATADIR="$value" DATADIR_SET=yes ;; --require-config) REQUIRE_CONFIG=yes ;; --lua-suffix=*) LUA_SUFFIX="$value" LUA_SUFFIX_SET=yes ;; --with-lua=*) LUA_DIR="$value" LUA_DIR_SET=yes ;; --with-lua-include=*) LUA_INCDIR="$value" LUA_INCDIR_SET=yes ;; --with-lua-lib=*) LUA_LIBDIR="$value" LUA_LIBDIR_SET=yes ;; --with-idn=*) IDN_LIB="$value" ;; --idn-library=*) IDN_LIBRARY="$value" ;; --with-ssl=*) OPENSSL_LIB="$value" ;; --with-random=getrandom) PRNG=GETRANDOM ;; --with-random=openssl) PRNG=OPENSSL PRNGLIBS=-lcrypto ;; --with-random=arc4random) PRNG=ARC4RANDOM ;; --cflags=*) CFLAGS="$value" ;; --ldflags=*) LDFLAGS="$value" ;; --c-compiler=*) CC="$value" ;; --linker=*) LD="$value" ;; --runwith=*) RUNWITH="$value" ;; --no-example-certs) EXCERTS= ;; *) echo "Error: Unknown flag: $1" exit 1 ;; esac shift done if [ "$PREFIX_SET" = "yes" -a ! "$SYSCONFDIR_SET" = "yes" ] then if [ "$PREFIX" = "/usr" ] then SYSCONFDIR=/etc/prosody else SYSCONFDIR=$PREFIX/etc/prosody fi fi if [ "$PREFIX_SET" = "yes" -a ! "$DATADIR_SET" = "yes" ] then if [ "$PREFIX" = "/usr" ] then DATADIR=/var/lib/prosody else DATADIR=$PREFIX/var/lib/prosody fi fi if [ "$PREFIX_SET" = "yes" -a ! "$LIBDIR_SET" = "yes" ] then LIBDIR=$PREFIX/lib fi find_program() { path="$PATH" item="`echo "$path" | sed 's/\([^:]*\):.*/\1/'`" path="`echo "$path" | sed -n 's/[^:]*::*\(.*\)/\1/p'`" found="no" while [ "$item" ] do if [ -f "$item/$1" ] then found="yes" break fi item="`echo "$path" | sed 's/\([^:]*\):.*/\1/'`" path="`echo "$path" | sed -n 's/[^:]*::*\(.*\)/\1/p'`" done if [ "$found" = "yes" ] then echo "$item" else echo "" fi } if [ "$LUA_SUFFIX_SET" != "yes" ] then for suffix in "5.1" "51" "" do LUA_SUFFIX="$suffix" if [ "$LUA_DIR_SET" = "yes" ] then if [ -f "$LUA_DIR/bin/lua$suffix" ] then find_lua="$LUA_DIR" fi else find_lua=`find_program lua$suffix` fi if [ "$find_lua" ] then echo "Lua interpreter found: $find_lua/lua$suffix..." break fi done fi if [ "$LUA_DIR_SET" != "yes" ] then echo -n "Looking for Lua... " if [ ! "$find_lua" ] then find_lua=`find_program lua$LUA_SUFFIX` echo "lua$LUA_SUFFIX found in \$PATH: $find_lua" fi if [ "$find_lua" ] then LUA_DIR=`dirname $find_lua` LUA_BINDIR="$find_lua" else echo "lua$LUA_SUFFIX not found in \$PATH." echo "You may want to use the flags --with-lua and/or --lua-suffix. See --help." exit 1 fi fi if [ "$LUA_INCDIR_SET" != "yes" ] then LUA_INCDIR="$LUA_DIR/include" fi if [ "$LUA_LIBDIR_SET" != "yes" ] then LUA_LIBDIR="$LUA_DIR/lib" fi if [ "$LUA_DIR_SET" = "yes" ] then LUA_BINDIR="$LUA_DIR/bin" fi if [ "$IDN_LIBRARY" = "icu" ] then IDNA_LIBS="$ICU_FLAGS" CFLAGS="$CFLAGS -DUSE_STRINGPREP_ICU" fi if [ "$IDN_LIBRARY" = "idn" ] then IDNA_LIBS="-l$IDN_LIB" fi OPENSSL_LIBS="-l$OPENSSL_LIB" echo -n "Checking Lua includes... " lua_h="$LUA_INCDIR/lua.h" if [ -f "$lua_h" ] then echo "lua.h found in $lua_h" else echo "lua.h not found (looked in $lua_h)" echo "You may want to use the flag --with-lua-include. See --help." exit 1 fi find_helper() { explanation="$1" shift tried="$*" while [ "$1" ] do found=`find_program "$1"` if [ "$found" ] then echo "$1 found at $found" HELPER=$1 return fi shift done echo "Could not find a $explanation. Tried: $tried." echo "Make sure one of them is installed and available in your PATH." exit 1 } # Write config echo "Writing configuration..." echo cat <<EOF > config.unix # This file was automatically generated by the configure script. # Run "./configure --help" for details. PREFIX=$PREFIX SYSCONFDIR=$SYSCONFDIR LIBDIR=$LIBDIR DATADIR=$DATADIR LUA_SUFFIX=$LUA_SUFFIX LUA_DIR=$LUA_DIR LUA_INCDIR=$LUA_INCDIR LUA_LIBDIR=$LUA_LIBDIR LUA_BINDIR=$LUA_BINDIR REQUIRE_CONFIG=$REQUIRE_CONFIG IDN_LIB=$IDN_LIB IDNA_LIBS=$IDNA_LIBS OPENSSL_LIBS=$OPENSSL_LIBS CFLAGS=$CFLAGS LDFLAGS=$LDFLAGS CC=$CC LD=$LD RUNWITH=$RUNWITH EXCERTS=$EXCERTS RANDOM=$PRNG RANDOM_LIBS=$PRNGLIBS EOF echo "Installation prefix: $PREFIX" echo "Prosody configuration directory: $SYSCONFDIR" echo "Using Lua from: $LUA_DIR" make clean > /dev/null 2> /dev/null echo echo "Done. You can now run 'make' to build." echo