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.
Specifically:
- use libtool so that the top level library contains the actual
objects, and not just the sub-archives, which the linker will just
ignore.
- create the source files via symlinks rather than referencing them
with relative paths. Doing it that way causes a 'make clean' to
delete objects in DtMmdb/ which is wrong.
- fix up utility/ - it seemed to be building more source files than
the original Imakefile listed. Other changes may need to be done
here if similar mistakes were made in other subdirs.
Also, rework the way we build convenience libs for the classes to use
libtool. This fixes some potential linking issues and dependency
checking.
Next up will be to see if we can link and install it, along with it's
message catalogs, resources, etc.
We now use this to set certain options, if supported by the compilers
(C/C++). Currently we enable various options, like
-Wno-format-truncation. We use this to ignore complaints about
possibly truncations due to the use of the snprintf() family of
functions - where forced truncation is the whole point.
This reverts commit a976460e59.
This just does not look as good, and the fonts appear too tiny. It
needs more work, andshould support all OS's since they pretty much (at
least with the linuxen and bsd's) all use the same fonts and X servers.
Commit e0508b31 introduced build errors on FreeBSD. This corrects
them.
HAVE_DECL_TIMEZONE should only be used to determine whether or not the
'timezone' variable is defined in a header file or whether it must be
specifically 'extern'ed.
On fbsd, a definition exists, but it is a function in libc and not an
integer timezone value that can be mutliplied or divided.
The tic command needs to be under the 'install-exec-hook:' target, not
the 'install:' target. Specifying the 'install:' target overrides
everything else, causing the dtterm binary to not be installed on a
'make install'
This commit installs the required include files needed for CDE
development. In pre-autotools CDE, these were installed in
/usr/dt/share/include/ and a symlink was created in /usr/dt/include to
point toward them.
This is no longer done, and all include files are just installed in
${prefix}/include/ like the rest of the planet.
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 :(
Liang Chang added utempter support to the dtterm widget in
pre-autoconf CDE. While the code itself was merged, it was still not
"turned on" for autoconf builds.
This commit completes the implementation allowing dtterm on Linux and
the BSDs to be installed without having to be setuid root -- as long
as the libutempter headers and libraries are installed.
This commit will not completely remove all Imake files, specifically
those for sections that have not been completed yet.
Also, the databases dir has been moved to databases-delete-later until
we have everything building and installed properly.