Commit Graph

1559 Commits

Author SHA1 Message Date
tron 14f772ea69 Don't use alloca(3) inside the X11 libraries if we compile with
stack protection. XFree86 can now be buildt fine with "USE_SSP=yes".
2007-06-07 11:49:17 +00:00
rillig f1ed085bcf Explained the word "new" in the first paragraph. 2007-06-06 06:18:39 +00:00
uwe 00fa1e6950 Stack protector codegen bug on sh3 has been fixed, so drop sh3 from
the list of platforms where we disable ssp.
2007-06-03 21:07:33 +00:00
christos 380cacfb28 we can now compile libc with _FORTIFY_SOURCE 2007-06-03 17:42:18 +00:00
uwe 7243a4e86c Fix inverted comparison ${MACHINE_ARCH} != "hppa" when checking for
ssp.  (hi^2 tls!)
2007-05-31 00:17:32 +00:00
uwe c7bdc65e61 Use matching open and close parens.
Why make doesn't complain about $(foo} ?
2007-05-30 22:54:12 +00:00
tls 14aa3a04d9 Fix typo, and eliminate mention of libssp since it's gone.
Move -D_FORTIFY_SOURCE to CPPFLAGS from COPTS.
2007-05-30 21:27:54 +00:00
tls dc99372be9 Match usage of FORTIFY_SOURCE on other platforms by not requiring special
include path: the normal header files now include the "SSP" ones (which one
should note are not really named right: SSP and FORTIFY_SOURCE are independent
features).

Disable USE_SSP on targets where the compiler doesn't support it at all
(mips, alpha) or it's known broken (sh3).  But enable FORTIFY_SOURCE,
without SSP, on those platforms -- tested on mipsel.
2007-05-30 21:14:35 +00:00
tls a83c0ab035 mipsel || mipseb, not mipsel || mipsel 2007-05-30 14:21:31 +00:00
tls 2368dc663d Move FORTIFY_SOURCE implementation from the somewhat ill-named "libssp"
(what other systems keep in libssp, we already have in libc) into libc
to match what other systems with FORTIFY_SOURCE do.  Goodbye, libssp
dependency in libraries and executables.  Discussed with christos and
mrg; Christos will merge the headers to get us the rest of the way to a
FORTIFY_SOURCE implementation that works as others' code expects.
2007-05-30 01:13:14 +00:00
tls 6c43b583d4 Sigh, revert previous and fix right: we don't have MACHINE_CPU in bsd.sys.mk. 2007-05-29 21:24:57 +00:00
tls e5545ad98b MACHINE_ARCH -> MACHINE_CPU so excluding mips from SSP/FORT works right. 2007-05-29 21:09:18 +00:00
tls 64e3562f4f Fix two bugs reported by Simon Burge: 1) USE_FORT and USE_SSP should be
disabled on platforms where GCC doesn't support -fstack-protector.  2) The
libssl Makefile had a hard-coded USE_FORT=yes.
2007-05-29 13:55:31 +00:00
tls 1e799aacf7 Sigh. Fix USE_FORT: do not use /usr/include/ssp from *host* system. 2007-05-29 04:56:34 +00:00
tls 4147a3c54a Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry.  RedHat has
evidently built all "core system packages" with this option for some time.

This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.

This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros.  Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.

Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default.  Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.
2007-05-28 12:06:17 +00:00
tls d307e49627 Add -D_FORTIFY_SOURCE=2 where it can safely/sanely be used if building
with USE_SSP: not in the kernel, and not in libssp itself.
2007-05-22 23:58:54 +00:00
matt 8655342068 -O1 on vax isn't quite enough, add -fgcse -fstrength-reduce -fgcse-after-reload
too.  We can build again.
2007-04-15 22:53:08 +00:00
matt 286b959060 For now, make vax default to -O not -O2 2007-04-14 18:39:46 +00:00
scw 5764a76889 Remove support for NetBSD/{,evb}sh5. 2007-04-08 09:35:21 +00:00
matt 87e605a5fe Don't test machine_arch for m68k and m68000, just test machine_cpu for
m68k.  Turn on PIC/PICLIB for VAX.
2007-03-31 05:58:30 +00:00
tsutsui ca549fcb8e CPPICFLAGS -> CPPPICFLAGS (in comments) 2007-03-18 09:08:45 +00:00
pooka b0f9a8a9aa update and fix description of MKPUFFS 2007-02-24 18:53:34 +00:00
chs ca31efae54 switch the rest of the architectures to gdb6. 2007-02-19 18:31:21 +00:00
perry 34c4900430 Before I completely forget the issue, convert "PROG_PAX" to the
better-named "PAXCTL_FLAGS".
2007-01-25 23:04:28 +00:00
christos 855c80dc29 delete "-std=gnu99" from c++ flags. From mrg. 2007-01-22 21:49:07 +00:00
apb a45dfb93f4 Define TOOL_JOIN. 2007-01-14 16:19:55 +00:00
rumble 78f7b270d1 Fix a typo, tweak wording, and maintain consistency. 2006-12-30 04:45:13 +00:00
pooka 81b905fdbb if MKPUFFS=yes is given, build & install mount_psshfs (default: no) 2006-12-29 15:52:20 +00:00
macallan 610c0515b7 build XFree86 on shark 2006-12-21 01:45:32 +00:00
dyoung f3fbc3bb0f Change the name of the host disklabel to nbdisklabel-${MAKEWRAPPERMACHINE},
where ${MAKEWRAPPERMACHINE} is the suffix XXX on the target's make
wrapper, nbmake-XXX.

