Meson goes to lengths at preventing installation to directories outside of the main installation prefix. This isn't convenient or desirable in Guix; patch it out using a patch maintained by Nix. * gnu/packages/patches/meson-allow-dirs-outside-of-prefix.patch: Add patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/build-tools.scm (meson): Use it.
		
			
				
	
	
		
			20 lines
		
	
	
	
		
			994 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
	
		
			994 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| Source: https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/development/tools/build-managers/meson/allow-dirs-outside-of-prefix.patch
 | |
| --- a/mesonbuild/coredata.py
 | |
| +++ b/mesonbuild/coredata.py
 | |
| @@ -506,7 +506,6 @@ class CoreData:
 | |
|              return value
 | |
|          if option.name.endswith('dir') and value.is_absolute() and \
 | |
|             option not in BULITIN_DIR_NOPREFIX_OPTIONS:
 | |
| -            # Value must be a subdir of the prefix
 | |
|              # commonpath will always return a path in the native format, so we
 | |
|              # must use pathlib.PurePath to do the same conversion before
 | |
|              # comparing.
 | |
| @@ -518,7 +517,7 @@ class CoreData:
 | |
|              try:
 | |
|                  value = value.relative_to(prefix)
 | |
|              except ValueError:
 | |
| -                raise MesonException(msg.format(option, value, prefix))
 | |
| +                pass
 | |
|              if '..' in str(value):
 | |
|                  raise MesonException(msg.format(option, value, prefix))
 | |
|          return value.as_posix()
 |