Commit Graph

2232 Commits

Author SHA1 Message Date
christos 5344ef6679 - Add a new bsd.host.mk that contains all the HOST_ variables extracted from
bsd.sys.mk and bsd.own.mk
- Add protection requiring that:
	1. bsd.sys.mk is not include from other Makefiles directly
	2. bsd.own.mk must be included before bsd.sys.mk since it
	   sets variables that bsd.sys.mk uses as conditionals.

This is step 1 of removing all variable settings from bsd.sys.mk and
leaving behind only rules. This way, the structure of a standard Makefile
is:
	variable overrides

	optionally include bsd.own.mk
	optionally include bsd.endian.mk

	variable settings that use variables defined in bsd.own.mk

	include a one or more rule .mk files (such as bsd.prog.mk etc)
2014-01-16 01:19:46 +00:00
christos 2b043c75b6 eliminate use of bsd.sys.mk from Makefiles 2014-01-16 01:15:32 +00:00
joerg 55c499f97a -shared-libgcc is a GCC option, so only use it for gcc. 2014-01-15 14:00:09 +00:00
joerg 937a61eb8d -Wl,-pie and -r don't agree with each other, so filter the former out. 2014-01-15 13:59:38 +00:00
christos 97d4e30936 use bsd.syscall.mk 2014-01-14 18:51:45 +00:00
apb adecfa9d02 Document new default for MKARZERO. 2014-01-14 11:32:35 +00:00
apb 33295e8a08 Let MKARZERO default to the same value as MKREPRO, so callers
can set MKREPRO=yes and automatically get MKARZERO=yes.
2014-01-14 11:31:01 +00:00
apb e50114d2aa Use parentheses in .if A && ( B || C || D || ... ) 2014-01-14 11:14:27 +00:00
christos fca2a7349b not so fast, let's fix the tree first. 2014-01-10 16:20:14 +00:00
christos b393459455 Add protection against direct inclusion of this file from other Makefiles.
This file is only intended to be included from the other rules files like
bsd.lib.mk or bsd.prog.mk. If you need things to be defined early, use
bsd.own.mk.
2014-01-10 16:16:57 +00:00
joerg 715627650d Non-literal format strings should be an error by default for clang. 2014-01-07 02:16:41 +00:00
christos 15db747847 disable ctf handling for the shuttle .c -> '' rule since we don't create
an object file to work on.
2014-01-02 19:25:08 +00:00
christos d2c532bec7 redo the ctf stuff to handle the USETOOLS=never case correctly and explain
how.
2013-12-31 18:46:09 +00:00
matt e3a958c021 Back out change for bsd.lib.mk which skips objcopy -x for BE ARM.
Change OBJCOPYLIBFLAGS to keep $a/$d/$t symbols on BE ARM.
2013-12-16 21:34:16 +00:00
skrll 84c03d543e Provide ARM_APCS_FLAGS on arm and earm. 2013-12-16 19:06:41 +00:00
joerg 69fd5d473d Move flags for ARM's APCS ABI into a common variable. Add some forces to
deal with limitations in the Clang <-> LLVM backend interaction to pick
the correct ABI and target assembler.
2013-12-15 18:08:37 +00:00
christos 6d47ec32bb centralize the rpcgen flags and set for BSD output 2013-12-15 00:28:45 +00:00
matt a49b15d8d8 Don't strip local symbols for earmv7*eb images since that will break linking. 2013-12-13 02:47:45 +00:00
matt 732b0a7b58 Describe MACHINES.${MACHINE_CPU}. <fixme>
Add sparc64 to MACHINES.sparc since sparc64 can be build as sparc.
2013-12-06 23:14:15 +00:00
matt 70922e5c64 Add MACHINES.${MACHINE_CPU} values. 2013-12-05 22:51:08 +00:00
matt 1b730ee018 add ${MKTARGET_CREATE} for tags 2013-12-05 22:49:33 +00:00
joerg d0f0da0f65 Relink binaries if crti.o changes. 2013-11-11 10:24:53 +00:00
jmcneill 110a56db43 use -fno-unwind-tables when building arm modules 2013-11-09 22:40:15 +00:00
christos 987a47d93c turn off another gcc warning for m68k 2013-11-06 19:57:17 +00:00
christos ad3b972d11 ignore all -std=gnu patterns not just 99 2013-11-01 17:07:37 +00:00
mrg 94542b393a create mkdep output with a temporary file so that failures in
complation during .d creation don't leave an empty (stale) .d
file around to break future builds.

