2009-03-25 19:53:26 +00:00
|
|
|
#!/bin/sh
|
2013-11-12 01:21:31 +00:00
|
|
|
# This script was automatically generated by ACR v0.9.7
|
2009-03-25 19:53:26 +00:00
|
|
|
# @author: pancake <youterm.com>
|
2010-02-22 03:47:19 +00:00
|
|
|
# @url: http://www.nopcode.org
|
|
|
|
# @repo: hg clone http://hg.youterm.com/acr
|
2009-03-25 19:53:26 +00:00
|
|
|
|
|
|
|
do_remove() {
|
|
|
|
if [ "${ACR_RMFILES}" ]; then
|
|
|
|
printf "cleaning temporally files... "
|
|
|
|
rm -f ${ACR_RMFILES}
|
|
|
|
echo "done"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
control_c() {
|
|
|
|
printf "\n\n^C control-c : script execution interrupted.\n"
|
|
|
|
do_remove
|
|
|
|
exit 1
|
|
|
|
}
|
|
|
|
trap control_c 2
|
2012-09-12 17:35:27 +00:00
|
|
|
CPARSE=0
|
2009-04-19 20:55:25 +00:00
|
|
|
DEBUGGER=1
|
2011-10-18 07:38:20 +00:00
|
|
|
USE_MAGIC=0
|
2009-03-31 00:57:39 +00:00
|
|
|
HAVE_EWF=1
|
2012-10-26 00:49:33 +00:00
|
|
|
WANT_OPENSSL=0
|
2012-08-27 15:02:58 +00:00
|
|
|
USE_RPATH=0
|
2011-07-15 00:21:40 +00:00
|
|
|
HAVE_LILEND=0
|
|
|
|
HAVE_BIGEND=0
|
2009-04-03 11:11:17 +00:00
|
|
|
[ -z "${USERCC}" ] && USERCC="gcc"
|
2010-02-21 19:49:39 +00:00
|
|
|
[ -z "${USEROSTYPE}" ] && USEROSTYPE="auto"
|
2010-01-21 20:22:30 +00:00
|
|
|
WITHPIC=1
|
2010-10-29 01:10:10 +00:00
|
|
|
WITHNONPIC=0
|
2011-04-25 16:11:01 +00:00
|
|
|
[ -z "${LIBVERSION}" ] && LIBVERSION="xxx"
|
2009-03-25 19:53:26 +00:00
|
|
|
split_host() {
|
|
|
|
S="$"
|
|
|
|
while : ; do
|
|
|
|
ENVWORDS="${ENVWORDS} $1_CPU $1_OS"
|
|
|
|
STR=`eval "echo ${S}$1"`
|
|
|
|
SPLIT_CPU="`echo "$STR" | cut -d - -f 1`"
|
2013-11-12 01:21:31 +00:00
|
|
|
#SPLIT_OS="`echo "$STR" | awk -F - '{print $(NF-1)}'`"
|
|
|
|
SPLIT_OS="`echo "$STR" | awk -F - '{
|
|
|
|
if($1="unknown"){ if (NF<3) { print $2; } else { print $3; }
|
|
|
|
} else { print $(NF-1); }
|
|
|
|
}'`"
|
2009-03-25 19:53:26 +00:00
|
|
|
eval "$1_CPU=\"$SPLIT_CPU\""
|
|
|
|
eval "$1_OS=\"$SPLIT_OS\""
|
|
|
|
shift
|
|
|
|
[ -z "$1" ] && break
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
VPATH=`dirname ${0}`
|
|
|
|
if [ "${VPATH}" = "." ]; then
|
|
|
|
WODIS=current
|
|
|
|
else
|
|
|
|
if [ "${VPATH}" = "${PWD}" ]; then
|
|
|
|
VPATH=.
|
|
|
|
WODIS=current
|
|
|
|
else
|
|
|
|
WODIS=crosspath
|
|
|
|
CURDIR=$PWD
|
|
|
|
cd $VPATH
|
|
|
|
VPATH="${PWD}/"
|
|
|
|
cd $CURDIR
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
guess_os() {
|
|
|
|
if [ -e "${VPATH}/config.guess" ]; then
|
|
|
|
sh ${VPATH}/config.guess
|
|
|
|
return
|
|
|
|
fi
|
2012-02-07 00:51:56 +00:00
|
|
|
CPU="`uname -m|sed -e 's, ,,g'|cut -d - -f 1`"
|
|
|
|
OS="`uname -s|tr A-Z a-z`"
|
2009-03-25 19:53:26 +00:00
|
|
|
GNU="`uname --help 2>&1 | grep gnu`"
|
|
|
|
[ "${GNU}" ] && OS="${OS}-gnu"
|
|
|
|
[ "${CPU}" = ppc ] && CPU="powerpc"
|
|
|
|
echo "${CPU}-unknown-${OS}"
|
|
|
|
}
|
|
|
|
|
|
|
|
SEARCHPATH="/usr /usr/local /usr/pkg /sw"
|
|
|
|
|
|
|
|
: ${PREFIX:=/usr/local}
|
|
|
|
CROSSBUILD=0
|
|
|
|
BUILD=`guess_os`
|
|
|
|
HOST="${BUILD}"
|
|
|
|
TARGET="${HOST}"
|
|
|
|
SYSCONFDIR=""
|
|
|
|
|
|
|
|
create_environ() {
|
|
|
|
: ${EPREFIX:=${PREFIX}}
|
|
|
|
: ${SPREFIX:=${PREFIX}}
|
|
|
|
: ${BINDIR:=${SPREFIX}/bin}
|
|
|
|
: ${SBINDIR:=${PREFIX}/sbin}
|
|
|
|
: ${SYSCONFDIR:=${SPREFIX}/etc}
|
|
|
|
: ${LIBDIR:=${SPREFIX}/lib}
|
|
|
|
: ${LIBEXECDIR:=${SPREFIX}/libexec}
|
|
|
|
: ${INCLUDEDIR:=${SPREFIX}/include}
|
2011-07-03 10:58:19 +00:00
|
|
|
: ${DATADIR:=${SPREFIX}/share}
|
|
|
|
: ${INFODIR:=${DATADIR}/info}
|
|
|
|
: ${MANDIR:=${DATADIR}/man}
|
2009-03-25 19:53:26 +00:00
|
|
|
: ${LOCALSTATEDIR:=${SPREFIX}/var}
|
|
|
|
for A in `echo ${PATH} | sed -e 's,:, ,g'` ; do
|
2010-02-21 19:24:28 +00:00
|
|
|
[ -e $A/ginstall ] && : ${INSTALL:=$A/ginstall} && break
|
|
|
|
[ -e $A/install ] && : ${INSTALL:=$A/install} && break
|
2009-03-25 19:53:26 +00:00
|
|
|
done
|
|
|
|
: ${INSTALL_DIR:=${INSTALL} -d}
|
|
|
|
: ${INSTALL_DATA:=${INSTALL} -m 644}
|
|
|
|
: ${INSTALL_SCRIPT:=${INSTALL} -m 755}
|
2012-06-21 08:12:02 +00:00
|
|
|
: ${INSTALL_PROGRAM:=${INSTALL} -m 755}
|
|
|
|
: ${INSTALL_PROGRAM_STRIP:=${INSTALL} -m 755 -s}
|
2009-03-25 19:53:26 +00:00
|
|
|
: ${INSTALL_MAN:=${INSTALL} -m 444}
|
|
|
|
: ${INSTALL_LIB:=${INSTALL} -c}
|
2013-11-11 01:07:55 +00:00
|
|
|
PKGNAME='radare2' ; VERSION='0.9.7git' ; CONTACT_MAIL="pancake@nopcode.org" ; CONTACT_NAME="pancake" ; CONTACT="pancake <pancake@nopcode.org>" ;
|
2009-03-25 19:53:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
show_usage() {
|
|
|
|
cat <<EOF2
|
2013-11-11 01:07:55 +00:00
|
|
|
'configure' configures radare2-0.9.7git to adapt to many kinds of systems.
|
2009-03-25 19:53:26 +00:00
|
|
|
|
|
|
|
Usage: ./configure [OPTION]... [VAR=VALUE]...
|
|
|
|
|
|
|
|
To assign environment variables (e.g., CC, CFLAGS...), specify them as
|
|
|
|
VAR=VALUE. See below for descriptions of some of the useful variables.
|
|
|
|
|
|
|
|
Defaults for the options are specified in brackets.
|
|
|
|
|
|
|
|
Configuration:
|
|
|
|
-h, --help display this help and exit
|
|
|
|
-V, --version display version information and exit
|
|
|
|
-r, --report show what libs/programs require to work
|
|
|
|
|
|
|
|
Installation directories:
|
|
|
|
--prefix=PREFIX install arch-independent files in PREFIX [/usr/local]
|
|
|
|
--exec-prefix=EPREFIX install arch-dependent files in EPREFIX [PREFIX]
|
|
|
|
--sandbox=SPREFIX sandbox prefix directory: SPREFIX [PREFIX]
|
|
|
|
|
|
|
|
Fine tuning of the installation directories:
|
|
|
|
--bindir=DIR user executables [EPREFIX/bin]
|
|
|
|
--sbindir=DIR system admin executables [EPREFIX/sbin]
|
|
|
|
--libexecdir=DIR program executables [EPREFIX/libexec]
|
|
|
|
--datadir=DIR read-only architecture-independent data [PREFIX/share]
|
|
|
|
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
|
|
|
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
|
|
|
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
|
|
|
--libdir=DIR object code libraries [EPREFIX/lib]
|
|
|
|
--includedir=DIR C header files [PREFIX/include]
|
2011-07-20 21:55:05 +00:00
|
|
|
--infodir=DIR info documentation [DATADIR/info]
|
|
|
|
--mandir=DIR man documentation [DATADIR/man]
|
2009-03-25 19:53:26 +00:00
|
|
|
|
|
|
|
System types:
|
|
|
|
--build=BUILD configure for building on BUILD [guessed]
|
|
|
|
--host=HOST cross-compile to build programs to run on HOST [BUILD]
|
|
|
|
--target=TARGET configure for building compilers for TARGET [HOST]
|
|
|
|
EOF2
|
|
|
|
|
2012-12-14 16:46:33 +00:00
|
|
|
printf "
|
|
|
|
Optional Features:
|
2012-09-12 17:35:27 +00:00
|
|
|
--enable-cparse build with cparse support
|
|
|
|
--disable-debugger disable native debugger features
|
2011-10-18 16:12:17 +00:00
|
|
|
--with-sysmagic force to use system's magic
|
2009-03-31 00:57:39 +00:00
|
|
|
--without-ewf disable EWF dependency
|
2012-10-26 00:49:33 +00:00
|
|
|
--with-openssl build with openssl if possible
|
2012-08-27 15:02:58 +00:00
|
|
|
--with-rpath use rpath to build
|
2011-07-15 00:21:40 +00:00
|
|
|
--with-little-endian force little endian
|
|
|
|
--with-big-endian force big endian
|
2009-04-03 11:11:17 +00:00
|
|
|
--with-compiler Define compiler to use (see mk/) (USERCC=gcc)
|
2013-06-07 11:21:51 +00:00
|
|
|
--with-ostype Choose OS type ( gnulinux windows darwin haiku ) (USEROSTYPE=auto)
|
2010-10-29 01:10:10 +00:00
|
|
|
--without-pic do not build libr as a program independent location
|
2011-04-20 11:56:58 +00:00
|
|
|
--with-nonpic build the library archives .a
|
2012-12-14 16:46:33 +00:00
|
|
|
--with-libversion specify different libversion (LIBVERSION=xxx)
|
|
|
|
"
|
|
|
|
printf "
|
|
|
|
Some influential environment variables:
|
2009-03-25 19:53:26 +00:00
|
|
|
CC C compiler command
|
|
|
|
CFLAGS C compiler flags
|
2012-02-07 00:51:56 +00:00
|
|
|
CPPFLAGS C preprocessor flags
|
2009-03-25 19:53:26 +00:00
|
|
|
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
|
|
|
|
nonstandard directory <lib dir>
|
|
|
|
CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
|
|
|
|
headers in a nonstandard directory <include dir>
|
2012-12-14 16:46:33 +00:00
|
|
|
CPP C preprocessor
|
|
|
|
"
|
|
|
|
printf "
|
|
|
|
Report bugs to: pancake <pancake@nopcode.org>"
|
2009-03-25 19:53:26 +00:00
|
|
|
echo ""
|
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
|
|
|
take_environ() {
|
|
|
|
: ${SH:=/bin/sh}
|
|
|
|
: ${CPP:=cpp}
|
|
|
|
: ${CC:=gcc}
|
|
|
|
: ${PREFIX:=/usr/local/}
|
|
|
|
}
|
|
|
|
|
|
|
|
show_version() {
|
2013-11-12 01:21:31 +00:00
|
|
|
echo "radare2-0.9.7git configuration script done with acr v0.9.7.
|
2009-03-25 19:53:26 +00:00
|
|
|
The 'Free Software Foundation' message is only for autodetection.
|
|
|
|
Originally written by pancake <youterm.com>."
|
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
|
|
|
parse_options() {
|
|
|
|
flag=`echo $1| cut -d = -f 1`
|
|
|
|
value=`echo $1| awk 'BEGIN{FS="=";}{print $2}'`
|
|
|
|
flag2=`echo $flag|cut -f2- -d -| sed -e 's,-,_,g' -e 's,^_,,g'|tr '[a-z]' '[A-Z]'`
|
|
|
|
|
2012-02-07 00:51:56 +00:00
|
|
|
if [ "${TARGET_OS}" = "darwin" ]; then
|
|
|
|
LIBPATH=-Wl,-install_name,
|
|
|
|
else
|
|
|
|
LIBPATH=-Wl,-R
|
|
|
|
fi
|
|
|
|
|
2009-03-25 19:53:26 +00:00
|
|
|
case $flag in
|
|
|
|
"-h"|"--help"|"--hel"|"--h"|"--he"|"-help")
|
|
|
|
show_usage ; ;;
|
|
|
|
"-V"|"-version"|"--version")
|
|
|
|
show_version ; ;;
|
|
|
|
"-r"|"--r"|"--report")
|
|
|
|
echo "PKGNAME: radare2"
|
2013-11-11 01:07:55 +00:00
|
|
|
echo "VERSION: 0.9.7git"
|
2009-03-25 19:53:26 +00:00
|
|
|
echo "LANGS: c"
|
2010-03-23 11:30:04 +00:00
|
|
|
echo "REQUIRED: libdl"
|
2011-10-18 07:38:20 +00:00
|
|
|
echo "OPTIONAL: libmagic"
|
2012-02-03 00:13:09 +00:00
|
|
|
echo "PKG-CONFIG: libewf openssl"
|
2012-12-14 16:46:33 +00:00
|
|
|
echo "FLAGS: --enable-cparse --disable-debugger --with-sysmagic --without-ewf --with-openssl --with-rpath --with-little-endian --with-big-endian --with-compiler=gcc --with-ostype=auto --without-pic --with-nonpic --with-libversion=xxx"
|
2009-03-25 19:53:26 +00:00
|
|
|
exit 0
|
|
|
|
;;
|
|
|
|
"--cache-file")
|
|
|
|
# ignored: acr have no cache
|
|
|
|
;;
|
|
|
|
"--build")
|
2010-01-15 12:02:54 +00:00
|
|
|
BUILD="$value"; split_host BUILD ; ;;
|
2009-03-25 19:53:26 +00:00
|
|
|
"--host")
|
2010-01-15 12:02:54 +00:00
|
|
|
CROSSBUILD=1 # XXX
|
|
|
|
HOST="$value"; split_host HOST ; ;;
|
2009-03-25 19:53:26 +00:00
|
|
|
"--target")
|
2010-01-15 12:02:54 +00:00
|
|
|
TARGET="$value"; split_host TARGET ; ;;
|
2009-03-25 19:53:26 +00:00
|
|
|
"--prefix")
|
|
|
|
PREFIX="$value"; ;;
|
|
|
|
"--exec-prefix")
|
|
|
|
EPREFIX="$value"; ;;
|
|
|
|
"--sandbox"|"--sprefix")
|
|
|
|
SPREFIX="$value"; ;;
|
|
|
|
"--bindir")
|
|
|
|
BINDIR="$value"; ;;
|
|
|
|
"--sbindir")
|
|
|
|
SBINDIR="$value"; ;;
|
|
|
|
"--libexecdir")
|
|
|
|
LIBEXECDIR="$value"; ;;
|
|
|
|
"--datadir")
|
|
|
|
DATADIR="$value"; ;;
|
|
|
|
"--sysconfdir")
|
|
|
|
SYSCONFDIR="$value"; ;;
|
|
|
|
"--sharedstatedir")
|
|
|
|
SHAREDSTATEDIR="$value"; ;;
|
|
|
|
"--localstatedir")
|
|
|
|
LOCALSTATEDIR="$value"; ;;
|
|
|
|
"--libdir")
|
2012-02-07 00:51:56 +00:00
|
|
|
LIBDIR="$value"; LDFLAGS="${LDFLAGS} -L$value ${LIBPATH}$value"; ;;
|
2009-03-25 19:53:26 +00:00
|
|
|
"--includedir")
|
|
|
|
INCLUDEDIR="$value"; CFLAGS="${CFLAGS} -I$value"; ;;
|
|
|
|
"--infodir")
|
|
|
|
INFODIR="$value"; ;;
|
|
|
|
"--mandir")
|
|
|
|
MANDIR="$value"; ;;
|
|
|
|
|
2012-09-12 17:35:27 +00:00
|
|
|
"--enable-cparse") CPARSE="1"; ;;
|
|
|
|
"--disable-debugger") DEBUGGER="0"; ;;
|
2011-10-18 16:12:17 +00:00
|
|
|
"--with-sysmagic") USE_MAGIC="1"; ;;
|
2009-03-31 00:57:39 +00:00
|
|
|
"--without-ewf") HAVE_EWF="0"; ;;
|
2012-10-26 00:49:33 +00:00
|
|
|
"--with-openssl") WANT_OPENSSL="1"; ;;
|
2012-08-27 15:02:58 +00:00
|
|
|
"--with-rpath") USE_RPATH="1"; ;;
|
2011-07-15 00:21:40 +00:00
|
|
|
"--with-little-endian") HAVE_LILEND="1"; ;;
|
|
|
|
"--with-big-endian") HAVE_BIGEND="1"; ;;
|
2009-04-03 11:11:17 +00:00
|
|
|
--with-compiler) if [ -z "${value}" ]; then USERCC="gcc"; else USERCC="${value}" ; fi ;;
|
2010-02-21 19:49:39 +00:00
|
|
|
--with-ostype) if [ -z "${value}" ]; then USEROSTYPE="auto"; else USEROSTYPE="${value}" ; fi ;;
|
2010-01-21 20:22:30 +00:00
|
|
|
"--without-pic") WITHPIC="0"; ;;
|
2010-10-29 01:10:10 +00:00
|
|
|
"--with-nonpic") WITHNONPIC="1"; ;;
|
2011-04-25 16:11:01 +00:00
|
|
|
--with-libversion) if [ -z "${value}" ]; then LIBVERSION="xxx"; else LIBVERSION="${value}" ; fi ;;
|
2009-03-25 19:53:26 +00:00
|
|
|
*) if [ "$value" ]; then eval "`echo $flag2=$value`" ;
|
|
|
|
else echo ; echo "WARNING: Unknown flag '$flag'." >&2 ; echo ; fi ;;
|
|
|
|
esac
|
|
|
|
}
|
|
|
|
|
|
|
|
# MAIN #
|
|
|
|
take_environ
|
2009-07-16 00:30:20 +00:00
|
|
|
split_host BUILD HOST TARGET
|
|
|
|
[ -z "$ACRHOOK" ] && ACRHOOK=./configure.hook
|
|
|
|
[ -e "$ACRHOOK" ] && . ${ACRHOOK}
|
2009-03-25 19:53:26 +00:00
|
|
|
|
|
|
|
while : ; do
|
|
|
|
[ -z "$1" ] && break
|
|
|
|
parse_options $1
|
|
|
|
shift
|
|
|
|
done
|
|
|
|
|
2013-06-05 07:29:27 +00:00
|
|
|
ENVWORDS="MANDIR INFODIR LIBDIR INCLUDEDIR LOCALSTATEDIR SYSCONFDIR DATADIR LIBEXECDIR SBINDIR BINDIR EPREFIX PREFIX SPREFIX TARGET HOST BUILD INSTALL INSTALL_LIB INSTALL_MAN INSTALL_PROGRAM INSTALL_PROGRAM_STRIP INSTALL_DIR INSTALL_SCRIPT INSTALL_DATA HOST_OS HOST_CPU BUILD_OS BUILD_CPU TARGET_OS TARGET_CPU PKGNAME VPATH VERSION CONTACT CONTACT_NAME CONTACT_MAIL CC CFLAGS CPPFLAGS LDFLAGS HAVE_LANG_C CPARSE DEBUGGER HAVE_LIB_DL DL_LIBS LIL_ENDIAN BIG_ENDIAN BYTEORDER HAVE_LIB_MAGIC USE_MAGIC USE_LIB_MAGIC LIBMAGIC HAVE_LIB_EWF EWF_CFLAGS EWF_LDFLAGS HAVE_PKGCFG_LIBEWF HAVE_EWF HAVE_LIB_GMP HAVE_GMP HAVE_LIB_SSL SSL_CFLAGS SSL_LDFLAGS HAVE_PKGCFG_OPENSSL HAVE_OPENSSL WANT_OPENSSL USE_RPATH HAVE_LILEND HAVE_BIGEND HAVE_LIB_LUA5_1 USERCC USEROSTYPE WITHPIC WITHNONPIC LIBVERSION"
|
2009-03-25 19:53:26 +00:00
|
|
|
|
|
|
|
create_environ
|
|
|
|
|
|
|
|
echo "checking build system type... ${BUILD}"
|
|
|
|
echo "checking host system type... ${HOST}"
|
|
|
|
echo "checking target system type... ${TARGET}"
|
|
|
|
[ "${CROSSBUILD}" = 1 ] && echo "using crosscompilation mode."
|
|
|
|
|
2009-07-16 00:30:20 +00:00
|
|
|
#split_host BUILD HOST TARGET
|
2009-04-22 14:29:30 +00:00
|
|
|
[ -n "${prefix}" ] && PREFIX=${prefix}
|
2009-03-25 19:53:26 +00:00
|
|
|
echo "checking for working directories... ${WODIS}"
|
|
|
|
echo "using prefix '${PREFIX}'"
|
|
|
|
ACR_RMFILES=" test.c a.out a.exe"
|
2009-03-31 00:57:39 +00:00
|
|
|
|
|
|
|
|
2009-03-25 19:53:26 +00:00
|
|
|
:
|
|
|
|
COMPILER=CC
|
|
|
|
printf "checking for c compiler... "
|
|
|
|
HAVE_LANG_C=1
|
|
|
|
if [ "${CROSSBUILD}" = 1 ]; then
|
|
|
|
(command -v ${HOST}-${CC} >/dev/null 2>&1)
|
|
|
|
if [ $? = 0 ]; then CC="${HOST}-${CC}"; fi
|
|
|
|
fi
|
|
|
|
echo "main(){}" > test.c
|
2012-02-07 00:51:56 +00:00
|
|
|
(exec ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c >/dev/null 2>&1)
|
2009-03-25 19:53:26 +00:00
|
|
|
if [ $? = 0 ]; then echo ${CC}; else
|
|
|
|
echo no ; HAVE_LANG_C=0
|
|
|
|
do_remove
|
|
|
|
echo "ERROR: ${CC} cannot create executables" >&2 ;
|
|
|
|
exit 1 ; fi
|
2010-01-15 12:02:54 +00:00
|
|
|
printf "checking for dynamic library... "
|
|
|
|
HAVE_LIB_DL=0
|
2013-11-11 11:00:39 +00:00
|
|
|
for OS in gnulinux linux gnu/kfreebsd syllable sunos darwin beos solaris ; do
|
2010-01-15 12:02:54 +00:00
|
|
|
if [ "${HOST_OS}" = "${OS}" ]; then
|
|
|
|
HAVE_LIB_DL=1
|
|
|
|
break;
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
if [ "${HAVE_LIB_DL}" = 1 ]; then
|
|
|
|
DL_LIBS="-ldl"
|
|
|
|
echo "required"
|
|
|
|
else
|
|
|
|
DL_LIBS=""
|
|
|
|
echo "libc"
|
|
|
|
fi
|
2010-01-12 18:57:33 +00:00
|
|
|
printf "checking host endianness... "
|
2011-07-15 00:21:40 +00:00
|
|
|
LIL_ENDIAN=$(printf I|od -to2|awk '{print substr($2,6,1);exit}')
|
2010-01-12 18:57:33 +00:00
|
|
|
if [ "${LIL_ENDIAN}" = 1 ]; then
|
|
|
|
BYTEORDER=1234
|
|
|
|
BIG_ENDIAN=0
|
|
|
|
echo little
|
|
|
|
else
|
|
|
|
BYTEORDER=4321
|
|
|
|
BIG_ENDIAN=1
|
|
|
|
LIL_ENDIAN=0
|
|
|
|
echo big
|
|
|
|
fi
|
|
|
|
|
2009-03-31 00:57:39 +00:00
|
|
|
check_library() {
|
|
|
|
VAR=$1
|
|
|
|
S="$"
|
|
|
|
_REQUIRED=$3
|
|
|
|
_CHKLIB_NAME=$2
|
|
|
|
_CHKLIB_LIBS=$(echo "-l${_CHKLIB_NAME}" | sed 's,\+, -l,g')
|
|
|
|
printf "checking for lib${_CHKLIB_NAME} ... "
|
|
|
|
echo "main(){ }" > test.c
|
2012-02-07 00:51:56 +00:00
|
|
|
eval ${S}${COMPILER} ${CFLAGS} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${_CHKLIB_LIBS} test.c >/dev/null 2>&1
|
2009-03-31 00:57:39 +00:00
|
|
|
if [ $? = 0 ]; then
|
|
|
|
eval ${VAR}=1
|
|
|
|
echo yes
|
|
|
|
else
|
|
|
|
eval ${VAR}=0
|
|
|
|
echo no ; fi }
|
2011-10-18 07:38:20 +00:00
|
|
|
check_library HAVE_LIB_MAGIC magic 0
|
|
|
|
if [ 11 = "$HAVE_LIB_MAGIC$USE_MAGIC" ]; then
|
|
|
|
|
|
|
|
USE_LIB_MAGIC="1"
|
2011-10-18 16:12:17 +00:00
|
|
|
LIBMAGIC="-lmagic"
|
2011-10-18 07:38:20 +00:00
|
|
|
else
|
2011-10-18 16:12:17 +00:00
|
|
|
USE_LIB_MAGIC="0"
|
|
|
|
LIBMAGIC="-lr_magic"; fi
|
2009-03-31 00:57:39 +00:00
|
|
|
check_library HAVE_LIB_EWF ewf 0
|
2012-02-03 00:13:09 +00:00
|
|
|
printf 'checking pkg-config flags for libewf... '
|
|
|
|
tmp=`pkg-config --cflags libewf 2>/dev/null`
|
2012-05-29 23:55:39 +00:00
|
|
|
if [ '!' $? = 0 ]; then echo no ; HAVE_PKGCFG_LIBEWF=0;
|
2012-02-03 00:13:09 +00:00
|
|
|
else
|
|
|
|
EWF_CFLAGS=$tmp;
|
|
|
|
tmp=`pkg-config --libs libewf 2>/dev/null`
|
2012-05-29 23:55:39 +00:00
|
|
|
if [ $? = 0 ]; then
|
2012-02-03 00:13:09 +00:00
|
|
|
echo yes; HAVE_PKGCFG_LIBEWF=1;
|
|
|
|
EWF_LDFLAGS=$tmp; fi; fi
|
|
|
|
if [ "$HAVE_PKGCFG_LIBEWF" = "1" ]; then
|
2012-05-29 22:44:46 +00:00
|
|
|
HAVE_LIB_EWF="1"
|
|
|
|
else
|
|
|
|
HAVE_LIB_EWF="0"; fi
|
2012-02-18 00:49:59 +00:00
|
|
|
if [ "$HAVE_EWF" = "0" ]; then
|
|
|
|
HAVE_LIB_EWF="0"; fi
|
2012-12-14 16:46:33 +00:00
|
|
|
HAVE_LIB_GMP="0"
|
|
|
|
HAVE_GMP="0"
|
2011-07-14 20:14:11 +00:00
|
|
|
check_library HAVE_LIB_SSL ssl 0
|
2011-07-13 17:22:38 +00:00
|
|
|
printf 'checking pkg-config flags for openssl... '
|
|
|
|
tmp=`pkg-config --cflags openssl 2>/dev/null`
|
2012-05-29 23:55:39 +00:00
|
|
|
if [ '!' $? = 0 ]; then echo no ; HAVE_PKGCFG_OPENSSL=0;
|
2011-07-13 17:22:38 +00:00
|
|
|
else
|
|
|
|
SSL_CFLAGS=$tmp;
|
|
|
|
tmp=`pkg-config --libs openssl 2>/dev/null`
|
2012-05-29 23:55:39 +00:00
|
|
|
if [ $? = 0 ]; then
|
2011-07-13 17:22:38 +00:00
|
|
|
echo yes; HAVE_PKGCFG_OPENSSL=1;
|
|
|
|
SSL_LDFLAGS=$tmp; fi; fi
|
2013-03-26 12:50:05 +00:00
|
|
|
if [ ! "$SSL_LDFLAGS" = "" ]; then
|
2012-10-26 00:49:33 +00:00
|
|
|
HAVE_OPENSSL="1"; fi
|
|
|
|
if [ 11 = "$WANT_OPENSSL$HAVE_OPENSSL" ]; then
|
|
|
|
|
|
|
|
HAVE_OPENSSL="1"
|
|
|
|
else
|
|
|
|
HAVE_OPENSSL="0"; fi
|
2011-07-14 20:14:11 +00:00
|
|
|
if [ "$SSL_LDFLAGS" = "" ]; then
|
|
|
|
if [ "$HAVE_LIB_SSL" = "0" ]; then
|
|
|
|
HAVE_OPENSSL="0"
|
|
|
|
else
|
|
|
|
SSL_LDFLAGS="-lssl"; fi; fi
|
2011-07-15 00:21:40 +00:00
|
|
|
if [ "$HAVE_LILEND" = "1" ]; then
|
|
|
|
LIL_ENDIAN="1"; fi
|
|
|
|
if [ "$HAVE_BIGEND" = "1" ]; then
|
|
|
|
LIL_ENDIAN="0"; fi
|
2010-02-03 15:57:44 +00:00
|
|
|
check_library HAVE_LIB_LUA5_1 lua5.1 0
|
2010-02-21 19:49:39 +00:00
|
|
|
if [ "$USEROSTYPE" = "auto" ]; then
|
2010-02-21 19:24:28 +00:00
|
|
|
if [ "$HOST_OS" = "linux" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
|
|
|
else
|
2011-04-13 14:39:44 +00:00
|
|
|
if [ "$HOST_OS" = "gnu" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
2011-04-20 11:56:58 +00:00
|
|
|
HAVE_LIB_DL="1"
|
|
|
|
DL_LIBS="-ldl"
|
2011-04-13 14:39:44 +00:00
|
|
|
else
|
2011-04-13 09:34:27 +00:00
|
|
|
if [ "$HOST_OS" = "gnu/kfreebsd" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
|
|
|
else
|
2010-07-03 01:35:26 +00:00
|
|
|
if [ "$HOST_OS" = "netbsd" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
|
|
|
else
|
|
|
|
if [ "$HOST_OS" = "freebsd" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
|
|
|
else
|
|
|
|
if [ "$HOST_OS" = "openbsd" ]; then
|
|
|
|
USEROSTYPE="gnulinux"
|
|
|
|
else
|
2010-02-21 19:24:28 +00:00
|
|
|
if [ "$HOST_OS" = "darwin" ]; then
|
2011-04-13 14:39:44 +00:00
|
|
|
USEROSTYPE="darwin"; fi; fi; fi; fi; fi; fi; fi; fi
|
2011-04-25 16:11:01 +00:00
|
|
|
if [ "$LIBVERSION" = "xxx" ]; then
|
2011-04-20 11:56:58 +00:00
|
|
|
LIBVERSION="$VERSION"; fi
|
2009-03-25 19:53:26 +00:00
|
|
|
SEDFLAGS=" -e '"
|
|
|
|
COUNT=0
|
|
|
|
for A in ${ENVWORDS} ; do
|
|
|
|
[ "${A}" = VPATH ] && continue
|
|
|
|
[ "${A}" = srcdir ] && continue
|
|
|
|
eval "VAR=\$${A}"
|
|
|
|
VAR="`echo ${VAR} | sed -e 's/\,/\\\,/g'`"
|
|
|
|
[ $COUNT = 10 ] && COUNT=0 && SEDFLAGS="${SEDFLAGS}' -e '"
|
2009-07-16 00:30:20 +00:00
|
|
|
COUNT=$(($COUNT+1))
|
2009-03-25 19:53:26 +00:00
|
|
|
SEDFLAGS="${SEDFLAGS}s,@${A}@,${VAR},g;"
|
|
|
|
done
|
|
|
|
SEDFLAGS="${SEDFLAGS}'"
|
2013-01-23 00:53:32 +00:00
|
|
|
for A in ./config-user.mk libr/include/r_userconf.h pkgcfg/r_io.pc pkgcfg/r_db.pc pkgcfg/r_magic.pc pkgcfg/r_asm.pc pkgcfg/r_bin.pc pkgcfg/r_anal.pc pkgcfg/r_hash.pc pkgcfg/r_cons.pc pkgcfg/r_diff.pc pkgcfg/r_core.pc pkgcfg/r_lang.pc pkgcfg/r_socket.pc pkgcfg/r_debug.pc pkgcfg/r_reg.pc pkgcfg/r_cmd.pc pkgcfg/r_config.pc pkgcfg/r_flags.pc pkgcfg/r_syscall.pc pkgcfg/r_sign.pc pkgcfg/r_util.pc pkgcfg/r_search.pc pkgcfg/r_bp.pc pkgcfg/r_lib.pc pkgcfg/r_parse.pc pkgcfg/r_fs.pc ; do # SUBDIRS
|
2010-01-12 18:57:33 +00:00
|
|
|
if [ -f "${VPATH}/${A}.acr" ]; then
|
2009-03-25 19:53:26 +00:00
|
|
|
SD_TARGET=${A}
|
|
|
|
else
|
|
|
|
if [ -d "${VPATH}/${A}" ]; then
|
|
|
|
SD_TARGET=${A}/Makefile
|
|
|
|
mkdir -p ${A}
|
|
|
|
else
|
|
|
|
echo "ERROR: Cannot find ${VPATH}/${A}.acr" >&2
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
echo "creating ${SD_TARGET}"
|
|
|
|
mkdir -p $(echo ${A} | sed -e "s,/`basename ${A}`$,,g")
|
|
|
|
cat ${VPATH}/${SD_TARGET}.acr | \
|
|
|
|
eval sed -e "s,@VPATH@,${VPATH}/${A},g" ${SEDFLAGS} > ${SD_TARGET}.tmp
|
|
|
|
|
|
|
|
for A in ${ENVWORDS}; do
|
|
|
|
VALUE=`eval echo "$"${A}`
|
2010-01-12 18:57:33 +00:00
|
|
|
if [ "$VALUE" = 0 ]; then ## FALSE
|
2009-03-25 19:53:26 +00:00
|
|
|
MARK="##${A}##"
|
2010-01-12 18:57:33 +00:00
|
|
|
if [ -n "`grep \"${MARK}\" ${SD_TARGET}.tmp`" ]; then
|
2009-03-25 19:53:26 +00:00
|
|
|
mv ${SD_TARGET}.tmp ${SD_TARGET}.tmp2
|
2010-01-12 18:57:33 +00:00
|
|
|
cat ${SD_TARGET}.tmp2 | MARK=$MARK awk 'BEGIN{a=0;}{if($1==ENVIRON["MARK"]){if(a)a=0;else a=1}else{if(!a)print;}}' > ${SD_TARGET}.tmp
|
2009-03-25 19:53:26 +00:00
|
|
|
fi
|
2010-01-12 18:57:33 +00:00
|
|
|
fi
|
2009-03-25 19:53:26 +00:00
|
|
|
done
|
|
|
|
mv ${SD_TARGET}.tmp ${SD_TARGET} && rm -f ${SD_TARGET}.tmp2
|
2012-05-29 23:55:39 +00:00
|
|
|
if [ ! $? = 0 ]; then echo Cannot write target file ; control_c ; fi
|
2009-03-25 19:53:26 +00:00
|
|
|
done
|
|
|
|
|
|
|
|
do_remove
|
2009-03-31 00:57:39 +00:00
|
|
|
echo
|
|
|
|
echo "Final report:"
|
2013-06-11 10:25:56 +00:00
|
|
|
for A in PREFIX HAVE_LIB_EWF HAVE_LIB_GMP HAVE_OPENSSL VERSION USE_LIB_MAGIC DEBUGGER CC USERCC USEROSTYPE LIL_ENDIAN LIBVERSION ; do # REPORT
|
2009-03-31 00:57:39 +00:00
|
|
|
eval VAL="\$${A}"
|
|
|
|
[ -z "${VAL}" ] && VAL="(null)"
|
|
|
|
echo " - ${A} = ${VAL}"
|
|
|
|
done
|