diff options
author | Stefan Zeiger <szeiger@novocode.com> | 2016-01-21 18:00:08 +0100 |
---|---|---|
committer | Stefan Zeiger <szeiger@novocode.com> | 2016-01-25 17:26:44 +0100 |
commit | bdd3abc1b96e4d2e658fb4fdf2bb8fd09d686a70 (patch) | |
tree | 767cbd05123a325c5185c1d5feb8e9dea6c01345 /build.sbt | |
parent | 842ae5a78e4d9675c6bfb53c5cd4d52026d37bef (diff) | |
download | scala-bdd3abc1b96e4d2e658fb4fdf2bb8fd09d686a70.tar.gz scala-bdd3abc1b96e4d2e658fb4fdf2bb8fd09d686a70.tar.bz2 scala-bdd3abc1b96e4d2e658fb4fdf2bb8fd09d686a70.zip |
Use portable Java APIs instead of calling chmod from sbt
Instead of waiting for a Java-8-only build to use
`Files.setPosixPermissions()` we can call `setExecutable` and
`setReadable`, both of which are available on Java 6.
Diffstat (limited to 'build.sbt')
-rw-r--r-- | build.sbt | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -767,9 +767,10 @@ lazy val mkBinImpl: Def.Initialize[Task[Seq[File]]] = Def.task { scalaTool.writeScript(file, "windows", rootDir, outDir) ) res.foreach { f => - //TODO 2.12: Use Files.setPosixFilePermissions() (Java 7+) instead of calling out to chmod - if(Process(List("chmod", "ugo+rx", f.getAbsolutePath())).! > 0) - throw new IOException("chmod failed") + if(!f.getAbsoluteFile.setExecutable(true, /* ownerOnly: */ false)) + throw new IOException("setExecutable failed") + if(!f.getAbsoluteFile.setReadable(true, /* ownerOnly: */ false)) + throw new IOException("setReadable failed") } res } |