[riot-users] DEVELHELP flag in Makefiles

Joël Carron joel.carron at heig-vd.ch
Wed May 15 12:21:52 CEST 2019


Finally, I found that if I remove the flag DEVELHELP but I add the flag 
SCHED_TEST_STACK, my app survives the simulated power outages. Then I 
tried to work without any of these flags in my Makefile and to remove 
some #ifdef. After a while, I found that removing the #ifdef in files :

- core/thread.c around line "cb->stack_start = stack;"

- core/include/thread.h around line : "char *stack_start;"

was solving my issue.

I'm launching two threads in my app. One with THREAD_CREATE_SLEEPING and 
one with 0 as flags.

I'm curious to know why this solves my issue and how it affects RIOT ? 
Does anyone knows ?

On 15.05.19 08:36, Carron Joël wrote:
> In the docs, we find :
>
>
> "Additional code parts such as (extensive) debug output and sanity checks using assertions. To activate it set environment variable DEVELHELP=1, or disable explicitly with DEVELHELP=0."
> https://riot-os.org/api/group__utils.html<https://riot-os.org/api/group__utils.htm>
>
>
> But, everywhere in RIOT source code, the DEVELHELP is checked with "#ifdef DEVELHELP" or "#if defined(DEVELHELP)". So, correct me if I'm wrong, but it shouldn't change anything if the DEVELHELP is set to 0, 1 or anything else ? In this case, the doc is wrong ? We really need to comment it out as suggested in the Makefiles of examples to remove it. But then it causes my app to not restart after simulated power outage.
>
>
>
>
>
> ________________________________
> De : users <users-bounces at riot-os.org> de la part de Carron Joël <joel.carron at heig-vd.ch>
> Envoyé : mardi 14 mai 2019 22:42:25
> À : users at riot-os.org
> Objet : Re: [riot-users] DEVELHELP flag in Makefiles
>
> Thank you for your answer. I've already read the docs but my real question was why do I get this "strange" behaviour ? My app works fine with the flag (flashed on over 50 boards) but without it the app can't start anymore as soon as I unplug the board from power and replug it. With the flag I have no issue.
>
> Where can I look for something bad in my code that can explain this difference ? I looked a bit in the RIOT source code but didn't find anything for the moment that can give me an answer.
>
> Envoyé par BlueMail<http://www.bluemail.me/r?b=14874>
> Le 14 mai 2019, à 20:38, Bas Stottelaar <basstottelaar at gmail.com<mailto:basstottelaar at gmail.com>> a écrit:
> Hi Joel,
>
> It enables additional debug output and sanity checks. You can find more information at [1].
>
> Kind regards,
> Bas
>
> [1]  https://riot-os.org/api/group__utils.html
>
> Op 14 mei 2019, om 19:40 heeft Joel Carron < joel.carron at heig-vd.ch<mailto:joel.carron at heig-vd.ch>> het volgende geschreven:
>
> Hi everyone,
>
> Can someone explain me what this flag in Makefile examples do ?
>
> I just finished an app for a custom board. As my Makefile was based on an example, there was still this flag present. As its comment suggests, it's for development so I decided to remove it.
>
> After removing it, my application starts normally right after flashing my board but as soon as I unplug it from power supply and plug it again, the app doesn't start anymore. I flashed the app on a Nucleo-F303RE to get some console output but I just get garbage from pyterm. I decided to keep this flag as it works flawlessly with it and takes only 4kB more in ROM but it could be great if someone knows a little more about it.
>
> What could cause my app on two boards to fail starting without this flag ? In my app, I use some DEBUG() macros, I start two threads, do some UDP packets exchanges with another boards and that's it.
>
> Best regards
>
> Joel
>
> _______________________________________________
> users mailing list
> users at riot-os.org<mailto:users at riot-os.org>
> https://lists.riot-os.org/mailman/listinfo/users
>
> _______________________________________________
> users mailing list
> users at riot-os.org
> https://lists.riot-os.org/mailman/listinfo/users
> _______________________________________________
> users mailing list
> users at riot-os.org
> https://lists.riot-os.org/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/users/attachments/20190515/261650e1/attachment.html>


More information about the users mailing list