-
Notifications
You must be signed in to change notification settings - Fork 178
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 GCC_GNU_SHORT_TRIPLET for packages that use -solaris2 instead of -solaris2.11 #16200
base: oi/hipster
Are you sure you want to change the base?
Add GCC_GNU_SHORT_TRIPLET for packages that use -solaris2 instead of -solaris2.11 #16200
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't this (-solaris2
instead of -solaris2.11
) just a bug? For example here? If not, could you please share a pointer where this issue is visible? I'm asking because I failed to find -solaris2
(without .11
) in installed path names.
Thank you.
make-rules/shared-macros.mk
Outdated
@@ -650,6 +650,9 @@ FC.gcc.64 = $(GCC_ROOT)/bin/gfortran | |||
GCC_FULL_VERSION = $(shell $(GCC_ROOT)/bin/gcc -dumpversion) | |||
# Since gcc-9 the GNU triplet is x86_64-pc-solaris2.11 instead of i386-pc-solaris2.11 | |||
GCC_GNU_TRIPLET = $(shell $(GCC_ROOT)/bin/gcc -dumpmachine) | |||
GCC_GNU_TRIPLET = $(shell $(GCC_ROOT)/bin/gcc -dumpmachine) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this needed twice?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Editing error. Will be fixed shortly.
Python needs a variant triple without a See 16a665b - we've evidently been building python without a proper target triple. |
…of ...-solaris2.11 Python would like to use this in installed pathnames. Inspired by omniosorg/omnios-build#3492
4184250
to
02f6e23
Compare
Why it needs a variant triple?
I'm not sure about this. So far Python dynamic libraries were named according to PEP 3149. This change seems to violate the PEP. |
surveying a few systems available to me, I see quite a bit of variation
@citrus-it I assume that cross-building python packages is the prime motivation for this? |
If the cross-building is a motivation for this, does it mean that we will rename all dynamic libraries on the whole system to contain the triplet? If not, then why Python libs yes, but others not? If yes, then: really? |
And also: Why the cross-building requires the triplet in the file name? |
I suppose that's a fair summary of the situation in that, with python 3.12, one cannot cross compile (without hacking Makefiles) unless the triplet is known. There is a cross-compiled OmniOS aarch64 distribution, and that's what showed this up. Here's the best summary of the Python change, introduced in 3.5 that I have found, and it explicitly notes that In OmniOS, we are most likely going to move to including the triple in extension filenames, it is probably not necessary to make this change in OpenIndiana. |
I'm sorry, but I'm trying to understand the situation so please bear with me... Known triplet and triplet incorporated into file names is different thing, isn't?
Thanks for the pointer. The whatsnew document does not say anything about the motivation, so it is unclear how it is related to cross-compilation. BTW, It looks like the related PEP is PEP 720, but it is fairly new and still draft.
I'm not against it if it proves useful and/or necessary, but so far I do not see any pro, only cons. |
While actually ruby uses pair only instead of triplet. |
How shall we proceed? |
currently on a brief vacation, will respond with a proposal next week. |
Any news? |
Python would like to use this in installed pathnames. Inspired by omniosorg/omnios-build#3492