1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-07 21:17:07 +09:00
Commit graph

94 commits

Author SHA1 Message Date
Timothy Flynn
7ce88eb4cd Everywhere: Document use of ladybird.py over ladybird.sh 2025-05-29 16:24:17 -04:00
Timothy Flynn
3d0fdaacff Meta: Migrate find_compiler.sh logic to a python script
This will allow us to re-use this logic from within other python
scripts. The find_compiler.sh script still exists, as it is used by
some other bash scripts. The pick_host_compiler() function will now
execute find_compiler.py and store its result in $CC and $CXX.

Note that the python script supports Windows.
2025-05-29 16:24:17 -04:00
Andrew Kaster
096bd2369a Documentation: Remove instructions for OpenIndiana
No one has tried to build Ladybird on this Solaris fork since the
fork, and it doesn't have any vcpkg support.
2025-05-14 22:15:40 +01:00
Andrew Kaster
cd06939325 Documentation: Remove instructions for Haiku
No one has tried to build Ladybird on Haiku since the
fork, and it doesn't have any vcpkg support.
2025-05-14 22:15:40 +01:00
Timothy Flynn
70d2b0b6f3 CI: Update the Clang pipeline to Clang 20 2025-05-14 02:01:59 -06:00
Timothy Flynn
a65bbae4c9 CI: Update the GCC pipeline to GCC 14
Although GCC 15 is released, it is not available on Ubuntu 22.04 LTS via
the ubuntu-toolchain-r/test PPA.
2025-05-14 02:01:59 -06:00
Timothy Flynn
6fc7483757 Documentation: Bump OpenIndiana's clang version
Clang 19 seems to be the newest available:
https://pkg.openindiana.org/hipster/en/search.shtml?token=clang&action=Search

It also looks like they have newer versions of GCC now, but let's just
advise clang on this system that no contributer is using.
2025-05-14 02:01:59 -06:00
Timothy Flynn
0e4a2f760f Documentation: Refer to specific compiler versions in fewer places
The required and recommended compiler versions are sort of scattered
across several documents. Let's list them in a single document, and
have other documents refer to that location.

The language here intentionally recommends the same compiler versions
used in CI. The find_compiler.sh script can be updated with the
minimum known good version.
2025-05-14 02:01:59 -06:00
Andrew Kaster
c0f0f45b6e Documentation: Add clang-tools to the Ubuntu/Debian build instructions
When using non-BFD linkers, something about our CMake setup causes
visibility checks from GenerateExportHeader to fail when clang-scan-deps
is not found.
2025-05-12 10:40:43 -06:00
Andrew Kaster
3c8515a1a1 Documentation: Add patchelf as a dependency for on Fedora
The provided patchelf from vcpkg is only version 0.14.3, which is too
old to produce working binaries on Fedora 42. Using that old version
causes hard to debug issues where applications segfault during startup.
2025-05-08 03:21:15 -06:00
Jess
897c83cbcb Docs: Link the external Nix devshell 2025-05-03 16:40:50 +01:00
Ali Mohammad Pur
fac2ee4452 Meta: Add a link job pool with a configurable size
Parallel linking (esp. with bfd) uses a huge chunk of memory, make it
possible for users to limit the number of link jobs to at least
limit the pain.
2025-04-08 14:01:28 +02:00
Jelle Raaijmakers
685cc1aae8 Everywhere: Remove Nix build support
A significant portion of reported build problems come from people trying
to build Ladybird with Nix, and it seems there's always something broken
for someone. The maintainers are currently not focused on supporting
Nix, and as a result PRs are not reviewed as well as they could have
been.

This removes all Nix-related files.
2025-03-24 17:22:08 +00:00
Andrew Kaster
ddcd48d12e Documentation: Update build instructions to remove -GXcode suggestion
Also some other assorted docs cleanup.
2025-03-19 20:42:16 -04:00
Timothy Flynn
3af63bc5a3 Everywhere: Replace miscellaneous references to the chrome process 2025-03-15 19:57:27 -04:00
InvalidUsernameException
d0f80e1f05 Docs: Add note about Android port being broken 2025-03-10 12:58:42 -06:00
Timothy Flynn
2ec97b4548 Meta: Update to clang-19 in CI and build instructions 2024-12-28 05:39:32 -08:00
Jess
61fcccb104 Flake: Add and run formatter + Rename devshell
Add a formatter output to the flake (`nix fmt`), along with moving +
renaming the devshell so it will work by running `nix-shell` in the root
of the project.
2024-12-18 15:15:42 +00:00
mkljczk
0b2fe008a3 Docs: Add perl-lib to build prerequisites for Fedora 2024-12-10 10:36:29 -08:00
Jess
f4cc9c6426 Docs: Update Nixos build instructions 2024-12-01 13:27:59 -05:00
Timothy Flynn
db47cc41f8 Everywhere: Move the Ladybird folder to UI 2024-11-10 12:50:45 +01:00
Andrew Kaster
f4124c7f40 CI+DevContainer+Documentation: Remove install steps for ffmpeg libs 2024-11-08 11:10:31 -07:00
Timothy Flynn
4ffca2089e Meta: Change the default build directories to exclude "ladybird" prefix
The reason for this change is that CMake/vcpkg are unable to detect a
change to VCPKG_LIBRARY_LINKAGE. So when we switch to dynamic builds,
the switch would be non-functional, and every developer would have to
remove their Build and vcpkg cache directories manually. By changing
these directories, vcpkg is able to detect it must rebuild.
2024-11-06 10:38:57 -07:00
Timothy Flynn
3a6b698572 Documentation: Add note about making the macOS terminal a developer tool 2024-11-01 15:04:53 +01:00
Jonne Ransijn
d002254ada Meta: Add build instructions for Void Linux
`git` and `bash` are most likely already installed, `bash` is part of
`base-system`, and `git` is required to pull the repository in the
first place, but they are not included in `base-minimal` or
`base-container`, and they ARE required for a successful build,
so I have added them regardless.

