1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
# generate paths consumable by the compilers and linkers
# in particular, on Windows and Solaris, this means the path _cannot_ be quoted !!
asBuildPath <- function(path) {
# normalize paths using forward slashes
path <- normalizePath(path, winslash = "/", mustWork = FALSE)
# prefer short path names if the path has spaces
if (is_windows() && grepl(" ", path, fixed = TRUE))
path <- utils::shortPathName(path)
# if we still have spaces, and we're not Windows or Solaris, try quoting
if (grepl(" ", path, fixed = TRUE) && !is_solaris())
path <- shQuote(path)
# ensure we use forward slashes, even on Windows
path <- chartr("\\", "/", path)
# return path
path
}
|