aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--project/SparkBuild.scala21
1 files changed, 19 insertions, 2 deletions
diff --git a/project/SparkBuild.scala b/project/SparkBuild.scala
index 1339980c38..8f0f310ddd 100644
--- a/project/SparkBuild.scala
+++ b/project/SparkBuild.scala
@@ -156,6 +156,10 @@ object SparkBuild extends PomBuild {
javacOptions in Compile ++= Seq("-encoding", "UTF-8"),
+ scalacOptions in Compile ++= Seq(
+ "-sourcepath", (baseDirectory in ThisBuild).value.getAbsolutePath // Required for relative source links in scaladoc
+ ),
+
// Implements -Xfatal-warnings, ignoring deprecation warnings.
// Code snippet taken from https://issues.scala-lang.org/browse/SI-8410.
compile in Compile := {
@@ -489,6 +493,8 @@ object Unidoc {
.map(_.filterNot(_.getCanonicalPath.contains("org/apache/spark/sql/hive/test")))
}
+ val unidocSourceBase = settingKey[String]("Base URL of source links in Scaladoc.")
+
lazy val settings = scalaJavaUnidocSettings ++ Seq (
publish := {},
@@ -531,8 +537,19 @@ object Unidoc {
"-noqualifier", "java.lang"
),
- // Group similar methods together based on the @group annotation.
- scalacOptions in (ScalaUnidoc, unidoc) ++= Seq("-groups")
+ // Use GitHub repository for Scaladoc source linke
+ unidocSourceBase := s"https://github.com/apache/spark/tree/v${version.value}",
+
+ scalacOptions in (ScalaUnidoc, unidoc) ++= Seq(
+ "-groups" // Group similar methods together based on the @group annotation.
+ ) ++ (
+ // Add links to sources when generating Scaladoc for a non-snapshot release
+ if (!isSnapshot.value) {
+ Opts.doc.sourceUrl(unidocSourceBase.value + "€{FILE_PATH}.scala")
+ } else {
+ Seq()
+ }
+ )
)
}