* Rename default-build.sh -> build-tasks.sh
This commit is just a file rename without any
further code change before this script will be
refactored to improve build task structure
for partial building.
Refers to #4421
* Prepare build-tasks.sh for moving each build step to a dedicated function
This commit is an intermediate update to reflect
NO functional code changes of the particular
build steps before moving the unmodified code
into the appropriate function by copy/paste.
Only build_get_boot_sources() has slightly changed
to an appropriate if / fi structure.
Note: This .sh file is bash syntactically not correct.
The purpose of this commit is to leverage code review.
Refers to #4421
* Update build-tasks.sh function do_default() for filtered function calls
Function do_default():
- Add $1 function parameter for filtering build tasks
and assign this to local variable $_buildOnly
- move "pseudo inline"-functions to the beginning of the script
- replace the "inline functions" by filtered function calls
- add BUILD_ONLY variable to the build epilog print
Refers to #4421
* Complete refactoring of build-tasks.sh for BUILD_ONLY support
- update indentation of functions build_get_boot_sources()
and build_get_kernel_sources() to meet code style
- rename original function do_default() -> build_main()
- create new do_default() for backward compatibility and
comment this one as deprecated
- call build_main "" from this deprecated do_default()
- cli-entrypoint.sh:
- update call of do_default by build_main "${BUILD_ONLY}"
closes#4421
* Print final runtime as min:seconds
As with filtered build runtimes
may get below a minute, we would like
to get the runtime printed with seconds.
* Delete duplicate messages
* Fix the confusion of the choice of building the kernel
* Fix a typo in comment on do_default()
* Backward compatibility of KERNEL_ONLY and new BUILD_ONLY keys.
* interactive_config: replace KERNEL_ONLY on BUILD_ONLY
* Fix: Correct verification when an image is created
* Abort with error if BUILD_ONLY contains invalid build task names
- add function build_validate_buildOnly()
- call this function from build_main
- fix position of KERNEL_ONLY / BUILD_ONLY contradiction message
(did log empty _buildOnly content all time)
- improve local variable names
* Improve final error message to list valid BUILD_ONLY task names
* Improve error message logging
- collect multiple invalid BUILD_ONLY task names in a single error message
- log final message for valid BUILD_ONLY task names on ext level
- simple exit with exit code 1 in case of error
* The RELEASE variable cannot be empty.
Additional conditions for checking RELEASE are unacceptable.
* Fix build_main() to use BUILD_ONLY inside instead of local var set from parameter $1
- build-tasks.sh:
- build_main():
- don't take parameter $1
- replace usage of $_buildOnly by $BUILD_ONLY
- added info messages on KERNEL_ONLY cases in case BUILD_ONLY was propagated
- build_validate_buildOnly():
- remove parameter $2
- assign _buildOnly from global BUILD_ONLY accordingly
- cli-entrypoint.sh:
- call build_main without parameter
* Choosing interactive_config if the goal is bootstrap
* fix: order of selection backward_compatibility_build_only
* Update function comments to match current state
- removed obsolete parameter of build_main call do_default()
- replaced :space: by :comma: in _kernel_buildOnly
to leverage copy / paste for final repeatable command line
printed after build
* Improve logic coding to filter build tasks
- build-tasks.sh:
- added functions:
- build_task_is_enabled()
- build_task_one_of_is_enabled()
- build_task_each_of_is_enabled()
- updated existing build task filter logic
to use function build_task_is_enabled
- config-prepare.sh, prepare-host.sh:
- replaced existing build task filter logic
to use function build_task_is_enabled
* Remove unused functions
- remove function build_task_one_of_is_enabled()
and build_task_each_of_is_enabled()
according to code review
Co-authored-by: The-going <48602507+The-going@users.noreply.github.com>
* Add initial RISCV support
* Add UEFI edge and current kernel configs
* Cleanup and adjust packages
* Those files were in wrong path
* Fix locations
* Ubuntu images built
* Remove Debian support as its too fragile
* Remove Pinta as it doesn't work under riscv
* Limitation is only for building images
* Remove obsolete switch
* Cleanup major arch config files
* Support for Docker building