Skip to content
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

Rationalize Travis builds #3218

Merged
Merged
Changes from 1 commit
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
97bea01
all.sh: run selftest in the full config and with ASan
gilles-peskine-arm Apr 23, 2020
60f267b
all.sh: make the arm-gcc cross-compiler prefix configurable
gilles-peskine-arm Apr 25, 2020
c9cdd21
Travis: don't test with both gcc and clang
gilles-peskine-arm Apr 21, 2020
d0f543a
Travis: split the build into three parallel jobs
gilles-peskine-arm Apr 21, 2020
b49a457
Travis: move doxygen dependencies into the "sanity" job
gilles-peskine-arm Apr 23, 2020
a38f368
Travis: run Pylint
gilles-peskine-arm Apr 25, 2020
3c7ffd7
Travis: call all.sh for sanity checks
gilles-peskine-arm Apr 21, 2020
dc56675
Travis: call all.sh for the default-configuration build
gilles-peskine-arm Apr 23, 2020
a2d3ec2
Travis: replace "default configuration by "full configuration"
gilles-peskine-arm Apr 25, 2020
a5ced5b
Travis: install gnutls-bin for all jobs
gilles-peskine-arm Apr 25, 2020
5dcfb94
Travis: call all depends_* tests
gilles-peskine-arm Apr 25, 2020
f2f39dd
Travis: add a baremetal build
gilles-peskine-arm Apr 25, 2020
129d041
Travis: add a build on macOS
gilles-peskine-arm Apr 25, 2020
af387e0
check-files: support Windows .bat files
gilles-peskine-arm Apr 25, 2020
a4a8f04
Add a simple build script for Windows with Visual Studio
gilles-peskine-arm Apr 25, 2020
0402510
Travis: add a build with Visual Studio on Windows
gilles-peskine-arm Apr 25, 2020
23d249a
Travis: Windows: target Visual Studio 2017
gilles-peskine-arm Apr 26, 2020
b97a044
Travis: Windows: install Python 3 and run generate_psa_constants.py
gilles-peskine-arm Apr 26, 2020
10cb160
Travis: rebalance the Linux builds
gilles-peskine-arm Apr 26, 2020
6d06134
Rename --arm-gcc-prefix to --arm-none-eabi-gcc-prefix
gilles-peskine-arm Apr 30, 2020
6537588
all.sh: build_arm_none_eabi_gcc: do optimize
gilles-peskine-arm Apr 30, 2020
6e2fb86
all.sh: add a Cortex-M0+ build
gilles-peskine-arm Apr 30, 2020
18487f6
all.sh: on arm builds (GCC or Arm Compiler), show the code size
gilles-peskine-arm Apr 30, 2020
907211d
Travis: do both a Cortex-A build and a Cortex-M0+ build
gilles-peskine-arm Apr 30, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions tests/scripts/all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1593,6 +1593,12 @@ component_build_arm_none_eabi_gcc_arm5vte () {
make CC="${ARM_NONE_EABI_GCC_PREFIX}gcc" AR="${ARM_NONE_EABI_GCC_PREFIX}ar" CFLAGS='-Werror -Wall -Wextra -march=armv5te -O1' LDFLAGS='-march=armv5te' SHELL='sh -x' lib
}

component_build_arm_none_eabi_gcc_m0plus () {
msg "build: ${ARM_NONE_EABI_GCC_PREFIX}gcc -mthumb -mcpu=cortex-m0plus" # ~ 10s
scripts/config.py baremetal
make CC="${ARM_NONE_EABI_GCC_PREFIX}gcc" AR="${ARM_NONE_EABI_GCC_PREFIX}ar" LD="${ARM_NONE_EABI_GCC_PREFIX}ld" CFLAGS='-Werror -Wall -Wextra -mthumb -mcpu=cortex-m0plus -Os' lib
Copy link
Contributor

Choose a reason for hiding this comment

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

Pre-existing: I'm surprised by the unexplained differences between this line and line 1593 above (in component_build_arm_none_eabi_gcc_armv5te): use of LD vs LDFLAGS, use of SHELL in armv5te.

The use of SHELL looks like a leftover from debugging.

Regarding LD vs LDFLAGS, I just checked our Makefiles and we never use LD (unless perhaps implicitly but I don't think we use any default rules): when we echo "LD ..." we actually invoke $(CC) ....

I suggest we uniformize the invocations of make in components using arm-none-eabi-gcc. But I understand if you'd rather to that in another PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

SHELL should indeed not be there, but since that's preexisting, I propose to not touch it unless this part of PR needs rework anyway.

LD was added in e058ea2 and your guess is better than mine as to why.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, I was afraid that would be the case. I guess I just thought it would be more consistent and failed to check what our Makefiles were actually using.

}

component_build_arm_none_eabi_gcc_no_udbl_division () {
msg "build: ${ARM_NONE_EABI_GCC_PREFIX}gcc -DMBEDTLS_NO_UDBL_DIVISION, make" # ~ 10s
scripts/config.py baremetal
Expand Down