30 lines
1,013 B
Scala
30 lines
1,013 B
Scala
/*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* license agreements; and to You under the Apache License, version 2.0:
|
|
*
|
|
* https://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* This file is part of the Apache Pekko project, which was derived from Akka.
|
|
*/
|
|
|
|
/*
|
|
* Copyright (C) 2016-2022 Lightbend Inc. <https://www.lightbend.com>
|
|
*/
|
|
|
|
import sbt.{ Def, _ }
|
|
import sbt.Keys._
|
|
|
|
/**
|
|
* Helper to set Automatic-Module-Name in projects.
|
|
*
|
|
* !! DO NOT BE TEMPTED INTO AUTOMATICALLY DERIVING THE NAMES FROM PROJECT NAMES !!
|
|
*
|
|
* The names carry a lot of implications and DO NOT have to always align 1:1 with the group ids or package names,
|
|
* though there should be of course a strong relationship between them.
|
|
*/
|
|
object AutomaticModuleName {
|
|
private val AutomaticModuleName = "Automatic-Module-Name"
|
|
|
|
def settings(name: String): Seq[Def.Setting[Task[Seq[PackageOption]]]] =
|
|
Seq(Compile / packageBin / packageOptions += Package.ManifestAttributes(AutomaticModuleName -> name))
|
|
}
|