From: Karel Zak Date: Mon, 18 Dec 2017 12:57:20 +0000 (+0100) Subject: build-sys: don't check for swapon() number of arguments X-Git-Tag: v2.32-rc1~119 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cf9b16f1d408faa63009667329431f7969303220;p=thirdparty%2Futil-linux.git build-sys: don't check for swapon() number of arguments The syscall swapon() with two arguments is supported since Linux 1.3.2 and it's really long time ago... Let's assume that all libc header files have been already fixed. Signed-off-by: Karel Zak --- diff --git a/configure.ac b/configure.ac index 1cb18dc201..4403391e78 100644 --- a/configure.ac +++ b/configure.ac @@ -343,20 +343,6 @@ AC_CHECK_MEMBERS([struct termios.c_line],,, AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec],,, [#include ]) -AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ -#ifdef HAVE_SYS_SWAP_H -# include -#endif -#include -]], -[[swapon("/dev/null", 0);]])], -[AC_DEFINE([SWAPON_HAS_TWO_ARGS], [1], [Is swapon() declared with two parameters?]) -], -[AC_MSG_NOTICE([Your libc thinks that swapon has 1 arg only.]) -]) - - AC_CHECK_DECLS([_NL_TIME_WEEK_1STDAY],[],[],[[#include ]]) AC_CHECK_DECL([llseek], @@ -1431,10 +1417,14 @@ AM_CONDITIONAL([BUILD_FSTRIM], [test "x$build_fstrim" = xyes]) UL_BUILD_INIT([swapon], [check]) UL_REQUIRES_LINUX([swapon]) +UL_REQUIRES_SYSCALL_CHECK([swapon], [UL_CHECK_SYSCALL([swapon])], [swapon]) +UL_REQUIRES_SYSCALL_CHECK([swapon], [UL_CHECK_SYSCALL([swapoff])], [swapoff]) UL_REQUIRES_BUILD([swapon], [libblkid]) UL_REQUIRES_BUILD([swapon], [libmount]) UL_REQUIRES_BUILD([swapon], [libsmartcols]) AM_CONDITIONAL([BUILD_SWAPON], [test "x$build_swapon" = xyes]) +AC_CHECK_FUNCS([swapon]) +AC_CHECK_FUNCS([swapoff]) UL_BUILD_INIT([lsblk], [check]) diff --git a/sys-utils/swapoff.c b/sys-utils/swapoff.c index e5e059d745..0a3807fdac 100644 --- a/sys-utils/swapoff.c +++ b/sys-utils/swapoff.c @@ -14,8 +14,7 @@ #include "swapprober.h" #include "swapon-common.h" -#ifndef SWAPON_HAS_TWO_ARGS -/* libc is insane, let's call the kernel */ +#if !defined(HAVE_SWAPOFF) && defined(SYS_swapoff) # include # define swapoff(path) syscall(SYS_swapoff, path) #endif diff --git a/sys-utils/swapon.c b/sys-utils/swapon.c index 6bf67a91f8..13437f7719 100644 --- a/sys-utils/swapon.c +++ b/sys-utils/swapon.c @@ -59,8 +59,7 @@ # define SWAP_FLAG_PRIO_SHIFT 0 #endif -#ifndef SWAPON_HAS_TWO_ARGS -/* libc is insane, let's call the kernel */ +#if !defined(HAVE_SWAPON) && defined(SYS_swapon) # include # define swapon(path, flags) syscall(SYS_swapon, path, flags) #endif