Commit graph

22 commits

Author SHA1 Message Date
NeroBurner 6f2a661a36
docker: fix NRF_SDK download and subsequent build.sh (#2299)
The upstream NRF-SDK download url and zip archive filename changed,
which was fixed with https://github.com/InfiniTimeOrg/InfiniTime/pull/2270

But the archive contents stayed the same, with the "old" folder name.

After #2270 we have basically the same docker-container as before the PR,
but the `GetNrfSdk` function of the `build.sh` script is called again during
firmware build time as the expected foldername for the SDK isn't the same as
the zip filename:

```sh
[ ! -d "$TOOLS_DIR/$NRF_SDK_VER" ] && GetNrfSdk
```

Then during the build the `buils.sh` script tries to execute `GetNrfSdk` again,
which fails as the files already exist resulting in the following error:

```
replace /opt/nRF5_SDK_15.3.0_59ac345/components/802_15_4/api/HAL/hal_atomic.h? [y]es, [n]o, [A]ll, [N]one, [r]ename:  NULL
```

Fix this by reverting the `NRF_SDK_VER` to the folder name in the zip
archive and by some character replacement generate the download URL from
the above (the download is in lower-case without the `_` and `.`
characters).

Furthermore add safeguards to check after the `GetNrfSdk` call if the
expected folder is really created. Then we have an error early during
container image creation if the contents of the zip-archive are
unexpected.
2025-05-27 22:56:10 +02:00
Darius Arnold 248a6aea87
Fix nRF SDK download links (#2270)
nRF has moved the download to a new location- Update the build script to fetch from the same URL the download website currently provides.
2025-05-21 21:17:42 +01:00
Riku Isokoski bd8e6d8c15 docker: Make build.sh more portable 2023-01-07 18:56:15 +02:00
Riku Isokoski 419d8413c6 Revert "enable CMake unity build in build.sh"
This reverts commit 35654fbd98.
2022-12-31 12:41:45 +01:00
Riku Isokoski 2b62eaf65f Revert "Update docker/build.sh"
This reverts commit 7103f9d806.
2022-12-31 12:41:45 +01:00
Dominik Nussbaumer 7103f9d806 Update docker/build.sh
Co-authored-by: NeroBurner <pyro4hell@gmail.com>
2022-12-27 12:17:46 +01:00
tnixeu 35654fbd98 enable CMake unity build in build.sh 2022-12-27 12:17:46 +01:00
cybuzuma 081cc60aa5
fixing build.sh not returning error in build (#1460)
Return the build status as return code from the `main` helper function.
In the process convert the handling if the file was sourced or directly
executed into an explicit if/else statement to make the intent clearer.

In case of an build error the error is now reported at the build step,
where the error happened.

Fixes: https://github.com/InfiniTimeOrg/InfiniTime/issues/1292
2022-12-13 08:18:53 +01:00
Jean-François Milants 6ed8e983e9 Remove CMake targets and corresponding CLI arguments that are specific to the debugging environment (USE_JLINK, USE_OPENOCD and USE_GDB_CLIENT). 2022-09-17 21:25:54 +02:00
Jean-François Milants e2a3d9f0c7 Small improvement in generate-fonts.py following code review.
Add lv_img_conf in Docker image to build resources at build time.
2022-09-11 14:44:36 +02:00
Finlay Davidson 4482078d84 Downgrade GNU Arm Toolchain to 10.3-2021.10
This is because of this bug:
https://community.arm.com/support-forums/f/compilers-and-libraries-forum/52623/gcc-11-2-arm-none-eabi-internal-compiler-error-illegal-instruction
It is causing some of the GitHub Actions builds to fail.
2022-07-08 17:18:21 +02:00
Finlay Davidson 94cd2ba563 Update arm gcc toolchain to 11.2-2022.02
Updates the buildAndProgram doc and the docker
image, which means GitHub Actions will also use
the new toolchain.
2022-06-11 22:59:38 +03:00
Jean-François Milants 831f93cd92 The main build workflow for GitHub Actions now uses the infinitime-build docker image to build the firmware. This allows to avoid the duplication of the build logic in Docker and Github workflow format.
The Dockerfile has been slightly adapted (remove the USER instructions). Docker images are now published in DockerHub (jf002/infinitime-build).
2022-05-26 11:35:25 +02:00
carlosperate c4b8ff314a Update git URLS, MCUboot is now independent w/ different GitHub org. 2021-10-17 00:31:21 +01:00
Jean-François Milants 740b3d7b58 Add new cmake option to disable the generation of DFU file (which needs adafruit-nrfutil on the build machine) : BUILD_DFU (disabled by default, enabled in docker build). 2021-02-01 21:07:53 +01:00
petter a028c39ddd check for cmake build-success before running post-build.sh 2021-01-23 11:11:14 +01:00
Joe Eaves 1f243aeedb Make TOOLS_DIR if needed
Added some extra dir names to gitignore
2020-12-22 11:38:57 +00:00
Joe Eaves 60ef9b54fb Integrate improvements from #137
Also fixed a bug with empty quoted strings
2020-12-21 03:10:42 +00:00
Joe Eaves a7df0a0279 Unify the Dockerfiles by fleshing out build.sh
Script is written to handle it's own dependencies so it can be used within Docker or on the host system
2020-12-21 01:42:41 +00:00
JF e6a1aff6ce Docker build : split build.sh into 2 scripts : build.sh that always exists and post_build.sh that is generated by cmake build.sh 2020-08-20 09:38:10 +02:00
JF f197a3fe88 All output files (bin, hex, image, dfu) contain the version of the project in their filename.
Update Docker build script accordingly.
Also fix permission issue with docker build (all files belonged to root).
2020-08-19 21:52:46 +02:00
JF 5ed7fbe126 Add docker file create docker image that builds the project on amd64 and arm64 arch. 2020-08-19 12:22:48 +02:00