Skip to content

Commit 131a5d6

Browse files
committed
native image build - platform specific builds
1 parent eb68b29 commit 131a5d6

File tree

2 files changed

+51
-11
lines changed

2 files changed

+51
-11
lines changed

.github/workflows/native-build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ jobs:
3535
- name: Build with Maven
3636
run: |
3737
if [ "$RUNNER_OS" == "Linux" ]; then
38-
mvn clean package -Pnative
38+
mvn clean package -Pnative,linux
3939
else
40-
mvn clean package -Pnative -DskipTests
40+
mvn clean package -Pnative,mac -DskipTests
4141
fi
4242
4343
- name: Upload binary

pom.xml

Lines changed: 49 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -299,22 +299,62 @@
299299
<phase>package</phase>
300300
<configuration>
301301
<mainClass>org.ebean.monitor.Application</mainClass>
302-
<buildArgs>
303-
<buildArg>--gc=G1</buildArg>
304-
<buildArg>-R:MaxGCPauseMillis=50</buildArg>
305-
<buildArg>-R:MaxHeapSize=200m</buildArg>
306-
<buildArg>--emit build-report</buildArg>
307-
<buildArg>--no-fallback</buildArg>
308-
<buildArg>--allow-incomplete-classpath</buildArg>
309-
<buildArg>-march=native</buildArg>
310-
</buildArgs>
311302
</configuration>
312303
</execution>
313304
</executions>
314305
</plugin>
315306
</plugins>
316307
</build>
317308
</profile>
309+
<profile>
310+
<id>mac</id>
311+
<activation>
312+
<os><family>mac</family></os>
313+
</activation>
314+
<build>
315+
<plugins>
316+
<plugin>
317+
<groupId>org.graalvm.buildtools</groupId>
318+
<artifactId>native-maven-plugin</artifactId>
319+
<configuration>
320+
<buildArgs>
321+
<buildArg>-R:MaxHeapSize=100m</buildArg>
322+
<buildArg>--emit build-report</buildArg>
323+
<buildArg>--no-fallback</buildArg>
324+
<buildArg>--allow-incomplete-classpath</buildArg>
325+
<buildArg>-march=native</buildArg>
326+
</buildArgs>
327+
</configuration>
328+
</plugin>
329+
</plugins>
330+
</build>
331+
</profile>
332+
<profile>
333+
<id>linux</id>
334+
<activation>
335+
<os><family>linux</family></os>
336+
</activation>
337+
<build>
338+
<plugins>
339+
<plugin>
340+
<groupId>org.graalvm.buildtools</groupId>
341+
<artifactId>native-maven-plugin</artifactId>
342+
<configuration>
343+
<imageName>demo-optimized</imageName>
344+
<buildArgs>
345+
<buildArg>--gc=G1</buildArg>
346+
<buildArg>-R:MaxGCPauseMillis=50</buildArg>
347+
<buildArg>-R:MaxHeapSize=200m</buildArg>
348+
<buildArg>--emit build-report</buildArg>
349+
<buildArg>--no-fallback</buildArg>
350+
<buildArg>--allow-incomplete-classpath</buildArg>
351+
<buildArg>-march=native</buildArg>
352+
</buildArgs>
353+
</configuration>
354+
</plugin>
355+
</plugins>
356+
</build>
357+
</profile>
318358
</profiles>
319359

320360
</project>

0 commit comments

Comments
 (0)