Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add MUSL ARM binaries #134

Open
jerbob92 opened this issue Oct 5, 2023 · 4 comments
Open

Add MUSL ARM binaries #134

jerbob92 opened this issue Oct 5, 2023 · 4 comments

Comments

@jerbob92
Copy link
Contributor

jerbob92 commented Oct 5, 2023

It would be pretty cool to have MUSL ARM binaries. I have made a start here: #133
The aarch64 build (arm64) works fine, but I can't get the normal arm build to succeed. Since you have a lot more experience in this, maybe you can take a look?

@bblanchon
Copy link
Owner

Is there an actual demand, or is this just to check a box?

@jerbob92
Copy link
Contributor Author

jerbob92 commented Oct 6, 2023

The aarch64 build has an actual demand because more and more cloud providers are providing ARM servers, which are all arm64 hardware as far as I know, with Alpine being a great way to make small Docker images, it would be great to be able to run pdfium on ARM servers in a docker container.

I thought it would be odd to include arm64 but not normal arm, that's why I added both, but for myself the demand is only in aarch64.

@bblanchon
Copy link
Owner

First build for arm64:
https://github.com/bblanchon/pdfium-binaries/releases/tag/chromium/6070

bblanchon added a commit that referenced this issue Nov 5, 2023
bblanchon added a commit that referenced this issue Nov 5, 2023
bblanchon added a commit that referenced this issue Nov 5, 2023
Relates to #133 and #134
@bblanchon
Copy link
Owner

First V8 build for arm64:
https://github.com/bblanchon/pdfium-binaries/releases/tag/chromium/6124

reece394 pushed a commit to reece394/pdfium-binaries that referenced this issue Aug 12, 2024
Musl: fix "selected processor does not support `pmull`"

Windows: remove `cgdi_printer_driver.cpp`'s patch

This patch is not required anymore.

Run `install-sysroot.py` after `runhooks`

Restore `install-sysroot.py`

The Linux ARM builds fail without this line.

Call `gclient runhooks` instead of `install-sysroot.py`

Remove `use_allocator_shim`

It's an option of `partition_allocator` which we disabled for all architectures.

Upgrade the runner to Ubuntu 22.04

iOS V8: remove the dependency on BrowserEngineKit

Bug introduced by:
https://chromium.googlesource.com/v8/v8.git/+/7dec59784535eac97053729969a42282ce1387b6

Fixes bblanchon#164

Android: remove `gclient runhooks`

The command was failing with the following message:

> update_depot_tools: line 148: goma_ctl: command not found

Caused by:
https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4160794

Musl: remove workaround for undefined `enable_safe_libstdcxx`

This reverts commit e789065.
https://chromium.googlesource.com/chromium/src/build/+/4711ca616db541b49146e18b485c20876680c570

Android: set `default_min_sdk_version = 21`

Closes bblanchon#147.
Closes bblanchon#161.

Android: install `unzip`

CI: remove the optional token for `workflow-dispatch`

Musl: add a workaround for undefined `enable_safe_libstdcxx`

https://chromium.googlesource.com/chromium/src/build/+/b484740dba8205ad6cec10feb2d2e17a466ec3bf

Make `linux_musl_arm64_v8` wait for `linux_musl_arm64`

Musl: update patch

https://chromium.googlesource.com/chromium/src/build/+/ee2c24e99f79ca8f7ce16adf7aa89597aeac4816

WASM: update patch

https://chromium.googlesource.com/chromium/src/build/+/ee2c24e99f79ca8f7ce16adf7aa89597aeac4816

Update V8 patch

Update WASM patch https://pdfium.googlesource.com/pdfium/+/67963ba

Test the patches against the latest `chromium/*` branch

Set `clang_use_chrome_plugins = false`

This skips many extra warnings, such as `chromium-rawptr` which broke today's build.

Update deprecated actions

NuGet: Add release notes to packages

Closes bblanchon#154
Closes bblanchon#156

Set `pdf_use_partition_alloc = false` for all platforms

Closes bblanchon#148

NuGet: fix macOS arch in target file

NuGet: add target files to Linux and macOS for Mono support

NuGet: add Linux Musl ARM64

Musl: add `-flax-vector-conversions` for ARM64 (fixes bblanchon#150)

Windows: update patch (fixes bblanchon#149)

Adds a dummy definition to avoid the unused variable error

Anaconda: remove 32-bit packages

Relates to bblanchon#146

Anaconda: switch from weekly to monthly release

Closes bblanchon#146

WASM: remove `libpdfium.a` from tarball and NuGet package

Reverts 8d9cea2
Reverts bblanchon#123
Closes bblanchon#145

Make Emscripten SDK (emsdk) version a workflow input

Closes bblanchon#143

Musl: add arm64 v8 Relates to bblanchon#133 and bblanchon#134

readme/conda badge: add link

Add a 15 minutes timeout to the checkout step

Add Spacedrive to related projects

Disable allocator_shim for macOS build

Update V8 patch https://pdfium.googlesource.com/pdfium/+/5956b29a

Update V8 patch https://pdfium.googlesource.com/pdfium/+/cee3d1d43a

Patch `build/config/BUILDCONFIG.gn` instead of `build_overrides/BUILDCONFIG.gn` https://pdfium.googlesource.com/pdfium/+/9c8a2c8e

Musl: add arm64 build Closes bblanchon#133

Use GCC 10 for the linux arm builds

Update Windows runner to `windows-2022`

Fix Musl patch
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants