diff --git a/Makefile.in b/Makefile.in index 86fa86e..fc7a20e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -354,7 +354,6 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -585,7 +584,7 @@ distdir: $(DISTFILES) ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir @@ -611,7 +610,7 @@ dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir @@ -629,7 +628,7 @@ dist dist-all: distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ @@ -639,7 +638,7 @@ distcheck: dist *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac diff --git a/configure b/configure index ab7e16a..001d80a 100755 --- a/configure +++ b/configure @@ -784,7 +784,6 @@ infodir docdir oldincludedir includedir -runstatedir localstatedir sharedstatedir sysconfdir @@ -819,6 +818,7 @@ with_sysroot enable_libtool_lock enable_debug enable_unicode +enable_full_liw enable_cxx enable_dynamic_module enable_static_module @@ -878,7 +878,6 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1131,15 +1130,6 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1277,7 +1267,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir + libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1430,7 +1420,6 @@ Fine tuning of the installation directories: --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1484,6 +1473,8 @@ Optional Features: --enable-unicode Use the unicode character type as the default character type. one of yes, no, yes:2, yes:4, no:2, no:4 (default. yes) + --enable-full-liw Use a full word as a large integer word (default. + no) --enable-cxx build the library for C++ if a C++ compiler is available (default. yes) --enable-dynamic-module enable dynamic module capability(default. yes) @@ -21139,6 +21130,22 @@ $as_echo "#define HCL_UNICODE_SIZE 1" >>confdefs.h fi +# Check whether --enable-full-liw was given. +if test "${enable_full_liw+set}" = set; then : + enableval=$enable_full_liw; enable_full_liw=$enableval +else + enable_full_liw=no + +fi + +if test "${enable_full_liw}" = "yes" +then + +$as_echo "#define HCL_ENABLE_FULL_LIW 1" >>confdefs.h + +fi + + # Check whether --enable-cxx was given. if test "${enable_cxx+set}" = set; then : enableval=$enable_cxx; enable_cxx_is=$enableval diff --git a/configure.ac b/configure.ac index 9da9bef..8c5f767 100644 --- a/configure.ac +++ b/configure.ac @@ -599,6 +599,17 @@ else AC_DEFINE([HCL_UNICODE_SIZE],[1],[Unicode character type size]) fi +AC_ARG_ENABLE([full-liw], + [AS_HELP_STRING([--enable-full-liw],[Use a full word as a large integer word (default. no)])], + enable_full_liw=$enableval, + enable_full_liw=no +) +if test "${enable_full_liw}" = "yes" +then + AC_DEFINE([HCL_ENABLE_FULL_LIW],[1],[Use a full word as a large integer word]) +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, diff --git a/lib/exec.c b/lib/exec.c index 434b999..e770cce 100644 --- a/lib/exec.c +++ b/lib/exec.c @@ -1000,6 +1000,10 @@ static HCL_INLINE int call_primitive (hcl_t* hcl, hcl_ooi_t nargs) } + +#if 0 +/* EXPERIMENTAL CODE INTEGRATING EXTERNAL COMMANDS */ + #include #include #include @@ -1172,6 +1176,8 @@ oops: return -1; } +#endif + /* ------------------------------------------------------------------------- */ static hcl_oop_process_t start_initial_process (hcl_t* hcl, hcl_oop_context_t ctx) { diff --git a/lib/hcl-cfg.h.in b/lib/hcl-cfg.h.in index 105047d..a6b36e6 100644 --- a/lib/hcl-cfg.h.in +++ b/lib/hcl-cfg.h.in @@ -273,6 +273,9 @@ /* enable dynamic module capability */ #undef HCL_ENABLE_DYNAMIC_MODULE +/* Use a full word as a large integer word */ +#undef HCL_ENABLE_FULL_LIW + /* use libltdl when loading a dynamic module */ #undef HCL_ENABLE_LIBLTDL diff --git a/lib/hcl.h b/lib/hcl.h index 201237e..1412798 100644 --- a/lib/hcl.h +++ b/lib/hcl.h @@ -226,7 +226,7 @@ typedef struct hcl_obj_word_t* hcl_oop_word_t; /* ========================================================================= * BIGINT TYPES AND MACROS * ========================================================================= */ -#if (HCL_SIZEOF_UINTMAX_T > HCL_SIZEOF_OOW_T) +#if defined(HCL_ENABLE_FULL_LIW) && (HCL_SIZEOF_UINTMAX_T > HCL_SIZEOF_OOW_T) # define HCL_USE_FULL_WORD #endif