From 7568dec2c3be21ab3b44353cac0ca0d9f47abe63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Tue, 24 Mar 2015 14:26:59 +0100 Subject: [PATCH] Build: Moved OS checking code to aclocal.m4. --- src/aclocal.m4 | 54 +++++++++++++++++++++++++++++++++ src/configure.in | 53 ++------------------------------ src/modules/system/configure.in | 50 +----------------------------- 3 files changed, 57 insertions(+), 100 deletions(-) diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 848c8f0070..41fa31a65c 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -588,6 +588,60 @@ AC_DEFUN(PIKE_CHECK_CONSTANTS, ]) +dnl PIKE_AC_CHECK_OS() +dnl +dnl Check the operating system +AC_DEFUN(PIKE_AC_CHECK_OS, [ + AC_PATH_PROG(uname_prog,uname,no) + AC_MSG_CHECKING(operating system) + AC_CACHE_VAL(pike_cv_sys_os, [ + if test "$cross_compiling" = "yes"; then + case "$host_alias" in + *amigaos*) pike_cv_sys_os="AmigaOS";; + *linux*) pike_cv_sys_os="Linux";; + *solaris*) pike_cv_sys_os="Solaris";; + *sunos*) pike_cv_sys_os="SunOS";; + *windows*) pike_cv_sys_os="Windows_NT";; + *mingw*|*MINGW*) + pike_cv_sys_os="Windows_NT" + pike_cv_is_mingw="yes";; + *) pike_cv_sys_os="Unknown";; + esac + elif test "$uname_prog" != "no"; then + # uname on UNICOS doesn't work like other people's uname... + if getconf CRAY_RELEASE >/dev/null 2>&1; then + pike_cv_sys_os="UNICOS" + else + pike_cv_sys_os="`uname`" + fi + + case "$pike_cv_sys_os" in + SunOS) + case "`uname -r`" in + 5.*) pike_cv_sys_os="Solaris" ;; + esac + ;; + Monterey64) + # According to the release notes, the string "Monterey64" + # will be changed to "AIX" in the final release. + # (Monterey 64 is also known as AIX 5L). + pike_cv_sys_os="AIX" + ;; + *Windows*|*windows*) + pike_cv_sys_os="Windows_NT" + ;; + *MINGW*|*mingw*) + pike_cv_is_mingw="yes" + pike_cv_sys_os="Windows_NT" + ;; + esac + else + pike_cv_sys_os="Not Solaris" + fi + ]) + AC_MSG_RESULT($pike_cv_sys_os) +]) + dnl dnl PIKE_FEATURE_CLEAR() dnl PIKE_FEATURE(feature,text) diff --git a/src/configure.in b/src/configure.in index 29d6358043..0f4d632a84 100644 --- a/src/configure.in +++ b/src/configure.in @@ -570,57 +570,8 @@ else UNAME=unknown fi -# We need some special hacks when running slowaris -AC_PATH_PROG(uname_prog,uname,no) -AC_MSG_CHECKING(operating system) -AC_CACHE_VAL(pike_cv_sys_os, -[ -if test "$cross_compiling" = "yes"; then - case "$host_alias" in - *amigaos*) pike_cv_sys_os="AmigaOS";; - *linux*) pike_cv_sys_os="Linux";; - *solaris*) pike_cv_sys_os="Solaris";; - *sunos*) pike_cv_sys_os="SunOS";; - *windows*) pike_cv_sys_os="Windows_NT";; - *mingw*|*MINGW*) - pike_cv_sys_os="Windows_NT" - pike_cv_is_mingw="yes";; - *) pike_cv_sys_os="Unknown";; - esac -elif test "$uname_prog" != "no"; then - # uname on UNICOS doesn't work like other people's uname... - if getconf CRAY_RELEASE >/dev/null 2>&1; then - pike_cv_sys_os="UNICOS" - else - pike_cv_sys_os="`uname`" - fi - - case "$pike_cv_sys_os" in - SunOS) - case "`uname -r`" in - 5.*) pike_cv_sys_os="Solaris" ;; - esac - ;; - Monterey64) - # According to the release notes, the string "Monterey64" - # will be changed to "AIX" in the final release. - # (Monterey 64 is also known as AIX 5L). - pike_cv_sys_os="AIX" - ;; - *Windows*|*windows*) - pike_cv_sys_os="Windows_NT" - ;; - *MINGW*|*mingw*) - pike_cv_is_mingw="yes" - pike_cv_sys_os="Windows_NT" - ;; - - esac -else - pike_cv_sys_os="Not Solaris" -fi -]) -AC_MSG_RESULT($pike_cv_sys_os) +# We need some special hacks when running slowaris and winblows. +PIKE_AC_CHECK_OS() if test "x$pike_cv_sys_os" = xWindows_NT; then PIKE_FUNCS_NEED_DECLS(yes) diff --git a/src/modules/system/configure.in b/src/modules/system/configure.in index 423e9657f9..7771cc934a 100644 --- a/src/modules/system/configure.in +++ b/src/modules/system/configure.in @@ -11,55 +11,7 @@ AC_CHECK_LIB(net, __get_socket_descriptor) dnl For Cygwin AC_CHECK_LIB(cygipc, shmget) -AC_MSG_CHECKING(operating system) -AC_CACHE_VAL(pike_cv_sys_os, -[ -if test "$cross_compiling" = "yes"; then - case "$host_alias" in - *amigaos*) pike_cv_sys_os="AmigaOS";; - *linux*) pike_cv_sys_os="Linux";; - *solaris*) pike_cv_sys_os="Solaris";; - *sunos*) pike_cv_sys_os="SunOS";; - *windows*) pike_cv_sys_os="Windows_NT";; - *mingw*|*MINGW*) - pike_cv_sys_os="Windows_NT" - pike_cv_is_mingw="yes";; - *) pike_cv_sys_os="Unknown";; - esac -elif test "$uname_prog" != "no"; then - # uname on UNICOS doesn't work like other people's uname... - if getconf CRAY_RELEASE >/dev/null 2>&1; then - pike_cv_sys_os="UNICOS" - else - pike_cv_sys_os="`uname`" - fi - - case "$pike_cv_sys_os" in - SunOS) - case "`uname -r`" in - 5.*) pike_cv_sys_os="Solaris" ;; - esac - ;; - Monterey64) - # According to the release notes, the string "Monterey64" - # will be changed to "AIX" in the final release. - # (Monterey 64 is also known as AIX 5L). - pike_cv_sys_os="AIX" - ;; - *Windows*|*windows*) - pike_cv_sys_os="Windows_NT" - ;; - *MINGW*|*mingw*) - pike_cv_is_mingw="yes" - pike_cv_sys_os="Windows_NT" - ;; - - esac -else - pike_cv_sys_os="Not Solaris" -fi -]) -AC_MSG_RESULT($pike_cv_sys_os) +PIKE_AC_CHECK_OS() if test x"$pike_cv_sys_os" = xWindows_NT ; then # FIXME: These look suspiciously much like 32bit versions. -- GitLab