micropeak: Compile for java 6
[fw/altos] / configure.ac
index 28a673c53b12ecd189a776870736fb227112b3e3..b92e06a9af6d5696b2864a077269379526bf0036 100644 (file)
@@ -18,7 +18,7 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([altos], 1.2.9.3)
+AC_INIT([altos], 1.3)
 AC_CONFIG_SRCDIR([src/core/ao.h])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE
@@ -26,7 +26,6 @@ AM_MAINTAINER_MODE
 VERSION_DASH=`echo $VERSION | sed 's/\./-/g'`
 AC_SUBST(VERSION_DASH)
 
-
 dnl ==========================================================================
 dnl Java library versions
 
@@ -239,6 +238,27 @@ fi
 AC_SUBST(HAVE_ARM_CC)
 AC_SUBST(ARM_CC)
 
+if test -d pdclib -a x"$HAVE_ARM_CC" = xyes; then
+       PDCLIB_ROOT='$(TOPDIR)/../pdclib-root'
+       PDCLIB_INCLUDES='-I$(TOPDIR)/../pdclib-root/include'
+       PDCLIB_LIBS_M0='-L$(TOPDIR)/../pdclib-root/lib -lpdclib-cortex-m0'
+       PDCLIB_LIBS_M3='-L$(TOPDIR)/../pdclib-root/lib -lpdclib-cortex-m3'
+       HAVE_PDCLIB=yes
+else
+       PDCLIB_INCLUDES=''
+       PDCLIB_LIBS_M0='-lpdclib-cortex-m0'
+       PDCLIB_LIBS_M3='-lpdclib-cortex-m3'
+       HAVE_PDCLIB=no
+fi
+
+AM_CONDITIONAL(PDCLIB, [test x$HAVE_PDCLIB = xyes])
+
+AC_SUBST(PDCLIB_INCLUDES)
+AC_SUBST(PDCLIB_LIBS_M0)
+AC_SUBST(PDCLIB_LIBS_M3)
+AC_SUBST(PDCLIB_ROOT)
+AC_SUBST(HAVE_PDCLIB)
+
 if test "x$HAVE_ARM_CC" = "xyes"; then
        save_CC="$CC"
        save_CFLAGS="$CFLAGS"
@@ -254,10 +274,6 @@ if test "x$HAVE_ARM_CC" = "xyes"; then
                          [HAVE_ARM_M0_CC=no])
         AC_MSG_RESULT([$HAVE_ARM_M0_CC])
 
-       AC_CHECK_LIB(pdclib-cortex-m0,memcpy,
-                    [],
-                    [HAVE_ARM_M0_CC=no])
-
        CFLAGS="-mthumb -mcpu=cortex-m3"
        AC_MSG_CHECKING([if ]$ARM_CC[ supports cortex-m3])
        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int i;])],
@@ -265,9 +281,15 @@ if test "x$HAVE_ARM_CC" = "xyes"; then
                          [HAVE_ARM_M3_CC=no])
         AC_MSG_RESULT([$HAVE_ARM_M3_CC])
 
-       AC_CHECK_LIB(pdclib-cortex-m3,memcpy,
-                    [],
-                    [HAVE_ARM_M3_CC=no])
+       if test x$HAVE_PDCLIB != xyes; then
+               AC_CHECK_LIB(pdclib-cortex-m0,memcpy,
+                            [],
+                            [HAVE_ARM_M0_CC=no])
+
+               AC_CHECK_LIB(pdclib-cortex-m3,memcpy,
+                            [],
+                            [HAVE_ARM_M3_CC=no])
+        fi
 
        AC_LANG_POP([C])
        LIBS="$save_LIBS"
@@ -335,6 +357,7 @@ else
        save_LIBS="$LIBS"
 
        CC="$with_avr_cc"
+       CFLAGS="-mmcu=attiny85"
        AC_LANG_PUSH([C])
        AC_MSG_CHECKING([if ]$with_avr_cc[ can link programs])
        AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
@@ -364,16 +387,50 @@ if test "x$HAVE_NICKLE" = "xno"; then
        AC_MSG_ERROR([Please install nickle to build AltOs])
 fi
 
-AC_CHECK_LIB(readline, readline)
+AC_ARG_WITH([readline],
+           [AS_HELP_STRING([--with-readline],
+                             [enable readline functionality in ao-dbg @<:@default=auto@:>@])],
+             [],
+             [with_readline=auto])
+                             
+LIBREADLINE_LIBS=
+
+if test x"$with_readline" != "xno"; then
+       AC_CHECK_LIB([readline], [main],
+                      [AC_SUBST([LIBREADLINE], ["-lreadline -lncurses"])
+                      AC_DEFINE([HAVE_LIBREADLINE], [1],
+                         [Define if you have libreadline])],
+                     [if test "x$with_readline" != xauto; then
+                        AC_MSG_ERROR([--with-readline was given, but test for readline failed])
+                      fi],
+                      -lncurses)
+fi
 
 PKG_CHECK_MODULES([LIBUSB], [libusb-1.0])
 
 AC_CHECK_HEADERS(libelf.h libelf/libelf.h, [break])
 AC_CHECK_HEADERS(gelf.h libelf/gelf.h, [break])
 
-PKG_CHECK_MODULES([LIBSTLINK], [stlink], [HAVE_STLINK=yes], [HAVE_STLINK=no])
+AC_ARG_WITH([stlink],
+           [AS_HELP_STRING([--with-stlink],
+                           [Build tools that use the stlink library (default: auto)])],
+           [],
+           [with_stlink=auto])
+
+if test x"$with_stlink" != "xno"; then
+       PKG_CHECK_MODULES([STLINK], [stlink], [HAVE_STLINK=yes], [HAVE_STLINK=no])
+       if test x"$HAVE_STLINK" = "xno" -a x"$with_stlink" != "xauto"; then
+               AC_MSG_ERROR([--with-stlink was given, but stlink was not found])
+       fi
+else
+       HAVE_STLINK=no
+fi
+
+if test x"$HAVE_STLINK" = "xyes"; then
+       AC_DEFINE(HAVE_STLINK,1,[Using STlink library])
+fi
 
-AM_CONDITIONAL([LIBSTLINK], [test x$HAVE_STLINK != xno])
+AM_CONDITIONAL([LIBSTLINK], [test x$HAVE_STLINK == xyes])
 
 AC_OUTPUT([
 Makefile
@@ -405,6 +462,9 @@ ao-tools/ao-sky-flash/Makefile
 ao-tools/ao-dumpflash/Makefile
 ao-tools/ao-edit-telem/Makefile
 ao-tools/ao-dump-up/Makefile
+ao-tools/ao-elftohex/Makefile
+ao-tools/ao-usbload/Makefile
+ao-tools/ao-flash/Makefile
 ao-utils/Makefile
 src/Version
 ])
@@ -422,6 +482,7 @@ echo "    AVR compiler................: ${AVR_CC} ${AVR_OBJCOPY}"
 echo "    AVR support.................: ${HAVE_AVR_CC}"
 echo "    Android support.............: ${HAVE_ANDROID_SDK}"
 echo "    STlink support..............: ${HAVE_STLINK}"
+echo "    Local pdclib................: ${HAVE_PDCLIB}"
 echo ""
 echo "  Java paths"
 echo "    freetts.....................: ${FREETTS}"