meta: add mlibc-config.h and replace bit/features.h
This commit is contained in:
parent
a80b6af80a
commit
a187dfef40
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <bits/feature.h>
|
|
||||||
#include <abi-bits/pid_t.h>
|
#include <abi-bits/pid_t.h>
|
||||||
#include <abi-bits/uid_t.h>
|
#include <abi-bits/uid_t.h>
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#ifndef _ABIBITS_SIGNAL_H
|
#ifndef _ABIBITS_SIGNAL_H
|
||||||
#define _ABIBITS_SIGNAL_H
|
#define _ABIBITS_SIGNAL_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
|
||||||
|
|
||||||
#include <abi-bits/pid_t.h>
|
#include <abi-bits/pid_t.h>
|
||||||
#include <abi-bits/uid_t.h>
|
#include <abi-bits/uid_t.h>
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
#mesondefine MLIBC_SYSTEM_NAME
|
#mesondefine MLIBC_SYSTEM_NAME
|
||||||
#mesondefine MLIBC_MAP_DSO_SEGMENTS
|
#mesondefine MLIBC_MAP_DSO_SEGMENTS
|
||||||
|
|
15
meson.build
15
meson.build
|
@ -31,6 +31,7 @@ disable_linux_option = get_option('disable_linux_option')
|
||||||
disable_iconv_option = get_option('disable_iconv_option')
|
disable_iconv_option = get_option('disable_iconv_option')
|
||||||
disable_intl_option = get_option('disable_intl_option')
|
disable_intl_option = get_option('disable_intl_option')
|
||||||
internal_conf = configuration_data()
|
internal_conf = configuration_data()
|
||||||
|
mlibc_conf = configuration_data()
|
||||||
|
|
||||||
if not headers_only
|
if not headers_only
|
||||||
cxxshim_dep = subproject('cxxshim').get_variable('cxxshim_dep')
|
cxxshim_dep = subproject('cxxshim').get_variable('cxxshim_dep')
|
||||||
|
@ -127,6 +128,12 @@ endif
|
||||||
# Configuration based on enabled options.
|
# Configuration based on enabled options.
|
||||||
#----------------------------------------------------------------------------------------
|
#----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
mlibc_conf.set('__MLIBC_ANSI_OPTION', not disable_ansi_option)
|
||||||
|
mlibc_conf.set('__MLIBC_POSIX_OPTION', not disable_posix_option)
|
||||||
|
mlibc_conf.set('__MLIBC_LINUX_OPTION', not disable_linux_option)
|
||||||
|
mlibc_conf.set('__MLIBC_INTL_OPTION', not disable_intl_option)
|
||||||
|
mlibc_conf.set('__MLIBC_ICONV_OPTION', not disable_iconv_option)
|
||||||
|
|
||||||
if not disable_ansi_option
|
if not disable_ansi_option
|
||||||
rtdl_include_dirs += include_directories('options/ansi/include')
|
rtdl_include_dirs += include_directories('options/ansi/include')
|
||||||
libc_include_dirs += include_directories('options/ansi/include')
|
libc_include_dirs += include_directories('options/ansi/include')
|
||||||
|
@ -150,6 +157,7 @@ rtdl_include_dirs += include_directories('options/elf/include')
|
||||||
rtdl_include_dirs += include_directories('options/linux/include')
|
rtdl_include_dirs += include_directories('options/linux/include')
|
||||||
libc_include_dirs += include_directories('options/elf/include')
|
libc_include_dirs += include_directories('options/elf/include')
|
||||||
libc_include_dirs += include_directories('options/linux/include')
|
libc_include_dirs += include_directories('options/linux/include')
|
||||||
|
libc_include_dirs += include_directories('.')
|
||||||
|
|
||||||
#----------------------------------------------------------------------------------------
|
#----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -157,6 +165,12 @@ configure_file(input: 'internal-config.h.in',
|
||||||
output: 'internal-config.h',
|
output: 'internal-config.h',
|
||||||
configuration: internal_conf)
|
configuration: internal_conf)
|
||||||
|
|
||||||
|
configure_file(input: 'mlibc-config.h.in',
|
||||||
|
output: 'mlibc-config.h',
|
||||||
|
configuration: mlibc_conf,
|
||||||
|
install: true,
|
||||||
|
install_dir: get_option('includedir'))
|
||||||
|
|
||||||
internal_sources = [
|
internal_sources = [
|
||||||
'options/internal/generic/allocator.cpp',
|
'options/internal/generic/allocator.cpp',
|
||||||
'options/internal/generic/charcode.cpp',
|
'options/internal/generic/charcode.cpp',
|
||||||
|
@ -188,7 +202,6 @@ if not no_headers
|
||||||
install_headers(
|
install_headers(
|
||||||
'options/internal/include/bits/wchar_t.h',
|
'options/internal/include/bits/wchar_t.h',
|
||||||
'options/internal/include/bits/wint_t.h',
|
'options/internal/include/bits/wint_t.h',
|
||||||
'options/internal/include/bits/feature.h',
|
|
||||||
'options/internal/include/bits/size_t.h',
|
'options/internal/include/bits/size_t.h',
|
||||||
'options/internal/include/bits/types.h',
|
'options/internal/include/bits/types.h',
|
||||||
'options/internal/include/bits/ensure.h',
|
'options/internal/include/bits/ensure.h',
|
||||||
|
|
10
mlibc-config.h.in
Normal file
10
mlibc-config.h.in
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
#ifndef _MLIBC_CONFIG_H
|
||||||
|
#define _MLIBC_CONFIG_H
|
||||||
|
|
||||||
|
#mesondefine __MLIBC_ANSI_OPTION
|
||||||
|
#mesondefine __MLIBC_POSIX_OPTION
|
||||||
|
#mesondefine __MLIBC_LINUX_OPTION
|
||||||
|
#mesondefine __MLIBC_INTL_OPTION
|
||||||
|
#mesondefine __MLIBC_ICONV_OPTION
|
||||||
|
|
||||||
|
#endif // _MLIBC_CONFIG_H
|
|
@ -121,7 +121,7 @@ int putenv(char *string) {
|
||||||
|
|
||||||
} // namespace mlibc
|
} // namespace mlibc
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
int putenv(char *string) {
|
int putenv(char *string) {
|
||||||
return mlibc::putenv(string);
|
return mlibc::putenv(string);
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include <bits/ensure.h>
|
#include <bits/ensure.h>
|
||||||
#include <bits/feature.h>
|
|
||||||
|
|
||||||
#include <mlibc/debug.hpp>
|
#include <mlibc/debug.hpp>
|
||||||
#include <frg/optional.hpp>
|
#include <frg/optional.hpp>
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
#include <mlibc/ansi-sysdeps.hpp>
|
#include <mlibc/ansi-sysdeps.hpp>
|
||||||
#include <mlibc/strtofp.hpp>
|
#include <mlibc/strtofp.hpp>
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
|
@ -274,7 +274,7 @@ int system(const char *command) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
pthread_testcancel();
|
pthread_testcancel();
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef _CTYPE_H
|
#ifndef _CTYPE_H
|
||||||
#define _CTYPE_H
|
#define _CTYPE_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@ -35,7 +35,7 @@ int toupper(int c);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_ctype.h>
|
# include <bits/posix/posix_ctype.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#ifndef _ERRNO_H
|
#ifndef _ERRNO_H
|
||||||
#define _ERRNO_H
|
#define _ERRNO_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
|
||||||
#include <abi-bits/errno.h>
|
#include <abi-bits/errno.h>
|
||||||
|
|
||||||
// Some programs define their own errno as an "extern int" if it is not a macro.
|
// Some programs define their own errno as an "extern int" if it is not a macro.
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#ifndef _LOCALE_H
|
#ifndef _LOCALE_H
|
||||||
#define _LOCALE_H
|
#define _LOCALE_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
#include <bits/null.h>
|
#include <bits/null.h>
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ struct lconv *localeconv(void);
|
||||||
|
|
||||||
// posix extension
|
// posix extension
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_locale.h>
|
# include <bits/posix/posix_locale.h>
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#ifndef _SETJMP_H
|
#ifndef _SETJMP_H
|
||||||
#define _SETJMP_H
|
#define _SETJMP_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/machine.h>
|
#include <bits/machine.h>
|
||||||
#include <abi-bits/signal.h>
|
#include <abi-bits/signal.h>
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ typedef struct {
|
||||||
sigset_t sigset;
|
sigset_t sigset;
|
||||||
} sigjmp_buf[1];
|
} sigjmp_buf[1];
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
__attribute__ (( returns_twice )) int sigsetjmp(sigjmp_buf buffer, int savesigs);
|
__attribute__ (( returns_twice )) int sigsetjmp(sigjmp_buf buffer, int savesigs);
|
||||||
__attribute__ (( noreturn )) void siglongjmp(sigjmp_buf buffer, int value);
|
__attribute__ (( noreturn )) void siglongjmp(sigjmp_buf buffer, int value);
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#define _SIGNAL_H
|
#define _SIGNAL_H
|
||||||
|
|
||||||
#include <abi-bits/signal.h>
|
#include <abi-bits/signal.h>
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@ -34,7 +34,7 @@ int raise(int sig);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_signal.h>
|
# include <bits/posix/posix_signal.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
#define _STDIO_H
|
#define _STDIO_H
|
||||||
|
|
||||||
#include <abi-bits/seek-whence.h>
|
#include <abi-bits/seek-whence.h>
|
||||||
#include <bits/feature.h>
|
|
||||||
#include <bits/null.h>
|
#include <bits/null.h>
|
||||||
#include <bits/size_t.h>
|
#include <bits/size_t.h>
|
||||||
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
// Glibc extensions require ssize_t.
|
// Glibc extensions require ssize_t.
|
||||||
#include <bits/ssize_t.h>
|
#include <bits/ssize_t.h>
|
||||||
|
@ -186,7 +186,7 @@ int fputs_unlocked(const char *, FILE *);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_stdio.h>
|
# include <bits/posix/posix_stdio.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#define _STDLIB_H
|
#define _STDLIB_H
|
||||||
|
|
||||||
#include <alloca.h>
|
#include <alloca.h>
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/null.h>
|
#include <bits/null.h>
|
||||||
#include <bits/size_t.h>
|
#include <bits/size_t.h>
|
||||||
#include <bits/wchar_t.h>
|
#include <bits/wchar_t.h>
|
||||||
|
@ -109,7 +109,7 @@ size_t wcstombs(char *mb_string, const wchar_t *__restrict wc_string, size_t max
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_stdlib.h>
|
# include <bits/posix/posix_stdlib.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef _STRING_H
|
#ifndef _STRING_H
|
||||||
#define _STRING_H
|
#define _STRING_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/null.h>
|
#include <bits/null.h>
|
||||||
#include <bits/size_t.h>
|
#include <bits/size_t.h>
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ int strverscmp(const char *l0, const char *r0);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_string.h>
|
# include <bits/posix/posix_string.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
#ifndef _TIME_H
|
#ifndef _TIME_H
|
||||||
#define _TIME_H
|
#define _TIME_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
|
||||||
#include <bits/null.h>
|
#include <bits/null.h>
|
||||||
#include <bits/size_t.h>
|
#include <bits/size_t.h>
|
||||||
#include <bits/ansi/time_t.h>
|
#include <bits/ansi/time_t.h>
|
||||||
#include <bits/ansi/timespec.h>
|
#include <bits/ansi/timespec.h>
|
||||||
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
// [7.27.1] Components of time
|
// [7.27.1] Components of time
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ void tzset(void);
|
||||||
|
|
||||||
// POSIX extensions.
|
// POSIX extensions.
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_time.h>
|
# include <bits/posix/posix_time.h>
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef _WCTYPE_H
|
#ifndef _WCTYPE_H
|
||||||
#define _WCTYPE_H
|
#define _WCTYPE_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/wint_t.h>
|
#include <bits/wint_t.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -41,7 +41,7 @@ wint_t towctrans(wint_t, wctrans_t);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <bits/posix/posix_wctype.h>
|
# include <bits/posix/posix_wctype.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
#ifndef _SYS_IOCTL_H
|
#ifndef _SYS_IOCTL_H
|
||||||
#define _SYS_IOCTL_H
|
#define _SYS_IOCTL_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
// On Linux, sys/ioctl.h includes the termios ioctls.
|
// On Linux, sys/ioctl.h includes the termios ioctls.
|
||||||
#if __MLIBC_LINUX_OPTION
|
// TODO(geert): fix this!!
|
||||||
|
// #ifdef __MLIBC_LINUX_OPTION
|
||||||
# include <asm/ioctls.h>
|
# include <asm/ioctls.h>
|
||||||
#endif
|
// #endif
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
#ifndef _BITS_FEATURE_H
|
|
||||||
#define _BITS_FEATURE_H
|
|
||||||
|
|
||||||
// TODO: The files for this macro are chosen somewhat arbitrarily.
|
|
||||||
// TODO: Choose canonical files (like a bits/posix/alltypes.h)
|
|
||||||
#define __MLIBC_ANSI_OPTION __has_include(<stdlib.h>)
|
|
||||||
#define __MLIBC_POSIX_OPTION __has_include(<unistd.h>)
|
|
||||||
#define __MLIBC_LINUX_OPTION __has_include(<linux/types.h>)
|
|
||||||
|
|
||||||
#endif // _BITS_FEATURE_H
|
|
|
@ -1,18 +1,18 @@
|
||||||
#ifndef MLIBC_ALL_SYSDEPS
|
#ifndef MLIBC_ALL_SYSDEPS
|
||||||
#define MLIBC_ALL_SYSDEPS
|
#define MLIBC_ALL_SYSDEPS
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <internal-config.h>
|
#include <internal-config.h>
|
||||||
|
|
||||||
#if __MLIBC_ANSI_OPTION
|
#ifdef __MLIBC_ANSI_OPTION
|
||||||
# include <mlibc/ansi-sysdeps.hpp>
|
# include <mlibc/ansi-sysdeps.hpp>
|
||||||
#endif // __MLIBC_ANSI_OPTION
|
#endif // __MLIBC_ANSI_OPTION
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
# include <mlibc/posix-sysdeps.hpp>
|
# include <mlibc/posix-sysdeps.hpp>
|
||||||
#endif // __MLIBC_POSIX_OPTION
|
#endif // __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
#if __MLIBC_LINUX_OPTION
|
#ifdef __MLIBC_LINUX_OPTION
|
||||||
# include <mlibc/linux-sysdeps.hpp>
|
# include <mlibc/linux-sysdeps.hpp>
|
||||||
#endif // __MLIBC_LINUX_OPTION
|
#endif // __MLIBC_LINUX_OPTION
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,8 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
#include <mlibc/debug.hpp>
|
|
||||||
#include <bits/ensure.h>
|
#include <bits/ensure.h>
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
|
|
||||||
#include <mlibc/posix-sysdeps.hpp>
|
#include <mlibc/posix-sysdeps.hpp>
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#ifndef _UNISTD_H
|
#ifndef _UNISTD_H
|
||||||
#define _UNISTD_H
|
#define _UNISTD_H
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/types.h>
|
#include <bits/types.h>
|
||||||
#include <bits/size_t.h>
|
#include <bits/size_t.h>
|
||||||
#include <bits/ssize_t.h>
|
#include <bits/ssize_t.h>
|
||||||
|
@ -234,7 +234,7 @@ int pipe2(int *pipefd, int flags);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __MLIBC_LINUX_OPTION
|
#ifdef __MLIBC_LINUX_OPTION
|
||||||
# include <bits/linux/linux_unistd.h>
|
# include <bits/linux/linux_unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <mlibc/tcb.hpp>
|
#include <mlibc/tcb.hpp>
|
||||||
#include <mlibc/thread.hpp>
|
#include <mlibc/thread.hpp>
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
// GCC allows register + asm placement in extern "C" mode, but not in C++ mode.
|
// GCC allows register + asm placement in extern "C" mode, but not in C++ mode.
|
||||||
|
@ -159,7 +159,7 @@ namespace mlibc {
|
||||||
|
|
||||||
template<typename... T>
|
template<typename... T>
|
||||||
sc_result_t do_cp_syscall(int sc, T... args) {
|
sc_result_t do_cp_syscall(int sc, T... args) {
|
||||||
#if __MLIBC_POSIX_OPTION && !defined(MLIBC_BUILDING_RTDL)
|
#if defined(__MLIBC_POSIX_OPTION) && !defined(MLIBC_BUILDING_RTDL)
|
||||||
auto result = static_cast<sc_result_t>(do_nargs_cp_syscall(sc, sc_cast(args)...));
|
auto result = static_cast<sc_result_t>(do_nargs_cp_syscall(sc, sc_cast(args)...));
|
||||||
if (int e = sc_error(result); e) {
|
if (int e = sc_error(result); e) {
|
||||||
auto tcb = reinterpret_cast<Tcb*>(get_current_tcb());
|
auto tcb = reinterpret_cast<Tcb*>(get_current_tcb());
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
|
|
||||||
#include <bits/feature.h>
|
#include <mlibc-config.h>
|
||||||
#include <bits/ensure.h>
|
#include <bits/ensure.h>
|
||||||
#include <mlibc/debug.hpp>
|
#include <mlibc/debug.hpp>
|
||||||
#include <mlibc/all-sysdeps.hpp>
|
#include <mlibc/all-sysdeps.hpp>
|
||||||
|
@ -251,7 +251,7 @@ int sys_sleep(time_t *secs, long *nanos) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __MLIBC_POSIX_OPTION
|
#ifdef __MLIBC_POSIX_OPTION
|
||||||
|
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <sched.h>
|
#include <sched.h>
|
||||||
|
|
Loading…
Reference in a new issue