user: implement mlibc as the libc, finally.
It's finally done.. Signed-off-by: kaguya <vpshinomiya@protonmail.com>
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
[suppress_function]
|
||||
name_regexp = ^(mlibc|frg|std)::.*
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'aero'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'astral'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,228 @@
|
||||
declare_options:
|
||||
- name: arch
|
||||
default: x86_64
|
||||
- name: compiler
|
||||
default: gcc
|
||||
|
||||
sources:
|
||||
- name: mlibc
|
||||
git: 'https://github.com/managarm/mlibc.git'
|
||||
branch: 'master'
|
||||
|
||||
- name: linux
|
||||
url: 'https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.14.tar.xz'
|
||||
extract_path: 'linux-6.14'
|
||||
format: 'tar.xz'
|
||||
version: '6.14'
|
||||
|
||||
- name: libdrm
|
||||
subdir: 'ports'
|
||||
git: 'https://gitlab.freedesktop.org/mesa/drm.git'
|
||||
tag: 'libdrm-2.4.124'
|
||||
version: '2.4.124'
|
||||
|
||||
tools: []
|
||||
|
||||
packages:
|
||||
- name: mlibc
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: mlibc
|
||||
pkgs_required:
|
||||
- linux-headers
|
||||
- libdrm-headers
|
||||
configure:
|
||||
- args:
|
||||
- 'meson'
|
||||
- 'setup'
|
||||
- '--prefix=/usr'
|
||||
- '--libdir=lib'
|
||||
- '--buildtype=debugoptimized'
|
||||
- "-Dc_args=['-Wno-error=maybe-uninitialized', '-Wno-unknown-warning-option']"
|
||||
- "-Dcpp_args=['-Wno-error=maybe-uninitialized', '-Wno-unknown-warning-option']"
|
||||
- "-Dlibgcc_dependency=false"
|
||||
- "-Duse_freestnd_hdrs=enabled"
|
||||
- "-Dbuild_tests=true"
|
||||
- "-Db_sanitize=undefined"
|
||||
- "-Ddefault_library=both"
|
||||
- "-Dwerror=true"
|
||||
- '-Dlinux_kernel_headers=@BUILD_ROOT@/packages/linux-headers/usr/include'
|
||||
- "--cross-file=@THIS_SOURCE_DIR@/ci/linux-@OPTION:arch@-@OPTION:compiler@.cross-file"
|
||||
- '@THIS_SOURCE_DIR@'
|
||||
environ:
|
||||
CFLAGS: '-Wno-error=maybe-uninitialized'
|
||||
CXXFLAGS: '-Wno-error=maybe-uninitialized'
|
||||
LDFLAGS: '-Wl,/tmp/libgcc-@OPTION:arch@.a'
|
||||
build:
|
||||
- args: ['ninja']
|
||||
- args: ['ninja', 'install']
|
||||
environ:
|
||||
DESTDIR: '@THIS_COLLECT_DIR@'
|
||||
quiet: true
|
||||
|
||||
- name: mlibc-static
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: mlibc
|
||||
pkgs_required:
|
||||
- linux-headers
|
||||
- libdrm-headers
|
||||
configure:
|
||||
- args:
|
||||
- 'meson'
|
||||
- 'setup'
|
||||
- '--prefix=/usr'
|
||||
- '--libdir=lib'
|
||||
- '--buildtype=debugoptimized'
|
||||
- "-Dc_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dcpp_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dlibgcc_dependency=false"
|
||||
- "-Duse_freestnd_hdrs=enabled"
|
||||
- "-Dbuild_tests=true"
|
||||
- "-Db_sanitize=undefined"
|
||||
- "-Ddefault_library=static"
|
||||
- "-Dwerror=true"
|
||||
- '-Dlinux_kernel_headers=@BUILD_ROOT@/packages/linux-headers/usr/include'
|
||||
- "--cross-file=@THIS_SOURCE_DIR@/ci/linux-@OPTION:arch@-@OPTION:compiler@.cross-file"
|
||||
- '@THIS_SOURCE_DIR@'
|
||||
environ:
|
||||
LDFLAGS: '-Wl,/tmp/libgcc-@OPTION:arch@.a'
|
||||
build:
|
||||
- args: ['ninja']
|
||||
- args: ['ninja', 'install']
|
||||
environ:
|
||||
DESTDIR: '@THIS_COLLECT_DIR@'
|
||||
quiet: true
|
||||
|
||||
- name: mlibc-shared
|
||||
from_source: mlibc
|
||||
pkgs_required:
|
||||
- linux-headers
|
||||
- libdrm-headers
|
||||
configure:
|
||||
- args:
|
||||
- 'meson'
|
||||
- 'setup'
|
||||
- '--prefix=/usr'
|
||||
- '--libdir=lib'
|
||||
- '--buildtype=debugoptimized'
|
||||
- "-Dc_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dcpp_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dlibgcc_dependency=false"
|
||||
- "-Duse_freestnd_hdrs=enabled"
|
||||
- "-Dbuild_tests=true"
|
||||
- "-Db_sanitize=undefined"
|
||||
- "-Ddefault_library=shared"
|
||||
- "-Dwerror=true"
|
||||
- '-Dlinux_kernel_headers=@BUILD_ROOT@/packages/linux-headers/usr/include'
|
||||
- "--cross-file=@THIS_SOURCE_DIR@/ci/linux-@OPTION:arch@-@OPTION:compiler@.cross-file"
|
||||
- '@THIS_SOURCE_DIR@'
|
||||
environ:
|
||||
LDFLAGS: '-Wl,/tmp/libgcc-@OPTION:arch@.a'
|
||||
build:
|
||||
- args: ['ninja']
|
||||
- args: ['ninja', 'install']
|
||||
environ:
|
||||
DESTDIR: '@THIS_COLLECT_DIR@'
|
||||
quiet: true
|
||||
|
||||
- name: mlibc-ansi-only
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: mlibc
|
||||
pkgs_required:
|
||||
- linux-headers
|
||||
- libdrm-headers
|
||||
configure:
|
||||
- args:
|
||||
- 'meson'
|
||||
- 'setup'
|
||||
- '--prefix=/usr'
|
||||
- '--libdir=lib'
|
||||
- '--buildtype=debugoptimized'
|
||||
- "-Dc_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dcpp_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dlibgcc_dependency=false"
|
||||
- "-Duse_freestnd_hdrs=enabled"
|
||||
- "-Dbuild_tests=true"
|
||||
- "-Db_sanitize=undefined"
|
||||
- "-Ddefault_library=both"
|
||||
- "-Dwerror=true"
|
||||
- "-Dposix_option=disabled"
|
||||
- "-Dlinux_option=disabled"
|
||||
- "-Dglibc_option=disabled"
|
||||
- "-Dbsd_option=disabled"
|
||||
- '-Dlinux_kernel_headers=@BUILD_ROOT@/packages/linux-headers/usr/include'
|
||||
- "--cross-file=@THIS_SOURCE_DIR@/ci/linux-@OPTION:arch@-@OPTION:compiler@.cross-file"
|
||||
- '@THIS_SOURCE_DIR@'
|
||||
environ:
|
||||
LDFLAGS: '-Wl,/tmp/libgcc-@OPTION:arch@.a'
|
||||
build:
|
||||
- args: ['ninja']
|
||||
- args: ['ninja', 'install']
|
||||
environ:
|
||||
DESTDIR: '@THIS_COLLECT_DIR@'
|
||||
quiet: true
|
||||
|
||||
- name: mlibc-headers-only
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: mlibc
|
||||
pkgs_required:
|
||||
- linux-headers
|
||||
- libdrm-headers
|
||||
configure:
|
||||
- args:
|
||||
- 'meson'
|
||||
- 'setup'
|
||||
- '--prefix=/usr'
|
||||
- '--libdir=lib'
|
||||
- '--buildtype=debugoptimized'
|
||||
- "-Dc_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dcpp_args=['-Wno-error=maybe-uninitialized']"
|
||||
- "-Dlibgcc_dependency=false"
|
||||
- "-Duse_freestnd_hdrs=enabled"
|
||||
- "-Db_sanitize=undefined"
|
||||
- "-Dwerror=true"
|
||||
- "-Dheaders_only=true"
|
||||
- '-Dlinux_kernel_headers=@BUILD_ROOT@/packages/linux-headers/usr/include'
|
||||
- "--cross-file=@THIS_SOURCE_DIR@/ci/linux-@OPTION:arch@-@OPTION:compiler@.cross-file"
|
||||
- '@THIS_SOURCE_DIR@'
|
||||
environ:
|
||||
LDFLAGS: '-Wl,/tmp/libgcc-@OPTION:arch@.a'
|
||||
build:
|
||||
- args: ['ninja']
|
||||
- args: ['ninja', 'install']
|
||||
environ:
|
||||
DESTDIR: '@THIS_COLLECT_DIR@'
|
||||
quiet: true
|
||||
|
||||
- name: linux-headers
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: linux
|
||||
configure:
|
||||
# custom build system requires in tree-ish builds
|
||||
- args: ['cp', '-Tr', '@THIS_SOURCE_DIR@/', '.']
|
||||
build:
|
||||
- args: |
|
||||
LINUX_ARCH="@OPTION:arch@"
|
||||
case "$LINUX_ARCH" in
|
||||
"aarch64")
|
||||
LINUX_ARCH="arm64"
|
||||
;;
|
||||
"riscv64")
|
||||
LINUX_ARCH="riscv"
|
||||
;;
|
||||
"loongarch64")
|
||||
LINUX_ARCH="loongarch"
|
||||
;;
|
||||
esac
|
||||
make O=@THIS_COLLECT_DIR@ ARCH="$LINUX_ARCH" headers_install
|
||||
|
||||
- name: libdrm-headers
|
||||
architecture: '@OPTION:arch@'
|
||||
from_source: 'libdrm'
|
||||
build:
|
||||
- args: ['mkdir', '-p', '@THIS_COLLECT_DIR@/usr/src/libdrm-headers']
|
||||
- args: |
|
||||
cat << EOF > @THIS_COLLECT_DIR@/usr/src/libdrm-headers/meson.build
|
||||
project('libdrm-headers')
|
||||
libdrm_dep = declare_dependency(include_directories: include_directories('include'))
|
||||
EOF
|
||||
- args: ['cp', '-r', '@THIS_SOURCE_DIR@/include', '@THIS_COLLECT_DIR@/usr/src/libdrm-headers/include']
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'dripos'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'ironclad'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,9 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[host_machine]
|
||||
system = 'keyronex'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'lemon'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,13 @@
|
||||
[properties]
|
||||
skip_sanity_check = true
|
||||
|
||||
[binaries]
|
||||
c = 'aarch64-linux-gnu-gcc'
|
||||
cpp = 'aarch64-linux-gnu-g++'
|
||||
exe_wrapper = 'qemu-aarch64'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'aarch64'
|
||||
cpu = 'unknown'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,13 @@
|
||||
[binaries]
|
||||
c = 'loongarch64-linux-gnu-gcc'
|
||||
cpp = 'loongarch64-linux-gnu-g++'
|
||||
exe_wrapper = 'qemu-loongarch64'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'loongarch64'
|
||||
cpu = 'loongarch64'
|
||||
endian = 'little'
|
||||
|
||||
[properties]
|
||||
skip_sanity_check = true
|
||||
@@ -0,0 +1,13 @@
|
||||
[binaries]
|
||||
c = 'm68k-linux-gnu-gcc'
|
||||
cpp = 'm68k-linux-gnu-g++'
|
||||
exe_wrapper = 'qemu-m68k'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'm68k'
|
||||
cpu = 'm68k'
|
||||
endian = 'big'
|
||||
|
||||
[properties]
|
||||
skip_sanity_check = true
|
||||
@@ -0,0 +1,13 @@
|
||||
[properties]
|
||||
skip_sanity_check = true
|
||||
|
||||
[binaries]
|
||||
c = 'riscv64-linux-gnu-gcc'
|
||||
cpp = 'riscv64-linux-gnu-g++'
|
||||
exe_wrapper = 'qemu-riscv64'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'riscv64'
|
||||
cpu = 'unknown'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,13 @@
|
||||
[binaries]
|
||||
c = 'i686-linux-gnu-gcc'
|
||||
cpp = 'i686-linux-gnu-g++'
|
||||
exe_wrapper = 'qemu-i386'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'x86'
|
||||
cpu = 'i386'
|
||||
endian = 'little'
|
||||
|
||||
[properties]
|
||||
skip_sanity_check = true
|
||||
@@ -0,0 +1,11 @@
|
||||
[binaries]
|
||||
c = 'clang'
|
||||
c_ld = 'lld'
|
||||
cpp = 'clang++'
|
||||
cpp_ld = 'lld'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,9 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'managarm'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'menix'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'nyaux'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,12 @@
|
||||
[binaries]
|
||||
c = 'gcc'
|
||||
cpp = 'g++'
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'vinix'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
Reference in New Issue
Block a user