diff options
author | Joseph Myers <joseph@codesourcery.com> | 2012-11-17 01:49:19 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2012-11-17 01:49:19 +0000 |
commit | 531f1ae0a79b9c3a91654750b11d25b256d7215f (patch) | |
tree | 7c038bf7253a09342f858a9a002fc62b74cfd735 /sysdeps | |
parent | a93f9cbc27a00f1bfe64b5ced19b8fde3bdbb1ea (diff) | |
download | glibc-531f1ae0a79b9c3a91654750b11d25b256d7215f.tar.gz glibc-531f1ae0a79b9c3a91654750b11d25b256d7215f.tar.xz glibc-531f1ae0a79b9c3a91654750b11d25b256d7215f.zip |
Generate /usr/libexec/getconf files when cross-compiling.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/posix/sysconf.c | 95 |
1 files changed, 23 insertions, 72 deletions
diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c index bfe28b47ee..99043b7558 100644 --- a/sysdeps/posix/sysconf.c +++ b/sysdeps/posix/sysconf.c @@ -790,80 +790,31 @@ __sysconf (name) return -1; #endif - case _SC_XBS5_ILP32_OFF32: -#ifdef _XBS5_ILP32_OFF32 - return _XBS5_ILP32_OFF32; -#else - return __sysconf_check_spec ("ILP32_OFF32"); -#endif - case _SC_XBS5_ILP32_OFFBIG: -#ifdef _XBS5_ILP32_OFFBIG - return _XBS5_ILP32_OFFBIG; -#else - return __sysconf_check_spec ("ILP32_OFFBIG"); -#endif - case _SC_XBS5_LP64_OFF64: -#ifdef _XBS5_LP64_OFF64 - return _XBS5_LP64_OFF64; -#else - return __sysconf_check_spec ("LP64_OFF64"); -#endif - case _SC_XBS5_LPBIG_OFFBIG: -#ifdef _XBS5_LPBIG_OFFBIG - return _XBS5_LPBIG_OFFBIG; -#else - return __sysconf_check_spec ("LPBIG_OFFBIG"); -#endif +#define START_ENV_GROUP(VERSION) \ + /* Empty. */ - case _SC_V6_ILP32_OFF32: -#ifdef _POSIX_V6_ILP32_OFF32 - return _POSIX_V6_ILP32_OFF32; -#else - return __sysconf_check_spec ("ILP32_OFF32"); -#endif - case _SC_V6_ILP32_OFFBIG: -#ifdef _POSIX_V6_ILP32_OFFBIG - return _POSIX_V6_ILP32_OFFBIG; -#else - return __sysconf_check_spec ("ILP32_OFFBIG"); -#endif - case _SC_V6_LP64_OFF64: -#ifdef _POSIX_V6_LP64_OFF64 - return _POSIX_V6_LP64_OFF64; -#else - return __sysconf_check_spec ("LP64_OFF64"); -#endif - case _SC_V6_LPBIG_OFFBIG: -#ifdef _POSIX_V6_LPBIG_OFFBIG - return _POSIX_V6_LPBIG_OFFBIG; -#else - return __sysconf_check_spec ("LPBIG_OFFBIG"); -#endif +#define END_ENV_GROUP(VERSION) \ + /* Empty. */ - case _SC_V7_ILP32_OFF32: -#ifdef _POSIX_V7_ILP32_OFF32 - return _POSIX_V7_ILP32_OFF32; -#else - return __sysconf_check_spec ("ILP32_OFF32"); -#endif - case _SC_V7_ILP32_OFFBIG: -#ifdef _POSIX_V7_ILP32_OFFBIG - return _POSIX_V7_ILP32_OFFBIG; -#else - return __sysconf_check_spec ("ILP32_OFFBIG"); -#endif - case _SC_V7_LP64_OFF64: -#ifdef _POSIX_V7_LP64_OFF64 - return _POSIX_V7_LP64_OFF64; -#else - return __sysconf_check_spec ("LP64_OFF64"); -#endif - case _SC_V7_LPBIG_OFFBIG: -#ifdef _POSIX_V7_LPBIG_OFFBIG - return _POSIX_V7_LPBIG_OFFBIG; -#else - return __sysconf_check_spec ("LPBIG_OFFBIG"); -#endif +#define KNOWN_ABSENT_ENVIRONMENT(SC_PREFIX, ENV_PREFIX, SUFFIX) \ + case _SC_##SC_PREFIX##_##SUFFIX: \ + return _##ENV_PREFIX##_##SUFFIX; + +#define KNOWN_PRESENT_ENVIRONMENT(SC_PREFIX, ENV_PREFIX, SUFFIX) \ + case _SC_##SC_PREFIX##_##SUFFIX: \ + return _##ENV_PREFIX##_##SUFFIX; + +#define UNKNOWN_ENVIRONMENT(SC_PREFIX, ENV_PREFIX, SUFFIX) \ + case _SC_##SC_PREFIX##_##SUFFIX: \ + return __sysconf_check_spec (#SUFFIX); + +#include <posix/posix-envs.def> + +#undef START_ENV_GROUP +#undef END_ENV_GROUP +#undef KNOWN_ABSENT_ENVIRONMENT +#undef KNOWN_PRESENT_ENVIRONMENT +#undef UNKNOWN_ENVIRONMENT case _SC_XOPEN_LEGACY: return _XOPEN_LEGACY; |