aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure29
-rw-r--r--util-src/Makefile6
2 files changed, 31 insertions, 4 deletions
diff --git a/configure b/configure
index dda98cd7..3b1898e0 100755
--- a/configure
+++ b/configure
@@ -13,6 +13,8 @@ LUA_LIBDIR="/usr/lib"
IDN_LIB=idn
OPENSSL_LIB=crypto
+CFLAGS="-shared -fPIC"
+
# Help
show_help() {
@@ -20,6 +22,8 @@ cat <<EOF
Configure Prosody prior to building.
--help This help.
+--ostype=OS Use one of the OS presets.
+ May be one of: debian, macosx
--prefix=DIR Prefix where Prosody should be installed.
Default is $PREFIX
--sysconfdir=DIR Location where the config file should be installed.
@@ -38,7 +42,9 @@ Configure Prosody prior to building.
Default is $IDN_LIB
--with-ssl=LIB The name of the SSL to link with.
Default is $OPENSSL_LIB
---require-config Will cause Prosody to refuse to run when
+--cflags=FLAGS Flags to pass to the compiler
+ Default is $CFLAGS
+--require-config Will cause Prosody to refuse to run when
it fails to find a configuration file
EOF
}
@@ -63,6 +69,10 @@ do
PREFIX="$value"
PREFIX_SET=yes
;;
+ --ostype=*)
+ OSTYPE="$value"
+ OSTYPE_SET=yes
+ ;;
--data-dir=*)
DATADIR="$value"
DATADIR_SET=yes
@@ -91,6 +101,9 @@ do
--with-ssl=*)
OPENSSL_LIB="$value"
;;
+ --cflags=*)
+ CFLAGS="$value"
+ ;;
*)
echo "Error: Unknown flag: $1"
exit 1
@@ -99,6 +112,19 @@ do
shift
done
+if [ "$OSTYPE_SET" = "yes" ]
+then
+ if [ "$OSTYPE" = "debian" ]
+ then LUA_SUFFIX="5.1";
+ LUA_INCDIR=/usr/include/lua5.1;
+ fi
+ if [ "$OSTYPE" = "macosx" ]
+ then LUA_INCDIR=/usr/local/include;
+ LUA_LIBDIR=/usr/local/lib
+ CFLAGS="-bundle -Wl,-undefined,dynamic_lookup"
+ fi
+fi
+
if [ "$PREFIX_SET" = "yes" -a ! "$SYSCONFDIR_SET" = "yes" ]
then
if [ "$PREFIX" = "/usr" ]
@@ -245,6 +271,7 @@ LUA_BINDIR=$LUA_BINDIR
REQUIRE_CONFIG=$REQUIRE_CONFIG
IDN_LIB=$IDN_LIB
OPENSSL_LIB=$OPENSSL_LIB
+CFLAGS=$CFLAGS
EOF
diff --git a/util-src/Makefile b/util-src/Makefile
index 8b886a1f..04f9d7cb 100644
--- a/util-src/Makefile
+++ b/util-src/Makefile
@@ -5,7 +5,7 @@ LUA_SUFFIX?=5.1
LUA_INCDIR?=/usr/include/lua$(LUA_SUFFIX)
LUA_LIB?=lua$(LUA_SUFFIX)
IDN_LIB?=idn
-OPENSSL_LIB?=ssl
+OPENSSL_LIB?=crypto
@@ -21,8 +21,8 @@ clean:
rm -f ../util/*.so
encodings.so: encodings.c
- gcc -shared -fPIC encodings.c -I$(LUA_INCDIR) -l$(LUA_LIB) -l$(IDN_LIB) -o encodings.so
+ gcc $(CFLAGS) encodings.c -I$(LUA_INCDIR) -l$(LUA_LIB) -l$(IDN_LIB) -o encodings.so
hashes.so: hashes.c
- gcc -shared -fPIC hashes.c -I$(LUA_INCDIR) -l$(LUA_LIB) -l$(OPENSSL_LIB) -o hashes.so
+ gcc $(CFLAGS) hashes.c -I$(LUA_INCDIR) -l$(LUA_LIB) -l$(OPENSSL_LIB) -o hashes.so