Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add linux riscv64 build with bundles #1445

Merged

Conversation

yuzibo
Copy link
Contributor

@yuzibo yuzibo commented Sep 4, 2024

No description provided.

Copy link
Contributor

github-actions bot commented Sep 4, 2024

Test Results

   486 files  +1     486 suites  +1   9m 5s ⏱️ +32s
 4 156 tests ±0   4 148 ✅ +1   8 💤 ±0  0 ❌  - 1 
16 378 runs  ±0  16 286 ✅ +1  92 💤 ±0  0 ❌  - 1 

Results for commit 37eb397. ± Comparison against base commit 3731e2c.

♻️ This comment has been updated with latest results.

@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 4, 2024

This is another part of fixing #1443. But I am not sure how to verify this until now, please tell me if any issues.

It seems the error from CI was the same with other architecture.

@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 5, 2024

Good news is that this can be built wit mvn clean verify -DskipTests=true on riscv64 machines

@yuzibo yuzibo force-pushed the add-support-for-riscv64-bundles branch from 8d805c4 to ad3de7a Compare September 5, 2024 01:20
@yuzibo yuzibo changed the title add linux riscv64 build Add linux riscv64 build with bundles Sep 5, 2024
@yuzibo yuzibo force-pushed the add-support-for-riscv64-bundles branch from ad3de7a to e0cea72 Compare September 5, 2024 11:21
Copy link
Member

@akurtakov akurtakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other than the p2.inf changes the rest looks good. We can't get these parts in as they will break building repos by trying to put linux.riscv64 fragments in the repository but they will not be built.
This should be totally irrelevant for builds that aim at riscv64.

bundles/org.eclipse.swt/META-INF/p2.inf Outdated Show resolved Hide resolved
@yuzibo yuzibo force-pushed the add-support-for-riscv64-bundles branch from e0cea72 to 37eb397 Compare September 5, 2024 15:29
Copy link
Member

@akurtakov akurtakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good now.

@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 5, 2024

Other than the p2.inf changes the rest looks good. We can't get these parts in as they will break building repos by trying to put linux.riscv64 fragments in the repository but they will not be built. This should be totally irrelevant for builds that aim at riscv64.

Thanks for reviewing this. I over-referenced to add support eclipse from other architectures.

@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 5, 2024

Looks good now.

Thanks for approving this.:)

Now I am still get the FAILURE on riscv64 hardware, this is log. Could you give me some advice on the next steps which how to push the porting works. TIA.

@akurtakov
Copy link
Member

akurtakov commented Sep 5, 2024

Looks good now.

Thanks for approving this.:)

Now I am still get the FAILURE on riscv64 hardware, this is log. Could you give me some advice on the next steps which how to push the porting works. TIA.

This log makes me believe that jna https://github.com/java-native-access/jna lacks freebsd.riscv64 support. If you look in https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar:META-INF/MANIFEST.MF you'll notice there is only com/sun/jna/freebsd-x8
6/libjnidispatch.so; processor=x86;osname=freebsd, com/sun/jna/freebs
d-x86-64/libjnidispatch.so; processor=x86-64;osname=freebsd .
You'll have to work with them to add support. You can use java-native-access/jna#1578 as an example where freebsd aarch64 was added.

@akurtakov akurtakov merged commit cd11f5e into eclipse-platform:master Sep 5, 2024
14 checks passed
@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 5, 2024

This log makes me believe that jna https://github.com/java-native-access/jna lacks freebsd.riscv64 support. If you look in https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar:META-INF/MANIFEST.MF you'll notice there is only com/sun/jna/freebsd-x8 6/libjnidispatch.so; processor=x86;osname=freebsd, com/sun/jna/freebs d-x86-64/libjnidispatch.so; processor=x86-64;osname=freebsd . You'll have to work with them to add support. You can use java-native-access/jna#1578 as an example where freebsd aarch64 was added.

Thanks, I will look at this.

@yuzibo
Copy link
Contributor Author

yuzibo commented Sep 9, 2024

This log makes me believe that jna https://github.com/java-native-access/jna lacks freebsd.riscv64 support. If you look in https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar:META-INF/MANIFEST.MF you'll notice there is only com/sun/jna/freebsd-x8 6/libjnidispatch.so; processor=x86;osname=freebsd, com/sun/jna/freebs d-x86-64/libjnidispatch.so; processor=x86-64;osname=freebsd . You'll have to work with them to add support. You can use java-native-access/jna#1578 as an example where freebsd aarch64 was added.

Thanks for the pointer again.

The issue has been confirmed from jna upstream also, see the PR.

But a harder problem for me now is how can I replace this jna with the modified locally.

There is the com.sun.jna with version defined. So can I comment out the line and put the jna updated into /$HOME/.m2/repository. From the original build stack log, can I assume this jar is stored in /$HOME/.m2/repository/p2/osgi/bundle/com.sun.jna/5.14.0.v20231211-1200/ (or other place)?

Can this way work?

TIA.

@akurtakov
Copy link
Member

@yuzibo I would go for local mvn install of fixed jna version (preferably with bumped version) and require that version in the target file otherwise you risk maven overriding after/when it sees checksums mismatch (I am not 100% sure here).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants