Use 'ao-dbg' instead of 's51' to communicate with TeleMetrum
[fw/sdcc] / sdccconf_in.h
index 04c60ac0e9efecaecef0421c0e1aa0b3a8d38e43..cd08da4a9ce3afb0e5ee28ad79705a445f6736cf 100644 (file)
@@ -39,8 +39,6 @@
 #undef STD_DS400_LIB
 #undef STD_XA51_LIB
 
-#undef HAVE_SYS_SOCKET_H
-
 #undef HAVE_STRERROR
 #undef HAVE_VSNPRINTF
 #undef HAVE_SNPRINTF
 #undef TYPE_BYTE
 #undef TYPE_WORD
 #undef TYPE_DWORD
-#define TYPE_UBYTE unsigned TYPE_BYTE
-#define TYPE_UWORD unsigned TYPE_WORD
-#define TYPE_UDWORD unsigned TYPE_DWORD
+#undef TYPE_UBYTE
+#undef TYPE_UWORD
+#undef TYPE_UDWORD
 
-#undef WORDS_BIGENDIAN
+/*
+ * find out the endianess of host machine
+ * in order to be able to make Mac OS X unified binaries
+ */
+/* This is tricky since these might be defined with a blank replacement list */
+/* such as on SPARC Solaris. However, configure gets it right, so it's ok */
+/* that (_BIG_ENDIAN+0) is false, even though it is defined. */
+#if (__BIG_ENDIAN__+0) || (_BIG_ENDIAN+0)
+/* 1) trust the compiler */
+# define WORDS_BIGENDIAN 1
+#elif __LITTLE_ENDIAN__
+/* do nothing */
+#elif (defined BYTE_ORDER && defined BIG_ENDIAN && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN && LITTLE_ENDIAN)
+/* 2) trust the header files */
+# if BYTE_ORDER == BIG_ENDIAN 
+#   define WORDS_BIGENDIAN 1
+# endif
+#else 
+/* 3) trust the configure; this actually doesn't work for unified Mac OS X binaries :-( */
+# undef BUILD_WORDS_BIGENDIAN
+# if (defined BUILD_WORDS_BIGENDIAN && BUILD_WORDS_BIGENDIAN)
+#   define WORDS_BIGENDIAN  1
+# endif
+/* 4) assume that host is a little endian machine */
+#endif
 
 #undef OPT_DISABLE_MCS51
 #undef OPT_DISABLE_GBZ80
@@ -66,7 +88,9 @@
 #undef OPT_DISABLE_DS400
 #undef OPT_DISABLE_TININative
 #undef OPT_DISABLE_PIC
+#undef OPT_DISABLE_PIC16
 #undef OPT_DISABLE_XA51
+#undef OPT_DISABLE_HC08
 
 #undef OPT_ENABLE_LIBGC