diff options
author | Mark Hatle <mark.hatle@xilinx.com> | 2019-12-09 07:57:31 -0800 |
---|---|---|
committer | Mark Hatle <mark.hatle@xilinx.com> | 2020-02-27 08:33:25 -0800 |
commit | 3139698d558f038a913f8ac95384a2a493652930 (patch) | |
tree | bfbe9caa662ec0cc37380b3862e67ed4ce09c5a6 /meta-xilinx-standalone/conf/distro | |
parent | dd1ece6a7ed7376d2df063e380d8f6a7a5692e4d (diff) | |
download | meta-xilinx-3139698d558f038a913f8ac95384a2a493652930.tar.gz |
distro/xilinx-standalone: Make LTO optional
Some builds may require LTO, while others do not want it. The LTO components
are only enabled when using the esw.bbclass and the xilinx-standalone distro.
A second xilinx-standalone-nolto was added specifically to provide a default
where LTO was disabled.
Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
Diffstat (limited to 'meta-xilinx-standalone/conf/distro')
3 files changed, 31 insertions, 12 deletions
diff --git a/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf b/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf new file mode 100644 index 00000000..7ac93995 --- /dev/null +++ b/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf | |||
@@ -0,0 +1,4 @@ | |||
1 | require conf/distro/xilinx-standalone.inc | ||
2 | |||
3 | # By default we want to optimize for size. | ||
4 | ESW_CFLAGS_append = " -Os" | ||
diff --git a/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf b/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf index a31cae80..3acbffa3 100644 --- a/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf +++ b/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf | |||
@@ -1,16 +1,6 @@ | |||
1 | DISTRO = "xilinx-standalone" | 1 | require conf/distro/xilinx-standalone.inc |
2 | DISTRO_NAME = "Xilinx Standalone Distro" | ||
3 | DISTRO_VERSION = "1.0" | ||
4 | TARGET_VENDOR = "-xilinx" | ||
5 | 2 | ||
6 | TCLIBC = "newlib" | 3 | DISTRO_NAME_append = " (lto)" |
7 | TCLIBCAPPEND ="" | ||
8 | |||
9 | # Change SDK name | ||
10 | SDK_VERSION = "xilinx-standalone" | ||
11 | |||
12 | require conf/distro/include/yocto-uninative.inc | ||
13 | INHERIT += "uninative" | ||
14 | 4 | ||
15 | # Hold this until it gets merged in core, we need libc.a and libgloss.a for cross-canadian | 5 | # Hold this until it gets merged in core, we need libc.a and libgloss.a for cross-canadian |
16 | LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" | 6 | LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" |
@@ -19,3 +9,8 @@ LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" | |||
19 | TOOLCHAIN_NEED_CONFIGSITE_CACHE = "" | 9 | TOOLCHAIN_NEED_CONFIGSITE_CACHE = "" |
20 | 10 | ||
21 | TOOLCHAIN_HOST_TASK_append = " nativesdk-qemu-xilinx" | 11 | TOOLCHAIN_HOST_TASK_append = " nativesdk-qemu-xilinx" |
12 | |||
13 | # We also need to use Link Time Optimization for many items, make this the | ||
14 | # default. | ||
15 | ESW_CFLAGS += " -flto -ffat-lto-objects" | ||
16 | |||
diff --git a/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc b/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc new file mode 100644 index 00000000..9a06e8d0 --- /dev/null +++ b/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc | |||
@@ -0,0 +1,20 @@ | |||
1 | DISTRO_NAME = "Xilinx Standalone Distro" | ||
2 | DISTRO_VERSION = "1.0" | ||
3 | TARGET_VENDOR = "-xilinx" | ||
4 | |||
5 | # Make sure any users get the xilinx-standalone distro override | ||
6 | DISTROOVERRIDES_prepend = "${@'xilinx-standalone:' if d.getVar('DISTRO') != "xilinx-standalone" else ''}" | ||
7 | |||
8 | TCLIBC = "newlib" | ||
9 | TCLIBCAPPEND ="" | ||
10 | |||
11 | # Change SDK name | ||
12 | SDK_VERSION = "xilinx-standalone" | ||
13 | |||
14 | require conf/distro/include/yocto-uninative.inc | ||
15 | INHERIT += "uninative" | ||
16 | |||
17 | # Hold this until it gets merged in core, we need libc.a and libgloss.a for cross-canadian | ||
18 | LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" | ||
19 | |||
20 | ESW_CFLAGS ?= "" | ||