steed/configure

235 lines
6.1 KiB
Plaintext
Raw Permalink Normal View History

2009-11-08 18:52:17 +02:00
#!/bin/bash
2009-11-08 10:29:35 +02:00
echo -n "Checking pkg-config..."
if ! pkg-config --version >/dev/null 2>&1; then
2009-11-09 13:50:58 +02:00
echo "error: no pkg-config in \$PATH."
2009-11-08 10:29:35 +02:00
exit 1
fi
echo "ok"
2009-11-08 17:50:56 +02:00
2010-06-01 21:41:30 +03:00
echo -n "Checking pkg-config --cflags zlib..."
if ! pkg-config --cflags zlib >/dev/null 2>&1; then
2010-06-08 15:01:00 +03:00
if [[ -f /usr/include/zlib.h ]]; then
echo "not found, but /usr/include/zlib.h exists..."
zlib_cflags="x"
zlib_libs=
else
echo "internal"
zlib_cflags=
zlib_libs=
fi
2010-06-01 21:41:30 +03:00
else
echo "system"
2010-06-08 15:01:00 +03:00
zlib_cflags="pkg-config --cflags zlib"
zlib_libs="pkg-config --libs zlib"
2010-06-01 21:41:30 +03:00
fi
2010-06-02 14:33:40 +03:00
echo -n "Checking pkg-config --cflags gtk+-2.0..."
if ! pkg-config --cflags gtk+-2.0 >/dev/null 2>&1; then
echo "no open file dialog"
gtk_cflags=
gtk_libs=
else
echo "yes"
gtk_cflags="pkg-config --cflags gtk+-2.0"
gtk_libs="pkg-config --libs gtk+-2.0"
fi
echo -n "Checking libsoup..."
if ! pkg-config --cflags libsoup-2.4 >/dev/null 2>&1; then
echo "no downloading games"
soup_cflags=
soup_libs=
else
soup_cflags="pkg-config --cflags libsoup-2.4"
soup_libs="pkg-config --libs libsoup-2.4"
fi
2010-06-01 21:41:30 +03:00
2009-11-08 10:40:56 +02:00
echo -n "Checking pkg-config --cflags lua[5.1]..."
2009-11-08 16:51:26 +02:00
if ! pkg-config --cflags lua5.1 >/dev/null 2>&1; then
if ! pkg-config --cflags lua >/dev/null 2>&1; then
2009-11-08 10:40:56 +02:00
echo "failed: no package lua/lua5.1"
2009-11-09 13:50:58 +02:00
echo "Please install lua development package."
2009-11-08 10:29:35 +02:00
exit 1
fi
echo "lua"
2009-11-08 16:51:26 +02:00
lua_cflags="pkg-config --cflags lua"
lua_libs="pkg-config --libs lua"
else
echo "lua5.1"
lua_cflags="pkg-config --cflags lua5.1"
lua_libs="pkg-config --libs lua5.1"
2009-11-08 10:29:35 +02:00
fi
2010-06-01 21:41:30 +03:00
2009-11-08 10:29:35 +02:00
echo -n "Checking sdl-config..."
if ! sdl-config --version >/dev/null 2>&1; then
2009-11-09 13:50:58 +02:00
echo "error: no sdl-config in \$PATH."
echo "Please install sdl, sdl_ttf, sdl_mixer and sdl_image development packages."
2009-11-08 10:29:35 +02:00
exit 1
fi
echo "ok"
2009-11-08 16:51:26 +02:00
2009-11-08 10:29:35 +02:00
echo -n "Checking sdl-config --cflags..."
if ! sdl-config --cflags >/dev/null 2>&1; then
echo "failed."
exit 1
fi
echo "ok"
2009-11-08 17:50:56 +02:00
2009-11-08 10:29:35 +02:00
ops=`$lua_cflags`
ops=$ops" "`$lua_libs`
echo -n "Looking for compiler..."
2010-07-25 12:33:17 +03:00
if ! $CC --version >/dev/null 2>&1; then
if ! cc --version >/dev/null 2>&1; then
if ! gcc --version >/dev/null 2>&1; then
2009-11-09 13:50:58 +02:00
echo "cc, gcc, \$(CC) are not valid compilers... Please export CC for valid one...";
2009-11-08 10:29:35 +02:00
exit 1;
else
2010-07-25 12:33:17 +03:00
cc="gcc";
2009-11-08 10:29:35 +02:00
fi
else
2010-07-25 12:33:17 +03:00
cc="cc"
2009-11-08 10:29:35 +02:00
fi
else
2010-07-25 12:33:17 +03:00
cc=$CC
2009-11-08 10:29:35 +02:00
fi
cat << EOF >/tmp/sdl-test.c
#include <SDL.h>
#include <SDL_image.h>
#include <SDL_ttf.h>
#include <SDL_mutex.h>
#include <SDL_mixer.h>
int main(int argc, char **argv)
{
2009-11-08 10:40:56 +02:00
return 0;
2009-11-08 10:29:35 +02:00
}
EOF
echo $cc
echo -n "Checking test build...("
2009-11-09 19:49:38 +02:00
echo -n $cc /tmp/sdl-test.c $ops `sdl-config --cflags` `sdl-config --libs` -lSDL_ttf -lSDL_mixer -lSDL_image -o /tmp/sdl-test ")..."
2009-11-08 10:46:23 +02:00
if ! $cc /tmp/sdl-test.c $ops `sdl-config --cflags` `sdl-config --libs` -lSDL_ttf -lSDL_mixer -lSDL_image -o /tmp/sdl-test; then
2009-11-09 19:49:38 +02:00
echo "failed".
2009-11-09 13:50:58 +02:00
echo "Please sure if these development packages are installed: sdl, sdl_ttf, sdl_mixer, sdl_image."
2009-11-08 16:33:23 +02:00
rm -f /tmp/sdl-test.c /tmp/sdl-test
2009-11-08 10:29:35 +02:00
exit 1
fi
2009-11-09 19:49:38 +02:00
echo "ok"
2009-11-08 16:33:23 +02:00
rm -f /tmp/sdl-test.c /tmp/sdl-test
2010-07-24 20:51:08 +03:00
cat << EOF >/tmp/iconv-test.c
#include <iconv.h>
int main(int argc, char **argv)
{
iconv_open("","");
}
EOF
echo $cc
echo -n "Checking iconv...("
echo -n "$cc /tmp/iconv-test.c -o iconv-test)..."
2010-07-28 15:18:14 +03:00
if ! $cc /tmp/iconv-test.c -o /tmp/iconv-test; then
if ! $cc /tmp/iconv-test.c -liconv -o /tmp/iconv-test; then
2010-07-24 20:51:08 +03:00
echo -n "failed. Build without iconv.".
else
2010-07-25 12:33:17 +03:00
CFLAGS="$CFLAGS -D_HAVE_ICONV"
LDFLAGS="$LDFLAGS -liconv"
2010-07-24 20:51:08 +03:00
echo "ok, with -liconv"
fi
else
2010-07-25 12:33:17 +03:00
CFLAGS="$CFLAGS -D_HAVE_ICONV"
2010-07-24 20:51:08 +03:00
echo "ok"
fi
rm -f /tmp/iconv-test.c /tmp/iconv-test
2009-11-08 10:37:14 +02:00
if ! make clean >/dev/null 2>&1; then
2009-11-08 10:43:18 +02:00
echo " * Warning!!! Can not do make clean..."
2009-11-08 10:37:14 +02:00
fi
2009-11-08 10:29:35 +02:00
echo -n "Generating config.make..."
2009-11-08 10:35:41 +02:00
echo "# autamatically generated by configure.sh" >config.make
2010-07-24 20:51:08 +03:00
2010-07-25 12:33:17 +03:00
if [[ ! -z "$CFLAGS" ]]; then
echo "EXTRA_CFLAGS+=$CFLAGS" >> config.make
2010-07-24 20:51:08 +03:00
fi
2010-07-25 12:33:17 +03:00
if [[ ! -z "$LDFLAGS" ]]; then
echo "EXTRA_LDFLAGS+=$LDFLAGS" >> config.make
2010-07-24 20:51:08 +03:00
fi
2010-06-02 14:33:40 +03:00
if [[ ! -z "$gtk_cflags" ]]; then
2010-06-02 15:41:36 +03:00
echo "EXTRA_CFLAGS+=-D_USE_GTK -D_USE_BROWSE" >> config.make
2010-06-02 14:33:40 +03:00
echo "EXTRA_CFLAGS+=\$(shell $gtk_cflags)" >> config.make
echo "EXTRA_LDFLAGS+=\$(shell $gtk_libs)" >> config.make
fi
if [[ ! -z "$soup_cflags" ]]; then
echo "EXTRA_CFLAGS+=-D_USE_HTTP \$(shell $soup_cflags)" >> config.make
echo "EXTRA_LDFLAGS+=\$(shell $soup_libs)" >> config.make
fi
2010-06-01 21:41:30 +03:00
if [[ -z "$zlib_cflags" ]]; then
echo "SUBDIRS=src/zlib" >> config.make
echo "ZLIB_CFLAGS=-I../zlib" >> config.make
echo "ZLIB_LFLAGS=../zlib/libz.a" >> config.make
2010-06-08 15:01:00 +03:00
elif [ "$zlib_cflags" = "x" ]; then
echo "ZLIB_CFLAGS=" >> config.make
2010-06-09 20:47:03 +03:00
echo "ZLIB_LFLAGS=-lz" >> config.make
2010-06-01 21:41:30 +03:00
else
echo "ZLIB_CFLAGS=\$(shell $zlib_cflags)" >> config.make
echo "ZLIB_LFLAGS=\$(shell $zlib_libs)" >> config.make
fi
2009-11-08 10:35:41 +02:00
echo "LUA_CFLAGS=\$(shell $lua_cflags)" >> config.make
2009-11-08 10:29:35 +02:00
echo "LUA_LFLAGS=\$(shell $lua_libs)" >> config.make
echo "SDL_CFLAGS=\$(shell sdl-config --cflags)" >> config.make
echo "SDL_LFLAGS=\$(shell sdl-config --libs) -lSDL_ttf -lSDL_mixer -lSDL_image" >> config.make
echo "ok"
2009-11-09 13:50:58 +02:00
echo -n "Choose installation mode. Standalone(1) or system(2) [1]: "
2009-11-08 10:29:35 +02:00
read ans
2009-11-08 17:42:57 +02:00
if [ "x$ans" = "x1" -o "x$ans" = "x" ]; then
2009-11-08 16:51:26 +02:00
echo " * Standalone version"
2009-11-08 10:29:35 +02:00
rm -f Rules.make
2009-11-09 13:02:40 +02:00
ln -sf Rules.make.standalone Rules.make
2011-09-03 13:41:22 +03:00
rm -f steed
ln -sf src/sdl-instead/sdl-instead steed
2009-11-09 13:50:58 +02:00
echo "Ok. We are ready to build. Use these commands:"
echo " \$ make"
2011-09-03 13:41:22 +03:00
echo " \$ ./steed"
2009-11-08 17:42:57 +02:00
elif [ "x$ans" = "x2" ]; then
2009-11-08 17:49:20 +02:00
echo -n "Enter prefix path [/usr/local]: "
2009-11-08 16:51:26 +02:00
read ans
2009-11-08 17:42:57 +02:00
if [ "x$ans" = "x" ]; then
2009-11-08 16:51:26 +02:00
prefix="/usr/local"
else
prefix="$ans"
fi
2009-11-08 10:29:35 +02:00
rm -f Rules.make
ln -s Rules.make.system Rules.make
2009-11-08 16:51:26 +02:00
2009-11-08 17:49:51 +02:00
echo " * System version with prefix: $prefix"
2009-11-08 17:14:46 +02:00
echo "PREFIX=$prefix" >> config.make
2009-11-08 16:51:26 +02:00
echo "BIN=\$(DESTDIR)\$(PREFIX)/bin/" >> config.make
2010-06-08 15:01:00 +03:00
echo "DATAPATH=\$(DESTDIR)\$(PREFIX)/share/instead" >> config.make
echo "STEADPATH=\$(DATAPATH)/stead" >> config.make
echo "THEMESPATH=\$(DATAPATH)/themes" >> config.make
echo "GAMESPATH=\$(DATAPATH)/games" >> config.make
2009-11-08 16:51:26 +02:00
echo "ICONPATH=\$(DESTDIR)\$(PREFIX)/share/pixmaps" >> config.make
echo "DOCPATH=\$(DESTDIR)\$(PREFIX)/share/doc/instead" >> config.make
2011-03-07 15:39:06 +02:00
echo "LANGPATH=\$(DATAPATH)/lang" >> config.make
2009-11-08 16:51:26 +02:00
echo "MANPATH=\$(DESTDIR)\$(PREFIX)/share/man/man6" >> config.make
2009-11-09 13:50:58 +02:00
echo "Ok. We are ready to build and install. Use these commands:"
echo " \$ make"
echo " \$ sudo make install"
2011-09-03 13:41:22 +03:00
echo " \$ steed"
2009-11-08 10:29:35 +02:00
else
2009-11-08 10:33:40 +02:00
echo "Huh!!! Wrong answer."
2009-11-08 10:29:35 +02:00
exit 1
fi
2009-11-08 16:51:26 +02:00
2009-11-09 13:50:58 +02:00
echo " Enjoy..."