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

New package: gprbuild-25.0.0 #53605

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Conversation

Tevo45
Copy link

@Tevo45 Tevo45 commented Dec 21, 2024

GPRbuild is a multi-language build system commonly found in Ada projects. Changes include xmlada and gprconfig_kb, both dependencies of gprbuild, as well as libgpr, an optional library component. Lightly tested, but should receive some more usage in the coming days.

Closes #45421

Testing the changes

  • I tested the changes in this PR: briefly

New package

Local build testing

  • I built this PR locally for my native architecture, (x86_64-glibc)

srcpkgs/gprbuild/template Outdated Show resolved Hide resolved
@classabbyamp classabbyamp added the new-package This PR adds a new package label Dec 21, 2024
@Tevo45
Copy link
Author

Tevo45 commented Dec 22, 2024

I hadn't noticed it before, since libgpr-devel was missing a dependency on libgpr, but it seems I cannot install the built libgpr package due to "broken, unresolvable shlib"s on xmlada's libraries?

tenshi$ sudo xbps-install --repository hostdir/binpkgs/gprbuild libgpr
Password: 
libgpr-25.0.0_1: broken, unresolvable shlib `libxmlada_dom.so.18.0w'
libgpr-25.0.0_1: broken, unresolvable shlib `libxmlada_input_sources.so.18.0w'
libgpr-25.0.0_1: broken, unresolvable shlib `libxmlada_sax.so.18.0w'
libgpr-25.0.0_1: broken, unresolvable shlib `libxmlada_schema.so.18.0w'
libgpr-25.0.0_1: broken, unresolvable shlib `libxmlada_unicode.so.18.0w'
Transaction aborted due to unresolved shlibs.

I'm not exactly sure why; xmlada's shared objects are listed on common/shlibs, and the soname for those listed on the built libgpr.so seems to match exactly:

tenshi$ readelf -d libgnatprj.so

Dynamic section at offset 0x63ad40 contains 35 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libxmlada_schema.so.18.0w]
 0x0000000000000001 (NEEDED)             Shared library: [libxmlada_dom.so.18.0w]
 0x0000000000000001 (NEEDED)             Shared library: [libxmlada_sax.so.18.0w]
 0x0000000000000001 (NEEDED)             Shared library: [libxmlada_input_sources.so.18.0w]
 0x0000000000000001 (NEEDED)             Shared library: [libxmlada_unicode.so.18.0w]
[...]

I've tried adding xmlada to libgpr's depends, and adding xmlada's libraries' full path to common/shlibs (i.e. /usr/lib/xmlada/xmlada_schema.relocatable/libxmlada_schema.so.18.0w, etc) without much luck.

@Tevo45
Copy link
Author

Tevo45 commented Dec 22, 2024

Following the example from Fedora, I've also renamed libgpr.so to libgnatprj.so, to avoid conflict with gRPC's libgpr.

@Tevo45
Copy link
Author

Tevo45 commented Jan 12, 2025

I haven't made any effort to investigate the installation failure for libgpr, but gprbuild itself has been working fine for me. I figure if nobody minds we could just drop libgpr for the time being, and revisit it once somebody feels the need.

@abenson
Copy link
Contributor

abenson commented Jan 12, 2025

It's still using the host gcc for cross-builds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new-package This PR adds a new package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Package request: gprbuild
3 participants