freebsd-dev/share
John Birrell 770ac3b21f Add support for the Compact C Type (CTF) conversions throughout FreeBSD's
system makefiles.

Note that the CTF conversion defaults to off. We may choose to change this
default later if DTrace proves popular and people are prepared to wear
the compilation performance impact of compiling with debug symbols all the
time.

Setting NO_CTF in the make args or user environment turns off CTF conversion.
Even if we choose to default CTF generation to on later, we still need
NO_CTF so that the buildworld process can bootstrap the tools without
needlessly generating CTF data for temporary tools.

Setting WITH_CTF in the make args or user environment (and _NOT_ in
/etc/make.conf) is the only way to enable CTF data conversion. Nore that
this can't be implemented the same way that the WITH_ and WITHOUT_ stuff
is implemented throughout the buildworld because the CTF conversion needs
to work when building a simple object without a Makefile, using the
default rules in sys.mk.

Typing 'make test.o' with no makefile and just a source file test.c
should work. Also, typing 'make WITH_CTF=1 test.o without a makefile and
just a source file test.c should work and produce an object with a CTF
elf section. Typing 'make WITH_CTF=1 CFLAGS=-g test.o' without a makefile
and just a source file test.c should produce an object with both a CTF
elf section and the debug elf sections.

In the FreeBSD build where more .mk files are used than just sys.mk
which is included my make by default, the use of DEBUG_FLAGS is the
correct way to enable a debug build. The important thing to note here
is that it is the DEBUG_FLAGS setting that prevents libraries and
programs from being stripped on installation. So, for the addition of
CTF data conversion, setting DEBUG_FLAGS to contain -g, without NO_CTF,
will cause the ctfconvert and ctfmerge build programs to be executed
also with the -g arg so that debug symbols are retained rather than
being removed after the CTF data elf section has been added.

Add DTrace libraries to the list of libnames.
2008-05-22 01:14:43 +00:00
..
colldef Fix collation order for accented characters. 2008-02-04 10:25:28 +00:00
dict Correct typos containing my login name (plus one more in expr.y). 2007-02-18 19:48:59 +00:00
doc Link wpi(4) into the build. 2007-11-08 22:09:37 +00:00
examples Add a new awk script which parses informations returned by the newly 2008-05-07 21:50:17 +00:00
info
isdn
man Document the azp for controlling audio power 2008-05-20 06:33:10 +00:00
me
misc o OpenBSD 4.3 added. 2008-05-01 09:52:34 +00:00
mk Add support for the Compact C Type (CTF) conversions throughout FreeBSD's 2008-05-22 01:14:43 +00:00
mklocale "NONE" -> "ASCII" encoding 2008-01-23 04:25:10 +00:00
monetdef International code for Russian Ruble is changed from RUR to RUB 2007-02-28 16:28:49 +00:00
msgdef Update korean locale messages: 2008-02-01 20:15:21 +00:00
numericdef Add locales for nb_NO and nn_NO. 2006-11-09 18:10:34 +00:00
security
sendmail
skel Remove /usr/X11R6 from the path here too. 2007-05-29 22:07:57 +00:00
snmp Define a base OID for the FreeBSD version as returned in sysObjectID 2006-10-31 10:09:10 +00:00
syscons Add a Macbook/Macbook Pro compatible keyboard layout for French keyboards. 2007-07-13 08:29:24 +00:00
tabset
termcap - Remove kH and *6 from xterm. They are defined to the same key as @7 (kp_end). 2008-01-08 16:00:24 +00:00
timedef - The names of the months and the days are in lowercase according to the 2008-05-16 12:50:15 +00:00
zoneinfo Fix double patch on this file. 2008-03-25 03:04:54 +00:00
Makefile Make zoneinfo optional so that a filesystem upgrade/update does not overwrite 2007-06-26 19:40:03 +00:00
Makefile.inc