-
Notifications
You must be signed in to change notification settings - Fork 48
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
ubuntu arm #249
ubuntu arm #249
Conversation
new bugs appear @iMichka |
Ok that's 7 errors, some of them I think I already know how to fix (it's mostly badly written test that I wrote a long time ago ...). It will take a few days to go through these errors, I'll open separate pull requests to fix them. |
Super! |
Fixed some tests with #250, this can now be rebased |
I added a fix here to see if this helps. I think there is just one more declaration to remove. |
Super. Only know 2 failed |
Ok, I have extracted that fix to a separate PR to get it shipped ASAP: #251 |
Seems that is not installed. I will check |
Yes for one of them castxml is not installed. |
It's odd, If you want to push some more fixes for the missing castxml in the third build, go ahead :) |
there was a typo error @iMichka fixed. It should build for 3 arm os |
Done! |
6478480
to
92bbcbb
Compare
Here is the xml file based on the CI output https://gist.github.com/iMichka/1b35b9b8c3ac40c59b8e0c0094715971
_3536 is related to __va_list, so that's intriguing
|
d0e2fd7
to
b318730
Compare
I've try everything in my fork, and I didn't find it where is the problem @iMichka I investigate it, and file by file for me is working with this code: @staticmethod
def _join_top_namespaces(main_ns_list, other_ns_list):
answer = main_ns_list[:]
for other_ns in other_ns_list:
# Instead of find_declaration(...), gather ALL that match name
same_name_namespaces = pygccxml.declarations.find_all_declarations(
answer,
decl_type=pygccxml.declarations.namespace_t,
name=other_ns.name,
parent=None, # top-level only
recursive=False
)
if len(same_name_namespaces) == 0:
answer.append(other_ns)
elif len(same_name_namespaces) == 1:
same_name_namespaces[0].take_parenting(other_ns)
else:
primary_ns = same_name_namespaces[0]
for extra_ns in same_name_namespaces[1:]:
primary_ns.take_parenting(extra_ns)
answer.remove(extra_ns)
# then unify the new other_ns
primary_ns.take_parenting(other_ns)
return answer I've seen that all tests are working: the problem are: |
Found it, the same change was missing from Looks like the join logic was never really tested / we did not expect this edge case. This pull request will need a big cleanup. I'll have some time tomorrow evening to move this forward. We are close to be done here :) Regarding the new implementation of |
Thanks a lot! |
I can clean it with your fixes. |
@iMichka cleaned |
@iMichka could you merge this branch first, and then create optimizations in other branches? |
This pull request includes updates to the GitHub Actions workflow configuration to add support for Ubuntu ARM architectures. The most important changes include adding new job configurations for Ubuntu ARM and setting up CastXML for these new environments.
Updates to GitHub Actions workflow:
.github/workflows/tests.yml
: Added job configurations forubuntu-22.04-arm
andubuntu-24.04-arm
with specific settings for architecture, compiler, and Python version..github/workflows/tests.yml
: Added steps to set up CastXML forubuntu-22.04-arm
andubuntu-24.04-arm
environments, including downloading and extracting the appropriate binaries.