267 Commits

Author SHA1 Message Date
jca
16a1c93faf On non-clang archs, g++ is already in BUILD_DEPENDS
So don't list it in TEST_DEPENDS.
2020-04-22 09:59:45 +00:00
naddy
e8092ac1dd bump for plist changes 6.6 -> 6.7 2020-04-05 15:44:52 +00:00
jca
6ace77049c Use libc++ (not libestdc++) on powerpc
sparc64 will follow once base has done the switch
2020-04-04 21:48:39 +00:00
jca
6db569706c Switch llvm to python3
While here:
- adjust python scripts shebang lines
- also byte-compile the .py files in the lldb subpackage.  One file
  needs a brute-force conversion using 2to3

Tested in a bulk by ajacoutot@, prompted by and ok kn@
2020-03-22 00:58:36 +00:00
jca
5342f82d30 Drop gtest from RUN_DEPENDS
The installed headers don't need it, except for a testsuite header not
used by the ecosystem.
Also drop two outdated PLIST lines from back when llvm tried to install
libgtest.a

Spotted while discussing the deps of the various subpackages with kn@
Tested in a bulk by ajacoutot@, ok kn@
2020-03-22 00:57:51 +00:00
jca
aa5673c526 Drop bogus test target
Long overdue...
2020-03-15 19:33:32 +00:00
naddy
47517a7414 bump the remaining subpackages; all PLISTs changed 2020-03-06 22:22:03 +00:00
jca
373996e012 Some PLIST tweaks
- don't install six.py, turns out there's a cmake config knob for that
- drop misplaced, @commented out header
- add @so and @static-lib markers

Don't use DEBUG_PACKAGES for now, as the size increase of ${WRKBUILD} is
huge.  I tried to use -gline-tables-only (I think?) as advised by kmos@
but the size of the resulting non-debug packages increased.  To be
revisited...
2020-03-06 14:39:57 +00:00
gkoehler
9322b5bc94 Add -msvr4-struct-return to ports-clang for powerpc.
This is the same change as in base-clang.
ok jca@ (maintainer)
2020-03-05 00:50:00 +00:00
semarie
07b38a5196 devel/llvm: Fix a crash bug when lowering unordered loads to cmpxchg
backport of 2153c4b828

needs for upcoming lang/rust 1.41.0 which trigger the bug on i386

ok jca@
2020-02-09 06:14:21 +00:00
jca
af04cfdc9c Bring in some retguard improvements from base
- Add retguard for octeon/mips64.
- Move the hashed __retguard_* symbols into individual sections and mark
  them as COMDATs so that the linker can individually discard them, instead
  of just ignoring duplicate symbols but keep the (duplicate) space.

from Brad
2020-01-07 22:59:43 +00:00
jca
3e91ee7a2f Merge two improvements from base-clang/lld
- Make clang emit the proper path to our libcompiler_rt.a when asked to.
- Sort relative relocations (and relocations against the same symbol) by offset
  to optimize the cache and UVM faulting behavior

from Brad
2019-12-27 00:15:46 +00:00
jca
38048dc03d Don't add a dep on all headers in ${Backtrace_INCLUDE_DIRS}
since ${Backtrace_INCLUDE_DIRS} is likely to be a system dir.
TODO: push upstream
2019-12-25 22:31:01 +00:00
jca
b106a6c4ab Error out if we end up adding a dep on all headers in /usr/local/include
Just in case an upcoming update introduces the same problem as what
happened with libexecinfo/Backtrace.
2019-12-25 21:58:23 +00:00
jca
178b2ee6a0 Properly disable libexecinfo to fix up random build failures seen by many
Passing -DBacktrace_LIBRARY='' doesn't work since the flag has been
renamed to Backtrace_LIBRARIES and isn't enough anyway to prevent the
llvm cmake files to *add a dep on all headers* in
${Backtrace_INCLUDE_DIRS}, ie /usr/local/include.

... which of course leads to builds blowing up whenever dpb(1) junking
kicks in.

Bulk builders: sorry it took me so long to get my head out of the sand.