(hmm, probably could use .PRECIOUS here.)
2013-10-31 01:55:03 +00:00
joerg 3292fd4145 Unbreak src/tools usage of C++. 2013-10-29 16:11:46 +00:00
mrg 27d21cc6e9 add MKDEPCXX, that is used for C++ files depend creation. also
add some missing ${COPTS.${.IMPSRC:T}} and ${CPUFLAGS.${.IMPSRC:T}}
to the dependancy rules.

this makes it possible to have C++ files .d files created with the
C++ compiler, and with the normal options for this file, which
means that we can build libstdc++-v3 from gcc 4.8.
2013-10-28 01:47:13 +00:00
mrg 0b5b0997ae define a HOST_LINK.cc always. 2013-10-26 03:26:57 +00:00
apb e0db893163 Rename _MNUMBERS to _MSECTIONS. The manual section identifiers
are not just numbers any more.

Also introduce a new variable, _MSECTIONREGEX, as a regular expression
to match any of the elements of ${_MSECTIONS}.  Use this instead of
\.[1-9][a-z]*.
2013-10-25 22:16:29 +00:00
apb f0bdf85100 Recognise .3lua and .9lua as man page extensions. Source
files like foo.3lua will result in installed files like
/usr/share/man/man3lua/foo.3lua, /usr/share/man/cat3lua/foo.0,
and /usr/share/man/html3lua/foo.html.
2013-10-25 10:45:01 +00:00
christos 67ff86e929 change if HAVE_GCC is defined 2013-10-18 16:06:52 +00:00
joerg aa6e9499ca Rename USE_LIBGCC to HAVE_LIBGCC and retry using it as flag on unwind.h. 2013-10-14 16:00:16 +00:00
joerg d06922ddf4 Include compiler-rt and libunwind in libc for Clang/x86 builds. 2013-10-14 01:30:21 +00:00
christos 986a0d2f80 Add libxcb 2013-09-29 14:36:25 +00:00
joerg 5f3aa2dbae Hook up initial build infrastructure for LLDB. Update LLVM/Clang
snapshot to r191390 for some required changed. Re-enable static analyzer
in Clang.
2013-09-29 12:11:59 +00:00
pooka 2b0409d3df Make it possible to specify a directory for the .ioconf file.
Still default to .CURDIR
2013-09-20 16:39:14 +00:00
martin 52514ad340 When compiling kernel modules on sparc64 force the same memory model as
we force for the kernel (i.e. do not rely on compiler defaults here)
2013-09-18 09:25:20 +00:00
joerg 36a6d19157 Handle dependency on libstdc++ / libc++ in bsd.lib.mk. 2013-09-12 17:14:20 +00:00
joerg 4d12bfcd15 Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
2013-09-12 15:36:14 +00:00
joerg 975a152cfc If a library needs a symbol from another library, pull that library in
explicitly, even if the DT_NEEDED closure would normally already ensure
the presence.
2013-09-11 23:04:09 +00:00
joerg 6c440ed37c Update LLVM/Clang snapshot to r189662. This includes many improvements
to the new SLP vectorizer, fast codegen support for PPC and using
terminfo for the color sequences. In addition, add (optional) build
infrastructure for lld to allow easier testing. This is controlled by
MKLLD.
2013-09-02 14:34:55 +00:00
matt f60758a410 Change the default for MKLINT to no 2013-08-26 22:15:51 +00:00
matt efa43f9322 Change rule for x86 link to not be x86 dependent 2013-08-21 15:26:44 +00:00
martin d987c65861 Add .ARM.extab to the list of sections to be removed when converting to
aout format.
2013-08-15 12:45:50 +00:00
joerg 6e79a9892e Do as the last commit message said and not as the change did, only use
GCC's crt code on ia64.
2013-08-12 16:51:14 +00:00
joerg 05789f4038 Only ia64 defaults to USE_COMPILERCRTSTUFF=no now, so simplify
conditional.
2013-08-12 16:39:28 +00:00
joerg 58c5751e1a Don't copy .eh_frame section when trying to create a.out binaries. 2013-08-12 16:38:47 +00:00
matt c067c0ec0e Fix MACHINE_CPU for armeb 2013-08-12 16:17:07 +00:00
skrll 6234ce42bd Switch alpha to USE_COMPILERCRTSTUFF= no 2013-08-07 22:09:30 +00:00