`qt6-tools-devel` and `qt6-wayland-devel` were not required to compile
and link Ladybird on my machine, but I have included them as they are
installed on the other Linux distributions.
2024-10-23 11:33:03 -06:00
Sam Atkins
25441e2250 Documentation: Move editor configuration guides into a subdirectory
This makes them a bit easier to find, and also stops them cluttering up
the main documentation.
2024-10-23 09:02:46 +02:00
John Diamond
5c35807878 Documentation: Suggest installing clang-format version 18 precisely 2024-10-14 15:54:53 -06:00
Totto16
846a3a16e2 Meta: Update the devcontainer configuration
Update the base image and the feature images
Add new packages to the install.sh command
as they are now needed by some dependencies, that are built via vcpkg
Add newer clang version, but the default stays the same
2024-10-12 11:34:57 -06:00
Andrew Kaster
5e090b359c Documentation: Add instructions for experimental native Windows build
Co-Authored-By: pheonixfirewingz <luke.a.shore@proton.me>
2024-10-10 21:48:41 -06:00
Timothy Flynn
de1475f99a Documentation: Update description of "Unable to find ninja" error
Unlike the current FAQ entry, this error really never involves having to
uninstall/reinstall Ninja or invoking it directly.
2024-10-08 16:34:13 +02:00
Jelle Raaijmakers
57783eff24 LibMedia: Convert OggLoader into generic FFmpegLoader
This loader supports whatever format libavformat and libavcodec can
handle. Currently only seekable streams are supported, and we still have
some limitations as to the number of channels and sample format.

Plays all non-streaming audio files at:

  https://tools.woolyss.com/html5-audio-video-tester/
2024-09-30 18:48:12 +02:00
Alec Murphy
fe9af6ffa2 Documentation: Add missing required Fedora packages
These packages are required for building on Fedora.
2024-09-23 11:13:01 -06:00
Jelle Raaijmakers
1b267abf36 LibMedia: Link to avformat as well
This allows us to process container formats in future commits.
2024-09-12 10:01:19 +02:00
circl
0af92e05d8 Documentation: Clean up some parts of the build instructions 2024-07-28 20:45:25 -06:00
sideshowbarker
8affa377fb Documentation: Add guidance on “can’t find Ninja” error message 2024-07-25 20:57:32 +01:00
Timothy Flynn
b659b62dec Documentation: Add pkg-config to Debian dependencies 2024-07-23 08:59:05 +02:00
Timothy Flynn
61da7d2213 Documentation: Recommend installing PulseAudio on Debian by default 2024-07-23 08:59:05 +02:00
Timothy Flynn
5b38057802 CI+Documentation: Alphabetically sort system dependencies 2024-07-23 08:59:05 +02:00
Alec Murphy
20e2cc12a8 Documentation: Add missing Fedora dependency
This PR adds the dependency `zlib-ng-compat-static` which is required
for building on Fedora.
2024-07-18 07:36:38 +01:00
sideshowbarker
570814a31e Meta: Make all pre-commit CI scripts work with Bash 3.2
This change makes all the pre-commit CI scripts runnable under Bash 3.2,
by replacing “mapfile” invocations in them code that first explicitly
creates an array, and then uses a while loop to populate the array.

Otherwise, without this change, the scripts all fail to run under Bash
3.2 — due to lack of support for “mapfile”.

Fixes https://github.com/LadybirdBrowser/ladybird/issues/283

This also drops bash from the list of homebrew dependencies in the build
instructions — because with this change, homebrew bash (v4) is no longer
needed; things will now work with the Apple-provided bash (v3.2)
2024-07-16 08:56:22 -06:00
Andrew Kaster
31eec0a145 Documentation+Toolchain: Don't try to build CMake from source
This build step is a bit excessive. Let's require people to have an
up-to-date CMake from their system package manager instead.
2024-07-15 10:15:40 +02:00
Andrew Kaster
53f4e98818 Documentation: Re-organize and update build instructions
Add CMake 3.25 download instructions from apt.kitware.org, and add
option to grab gcc-13 from ubuntu-toolchain-r/test PPA.
2024-07-15 10:15:40 +02:00
sideshowbarker
6d097a1aa9 Documentation: Add how-to for building a Debug binary 2024-07-11 11:06:08 -06:00
Jess
dba448799d Meta: Docs: Update Nix dev-shell commands 2024-07-10 10:19:43 -06:00
Timothy Flynn
2a36fd2aed Documentation: List nasm as a required package
This is required for libavif.
2024-07-09 20:08:38 -04:00
sideshowbarker
322b088505 Documentation: Add how-to for building with homebrew clang on macOS 2024-07-09 04:41:42 -06:00
Andrew Kaster
22d7aa53fa Meta: Tell vcpkg we don't need to build vulkan-loader
Trying to build VulkanLoader from source is a giant headache of
unnecessary packages. Every modern distro has vulkan packages, let's
depend on those instead of trying to build something for both wayland
and X11.
2024-07-07 09:51:29 -06:00
Jörg Strebel
1140c965cd Documentation: Extend openSUSE Leap build instructions 2024-07-06 15:51:58 -06:00
lalitrn44
eaf2384f1c Documentation: Add new dependencies libx11-dev libxrandr-dev 2024-07-06 14:50:10 -06:00
Dario Castañé
be26cc106c Documentation: Update BuildInstructionsLadybird.md for openSUSE
Adding packages that are required to compile without errors
2024-07-05 07:15:29 +02:00