diff options
Diffstat (limited to 'meta-xilinx/meta-xilinx-standalone/conf/distro')
4 files changed, 68 insertions, 10 deletions
diff --git a/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-freertos.conf b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-freertos.conf new file mode 100644 index 000000000..cba5fd904 --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-freertos.conf @@ -0,0 +1,9 @@ +require conf/distro/xilinx-standalone.inc + +DISTRO_NAME_append = " (freertos)" + +XLNX_CMAKE_SYSTEM_NAME = "FreeRTOS" + +# We need to pass FREERTOS_BSP compliler flag it is consumed +# esw components. +ESW_CFLAGS += " -DFREERTOS_BSP" diff --git a/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf new file mode 100644 index 000000000..315f555cb --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone-nolto.conf @@ -0,0 +1 @@ +require conf/distro/xilinx-standalone.inc diff --git a/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf index 7cd23ccdb..4273230f0 100644 --- a/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf +++ b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf @@ -1,13 +1,14 @@ -DISTRO = "xilinx-standalone" -DISTRO_NAME = "Xilinx Standalone Distro" -DISTRO_VERSION = "1.0" -TARGET_VENDOR = "-xilinx" +require conf/distro/xilinx-standalone.inc -TCLIBC = "newlib" -TCLIBCAPPEND ="" +DISTRO_NAME_append = " (lto)" -# Change SDK name -SDK_VERSION = "xilinx-standalone" +# By default we want to optimize for size. +FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}" + +# Workaround for microblaze -Os bug +FULL_OPTIMIZATION_microblaze = "-O2 -pipe ${DEBUG_FLAGS}" + +# We also need to use Link Time Optimization for many items, make this the +# default. +ESW_CFLAGS += " -flto -ffat-lto-objects" -require conf/distro/include/yocto-uninative.inc -INHERIT += "uninative" diff --git a/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc new file mode 100644 index 000000000..5c8ae67a1 --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/conf/distro/xilinx-standalone.inc @@ -0,0 +1,47 @@ +DISTRO_NAME = "Xilinx Standalone Distro" +DISTRO_VERSION = "1.0" +TARGET_VENDOR = "-xilinx" + +# Make sure any users get the xilinx-standalone distro override +DISTROOVERRIDES_prepend = "${@'xilinx-standalone:' if d.getVar('DISTRO') != "xilinx-standalone" else ''}" + +TCLIBC = "newlib" +TCLIBCAPPEND ="" + +# Change SDK name +SDK_VERSION = "xilinx-standalone" + +require conf/distro/include/yocto-uninative.inc +INHERIT += "uninative" + +# Hold this until it gets merged in core, we need libc.a and libgloss.a for cross-canadian +LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" + +ESW_CFLAGS ?= "" + +INHERIT += "buildhistory" + +# Cortex R5 requires an additional cflag to be passed for compatibility with the embeddedsw +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexr5', ' -DARMR5', '', d)}" + +# Make sure all regular recipes are excluded from compatibility +# Avoid using this for native, nativesdk or cross recipes +COMPATOS = "" +# Set the regex for target recipes only, follow TARGET_OS default +COMPATOS_class-target = ".*-linux${LIBCEXTENSION}${ABIEXTENSION}" +COMPATIBLE_HOST ?= "${COMPATOS}" + +# Clear defaults +DISTRO_FEATURES_BACKFILL_xilinx-standalone = "" +VIRTUAL-RUNTIME_init_manager_xilinx-standalone = "" + +PREFERRED_PROVIDER_virtual/kernel = "linux-dummy" + +# Hold this until it gets merged in core, we need libc.a and libgloss.a for cross-canadian +LIBC_DEPENDENCIES_append = " newlib-staticdev libgloss-staticdev" + +# No cached configsite files +TOOLCHAIN_NEED_CONFIGSITE_CACHE = "" + +# Workaround for pulling in nativesdk-mingw-w64-winpthreads +TOOLCHAIN_HOST_TASK_append_sdkmingw32 = " nativesdk-mingw-w64-winpthreads" |