diff options
-rw-r--r-- | CMakeLists.txt | 11 | ||||
-rw-r--r-- | apt-private/private-download.cc | 7 |
2 files changed, 13 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4f4c8b37e..b2e5bfe9c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,14 +89,15 @@ if (LZ4_FOUND) endif() # Mount()ing and stat()ing and friends +check_symbol_exists(statfs sys/vfs.h HAVE_VFS_H) +check_include_files(sys/params.h HAVE_PARAMS_H) +check_symbol_exists(statfs sys/mount.h HAVE_MOUNT_H) +if (NOT HAVE_VFS_H AND NOT HAVE_MOUNT_H) + message(FATAL_ERROR "Can find neither statvfs() nor statfs()") +endif() check_function_exists(statvfs HAVE_STATVFS) if (NOT HAVE_STATVFS) - check_symbol_exists(statfs sys/vfs.h HAVE_VFS_H) - check_symbol_exists(statfs sys/mount.h HAVE_MOUNT_H) - if (NOT HAVE_VFS_H AND NOT HAVE_MOUNT_H) - message(FATAL_ERROR "Can find neither statvfs() nor statfs()") - endif() configure_file(CMake/statvfs.h.in ${PROJECT_BINARY_DIR}/include/statvfs.h COPYONLY) endif() diff --git a/apt-private/private-download.cc b/apt-private/private-download.cc index c85a49727..d0cbbcf50 100644 --- a/apt-private/private-download.cc +++ b/apt-private/private-download.cc @@ -25,7 +25,14 @@ #include <sys/types.h> #include <pwd.h> #include <fcntl.h> +#ifdef HAVE_VFS_H #include <sys/vfs.h> +#else +#ifdef HAVE_PARAMS_H +#include <sys/params.h> +#endif +#include <sys/mount.h> +#endif #include <sys/statvfs.h> #include <sys/stat.h> #include <errno.h> |