@@ -1417,7 +1417,7 @@ object Build {
1417
1417
// =================================== SCALA STANDARD LIBRARY ===================================
1418
1418
// ==============================================================================================
1419
1419
1420
- /* Configuration of the org.scala-lang:scala-library:*.**.**-nonboostrapped project */
1420
+ /* Configuration of the org.scala-lang:scala-library:*.**.**-nonbootstrapped project */
1421
1421
lazy val `scala-library-nonbootstrapped` = project.in(file(" library" ))
1422
1422
.enablePlugins(ScalaLibraryPlugin )
1423
1423
.settings(
@@ -1450,7 +1450,42 @@ object Build {
1450
1450
target := target.value / " scala-library-nonbootstrapped" ,
1451
1451
)
1452
1452
1453
- /* Configuration of the org.scala-lang:scala-library:*.**.**-boostrapped project */
1453
+ /* Configuration of the org.scala-lang:scala3-library_3:*.**.**-nonbootstrapped project */
1454
+ lazy val `scala3-library-nonbootstrapped` = project.in(file(" library" ))
1455
+ .dependsOn(`scala-library-nonbootstrapped`)
1456
+ .settings(
1457
+ name := " scala3-library-nonbootstrapped" ,
1458
+ moduleName := " scala3-library" ,
1459
+ version := dottyNonBootstrappedVersion,
1460
+ versionScheme := Some (" semver-spec" ),
1461
+ scalaVersion := referenceVersion, // nonbootstrapped artifacts are compiled with the reference compiler (already officially published)
1462
+ crossPaths := true , // org.scala-lang:scala3-library has a crosspath
1463
+ // Do not depend on the `org.scala-lang:scala3-library` automatically, we manually depend on `scala-library-nonbootstrapped`
1464
+ autoScalaLibrary := false ,
1465
+ // Drop all the scala tools in this project, so we can never generate any bytecode, or documentation
1466
+ managedScalaInstance := false ,
1467
+ // This Project only has a dependency to `org.scala-lang:scala-library:*.**.**-nonbootstrapped`
1468
+ Compile / sources := Seq (),
1469
+ Compile / resources := Seq (),
1470
+ Test / sources := Seq (),
1471
+ Test / resources := Seq (),
1472
+ // Bridge the common task to call the ones of the actual library project
1473
+ Compile / compile := (`scala-library-nonbootstrapped` / Compile / compile).value,
1474
+ Compile / doc := (`scala-library-nonbootstrapped` / Compile / doc).value,
1475
+ Compile / run := (`scala-library-nonbootstrapped` / Compile / run).evaluated,
1476
+ Test / compile := (`scala-library-nonbootstrapped` / Test / compile).value,
1477
+ Test / doc := (`scala-library-nonbootstrapped` / Test / doc).value,
1478
+ Test / run := (`scala-library-nonbootstrapped` / Test / run).evaluated,
1479
+ // Only publish compilation artifacts, no test artifacts
1480
+ Compile / publishArtifact := true ,
1481
+ Test / publishArtifact := false ,
1482
+ // Do not allow to publish this project for now
1483
+ publish / skip := true ,
1484
+ // Project specific target folder. sbt doesn't like having two projects using the same target folder
1485
+ target := target.value / " scala3-library-nonbootstrapped" ,
1486
+ )
1487
+
1488
+ /* Configuration of the org.scala-lang:scala-library:*.**.**-bootstrapped project */
1454
1489
lazy val `scala-library-bootstrapped` = project.in(file(" library" ))
1455
1490
.enablePlugins(ScalaLibraryPlugin )
1456
1491
.settings(
@@ -1518,6 +1553,43 @@ object Build {
1518
1553
},
1519
1554
)
1520
1555
1556
+ /* Configuration of the org.scala-lang:scala3-library_3:*.**.**-bootstrapped project */
1557
+ lazy val `scala3-library-bootstrapped-new` = project.in(file(" library" ))
1558
+ .dependsOn(`scala-library-bootstrapped`)
1559
+ .settings(
1560
+ name := " scala3-library-bootstrapped" ,
1561
+ moduleName := " scala3-library" ,
1562
+ version := dottyVersion,
1563
+ versionScheme := Some (" semver-spec" ),
1564
+ // sbt defaults to scala 2.12.x and metals will report issues as it doesn't consider the project a scala 3 project
1565
+ // (not the actual version we use to compile the project)
1566
+ scalaVersion := referenceVersion,
1567
+ crossPaths := true , // org.scala-lang:scala3-library has a crosspath
1568
+ // Do not depend on the `org.scala-lang:scala3-library` automatically, we manually depend on `scala-library-bootstrapped`
1569
+ autoScalaLibrary := false ,
1570
+ // Drop all the scala tools in this project, so we can never generate any bytecode, or documentation
1571
+ managedScalaInstance := false ,
1572
+ // This Project only has a dependency to `org.scala-lang:scala-library:*.**.**-bootstrapped`
1573
+ Compile / sources := Seq (),
1574
+ Compile / resources := Seq (),
1575
+ Test / sources := Seq (),
1576
+ Test / resources := Seq (),
1577
+ // Bridge the common task to call the ones of the actual library project
1578
+ Compile / compile := (`scala-library-bootstrapped` / Compile / compile).value,
1579
+ Compile / doc := (`scala-library-bootstrapped` / Compile / doc).value,
1580
+ Compile / run := (`scala-library-bootstrapped` / Compile / run).evaluated,
1581
+ Test / compile := (`scala-library-bootstrapped` / Test / compile).value,
1582
+ Test / doc := (`scala-library-bootstrapped` / Test / doc).value,
1583
+ Test / run := (`scala-library-bootstrapped` / Test / run).evaluated,
1584
+ // Only publish compilation artifacts, no test artifacts
1585
+ Compile / publishArtifact := true ,
1586
+ Test / publishArtifact := false ,
1587
+ // Do not allow to publish this project for now
1588
+ publish / skip := true ,
1589
+ // Project specific target folder. sbt doesn't like having two projects using the same target folder
1590
+ target := target.value / " scala3-library-bootstrapped" ,
1591
+ )
1592
+
1521
1593
def dottyLibrary (implicit mode : Mode ): Project = mode match {
1522
1594
case NonBootstrapped => `scala3-library`
1523
1595
case Bootstrapped => `scala3-library-bootstrapped`
0 commit comments