FreeBSD. This method attempts to centralize all the necessary hacks
or work arounds in one of two places in the tree (src/Makefile.inc1
and src/tools/build). We build a small compatibility library
(libbuild.a) as well as selectively installing necessary include
files. We then include this directory when building host binaries.
This removes all the past release compatibilty hacks from various
places in the tree. We still build on tip of stable and current. I
will work with those that want to support more, although I anticipate
it will just work.
Many thanks to ru@, obrien@ and jhb@ for providing valuable input at
various stage of implementation, as well as for working together to
positively effect a change for the better.
or dead kernel core is loaded into gdb. This extends gdb's existing
shared library support, so the "info sharedlibrary", "sharedlibrary"
and "nosharedlibrary" commands can be used to view and change the
list of loaded symbol files.
The current implementation is more than a kludge however, and it
will not always manage to find the .ko.debug file corresponding to
the loaded module. In particular, for modules whose build directory
cannot be easily guessed from the module name such as all the
netgraph modules, the debug version of the .ko will not be found
automatically.
The logic for finding the module file first attempts to guess at
the module build directory by parsing the version[] string. Then
using that directory ($DIR), it tries the following paths in turn:
./<module>.ko.debug ./<module>.ko
$DIR/<module>.ko.debug $DIR/<module>.ko
/boot/kernel/<module>.ko.debug /boot/kernel/<module>.ko
Approved by: obrien, mp
shared object of libobjc, we end up linking in from the archive
version. This is wrong, because we don't compile the archive version
suitable for inclusion in shared objects. On ia64 this causes actual
breakages. Compile the archive version with PIC on ia64 to avoid
the breakage there and also to avoid changing the status quo on
other architectures. If other architectures have the same problem,
we probably should start building a shared library. There's no
indication however that other architectures actually need it.
Building the archive version with PIC on ia64 does pessimize linking
complete binaries (ie fully archive), but we don't use Objective-C
ourselves and so far I haven't seen non-shared executables written
in Objective-C, so I'm sure this will be nothing but academic.
Trigger case: ports/lang/gnustep-base
options.h to config.h.in and set via ./configure when built normally.
Export some of the build knobs to the Makefile here, overridable
from /etc/make.conf. Also get the version strings right.
config.h was repocopied to config.h.proto, and we do a limited sed on it
at build time now.
for more detailed information about sdiff(1). Hopefully this will
make it easier to find how `interactive merging' works with sdiff.
PR: docs/30618
Submitted by: mark@summersault.com