Commit Graph

2819 Commits

Author SHA1 Message Date
kamil
1a5f018b01 Enhance the support of LLVM sanitizers
Define _REENTRANT for MKSANITIZER build. This is needed for at least stdio
code. This caused new build issued with duplicated symbols in few places
and rump kernel code picking different code paths borrowed from libc.
Handle all this in one go.

Add bsd.sanitizer.mk to share common code used by programs and libraries.

Switch from realall to beforeinstall target in .syms files. This is more
reliable in MKSANITIZER.
2019-08-27 22:48:53 +00:00
mrg
1db21b1df3 fix MKCXX=no:
- don't build GDB
- don't build sanitizers
- don't build GCC commands
- fix some set lists
2019-08-23 08:17:26 +00:00
kamil
92253c7761 Add PAXCTL_FLAG rules for MKSANITIZER
Add per-program rules to disable ASLR for ASan, TSan and MSan in all
sanitized programs. This flag is not needed for other supported sanitizers.

Without this change, sanitized init(8) dies early on startup.

Approach originally suggested by <joerg>
2019-08-17 00:14:48 +00:00
kamil
0e6f677375 Add SANITIZER_RENAME_CLASSES in bsd.prog.mk
This adds a more flexible version of SANITIZER_RENAME_SYMBOL.

New symbol allows to specify MKSANITIZER specific renames on per-file and
per-symbol basis.
2019-08-15 08:42:59 +00:00
christos
a3a94da6c9 Add a script to compare the library lists so we can keep them in sync easier. 2019-08-10 12:50:36 +00:00
christos
9b5a96cd27 Make the X11 library lists consistent again. 2019-08-10 12:46:38 +00:00
christos
806cddf3f2 Don't install PIC libraries by default because they are too big since they
contain debug symbols. I supplied a patch in PR/54449 to remove the debugging
symbols but folks preferred to not install them at all.
2019-08-10 12:20:17 +00:00
roy
cb24add28c MKBSDTAR now defaults to yes
Starting to see some modern archives not opening, it's time to make them
work!

OK joerg@ agc@
2019-07-24 09:28:29 +00:00
mrg
9d9d771525 add util-macros src dir. 2019-07-20 20:25:35 +00:00
wiz
c4e128da50 Install the nouveau gm206 firmware as used by my graphics card.
Also add the other gm20x nouveau firmwares to the source tree
to make it easier to add them for someone who can test them.

Installed if MKNOUVEAUFIRMWARE is set to 'yes'.
This defaults to no except on amd64 and i386 (like for radeon).
2019-07-20 19:09:21 +00:00
mrg
f791ec1b3a break the build if a .pc generation leaves something matching "@.*@".
this is an error in the build that doesn't trigger issues until you
try to integrate with eg, pkgsrc.
2019-07-10 21:53:35 +00:00
hannken
ce2428b9c3 When building a module keep symbols if built with "MKCTF" and "COPTS=-g". 2019-07-05 08:28:16 +00:00
mrg
b436459a98 turn on MKLLVMRT for aarch64 X11 builds.
with llvmpipe vs swrast, on pinebook 1080p i see 6x speed up for glxgears,
seamonkey & google maps is significantly faster, and ksudoku is workable.
2019-06-11 04:52:44 +00:00
mrg
963bac2566 minor hack fix for the previous:
MKX11 is used before it was defaulted, leading to eg:

... Malformed conditional (${MKX11} != "no" && ${HAVE_MESA_VER} == "18")

gain knowledge that it defaults to "no" immediately below.
could split this list, but seems uglier.
2019-06-02 21:29:13 +00:00
mrg
047719ee02 fix building x86 with X11 but not LLVM:
- change the defaults for MKLLVMRT and MKX11 so we don't have to
  force-override later.  this makes "build.sh -V MKLLVMRT=no"
  work to disable building the LLVM Mesa components.

- in gallium, don't BUILD_RADEON if MKLLVMRT is no.

