[RTEMS Tools 0/1] trace/wscript: Improve C++ standard selection

Sebastian Huber sebastian.huber at embedded-brains.de
Sun Jan 21 16:42:19 UTC 2024



On 20.01.24 16:25, Sebastian Huber wrote:
> On 19.01.24 10:13, Sebastian Huber wrote:
>>
>>
>> On 19.01.24 09:09, Cedric Berger wrote:
>>> On 19.01.2024 08:55, Sebastian Huber wrote:
>>>> On 19.01.24 07:58, Sebastian Huber wrote:
>>>>> This patch fixes bugs #4908 and #4965 which were reported by RTMES
>>>>> users.  The patch is from 19 May 2023 and was blocked due to missing
>>>>> tests on macOS.  I have no macOS system for tests.  Would someone mind
>>>>> testing this patch?  It would be nice to build the RTEMS Tools on 
>>>>> modern
>>>>> Linux systems with a standard LLVM package.
>>>>
>>>> I added a simple CI script to our Github fork of rtems-tools:
>>>>
>>>> https://github.com/embedded-brains/rtems-tools
>>>>
>>>> It seems that the current tools build with LLVM installed on 
>>>> ubuntu-latest event without the patch:
>>>>
>>>> https://github.com/embedded-brains/rtems-tools/actions/runs/7580906673
>>>>
>>>> It builds also with the patch:
>>>>
>>>> https://github.com/embedded-brains/rtems-tools/actions/runs/7580925618
>>>>
>>>> I installed LLVM on macOS using brew, however, the rtems-tools 
>>>> didn't pick it up. How can I build the rtems-tools on macOS with 
>>>> LLVM support?
>>>
>>> I'm willing to spend some time testing stuff on macOS.
>>
>> Thanks for having a look at it.
>>
>>>
>>> However, I don't really understand why you installed LLVM using brew: 
>>> people on MacOS usually use the standard XCode compiler from Apple, 
>>> which is itself based on LLVM.
>>
>> I don't use macOS myself, so I have no idea how this is set up 
>> normally. It would be great to have the standard approach available as 
>> a Github workflow.
>>
>>>
>>> What needs to be tested exactly?
>>
>> The rtems-tools need to be built with the LLVM support. For this ./waf 
>> configure needs to find LLVM. If it works it prints out something like 
>> this:
>>
>> Checking for library LLVM                : yes
>> Checking for header llvm/DebugInfo/Symbolize/Symbolize.h : yes
>> Checking for header zlib.h                               : yes
>> Checking for library z                                   : yes
>> Checking for library ws2_32                              : not found
>> Checking for compiler flags -std=c++20                   : yes
> 
> The Github macOS runner has several tools installed:
> 
> https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md
> 
> It would be nice if you could figure out how you have to configure the 
> rtems-tools build so that it finds an LLVM installation providing 
> Symbolize.h on macOS.

In the Github job, I added the LLVM 17 installation from brew to the $PATH:

           export 
PATH="/System/Volumes/Data/usr/local/Cellar/llvm/17.0.6/bin:$PATH"
           ./waf configure
           ./waf
           sudo ./waf install

Without the patch, the build fails:

https://github.com/embedded-brains/rtems-tools/actions/runs/7602490988/job/20703105123

With the patch it works:

https://github.com/embedded-brains/rtems-tools/actions/runs/7602509162/job/20703139110

Does XCode ship a Symbolize.h and llvm-config? If yes, how do you get 
the tool in the $PATH?

-- 
embedded brains GmbH & Co. KG
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/


More information about the devel mailing list