1From 3730a38efad969fb6f8227df07eb4461a078f5a3 Mon Sep 17 00:00:00 2001 2From: Khem Raj <raj.khem@gmail.com> 3Date: Fri, 13 Dec 2019 12:59:26 -0800 4Subject: [PATCH] Add configure time check for setsid 5 6Do not assume glibc == linux 7 8Upstream-Status: Pending 9Signed-off-by: Khem Raj <raj.khem@gmail.com> 10--- 11 configure | 1 + 12 configure.in | 1 + 13 main.c | 4 ++-- 14 xtermcfg.hin | 1 + 15 5 files changed, 6 insertions(+), 2 deletions(-) 16 17diff --git a/configure b/configure 18index 0aafefc..03e8df0 100755 19--- a/configure 20+++ b/configure 21@@ -5411,6 +5411,7 @@ for ac_func in \ 22 unsetenv \ 23 sched_yield \ 24 setpgid \ 25+ setsid \ 26 strftime \ 27 tcgetattr \ 28 waitpid \ 29diff --git a/configure.in b/configure.in 30index d2fee88..74d65df 100644 31--- a/configure.in 32+++ b/configure.in 33@@ -99,6 +99,7 @@ AC_CHECK_FUNCS( \ 34 unsetenv \ 35 sched_yield \ 36 setpgid \ 37+ setsid \ 38 strftime \ 39 tcgetattr \ 40 waitpid \ 41diff --git a/main.c b/main.c 42index 5e60589..b81d2be 100644 43--- a/main.c 44+++ b/main.c 45@@ -2868,7 +2868,7 @@ main(int argc, char *argv[]ENVP_ARG) 46 } 47 } 48 49-#if defined(__osf__) || (defined(__GLIBC__) && !defined(USE_USG_PTYS)) || defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__APPLE__) 50+#if defined(__osf__) || (defined(__linux__) && !defined(USE_USG_PTYS)) || defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__APPLE__) 51 #define USE_OPENPTY 1 52 static int opened_tty = -1; 53 #endif 54@@ -4040,7 +4040,7 @@ spawnXTerm(XtermWidget xw, unsigned line_speed) 55 /* 56 * now in child process 57 */ 58-#if defined(_POSIX_SOURCE) || defined(SVR4) || defined(__convex__) || defined(__SCO__) || defined(__QNX__) 59+#if HAVE_SETSID 60 int pgrp = setsid(); /* variable may not be used... */ 61 #else 62 int pgrp = getpid(); 63diff --git a/xtermcfg.hin b/xtermcfg.hin 64index 1dbc3b8..4f3ff5b 100644 65--- a/xtermcfg.hin 66+++ b/xtermcfg.hin 67@@ -96,6 +96,7 @@ 68 #undef HAVE_PUTENV /* AC_CHECK_FUNCS(putenv) */ 69 #undef HAVE_SCHED_YIELD /* AC_CHECK_FUNCS(sched_yield) */ 70 #undef HAVE_SETPGID /* AC_CHECK_FUNCS(setpgid) */ 71+#undef HAVE_SETSID /* AC_CHECK_FUNCS(setsid) */ 72 #undef HAVE_STDINT_H /* AC_PROG_CC_STDC */ 73 #undef HAVE_STDLIB_H /* AC_CHECK_HEADERS(stdlib.h) */ 74 #undef HAVE_STRFTIME /* AC_CHECK_FUNCS(strftime) */ 75-- 762.24.1 77 78