Split out shared GLOBAL_* flags from kernel

GLOBAL_*FLAGS are currently mutable and shared between the kernel and
userspace builds. We don't want kernel flags leaking into userspace and
vice versa, but would like to share the bulk of these flags.

Splits GLOBAL_*FLAGS variables into a GLOBAL_SHARED_ and GLOBAL_KERNEL_
variant, combining these into GLOBAL_*FLAGS for use in the kernel build.
The GLOBAL_SHARED_*FLAGS will be used by userspace builds as well,
without any of the kernel-specific flags.

Test: build.py qemu-generic-arm64-test-debug
Bug: 169448829
Change-Id: If81f9eb24c7700cfb6e146ccbdc86e0bbee6cccd
2 files changed
tree: 235f47adb75410181c799144a5b1aeb2a214273e
  1. app/
  2. arch/
  3. dev/
  4. external/
  5. hosttests/
  6. include/
  7. kernel/
  8. lib/
  9. make/
  10. platform/
  11. target/
  12. tools/
  13. top/
  14. .clang-format
  15. .gitignore
  16. build-config-kerneltests
  17. engine.mk
  18. kerneltests-inc.mk
  19. LICENSE
  20. lk_inc.mk.example
  21. makefile
  22. README.md
README.md

LK

The LK embedded kernel. An SMP-aware kernel designed for small systems.

See https://github.com/littlekernel/lk for the latest version.

See https://github.com/littlekernel/lk/wiki for documentation.

Builds

Build Status

To build and test for ARM on linux

  1. install or build qemu. v2.4 and above is recommended.
  2. install gcc for embedded arm (see note 1)
  3. run scripts/do-qemuarm (from the lk directory)
  4. you should see ‘welcome to lk/MP’

This will get you a interactive prompt into LK which is running in qemu arm machine ‘virt’ emulation. type ‘help’ for commands.

note 1: for ubuntu: sudo apt-get install gcc-arm-none-eabi or fetch a prebuilt toolchain from http://newos.org/toolchains/arm-eabi-5.3.0-Linux-x86_64.tar.xz