Support older hosts with latest util-linux-native mkostemp is not defined on older machines. So we detect this and provide a define that uses mkstemp instead. O_CLOEXEC is not defined on older machines. It is however defined in the 'c.h' header. Fix up the users to include 'c.h'. fdisks/fdisksunlabel.c was modified to use qsort_r, however this is not defined on older hosts. Revert: commit c69bbca9c1f6645097bd20fe3a21f5a99a2a0698 fdisk: (sun): use ask API, remove global variable Upstream-Status: Inappropriate [other] Patches revert upstream changes in order to support older machines. Signed-off-by: Mark Hatle Index: util-linux-2.24.1/configure.ac =================================================================== --- util-linux-2.24.1.orig/configure.ac +++ util-linux-2.24.1/configure.ac @@ -302,6 +302,7 @@ AC_CHECK_FUNCS([ \ llseek \ lseek64 \ mempcpy \ + mkostemp \ nanosleep \ personality \ posix_fadvise \ Index: util-linux-2.24.1/include/c.h =================================================================== --- util-linux-2.24.1.orig/include/c.h +++ util-linux-2.24.1/include/c.h @@ -236,6 +236,13 @@ static inline int dirfd(DIR *d) #endif /* + * mkostemp replacement + */ +#ifndef HAVE_MKOSTEMP +#define mkostemp(template, flags) mkstemp(template) +#endif + +/* * MAXHOSTNAMELEN replacement */ static inline size_t get_hostname_max(void) Index: util-linux-2.24.1/lib/randutils.c =================================================================== --- util-linux-2.24.1.orig/lib/randutils.c +++ util-linux-2.24.1/lib/randutils.c @@ -16,6 +16,7 @@ #include #include "randutils.h" +#include "c.h" #ifdef HAVE_TLS #define THREAD_LOCAL static __thread Index: util-linux-2.24.1/lib/wholedisk.c =================================================================== --- util-linux-2.24.1.orig/lib/wholedisk.c +++ util-linux-2.24.1/lib/wholedisk.c @@ -10,6 +10,7 @@ #include "blkdev.h" #include "wholedisk.h" +#include "c.h" int is_whole_disk_fd(int fd, const char *name) {