mirror of
https://github.com/Dasharo/zephyr.git
synced 2026-03-06 14:57:20 -08:00
As both C and C++ standards require applications running under an OS to
return 'int', adapt that for Zephyr to align with those standard. This also
eliminates errors when building with clang when not using -ffreestanding,
and reduces the need for compiler flags to silence warnings for both clang
and gcc.
Most of these changes were automated using coccinelle with the following
script:
@@
@@
- void
+ int
main(...) {
...
- return;
+ return 0;
...
}
Approximately 40 files had to be edited by hand as coccinelle was unable to
fix them.
Signed-off-by: Keith Packard <keithp@keithp.com>
.. _synchronization_sample: Synchronization Sample ###################### Overview ******** A simple application that demonstrates basic sanity of the kernel. Two threads (A and B) take turns printing a greeting message to the console, and use sleep requests and semaphores to control the rate at which messages are generated. This demonstrates that kernel scheduling, communication, and timing are operating correctly. Building and Running ******************** This project outputs to the console. It can be built and executed on QEMU as follows: .. zephyr-app-commands:: :zephyr-app: samples/synchronization :host-os: unix :board: qemu_x86 :goals: run :compact: Sample Output ============= .. code-block:: console threadA: Hello World! threadB: Hello World! threadA: Hello World! threadB: Hello World! threadA: Hello World! threadB: Hello World! threadA: Hello World! threadB: Hello World! threadA: Hello World! threadB: Hello World! <repeats endlessly> Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.