From 131f39eb863f8b7e624b4acfafd86864ac81a1e2 Mon Sep 17 00:00:00 2001 From: Geert Custers Date: Wed, 21 Jul 2021 07:35:39 +0000 Subject: [PATCH] meson.build: make glibc option optional --- meson.build | 7 ++++++- meson_options.txt | 1 + mlibc-config.h.in | 1 + options/internal/include/mlibc/all-sysdeps.hpp | 10 ++++------ 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/meson.build b/meson.build index a193f74e..f8604d67 100644 --- a/meson.build +++ b/meson.build @@ -10,7 +10,6 @@ libc_include_dirs = [ include_directories('options/internal/include'), include_directories('options/elf/include'), include_directories('options/lsb/include'), - include_directories('options/glibc/include'), include_directories('options/internal' / host_machine.cpu_family() + '-include') ] @@ -30,6 +29,7 @@ disable_posix_option = get_option('disable_posix_option') disable_linux_option = get_option('disable_linux_option') disable_iconv_option = get_option('disable_iconv_option') disable_intl_option = get_option('disable_intl_option') +disable_glibc_option = get_option('disable_glibc_option') internal_conf = configuration_data() mlibc_conf = configuration_data() @@ -133,6 +133,7 @@ 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) +mlibc_conf.set('__MLIBC_GLIBC_OPTION', not disable_glibc_option) if not disable_ansi_option rtdl_include_dirs += include_directories('options/ansi/include') @@ -158,6 +159,10 @@ if not disable_linux_option libc_include_dirs += include_directories('options/linux/include') endif +if not disable_glibc_option + rtdl_include_dirs += include_directories('options/glibc/include') + libc_include_dirs += include_directories('options/glibc/include') +endif rtdl_include_dirs += include_directories('options/linux-headers/include') libc_include_dirs += include_directories('options/linux-headers/include') diff --git a/meson_options.txt b/meson_options.txt index 5a0fb303..e175b24a 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -7,3 +7,4 @@ option('disable_posix_option', type: 'boolean', value : false) option('disable_linux_option', type: 'boolean', value : false) option('disable_iconv_option', type: 'boolean', value : false) option('disable_intl_option', type: 'boolean', value : false) +option('disable_glibc_option', type: 'boolean', value : false) diff --git a/mlibc-config.h.in b/mlibc-config.h.in index ad6e6e89..aedb62c8 100644 --- a/mlibc-config.h.in +++ b/mlibc-config.h.in @@ -6,5 +6,6 @@ #mesondefine __MLIBC_LINUX_OPTION #mesondefine __MLIBC_INTL_OPTION #mesondefine __MLIBC_ICONV_OPTION +#mesondefine __MLIBC_GLIBC_OPTION #endif // _MLIBC_CONFIG_H diff --git a/options/internal/include/mlibc/all-sysdeps.hpp b/options/internal/include/mlibc/all-sysdeps.hpp index 72f713df..4fcf6db9 100644 --- a/options/internal/include/mlibc/all-sysdeps.hpp +++ b/options/internal/include/mlibc/all-sysdeps.hpp @@ -16,16 +16,14 @@ # include #endif // __MLIBC_LINUX_OPTION +#ifdef __MLIBC_GLIBC_OPTION +# include +#endif // __MLIBC_GLIBC_OPTION + #ifdef MLIBC_BUILDING_RTDL # include #endif // MLIBC_BUILDING_RTDL -// TODO(geert): Make glibc optional -// Fixes this hack which works around rtdl not -// including the glibc option -#ifndef MLIBC_BUILDING_RTDL -# include -#endif // !MLIBC_BUILDING_RTDL #include #endif // MLIBC_ALL_SYSDEPS