X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=textclient%2Fconfigure;h=04821c612471752fca075d37dafae2c69b558679;hb=HEAD;hp=d75fd297f8287d89c1eea1e1cce508a92d57f582;hpb=7628b96d87b3d5993bc17b7fa265679bbdbdb17d;p=citadel.git diff --git a/textclient/configure b/textclient/configure index d75fd297f..eba03f83d 100755 --- a/textclient/configure +++ b/textclient/configure @@ -2,13 +2,10 @@ # CONFIGURE SCRIPT FOR CITADEL TEXT CLIENT # This file is part of "conf-IG-ure" -# Copyright (C) 2016-2018 by Art Cancro -# Distributed under the terms of the GNU General Public License v3 with the following special exceptions: -# 1. By using this software you agree that it's called "Linux", not "GNU/Linux" -# 2. By using this software you agree that it's called "open source", not "free software" -# 3. By using this software you agree that GNU Autotools are crap, which is why conf-IG-ure exists -# 4. By using this software you agree that Richard Stallman is a communist. -# 5. By reading these special exceptions you have already agreed to them. +# Copyright (C) 2016-2019 by Art Cancro +# +# This program is open source software. Use, duplication, and/or +# disclosure are subject to the GNU General Purpose License version 3. echo echo @@ -29,6 +26,9 @@ do --bindir) BINDIR=$v ;; + --etcdir) + ETCDIR=$v + ;; --ctdldir) CTDLDIR=$v ;; @@ -44,6 +44,7 @@ do echo Valid options are: echo ' --prefix=PREFIX Install files in PREFIX [/usr/local]' echo ' --bindir=DIR Install executables in DIR [PREFIX/bin]' + echo ' --etcdir=DIR Install citadel.rc in DIR [PREFIX/etc]' echo ' --ctdldir=DIR Look for Citadel server in DIR [/usr/local/citadel]' echo ' --with-ssl Force build with OpenSSL support [normally autodetected]' echo ' --without-ssl Force build without OpenSSL support [normally autodetected]' @@ -53,15 +54,21 @@ do shift done + +######################################################################## # Set any missing values +######################################################################## [ "$PREFIX" = "" ] && PREFIX=/usr/local [ "$BINDIR" = "" ] && BINDIR=${PREFIX}/bin [ "$CTDLDIR" = "" ] && CTDLDIR=/usr/local/citadel -[ "$CFLAGS" = "" ] && CFLAGS='-ggdb' +[ "$CFLAGS" = "" ] && CFLAGS='-Wformat-truncation=0 -ggdb' [ "$LDFLAGS" = "" ] && LDFLAGS='' + +######################################################################## # Test for OpenSSL +######################################################################## [ "$SSL" != "yes" ] && [ "$SSL" != "no" ] && { echo Testing for OpenSSL... tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/configure.$$ @@ -81,10 +88,49 @@ int main(int argc, char **argv) { echo SSL: $SSL [ "$SSL" = "yes" ] && { CFLAGS=${CFLAGS}' -DHAVE_OPENSSL' - LDFLAGS=${LDFLAGS}' -lssl -lcrypto' + LDFLAGS=${LDFLAGS}' -lssl -lcrypto -lz' } + +######################################################################## +# Test for iconv +######################################################################## +echo Testing for iconv... +tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/configure.$$ +tempcc=${tempfile}.c +cat >$tempcc < +#include +#include +#include +int main(int argc, char **argv) { + size_t wow = iconv(NULL, NULL, NULL, NULL, NULL); + return(0); +} +! + +cc $tempcc -o $tempfile && { + ICONV='yes' + echo iconv.h is present and requires no additional libraries +} || { + echo Trying again with -liconv... + cc $tempcc -liconv -o $tempfile && { + ICONV='yes' + LDFLAGS=${LDFLAGS}' -liconv' + } || { + echo Citadel Server requires iconv character set conversion. + rm -f $tempfile 2>/dev/null + rm -f $tempcc 2>/dev/null + exit 1 + } +} +rm -f $tempfile 2>/dev/null +rm -f $tempcc 2>/dev/null + + +######################################################################## # Output the config.mk +######################################################################## ( echo "CFLAGS := ${CFLAGS}"