From ac8c2c6d5b9ede0e46b48212f0b3447605a613c4 Mon Sep 17 00:00:00 2001 From: Caoruihong <crh.cao@huawei.com> Date: Wed, 7 Jul 2021 00:03:12 +0800 Subject: [PATCH] fix: minimal compile fix compile errors in minimal compilation Signed-off-by: Caoruihong <crh.cao@huawei.com> Change-Id: I48f4f7b27c684e2c747c1949776c5c4f9e383dec --- apps/module.mk | 2 ++ arch/arm/arm/src/los_exc.c | 2 +- fs/proc/os_adapt/kernel_trace_proc.c | 2 +- kernel/base/core/los_task.c | 2 ++ kernel/base/include/los_task_pri.h | 2 ++ kernel/base/ipc/los_signal.c | 2 ++ kernel/base/vm/los_vm_filemap.c | 2 ++ syscall/los_syscall.h | 2 ++ .../mini_qemu_liteos_a_clang.config} | 1 + .../mini_qemu_liteos_a_clang_release.config | 15 +++++++++++++++ tools/build/mk/los_config.mk | 2 ++ 11 files changed, 32 insertions(+), 2 deletions(-) rename tools/build/config/{qemu_arm_virt_mini.config => debug/mini_qemu_liteos_a_clang.config} (94%) create mode 100644 tools/build/config/mini_qemu_liteos_a_clang_release.config diff --git a/apps/module.mk b/apps/module.mk index e2d014d6..b3df0fc2 100644 --- a/apps/module.mk +++ b/apps/module.mk @@ -45,6 +45,8 @@ endif #only enable for qemu now ifeq ($(LOSCFG_PLATFORM_QEMU_ARM_VIRT_CA7), y) +ifeq ($(LOSCFG_SHELL), y) APP_SUBDIRS += mksh APP_SUBDIRS += toybox endif +endif diff --git a/arch/arm/arm/src/los_exc.c b/arch/arm/arm/src/los_exc.c index 06bbdb39..5c1b10a7 100644 --- a/arch/arm/arm/src/los_exc.c +++ b/arch/arm/arm/src/los_exc.c @@ -1182,7 +1182,7 @@ __attribute__((noinline)) VOID LOS_Panic(const CHAR *fmt, ...) } /* stack protector */ -UINT32 __stack_chk_guard = 0xd00a0dff; +USED UINT32 __stack_chk_guard = 0xd00a0dff; VOID __stack_chk_fail(VOID) { diff --git a/fs/proc/os_adapt/kernel_trace_proc.c b/fs/proc/os_adapt/kernel_trace_proc.c index dbb77853..16445b81 100644 --- a/fs/proc/os_adapt/kernel_trace_proc.c +++ b/fs/proc/os_adapt/kernel_trace_proc.c @@ -32,9 +32,9 @@ #include <sys/statfs.h> #include <sys/mount.h> #include "proc_fs.h" -#include "los_trace.h" #ifdef LOSCFG_KERNEL_TRACE +#include "los_trace.h" static int KernelTraceProcFill(struct SeqBuf *m, void *v) { (void)v; diff --git a/kernel/base/core/los_task.c b/kernel/base/core/los_task.c index 0eadc9db..f7b3b1a9 100644 --- a/kernel/base/core/los_task.c +++ b/kernel/base/core/los_task.c @@ -1413,6 +1413,7 @@ STATIC VOID OsExitGroupActiveTaskKilled(LosProcessCB *processCB, LosTaskCB *task LOS_MpSchedule(taskCB->currCpu); } else #endif +#ifdef LOSCFG_KERNEL_VM { ret = OsTaskKillUnsafe(taskCB->taskID, SIGKILL); if (ret != LOS_OK) { @@ -1420,6 +1421,7 @@ STATIC VOID OsExitGroupActiveTaskKilled(LosProcessCB *processCB, LosTaskCB *task taskCB->processID, OsCurrTaskGet()->taskID, taskCB->taskID, ret); } } +#endif if (!(taskCB->taskStatus & OS_TASK_FLAG_PTHREAD_JOIN)) { taskCB->taskStatus |= OS_TASK_FLAG_PTHREAD_JOIN; diff --git a/kernel/base/include/los_task_pri.h b/kernel/base/include/los_task_pri.h index b19f74e8..e2e33c02 100644 --- a/kernel/base/include/los_task_pri.h +++ b/kernel/base/include/los_task_pri.h @@ -45,7 +45,9 @@ #include "los_cpup_pri.h" #endif +#ifdef LOSCFG_KERNEL_TRACE #include "los_trace.h" +#endif #ifdef __cplusplus #if __cplusplus diff --git a/kernel/base/ipc/los_signal.c b/kernel/base/ipc/los_signal.c index 06fee687..5366e56e 100644 --- a/kernel/base/ipc/los_signal.c +++ b/kernel/base/ipc/los_signal.c @@ -101,11 +101,13 @@ STATIC UINT32 OsPendingTaskWake(LosTaskCB *taskCB, INT32 signo) case OS_TASK_WAIT_SIGNAL: OsSigWaitTaskWake(taskCB, signo); break; +#ifdef LOSCFG_KERNEL_LITEIPC case OS_TASK_WAIT_LITEIPC: taskCB->ipcStatus &= ~IPC_THREAD_STATUS_PEND; OsTaskWakeClearPendMask(taskCB); OsSchedTaskWake(taskCB); break; +#endif case OS_TASK_WAIT_FUTEX: OsFutexNodeDeleteFromFutexHash(&taskCB->futex, TRUE, NULL, NULL); OsTaskWakeClearPendMask(taskCB); diff --git a/kernel/base/vm/los_vm_filemap.c b/kernel/base/vm/los_vm_filemap.c index 9a6ec2ce..c248d3de 100644 --- a/kernel/base/vm/los_vm_filemap.c +++ b/kernel/base/vm/los_vm_filemap.c @@ -41,7 +41,9 @@ #include "los_vm_fault.h" #include "los_process_pri.h" #include "los_vm_lock.h" +#ifdef LOSCFG_FS_VFS #include "vnode.h" +#endif #ifndef UNUSED #define UNUSED(x) (VOID)x diff --git a/syscall/los_syscall.h b/syscall/los_syscall.h index 14995d43..37429b88 100644 --- a/syscall/los_syscall.h +++ b/syscall/los_syscall.h @@ -62,7 +62,9 @@ #endif #include <sys/wait.h> #include "sys/resource.h" +#ifdef LOSCFG_FS_VFS #include "vnode.h" +#endif /* process */ extern unsigned int SysGetGroupId(void); diff --git a/tools/build/config/qemu_arm_virt_mini.config b/tools/build/config/debug/mini_qemu_liteos_a_clang.config similarity index 94% rename from tools/build/config/qemu_arm_virt_mini.config rename to tools/build/config/debug/mini_qemu_liteos_a_clang.config index 1300f151..6670fbb1 100644 --- a/tools/build/config/qemu_arm_virt_mini.config +++ b/tools/build/config/debug/mini_qemu_liteos_a_clang.config @@ -2,6 +2,7 @@ LOSCFG_PLATFORM_QEMU_ARM_VIRT_CA7=y LOSCFG_BOARD_CONFIG_PATH="device/qemu/arm_virt/liteos_a/config/board" # LOSCFG_HRTIMER_ENABLE is not set # LOSCFG_IRQ_USE_STANDALONE_STACK is not set +# LOSCFG_BLACKBOX is not set # LOSCFG_KERNEL_MMU is not set # LOSCFG_KERNEL_EXTKERNEL is not set # LOSCFG_BASE_CORE_HILOG is not set diff --git a/tools/build/config/mini_qemu_liteos_a_clang_release.config b/tools/build/config/mini_qemu_liteos_a_clang_release.config new file mode 100644 index 00000000..6670fbb1 --- /dev/null +++ b/tools/build/config/mini_qemu_liteos_a_clang_release.config @@ -0,0 +1,15 @@ +LOSCFG_PLATFORM_QEMU_ARM_VIRT_CA7=y +LOSCFG_BOARD_CONFIG_PATH="device/qemu/arm_virt/liteos_a/config/board" +# LOSCFG_HRTIMER_ENABLE is not set +# LOSCFG_IRQ_USE_STANDALONE_STACK is not set +# LOSCFG_BLACKBOX is not set +# LOSCFG_KERNEL_MMU is not set +# LOSCFG_KERNEL_EXTKERNEL is not set +# LOSCFG_BASE_CORE_HILOG is not set +# LOSCFG_LIB_ZLIB is not set +# LOSCFG_FS_VFS is not set +# LOSCFG_NET_LWIP_SACK is not set +# LOSCFG_PLATFORM_ADAPT is not set +# LOSCFG_ENABLE_MAGICKEY is not set +# LOSCFG_DRIVERS is not set +# LOSCFG_SECURITY is not set diff --git a/tools/build/mk/los_config.mk b/tools/build/mk/los_config.mk index ad304b7f..93f4e3b2 100644 --- a/tools/build/mk/los_config.mk +++ b/tools/build/mk/los_config.mk @@ -198,9 +198,11 @@ ifeq ($(LOSCFG_KERNEL_VDSO), y) LITEOS_VDSO_INCLUDE += -I $(LITEOSTOPDIR)/kernel/extended/vdso/include endif +ifeq ($(LOSCFG_KERNEL_TRACE), y) LITEOS_BASELIB += -ltrace LIB_SUBDIRS += kernel/extended/trace LITEOS_TRACE_INCLUDE += -I $(LITEOSTOPDIR)/kernel/extended/trace +endif ifeq ($(LOSCFG_KERNEL_LITEIPC), y) LITEOS_BASELIB += -lliteipc -- Gitee