Location to store binaries

mcalhoun at macports.org mcalhoun at macports.org
Sat Apr 16 18:29:35 UTC 2022


In the current pull request, there is no dependency.

The bootstrap compilers are distfiles.
On newer systems, the bootstrap compiler comes from upstream.
On older systems, it comes from wherever we choose to put it (currently the less-than-ideal https://github.com/MarcusCalhoun-Lopez/rust/releases <https://github.com/MarcusCalhoun-Lopez/rust/releases>).

-Marcus

> On Apr 16, 2022, at 11:19 AM, Jonathan Alland <wowfunhappy at gmail.com> wrote:
> 
> If a port has a dependency which cannot be compiled from source, shouldn’t -s fail? 
> 
> On Apr 16, 2022, at 2:08 PM, mcalhoun at macports.org <mailto:mcalhoun at macports.org> wrote:
> 
>> I am glad to know about this ticket, but I do not think it would solve the problem in all cases.
>> If `${prefix}` were other than the default or `port` were invoked with the `-s` switch, then the buildbot would be bypassed entirely, and the rust Portfile would still have to download the Rust bootstrap compiler from somewhere.
>> 
>> -Marcus
>> 
>>> On Apr 16, 2022, at 8:46 AM, Jonathan Alland <wowfunhappy at gmail.com <mailto:wowfunhappy at gmail.com>> wrote:
>>> 
>>> I think we’re basically discussing https://trac.macports.org/ticket/60878 <https://trac.macports.org/ticket/60878>, right? 
>>> 
>>> On Apr 16, 2022, at 11:38 AM, mcalhoun at macports.org <mailto:mcalhoun at macports.org> wrote:
>>> 
>>>> Unmodified, the upstream Rust compiler runs on 10.9 and newer.
>>>> The current rust Portfile uses clever tricks to allow the the upstream Rust compiler to run back to 10.7.
>>>> However, there is no known way to force the upstream Rust compiler to start using emulated thread-local-storage, so it cannot run on 10.5 and 10.6.
>>>> 
>>>> Instead, the pull request builds a *new* bootstrap compiler that uses emulated thread-local-storage.
>>>> The MacPorts bootstrap compiler can only be built on 10.9+ but is meant to be used by other systems.
>>>> Therefore, the problem becomes where do the older systems download the new bootstrap compiler?
>>>> 
>>>> -Marcus
>>>> 
>>>>> On Apr 16, 2022, at 8:21 AM, Chris Jones <jonesc at hep.phy.cam.ac.uk <mailto:jonesc at hep.phy.cam.ac.uk>> wrote:
>>>>> 
>>>>> Maybe i am missing some detail here, but why cannot this bootstrap compiler just be a port like everything else, and thus the binary hosting is just the same as any other binary tarball macports distributes ?
>>>>> 
>>>>>> On 15 Apr 2022, at 11:16 pm, Herby G <herby.gillot at gmail.com <mailto:herby.gillot at gmail.com>> wrote:
>>>>>> 
>>>>>> 
>>>>>> Since this would be adding a component that affects the build of a very core build component to many MacPorts packages, perhaps a bit more care should be taken with where it will be stored.
>>>>>> 
>>>>>> Maybe it makes sense for this new bootstrap compiler to live in a repository owned by the MacPorts Github org?
>>>>>> 
>>>>>> On Thu, Apr 14, 2022 at 6:22 PM Joshua Root <jmr at macports.org <mailto:jmr at macports.org>> wrote:
>>>>>> On 2022-4-15 02:16 , mcalhoun at macports.org <mailto:mcalhoun at macports.org> wrote:
>>>>>> > As many of you know, the standard Rust compiler is self-hosting.
>>>>>> > The upstream bootstrap compiler only works (unmodified) on 64-bit 10.9+.
>>>>>> > 
>>>>>> > There is an attempt to build a bootstrap compiler that runs on older
>>>>>> > systems [1].
>>>>>> > One stumbling block is where to build and store the bootstrap compilers.
>>>>>> > I am afraid I know little about this.
>>>>>> > Github packages, JFrog, other?
>>>>>> > Does anyone have any suggestions?
>>>>>> > 
>>>>>> > Thanks,
>>>>>> > Marcus
>>>>>> > 
>>>>>> > 1) https://github.com/macports/macports-ports/pull/14277 <https://github.com/macports/macports-ports/pull/14277>
>>>>>> 
>>>>>> It's not really different to hosting any other distfiles; pretty much 
>>>>>> anywhere you can make them available is fine. If you have a GitHub repo 
>>>>>> where you keep the work that has gone into this, that's an easy place to 
>>>>>> keep the files - just create a tag and make a release using that tag, 
>>>>>> and you can attach whatever files you like to it.
>>>>>> 
>>>>>> - Josh
>>>> 
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20220416/fc928a33/attachment-0001.htm>


More information about the macports-dev mailing list