Skip to content

Commit a3e18e3

Browse files
committed
add arch configuration
1 parent edd95e5 commit a3e18e3

File tree

4 files changed

+44
-10
lines changed

4 files changed

+44
-10
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package io.github.fvarrui.javapackager.model;
2+
3+
public enum JavaArch {
4+
aarch64("arm64", "AARCH64"),
5+
x64("amd64", "X86_64");
6+
7+
private String deb;
8+
private String rpm;
9+
10+
JavaArch(String deb, String rpm) {
11+
this.deb = deb;
12+
this.rpm = rpm;
13+
}
14+
15+
public String getDeb() {
16+
return deb;
17+
}
18+
19+
public String getRpm() {
20+
return rpm;
21+
}
22+
}

src/main/java/io/github/fvarrui/javapackager/packagers/GenerateRpm.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ protected File doApply(LinuxPackager packager) throws Exception {
5353

5454
Builder builder = new Builder();
5555
builder.setType(RpmType.BINARY);
56-
builder.setPlatform(Architecture.X86_64, Os.LINUX);
56+
builder.setPlatform(packager.getArchForRpm(), Os.LINUX);
5757
builder.setPackage(name, version, "1");
5858
builder.setPackager(organizationName);
5959
builder.setDescription(description);

src/main/java/io/github/fvarrui/javapackager/packagers/PackagerSettings.java

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,9 @@
66
import java.util.Map;
77
import java.util.stream.Collectors;
88

9+
import io.github.fvarrui.javapackager.model.*;
910
import org.apache.commons.lang3.StringUtils;
10-
11-
import io.github.fvarrui.javapackager.model.FileAssociation;
12-
import io.github.fvarrui.javapackager.model.LinuxConfig;
13-
import io.github.fvarrui.javapackager.model.MacConfig;
14-
import io.github.fvarrui.javapackager.model.Manifest;
15-
import io.github.fvarrui.javapackager.model.Platform;
16-
import io.github.fvarrui.javapackager.model.Scripts;
17-
import io.github.fvarrui.javapackager.model.WindowsConfig;
11+
import org.redline_rpm.header.Architecture;
1812

1913
/**
2014
* Common packagers' settings
@@ -65,6 +59,7 @@ public class PackagerSettings {
6559
protected File packagingJdk;
6660
protected Scripts scripts;
6761

62+
private JavaArch arch;
6863
/**
6964
* Get packaging JDK
7065
* @return Packaging JDK
@@ -861,6 +856,23 @@ public String getMimeTypesListAsString(String separator) {
861856
separator);
862857
}
863858

859+
public JavaArch getArch() {
860+
return arch;
861+
}
862+
863+
public void arch(JavaArch arch) {
864+
this.arch = arch;
865+
}
866+
867+
public String getArchForDeb() {
868+
return arch != null ? arch.getDeb() : "amd64";
869+
}
870+
871+
public Architecture getArchForRpm() {
872+
String s = arch != null ? arch.getRpm() : "X86_64";
873+
return Architecture.valueOf(s);
874+
}
875+
864876
@Override
865877
public String toString() {
866878
return "PackagerSettings [outputDirectory=" + outputDirectory + ", licenseFile=" + licenseFile + ", iconFile="

src/main/resources/linux/control.vtl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Package: ${info.name}
22
Version: ${info.version}
33
Section: misc
44
Priority: optional
5-
Architecture: amd64
5+
Architecture: ${info.archForDeb}
66
Maintainer: ${info.organizationName} <$!{info.organizationEmail}>
77
Description: ${info.description}
88
Distribution: development

0 commit comments

Comments
 (0)