Skip to content

Commit 092e14b

Browse files
committed
Activate local build profile by default
+ clean up regarding Java modules
1 parent d5005e9 commit 092e14b

File tree

7 files changed

+34
-58
lines changed

7 files changed

+34
-58
lines changed

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ For dependencies, we can use anything compliant with [this list](https://opensou
1515

1616
## Building
1717

18-
To build all the artifacts locally, simply invoke the command `mvn install -Djavacpp.platform.host` at the root of this repository (or the Maven command of your choice). It is also
18+
To build all the artifacts locally, simply invoke the command `mvn install` at the root of this repository (or the Maven command of your choice). It is also
1919
possible to build artifacts with support for CUDA® by adding the `-Djavacpp.platform.extension=-gpu` argument to the Maven command.
2020

2121
### JDK 16+
@@ -120,7 +120,7 @@ Once these steps have been executed, you can run `mvn install` to build the new
120120
### Generating Java Bindings
121121

122122
After upgrading the TensorFlow library, you need to regenerate all Java bindings that depends on the native code. That includes Java protos, C API bindings (JavaCPP) and
123-
operator classes. You can trigger the regeneration of these bindings with the Maven command `mvn clean install -Pgenerating -Djavacpp.platform.host`.
123+
operator classes. You can trigger the regeneration of these bindings with the Maven command `mvn clean install -Pgenerating`.
124124

125125
This will trigger a small Bazel build of the TensorFlow sources to regenerate the Java protos, so make sure your [environment](CONTRIBUTING.md#native-builds) is setup properly.
126126

tensorflow-core/pom.xml

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,43 @@
6666

6767
<profiles>
6868
<profile>
69-
<id>javacpp-platform-default</id>
69+
<!--
70+
When deploying, the build packages and distributes native binaries for all supported platforms. These native artifacts
71+
must have already been built, tested and published priorly on their respective platform.
72+
-->
73+
<id>deploying</id>
74+
<properties>
75+
<javacpp.platform>${os.name}-${os.arch}</javacpp.platform>
76+
</properties>
77+
</profile>
78+
79+
<profile>
80+
<!--
81+
All supported platforms are being replaced by the current host platform, mostly useful for local builds.
82+
The artifacts produced by this build can only run on the current host (or other machines of the same
83+
platform). This is the default profile.
84+
-->
85+
<id>javacpp-platform-host</id>
7086
<activation>
87+
<activeByDefault>true</activeByDefault>
7188
<property>
72-
<name>!javacpp.platform</name>
89+
<name>javacpp.platform.host</name>
7390
</property>
7491
</activation>
7592
<properties>
7693
<javacpp.platform>${os.name}-${os.arch}</javacpp.platform>
94+
<javacpp.platform.linux-armhf>${os.name}-${os.arch}</javacpp.platform.linux-armhf>
95+
<javacpp.platform.linux-arm64>${os.name}-${os.arch}</javacpp.platform.linux-arm64>
96+
<javacpp.platform.linux-x86_64>${os.name}-${os.arch}</javacpp.platform.linux-x86_64>
97+
<javacpp.platform.macosx-arm64>${os.name}-${os.arch}</javacpp.platform.macosx-arm64>
98+
<javacpp.platform.macosx-x86_64>${os.name}-${os.arch}</javacpp.platform.macosx-x86_64>
99+
<javacpp.platform.windows-x86_64>${os.name}-${os.arch}</javacpp.platform.windows-x86_64>
100+
<javacpp.platform.linux-armhf.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-armhf.extension>
101+
<javacpp.platform.linux-arm64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-arm64.extension>
102+
<javacpp.platform.linux-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-x86_64.extension>
103+
<javacpp.platform.macosx-arm64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-arm64.extension>
104+
<javacpp.platform.macosx-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-x86_64.extension>
105+
<javacpp.platform.windows-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.windows-x86_64.extension>
77106
</properties>
78107
</profile>
79108

@@ -106,30 +135,6 @@
106135
</properties>
107136
</profile>
108137

109-
<profile>
110-
<id>javacpp-platform-host</id>
111-
<activation>
112-
<property>
113-
<name>javacpp.platform.host</name>
114-
</property>
115-
</activation>
116-
<properties>
117-
<javacpp.platform>${os.name}-${os.arch}</javacpp.platform>
118-
<javacpp.platform.linux-armhf>${os.name}-${os.arch}</javacpp.platform.linux-armhf>
119-
<javacpp.platform.linux-arm64>${os.name}-${os.arch}</javacpp.platform.linux-arm64>
120-
<javacpp.platform.linux-x86_64>${os.name}-${os.arch}</javacpp.platform.linux-x86_64>
121-
<javacpp.platform.macosx-arm64>${os.name}-${os.arch}</javacpp.platform.macosx-arm64>
122-
<javacpp.platform.macosx-x86_64>${os.name}-${os.arch}</javacpp.platform.macosx-x86_64>
123-
<javacpp.platform.windows-x86_64>${os.name}-${os.arch}</javacpp.platform.windows-x86_64>
124-
<javacpp.platform.linux-armhf.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-armhf.extension>
125-
<javacpp.platform.linux-arm64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-arm64.extension>
126-
<javacpp.platform.linux-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-x86_64.extension>
127-
<javacpp.platform.macosx-arm64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-arm64.extension>
128-
<javacpp.platform.macosx-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-x86_64.extension>
129-
<javacpp.platform.windows-x86_64.extension>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.windows-x86_64.extension>
130-
</properties>
131-
</profile>
132-
133138
<profile>
134139
<id>javacpp.platform.custom-true</id>
135140
<activation>

tensorflow-core/tensorflow-core-api/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
<description>Platform-dependent native code and pure-Java code for the TensorFlow machine intelligence library.</description>
1616

1717
<properties>
18-
<java.module.name>org.tensorflow.core.api</java.module.name>
1918
<ndarray.version>0.4.0</ndarray.version>
2019
<truth.version>1.1.5</truth.version>
2120
<test.download.skip>false</test.download.skip>

tensorflow-core/tensorflow-core-generator/pom.xml

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@
1313
<name>TensorFlow Generators</name>
1414
<description>Code generators for TensorFlow Java client</description>
1515

16-
<properties>
17-
<java.module.name>org.tensorflow.core.generator</java.module.name>
18-
</properties>
19-
2016
<dependencies>
2117
<dependency>
2218
<groupId>org.tensorflow</groupId>
@@ -70,17 +66,6 @@
7066

7167
<build>
7268
<plugins>
73-
<plugin>
74-
<artifactId>maven-jar-plugin</artifactId>
75-
<version>3.3.0</version>
76-
<configuration>
77-
<archive>
78-
<manifestEntries>
79-
<Automatic-Module-Name>${java.module.name}</Automatic-Module-Name>
80-
</manifestEntries>
81-
</archive>
82-
</configuration>
83-
</plugin>
8469
<plugin>
8570
<groupId>com.diffplug.spotless</groupId>
8671
<artifactId>spotless-maven-plugin</artifactId>

tensorflow-core/tensorflow-core-native/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
<dist.download.skip>false</dist.download.skip>
2525
<dist.download.url/>
2626
<dist.download.folder>${project.build.directory}/dist/</dist.download.folder>
27-
<java.module.name>org.tensorflow.core.native</java.module.name>
2827
<nativeSourceDirectory>${project.basedir}/src/main/native</nativeSourceDirectory>
2928
</properties>
3029

tensorflow-core/tensorflow-core-platform/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
<name>TensorFlow API Platform</name>
2929

3030
<properties>
31-
<java.module.name>org.tensorflow.core.platform</java.module.name>
31+
<java.module.name>tensorflow.platform</java.module.name>
3232
</properties>
3333

3434
<dependencies>

tensorflow-framework/pom.xml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535

3636
<properties>
3737
<javacpp.platform.extension></javacpp.platform.extension>
38-
<java.module.name>org.tensorflow.framework</java.module.name>
3938
</properties>
4039

4140
<dependencies>
@@ -76,17 +75,6 @@
7675

7776
<build>
7877
<plugins>
79-
<plugin>
80-
<artifactId>maven-jar-plugin</artifactId>
81-
<version>3.3.0</version>
82-
<configuration>
83-
<archive>
84-
<manifestEntries>
85-
<Automatic-Module-Name>${java.module.name}</Automatic-Module-Name>
86-
</manifestEntries>
87-
</archive>
88-
</configuration>
89-
</plugin>
9078
<plugin>
9179
<groupId>org.apache.maven.plugins</groupId>
9280
<artifactId>maven-surefire-plugin</artifactId>

0 commit comments

Comments
 (0)