no longer link against the whole library, since they don't require much
from it, but just compile the few small modules they actually need static.
This should save a measurable amount of space; compare:
-r-xr-xr-x 1 bin bin 155648 Sep 18 18:00 cc1*
-r-xr-xr-x 1 root bin 1048576 Sep 18 17:33 cc1.noshae*
Of course, the library takes up a bit of space, but when you add in the
savings from the C++ compiler, you more than make up the difference:
-r--r--r-- 1 bin bin 1157344 Sep 18 18:27 /usr/lib/libcc_int.so.26.0
-r-xr-xr-x 1 bin bin 491520 Sep 18 18:27 /usr/libexec/cc1plus*
completely when ldconfig unlinks it. If init is shared, then the
referenced unlinked copy of the hints file created by running
ldconfig in /etc/rc caused the file system to be unclean after
every reboot.
You need to fix the libio/_G_config.h file around lines 42-44. After
that everything should be OK. You should have seen many warning error
messages about this file. There are missing "short" "char" keywords
the file.
Michael:
Apply the following patch
rgrimes:
The patch to include/_G_config.h is highly questionable and has been
marked as such.
Reviewed by: rgrimes
Submitted by: L Jonas Olsson <ljo@ljo-slip.DIALIN.CWRU.Edu>
Submitted by: Michael Reifenberger <root@rz-wb.fh-sw.de>
we're not ready for yet. gcc and all profiled libraries will need
to be recompiled. I suspect that the dependencies aren't complete
enough to do this automatically.
automagically. -lfoo has to be right to work, but ${LIBFO0} is too
easy to forget or misspell; nothing checks it and it should be
different for shared libraries.
Several files in uucp/libunix included <sys/dir.h> and defined dirent
as direct, but <sys/dir.h> defines direct as dirent. This macro
recursion is not allowed by cpp in traditional mode. The 2.0 mkdep
uses cpp in traditional mode (another bug) so cpp prints a error
message and exits with a nonzero status. The error status leaks out
of the pipe (another bug) so mkdep "succeeds". It may even succeed.
being created and config.h depended on Makefile.inc being in the wrong
directory so real dependencies were not being checked. The "depend"
target was not created either so "make depend" always found work to do.