summaryrefslogtreecommitdiff
path: root/Meta
AgeCommit message (Collapse)Author
2021-05-08LibGL: Implement a basic OpenGL 1.x compatible libraryJesse Buhagiar
This currently (obviously) doesn't support any actual 3D hardware, hence all calls are done via software rendering. Note that any modern constructs such as shaders are unsupported, as this driver only implements Fixed Function Pipeline functionality. The library is split into a base GLContext interface and a software based renderer implementation of said interface. The global glXXX functions serve as an OpenGL compatible c-style interface to the currently bound context instance. Co-authored-by: Stephan Unverwerth <s.unverwerth@gmx.de>
2021-05-08Meta + Lagom: Fix paths after movement of tests to Tests/Brian Gianforcaro
Not sure how this didn't cause a build break when I originally moved them in #6891. Better fix them now.
2021-05-08Meta: Remove AK/Tests from check-newlines-at-eof.pyBrian Gianforcaro
The json file was removed a while back, and now AK/Tests has been moved to Tests/AK. So this is wrong and out of date in every way.
2021-05-08Tests: Move Userland/Utilities/test-js to Tests/LibJSBrian Gianforcaro
2021-05-07Meta: Improve man.serenityos.org titles and link namesLinus Groh
Index page: - Change links from "Man 1" to "Section 1" Section index pages: - Change title from "1" to "Section 1 - SerenityOS man pages" - Change links from "foo" to "foo(1)" Man pages: - Change title from "foo" to "foo(1) - SerenityOS man pages"
2021-05-07Meta: Fix error in lint-ports.pyLinus Groh
The data structures here were changed from sets to dicts at some point, with the sets now having different names - this would crash trying to subtract two dicts.
2021-05-07Meta: Fix Fuzzers CMakeLists.txt and ReadMe.md to use CXX_COMPILER_IDBrian Gianforcaro
Previously the directions omitted that you have to specify `-CMAKE_CXX_COMPILER` when building the Fuzzers. This would cause all kinds of weird problems at compilation and link time. You can't specify one or the other, they must both be pointing at clang in order for things to work as experted. Fix this by updating the documentation to specify that the user should specify both the C and CXX compiler explicitly to be safe, as well as forcing the cmake clang argument handling to modify the CXX compiler variable instead of the C version.
2021-05-06Base: Make the /bin/TextEditor desktop shortcut say "Text Editor" :^)Andreas Kling
2021-05-05Meta: Enable linting of shell scripts under ToolchainBrian Gianforcaro
Now that everything under Toolchain is shellcheck clean, remove it from the exception list.
2021-05-05Meta: Add action to tweet each commit on pushIdan Horowitz
2021-05-04Meta: Remove link to man6 from man.serenityos.orgIdan Horowitz
We don't currently have any man6 entries.
2021-05-04Meta: Strip man prefix from generated man page directoriesIdan Horowitz
2021-05-04Meta: Use correct hrefs for man pages in man.serenityos.org/index.htmlIdan Horowitz
2021-05-04Meta: Remove existing test directories before copying new ones inAli Mohammad Pur
Previously, we would end up with `js-tests/Tests` and `web-tests/Tests` because the previous directories were already there.
2021-05-04Meta: Add workflow that deploys man page updates to man.serenityos.orgIdan Horowitz
2021-05-02Meta: Add a post-commit commit message linter hookIdan Horowitz
This should help with getting commit messages tidy before they pass through CI's commit linter :^) For this hook to work pre-commit has to be explicitly installed via: `pre-commit install --hook-type commit-msg`
2021-05-01Lagom/Fuzzers: Add fuzzers for Windows-1251 and Windows-1255 decodersIdan Horowitz
2021-05-01Lagom/CMake: Add -fconstexpr-steps for AppleClangCarlos César Neves Enumo
2021-04-30Meta: Use author username for pull request IRC notificationsLinus Groh
Just 'github.actor' may or may not be the actual PR author, but especially since action runs have to be approved for first-time contributors, it's been giving us a lot of incorrect results.
2021-04-30Meta: pre-commit should run lint-ports.py only when Ports changeBrian Gianforcaro
Most of the existing lint-ing shell scripts have the ability to only run on the files which have actually changed. The new port lint-ing script doesn't have this functionality unfortunately. This forces us to lint ALL the ports on every single change to any other file in the system if you have the pre-commit hook setup for your git clone locally. Instead we can use pre-commit's feature to only run a hook if certain files have changed to reduce the situations in which we would run the Meta/lint-ports.py script.
2021-04-29Everywhere: "file name" => "filename"Andreas Kling
2021-04-29WindowServer: Move configuration file to /etc/WindowServer.iniAndreas Kling
This was in the /etc/WindowServer/ directory which had nothing else in it, so let's just get rid of the directory and move this up one step.
2021-04-29Meta: Ensure the tap device is removed before trying to create it againGunnar Beutner
Sometimes the tap device isn't destroyed depending on how the script exits. Running the script again then fails to create the device again.
2021-04-29Meta: Increase fconstexpr-steps for Clang Lagom buildsIdan Horowitz
Clang's default constexpr-steps limit is 1048576, which is not enough for LibGfx's generation of the unicode bidirectional class lookup table while GCC doesn't have any limit at all, so this patch increases the limit to an arbitrarily larger value.
2021-04-29Meta: Make copyright header check more strictLinus Groh
2021-04-27Meta: Don't run qemu as rootGunnar Beutner
This currently only supports Linux but I don't think anyone else ran this yet because they'd have run into the E1000 bug I fixed in #6669
2021-04-26Meta: Make sure traceroot and ping belong to the root userGunnar Beutner
2021-04-25Meta: Only allow sha256 and sig for auth_type in portsGunnar Beutner
2021-04-25AK+Userland: Move AK/TestSuite.h into LibTest and rework Tests' CMakeAndrew Kaster
As many macros as possible are moved to Macros.h, while the macros to create a test case are moved to TestCase.h. TestCase is now the only user-facing header for creating a test case. TestSuite and its helpers have moved into a .cpp file. Instead of requiring a TEST_MAIN macro to be instantiated into the test file, a TestMain.cpp file is provided instead that will be linked against each test. This has the side effect that, if we wanted to have test cases split across multiple files, it's as simple as adding them all to the same executable. The test main should be portable to kernel mode as well, so if there's a set of tests that should be run in self-test mode in kernel space, we can accomodate that. A new serenity_test CMake function streamlines adding a new test with arguments for the test source file, subdirectory under /usr/Tests to install the test application and an optional list of libraries to link against the test application. To accomodate future test where the provided TestMain.cpp is not suitable (e.g. test-js), a CUSTOM_MAIN parameter can be passed to the function to not link against the boilerplate main function.
2021-04-23Meta: Support using rsync to install the root filesystemGunnar Beutner
Using rsync is significantly faster when we're using an existing image because we only have to copy files which are new or have been updated. This cuts down the image creation time to about a second or two assuming an old image exists.
2021-04-23Meta: Re-use existing disk image where possibleGunnar Beutner
This adds support for re-using and re-sizing existing disk images. Disk images are checked with e2fsck prior to re-use and a new disk image is automatically created when that check fails.
2021-04-23Ports: Detect more types of errors in the AvailablePorts.md fileGunnar Beutner
This adds support for detecting incorrect version numbers and links in the ports list. Also, unlike before it doesn't parse the package.sh script but executes it instead which allows us to detect syntax errors.
2021-04-22Meta: Remove sync-local.sh move warning from build-root-filesystem.shLinus Groh
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-22Meta: Add basic Zsh completions for serenity.shLinus Groh
This patch adds a basic Zsh completion script for the commands and targets provided by Meta/serenity.sh. There's some room for improvement here, e.g. we could provide completion for available CMake targets - currently completion stops after serenity.sh <command> <target>. You can enable it by adding this to your .zshrc before completions are loaded: fpath=($SERENITY_SOURCE_DIR/Meta/ShellCompletions/zsh $fpath)
2021-04-22Meta: Add GDB pretty printersGunnar Beutner
2021-04-21Meta: Add an option to precompile some very common AK headersAli Mohammad Pur
Until we get the goodness that C++ modules are supposed to be, let's try to shave off some parse time using precompiled headers. This commit only adds some very common AK headers, only to binaries, libraries and the kernel (tests are not covered due to incompatibility with AK/TestSuite.h). This option is on by default, but can be disabled by passing `-DPRECOMPILE_COMMON_HEADERS=OFF` to cmake, which will disable all header precompilations. This makes the build about 30 seconds faster on my machine (about 7%).
2021-04-21Tests: Reorganize LibCompress unit testsMarco Biscaro
Move LibCompress unit tests to LibCompress/Tests directory and register them with CMake's add_test. This allows us to run these tests with ninja test instead of running a separate executable. Also split the existing tests in 3 test files that better follow the source code structure (inspired by AK tests).
2021-04-20Lagom: Add sql utility and LibSQL unit testsTimothy Flynn
2021-04-20AK+Meta: Add a debug option for LibSQLTimothy Flynn
2021-04-20Ports: Update the lint-ports.py script to ignore missing auth_type for ↵Gunnar Beutner
SerenityOS repositories
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-20Meta: Add allow-list for icon size detection in CMakeBrian Gianforcaro
The only icons we are currently warning about are designed and rendered as small icons intentionally, as their only use is in desktop applets, and thus are exempt to this rule. This reduces build spam back down to a minimum. I should have just done this in the first place, back in #4729
2021-04-19Meta: Remove references to Userland/Libraries/LibELF/exec_elf.hBrendan Coles
2021-04-18Meta: Mark x86 debug register macros as false positives for CIFalseHonesty
2021-04-18Meta: Replace /bin/env with /usr/bin/envin serenity.sh shebangLinus Groh
This is more portable.
2021-04-18Meta: Update check-style.sh to ignore CVS $id$ tagsGunnar Beutner
Userlands/Libraries/LibC/sys/exec_elf.h has an $id$ tag which fails this lint check.
2021-04-18LibC+LibELF: Implement support for the dl_iterate_phdr helperGunnar Beutner
This helper is used by libgcc_s to figure out where the .eh_frame sections are located for all loaded shared objects.
2021-04-17Meta: Remove stray newline from serenity.sh help textLinus Groh