Skip to content

Adding build profiles to build_release.py and singletest.py #2877

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Sep 30, 2016

Conversation

bridadan
Copy link
Contributor

@bridadan bridadan commented Sep 30, 2016

Description

The build profiles configuration was missed in thesingletest.py and build_release.py scripts (both of which are used in mbed 2 CI). This PR adds the missing configuration.

Status

READY

Migrations

If this PR changes any APIs or behaviors, give a short description of what API users should do when this PR is merged.

NO

Related PRs

Extending work done in #2802

Todos

@bridadan
Copy link
Contributor Author

@mbed-bot: TEST

HOST_OSES=ALL
BUILD_TOOLCHAINS=ALL
TARGETS=LPC1768,K64F,NRF51_DK,NUCLEO_F411RE

@mbed-bot
Copy link

[Build 1008]
FAILURE: Something went wrong when building and testing.

@bridadan
Copy link
Contributor Author

@mbed-bot: TEST

HOST_OSES=ALL
BUILD_TOOLCHAINS=ALL
TARGETS=LPC1768,K64F,NRF51_DK,NUCLEO_F411RE

@bridadan
Copy link
Contributor Author

/morph test

@mbed-bot
Copy link

[Build 1009]
FAILURE: Something went wrong when building and testing.

@mbed-bot
Copy link

Result: ABORTED

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 1019

Build Prep failed!

@bridadan bridadan force-pushed the build-profiles-release-singletest branch from 0cd6ca4 to 9905f5d Compare September 30, 2016 22:23
@bridadan bridadan force-pushed the build-profiles-release-singletest branch from 9905f5d to 64d09e1 Compare September 30, 2016 22:24
@bridadan
Copy link
Contributor Author

@theotherjimmy I've added uARM to the default build profiles, can you take a look?

/morph test

@bridadan
Copy link
Contributor Author

@mbed-bot: TEST

HOST_OSES=ALL
BUILD_TOOLCHAINS=ALL
TARGETS=LPC1768,K64F,NRF51_DK,NUCLEO_F411RE

@mbed-bot
Copy link

[Build 1010]
SUCCESS: Building succeeded and tests were run! Be sure to check the test results

@mbed-bot
Copy link

Result: SUCCESS

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 1020

All builds and test passed!

@@ -22,6 +22,16 @@
"cxx": ["--cpp", "--no_rtti", "--no_vla"],
"ld": []
},
"uARM": {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bridadan @theotherjimmy
Why did we add another "toolchain" in order to use MicroLib instead of having something like this in arm.py?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hugueskamba The uARM toolchain was present in Mbed OS 2.0, so it would have been a breaking change to remove it. In Mbed OS 5.0 the default_lib parameter was added to GCC (and maybe IAR as well?). I always hoped we would eventually deprecate the uARM toolchain and use the default_lib in its place!

Copy link
Collaborator

@hugueskamba hugueskamba Oct 2, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @bridadan,
Wouldn't removing uARM cause other changes? The first thing I see is the fact that the boot code is different. However, would it just be as simple as moving the stuff from mbed_boot_arm_micro.c to mbed_boot_arm_std.c, renaming mbed_boot_arm_std.c to mbed_boot_arm.c and adding a bunch of macros?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup like you said its more complicated than just changing the tools. I think that's one of the main reasons we didn't do it at the time. Changing all the device code would be a big effort that's for sure.

But yeah I think that's the general gist. I have to admit I'm not as familiar with the boot sequence requirements for uARM so I may be missing a few details.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

uARM was one of the first toolchains as I recall, came after ARM.
We added much much later default_lib (when we wanted to use newlib with GCC ARM) and due to wide use of uARM back then (lot of small devices had it) it stayed for backward compatibility. Things changed after we moved to 5, rtos and thread safety.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants