coreutils: fix test suite
* gnu/packages/patches/coreutils-skip-nohup.patch: patch taken from the git repository of coreutils, that makes sure tests/misc/nohup.sh does not fail when /dev/tty does not exist. * gnu/packages/base.scm (coreutils): use it. * gnu-system.am (dist_patch_DATA): add it.
This commit is contained in:
		
							parent
							
								
									1faca892a3
								
							
						
					
					
						commit
						ff3c0c1b80
					
				
					 3 changed files with 32 additions and 1 deletions
				
			
		| 
						 | 
					@ -252,6 +252,7 @@ dist_patch_DATA =						\
 | 
				
			||||||
  gnu/packages/patches/cdparanoia-fpic.patch			\
 | 
					  gnu/packages/patches/cdparanoia-fpic.patch			\
 | 
				
			||||||
  gnu/packages/patches/cmake-fix-tests.patch			\
 | 
					  gnu/packages/patches/cmake-fix-tests.patch			\
 | 
				
			||||||
  gnu/packages/patches/coreutils-dummy-man.patch		\
 | 
					  gnu/packages/patches/coreutils-dummy-man.patch		\
 | 
				
			||||||
 | 
					  gnu/packages/patches/coreutils-skip-nohup.patch		\
 | 
				
			||||||
  gnu/packages/patches/cpio-gets-undeclared.patch		\
 | 
					  gnu/packages/patches/cpio-gets-undeclared.patch		\
 | 
				
			||||||
  gnu/packages/patches/curl-fix-test172.patch			\
 | 
					  gnu/packages/patches/curl-fix-test172.patch			\
 | 
				
			||||||
  gnu/packages/patches/dbus-localstatedir.patch			\
 | 
					  gnu/packages/patches/dbus-localstatedir.patch			\
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -240,7 +240,9 @@ used to apply commands with arbitrarily long arguments.")
 | 
				
			||||||
            (sha256
 | 
					            (sha256
 | 
				
			||||||
             (base32
 | 
					             (base32
 | 
				
			||||||
              "04hjzzv434fb8ak3hh3dyhdvg3hqjjwvjmjxqzk1gh2jh6cr8gjv"))
 | 
					              "04hjzzv434fb8ak3hh3dyhdvg3hqjjwvjmjxqzk1gh2jh6cr8gjv"))
 | 
				
			||||||
            (patches (list (search-patch "coreutils-dummy-man.patch")))))
 | 
					            (patches (list (search-patch "coreutils-dummy-man.patch")
 | 
				
			||||||
 | 
					                           ;; TODO: remove this patch for >= 8.23
 | 
				
			||||||
 | 
					                           (search-patch "coreutils-skip-nohup.patch")))))
 | 
				
			||||||
   (build-system gnu-build-system)
 | 
					   (build-system gnu-build-system)
 | 
				
			||||||
   (inputs `(("acl"  ,acl)                        ; TODO: add SELinux
 | 
					   (inputs `(("acl"  ,acl)                        ; TODO: add SELinux
 | 
				
			||||||
             ("gmp"  ,gmp)))
 | 
					             ("gmp"  ,gmp)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										28
									
								
								gnu/packages/patches/coreutils-skip-nohup.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								gnu/packages/patches/coreutils-skip-nohup.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					commit 5dce6bdfafc930dfd17d5d16aea7d1add3472066
 | 
				
			||||||
 | 
					Author: Pádraig Brady <P@draigBrady.com>
 | 
				
			||||||
 | 
					Date:   Wed Mar 5 15:14:07 2014 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    tests: fix false failure in nohup.sh in non tty builds
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    * tests/misc/nohup.sh: When running tests without a controlling tty,
 | 
				
			||||||
 | 
					    an exec failure is triggered in a subshell, which causes POSIX
 | 
				
			||||||
 | 
					    shells to immediately exit the subshell.  This was brought
 | 
				
			||||||
 | 
					    to notice by the newly conforming bash 4.3.
 | 
				
			||||||
 | 
					    Fixes http:/bugs.gnu.org/16940
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/tests/misc/nohup.sh b/tests/misc/nohup.sh
 | 
				
			||||||
 | 
					index 6d2b515..2328b43 100755
 | 
				
			||||||
 | 
					--- a/tests/misc/nohup.sh
 | 
				
			||||||
 | 
					+++ b/tests/misc/nohup.sh
 | 
				
			||||||
 | 
					@@ -63,6 +63,11 @@ rm -f nohup.out err
 | 
				
			||||||
 | 
					 # to stderr must be fatal.  Requires stdout to be terminal.
 | 
				
			||||||
 | 
					 if test -w /dev/full && test -c /dev/full; then
 | 
				
			||||||
 | 
					 (
 | 
				
			||||||
 | 
					+  # POSIX shells immediately exit the subshell on exec error.
 | 
				
			||||||
 | 
					+  # So check we can write to /dev/tty before the exec, which
 | 
				
			||||||
 | 
					+  # isn't possible if we've no controlling tty for example.
 | 
				
			||||||
 | 
					+  test -c /dev/tty && >/dev/tty || exit 0
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					   exec >/dev/tty
 | 
				
			||||||
 | 
					   test -t 1 || exit 0
 | 
				
			||||||
 | 
					   nohup echo hi 2> /dev/full
 | 
				
			||||||
		Reference in a new issue