Fixes toolchain/30673, "single arch host disklabel isn't enough".
2006-12-09 20:13:13 +00:00
dsl 2abb1c7f9b If MAKEOBJDIRPREFIX or MAKEOBJDIR is defined, then we rely on make to
set .OBJDIR so 'make -V .OBJDIR' doesn't need to read any makefiles.
Given how much cud-chewing make does in order to read a line, this
speeds things up significantly (the operation in hand).
2006-11-29 21:49:39 +00:00
dsl d23b6980be Comment where make's internal copy of .OBJDIR gets changed 2006-11-26 20:09:57 +00:00
drochner 29d30258a4 mk.conf might refer to all kinds of make variables, so we can't just pull
it in without everything else (reported by martin). So revert to 1.485
which did at least work for everyone.
2006-11-26 13:59:49 +00:00
drochner 0c2df71a45 fix previous: need to pull in <bsd.obj.mk> to get the real .OBJDIR 2006-11-24 12:02:55 +00:00
martin 6a3c1d7aeb When checking wether we are debugging, look for -g in ${CFLAGS} instead
of ${COPTS}. The latter explicitly includes the former and ${DBG}, where
the -g most likely is hidden.
2006-11-23 12:05:26 +00:00
dsl 503ea65cd7 If we only want .OBJDIR printed, there is no point parsing the default
make rules, nor reading Makefile.
It is rather a shame we can't stop .depend being parsed as well.
Quite possibly one could argue that nothing in .depend should affect the
output of 'make -V xxxx'.
2006-11-22 22:04:57 +00:00
dsl 0d9ff52003 Mark all the .PHONY targets as .NOTMAIN in one go - instead of individually.
Add .WAITs after beforeinstall and before afterinstall.
Remove the bogus dependency lines that someone must have added with the
vague hope they would cause the build to happen in the right order!
Since we have 'realinstall:     proginstall scriptsinstall' stopping
'realinstall' running never has stopped 'proginstall' running.
Fixing this probably fixes a variety of problems, including, but not
restricted to 'install' in src/sys/arch/atari/stand/bootxx
(NB this particular file is untested due to other local changes)
2006-11-21 18:25:26 +00:00
christos 1bb72362cf more uucp removal. 2006-11-12 02:44:51 +00:00
jmmv abac724ef9 Also use libraries from /lib for binaries installed into /libexec. Needed
by lfs_cleanerd which is about to be moved to this directory.
2006-11-11 14:41:20 +00:00
christos 42b579bab8 disable SSP for standalone code. 2006-11-11 06:28:49 +00:00
christos d07f8e39ca don't run paxctl if other commands were specified for that target. 2006-11-11 06:15:55 +00:00
christos e81129f492 add the non tool version of paxctl 2006-11-10 17:22:19 +00:00
christos fef715f487 if ${PROG_PAX} is defined, run paxctl on the binary after linking with
the value of the variable. This way, if you set:

    PROG_PAX=+M

in /etc/mk.conf, you get what you deserve.
2006-11-10 17:13:15 +00:00
christos 3051b08454 Add ssp glue. 2006-11-09 17:06:54 +00:00
pooka bcb1fccca0 libpuffs 2006-10-22 22:53:41 +00:00
christos e9a36b93da Add -Wextra -Wno-unused-parameter to WARNS > 2 2006-10-22 22:17:30 +00:00
bjh21 7fb3ea3f6c Use GDB 6 on armeb as well. 2006-10-18 23:31:50 +00:00
bjh21 cc630e93eb GDB 6.5 seems to be basically functional on ARM, so make it the default there. 2006-10-18 23:22:24 +00:00
mrg b55240a473 - clean up some comments to reality.
- retire LIBDCK, LIBG2C and (long broken) USE_LIBSTDCXX
- in bsd.hostprog.mk's LIBSTDCPP -> LIBSTDCC
- add LIBSUPCXX
- don't default USE_LIBSTDCXX or USE_GCC4 since they are
  not used in the tree any where
- same with USE_XF86_4; retire it
- remove _SUPCXX handling in bsd.prog.mk

inspired by PR#26714.
2006-10-09 08:32:11 +00:00
elad 83704dec18 PR/28368: Peter Postma: unrecognized option `-Wnetbsd-format-audit'
Apply patch from rivo nurges in #NetBSD-code, thanks!
2006-10-08 17:16:51 +00:00