-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
109 lines (75 loc) · 2.84 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
enablePlugins(AllHaxePlugins)
resolvers in ThisBuild += "Typesafe repository releases" at "http://repo.typesafe.com/typesafe/releases/"
val haxelibs = Map(
"continuation" -> DependencyVersion.SpecificVersion("1.3.2"),
"microbuilder-HUGS" -> DependencyVersion.SpecificVersion("2.0.1")
)
haxelibDependencies ++= haxelibs
for (c <- AllTargetConfigurations ++ AllTestTargetConfigurations) yield {
haxeOptions in c ++= haxelibOptions(haxelibs)
}
for (c <- AllTargetConfigurations ++ AllTestTargetConfigurations) yield {
haxeOptions in c ++= Seq("-dce", "no")
}
for (c <- Seq(CSharp, TestCSharp)) yield {
haxeOptions in c ++= Seq("-D", "CF", "-D", "WITHOUTUNITY")
}
releaseUseGlobalVersion := false
releaseCrossBuild := false
haxeOptions in CSharp ++= Seq("-D", "dll")
for (c <- AllTestTargetConfigurations) yield {
haxeOptions in c ++= Seq("-main", "jsonStream.Main")
}
haxeOptions in Compile ++= Seq("--macro", "com.qifun.util.Patcher.noExternalDoc()")
javacOptions in Compile in compile += "-Xlint:-deprecation"
libraryDependencies += "com.qifun" % "haxe-util" % "0.1.0" % HaxeJava classifier "haxe-java"
libraryDependencies += "com.qifun.sbt-haxe" %% "test-interface" % "0.1.0" % Test
doc in Compile <<= doc in Haxe
organization := "com.thoughtworks.microbuilder"
name := "json-stream-core"
homepage := Some(url(s"https://github.com/ThoughtWorksInc/${name.value}"))
startYear := Some(2014)
autoScalaLibrary := false
crossPaths := false
licenses := Seq("Apache" -> url("http://www.apache.org/licenses/LICENSE-2.0.html"))
releasePublishArtifactsAction := PgpKeys.publishSigned.value
import ReleaseTransformations._
scmInfo := Some(ScmInfo(
url(s"https://github.com/ThoughtWorksInc/${name.value}"),
s"scm:git:git://github.com/ThoughtWorksInc/${name.value}.git",
Some(s"scm:git:git@github.com:ThoughtWorksInc/${name.value}.git")))
developers := List(
Developer(
"Atry",
"杨博 (Yang Bo)",
"pop.atry@gmail.com",
url("https://github.com/Atry")
),
Developer(
"zxiy",
"张修羽 (Zhang Xiuyu)",
"95850845@qq.com",
url("https://github.com/zxiy")
),
Developer(
"chank",
"方里权 (Fang Liquan)",
"fangliquan@qq.com",
url("https://github.com/chank")
)
)
haxelibContributors := Seq("Atry")
haxelibReleaseNote := "Fix compilation error for Flash target"
haxelibTags ++= Seq(
"cross", "cpp", "cs", "flash", "java", "javascript", "js", "neko", "php", "python", "nme",
"marshaller", "serialization", "serializer", "utility",
"json", "bson"
)
releaseProcess := {
releaseProcess.value.patch(releaseProcess.value.indexOf(publishArtifacts), Seq[ReleaseStep](releaseStepTask(publish in Haxe)), 0)
}
releaseProcess := {
releaseProcess.value.patch(releaseProcess.value.indexOf(pushChanges), Seq[ReleaseStep](releaseStepCommand("sonatypeRelease")), 0)
}
releaseProcess -= runClean
releaseProcess -= runTest