LOG4J2-2293: Add required license files to SBT output artifacts
diff --git a/build.sbt b/build.sbt
index 386e479..5f52ed9 100644
--- a/build.sbt
+++ b/build.sbt
@@ -1,6 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
import Dependencies._
//import OsgiKeys._
+enablePlugins(org.apache.logging.log4j.scala.sbt.copyresources.CopyResourcesPlugin)
+
lazy val metadataSettings = Seq(
organization := "org.apache.logging.log4j",
organizationName := "Apache Software Foundation",
@@ -58,9 +76,11 @@
} yield Credentials("Sonatype Nexus Repository Manager", "repository.apache.org", username, password)
}.toList,
// FIXME: https://github.com/sbt/sbt/issues/3519
- updateOptions := updateOptions.value.withGigahorse(false)
- // managedResources
-// resourceGenerators in Compile += inlineTask(Seq(file("LICENSE.txt"), file("NOTICE.txt")))
+ updateOptions := updateOptions.value.withGigahorse(false),
+ extraResources := Seq(
+ (baseDirectory.value / "LICENSE.txt", "META-INF/LICENSE"),
+ (baseDirectory.value / "NOTICE.txt", "META-INF/NOTICE")
+ )
)
lazy val releaseSettings = Seq(
diff --git a/project/CopyResourcesPlugin.scala b/project/CopyResourcesPlugin.scala
new file mode 100644
index 0000000..4c3b616
--- /dev/null
+++ b/project/CopyResourcesPlugin.scala
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
+package org.apache.logging.log4j.scala.sbt.copyresources
+
+import sbt.Keys._
+import sbt._
+
+/**
+ * Simple SBT plugin to copy in configured files into all output jars.
+ */
+object CopyResourcesPlugin extends AutoPlugin {
+
+ object autoImport {
+ val extraResources = taskKey[Seq[(File, String)]]("Additional files to copy into packages")
+
+ lazy val baseCopyResourceSettings: Seq[Setting[_]] = Seq(
+ extraResources := Nil,
+ mappings in (Compile, packageBin) ++= extraResources.value,
+ mappings in (Compile, packageSrc) ++= extraResources.value,
+ mappings in (Compile, packageDoc) ++= extraResources.value
+ )
+ }
+
+ import autoImport._
+
+ override lazy val projectSettings: Seq[Setting[_]] = baseCopyResourceSettings
+
+}
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 8909c8b..f3863eb 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -31,6 +31,9 @@
- "remove" - Removed
-->
<release version="11.1" date="2018-MM-DD" description="GA Release 11.1">
+ <action issue="LOG4J2-2293" dev="mattsicker" type="add">
+ Add required license files to SBT output artifacts.
+ </action>
<action issue="LOG4J2-2296" dev="mattsicker" type="add">
Add sbt-site plugin and website configuration.
</action>