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

arm64 build fixes #957

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from
Draft

arm64 build fixes #957

wants to merge 6 commits into from

Conversation

dhomeier
Copy link
Contributor

config.guess updates as required, some additional build patches; pushing now what I've come across so far to keep people from duplicating efforts.

@dhomeier dhomeier requested a review from TheSin- January 25, 2023 16:01
@TheSin-
Copy link
Member

TheSin- commented Jan 25, 2023

You put WAY too many packages in one PR which is why they aren't getting accepted, it's too much to review.

both db53 and db60 are too complex, you only need to add one line to db60 and change one line on db53, that's all, they both need to be forced to use --with-mutex=Darwin/_spin_lock_try. This works for x86 and arm64 as it's what should be used for Darwin according to the m4 file.

@TheSin-
Copy link
Member

TheSin- commented Jan 25, 2023

I do approve the nettle7 fix though, just waiting on @nieder to approve it since it's his package.

@dhomeier
Copy link
Contributor Author

both db53 and db60 are too complex, you only need to add one line to db60 and change one line on db53, that's all, they both need to be forced to use --with-mutex=Darwin/_spin_lock_try. This works for x86 and arm64 as it's what should be used for Darwin according to the m4 file.

Perhaps x86_64/gcc-assembly was used for performance reasons? But I don't have anything to benchmark that on, so the Darwin one appears good enough. Are you planning to submit your own PR?

@dmacks
Copy link
Member

dmacks commented Jan 25, 2023

both db53 and db60 are too complex, you only need to add one line to db60 and change one line on db53, that's all, they both need to be forced to use --with-mutex=Darwin/_spin_lock_try. This works for x86 and arm64 as it's what should be used for Darwin according to the m4 file.

Perhaps x86_64/gcc-assembly was used for performance reasons? But I don't have anything to benchmark that on, so the Darwin one appears good enough. Are you planning to submit your own PR?

Because our maintainers are thoughtful enough to document their hackery:

mutex is hardcoded to x86_64/gcc-assembly to avoid a detection and build
failure with Xcode 12. Actual failure is unclear but seems linked to
implicit declarations now being errors during ./configure.

@TheSin-
Copy link
Member

TheSin- commented Jan 26, 2023

I had already seen that note, but I still think it was just the first one found, likely by griping for x86_64. I still think Darwin/_spin_lock_try is the correct answer here.

@dmacks
Copy link
Member

dmacks commented Jan 26, 2023

I agree that having a bunch of unrelated files in a single PR can get confusing, since a bunch of us are working on them or also in other PRs, and no need to wait to push it as a single set.

@dhomeier
Copy link
Contributor Author

I did not see what was still in the works at the time; to avoid more duplicate work wanted to push at least the draft here so others can see what is already in development. It's probably best to keep this as a tracker now that packages are being updated in their own PRs.

@TheSin-
Copy link
Member

TheSin- commented Jan 30, 2023

Have you tested cario with older dpkg? I've like to commit that one if it's working with dpkg 1.10

@dak180 dak180 linked an issue Jan 30, 2023 that may be closed by this pull request
@dhomeier
Copy link
Contributor Author

dhomeier commented Feb 1, 2023

Have you tested cario with older dpkg? I've like to commit that one if it's working with dpkg 1.10

You mean cairo? Yes, just built and even uncommented the test suite; there are a couple of failures, as noted in the comments, but config+build passes on 13.2 both archs, 10.14.6 with both dpkg 1.16 and 1.10.
But note that it BDeps on pkgconf from #923.

@TheSin-
Copy link
Member

TheSin- commented Feb 8, 2023

none of the pkg-config changes are required anymore, I fixed pkg-config tonight, selfupdate and pkg-config will start working.

@nieder nieder added the arm64 Build issues and fixes for Apple Silicon label Sep 8, 2023
@kristibektashi
Copy link

Why is apt the only unfixed package that doesn't have a separate pull request?

@TheSin-
Copy link
Member

TheSin- commented Oct 1, 2023

I just haven’t had time to move it from my exp since dpkg 1.15+ was accepted and it’s low priority since we don’t have a bindist atm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arm64 Build issues and fixes for Apple Silicon
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Failed: phase compiling: apt-0.5.4-1061 failed
5 participants