File tree Expand file tree Collapse file tree 3 files changed +11
-6
lines changed
sbt-scala-native-bindgen/src
main/scala/org/scalanative/bindgen/sbt
sbt-test/bindgen/generate Expand file tree Collapse file tree 3 files changed +11
-6
lines changed Original file line number Diff line number Diff line change @@ -30,17 +30,13 @@ import org.scalanative.bindgen.Bindgen
30
30
*
31
31
* - `nativeBindgenPath`: Path to the `scala-native-bindgen` executable.
32
32
* - `nativeBindgenHeader`: The C header file to read.
33
- *
34
33
* - `nativeBindgenPackage`: Package of the enclosing object.
35
34
* No package by default.
36
- *
37
35
* - `name in nativeBindgen`: Name of the enclosing object.
38
- *
36
+ * - `target in nativeBindgen`: Output folder of the generated code.
39
37
* - `version in nativeBindgen`: Version of the `scala-native-bindgen`
40
38
* to use when automatically downloading the executable.
41
- *
42
39
* - `nativeBindgenLink`: Name of library to be linked.
43
- *
44
40
* - `nativeBindgen`: Generate Scala Native bindings.
45
41
*
46
42
* @example
@@ -134,8 +130,10 @@ object ScalaNativeBindgenPlugin extends AutoPlugin {
134
130
nativeBindgenExclude := None ,
135
131
sourceGenerators += Def .task { Seq (nativeBindgen.value) },
136
132
name in nativeBindgen := " ScalaNativeBindgen" ,
133
+ target in nativeBindgen := sourceManaged.value / " sbt-scala-native-bindgen" ,
137
134
nativeBindgen := {
138
- val output = sourceManaged.value / " sbt-scala-native-bindgen" / " ScalaNativeBindgen.scala"
135
+ val fileName = (name in nativeBindgen).value + " .scala"
136
+ val output = (target in nativeBindgen).value / fileName
139
137
140
138
Bindgen ()
141
139
.bindgenExecutable(nativeBindgenPath.value)
Original file line number Diff line number Diff line change @@ -13,6 +13,9 @@ inConfig(Compile)(
13
13
name in nativeBindgen := " AppAPI"
14
14
))
15
15
16
+ val natigeBindgenCustomTarget = SettingKey [File ](" natigeBindgenCustomTarget" )
17
+ SettingKey [File ](" natigeBindgenCustomTarget" ) := baseDirectory.value / " src/main/scala/org/example"
18
+
16
19
TaskKey [Unit ](" check" ) := {
17
20
val file = (nativeBindgen in Compile ).value
18
21
val expected =
Original file line number Diff line number Diff line change 1
1
> check
2
+ $ exists target/scala-2.11/src_managed/main/sbt-scala-native-bindgen/AppAPI.scala
3
+ > set target in (Compile, nativeBindgen) := natigeBindgenCustomTarget.value
4
+ > check
5
+ $ exists src/main/scala/org/example/AppAPI.scala
You can’t perform that action at this time.
0 commit comments