summaryrefslogtreecommitdiff
path: root/Meta
AgeCommit message (Collapse)Author
2020-09-16Build: Preserve hard/symbolic links when building root fsAnotherTest
This fixes the issue where there would not be enough space to copy things when at least the git port and the gcc port are installed.
2020-09-14Meta: Include .json files in the Qt Creator refresh scriptAndreas Kling
2020-09-14Meta: Make the text-to-cpp-string thingy pass shellcheckAndreas Kling
2020-09-14Meta: Add helper for generating a C++ string from a text fileAndreas Kling
2020-09-13Userland: Add {md5,sha1,sha256,sha512}sumLinus Groh
2020-09-12Meta: Avoid deprecated qemu optionBen Wiederhake
Apparently "-soundhw pcspk" is deprecated too. However, I don't know which "name" to insert, and I can't test it, hence I didn't touch it.
2020-09-12Meta: Describe how to analyze an LLVM fuzzer crashBen Wiederhake
2020-09-12Meta+LibGfx: Fuzz BMP parsingBen Wiederhake
2020-09-12LibJS: Fix start position of multi-line tokensBen Wiederhake
This broke in case of unterminated regular expressions, causing goofy location numbers, and 'source_location_hint' to eat up all memory: Unexpected token UnterminatedRegexLiteral. Expected statement (line: 2, column: 4294967292)
2020-09-07Meta: Fix shellcheck whines in check-symbols.shAndreas Kling
2020-09-06Travis: Run script that checks for forbidden symbols in LibCItamar
check-symbols.sh fails the build if undefined __cx_guard_* symbols are found in LibC. This will help us catch port breakage sooner.
2020-09-06utmpupdate: Add a program for updating /var/run/utmpAndreas Kling
To keep track of ongoing terminal sessions, we now have a sort-of traditional /var/run/utmp file, like other Unix systems. Unlike other Unix systems however, ours is of course JSON. :^) The /bin/utmpupdate program is used to update the file, which is not writable by regular user accounts. This helper program is set-GID "utmp".
2020-09-05Meta: Fix wonky copyright headers in TestsBen Wiederhake
2020-09-04Kernel/USB: Start fleshing out a basic UHCI controller driver :^)Andreas Kling
Let's see if we can talk to some USB devices. We will now detect a UHCI controller if present on the PCI bus.
2020-09-01Build: Add some -Wno-unknown-warning-option flags to CXXFLAGSAndreas Kling
Patch from Anonymous.
2020-08-24Meta+Userland: Run the TLS test tooAnotherTest
While this _does_ add a point of failure, it'll be a pretty bad day when google goes down. And this is unlikely to put a (positive) dent in their incoming requests, so let's just roll with it until we have our own TLS server.
2020-08-16Meta: Actually exclude the Build/ directory from QtCreator refreshAndreas Kling
2020-08-15Meta: Lint for duplicate endpoint IDsBen Wiederhake
We currently have 16 endpoints. The IDs are typed by a human at creation time. This check will detect with we ever use an endpoint ID twice. Since the large irrelevant directories are ignored, this should be quick enough.
2020-08-15Meta: Don't require setting SERENITY_ROOT for refresh scriptBen Wiederhake
The need for SERENITY_ROOT was basically eliminated in 73c953b674c9caad40f3bf77dc44c229ef48bc0d. The existing guess 'git rev-parse --show-toplevel' should be correct in all conceivable cases. Most code just assumes the layout in git, or depends on SERENITY_ROOT as set in the CMakeLists.txt. *Requiring* the user to set it doesn't make sense anymore. While I was in there anyway, I added exit code propagation. Also, 'find' should be a tad faster now, because it doesn't enumerate files in the large ignored directories Build/ and Toolchain/ anymore.
2020-08-15Lagom: Add LibHTTP to Lagom (it builds fine without changes)Andreas Kling
2020-08-14Meta: allow override of QEMU -cpu argument via environment variablePeter Nelson
Introduces a SERENITY_QEMU_CPU environment variable that allows overriding of the qemu -cpu command line parameter. If not specified, the argument defaults to "max". The primary motivation behind this is to be able to enable or disable specific features for the vCPU in order to workaround QEMU issues with certain hardware accelerators. For example, QEMU on Windows with WPHX sometimes fails to start unless Virtual Machine eXtensions are disabled. This can now be done with: export SERENITY_QEMU_CPU="max,vmx=off"
2020-08-12Meta: Check that "#include <LibM/math.h>" is not being usedLinus Groh
2020-08-10Lagom+LibELF: Add an ELF fuzzer, and tweak the code to survive a few minutes ↵Nico Weber
of fuzzing (#3071) If a buffer smaller than Elf32_Ehdr was passed to Image, header() would do an out-of-bounds read. Make parse() check for that. Make most Image methods assert that the image is_valid(). For that to work, set m_valid early in Image::parse() instead of only at its end. Also reorder a few things so that the fuzzer doesn't hit (valid) assertions, which were harmless from a security PoV but which still allowed userspace to crash the kernel with an invalid ELF file. Make dbgprintf()s configurable at run time so that the fuzzer doesn't produce lots of logspam.
2020-08-09Lagom: Pass -Wno-deprecated-copy to clang tooNico Weber
Due to Serenity's use of concepts, it now requires clang 10 or newer, and clang 10 or newer both understands and requires -Wno-deprecated-copy.
2020-08-09disasm: For ELF files, disassemble .text sectionNico Weber
Since disasm is built in lagom, this requires adding LibELF to lagom.
2020-08-06Meta: Update CLion configuration to include LibM and generated filesLuke
Also bumps the CXX Standard to C++20.
2020-08-04Build: Make things build with clang without needing local changesNico Weber
Useful for sanitizer fuzzer builds. clang doesn't have a -fconcepts switch (I'm guessing it just enables concepts automatically with -std=c++2a, but I haven't checked), and at least the version on my system doesn't understand -Wno-deprecated-move, so pass these two flags only to gcc. In return, disable -Woverloaded-virtual which fires in many places. The preceding commits fixed the handful of -Wunused-private-field warnings that clang emitted.
2020-08-04Meta: Provide a way to only update a file if the output changesBen Wiederhake
This is only useful for build commands that update their destination in all cases and thus sometimes confuse cmake into rebuilding everything needlessly.
2020-08-04LibCompress: Add LibCompressstelar7
For now this only contains DEFLATE, and a very simple Zlib Eventually GZip, etc. can go here as well.
2020-07-29Meta: make check-style.sh ignore Libraries/LibCore/puff.cppEmanuele Torre
This file was formerly named `Libraries/LibCore/puff.c` and it was not checked by `check-style.sh` because it only checks .h and .cpp files. Since this file was not written by us, we shouldn't check its style. This file was also causing our Travis builds to fail.
2020-07-29Lagom: Clean up glob after puff.c -> puff.cpp renameNico Weber
2020-07-29Meta: Find potentially missing resourcesBen Wiederhake
2020-07-29Meta: Ensure that icons and other resources remain non-executableBen Wiederhake
2020-07-28Meta: Fix style of image building scriptsPeter Elliott
Oops. I didn't know there was a style guide for the scripts.
2020-07-28Meta: Calculate image size based on size of Build/Root and BasePeter Elliott
This reduces the size of the default build, while allowing people to install as many ports as they want, without having to manually specify disk size.
2020-07-28Userland: Add passwd utilityPeter Elliott
2020-07-27Lagom: Build with -std=c++2a -Wno-deprecated-copyAndreas Kling
2020-07-23Lagom: Add LibGemini, LibGfxNico Weber
They are dependencies of LibWeb and might be useful for running test-web on GitHub actions one day.
2020-07-23LibWeb+test-web: Create test-web program, add doctype testLuke
LibWeb currently has no test suite or program. Let's change that :^) test-web is mostly a copy of test-js, but modified for LibWeb. test-web imports both LibJS/Tests/test-common.js and LibWeb/Test/test-common.js LibWeb's suite provides the ability to specify the page to load, what to do before the page is loaded, and what to do after it's loaded. This also provides a test of document.doctype and its close sibling document.compatMode. Currently, this isn't added to Lagom because of CodeGenerators.
2020-07-14Lagom: Add a markdown fuzzerNico Weber
2020-07-14Lagom: Add a note on how to build the fuzzers to readmeNico Weber
2020-07-07Base: Turn a whole bunch of /bin symlinks into shell aliases :^)Andreas Kling
2020-07-06LibJS/test-js: Create test-js program, prepare for test suite refactorMatthew Olsson
This moves most of the work from run-tests.sh to test-js.cpp. This way, we have a lot more control over how the test suite runs, as well as how it outputs. This should result in some cool functionality! This commit also refactors test-common.js to mimic the jest library. This should allow tests to be much more expressive :)
2020-07-06run.sh: Remove cpu_reset debug outputNico Weber
It's fairly wordy and early OS startup seems to work well, so this doesn't have to be on by default.
2020-07-05Meta: Do not run shellcheck on our Shell's scriptsAnotherTest
2020-07-05Shell: Build as part of Lagom as wellAnotherTest
Bringing the Serenity Shell to your very own host system :^)
2020-07-01Profiler: Rename from ProfileViewer :^)Andreas Kling
2020-07-01Meta: make `Meta/run.sh qgrub` work.Emanuele Torre
2020-07-01Meta: Give SERENITY_ROOT a default value in `CLion/run.sh`Emanuele Torre
2020-07-01Meta: `run.sh`: fix usage commentsEmanuele Torre