ladybird/Ports/cmake/patches
2021-03-08 09:20:53 +01:00
..
0000-no_wide_string.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0002-stoi-atoi.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0003-stoi-atoi-2.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0004-snprintf.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0005-stod.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0006-stoll.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0007-utimes-utime.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0008-unix-stuff.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0009-purge-non-serenity-syscalls.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0010-don-t-use-siginfo.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0011-Fixed-your-code-rot-cmake.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0012-bin-bash.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0013-platform-serenityos.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0014-cmcurl-include-unistd.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0015-atoll.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0016-conflicting-0.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0017-conflicting-1.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0018-isfinite.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0019-libuv-so_linger.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0020-libuv-ipv6.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0021-libcurl-no-ipv6.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0022-remove-mutex.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0023-lround.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0024-shared-mutex.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0025-uv-platform.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0026-curl-struct-stat.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0027-libuv-platform-serenity.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
0028-cmake-disable-tests.patch Ports: Add a cmake port 2021-02-15 17:32:56 +01:00
ReadMe.md Everywhere: Remove unnecessary whitespace at the end of some lines. 2021-03-08 09:20:53 +01:00

Patches for CMake (and submodules) on SerenityOS

0000-no_wide_string.patch

We don't support wide strings, and our libstdc++ doesn't have std::wstring. This patch is a big hack to wipe wide strings out of the codebase; naturally, it very likely breaks unicode.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0002-stoi-atoi.patch and 0003-stoi-atoi-2.patch

For some reason, our libstdc++ does not define std::stoi, these two patches change different overloads of this function to the equivalent C functions.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0004-snprintf.patch

Our libstdc++ does not define std::printf and std::snprintf, this patch simply removes the std namespace.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0005-stod.patch and 0006-stoll.patch

Our libstdc++ does not define std::stod and std::stoll, this patch swaps them with the equivalent C functions.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0007-utimes-utime.patch

utimes is a deprecated POSIX API, and we do not support it, this patch uses the equivalent utime function instead.

Status

  • Local?
  • Should be merged to upstream? (Once cleaned up)
  • Resolves issue(s) with our side of things
  • Hack

0008-unix-stuff.patch

This patch removes the use of {get,set}priority() as we do not support it. it also removes two functions with the correct conditions (the same conditions as their dependents are removed with).

Status

  • Local?
  • Should be merged to upstream? Partially.
  • Resolves issue(s) with our side of things
  • Hack

0009-purge-non-serenity-syscalls.patch

This patch removes syscalls and options not defined in serenity.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0010-don-t-use-siginfo.patch

We don't support SIGINFO. This patch removes uses of SIGINFO.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0011-Fixed-your-code-rot-cmake.patch

This purely fixes code issues with cmake. very funny patch.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0012-bin-bash.patch

This patch swaps out /bin/sh for /bin/bash in two scripts that need it.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0013-platform-serenityos.patch

This patch adds the SerenityOS platform config file to CMake.

Status

  • Local?
  • Should be merged to upstream? If we want to have cmake support serenity out of the box.
  • Resolves issue(s) with our side of things
  • Hack

0014-cmcurl-include-unistd.patch

Everyone gets this wrong. most platforms are very lax with these includes, but we're not one of them.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0015-atoll.patch

Our libstdc++ does not define std::atoll, this patch uses the equivalent C function instead.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0016-conflicting-0.patch and 0017-conflicting-1.patch

These two defines make GCC very sad. reasons are unknown at this time.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0018-isfinite.patch

Our math.h already defines isfinite.

Status

  • Local?
  • Should be merged to upstream? If we want to have cmake support serenity out of the box.
  • Resolves issue(s) with our side of things
  • Hack

0019-libuv-so_linger.patch

We don't have SO_LINGER or its associated struct. This patch removes them.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0020-libuv-ipv6.patch

cmlibuv assumes the platform has definitions for (and supports) IPv6; this patch removes IPv6-specific things from libuv.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0021-libcurl-no-ipv6.patch

libcurl has a IPV6 switch, but uses AF_INET6 unconditionally in one place. this patch disables IPV6 and makes that one use conditional.

Status

  • Local? Partially.
  • Should be merged to upstream? Partially.
  • Resolves issue(s) with our side of things
  • Hack

0022-remove-mutex.patch and 0024-shared-mutex.patch

We don't have mutexes, and out libstdc++ does not define std::mutex. This patch removes all uses of std::mutex, std::condition_variable, and anything that depends on them; and replaces them with single-threaded equivalents. This will break horribly with smp.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0023-lround.patch

Our libstdc++ (and stdlib) does not have lround, this patch replaces that with somewhat equivalent C stdlib functions.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0025-uv-platform.patch

This patch adds the definitions necessary to compile libuv on Serenity.

Status

  • Local?
  • Should be merged to upstream? If we want to have cmake support serenity out of the box.
  • Resolves issue(s) with our side of things
  • Hack

0026-curl-struct-stat.patch

For unknown reasons, curl_setup_once.h does not include sys/stat.h. this patch includes sys/stat.h.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0027-libuv-platform-serenity.patch

This patch adds a platform-specific conditional include to uv/unix.h.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack

0028-cmake-disable-tests.patch

We don't care about building tests for now, and it makes the compilation much faster.

Status

  • Local?
  • Should be merged to upstream?
  • Resolves issue(s) with our side of things
  • Hack