-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.gradle
131 lines (107 loc) · 3.75 KB
/
build.gradle
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
plugins {
id 'java'
id 'eclipse'
id 'idea'
id 'maven'
id 'signing'
id 'me.champeau.gradle.jmh' version '0.5.0'
}
// Java compatibility
sourceCompatibility = targetCompatibility = 1.8
// character encoding
tasks.withType(AbstractCompile)*.options*.encoding = "UTF-8"
// group and version of the project
version = '1.0.2'
group = 'net.whenperformancematters'
archivesBaseName = "llvm-jnr"
jmh {
jmhVersion = '1.23'
}
repositories {
mavenCentral()
maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
}
dependencies {
implementation group: 'com.github.jnr', name: 'jnr-ffi', version: '2.2.11'
implementation group: 'org.bytedeco', name: 'llvm-platform', version: '13.0.1-1.5.7'
testCompile group: 'junit', name: 'junit', version: '4.13'
jmh group: 'net.java.dev.jna', name: 'jna', version: '5.10.0'
jmh group: 'org.bytedeco', name: 'mkl-platform', version: '2022.0-1.5.7'
jmh group: 'org.bytedeco', name: 'mkl-platform-redist', version: '2022.0-1.5.7'
jmh group: 'org.bytedeco', name: 'openblas-platform', version: '0.3.19-1.5.7'
}
wrapper {
gradleVersion = "6.9.2";
distributionUrl = distributionUrl.replace("bin", "all");
}
//--------------------------------------------------------------------------------------------------
//------------------------------------- Publish to Maven -------------------------------------------
//--------------------------------------------------------------------------------------------------
task sourceJar(type: Jar) {
from sourceSets.main.allJava
classifier "sources"
}
task javadocJar(type: Jar, dependsOn: javadoc) {
from javadoc.destinationDir
classifier = 'javadoc'
}
artifacts {
archives sourceJar
archives javadocJar
}
signing {
setRequired {
// signing is only required if the artifacts are to be published
gradle.taskGraph.allTasks.any { it.equals( PublishToMavenRepository) }
}
sign configurations.archives
}
/**
* Publish to Maven Central Repository
*/
uploadArchives {
repositories {
mavenDeployer {
beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
// local repository
repository(url: uri('build/publications/'))
// Maven central repository
// http://central.maven.org/maven2/net/whenperformancematters/records/
//repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
// authentication(userName: ossrhUsername, password: ossrhPassword)
//}
// Sonatype Snapshots
// https://oss.sonatype.org/content/repositories/snapshots/net/whenperformancematters/records/
//snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
// authentication(userName: ossrhUsername, password: ossrhPassword)
//}
pom.project {
packaging 'jar'
// optionally artifactId can be defined here
name 'llvm-jnr'
description 'Compiling LLVM IR in Java and calling it with JNR.'
url 'http://llvm-jnr.whenperformancematters.net'
scm {
connection 'scm:git:git://github.com:WhenPerformanceMatters/llvm-jnr.git'
developerConnection 'scm:git:ssh://github.com:WhenPerformanceMatters/llvm-jnr.git'
url 'https://github.com/whenperformancematters/llvm-jnr/tree/master/'
}
licenses {
license {
name 'MIT License'
url 'https://opensource.org/licenses/MIT'
}
}
developers {
developer {
id 'Neiko2002'
name 'Nico Hezel'
email 'nico@whenperformancematters.net'
organization 'WhenPerformanceMatters'
organizationUrl 'www.whenperformancematters.net'
}
}
}
}
}
}