nixpkgs/pkgs
Matthew Bauer d180cb9850 cc-wrapper: make machine configuration configurable
It is useful to make these dynamic and not bake them into gcc. This
means we don’t have to rebuild gcc to change these values. Instead, we
will pass cflags to gcc based on platform values. This was already
done hackily for android gcc (which is multi-target), but not for our
own gccs which are single target.

To accomplish this, we need to add a few things:

- add ‘arch’ to cpu
- add NIX_CFLAGS_COMPILE_BEFORE flag (goes before args)
- set -march everywhere
- set mcpu, mfpu, mmode, and mtune based on targetPlatform.gcc flags

cc-wrapper: only set -march when it is in the cpu type

Some architectures don’t have a good mapping of -march. For instance
POWER architecture doesn’t support the -march flag at all!

https://gcc.gnu.org/onlinedocs/gcc/RS_002f6000-and-PowerPC-Options.html#RS_002f6000-and-PowerPC-Options
2019-04-20 20:05:51 -04:00
..
applications Merge remote-tracking branch 'origin/master' into staging 2019-04-20 19:31:35 -04:00
build-support cc-wrapper: make machine configuration configurable 2019-04-20 20:05:51 -04:00
common-updater update-source-version: Fixes, add --ignore-same-hash 2019-04-06 19:47:08 -04:00
data Merge pull request #59626 from r-ryantm/auto-update/osinfo-db 2019-04-21 01:23:54 +02:00
desktops Merge branch 'master' into staging 2019-04-20 12:49:01 +02:00
development cc-wrapper: make machine configuration configurable 2019-04-20 20:05:51 -04:00
games Merge pull request #59902 from bjpbakker/update-factorio 2019-04-20 08:27:31 +00:00
misc vimPlugins.emodeline: init at 2010-10-18 2019-04-20 20:00:03 +00:00
os-specific Merge remote-tracking branch 'origin/master' into staging 2019-04-20 19:31:35 -04:00
servers Merge pull request #59852 from Izorkin/memcached 2019-04-19 17:41:40 +02:00
shells oh-my-zsh: 2019-04-04 -> 2019-04-18 2019-04-19 08:11:49 -04:00
stdenv stdenv/linux: use isCompatible to find bootstrap tools 2019-04-19 12:00:44 -04:00
test cross/tests: add llvm-based tests 2019-02-26 19:46:24 -05:00
tools Merge remote-tracking branch 'origin/master' into staging 2019-04-20 19:31:35 -04:00
top-level Merge remote-tracking branch 'origin/master' into staging 2019-04-20 19:31:35 -04:00