summaryrefslogtreecommitdiff
path: root/Meta/serenity.sh
AgeCommit message (Collapse)Author
2021-09-16Meta: Ensure BUILD_LAGOM is set when running `serenity.sh test lagom`Andrew Kaster
If the superbuild created the lagom binary directory, it won't set BUILD_LAGOM=ON in the CMake cache for that binary directory. Insert a check into build_target() to make sure that if the user explicitly asks for the lagom target, we have all our ducks in a row.
2021-09-15Meta: Update serenity.sh for the SuperBuildAndrew Kaster
Direct build commands to the SuperBuild's binary directory, and image/run commands to the Serenity binary directory. As a side benefit, make the lagom target only build Lagom instead of the entire OS alongside Lagom.
2021-09-07Meta: Don't immediately continue in serenity.sh's gdb optionIdan Horowitz
This allows us to step through the initial boot instructions.
2021-09-03Meta: Add the ability to specify clang with serenity.shTom
This enables maintaining gcc and clang builds side-by-side.
2021-08-29Meta: Remove duplicate valid target check from serenity.shLinus Groh
2021-08-29Meta: Mention aarch64 as a supported TARGET in serenity.sh's helpLinus Groh
2021-08-28Toolchain: Enough to make `rebuild-toolchain aarch64` workNico Weber
The gcc patch might not be completely correct, but at least the toolchain completes building.
2021-08-28Meta: Let serenity.sh's TARGET default to SERENITY_ARCH, not i686Linus Groh
This environment variable is already widely used across our build scripts and tooling, so serenity.sh should respect it as well. It still uses i686 as the fallback.
2021-08-22Meta: Add 'copy-src' command to serenity.shItamar
This command copies the project's source tree to /home/anon/Source/serenity in the built disk image. This will be useful for working on serenity inside serenity :^)
2021-07-10Documentation: Reorganize the build documentationGunnar Beutner
2021-07-10Meta: Automatically pick an appropriate GCC binaryGunnar Beutner
2021-07-01Meta: Make serenity.sh pass the SERENITY_ARCH cmake argument for x86_64Idan Horowitz
This is required as our CMake config defaults to i686 if not overriden manually via the SERENITY_ARCH argument.
2021-06-02Meta: Remove duplicated ensure_toolchain from serenity.shLinus Groh
2021-06-01Meta: Make `serenity.sh` invoke `cmake` when `build.ninja` is missingJelle Raaijmakers
2021-04-22Meta: Add GDB pretty printersGunnar Beutner
2021-04-20Everywhere: Replace SERENITY_ROOT with SERENITY_SOURCE_DIRPanagiotis Vasilopoulos
2021-04-20Meta: Add a rebuild-world command to serenity.shBrian Gianforcaro
This was brought up as something that would be useful by `RealKC` on the discord, and I happened to agree that it would be useful. Especially given the abundance of Toolchain changes recently.
2021-04-18Meta: Replace /bin/env with /usr/bin/envin serenity.sh shebangLinus Groh
This is more portable.
2021-04-17Meta: Remove stray newline from serenity.sh help textLinus Groh
2021-04-17Meta: Allow serenity.sh to be used outside of assumed working directoryBrian Gianforcaro
This change fixes two bugs: 1) If you run `serenity.sh` outside of your serenity git clone, the `get_top_dir()` function won't be able to auto detect the serenity root dir and we'll error out. By allowing the script to use an existing $SERENITY_ROOT vlaue if it exists, we can solve this problem. 2) If tried to run a command which ends up calling `build_toolchain()` and you were outside of the root of the project, it should just fail. Fix this by utilizing `$SERENITY_ROOT`.
2021-04-15Meta: Use basename for serenity.sh help messageBrian Gianforcaro
I have this symlinked into ~/bin, when looking at the help/usage it would previously print the fully qualified path to the script making the help very difficult to read.
2021-03-24Meta: Pass arguments to 'serenity.sh run lagom' executableLinus Groh
2021-03-12Meta: Support 'serenity.sh gdb lagom'Linus Groh
2021-03-12Lagom: Add 'test' command to serenity.shLinus Groh
2021-03-12Meta: Make 'serenity.sh run lagom' run Lagom executablesLinus Groh
Running the tests will be moved to a separate test command which can then leverage the availability of different targets and run either unit tests on the host or the image in QEMU in self-test mode. :^)
2021-03-12Meta: Don't depend on toolchain for lagom target in serenity.shLinus Groh
- Only call ensure_toolchain for non-lagom targets - Use host addr2line, we can't expect the i686 toolchain's addr2line to support the host's binary executable format - Don't export SERENITY_ARCH and TOOLCHAIN_DIR, don't need them anymore
2021-03-12Meta: Add lagom_unsupported helper function to serenity.shLinus Groh
2021-03-11Meta: Add gdb command to serenity.shTom
This uses tmux for a split screen setup, which makes it easy do debug the kernel while viewing the QEMU output in the same terminal.
2021-03-09Meta: Add a build helper scriptTom
This script automatically manages the toolchain and cmake/ninja folders making it easier to manage the different target architectures.