Last report by naddy@
2019-12-25 21:55:03 +00:00
jca
3eaafeecdd Build all targets on powerpc
Supposedly ld -relax fixes the relocation overflow problems.
Diff from Brad tested by cwen@
2019-12-05 15:24:58 +00:00
jca
ab2e72f705 Use libcxx on mips64, like base clang
from Brad some time ago.
2019-11-08 17:11:50 +00:00
jca
c64dc40473 Sort PLIST
from Brad
2019-09-09 21:15:16 +00:00
jca
cbb02a6e7f Update to llvm-8.0.1
Similar diff from Brad; bulk build by ajacoutot@
2019-09-08 10:40:39 +00:00
naddy
15934c06f0 bump for plist changes 6.5 -> 6.6 2019-08-10 19:41:07 +00:00
jca
1af85b1214 Fix invalid regex
Reported by bcallah@, upstream fix pointed out by sthen@
2019-07-17 20:15:53 +00:00
jca
3335a863b8 Merge various improvements from base
o clang:
- add back kernel printf %b length specifier support (%llb, etc, lost in
the update to 8.0.0)
o lld:
- Restore previous section after setting the MIPS ABI marker
- Fix output section alignement when entry size isn't a power of two
o arm64, amd64:
- Do not store the retguard cookie in frame in leaf functions if possible
- Emit variable length trap padding in retguard epilogue
o amd64:
- move code that selects retpoline by default to a different source file
o mips64:
- Fix a bug in memory operand handling
- Implement SGE pseudo-instructions
- Implement .cplocal directive
- Fix instruction guard
- Implement the 'h' register constraint on mips64
o sparc64:
- Remove cast that truncates immediate operands to 32 bits
2019-07-09 13:21:37 +00:00
jca
f14c55be2c Major fix for -stdlib=libstdc++, properly register libOptRemarks.so
I botched the library search paths when merging OpenBSD.cpp, repair
that.  Also always add -L${LOCALBASE}/lib like was done before.
Looks like I committed an old diff which lacked SHARED_LIBS+=OptRemarks.

While here, force-disable Z3 support from math/z3.
2019-07-08 07:56:52 +00:00
jca
58f7f768f9 Whitespace and comments sync with base 2019-07-07 14:04:07 +00:00
jca
75c7843086 Update to llvm-8.0.0
Most patch merges inspired from patrick's work on base-clang.  Consumer
ports fixed/marked BROKEN as discussed with bcallah@ and rsadowski@.
powerpc tests and PLIST fixes from cwen@, thanks!  rust-1.36 tests by
semarie@
2019-07-06 15:06:36 +00:00
jca
bcf347998a Move the ports I maintain to PERMIT_PACKAGE 2019-06-22 22:44:06 +00:00
jca
1e1521f098 Fix LIB_DEPENDS-lldb in some edge cases on ports-gcc archs.
where we need a way to get to gcc-libs/libestdc++.  This happened to
work so far except when it didn't (slight differences between built
and already installed llvm packages, maybe?), as found the hard way by
cwen@.

Our COMPILER support automatically amends WANTLIB and LIB_DEPENDS, so
use those to explicitely set:
- WANTLIB-main and WANTLIB-lldb
- LIB_DEPENDS-main and LIB_DEPENDS-lldb
2019-05-22 11:03:47 +00:00
jca
ac6d437677 Set devel/llvm as a RUN_DEPENDS for lldb, not a LIB_DEPENDS
Since libLLVM-x.so isn't a properly versioned shared library, we can't
use LIB_DEPENDS/WANTLIB to register the dep.
2019-05-22 10:29:00 +00:00
jca
19cde7c50f Missed in previous. 2019-05-08 22:34:02 +00:00
jca
4663337cd2 Remove -extras subpackage (already disabled)
Discussed with rsadowski@
2019-05-08 21:53:20 +00:00
jca
c9bdddaea7 Now that we have ports-gcc-8, enable lldb on ports-gcc archs
While here remove PSEUDO_FLAVORS and other goo to make lldb conditional.
From Brad.
2019-05-08 21:48:20 +00:00
jca
8cf3ed58bc Actually disable -extras
no_* PSEUDO_FLAVORS are ignored under dpb(1) / BUILD_ONCE=Yes
Reminded by naddy@
2019-05-03 20:20:05 +00:00
jca
8984253f03 Reorder Makefile, add explicit CONFIGURE_STYLE 2019-04-29 12:37:52 +00:00
jca
35f3170bf7 Bump the -main subpackage to clean up the changes from -extras.
Discussed with sthen@
2019-04-29 11:56:40 +00:00
jca
be8a861a0b Disable -extras for now, it changes the content of the -main subpackage.
Breakage in devel/include-what-you-use reported by sthen@
2019-04-29 11:44:01 +00:00
rsadowski
5e00888b26 Add Clang extra tools
The clang-tools-extra package contains helpful developer tools using
Clang's APIs.

