Mercurial > hg > early-roguelike
diff rogue3/acinclude.m4 @ 88:07c4d4883ef2
rogue3: begin porting to autoconf.
Rogue V3 can now be built with './configure && make'. This is
preliminary: 'make install' does not work yet.
author | John "Elwin" Edwards |
---|---|
date | Sat, 24 Aug 2013 13:36:13 -0700 |
parents | |
children | 029c1f5c5588 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rogue3/acinclude.m4 Sat Aug 24 13:36:13 2013 -0700 @@ -0,0 +1,122 @@ +AC_DEFUN([MP_WITH_CURSES], + [AC_ARG_WITH(ncurses, [ --with-ncurses Force the use of ncurses over curses],,) + mp_save_LIBS="$LIBS" + CURSES_LIB="" + if test "$with_ncurses" != yes + then + AC_CACHE_CHECK([for working curses], mp_cv_curses, + [LIBS="$LIBS -lcurses" + AC_TRY_LINK( + [#include <curses.h>], + [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ], + mp_cv_curses=yes, mp_cv_curses=no)]) + if test "$mp_cv_curses" = yes + then + AC_DEFINE(HAVE_CURSES_H, 1, [Define to 1 if libcurses is requested]) + #AC_DEFINE(HAVE_CURSES_H) + CURSES_LIB="-lcurses" + fi + fi + if test ! "$CURSES_LIB" + then + AC_CACHE_CHECK([for working ncurses], mp_cv_ncurses, + [LIBS="$mp_save_LIBS -lncurses" + AC_TRY_LINK( + [#include <ncurses.h>], + [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ], + mp_cv_ncurses=yes, mp_cv_ncurses=no)]) + if test "$mp_cv_ncurses" = yes + then + AC_DEFINE(HAVE_NCURSES_H, 1, [Define to 1 if libncurses is requested]) + CURSES_LIB="-lncurses" + fi + fi + if test ! "$CURSES_LIB" + then + AC_CACHE_CHECK([for working pdcurses], mp_cv_pdcurses, + [LIBS="$mp_save_LIBS -lpdcurses" + AC_TRY_LINK( + [#include <curses.h>], + [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ], + mp_cv_pdcurses=yes, mp_cv_pdcurses=no)]) + if test "$mp_cv_pdcurses" = yes + then + AC_DEFINE(HAVE_CURSES_H, 1, [Define to 1 if libcurses is requested]) + CURSES_LIB="-lpdcurses" + fi + fi + if test ! "$CURSES_LIB" + then + AC_CACHE_CHECK([for working pdcur], mp_cv_pdcur, + [LIBS="$mp_save_LIBS -lpdcur" + AC_TRY_LINK( + [#include <curses.h>], + [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ], + mp_cv_pdcur=yes, mp_cv_pdcur=no)]) + if test "$mp_cv_pdcur" = yes + then + AC_DEFINE(HAVE_CURSES_H, 1, [Define to 1 if libcurses is requested]) + CURSES_LIB="-lpdcur" + fi + fi + if test ! "$CURSES_LIB" + then + AC_CACHE_CHECK([for working peer pdcurses], mp_cv_lpdcurses, + [LIBS="$mp_save_LIBS ../pdcurses/pdcurses.a" + AC_TRY_LINK( + [#include "../pdcurses/curses.h"], + [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ], + mp_cv_lpdcurses=yes, mp_cv_lpdcurses=no)]) + if test "$mp_cv_lpdcurses" = yes + then + AC_DEFINE(HAVE_CURSES_H, 1, [Define to 1 if libcurses is requested]) + CURSES_LIB="../pdcurses/pdcurses.a" + RF_ADDTO(CPPFLAGS,"-I../pdcurses") + fi + fi + AC_CACHE_CHECK([for ESCDELAY variable], + [mc_cv_ncurses_escdelay], + [AC_TRY_LINK([], [ + extern int ESCDELAY; + ESCDELAY = 0; + ], + [mc_cv_ncurses_escdelay=yes], + [mc_cv_ncurses_escdelay=no]) + ]) + if test "$mc_cv_ncurses_escdelay" = yes; then + AC_DEFINE(HAVE_ESCDELAY, 1, + [Define if ncurses has ESCDELAY variable]) + fi + if test ! "$CURSES_LIB" ; then + LIBS="$mp_save_LIBS" + fi +])dnl + +dnl +dnl RF_ADDTO(variable, value) +dnl +dnl Add value to variable +dnl +AC_DEFUN([RF_ADDTO],[ + if test "x$$1" = "x"; then + test "x$silent" != "xyes" && echo " setting $1 to \"$2\"" + $1="$2" + else + apr_addto_bugger="$2" + for i in $apr_addto_bugger; do + apr_addto_duplicate="0" + for j in $$1; do + if test "x$i" = "x$j"; then + apr_addto_duplicate="1" + break + fi + done + if test $apr_addto_duplicate = "0"; then + test "x$silent" != "xyes" && echo " adding \"$i\" to $1" + $1="$$1 $i" + fi + done + fi +])dnl + +