On 11/03/2022 00.35, Brett Cannon wrote:
I brought this up on python-dev at https://email@example.com/thread/ZPBSHENP3... https://firstname.lastname@example.org/thread/ZPBSHENP3V7KHNPYWE6BEQD5ASES2NLV/ , and the feedback seemed supportive. As such, I am bringing a draft of what I'm thinking will go into PEP 11 with a bunch of
XXXplaceholders for people to help me fill in to see how this will look overall.
For any platform(s) you support, please reply with any relevant details that should be added to the relevant tables below. Once I have these details I will loop back with the proposed update to PEP 11 and make sure everyone is still on board with the proposal.
A few remarks:
autoconf, GCC, and Debian call it "Target Triplet". Clang and Rust use "Target Triple". Should we stick with the clang name or use the GCC name?
Target triplets are machine-vendor-os. They come in short, normalized form and in long, extended form. The normalized form often omits the vendor field. Your document has both long and short forms. "wasm32-unknown-emscripten" is extended form for "wasm32-emscripten", while "x86_64-windows-msvc" is the short form of "x86_64-pc-windows-msvc". I recommend to stick to one convention.
By the way config.guess script and gcc can dump the current triplet. The config.sub script can be used to normalize and validate a triplet (does not work for MSVC). The output of config.guess is more specific than the gcc machine info. Here is a dump from my RPi:
$ ./config.guess armv7l-unknown-linux-gnueabihf $ gcc -dumpmachine arm-linux-gnueabih $ ./config.sub arm-linux-gnueabihf arm-unknown-linux-gnueabihf
========================= ========================== ============================================== ======== Target Triple Notes Buildbot
Contacts ========================= ========================== ============================================== ======== wasm32-unknown-emscripten XXX XXX
Brett Cannon, Christian Heimes wasm32-unknown-wasi XXX XXX
Brett Cannon, Christian Heimes ========================= ========================== ============================================== ========
It's a bit premature to add wasm32-wasi. Python doesn't even compile on WASI yet.