File ksh-qemu.patch of Package ksh

--- src/lib/libast/features/lib
+++ src/lib/libast/features/lib	2007-03-28 17:49:29.241351031 +0200
@@ -90,27 +90,6 @@ tst	lib_poll_fd_1 note{ fd is first arg 
 	}
 }end
 
-tst	lib_poll_fd_2 note{ fd is second arg to poll() }end execute{
-	#include <poll.h>
-	_BEGIN_EXTERNS_
-	extern int	pipe _ARG_((int*));
-	_END_EXTERNS_
-	int
-	main()
-	{	int		rw[2];
-		struct pollfd	fd;
-		if (pipe(rw) < 0) return 1;
-		fd.fd = rw[0];
-		fd.events = POLLIN;
-		fd.revents = 0;
-		return poll(1, &fd, 0) < 0;
-		if (poll(1, &fd, 0) < 0 || fd.revents != 0) return 1;
-		if (write(rw[1], "x", 1) != 1) return 1;
-		if (poll(1, &fd, 0) < 0 || fd.revents == 0) return 1;
-		return 0;
-	}
-}end
-
 exp	_lib_poll	_lib_poll_fd_1||_lib_poll_fd_2
 
 tst	lib_poll_notimer note{ poll with no fds ignores timeout }end execute{
@@ -224,74 +203,6 @@ tst	real_vfork note{ vfork child shares 
 	}
 }end
 
-tst	lib_posix_spawn unistd.h stdlib.h spawn.h -Dfork=______fork note{ posix_spawn exists and it works and its worth using }end status{
-	#include <sys/types.h>
-	#include <sys/stat.h>
-	#include <sys/wait.h>
-	#include <spawn.h>
-	#include <signal.h>
-	#include <fcntl.h>
-	#include <string.h>
-	#undef fork
-	/* if it uses fork() why bother? */
-	pid_t fork _ARG_((void)) { return -1; }
-	pid_t _fork _ARG_((void)) { return -1; }
-	pid_t __fork _ARG_((void)) { return -1; }
-	int
-	main(argc, argv)
-	int	argc;
-	char**	argv;
-	{
-		char*			s;
-		pid_t			pid;
-		posix_spawnattr_t	attr;
-		int			n;
-		int			status;
-		char*			cmd[3];
-		char			tmp[1024];
-		if (argv[1])
-			_exit(signal(SIGHUP, SIG_DFL) != SIG_IGN);
-		signal(SIGHUP, SIG_IGN);
-		if (posix_spawnattr_init(&attr))
-			_exit(0);
-		if (posix_spawnattr_setpgroup(&attr, 0))
-			_exit(0);
-		if (posix_spawnattr_setflags(&attr, POSIX_SPAWN_SETPGROUP))
-			_exit(0);
-		/* first try an a.out and verify that SIGHUP is ignored */
-		cmd[0] = argv[0];
-		cmd[1] = "test";
-		cmd[2] = 0;
-		if (posix_spawn(&pid, cmd[0], 0, &attr, cmd, 0))
-			_exit(0);
-		status = 1;
-		if (wait(&status) < 0 || status != 0)
-			_exit(0);
-		/* passing ENOEXEC to the shell is bogus */
-		n = strlen(cmd[0]);
-		if (n >= (sizeof(tmp) - 3))
-			_exit(0);
-		strcpy(tmp, cmd[0]);
-		tmp[n] = '.';
-		tmp[n+1] = 's';
-		tmp[n+2] = 'h';
-		tmp[n+3] = 0;
-		if (close(open(tmp, O_CREAT, S_IRWXU|S_IRWXG|S_IRWXO)) < 0 || chmod(tmp, S_IRWXU|S_IRWXG|S_IRWXO) < 0)
-			_exit(0);
-		cmd[0] = tmp;
-		n = 0;
-		pid = -1;
-		if (posix_spawn(&pid, cmd[0], 0, &attr, cmd, 0))
-			n = 2;
-		else
-		{
-			n = pid != -1 && waitpid(pid, &status, WNOHANG|WNOWAIT) == pid && ((status>>8)&0x7f) == 127;
-			wait(&status);
-		}
-		_exit(n);
- 	}
-}end
-
 tst	lib_spawn_mode unistd.h stdlib.h note{ first spawn arg is mode and it works }end execute{
 	#include <signal.h>
 	#include <process.h>
openSUSE Build Service is sponsored by