this stops GL from working, but basic X seems OK enough for Xvideo
to still work on modern radeon (ie, video mostly works fine, though
eg, "mpv -vo gpu" won't.  use "mpv -vo xv".)
2019-06-02 11:35:55 +00:00
mrg
ac10ab4460 xorg-server 1.20.5 is now current. 2019-06-01 06:57:03 +00:00
christos
39d9abd938 Everyone is on gdb-8.3 now. 2019-05-30 21:33:57 +00:00
christos
61da06b1fb add vax to new gdb 2019-05-30 01:20:41 +00:00
christos
7bb3ca8936 move sparc* to new gdb. 2019-05-29 22:12:16 +00:00
christos
a9359532ef Add i386 2019-05-29 18:19:03 +00:00
christos
fb2b3c4056 amd64 switched to gdb-8.3 2019-05-29 01:57:59 +00:00
christos
70494b87c4 build gdb from gdb.old 2019-05-26 20:26:43 +00:00
kamil
7d75527c60 Allow to use KCOV + kASan together
Stop instrumenting KCOV files with kASan and the other way around.
This fixes booting of the setup of using them together.

In theory the checks could be more fine grained, however there is no good
reason (except extra DIAGNISTIC) for running a kernel sanitizer without
kernel coverage.

Patch by <R3x>
2019-05-22 08:31:25 +00:00
nakayama
43b52312c6 Use ${_TOOL_PREFIX} instead of hardcoding "nb" for consistency. 2019-05-17 13:51:36 +00:00
nakayama
0015932b89 Revert previous.
The binaries created are different, but according to joerg@ there
is no difference in functionality.
2019-05-17 13:44:55 +00:00
nakayama
95541573e2 Rename nb{clang,llvm}-tblgen to ${MACHINE_GNU_PLATFORM}-{clang,llvm}-tblgen
since they contain the default target (e.g. x86_64--netbsd).
2019-05-16 20:00:49 +00:00
christos
3dedd71659 Everyone is using gcc-7 now. 2019-05-11 02:40:31 +00:00
mrg
324b4eb87f add an entry to find upcoming intel-2014 driver. 2019-05-10 06:19:54 +00:00
maya
e5523bd00e G/C unused code.
gcc -combine is no longer a thing, so this entire block isn't usable.
2019-05-09 23:34:51 +00:00
kamil
55506a14cd Fix typo cost -> host 2019-04-19 22:06:03 +00:00
mrg
660c4904e1 switch ia64 to GCC 7. scole@ commited a workaround for the one new problem.
this leaves ppc64 as the only GCC 6 port left.
2019-04-19 21:34:26 +00:00
mrg
6c9d474098 turn on MKCOMPAT for riscv64. 2019-04-18 20:11:57 +00:00
mrg
1ce78da3f1 enable EGL and glamor. partly from maya@.
for x86 and evbarm:
- install headers and libEGL
- install xorg-server glamoregl component
- link xorg drivers against gbm/egl

bonus fix:
- fix some wrongly marked compatx11file files


build tested on shark, sgimips, evbarm64-el, amd64 and i386.
run tested on radeon, intel and nvidia on amd64, including
'modesetting' driver on amd64.  however, my systems disable
it due to llvmpipe so i'm not sure what is happening.
2019-04-16 21:20:50 +00:00
maya
226aa51e27 Don't build compat libraries for riscv, for now. 2019-04-15 15:56:40 +00:00
christos
ac84be3749 Add -r so that we get the location of redefinitions 2019-04-07 19:32:24 +00:00
maya
45fb16f000 Switch everyone to mesa 18. 2019-04-05 15:58:17 +00:00
maya
a63f4c9283 Limit MKLLVMRT being enabled with MKX11 to x86. 2019-04-05 15:22:35 +00:00
maya
a891433074 Frantically revert previous because of missing stuff 2019-04-05 15:11:31 +00:00
maya
6103ba0427 switch everyone to mesa 18. 2019-04-05 15:07:39 +00:00
mrg
36f30ad7ad switch hppa to GCC 7.
note vax atf fails same as GCC 6.  hppa mostly works but has an
atf issue also unrelated to the compiler version

note ia64 mostly builds, but the kernel fails earlier than GCC 6.
2019-04-04 21:31:28 +00:00
christos
5e8867daf8 vax "cough" works, with gcc-7 2019-04-03 21:41:21 +00:00
joerg
b90b6db247 Use and enable MKLLVMRT for HAVE_MESA_VER=18. 2019-04-03 15:26:34 +00:00
joerg
cf000f1761 Provide a default value of no for MKLLVMRT. 2019-04-03 15:23:29 +00:00
joerg
8e36148e18 Document MKLLVM. 2019-04-03 15:17:23 +00:00
joerg
da48f03c8a Revert MKLLVMCMDS changes. 2019-04-03 15:12:44 +00:00
christos
9c552bddf4 re-enable jemalloc. 2019-03-28 15:45:23 +00:00
christos
e11d722853 disable jemalloc again until we can figure out what to do with the bloat
for installer media.
2019-03-28 08:41:50 +00:00
christos
49cb7eb256 back to jemalloc for the masses 2019-03-27 18:41:18 +00:00
christos
8be7033514 undo previous, too much breaks. 2019-03-27 11:15:55 +00:00
christos
a0f2b6a215 jemalloc for everyone! 2019-03-27 02:51:41 +00:00