Initial diff from me, further work by jca@ with feedback from sthen@.

OK jca@ and @sthen
2019-04-28 11:00:08 +00:00
naddy
b7e8ac93a7 Switch ports-gcc to GCC 8.3.0:
* switch gcc4 module to gcc/8
* register the gcc/8 subpackages as updates for their gcc/4.9 counterparts
* sync the gcc version in devel/llvm
* add a quirk entry that gcj is obsolete
* unhook 4.9 from the build

Preparatory work by many.
ok sthen@
2019-04-27 21:26:34 +00:00
jca
a10d055774 Disable failing static_assert to let other tests run. 2019-04-22 17:24:26 +00:00
ajacoutot
624a6e6410 MESSAGE -> README
ok jca@ (maintainer)
2019-03-09 06:18:11 +00:00
naddy
b1eb1d48fd bump for plist changes 6.4 -> 6.5 2019-02-28 01:52:37 +00:00
jca
41787fafb6 X86FixupGadgets improvements from base
diff from Brad
2019-02-24 20:53:56 +00:00
jca
18a7533bd3 Merge various improvements from base
- avoid naming clash, bsd.lib.mk defines "PIC"
- x86: floating point fixes (backported from upstream)
- powerpc: avoid unaligned floating-point load and store instructions
(Initial diff by George Koehler)
- lldb, x86: skip retguard instructions in prologue detection

Diff from Brad
2019-02-20 00:24:11 +00:00
jca
e1036d9fc7 Fix long double size on powerpc
from George Koehler
2019-02-11 05:33:57 +00:00
jca
f036c6c741 Readd -msave-args and add support for getting thread name
from Brad
2019-02-11 05:24:16 +00:00
jca
822c559486 Back out the -msave-args addition, it breaks lang/rust on amd64
Pointed out by semarie@
2019-02-03 18:29:48 +00:00
jca
5920dd8509 Merge -msave-args support implemented by dlg in base clang
from Brad
2019-01-31 13:40:22 +00:00
semarie
2862edd08c backport patches to devel/llvm
- da1fb72bb3
- cc1f2a595e

it should unbreak firefox: firefox uses rustc with `-C lto' option for
some part of its build, and this code path expose the llvm bug.

llvm review: https://reviews.llvm.org/D52340
rust issue: https://github.com/rust-lang/rust/issues/57762

bump lang/rust to ensure updated statically linked libraries are taken on update.

ok jca@
2019-01-30 07:36:06 +00:00
jca
608b768579 Simplify patch, add lld -z interpose, more fixes from patrick@
from Brad, thanks
2019-01-28 15:34:22 +00:00
jca
21b863839c Update to llvm-7.0.1 (and include-what-you-use-0.11)
All the work done by Brad except for some fixes from base by mortimer@
and patrick@

Tests: amd64 Brad, jsg@ and me, i386: Brad, mips64: visa@, sparc64 me.
No tests on powerpc but a test build with only the PowerPC backend
packages on amd64.
2019-01-28 06:27:28 +00:00
jca
1f8c09b753 Sync bits from base
- don't build clang itself with -fno-ret-protector and -mno-retpoline,
to regain performance
- use -mretpoline by default on amd64
- fix printf %b length specifiers

from Brad
2019-01-14 16:08:44 +00:00