BSD compatibility is not optional for the kernel to build, however
platform dependent portion of this configuration, machine_resource_init(),
which is called by nexus_init() is implemented only in the platform
specific library for HiSilicon chips (libhi35xx_bsp.a).
Workaround lack of this library, so that the kernel can be built
for other platforms as well, by excluding it from the compilation.
This change should be removed as soon as the appropriate function
is implemented for other platforms.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I66f15b167b9769f17820f5f0edb7ae8b0ebc9246
During LiteOS consolidation, system_init.o object that contains
SystemInit() doesn't exist yet as it is being built later
and linked in ./vendor directory when OHOS_Image is created.
This is not the case when building for HiSilicon platforms as
SystemInit is provided for them in precompiled libraries.
Workaround this issue by creating "weak" function in LiteOS
that will be replaced by the "strong" symbol from ./vendor
in linking phase of the OHOS_Image.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I39f327a350722a3e41a370ee93ba3b734c5681b0
Disable LTO to avoid undefined __stack_chk_guard symbol
problem. "externally_visible" attribute could be a fix for
that but it is not known to our LLVM.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I39e0ccaee5897c696a7a9a235e433cf9113853ce
Fix unused function warning treated as error
when KERNEL_DYNLOAD option is switched off.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I21a01ff3d7ecb7b2e65bacbaa985c6390f5e4be7
Fix build when BASE_CORE_HILOG option is disabled.
Use similar printing function to output missing HILOG
logs.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: Id5c63568ccb1ba90daadddf7e26d3e0f6c9f30ce
HiSilicon-specific randomization routine for the __stack_chk_guard
should not be called for other platforms that don't implement
this function.
Fix build for targets that don't link with HiSi libraries when
stack smashing protector is enabled.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I1843c897b32991fddc3d0ba362d188c4a621d052
Currently disabling stack protector will cause build to fail.
This commit will fix that problem and allow to toggle feature
when needed.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: Iee8ccfdb9fce4ba69aa557e2ac915ddc45b2f21e
Remove some dependencies on HiSilicon and add new platform to build.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: I8504bcc9a1bf1756e1e20694986d7774156f8b8e
Qemu ARM virtual platform emulates an ARM machine
with configurable, ARM components. This commit adds
configuration option for Cortex-A7 based virtual machine.
qemu_arm_virt_ca7 name is derived from a command
to invoke Qemu:
qemu-system-arm -M virt -cpu cortex-a7
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: Ia267ee7c989b8c22e6c19d6f11ff3ee2eef8148b
conf --silentoldconfig generates required autoconf.h file
but when invoked on modified Kconfig it will ask for user
input which breaks the build. To automatically regenerate
config structure and then autogenerate headers run
config --olddefconfig first.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: If7f7653c80cc0c5c0d84015b8e50fcb66568d00a