diff --git a/moo/configure b/moo/configure index 1be8dc4..8abe074 100755 --- a/moo/configure +++ b/moo/configure @@ -848,6 +848,7 @@ with_ltdl_include with_ltdl_lib enable_ltdl_install enable_debug +enable_unicode enable_cxx enable_dynamic_module enable_static_module @@ -1502,6 +1503,8 @@ Optional Features: --disable-libtool-lock avoid locking (might break parallel builds) --enable-ltdl-install install libltdl --enable-debug build the library in the debug mode (default. no) + --enable-unicode Use the unicode character type as the default + character type (default. yes) --enable-cxx build the library for C++ if a C++ compiler is available (default. yes) --enable-dynamic-module enable dynamic module capability(default. yes) @@ -22518,6 +22521,22 @@ $as_echo "#define MOO_BUILD_RELEASE 1" >>confdefs.h fi + +# Check whether --enable-unicode was given. +if test "${enable_unicode+set}" = set; then : + enableval=$enable_unicode; enable_unicode=$enableval +else + enable_unicode=yes + +fi + +if test "${enable_unicode}" = "yes" +then + +$as_echo "#define MOO_ENABLE_UNICODE 1" >>confdefs.h + +fi + # Check whether --enable-cxx was given. if test "${enable_cxx+set}" = set; then : enableval=$enable_cxx; enable_cxx_is=$enableval @@ -22526,7 +22545,6 @@ else fi - test "${HAVE_CXX}" = "yes" || enable_cxx_is="no" test "${ax_cv_cxx_have_std_namespace}" = "yes" || enable_cxx_is="no" @@ -22552,7 +22570,7 @@ test "${enable_shared}" = "no" && enable_dynamic_module_is="no" if test "${enable_dynamic_module_is}" = "yes" then -$as_echo "#define MOO_ENABLE_DYNAMIC_MODULE /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_DYNAMIC_MODULE 1" >>confdefs.h fi if test "${enable_dynamic_module_is}" = "yes"; then @@ -22577,7 +22595,7 @@ test "${enable_shared}" = "no" -a "${enable_static}" = "yes" && enable_static_mo if test "${enable_static_module_is}" = "yes" then -$as_echo "#define MOO_ENABLE_STATIC_MODULE /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_STATIC_MODULE 1" >>confdefs.h fi if test "${enable_static_module_is}" = "yes"; then @@ -22623,7 +22641,7 @@ fi if test "${enable_mod_con_is}" = "yes" then -$as_echo "#define MOO_ENABLE_MOD_CON /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_MOD_CON 1" >>confdefs.h fi if test "${enable_mod_con_is}" = "yes"; then @@ -22646,7 +22664,7 @@ fi if test "${enable_mod_ffi_is}" = "yes" then -$as_echo "#define MOO_ENABLE_MOD_FFI /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_MOD_FFI 1" >>confdefs.h fi if test "${enable_mod_ffi_is}" = "yes"; then @@ -22669,7 +22687,7 @@ fi if test "${enable_mod_sck_is}" = "yes" then -$as_echo "#define MOO_ENABLE_MOD_SCK /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_MOD_SCK 1" >>confdefs.h fi if test "${enable_mod_sck_is}" = "yes"; then @@ -22692,7 +22710,7 @@ fi if test "${enable_mod_x11_is}" = "yes" then -$as_echo "#define MOO_ENABLE_MOD_X11 /**/" >>confdefs.h +$as_echo "#define MOO_ENABLE_MOD_X11 1" >>confdefs.h fi if test "${enable_mod_x11_is}" = "yes"; then diff --git a/moo/configure.ac b/moo/configure.ac index 30f699c..1fd2036 100644 --- a/moo/configure.ac +++ b/moo/configure.ac @@ -628,8 +628,10 @@ AC_C_BIGENDIAN( [AC_DEFINE([MOO_ENDIAN_LITTLE],[],[Little Endian])], [AC_DEFINE([MOO_ENDIAN_UNKNOWN],[],[Unknown Endian])]) -AC_ARG_ENABLE([debug], [AS_HELP_STRING([--enable-debug],[build the library in the debug mode (default. no)])], - enable_debug_is=$enableval,enable_debug_is=no) +AC_ARG_ENABLE([debug], + [AS_HELP_STRING([--enable-debug],[build the library in the debug mode (default. no)])], + enable_debug_is=$enableval, + enable_debug_is=no) if test "$enable_debug_is" = "yes" then [CFLAGS="$CFLAGS -g -D_DEBUG -UNDEBUG -U_FORTIFY_SOURCE"] @@ -643,12 +645,22 @@ else AC_SUBST(BUILD_MODE, "release") fi + +AC_ARG_ENABLE([unicode], + [AS_HELP_STRING([--enable-unicode],[Use the unicode character type as the default character type (default. yes)])], + enable_unicode=$enableval, + enable_unicode=yes +) +if test "${enable_unicode}" = "yes" +then + AC_DEFINE([MOO_ENABLE_UNICODE],[1],[Use the unicode character type as the default character type]) +fi + AC_ARG_ENABLE([cxx], [AS_HELP_STRING([--enable-cxx],[build the library for C++ if a C++ compiler is available (default. yes)])], enable_cxx_is=$enableval, enable_cxx_is=yes ) - dnl disable c++ if no c++ compiler was found test "${HAVE_CXX}" = "yes" || enable_cxx_is="no" dnl disable c++ if the compiler is too old. @@ -666,7 +678,7 @@ test "${enable_shared}" = "no" && enable_dynamic_module_is="no" if test "${enable_dynamic_module_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_DYNAMIC_MODULE],[],[enable dynamic module capability]) + AC_DEFINE([MOO_ENABLE_DYNAMIC_MODULE],[1],[enable dynamic module capability]) fi AM_CONDITIONAL(ENABLE_DYNAMIC_MODULE, test "${enable_dynamic_module_is}" = "yes") @@ -680,7 +692,7 @@ test "${enable_shared}" = "no" -a "${enable_static}" = "yes" && enable_static_mo if test "${enable_static_module_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_STATIC_MODULE],[],[link modules statically into the main library]) + AC_DEFINE([MOO_ENABLE_STATIC_MODULE],[1],[link modules statically into the main library]) fi AM_CONDITIONAL(ENABLE_STATIC_MODULE, test "${enable_static_module_is}" = "yes") @@ -704,7 +716,7 @@ AC_ARG_ENABLE([mod-con], ) if test "${enable_mod_con_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_MOD_CON],[],[build mod/con]) + AC_DEFINE([MOO_ENABLE_MOD_CON],[1],[build mod/con]) fi AM_CONDITIONAL(ENABLE_MOD_CON, test "${enable_mod_con_is}" = "yes") @@ -716,7 +728,7 @@ AC_ARG_ENABLE([mod-ffi], ) if test "${enable_mod_ffi_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_MOD_FFI],[],[build mod/ffi]) + AC_DEFINE([MOO_ENABLE_MOD_FFI],[1],[build mod/ffi]) fi AM_CONDITIONAL(ENABLE_MOD_FFI, test "${enable_mod_ffi_is}" = "yes") @@ -728,7 +740,7 @@ AC_ARG_ENABLE([mod-sck], ) if test "${enable_mod_sck_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_MOD_SCK],[],[build mod/sck]) + AC_DEFINE([MOO_ENABLE_MOD_SCK],[1],[build mod/sck]) fi AM_CONDITIONAL(ENABLE_MOD_SCK, test "${enable_mod_sck_is}" = "yes") @@ -740,7 +752,7 @@ AC_ARG_ENABLE([mod-x11], ) if test "${enable_mod_x11_is}" = "yes" then - AC_DEFINE([MOO_ENABLE_MOD_X11],[],[build mod/x11]) + AC_DEFINE([MOO_ENABLE_MOD_X11],[1],[build mod/x11]) fi AM_CONDITIONAL(ENABLE_MOD_X11, test "${enable_mod_x11_is}" = "yes") diff --git a/moo/lib/moo-cfg.h.in b/moo/lib/moo-cfg.h.in index 3f2d9c4..ab74a1e 100644 --- a/moo/lib/moo-cfg.h.in +++ b/moo/lib/moo-cfg.h.in @@ -413,6 +413,9 @@ /* link modules statically into the main library */ #undef MOO_ENABLE_STATIC_MODULE +/* Use the unicode character type as the default character type */ +#undef MOO_ENABLE_UNICODE + /* Big Endian */ #undef MOO_ENDIAN_BIG diff --git a/moo/lib/moo-cmn.h b/moo/lib/moo-cmn.h index 0f2f2fc..06c11df 100644 --- a/moo/lib/moo-cmn.h +++ b/moo/lib/moo-cmn.h @@ -318,20 +318,18 @@ struct moo_bcs_t }; typedef struct moo_bcs_t moo_bcs_t; - -#if 0 - typedef moo_bch_t moo_ooch_t; - typedef moo_bci_t moo_ooci_t; - typedef moo_bcs_t moo_oocs_t; -# define MOO_OOCH_IS_BCH -#else +#if defined(MOO_ENABLE_UNICODE) typedef moo_uch_t moo_ooch_t; typedef moo_uci_t moo_ooci_t; typedef moo_ucs_t moo_oocs_t; # define MOO_OOCH_IS_UCH +#else + typedef moo_bch_t moo_ooch_t; + typedef moo_bci_t moo_ooci_t; + typedef moo_bcs_t moo_oocs_t; +# define MOO_OOCH_IS_BCH #endif - /* ========================================================================= * TIME-RELATED TYPES * =========================================================================*/ diff --git a/moo/lib/moo.h b/moo/lib/moo.h index bbd0239..db54bf5 100644 --- a/moo/lib/moo.h +++ b/moo/lib/moo.h @@ -1203,7 +1203,6 @@ struct moo_t int default_type_mask; } log; - /* ========================= */ moo_heap_t* permheap; /* TODO: put kernel objects to here */