* Removed svn:executable property from non-executable files
[fw/sdcc] / configure.in
old mode 100755 (executable)
new mode 100644 (file)
index 993a352..eb39cc1
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-AC_PREREQ(2.54)
+AC_PREREQ(2.60)
 AC_INIT
 AC_CONFIG_SRCDIR([Makefile.in])
 AC_CONFIG_HEADER(sdccconf.h:sdccconf_in.h)
@@ -38,17 +38,21 @@ sdcc_cv_versionp=$VERSIONP
 # Required programs
 # ===========================================================================
 AC_PROG_CC
-AC_PROG_CXX
 AC_PROG_CPP
 AC_PROG_INSTALL
 AC_PROG_RANLIB
-AC_PROG_LEX
-AC_PROG_YACC
 AC_CHECK_PROG(AUTOCONF, autoconf, autoconf, :)
 AC_CHECK_PROG(STRIP, strip, strip, :)
 AC_CHECK_PROG(AS, as, as, :)
 AC_CHECK_PROG(CP, cp, cp, :)
 
+dnl Don't use AC_PROG_LEX
+dnl LEXLIB is not useful in gcc.
+AC_CHECK_PROGS(LEX, flex lex, :)
+
+dnl Don't use AC_PROG_YACC
+AC_CHECK_PROGS(YACC, 'bison -y' byacc yacc, :)
+
 AC_DEFUN(SDCC_REQUIRE_PROG,
 [if test "$1" = ":"; then
   AC_MSG_ERROR([Cannot find required program $2.])
@@ -56,20 +60,9 @@ AC_DEFUN(SDCC_REQUIRE_PROG,
 ])
 
 SDCC_REQUIRE_PROG($YACC, bison)
-SDCC_REQUIRE_PROG($LEX, lex)
-
-AC_LANG([C])
-
-
-# Checking for header files.
-# ===========================================================================
-AC_CHECK_HEADERS(sys/socket.h)
-
+SDCC_REQUIRE_PROG($LEX, flex)
 
-# Checking for functions/libs
-# ===========================================================================
-AC_CHECK_LIB(socket,socket)
-AC_CHECK_LIB(nsl,xdr_short)
+AC_LANG_C
 
 
 # Checking for functions
@@ -344,30 +337,36 @@ AC_CHECK_SIZEOF(char)
 AC_CHECK_SIZEOF(short)
 AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(long)
+AC_C_CHAR_UNSIGNED
 
 type_name()
 {
-    if expr "$ac_cv_sizeof_char" '>=' "$1" >/dev/null; then
-       echo "char"
-       exit
-    fi
-    if expr "$ac_cv_sizeof_short" '>=' "$1" >/dev/null; then
-       echo "short"
-       exit
-    fi
-    if expr "$ac_cv_sizeof_int" '>=' "$1" >/dev/null; then
-       echo "int"
-       exit
-    fi
-    if expr "$ac_cv_sizeof_long" '>=' "$1" >/dev/null; then
-       echo "long"
-       exit
-    fi
+  if expr "$ac_cv_sizeof_char" '>=' "$1" >/dev/null; then
+      echo "char"
+    exit
+  fi
+  if expr "$ac_cv_sizeof_short" '>=' "$1" >/dev/null; then
+    echo "short"
+    exit
+  fi
+  if expr "$ac_cv_sizeof_int" '>=' "$1" >/dev/null; then
+    echo "int"
+    exit
+  fi
+  if expr "$ac_cv_sizeof_long" '>=' "$1" >/dev/null; then
     echo "long"
+    exit
+  fi
+  echo "long"
 }
 
 AC_MSG_CHECKING(type name for byte)
-TYPE_BYTE=`type_name 1`
+TYPE_CHAR=`type_name 1`
+if test "$ac_cv_c_char_unsigned" = "yes"; then
+  TYPE_BYTE="signed $TYPE_CHAR"
+else
+  TYPE_BYTE=$TYPE_CHAR
+fi
 AC_MSG_RESULT($TYPE_BYTE)
 AC_MSG_CHECKING(type name for word)
 TYPE_WORD=`type_name 2`
@@ -375,10 +374,15 @@ AC_MSG_RESULT($TYPE_WORD)
 AC_MSG_CHECKING(type name for dword)
 TYPE_DWORD=`type_name 4`
 AC_MSG_RESULT($TYPE_DWORD)
+
 AC_DEFINE_UNQUOTED(TYPE_BYTE,  $TYPE_BYTE)
 AC_DEFINE_UNQUOTED(TYPE_WORD,  $TYPE_WORD)
 AC_DEFINE_UNQUOTED(TYPE_DWORD, $TYPE_DWORD)
 
+AC_DEFINE_UNQUOTED(TYPE_UBYTE,  unsigned $TYPE_CHAR)
+AC_DEFINE_UNQUOTED(TYPE_UWORD,  unsigned $TYPE_WORD)
+AC_DEFINE_UNQUOTED(TYPE_UDWORD, unsigned $TYPE_DWORD)
+
 AC_C_BIGENDIAN
 
 # Set standard installation paths
@@ -589,25 +593,20 @@ AC_DO_DISABLER(ucsim,      UCSIM,      [Disables configuring and building of ucs
 AC_DO_DISABLER(device-lib, DEVICE_LIB, [Disables building device libraries])
 AC_DO_DISABLER(packihx,    PACKIHX,    [Disables building packihx])
 AC_DO_DISABLER(sdcpp,      SDCPP,      [Disables building sdcpp])
+AC_DO_DISABLER(sdcdb,      SDCDB,      [Disables building sdcdb])
 
 AC_DO_ENABLER(doc,   DOC,   [Enables building the documentation])
 if test $OPT_ENABLE_DOC = 1; then
   AC_CHECK_PROG(LYX,        lyx,        lyx, :)
-#  AC_CHECK_PROG(LATEX,      latex,      latex, :)
   AC_CHECK_PROG(LATEX2HTML, latex2html, latex2html, :)
   AC_CHECK_PROG(PDFLATEX,   pdflatex,   pdflatex, :)
   AC_CHECK_PROG(PDFOPT,     pdfopt,     pdfopt, :)
-#  AC_CHECK_PROG(DVIPDF,     dvipdf,     dvipdf, :)
-#  AC_CHECK_PROG(DVIPS,      dvips,      dvips, :)
   AC_CHECK_PROG(MAKEINDEX,  makeindex,  makeindex, :)
 
   SDCC_REQUIRE_PROG($LYX,        lyx)
-#  SDCC_REQUIRE_PROG($LATEX,      latex)
   SDCC_REQUIRE_PROG($LATEX2HTML, latex2html)
   SDCC_REQUIRE_PROG($PDFLATEX,   pdflatex)
   SDCC_REQUIRE_PROG($PDFOPT,     pdfopt)
-#  SDCC_REQUIRE_PROG($DVIPDF,     dvipdf)
-#  SDCC_REQUIRE_PROG($DVIPS,      dvips)
   SDCC_REQUIRE_PROG($MAKEINDEX,  makeindex)
 fi
 
@@ -630,6 +629,7 @@ mv ports ports.build
 test $OPT_DISABLE_SDCPP   = 0 && AC_CONFIG_SUBDIRS(support/cpp2)
 test $OPT_DISABLE_PACKIHX = 0 && AC_CONFIG_SUBDIRS(support/packihx)
 test $OPT_DISABLE_UCSIM   = 0 && AC_CONFIG_SUBDIRS(sim/ucsim)
+test $OPT_DISABLE_SDCDB   = 0 && AC_CONFIG_SUBDIRS(debugger/mcs51)
 AC_CONFIG_FILES([doc/Makefile])
 
 test $OPT_DISABLE_AVR = 0 && AC_CONFIG_FILES([src/avr/Makefile])
@@ -646,14 +646,15 @@ fi
 
 if test $OPT_DISABLE_HC08 = 0; then
   AC_CONFIG_FILES([src/hc08/Makefile
-                   as/hc08/Makefile])
+                   as/hc08/Makefile
+                   as/link/hc08/Makefile])
   test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_FILES([device/lib/hc08/Makefile])
 fi
 
 if test $OPT_DISABLE_MCS51 = 0; then
   AC_CONFIG_FILES([src/mcs51/Makefile
                    as/mcs51/Makefile
-                   debugger/mcs51/Makefile])
+                   as/link/mcs51/Makefile])
   test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_FILES([device/lib/mcs51/Makefile
                                                        device/lib/small/Makefile
                                                        device/lib/medium/Makefile
@@ -675,8 +676,8 @@ if test $OPT_DISABLE_Z80 = 0; then
   AC_CONFIG_FILES([src/z80/Makefile
                    as/Makefile
                    as/z80/Makefile
-                   link/Makefile
-                   link/z80/Makefile])
+                   as/link/Makefile
+                   as/link/z80/Makefile])
   test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_FILES([device/lib/z80/Makefile
                                                        device/lib/gbz80/Makefile])
 fi
@@ -729,6 +730,7 @@ sdcc ${VERSION} is now configured for
     ds400               ${enable_ds400_port}
     gbz80               ${enable_gbz80_port}
     hc08                ${enable_hc08_port}
+    mcs51               ${enable_mcs51_port}
     pic                 ${enable_pic_port}
     pic16               ${enable_pic16_port}
     xa51                ${enable_xa51_port}
@@ -738,6 +740,7 @@ sdcc ${VERSION} is now configured for
   Disable ucsim:        ${OPT_DISABLE_UCSIM}
   Disable device lib:   ${OPT_DISABLE_DEVICE_LIB}
   Disable sdcpp:        ${OPT_DISABLE_SDCPP}
+  Disable sdcdb:        ${OPT_DISABLE_SDCDB}
   Enable documentation: ${OPT_ENABLE_DOC}
   Enable libgc:         ${OPT_ENABLE_LIBGC}
 
@@ -749,6 +752,7 @@ sdcc ${VERSION} is now configured for
 
     prefix:             ${prefix}
     datadir:            ${datadir}
+    datarootdir:        ${datarootdir}
 
   Search paths (incomplete, see manual for all search paths):
     binary files:       \$SDCC_HOME${binPath}