Let Google Hangouts contacts appear offline
[prosody.git] / configure
index e310b7a763e7da1496129dba343122dc51c83768..af046223933d8f18b477bc9b5b5d3b8b8befedc2 100755 (executable)
--- a/configure
+++ b/configure
@@ -11,13 +11,16 @@ 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
+CXX=g++
 LD=gcc
 
 CFLAGS="-fPIC -Wall"
-LFLAGS="-shared"
+LDFLAGS="-shared"
 
+IDN_LIBRARY=idn
 # Help
 
 show_help() {
@@ -26,7 +29,7 @@ Configure Prosody prior to building.
 
 --help                      This help.
 --ostype=OS                 Use one of the OS presets.
-                            May be one of: debian, macosx
+                            May be one of: debian, macosx, linux, freebsd
 --prefix=DIR                Prefix where Prosody should be installed.
                             Default is $PREFIX
 --sysconfdir=DIR            Location where the config file should be installed.
@@ -43,12 +46,15 @@ Configure Prosody prior to building.
                             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
 --cflags=FLAGS              Flags to pass to the compiler
                             Default is $CFLAGS
---lflags=FLAGS              Flags to pass to the linker
-                            Default is $LFLAGS
+--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.
@@ -61,7 +67,7 @@ EOF
 
 while [ "$1" ]
 do
-   value="`echo $1 | sed 's/.*=\(.*\)/\1/'`"
+   value="`echo $1 | sed 's/[^=]*=\(.*\)/\1/'`"
    if echo "$value" | grep -q "~"
    then
       echo
@@ -78,11 +84,46 @@ do
       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
+       LUA_INCDIR=/usr/include/lua5.1;
+       LUA_INCDIR_SET=yes
+       fi
+       if [ "$OSTYPE" = "macosx" ]
+       then LUA_INCDIR=/usr/local/include;
+       LUA_INCDIR_SET=yes
+       LUA_LIBDIR=/usr/local/lib
+       LUA_LIBDIR_SET=yes
+       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"
+        LDFLAGS="-shared"
+        fi
+        if [ "$OSTYPE" = "freebsd" ]
+        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
+        fi
       ;;
-   --data-dir=*)
+   --datadir=*)
        DATADIR="$value"
        DATADIR_SET=yes
       ;;
@@ -103,22 +144,28 @@ do
       ;;
    --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"
-      ;;      
+      ;;
    --cflags=*)
       CFLAGS="$value"
-      ;;      
+      ;;
+   --ldflags=*)
+      LDFLAGS="$value"
+      ;;
    --c-compiler=*)
       CC="$value"
-      ;;      
+      ;;
    --linker=*)
       LD="$value"
-      ;;      
+      ;;
    *)
       echo "Error: Unknown flag: $1"
       exit 1
@@ -127,24 +174,6 @@ do
    shift
 done
 
-if [ "$OSTYPE_SET" = "yes" ]
-then
-       if [ "$OSTYPE" = "debian" ]
-       then LUA_SUFFIX="5.1";
-       LUA_SUFFIX_SET=yes
-       LUA_INCDIR=/usr/include/lua5.1;
-       LUA_INCDIR_SET=yes
-       fi
-       if [ "$OSTYPE" = "macosx" ]
-       then LUA_INCDIR=/usr/local/include;
-       LUA_INCDIR_SET=yes      
-       LUA_LIBDIR=/usr/local/lib
-       LUA_LIBDIR_SET=yes
-       CFLAGS="-Wall"
-       LFLAGS="-bundle -undefined dynamic_lookup"
-       fi      
-fi
-
 if [ "$PREFIX_SET" = "yes" -a ! "$SYSCONFDIR_SET" = "yes" ]
 then
    if [ "$PREFIX" = "/usr" ]
@@ -240,6 +269,16 @@ 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
+
 echo -n "Checking Lua includes... "
 lua_h="$LUA_INCDIR/lua.h"
 if [ -e "$lua_h" ]
@@ -290,10 +329,12 @@ LUA_LIBDIR=$LUA_LIBDIR
 LUA_BINDIR=$LUA_BINDIR
 REQUIRE_CONFIG=$REQUIRE_CONFIG
 IDN_LIB=$IDN_LIB
+IDNA_LIBS=$IDNA_LIBS
 OPENSSL_LIB=$OPENSSL_LIB
 CFLAGS=$CFLAGS
-LFLAGS=$LFLAGS
+LDFLAGS=$LDFLAGS
 CC=$CC
+CXX=$CXX
 LD=$LD
 
 EOF