From cf9b16f1d408faa63009667329431f7969303220 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 18 Dec 2017 13:57:20 +0100 Subject: 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 --- configure.ac | 18 ++++-------------- sys-utils/swapoff.c | 3 +-- sys-utils/swapon.c | 3 +-- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/configure.ac b/configure.ac index 1cb18dc20..4403391e7 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 e5e059d74..0a3807fda 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 6bf67a91f..13437f771 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 -- cgit v1.2.3-55-g7522