Browse Source

Add sample for kvx-unknown-elf and kvx-unknown-linux-uclibc

master
Marc Poulhiès 3 years ago
parent
commit
d62e09538e
  1. 27
      .github/workflows/kvx.yaml
  2. 45
      ctng.patch
  3. 23
      samples/kvx-unknown-elf/crosstool.config
  4. 3
      samples/kvx-unknown-elf/reported.by
  5. 28
      samples/kvx-unknown-linux-uclibc/crosstool.config
  6. 3
      samples/kvx-unknown-linux-uclibc/reported.by
  7. 13
      scripts/build/arch/kvx.sh

27
.github/workflows/kvx.yaml

@ -0,0 +1,27 @@
name: Build kvx-elf and kvx-linux
on: [push]
jobs:
build:
strategy:
matrix:
os: [ubuntu-16.04,ubuntu-18.04]
target: [kvx-unknown-elf, kvx-unknown-linux-uclibc]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v1
- name: Install packages
run: sudo apt-get install bison flex libncurses5-dev texinfo help2man g++ libtool-bin
- name: Configure CTNG
run: ./bootstrap && ./configure --enable-local
- name: Build CTNG
run: make
- name: Configure ${{ matrix.target }}
run: ./ct-ng ${{ matrix.target }}
- name: Patch config
run: sed -i -e 's/^.*\(CT_LOG_PROGRESS_BAR\).*$/# \1 is not set/' .config
- name: Build ${{ matrix.target }}
run: ./ct-ng build

45
ctng.patch

@ -0,0 +1,45 @@
From c1cae7ca56f0933186884feacff94da5f5abf010 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc=20Poulhi=C3=A8s?= <marc.poulhies@kalray.eu>
Date: Fri, 8 Nov 2019 14:34:45 +0100
Subject: [PATCH] Simple initial support for K1 MPPA
Adds the strict minimum to build a bare-metal toolchain for K1 MPPA
by providing custom git path to Kalray's github repositories.
---
config/arch/k1.in | 10 ++++++++++
scripts/build/arch/k1.sh | 5 +++++
scripts/config.sub | 1 +
3 files changed, 16 insertions(+)
create mode 100644 config/arch/k1.in
create mode 100644 scripts/build/arch/k1.sh
diff --git a/config/arch/k1.in b/config/arch/k1.in
new file mode 100644
index 00000000..4c60c063
--- /dev/null
+++ b/config/arch/k1.in
@@ -0,0 +1,10 @@
+# K1 specific config options
+
+## no-package
+## select ARCH_SUPPORTS_32
+## select ARCH_SUPPORTS_64
+## select ARCH_DEFAULT_64
+## select ARCH_REQUIRES_MULTILIB
+##
+## help The K1 MPPA Coolidge architecture, as defined by:
+## help http://www.kalray.eu
diff --git a/scripts/build/arch/k1.sh b/scripts/build/arch/k1.sh
new file mode 100644
index 00000000..f6430ebf
--- /dev/null
+++ b/scripts/build/arch/k1.sh
@@ -0,0 +1,5 @@
+# Compute K1-specific values
+
+CT_DoArchTupleValues() {
+ CT_TARGET_ARCH="${CT_ARCH}"
+}
--
2.22.0.214.g8dca754b1e

23
samples/kvx-unknown-elf/crosstool.config

@ -0,0 +1,23 @@
CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_KVX=y
CT_BINUTILS_SRC_DEVEL=y
CT_BINUTILS_DEVEL_URL="https://github.com/kalray/gdb-binutils.git"
CT_BINUTILS_DEVEL_REVISION="bdb149798c216b022e27bede46a046a08b81f534"
CT_BINUTILS_V_2_26=y
CT_NEWLIB_SRC_DEVEL=y
CT_NEWLIB_DEVEL_URL="https://github.com/kalray/newlib.git"
CT_NEWLIB_DEVEL_REVISION="cadc197cdf7c435ccb146327df714667370132dd"
CT_NEWLIB_V_3_0=y
CT_LIBC_NEWLIB_REGISTER_FINI=y
CT_LIBC_NEWLIB_EXTRA_SECTIONS=y
CT_GCC_SRC_DEVEL=y
CT_GCC_DEVEL_VCS_git=y
CT_GCC_DEVEL_URL="https://github.com/kalray/gcc.git"
CT_GCC_DEVEL_REVISION="6698b7c1f95d409c17010ebb371365929a75aed1"
CT_GCC_V_7=y
# CT_CC_GCC_STATIC_LIBSTDCXX is not set
CT_CC_GCC_LDBL_128=y
CT_CC_LANG_CXX=y
CT_COMP_LIBS_EXPAT=y
CT_COMP_LIBS_NCURSES=y

3
samples/kvx-unknown-elf/reported.by

@ -0,0 +1,3 @@
reporter_name="Marc POULHIÈS"
reporter_url=""
reporter_comment=""

28
samples/kvx-unknown-linux-uclibc/crosstool.config

@ -0,0 +1,28 @@
CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_KVX=y
CT_KERNEL_LINUX=y
CT_LINUX_SRC_DEVEL=y
CT_LINUX_DEVEL_URL="https://github.com/kalray/linux_coolidge.git"
CT_LINUX_DEVEL_REVISION="63e18e21fc5ac4a4368eb2bc5383119f8a232bd8"
CT_LINUX_V_5_5=y
CT_BINUTILS_SRC_DEVEL=y
CT_BINUTILS_DEVEL_URL="https://github.com/kalray/gdb-binutils.git"
CT_BINUTILS_DEVEL_REVISION="bdb149798c216b022e27bede46a046a08b81f534"
CT_BINUTILS_V_2_26=y
CT_LIBC_UCLIBC=y
CT_UCLIBC_NG_SRC_DEVEL=y
CT_UCLIBC_NG_DEVEL_URL="https://github.com/kalray/uclibc-ng.git"
CT_UCLIBC_NG_DEVEL_REVISION="1e9b2e66b189858d3a277e2c86f65d9e27c689d6"
CT_UCLIBC_NG_V_1_0_32=y
CT_THREADS_NONE=y
CT_GCC_SRC_DEVEL=y
CT_GCC_DEVEL_VCS_git=y
CT_GCC_DEVEL_URL="https://github.com/kalray/gcc.git"
CT_GCC_DEVEL_REVISION="6698b7c1f95d409c17010ebb371365929a75aed1"
CT_GCC_V_7=y
# CT_CC_GCC_STATIC_LIBSTDCXX is not set
CT_CC_GCC_LDBL_128=y
CT_CC_LANG_CXX=y
CT_COMP_LIBS_EXPAT=y
CT_COMP_LIBS_NCURSES=y

3
samples/kvx-unknown-linux-uclibc/reported.by

@ -0,0 +1,3 @@
reporter_name="Marc POULHIÈS"
reporter_url=""
reporter_comment=""

13
scripts/build/arch/kvx.sh

@ -0,0 +1,13 @@
# Compute KVX-specific values
CT_DoArchTupleValues() {
CT_TARGET_ARCH="${CT_ARCH}"
}
CT_DoArchUClibcConfig()
{
local cfg="${1}"
CT_DoArchUClibcSelectArch "${cfg}" "kvx"
}
Loading…
Cancel
Save