Fix many -Wint-conversion errors such as the example below, including
an aso atomics error.
connect.c:87:12: error: incompatible pointer to integer conversion initializing 'LONG' (aka 'int') with an expression of type 'void *' [-Wint-conversion]
DB_ADDR mdba = NULL; /* db address of current member record */
^ ~~~~
This has meant very little for a long time as configure.ac just
hardcoded these values depending on the current OS versions at the
time.
The only place where this is really 'needed' is XlationSvc.c in DtSvc
so that differences between locale specifications on various versions
of an OS can be accounted for. So for now, we just define those when
building DtSvc.
We could probably safely remove them as well with an update to the
Xlate locale DB to remove ancient cruft we don't care about anymore.
For various other modules, like dtlogin, dtsession, etc we just use
the code that was already being used due to the hardcoded values we've
had for the last 10-ish years.
Many of these were real bugs, like:
if (cond);
do_something
etc...
Others were just cosmetic - like placing the ';' on a separate line to
make the intention clear.
With the addition of dtappbuilder to autotools, every make run
(including make install) causes src/ab to regenerate files that cause
the whole directory to be recompiled, even on a 'make install'.
This seems to be primarily caused by dtbuilder.msg (and possibly
dtbuilder.c) being modified after it is generated, which is apparently
normal behavior for dtcodegen.
This fix sets both dtbuilder.msg and dtbuilder.c as "order-dependant
prequisites" so that they are always generated first (there are
already rules to do generate them) and then subsequently the only
thing required is that they exist since we don't care if they are
modified after that point. If you need to make changes to them, edit
their respective .src files instead.
This seems to resolve the issue, but perhaps at the expense of adding
another requirement to use gmake.
We also need to disable parallel building in this module :(
When building a program foo in-tree, libtool 2.4.6 generates an
executable called lt-foo with a wrapper script called foo. This
means that argv[0] inside the program is lt-foo rather than foo.
This is a problem for dtcodegen, which uses the program name for various
purposes including the "generated by" banner and the logfile name.
Remove the lt- prefix if present to avoid this.