Estimated hours taken: 6
Branches: main
Get the sytem building under mingw and cygwin.
README.MinGW:
Document the new packages you need to install for the
system to build.
configure.in:
runtime/mercury_conf.h.in:
Test for the presence of the setenv and putenv functions.
configure.in:
Comment out some code which breaks with autoconf 2.60.
runtime/mercury_runtime_util.c:
runtime/mercury_runtime_util.h:
Add MR_setenv which is an implementation of setenv in terms
of either setenv or putenv.
runtime/mercury_trace_base.c:
Call MR_setenv.
trace/Mmakefile:
Mingw and cygwin only have flex 2.5.4 available, so use
the options compatible with that version.
Estimated hours taken: 0.5
Branches: main
runtime/*.c:
Convert all remaining C source files to four-space indentation.
Fix some deviations from our style guide.
Estimated hours taken: 2.5
Branches: main
Add MR_ prefixes to uses of configuration macros.
Bootcheck now succeeds with MR_NO_CONF_BACKWARDS_COMPAT.
Mmake.common.in:
Define MR_NO_CONF_BACKWARDS_COMPAT when checking
for namespace cleanliness.
RESERVED_MACRO_NAMES:
Remove the configuration macros.
runtime/mercury_conf_bootstrap.h:
Remove a duplicate definition of BOXED_FLOAT.
configure.in:
*/*.c:
*/*.h:
*/*.m:
Add MR_ prefixes.
Estimated hours taken: 1
Branches: main
runtime/mercury_runtime_util.[ch]:
New module for utility functions. Contains the checked versions of
fopen, fclose, atexit which used to be static in mercury_prof.c,
and the backup version of strerror which used to be in
mercury_strerror.c.
runtime/mercury_strerror.[ch]:
Deleted this now obsolete module.
runtime/mercury_prof.c:
runtime/Mmakefile:
Mention the new module and delete references to the deleted module.
runtime/mercury_deep_profiling.c:
runtime/mercury_trace_base.c:
Add #includes of the new module.