packages: Add 'file-type' field to 'search-path-specification'.

Fixes <http://bugs.gnu.org/18033>.

* guix/packages.scm (<search-path-specification>): Rename 'directories'
  field to 'files'.  Add 'file-type'.
  (search-path-specification->sexp): Honor 'file-type'.
* gnu/packages/autotools.scm, gnu/packages/bootstrap.scm,
  gnu/packages/cross-base.scm, gnu/packages/games.scm,
  gnu/packages/gcc.scm, gnu/packages/glib.scm,
  gnu/packages/guile.scm, gnu/packages/man.scm,
  gnu/packages/perl.scm, gnu/packages/pkg-config.scm,
  gnu/packages/python.scm, gnu/packages/ruby.scm,
  gnu/packages/xfce.scm: Change 'directories' to 'files'.
* tests/packages.scm ("search paths"): Change 'directories' field to
  'files'.
* guix/scripts/environment.scm (for-each-search-path): Likewise.
This commit is contained in:
Ludovic Courtès 2014-12-27 23:22:08 +01:00
parent 856ae5e6c7
commit af07095516
16 changed files with 30 additions and 33 deletions

View File

@ -178,7 +178,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
(native-search-paths
(list (search-path-specification
(variable "ACLOCAL_PATH")
(directories '("share/aclocal")))))
(files '("share/aclocal")))))
(arguments
'(#:modules ((guix build gnu-build-system)
(guix build utils)

View File

@ -409,10 +409,10 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
(native-search-paths
(list (search-path-specification
(variable "CPATH")
(directories '("include")))
(files '("include")))
(search-path-specification
(variable "LIBRARY_PATH")
(directories '("lib" "lib64")))))
(files '("lib" "lib64")))))
(synopsis "Bootstrap binaries of the GNU Compiler Collection")
(description #f)
(home-page #f)

View File

@ -234,10 +234,10 @@ GCC that does not target a libc; otherwise, target that libc."
(search-paths
(list (search-path-specification
(variable "CROSS_CPATH")
(directories '("include")))
(files '("include")))
(search-path-specification
(variable "CROSS_LIBRARY_PATH")
(directories '("lib" "lib64")))))
(files '("lib" "lib64")))))
(native-search-paths '())))
(define* (cross-libc target

View File

@ -706,7 +706,7 @@ for common mesh file formats, and collision detection.")
(native-search-paths
(list (search-path-specification
(variable "MINETEST_SUBGAME_PATH")
(directories '("share/minetest/games")))))
(files '("share/minetest/games")))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs

View File

@ -245,10 +245,10 @@ where the OS part is overloaded to denote a specific ABI---into GCC
(native-search-paths
(list (search-path-specification
(variable "CPATH")
(directories '("include")))
(files '("include")))
(search-path-specification
(variable "LIBRARY_PATH")
(directories '("lib" "lib64")))))
(files '("lib" "lib64")))))
(properties `((gcc-libc . ,(assoc-ref inputs "libc"))))
(synopsis "GNU Compiler Collection")

View File

@ -183,7 +183,7 @@ shared NFS home directories.")
;; by 'glib-compile-schemas'.
(list (search-path-specification
(variable "XDG_DATA_DIRS")
(directories '("share")))))
(files '("share")))))
(search-paths native-search-paths)
(synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
@ -225,7 +225,7 @@ dynamic loading, and an object system.")
(native-search-paths
(list (search-path-specification
(variable "GI_TYPELIB_PATH")
(directories '("lib/girepository-1.0")))))
(files '("lib/girepository-1.0")))))
(search-paths native-search-paths)
(arguments
`(#:phases

View File

@ -95,7 +95,7 @@
(native-search-paths
(list (search-path-specification
(variable "GUILE_LOAD_PATH")
(directories '("share/guile/site")))))
(files '("share/guile/site")))))
(synopsis "Scheme implementation intended especially for extensions")
(description
@ -155,10 +155,10 @@ without requiring the source code to be rewritten.")
(native-search-paths
(list (search-path-specification
(variable "GUILE_LOAD_PATH")
(directories '("share/guile/site/2.0")))
(files '("share/guile/site/2.0")))
(search-path-specification
(variable "GUILE_LOAD_COMPILED_PATH")
(directories '("share/guile/site/2.0")))))
(files '("share/guile/site/2.0")))))
(synopsis "Scheme implementation intended especially for extensions")
(description

View File

@ -105,7 +105,7 @@ a flexible and convenient way.")
(native-search-paths
(list (search-path-specification
(variable "MANPATH")
(directories '("share/man")))))
(files '("share/man")))))
(home-page "http://man-db.nongnu.org/")
(synopsis "Standard Unix documentation system")
(description

View File

@ -66,7 +66,7 @@
%standard-phases)))
(native-search-paths (list (search-path-specification
(variable "PERL5LIB")
(directories '("lib/perl5/site_perl")))))
(files '("lib/perl5/site_perl")))))
(synopsis "Implementation of the Perl programming language")
(description
"Perl 5 is a highly capable, feature-rich programming language with over

View File

@ -44,8 +44,7 @@
(native-search-paths
(list (search-path-specification
(variable "PKG_CONFIG_PATH")
(directories '("lib/pkgconfig" "lib64/pkgconfig"
"share/pkgconfig")))))
(files '("lib/pkgconfig" "lib64/pkgconfig" "share/pkgconfig")))))
(home-page "http://www.freedesktop.org/wiki/Software/pkg-config")
(license gpl2+)
(synopsis "Helper tool used when compiling applications and libraries")

View File

@ -198,7 +198,7 @@
(native-search-paths
(list (search-path-specification
(variable "PYTHONPATH")
(directories '("lib/python2.7/site-packages")))))
(files '("lib/python2.7/site-packages")))))
(home-page "http://python.org")
(synopsis
"High-level, dynamically-typed programming language")
@ -237,7 +237,7 @@ data types.")
(native-search-paths
(list (search-path-specification
(variable "PYTHONPATH")
(directories '("lib/python3.3/site-packages")))))))
(files '("lib/python3.3/site-packages")))))))
(define-public python-wrapper
(package (inherit python)

View File

@ -77,10 +77,9 @@
(native-search-paths
(list (search-path-specification
(variable "GEM_PATH")
(directories
(list (string-append "lib/ruby/gems/"
(version-major+minor version)
".0"))))))
(files (list (string-append "lib/ruby/gems/"
(version-major+minor version)
".0"))))))
(synopsis "Programming language interpreter")
(description "Ruby is a dynamic object-oriented programming language with
a focus on simplicity and productivity.")

View File

@ -267,7 +267,7 @@ management D-Bus specification.")
(native-search-paths
(list (search-path-specification
(variable "X_XFCE4_LIB_DIRS")
(directories '("lib/xfce4")))))
(files '("lib/xfce4")))))
(home-page "http://www.xfce.org/")
(synopsis "Xfce desktop panel")
(description

View File

@ -172,16 +172,16 @@ representation."
search-path-specification make-search-path-specification
search-path-specification?
(variable search-path-specification-variable)
(directories search-path-specification-directories)
(separator search-path-specification-separator (default ":")))
(files search-path-specification-files)
(separator search-path-specification-separator (default ":"))
(file-type search-path-specification-file-type (default 'directory)))
(define (search-path-specification->sexp spec)
"Return an sexp representing SPEC, a <search-path-specification>. The sexp
corresponds to the arguments expected by `set-path-environment-variable'."
(match spec
(($ <search-path-specification> variable directories separator)
;; TODO: Allow other values of TYPE. See <http://bugs.gnu.org/18033>.
`(,variable ,directories ,separator directory))))
(($ <search-path-specification> variable files separator type)
`(,variable ,files ,separator ,type))))
(define %supported-systems
;; This is the list of system types that are supported. By default, we

View File

@ -54,8 +54,7 @@ path value is appended."
value)))))
(cons* (search-path-specification
(variable "PATH")
(directories '("bin" "sbin"))
(separator ":"))
(files '("bin" "sbin")))
(delete-duplicates
(append-map package-native-search-paths inputs))))))

View File

@ -335,10 +335,10 @@
search-paths)))))))
(x (list (search-path-specification
(variable "GUILE_LOAD_PATH")
(directories '("share/guile/site/2.0")))
(files '("share/guile/site/2.0")))
(search-path-specification
(variable "GUILE_LOAD_COMPILED_PATH")
(directories '("share/guile/site/2.0")))))
(files '("share/guile/site/2.0")))))
(a (package (inherit (dummy-package "guile"))
(build-system s)
(native-search-paths x)))