Compare commits

...
599 Commits
Author SHA1 Message Date
Caleb Connolly 25ae831c68 main/postmarketos-config-nftables: systemd support
Apparently nftables-openrc doesn't get pulled in automatically? But we
can't just depend on it now. Add our own -openrc subpackage with the
correct install_if property to pull in nftables-openrc.

The upstream nftables-openrc subpackage should be fixed (if it's
broken).

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-21 22:43:20 +00:00
Caleb Connolly 4fc1e8d5a1 main/postmarketos-bootsplash: systemd support
Install a kill-pbsplash systemd service which is configured to be
started as part of the graphical-session user target. Additionally
install an override so that if the display-manager service (aliases to
gdm, sddm, etc) fails to start it will still kill pbsplash.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-21 22:43:20 +00:00
Caleb Connolly 8d7dacafb4 main/postmarketos-base-ui: support systemd
Not sure if dropping the networkmanager-openrc dependency causes issues.
Otherwise, make the elogind subpackage conflict with systemd-logind.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-21 22:43:20 +00:00
Oliver Smith 0acf34aa9e main/postmarketos-ui-sxmo-*: set pmb:systemd-never
Sxmo maintainers have decided to stay with OpenRC on postmarketOS. Set
this option, so pmbootstrap doesn't even ask the user if they want to
install Sxmo with systemd. The idea is that users don't end up
reporting issues about this unsupported use case.
2024-03-21 22:43:20 +00:00
Caleb Connolly f23ace4d8b main/postmarketos-base-ui-gnome: split openrc depends to -openrc subpackage
Allow this package to be used on systemd installs without pulling in a
bunch of openrc services.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-21 22:43:20 +00:00
Bart Ribbers 35d6480437 main/postmarketos-ui-plasma-{mobile,desktop}: start with systemd (MR 4919)
[ci:ignore-count]
2024-03-21 22:43:12 +00:00
Sam Day 6b4dfa8b07 postmarketos-ui-phosh: systemd support (MR 4904) 2024-03-21 22:31:24 +00:00
Oliver Smith 4116843606 pmaports.cfg: add repo:systemd section 2024-03-21 22:27:59 +00:00
Oliver Smith b5c36f959c main/postmarketos-ui-gnome-mobile: set pmb:systemd
Let pmbootstrap install systemd along with postmarketos-ui-gnome-mobile,
unless the user sets "never" for systemd in "pmbootstrap init".
2024-03-21 22:27:59 +00:00
Anton Bambura 41d528f6b9 main/cros-keyboard-map: upgrade to 0_git20240313 (MR 4930)
[ci:skip-build]: already built successfully in CI
2024-03-21 21:38:15 +02:00
Teemu Ikonen 661a6494ce temp/gtk4.0: upgrade to 4.14.1, clean up compile command (MR 4951) 2024-03-21 12:49:39 +01:00
Luca Weiss ca51ad851e linux-postmarketos-qcom-sm6350: upgrade to 6.8.1 (MR 4949)
Kconfig changes:
* DRM_SIMPLEDRM
* QCOM_ICC_BWMON

[ci:skip-build]: already built successfully in CI
2024-03-20 21:22:39 +01:00
Stefan Hansson d74c66bcf6 linux-postmarketos-exynos4: enable CONFIG_AUDIT (MR 4946)
Necessary to debug seccomp filters, among other things. Without this
auditd doesn't work at all.
2024-03-20 21:01:18 +01:00
Robert Eckelmann 2ca42e6f79 temp/iio-sensor-proxy: disable the build for armv7 (MR 4950)
Ref: #2468
2024-03-20 08:40:35 -07:00
jethrob b41ec7a9d7 linux-postmarketos-grate: take co-maintainership (MR 4948)
[ci:skip-vercheck]

[ci:skip-build]: already built successfully in CI
2024-03-19 21:44:24 +00:00
jethrob caab6c96fa device-microsoft-surface-rt: take co-maintainership (MR 4948) 2024-03-19 20:47:05 +00:00
Raymond Hackley 10eb68fe05 main/postmarketos-initramfs: add USB booting support (MR 4947)
How to boot from USB drives:
1. Make sure the extcon has OTG support and included in initramfs
2. Make sure the PMIC supports the power to OTG devices, and included in initramfs. Otherwise, a hub with external power supply is required.
3. Make sure module `usb-storage` is enabled in initramfs
4. `pmbootstrap install --sdcard=/dev/<usb_drive>`
    - postmarketOS/pmbootstrap@942ee20789 is required to ignore sdcard check. Thanks @ollieparanoid for the patch.
5. `pmbootstrap flasher flash_kernel`
6. Insert the USB drive to OTG and boot

[ci:skip-build]: already built successfully in CI
2024-03-19 09:28:32 +00:00
Anton Bambura 0db311f94a microsoft-surface-rt: sort depends (MR 4944)
[ci:skip-vercheck]

[ci:skip-build]: already built successfully in CI
2024-03-18 19:39:38 +01:00
Anton Bambura d085c072dd linux-postmarketos-grate: take co-maintainership (MR 4941)
I contribute to this package from time to time, so let's add myself to
maintainers to represent it here.

[ci:skip-build]: already built successfully in CI
2024-03-18 13:49:56 +02:00
Anton Bambura 894a115705 linux-postmarketos-grate: upgrade to 6.6.22 (MR 4941)
This upgrades kernel to 6.6.22 backporting fixes for major performance
issues of Microsoft Surface RT.

This also re-generates config with "make grate_defconfig pmos.config"
and adds pmb:kconfigcheck-uefi for surface rt.
2024-03-18 13:49:56 +02:00
Luca Weiss 6cb3e795e4 modem/{pd-mapper,tqftpserv}: take over maintainership (MR 4942)
The previous maintainer hasn't been active on GitLab for at least two
years, time to replace them.

[ci:skip-build]: already built successfully in CI
2024-03-18 12:14:43 +01:00
André Apitzsch e6cdfd8d42 device/msm8226*: Generate extlinux.conf (MR 4939)
Now as boot-deploy allows us to generate both boot.img and extlinux.conf
at the same time, enable generating the config for all msm8226 since it
will be used in the future lk2nd release. boot.img is still kept to keep
compatibility with current lk2nd releases and to allow system recovery
with fastboot when required.

[ci:skip-build]: already built successfully in CI
2024-03-18 12:12:13 +01:00
Oliver Smith 2d0a7aa6dc CI: add more tests for CODEOWNERS (MR 4940)
* Parse the file in python and ensure it is ordered alphabetically
* Ensure that we have at least as many gitlab nicknames in CODEOWNERS,
  as there are listed maintainers in main and community devices. This
  should help with enforcing that every maintainer is also listed in
  CODEOWNERS, so they can be easily pinged via their gitlab nickname if
  something for the device they maintain is happening.

[ci:skip-build]: already built successfully in CI
2024-03-18 08:01:26 +00:00
Oliver Smith 8bf7a0f6dd CODEOWNERS: add maintainers from APKBUILDs (MR 4940)
Sometimes we need to figure out the gitlab nicknames of maintainers and
co-maintainers as listed in the APKBUILDs, e.g. when a specific issue
appears that only happens with a given device. Or if we want to ping
all device maintainers in the testing phase for the new release.

So far it has been a very tiresome, manual process to figure out gitlab
nicknames from the maintainers in the APKBUILDs (involving git log
--follow and opening merge requests in browsers...). After some
discussion we figured it would be good to store it in the CODEOWNERS
file.

This also has the nice side-effect that maintainers get notifications if
the APKBUILDs they maintain get changed.
2024-03-18 08:01:20 +00:00
Oliver Smith f45189285e CODEOWNERS: order alphabetically (MR 4940) 2024-03-17 22:48:52 +00:00
Oliver Smith 297dafc5ba CODEOWNERS: remove vim modeline (MR 4940)
We configure editors via editorconfig file. Remove the modeline, it was
wrong anyway by setting "et" to expand tabs to spaces, where in reality
this file uses tabs.
2024-03-17 22:48:52 +00:00
Oliver Smith f20ff5dba3 editorconfig: add CODEOWNERS (MR 4940)
Let editors use tabs for this file
2024-03-17 22:48:52 +00:00
Oliver Smith af6d4c661d linux-postmarketos-rockchip: remove Martijn as maintainer (MR 4940) 2024-03-17 22:48:52 +00:00
Oliver Smith a8e36280c5 device-qemu-{amd64,aarch64}: add myself as maintainer (MR 4940)
Daniele has been inactive for some years, set myself as maintainer.
2024-03-17 22:48:47 +00:00
Sergey Lisov a14ef97406 linux-samsung-a6lte: touchscreen in charge mode (MR 4845)
pmOS does not support charge mode anyway, and boots to a full UI, but this vendor kernel disables touchscreen when booting in charge mode. Remove that check, so that the phone can be used as usual.

[ci:skip-build]: already built successfully in CI
2024-03-17 21:16:17 +03:00
Oliver Smith 11cc8fc549 cross/busybox-static-*: upgrade to 1.36.1-r21 2024-03-17 17:30:24 +00:00
Vitaliy Ognev df5f42fb0f powkiddy-x55: new device (MR 4926) 2024-03-17 14:15:33 +01:00
Vitaliy Ognev 9740a785b3 postmarketos-ui-cage: new aport (MR 4934)
[ci:skip-build]: already built successfully in CI
2024-03-17 11:59:27 +01:00
Caleb Connolly 75f98f10e6 postmarketos-base-ui-gnome: depend on correct wallpapers (MR 4929)
The postmarketos-artwork-wallpapers-gnome package no longer exists. Now
we just depend on the postmarketos-artwork-wallpapers package.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-17 02:11:50 +00:00
Adam Thiede aaade24fd4 linux-postmarketos-mediatek-mt8173: upgrade to 6.8.1 (MR 4932)
[ci:skip-build]: already built successfully in CI
2024-03-16 18:37:16 +02:00
Icenowy Zheng 8e1bb335ca linux-postmarketos-qcom-sdm845: hotfixes for xiaomi-polaris (MR 4867)
Current 6.6 kernel has some features broken for xiaomi-polaris including
LCD and Wi-Fi.

Add two patches that fix these problems.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
[ci:skip-build]: already built successfully in CI
2024-03-16 16:55:12 +01:00
Anton Bambura dd0ca74839 linux-postmarketos-grate: enable WM8962 (MR 4931)
This sound card is used on surface rt

[ci:skip-build]: already built successfully in CI
2024-03-16 16:51:34 +01:00
Teemu Ikonen 355ecfb07b temp/gtk4.0: upgrade to 4.14.0, remove mesa-asahi workaround (MR 4927)
[ci:skip-build]: already built successfully in CI
2024-03-16 16:48:10 +01:00
Luca Weiss 2bb07cb553 linux-postmarketos-qcom-sc7280: upgrade to 6.8.0 (MR 4922)
[ci:skip-build]: already built successfully in CI
2024-03-16 16:42:04 +01:00
Stefan Hansson d92929d716 main/postmarketos-mkinitfs: remove CGO_ENABLED=0 (MR 4924)
See https://gitlab.alpinelinux.org/alpine/aports/-/issues/15809

[ci:skip-build]: already built successfully in CI
2024-03-16 14:44:26 +01:00
Stefan Hansson 85824bc1d3 main/postmarketos-mkinitfs: upgrade to 2.4.0 (MR 4924) 2024-03-16 14:44:26 +01:00
Anton Bambura 8c395c506d microsoft-surface-rt: remove deprecated deviceinfo variables (MR 4928)
[ci:skip-build]: already built successfully in CI
2024-03-16 13:50:27 +02:00
Anton Bambura 5d6d977dc8 microsoft-surface-rt: use PMOS_FORCE_PARTITION_RESIZE (MR 4928)
This will be needed for prebuilt images.
2024-03-16 13:50:27 +02:00
Anton Bambura 991e6340ad microsoft-surface-rt: use generated grub.cfg (MR 4928) 2024-03-16 13:50:27 +02:00
Anton Bambura ae3050cd42 microsoft-surface-rt: remove initfs-hook.sh (MR 4928)
This is needed for osk-sdl which we don't use anymore
2024-03-16 13:50:27 +02:00
Anton Bambura 4f29d783fe microsoft-surface-rt: remove pointercal (MR 4928)
This is needed for osk-sdl which we don't use anymore
2024-03-16 13:50:27 +02:00
Anton Bambura 50141cab00 microsoft-surface-rt: remove phosh config (MR 4928)
This should be handled automatically nowadays
2024-03-16 13:50:27 +02:00
Bart Ribbers 72357ecfb2 main/postmarketos-artwork: upgrade to Meadow wallpaper and make Plasma-compatible (MR 4805) 2024-03-15 20:06:32 +03:00
Adam Thiede d9ed2ac850 main/device-pine64-pinephone: depend on sway instead of sway-virtual (MR 4857)
[ci:skip-build]: already built successfully in CI
2024-03-15 15:18:50 +01:00
Arseniy Velikanov 3776d03f39 device-nokia-argon: embed matrix-keypad module in initramfs (MR 4923)
[ci:skip-build]: already built successfully in CI
2024-03-14 23:41:28 +01:00
FuchtelJockel 59b3c1af1d linux-postmarketos-qcom-msm8994: update dt for h815 (MR 4915)
- add volume up/down, power key
- add hall sensor
- add sd card support
- fix normal boot

[ci:skip-build]: already built successfully in CI
2024-03-14 10:51:54 -07:00
FuchtelJockel a2cd4434b6 linux-postmarketos-qcom-msm8994: upgrade to 6.8 (MR 4915) 2024-03-14 10:51:54 -07:00
raihan2000 2f1a87b362 device-lenovo-kuntao: new device (MR 4879)
[ci:skip-build]: already built successfully in CI
2024-03-14 10:47:10 -07:00
Clayton Craft cec324a838 linux-lenovo-21bx: upgrade to 6.8 (MR 4914)
- kconfig changes from `pmb kconfig migrate`
- also enabled some USB serial drivers I wanted
- Reverts 7dcd3e014aa7, fixing bluetooth connections. This commit was
  added after 6.8-rc6 and causes a regression. A revert was sent
  upstream: https://lore.kernel.org/all/ZfMStHjwtCT1SW3z@hovoldconsulting.com/

[ci:skip-build] already built successfully in CI
2024-03-14 10:32:45 -07:00
Bart Ribbers b666024ba9 Revert "main/postmarketos-ui-plasma-mobile: replace angelfish for firefox (MR 4917)" (MR 4921)
This reverts commit 5d39c25f4d.

Angelfish is available for armv7 again

[ci:skip-vercheck]
2024-03-14 14:39:36 +01:00
Bart Ribbers b56bd88949 Revert "main/postmarketos-ui-plasma-mobile: remove some packages from pmb_recommends (MR 4917)" (MR 4921)
This reverts commit e42d9f7c45.

These packages are available again on armv7
2024-03-14 14:39:36 +01:00
Statzar 19a136e4e6 xiaomi-fog: new device (MR 4911) 2024-03-14 11:23:44 +01:00
Denis Burkov 59f889ceb7 pocketbook-614-plus: new device (MR 4901)
[ci:skip-build]: already built successfully in CI
2024-03-13 21:33:28 +01:00
Jianhua Lu f133310c02 device-xiaomi-elish: disable framebuffer console output (MR 4910) 2024-03-13 20:06:39 +01:00
Jianhua Lu eb7d184a0f linux-postmarketos-qcom-sm8250: upgrade to 6.8.0 (MR 4910) 2024-03-13 20:06:39 +01:00
vipoll ee399626ea device-xiaomi-markw: remove workaround for touchscreens (MR 4902)
[ci:skip-build]: already built successfully in CI
2024-03-13 19:00:12 +01:00
Barnabás Czémán cabf69e2fb device-xiaomi-vince: add nt36xxx to initfs (MR 4913)
Add nt36xxx for initfs to support FDE.
Add missing rmi_core for rmi_i2c.
2024-03-13 18:50:01 +01:00
Barnabás Czémán 3ed0fc4c8c device-xiaomi-mido: add goodix_ts in initfs (MR 4913)
Add goodix_ts to initfs for support FDE.
2024-03-13 17:42:23 +00:00
Pablo Correa Gómez e42d9f7c45 main/postmarketos-ui-plasma-mobile: remove some packages from pmb_recommends (MR 4917)
They're not available in some architectures like x86 and armv7

[ci:skip-vercheck]
2024-03-13 00:10:38 +00:00
Pablo Correa Gómez 5d39c25f4d main/postmarketos-ui-plasma-mobile: replace angelfish for firefox (MR 4917)
Only temporarilly. This is in pmb_recommends, so does not need pkgver
bump. We can swap them back once it's built for armv7 in alpine, but
it's now blocking all MRs from merging.

[ci:skip-vercheck]
2024-03-13 00:10:34 +00:00
Oliver Smith 45acb50ffc cross/gcc-*: upgrade to 13.2.1_git20240309-r0 2024-03-12 22:44:04 +00:00
Sicelo A. Mhlongo 22dfc72571 linux-postmarketos-omap: upgrade to 6.8.0 (MR 4871)
[ci:skip-build]: already built successfully in CI
2024-03-11 14:29:23 -07:00
Sicelo A. Mhlongo c38e4643da linux-postmarketos-omap: fix version parsing logic (MR 4871)
Remove the need for an extra $_kernver variable when handling rc kernels
2024-03-11 14:29:23 -07:00
Sicelo A. Mhlongo cab1114ce2 linux-postmarketos-omap: fix n900 battery & charger (MR 4871)
Two changes are already upstream:
 * Battery: fix reporting of full state
     - https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/power/supply?id=8fbb11162504f2de167a8ccd2d2c55a849d2c5ea
 * Charger: report online state
     - https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/power/supply?h=next-20240301&id=9a451f1b028e116d037a93bf13eb8f8620994205

 * The other change (950mA charger current limit) will be included starting
   with 6.9-rc1. We previously had it in pmOS but it was dropped during the
   transition to a common OMAP kernel
    - https://lore.kernel.org/linux-devicetree/ZeBB1GYb31UAW886@tp440p.steeds.sam/T/#t
2024-03-11 14:29:23 -07:00
Anton Bambura 05fe8d4015 linux-postmarketos-mediatek-mt81xx: upgrade to 6.8_rc6_git20240228 (MR 4908)
[ci:skip-build]: already built successfully in CI
2024-03-11 13:57:36 -07:00
Arnav Singh 4d4dc1baea main/postmarketos-base-ui: fix tethering script when no UDC configured (MR 4907)
Reading the `ifname` of a gadget that has not been configured with a UDC
succeeds with the content `(unnamed net_device)` instead of failing.
So we need to explicitly check that a UDC was configured before we read
the interface name.

Ref: #2648
[ci:skip-build]: already built successfully in CI
2024-03-11 13:53:18 -07:00
Arnav Singh b0226839d4 main/postmarketos-initramfs: fix starting unudhcpd when no UDC configured (MR 4907)
Reading the `ifname` of a gadget that has not been configured with a UDC
succeeds with the content `(unnamed net_device)` instead of failing.
So we need to explicitly check that a UDC was configured before we read
the interface name.

Ref: #2648
2024-03-11 13:53:17 -07:00
Clayton Craft 2b02900d5b device-valve-jupiter: fix install, rootfs resize, etc (MR 4885)
A number of fixes:

- oem-amd-nonfree-fw no longer exists from c6306cb9b, and the fw here is
  pretty much required for the device to be useful so it's added to
  "depends=".

- drops the -vulkan subpackage since oem-amd-vulkan is doing the same
  thing.

- force rootfs partition resize on boot, else the rootfs is too small

- disable unudhcpd, usb networking isn't working, and we don't need to
  run it on any dedicated eth device

- use kernel with Valve's out of tree patches, to improve stability /
  usefulness of device

fixes #2630

[ci:skip-build] already built successfully in CI
2024-03-11 11:48:28 -07:00
Clayton Craft 46bf4695d7 linux-valve-jupiter: new aport (MR 4885)
There are some important platform drivers that Valve has not upstreamed,
that are basically required for this device to operate well. I picked
those patches from the kernel tree they released for 6.5, and rebased
them onto 6.8.
2024-03-11 10:30:25 -07:00
Henrik Grimler a2fef82d62 device-raspberry-pi3: move config.txt stuff to usercfg.txt (MR 4903)
Our config.txt is replaced (mv'ed to config.txt.old, maybe by alpine's
initramfs-generator?) and so our configuration does not have an
effect. Put our config stuff in usercfg.txt instead, which is included
by config.txt.

Fixes: https://gitlab.com/postmarketOS/pmaports/-/issues/2471
[ci:skip-build]: already built successfully in CI
2024-03-10 21:33:16 +02:00
Henrik Grimler 48a3705dfd device-raspberry-pi4: move config.txt stuff to usercfg.txt (MR 4903)
Our config.txt is replaced (mv'ed to config.txt.old, maybe by alpine's
initramfs-generator?) and so our configuration does not have an
effect. Put our config stuff in usercfg.txt instead, which is included
by config.txt.

Also update vmlinuz name, should be vmlinuz-rpi and not vmlinuz-rpi4.
2024-03-10 21:33:16 +02:00
Henrik Grimler 1c1b47d6e2 device-raspberry-pi4: depend on linux-rpi instead of linux-rpi4 (MR 4903)
Name of package in aports is linux-rpi these days. linux-rpi provides
linux-rpi4 for backward compatibility, so depending on linux-rpi4
still works, but lets use real package name so that it is easier to
find.
2024-03-10 21:33:16 +02:00
Caleb Connolly a65dc9b4c0 postmarketos-initramfs: bigger log image size (MR 4880)
Sometimes, there can be more than 10M of stuff collected for logging,
which breaks things.. bump the size to 32M which should still be small
enough for low end / old devices.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2024-03-10 16:10:13 +00:00
Devin Lin 8ee5516088 main/postmarketos-ui-plasma-mobile: update list of pre-installed apps (MR 4895)
[ci:skip-build]: already built successfully in CI
2024-03-10 16:06:24 +00:00
Stefan Hansson bf62d9a814 device-cutiepi-tablet: remove redundant symlinks (MR 4898)
These are now provided by linux-firmware-brcm, which subsequently causes
a conflict between these packages. Fix it by removing the symlinks from
the device package.

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/2616
[ci:skip-build]: already built successfully in CI
2024-03-10 15:37:21 +00:00
Barnabás Czémán 09d189f364 motorola-potter: use msm-firmware-loader & cleanups (MR 4870)
Changes:
- use msm-firmware-loader
- use soc-qcom-msm8953
- cleanup firmware package
- add tqftpserv as a dependency for modem
- add modules-initfs with panel and touchscreen modules

[ci:skip-build]: already built successfully in CI
2024-03-10 15:30:38 +00:00
Gianluca Boiano 54986eb5eb linux-postmarketos-qcom-msm8953: upgrade to 6.7.9-r0 (MR 4899)
[ci:skip-build]: already built successfully in CI
2024-03-10 11:18:18 +01:00
Gianluca Boiano 6171147de1 soc-qcom-msm8953: update ucm configurations (MR 4899)
- add huawei-milan config:
- add Lenovo ThinkSmart View (CD-18781) config
- add Motorola G5 Plus (potter) config
2024-03-10 11:18:18 +01:00
Gianluca Boiano 08e3a394c9 main/lk2nd-msm8953: upgrade to 0.3.7 (MR 4899) 2024-03-10 11:18:18 +01:00
Bobby The Builder f630e34b60 device-pine64-pinephonepro: microphone alsa tune (MR 4630)
Since kernel 6.5 (I believe) the ucm config
   need to be adjusted because the mic way too
   sensitive. The other party hears a freight
   train riding rails that are almost
   perpendicular ...

   This is an attempt to get the mic to work nicely.
[ci:skip-build]: already built successfully in CI
2024-03-09 20:58:52 +01:00
Adam Thiede ce473309ea linux-postmarketos-mediatek-mt8173: upgrade to 6.7.9 (MR 4896)
[ci:skip-build]: already built successfully in CI
2024-03-08 09:31:26 -06:00
Arnav Singh c8e4507e5d linux-postmarketos-allwinner: upgrade to 6.7.9_git20240306 (MR 4893)
[ci:skip-build]: already built successfully in CI
2024-03-06 17:11:42 -08:00
Luca Weiss d7c64500ee modem/tqftpserv: upgrade and add patches for rsize & seek option handling (MR 4747)
Makes modem work on fairphone-fp4 (sm6350/sm7225) and fairphone-fp5
(sc7280/qcm6490)

Patches are submitted upstream:
https://github.com/andersson/tqftpserv/pull/13
[ci:skip-build]: already built successfully in CI
2024-03-06 01:50:52 +01:00
Luca Weiss 7aca98d772 cross/musl-*: upgrade to 1.2.5-r0 (MR 4890)
[ci:skip-build]: already built successfully in CI
2024-03-05 20:40:55 +01:00
Luca Weiss c8e64981b7 cross/busybox-static-*: upgrade to 1.36.1-r20 (MR 4890) 2024-03-05 20:40:55 +01:00
hitechshell 8ab166acc0 main/postmarketos-base: change order of baud rate and tty name according to upstream (MR 4889)
[ci:skip-build]: already built successfully in CI
2024-03-05 20:36:39 +05:00
Anton Bambura 0446f43875 google-snow: include usb storage modules in initramfs (MR 4881) 2024-03-05 15:47:14 +01:00
Anton Bambura aef897f44a google-peach-pit: include usb storage modules in initramfs (MR 4881) 2024-03-05 15:47:14 +01:00
Anton Bambura c37536a7c9 google-peach-pi: include usb storage modules in initramfs (MR 4881) 2024-03-05 15:47:14 +01:00
Anton Bambura 3a7ff7125d google-spring: include usb storage modules in initramfs (MR 4881) 2024-03-05 15:47:14 +01:00
Arnav Singh 2eb1a1dc2f device-google-x64cros: remove nonfree-firmware subpackages (MR 4887)
They were used to install `oem-{amd,intel}-nonfree-firmware` but they had been
merged into `oem-{amd,intel}` by c6306cb9bb
2024-03-05 15:37:59 +01:00
Devin Lin cf2026196e postmarketos-base-ui-plasma: remove unnecessary override files, and move kscreenlocker override back to plasma-mobile (MR 4882)
A bunch of override files in postmarketos-base-ui-plasma seem to have come from the plasma-mobile ui package, which probably shouldn't be on desktop and bigscreen.

With Plasma 6, a lot of the overrides are now no longer necessary for Plasma Mobile.

Situation with each file:
- 000-gschema.override - This likely was for changing maliit themes and GTK title bar layout for Plasma Mobile, maliit theming was dropped (https://github.com/maliit/keyboard/pull/108), and title bar layout is now handled within Plasma Mobile
- kdeglobals - This was for setting the look-and-feel on Plasma Mobile and default browser, it's now handled within Plasma Mobile envmanager
- kwinrc - These were settings for disabling window decorations and setting the vkbd to maliit, which is now handled in Plasma Mobile envmanager
- kscreenlockerrc - This is to autolock the screen after login (tinydm autologs in), the file was for Plasma Mobile, I don't think we want it for Desktop since SDDM is used there
2024-03-04 22:59:59 +01:00
Raymond Hackley 135a2e4904 main/postmarketos-ui-plasma-{desktop,bigscreen}: drop duplicated dependencies (MR 4876)
Drop duplicated dependencies, which have been already included
in postmarketos-base-ui-plasma:

- dnsmasq
- elogind
- elogind-openrc
- polkit-kde-agent-1
[ci:skip-build]: already built successfully in CI
2024-03-04 22:41:42 +01:00
Henrik Grimler 7852e08148 device-samsung-i9100: use ttySAC2 for getty shell (MR 4861)
Unfortunately we cannot get to a getty shell unless we also run:
  setenv SWITCH_SEL 3
from the SBL shell.  Furthermore, actually getting kernel output
requires setting console=ttySAC2,115200.

SWITCH_SEL might be related to the "MUIC" of the device, but the
variable also controls whether or not it is possible to get serial
output from pads on main board, and seems weird that those pads are
affected by MUIC (unless pads are also behind MUIC, but seems like
that would be very annoying when developing the device)

See also initial MR where mainline support for i9100 was added, where
serial output is also discussed:
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1598#how-to-get-serial-output
[ci:skip-build]: already built successfully in CI
2024-03-04 21:04:45 +01:00
Stefan Hansson 494f42defb main/postmarketos-ui-plasma-bigscreen: disable (MR 4883)
All of Plasma Bigscreen was removed from aports[1]. It will return with
KDE 6.1, according to PureTryOut. But for now, disable this package by
making it build on no architectures so that CI works again.

 [1]: https://gitlab.alpinelinux.org/alpine/aports/-/commit/4e7fa26ea26a81c59ae26d3327bbe13838f19208

[ci:skip-vercheck]: Version does not need to change when changin arches.
2024-03-04 20:52:25 +01:00
Clayton Craft 936e121615 linux-lenovo-21bx: upgrade to 6.8-rc6 (MR 4877)
[ci:skip-build]: already built successfully in CI
2024-03-03 23:03:43 +01:00
Martin Jücker d1655e9fd6 samsung-p4note: enable audio (MR 4868)
add alsa-utils package and the corresponding ucm configuration to enable
audio on the p4note
2024-03-03 08:56:39 +00:00
Arnav Singh 5ad554d68e main/linux-postmarketos-allwinner: upgrade to 6.7.7 (MR 4878)
[ci:skip-build]: already built successfully in CI
2024-03-02 18:12:33 +01:00
cnnrduncan eb32f6c41b firmware-xiaomi-surya: install venus firmware (MR 4874) 2024-03-02 03:17:42 +00:00
armel.guido 1e7a8a1556 samsung-jxelte: display, USB network and zram fixes (MR 4852)
Added postmarketos-base-downstream and msm-fb-refresher to jxelte
dependencies.
    The modules_install and firmware_install targets install binary
files as the zram files among others.
    Added the 'mfc_fw.bin' binary to be installed from the firmware
package.
    The '0002-fix-usb-gadget-random-mac.patch' patch make it possible
to get ethernet over usb, and the 'disable-charging-bootmode.patch'
avoid error messages on dmesg about 'sec_battery_probe'.

[ci:skip-build]: already built successfully in CI
2024-03-01 12:29:42 +01:00
Veronika Bušová e891b5117a samsung-a32: new device (MR 4859)
[ci:skip-build]: already built successfully in CI
2024-03-01 12:22:51 +01:00
Adam Thiede ed1447cac9 firmware-powervr-gx6250: upgrade to 1.0.6503725 and take over maintainership (MR 4872)
[ci:skip-vercheck]: due to changed versioning in upstream
2024-02-29 10:07:41 -06:00
Adam Thiede b297dde28a linux-postmarketos-mediatek-mt8173: take over maintainership (MR 4872) 2024-02-28 14:46:34 -06:00
Adam Thiede f1b991b811 device-google-oak: take over maintainership (MR 4872) 2024-02-28 14:46:10 -06:00
Adam Thiede 30053c68f2 linux-postmarketos-mediatek-mt8173: upgrade to 6.7.6 (MR 4869)
[ci:skip-build]: already built successfully in CI
2024-02-28 19:34:22 +01:00
Stefan Hansson 79a047d5ae linux-purism-librem5: upgrade to 6.6.18pureos1 (MR 4866)
[ci:skip-build]: already built successfully in CI
2024-02-27 08:39:44 -08:00
Stefan Hansson fc9c3c1fef CI: don't check for executable files in temp (MR 4858)
Most things in temp come from Alpine's aports repository, which has
different rules and does not for example mandate that files are not
marked as executable. As such, let's not require packages in there
to conform to our rules.

[ci:skip-build]: already built successfully in CI
2024-02-27 08:24:53 -08:00
Stefan Hansson 20463394b0 CI: .ecrc: Exclude temp from check (MR 4858)
Most things in temp come from Alpine's aports repository, which has
different rules and does not for example mandate that all files use tabs
instead of spaces. As such, let's not require packages in there to
conform to our rules.
2024-02-27 08:24:53 -08:00
Arnav Singh a1c6859f16 main/linux-postmarketos-allwinner: upgrade to 6.7.6 (MR 4865)
[ci:skip-build]: already built successfully in CI
2024-02-27 10:44:40 +01:00
Stefan 9531e5fe54 samsung-zerofltexx: add missing dependency (MR 4851)
Fix incomplete commit ecc91098a9 that
was missing the dependency on
"postmarketos-base-downstream-disable-udev-v4l".

Fix MR !4768

[ci:skip-build]: already built successfully in CI
2024-02-26 11:17:55 +01:00
socksinspace c134e75336 lg-vee7e: fix red screen (MR 4863)
Fixes the red screen that plagued this port from the beginning.

[ci:skip-build]: already built successfully in CI
2024-02-26 11:06:37 +01:00
Henrik Grimler 39a2a1aa5c linux-postmarketos-exynos4: update to 6.7.6 (MR 4862)
Tested on m0, i9100 and odroid-u2.

[ci:skip-build]: already built successfully in CI
2024-02-26 10:57:43 +01:00
socksinspace a2a377334b lg-vee7e: fix build, and add a new shared patch (MR 4860)
This fixes building for linux-lg-vee7e, and adds a shared patch.

The shared patch replaces the "Solaris style flags" in piggy.gzip.S

[ci:skip-build]: already built successfully in CI
2024-02-25 18:55:42 +01:00
Anton Bambura e40e525ee7 linux-postmarketos-mediatek-mt81xx: fix nvme on tomato-r1 (MR 4856)
[ci:skip-build]: already built successfully in CI
2024-02-25 15:27:14 +01:00
Clayton Craft 50bde57187 device-lenovo-21bx: update kernel cmdline params for new kernel (MR 4854)
Taken from:
https://github.com/jhovold/linux/wiki/X13s#kernel-command-line

[ci:skip-build]: already built successfully in CI
2024-02-25 13:09:32 +02:00
Clayton Craft 9ac973f072 linux-lenovo-21bx: upgrade to 6.8_rc5 (MR 4854)
kconfig migrated, and enabled a driver for a usb uart/serial adapter
that I use sometimes for debugging other devices.
2024-02-25 13:09:32 +02:00
Nikita Travkin fa3a734875 device/msm8916*: Generate extlinux.conf for armv7 devices (MR 4855)
Commit fe54a7be4 ("device/msm8916*: Generate extlinux.conf (MR 4826)")
updated most users of msm8916 kernel to generate extlinux.conf.

Unfortunately the commands used to bulk-make changes only affected
aarch64 users of the kernel package and armv7 users were missed.

Apply the same changes to all armv7 users of msm8916 kernel too.

[ci:ignore-count]
2024-02-24 16:09:24 +05:00
Henrik Grimler 886878a3d4 u-boot-starqltechn: remove unused var depends_dev (MR 4853)
$depends_dev is most likely a left over from u-boot package in aports
repo.  Remove the variable from makedepends field as it is not used.
2024-02-23 12:21:47 +00:00
Henrik Grimler 39a0eb6c01 device-samsung-m3: set myself as maintainer (MR 4850)
m3 is very similar to m0, works well with mainline, and deserves a
maintainer and some love.

[ci:skip-build]: already built successfully in CI
2024-02-23 08:00:39 +01:00
Henrik Grimler 71c5523401 firmware-samsung-midas: add bl1 blob (MR 4850)
This p4412_s_f2bl1.bin is signed by Samsung and allegedly originates
from a vendor bsp package for one of the early odroid devices based on
exynos 4412.  Unlike most bl1 blobs this one does not check the
signature of bl2, allowing us to use open bootloaders like u-boot
instead of Samsung's proprietary sboot.
2024-02-23 08:00:36 +01:00
Natalia M. Sother fa34a43cfc xiaomi-merlin: new device (MR 4808)
[ci:skip-build]: already built successfully in CI
2024-02-22 21:24:08 +01:00
Clayton Craft 94de94e598 device-generic-x86_64: install all linux-firmware by default (MR 4794)
This installs all linux-firmware by default (using pmb_recommends) in a
way that allows for users to remove extraneous fw if they want.

The old `nonfree-firmware` packages have been dropped since pmbootstrap
no longer conditionally installs these.
[ci:skip-build]: already built successfully in CI
2024-02-21 22:54:41 -08:00
Clayton Craft c6306cb9bb community/oem-*: add firmware dependencies (MR 4794) 2024-02-21 22:54:41 -08:00
Stefan Hansson ec5b59eb77 CI: check for "before wpa_supplicant" in OpenRC service files (MR 4769)
See https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4564
2024-02-21 21:19:12 +01:00
M0Rf30 5fce743177 soc-qcom-msm8953: update ucm configurations (MR 4831)
- add VoiceMMode1 configuration

[ci:skip-build]: already built successfully in CI
2024-02-20 19:15:12 +01:00
M0Rf30 22ed4b23ef linux-postmarketos-qcom-msm8953: upgrade to 6.7.5-r0 (MR 4831) 2024-02-20 19:15:12 +01:00
Arnav Singh 005db0a024 main/linux-postmarketos-allwinner: update to v6.7.4 (MR 4847)
[ci:skip-build]: already built successfully in CI
2024-02-20 19:11:28 +01:00
Luca Weiss 1cbd8ecfae cross/grub-efi-x86: upgrade to 2.12-r2 (MR 4844)
[ci:skip-build]: already built successfully in CI
2024-02-19 16:24:37 -08:00
Anton Bambura c4f73b934b samsung-manta: mark as GPU accelerated (MR 4843)
See https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/61093

[ci:skip-build]: Already built successfully in CI.
2024-02-19 21:48:11 +01:00
Anton Bambura 1b585e3317 google-snow: enable GPU (MR 4843)
Enable GPU by removing all software rendering workarounds.

While at it also remove i3wm config, because it should be in ui package
if we want to make it default.

See https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/61093
2024-02-19 21:48:09 +01:00
Oliver Smith ff20316ff3 CI: allow firmware packages as deps of device pkgs (MR 4839)
We have decided to not use the non-free firmware subpackages anymore,
read the details in the blog post. Allow direct dependencies from the
device packages to the firmware packages.

Related: https://postmarketos.org/edge/2024/02/15/default-nonfree-fw/
[ci:skip-build]: already built successfully in CI
2024-02-19 21:35:33 +01:00
Anton Bambura bf944e6c06 linux-google-nyan: upgrade to 6.6.17 (MR 4840)
This switches from 6.1 LTS to 6.6 LTS.

Unfortunately, this version has regressions related to SPI (breaks keyboard)
and DRM (breaks display). Thus adding patches to revert these regressions.
Hopefully, these will be properly fixed until the next LTS release.

This also makes it pass community kconfig check again.

[ci:skip-build]: already built successfully in CI
2024-02-19 20:44:05 +02:00
Clayton Craft 6923219afc main/boot-deploy: upgrade to 0.14 (MR 4842)
Changelog:
        - Add support for Linux kernel cpu microcode loading on boot

[ci:skip-build] already built successfully in CI
2024-02-19 10:28:47 -08:00
Raymond Hackley 30d57cadf9 samsung-fortuna: drop subpackage phosh (MR 4841)
It's already well scaled in 1.5x on fortuna devices.
Drop unnecessary phoc.ini

[ci:skip-build]: Already built successfully in CI.
2024-02-19 18:02:08 +01:00
Stefan Hansson e3b8f656b4 CI: do ruff check when .gitlab-ci.yml changes (MR 4838)
To ensure that the check still works after .gitlab-ci.yml changes.
2024-02-18 19:39:20 +00:00
Stefan Hansson 8ff400c128 CI: remove unnecessary apk add (MR 4838)
This happens later in ruff.sh anyway.
2024-02-18 19:39:15 +00:00
Federico Amedeo Izzo 587b03ad73 clockworkpi-uconsole-cm4: new device (MR 4751)
[ci:skip-build]: already built successfully in CI
2024-02-18 19:08:43 +00:00
Arnav Singh 7fdf08a0ad main/postmarketos-base-ui: remove tinydm-x11 subpackage (MR 4837)
This reverts commit 518e62df34
"main/postmarketos-base-ui: add tinydm subpackage to pull in xinit (MR 4814)"

aports/tinydm now provides its own -x11 subpackage to do this since
https://gitlab.alpinelinux.org/alpine/aports/-/commit/7df6d02609d42617412267b2ea6609cc9b9e3ef3
2024-02-18 10:34:27 -08:00
Anton Bambura 2cee97a462 main/postmarketos-cros-common: remove newlines after comments (MR 4821) 2024-02-18 04:31:41 +02:00
Anton Bambura 9491099e73 main/postmarketos-cros-common: add -p to mkdir at sway subpackage (MR 4821) 2024-02-18 04:31:41 +02:00
Anton Bambura 9353628472 main/postmarketos-cros-common: add keyboard mapping (MR 4821) 2024-02-18 04:31:41 +02:00
Anton Bambura e2eb8f7927 main/cros-keyboard-map: new aport (MR 4821) 2024-02-18 04:31:40 +02:00
Clayton Craft 0aa02bb6f4 cross/gcc-*: upgrade to 13.2.1_git20231014-r1 2024-02-17 15:52:43 -08:00
Clayton Craft f3fc836ccc main/systemd-boot: enable armv7 and riscv64 support (MR 4830)
[ci:skip-build] already built successfully in CI
[ci:skip-vercheck]
2024-02-17 15:29:05 -08:00
Clayton Craft 5ef542d70e device-generic-x86_64: initfs: fix FDE w/ usb keyboard (MR 4829)
- Fixes FDE unlocking on devices with usb keyboards

- Also drops the i915 module from the initfs, this is specified by the
  oem-intel package now

[ci:skip-build] already built successfully in CI
2024-02-16 10:05:29 -08:00
Clayton Craft 65cc23c5b6 oem-intel: include i915 module in initramfs (MR 4829) 2024-02-16 10:05:29 -08:00
xtex 160c63f12c main/postmarketos-initramfs: allow redirect logs to pmsg device (MR 4800)
/dev/pmsg0 may be created by pstore driver. When it is available,
write logs into it so logs can be recovered through pstore after
a failed boot. This is useful for devices without console or hard
to get console.
2024-02-16 09:39:37 -08:00
Alexandre Messier 9298e1eb9f device-htc-m8: remove screen_[height,width] variables (MR 4799)
The "screen_height" and "screen_width" are deprecated, and can
safely be removed.

[ci:skip-build]: already built successfully in CI
2024-02-16 17:58:27 +01:00
Alexandre Messier b5a019bb00 device-htc-m8: specify 'system' as rootfs partition (MR 4799)
On HTC devices with S-On still active, the 'userdata' partition
is not writable. Change the default rootfs partition to the
'system' partition, which is writable.
2024-02-16 17:58:27 +01:00
Alexandre Messier 71015037ca device-htc-m8: remove unused entry 'external_storage_install' (MR 4799)
The device info entry 'external_storage_install' is not in use
anymore, remove it.
2024-02-16 17:58:27 +01:00
Eray Tutmaz 65ae048ae5 xiaomi-fire: new device (MR 4827)
Working: USB OTG, display, external/internal storage
2024-02-16 15:39:50 +01:00
Nikita Travkin fe54a7be49 device/msm8916*: Generate extlinux.conf (MR 4826)
Now as boot-deploy allows us to generate both boot.img and extlinux.conf
at the same time, enable generating the config for all msm8916 since it
will be used in the future lk2nd release. boot.img is still kept to keep
compatibility with current lk2nd releases and to allow system recovery
with fastboot when required.

[ci:skip-build] already built successfully in CI
[ci:ignore-count]
2024-02-15 11:34:55 -08:00
Eray Tutmaz 93f68f6253 samsung-j7y17lte: new device (MR 4502)
[ci:skip-build]: Already built successfully in CI.
2024-02-15 02:19:03 -08:00
armel.guido d33abab084 linux-samsung-jxelte: fix build removing Sun-Solaris style flag (MR 4825)
[ci:skip-build]: Already built successfully in CI.
2024-02-15 09:03:23 +01:00
Clayton Craft 4dac896160 pmos-base-ui: disable DNS filtering to work around dnsmasq hang (MR 4824)
Crappy workaround, it's better than having DNS broken...
See: https://gitlab.com/postmarketOS/pmaports/-/issues/2601

Also removed it from shellcheck, because SC doesn't like all of the
unused/unreachable things after the `exit 0`. This commit should be
reverted when the issue is actually fixed later...

[ci:skip-build] already built successfully in CI
2024-02-14 12:17:55 -08:00
Anton Bambura 70e5d9164b samsung-manta: replace openrc (MR 4823)
Closes #2600
2024-02-14 11:37:45 +02:00
Arnav Singh 5e7d14a297 main/device-pine64-pinephone: install nonfree-firmware subpackage via _pmb_recommends (MR 4822)
... instead of relying on pmb's interactive question that is being removed
in pmbootstrap!2255

[ci:skip-build]: already built successfully in CI
2024-02-13 23:07:16 +01:00
Jens Reidel bc32205ef8 xiaomi-davinci: new device (MR 4547)
Signed-off-by: Jens Reidel <adrian@travitia.xyz>

[ci:skip-build]: already built successfully in CI
2024-02-13 12:57:05 +01:00
Jens Reidel 2f24a3913e device-xiaomi-surya: various updates (MR 4547)
* Depend on the common soc-qcom-sm7150 package
* Set console=null in cmdline
* Add touchscreen firmware to initramfs
* Add required modules for touchscreen to modules-initfs
* Panel output works, drop phoc.ini
* Switch maintainer and co-maintainer
* Bump pkgrel to 1.2

Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-02-13 12:57:05 +01:00
Danila Tikhonov 6e3372541b firmware-xiaomi-surya: update firmware (MR 4547)
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
2024-02-13 12:57:05 +01:00
Danila TikhonovandJens Reidel f5a048c777 soc-qcom-sm7150: new aport (MR 4547)
Co-authored-by: Jens Reidel <adrian@travitia.xyz>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-02-13 12:57:05 +01:00
Clayton Craft 5013cca632 main/postmarketos-mkinitfs: upgrade to 2.3.1 (MR 4763)
[ci:skip-build] already built successfully in CI
2024-02-12 15:42:25 -08:00
Clayton Craft a0eabc6e59 main/boot-deploy: upgrade to 0.13 (MR 4763) 2024-02-12 15:42:21 -08:00
Arnav Singh 518e62df34 main/postmarketos-base-ui: add tinydm subpackage to pull in xinit (MR 4814)
tinydm uses startx for Xorg UIs, which is provided by the xinit package.
The xinit package used to be pulled in automatically by
the xorg-server package, but this stopped being the case with
https://gitlab.alpinelinux.org/alpine/aports/-/commit/1fd2d70696b88a0605ad5771137da148c998c192
2024-02-12 11:27:33 -08:00
Sicelo A. Mhlongo bdf9697cd9 ci: perform wallpaper checks on N900 too (MR 4810)
[ci:skip-build]: already built successfully in CI
2024-02-12 19:57:26 +01:00
Sicelo A. Mhlongo fb01ee1bf9 device-nokia-n900: drop custom wallpaper config (MR 4810)
Wallpaper is now configured globally from the main `postmarketos-ui-i3wm`
package.
2024-02-12 20:17:41 +02:00
Sicelo A. Mhlongo 90b0205a90 postmarketos-ui-i3wm: configure wallpaper globally (MR 4810)
Configure wallpaper in the UI package, to accommodate changing wallpapers per
release.

The wallpaper path is adjusted in `/usr/share/i3/config.pmos`.
2024-02-12 20:14:11 +02:00
Jens Reidel 46da640a74 linux-postmarketos-qcom-sm7150: upgrade to 6.7.4 (MR 4818)
Signed-off-by: Jens Reidel <adrian@travitia.xyz>

[ci:skip-build]: Already built successfully in CI.
2024-02-12 13:36:48 +01:00
Svyatoslav Ryhel 19641651a8 linux-postmarketos-grate: upgrade to 6.6.14-lts (MR 4819)
[ci:skip-build]: already built successfully in CI

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2024-02-12 10:42:17 +02:00
jane400 98af7cea03 main/postmarketos-base-ui: split usb-tethering into subpackage (MR 4788)
this allows to opt-out of usb-tethering on pmOS devices with
`apk add !postmarketos-base-ui-networkmanager-usb-tethering`
this is useful for developers with laptops on pmOS / dailydriving
those laptops on pmOS.

[ci:skip-build]: Already built successfully in CI.
2024-02-11 19:20:05 +01:00
Andras Sebok 0bc724b8ba samsung-j5y17lte: new device (MR 4797)
[ci:skip-build]: Already built successfully in CI.
2024-02-11 19:15:00 +01:00
WeirdTreeThing 497374e290 linux-postmarketos-mediatek-mt8183: upgrade to 6.6.16 (MR 4813)
[ci:skip-build]: already built successfully in CI
2024-02-11 19:21:08 +02:00
Arnav Singh b73b434423 main/firmware-pine64-rtl8723bt: compress with zstd (MR 4812)
This uses the same settings that aports/linux-firmware will use with
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/60282
2024-02-10 09:39:50 -08:00
Arnav Singh 9f06c2b7cc main/firmware-pine64-ov5640: compress with zstd (MR 4812)
This uses the same settings as aports/linux-firmware will use with
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/60282
2024-02-10 09:39:50 -08:00
Arnav Singh 79866613ee main/linux-postmarketos-allwinner: support zstd-compressed firmware (MR 4812)
This is in preparation for aports/linux-firmware switching to zstd compression
in https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/60282
2024-02-10 09:39:50 -08:00
Ferass El Hafidi 8ea01b4219 linux-postmarketos-amlogic: enable new community kconfig options (MR 4815)
Also enable CONFIG_FW_LOADER_COMPRESS_ZSTD for zstd compression of
firmware. See https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/60282

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>

[ci:skip-build]: Already built successfully in CI.
2024-02-10 15:51:18 +01:00
Luca Weiss 9bc99167c3 linux-postmarketos-qcom-msm8974: enable new community kconfig options (MR 4803) 2024-02-09 21:01:05 +01:00
Luca Weiss dc4582792a linux-postmarketos-qcom-sc7280: enable new community kconfig options (MR 4803) 2024-02-09 21:01:05 +01:00
Anton Bambura 9f2b1dad9f google-corsola: new device (MR 4806)
[ci:skip-build]: already built successfully in CI
2024-02-09 21:47:38 +02:00
Anton Bambura 6c2241d917 google-cherry: new device (MR 4806) 2024-02-09 21:47:37 +02:00
Anton Bambura c79b58d23c google-asurada: new device (MR 4806) 2024-02-09 21:47:37 +02:00
Anton Bambura 124fc54823 linux-postmarketos-mediatek-mt81xx: new aport (MR 4806) 2024-02-09 21:47:37 +02:00
Anton Bambura 667c5c12ac google-x64cros: add mmc_block module to initfs (MR 4811)
This is required for eMMC
2024-02-09 21:44:03 +02:00
Alexandre Marquet a0e9c2250e samsung-manta: move to community (MR 4783)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2024-02-09 18:33:03 +02:00
Alexandre Marquet b9536f2889 device-samsung-manta: use max77686 RTC (MR 4783)
hwclock default configuration is to use the S3C RTC, which is mapped to
/dev/rtc0. However, reading from this clock fails with the following
kernel message:
"s3c-rtc 101e0000.rtc: hctosys: unable to read the hardware clock"
and the time as boot is then always set to 1/1/1970.

This commit change the default RTC to the MAX77686 one (mapped to
/dev/rtc1), that does not suffer from this issue.

Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2024-02-09 18:33:03 +02:00
Alexandre Marquet 5cd58b8a6b device-samsung-manta: make wifi-macaddr.sh pass shellcheck (MR 4783)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2024-02-09 18:33:02 +02:00
Alexandre Marquet de63d0f060 firmware-samsung-manta: remove .post-install script (MR 4783)
The adjustments made by this script are unnecessary now that the device
runs a mainline kernel, and more importantly the brcmfmac driver (as
opposed to the bcmdhd driver used in the vendor kernel).

Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2024-02-09 18:33:02 +02:00
Anton Bambura 4d17876274 google-x64cros: add sdhci_pci to initfs modules (MR 4793)
This is required for eMMC on some devices
2024-02-09 11:59:01 +02:00
David Heidelberg bdea74f041 main/osk-sdl: drop (MR 4732)
Prequisite for dropping DirectFB support from SDL2 builds.

Signed-off-by: David Heidelberg <david@ixit.cz>
2024-02-07 21:44:46 +00:00
Clayton Craft 47a42c8f16 main/unl0kr: "provide" osk-sdl (MR 4732)
needed to replace osk-sdl with unl0kr on systems where osk-sdl is in the
apk world file
2024-02-07 21:44:19 +00:00
Caleb Connolly 070ae7566d main/postmarketos-initramfs: depend on mdev-conf (MR 4807)
we need this, i think it was pulled in via some dependency before.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2024-02-07 22:41:29 +01:00
Bart Ribbers faf91a17cc main/postmarketos-base-ui-plasma: explicitly depend on -openrc subpackages and remove tinydm-set-session (MR 4802) 2024-02-07 22:39:57 +01:00
Luca Weiss 7a0c56293b device-fairphone-fp5: remove Phosh clock tweaks (MR 4804)
The latest version of phosh / gmobile knows about the notch, so remove
the gtk hacks.
2024-02-07 11:25:06 +01:00
Luca Weiss e8fd6d6635 device/*: rename partition_system to partition_rootfs (MR 4159)
With the pmbootstrap change let's change the deviceinfo variable names
to the non-deprecated version.

[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2024-02-07 09:45:34 +00:00
Oliver Smith 1547999e8f main/postmarketos-ondev: remove (MR 4801)
Remove it, as we don't build images with this anymore. A new package
will be added for ondev2 when it is ready.

Related: https://postmarketos.org/blog/2023/12/18/v23.12-release/#notable-changes
         "Installation images have been removed."
2024-02-07 09:16:00 +00:00
Bart Ribbers 268b30a555 postmarketos-base-ui-plasma: install flatpak support by default (MR 4798) 2024-02-06 16:45:15 -08:00
Bart Ribbers 45535ce780 pmos-ui-plasma-{bigscreen,desktop,mobile}: refactor to use a common base package (MR 4798)
Inspired by postmarketos-base-ui-gnome and https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4756
2024-02-06 16:45:14 -08:00
Clayton Craft dc235b39a0 pmos-ui-gnome: add some useful pkgs to pmb_recmds (MR 4756) 2024-02-06 16:05:57 -08:00
Clayton Craft cc5959c275 pmos-base-ui-gnome: add gnome-maps to pmb_recmds (MR 4756) 2024-02-06 16:05:56 -08:00
Clayton Craft 2b928cfc1b pmos-base-ui-gnome: add flatpak to pmb_recommends (MR 4756) 2024-02-06 16:05:56 -08:00
Clayton Craft 75c679e139 pmos-base-ui: add flatpak subpkg to configure default repo (MR 4756) 2024-02-06 16:05:56 -08:00
Clayton Craft d680f3eb09 pmos-ui-{gnome,phosh}: Move shared pmb_rcmds to pmos-base-ui-gnome (MR 4756)
These apps are useful to have on the full GNOME desktop too, and this
removes the need to duplicate package lists across UI meta packages that
depend on the base gnome UI package.
2024-02-06 16:05:56 -08:00
Clayton Craft 6191625ab9 pmos-ui-{gnome,phosh}: move kgx/gnome-console to pmb_recmds (MR 4756)
The package name has changed so the new name, gnome-console, is used
instead.
2024-02-06 16:05:56 -08:00
Clayton Craft 87e9476dbd pmos-ui-{gnome,phosh}: move shared depends to pmos-base-ui-gnome (MR 4756) 2024-02-06 16:05:56 -08:00
Clayton Craft c251612916 pmaports.cfg: set pmbootstrap_min_version=2.2.0 (MR 4756)
This version includes fixes for pmb_recommends, to be used by package
changes in pmaports.
2024-02-06 16:05:55 -08:00
Clayton Craft d3ed7fe428 main/postmarketos-initramfs: don't fallback looking for /boot when given uuid or path (MR 4775)
fixes #2562

[ci:skip-build] already built successfully in CI
2024-02-06 14:24:35 -08:00
Clayton Craft 2adefeb206 main/postmarketos-initramfs: tweak msg when boot or root not found (4775) 2024-02-06 14:24:15 -08:00
Anton Bambura d2dec46275 main/postmarketos-initramfs: wait for boot partition (MR 4775)
Some devices take time to initialize storage, e.g. Qualcomm laptops
using ADSP need to load firmware firstly, and initramfs script does
not always manage to mount boot partition in time.

Unfortunately, there is no reliable way to reproduce the issue, but
this patch should fix cases like this.
2024-02-06 14:21:15 -08:00
Pablo Correa Gómez 4456938022 temp/gtk4.0: upgrade to 4.13.6 (MR 4773)
[ci:skip-build]: Already built successfully in CI.
2024-02-06 21:18:49 +01:00
Ferass El Hafidi 3db1f266d0 linux-postmarketos-amlogic: upgrade to 6.7.2 (MR 4765)
This commit also removes librecomputer-solitude/alta device tree patches
as they're now upstream.

Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
[ci:skip-build]: already built successfully in CI
2024-02-06 20:35:44 +01:00
Luca Weiss 53ca7c81f2 linux-purism-librem5: enable new community kconfig options (MR 4795)
[ci:skip-build] # too many packages
2024-02-06 18:53:59 +00:00
Luca Weiss 47c14fb985 linux-postmarketos-allwinner: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 74078919a7 linux-postmarketos-rockchip: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 76ebc6d9f7 linux-postmarketos-qcom-sm6350: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss e5c3b4bf8d linux-postmarketos-qcom-sdm845: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 42180738d3 linux-postmarketos-qcom-sc7180: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 786927289f linux-postmarketos-qcom-msm8996: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 6cfe80db0b linux-postmarketos-qcom-msm8953: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss ce4e4532f9 linux-postmarketos-qcom-msm8916: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 6c30cb42a4 linux-postmarketos-omap: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss dad552d553 linux-postmarketos-mediatek-mt8183: enable new community kconfig options (MR 4795) 2024-02-06 18:53:59 +00:00
Luca Weiss 065394f12b linux-postmarketos-mediatek-mt8173: enable new community kconfig options (MR 4795) 2024-02-06 18:53:58 +00:00
Luca Weiss 5f8ae165f8 linux-postmarketos-grate: enable new community kconfig options (MR 4795) 2024-02-06 18:53:58 +00:00
Luca Weiss b7427191bf linux-postmarketos-exynos5: enable new community kconfig options (MR 4795) 2024-02-06 18:53:58 +00:00
Luca Weiss ac788b8f3d linux-postmarketos-exynos4: enable new community kconfig options (MR 4795) 2024-02-06 18:53:58 +00:00
Luca Weiss 037d77840b linux-pine64-pinephonepro: enable new community kconfig options (MR 4795) 2024-02-06 18:53:58 +00:00
Luca Weiss 25bab38b7f linux-google-veyron: enable new community kconfig options (MR 4795) 2024-02-06 18:53:54 +00:00
Arnav Singh 03940b180a main/crust: remove (MR 4785)
The community/crust package in aports is newer, and
its crust-pinephone subpackage is equivalent to this one.
2024-02-06 08:45:17 -08:00
Arnav Singh a12bbf1057 main/u-boot-pinephone: fix build to work with crust from aports (MR 4785)
aports' community/crust package generates a crust-pinephone subpackage
that is equivalent to pmaports' current main/crust package, that is,
the crust-pinephone subpackage contains the SCP firmware binary needed for
the PinePhone. The aports crust package itself only contains a LICENSE file.
Furthermore, aports' package updated to v0.6 recently, so apk would pick it
over pmaports' v0.5 package, which would cause the build to fail because of
the missing SCP firmware binary.

This change fixes the build of u-boot-pinephone by switching the dependency to
the aports crust-pinephone package.
2024-02-06 08:44:31 -08:00
Oliver Smith ee4e52206a oem-amd: firmware files + modules -> initfs-extra (MR 4796)
Move the files to initramfs-extra, so the initramfs is not too big for
ChromeOS devices. I had initially added this to initramfs, because
otherwise the graphics on my Thinkpad L14 would not come up. But I
verified that it also works with having it in initramfs-extra.

Fixes: #2578
2024-02-06 15:46:59 +00:00
Luca Weiss 5df7206d7a oem-{amd,intel}: move to community (MR 4791)
There's now packages in community depending on this. Move it.

[ci:skip-build]: already built successfully in CI
2024-02-06 02:01:18 +01:00
Luca Weiss 4321701042 device-google-x64cros: add nonfree-firmware subpackages (MR 4791)
This is required by oem-amd/oem-intel dependencies.
2024-02-06 01:52:38 +01:00
Luca Weiss 91475c1230 device-qemu-amd64: move kernel-none subpackage as last (MR 4790)
Currently the none kernel gets selected as default, move it to last so
that kernel-lts gets selected by default.

[ci:skip-vercheck]
2024-02-06 01:02:25 +01:00
Oliver Smith 3661a84936 cross/musl: upgrade to 1.2.4_git20230717-r6 2024-02-05 23:27:09 +00:00
Richard Acayan f43d13e14b testing/linux-postmarketos-qcom-sdm670: upgrade to v6.7.2 (MR 4777) 2024-02-05 23:09:29 +01:00
Nikita Travkin e5bfcbba1a soc-qcom-msm8916: update UCM configurations (MR 4787)
- Update mic jack name to the upstream one

[ci:skip-build]: Already built successfully in CI.
2024-02-05 15:27:54 +01:00
Arnav Singh e0dbd3c78d testing/u-boot-*: remove spurious crust dependency from AMLogic devices (MR 4786)
crust has no use for non-Allwinner devices.
2024-02-04 00:02:29 -08:00
Anton Bambura 16e1b20d8a device-google-x64cros: use oem-intel and oem-amd packages (MR 4779)
Inspired by generic-x86_64

Also, add myself as co-maintainer
2024-02-02 20:13:06 +01:00
adamthiede 8c5e77ae65 linux-postmarketos-mediatek-mt8173: upgrade to 6.7.3 (MR 4784)
[ci:skip-build] Built fine on Gitlab CI already
2024-02-02 21:05:10 +03:00
Raymond Hackley 3bbb83f3cc samsung-a6plte: fix panel display (MR 4562) 2024-02-02 16:40:33 +01:00
Vishal Balasubramanian 696e202443 samsung-degaswifi: new device (MR 4767)
[ci:skip-build]: already built successfully in CI
2024-02-02 13:24:24 +01:00
Luca Weiss cab106e84e linux-postmarketos-qcom-msm8226: upgrade to 6.7.2 (MR 4781)
Fix USB gadget regression of 6.7.0 by merging -stable.

[ci:skip-build]: already built successfully in CI
2024-02-01 18:34:54 +01:00
M0Rf30 453e1e28fa linux-postmarketos-qcom-msm8953: upgrade to 6.7.2-r0 (MR 4764)
[ci:skip-build]: already built successfully in CI
2024-02-01 17:52:10 +01:00
Alexandre Marquet 136e5b89f3 samsung-manta: add co-maintainer (MR 4782)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>

[ci:skip-build]: Already built successfully in CI.
2024-02-01 13:54:07 +01:00
Alexandre Marquet 91d7f6f41d samsung-manta: remove unnecessary modules-load.conf (MR 4782)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2024-02-01 13:42:47 +01:00
Ferass El Hafidi ad7eb63663 treewide: replace f_'s personal email with his @postmarketos.org one (MR 4778)
[ci:skip-vercheck]

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
2024-01-31 18:58:26 +01:00
Anton Bambura 72a051e125 samsung-manta: add initramfs modules (MR 4780)
This is required for splash screen and FDE

[ci:skip-vercheck]
2024-01-31 20:38:44 +03:00
Anton Bambura 9c12b1bcb1 samsung-manta: enable automatic kernel upgrades (MR 4780) 2024-01-31 20:38:41 +03:00
Anton Bambura fbd73fcec1 samsung-manta: remove irrelevant deviceinfo variables (MR 4780) 2024-01-31 20:38:37 +03:00
Anton Bambura b24616a252 samsung-manta: take maintainership (MR 4780)
This device has no maintainers specified, and, though I did not port this
device, I have one and I maintain linux-postmarketos-exynos5, so it is
probably okay for me to take maintainership of it.
2024-01-31 20:38:30 +03:00
Clayton Craft 136baec915 device-valve-jupiter: depend on oem-amd (MR 4728)
[ci:skip-build] already built successfully in CI
2024-01-30 12:47:18 -08:00
Clayton Craft c6b6bd45ef device-generic-x86_64: add non-free fw subpackage (MR 4728) 2024-01-30 12:47:17 -08:00
Clayton Craft feb09aa916 oem-intel: add non-free fw subpackage (MR 4728) 2024-01-30 12:47:17 -08:00
Clayton Craft e988ace3cb oem-amd: add non-free fw subpackage (MR 4728) 2024-01-30 12:47:17 -08:00
Henrik Grimler 5e0e66568f device-samsung-chagallwifi: set myself as sole maintainer (MR 4721)
David has been inactive for quite a while.

[ci:skip-build] already built successfully in CI
[ci:skip-vercheck]
2024-01-30 12:43:10 -08:00
Henrik Grimler f66cdf089c device-samsung-klimtlte: update kernel statuses (MR 4721)
Wifi is broken in downstream, but works in mainline.
2024-01-30 12:26:22 -08:00
Henrik Grimler f21c045b68 device-samsung-chagallwifi: update kernel statuses (MR 4721)
Wifi is broken in downstream, but works in mainline.
2024-01-30 12:26:22 -08:00
Henrik Grimler fe0edb541b linux-samsung-klimtlte: add patches to fix compilation issues (MR 4721)
Required after some somewhat recent gcc update.
2024-01-30 12:26:22 -08:00
Henrik Grimler 20e286aa77 linux-samsung-chagallwifi: add patches to fix compilation issues (MR 4721)
Required after some somewhat recent gcc update.
2024-01-30 12:26:21 -08:00
Henrik Grimler 89d074c762 samsung-klimtlte: enable FIMC IS with downstream kernel (MR 4721)
As for several other exynos devices we need to disable the
video4linux's udev rule OR disable FIMC IS and patch kernel to fix
build error without FIMC IS.

Add dependency on postmarketos-base-downstream-disable-udev-v4l to
override the v4l rule with symlink to /dev/null.  We can then drop
FIMC IS patch and keep kernel config more similar to original one.
2024-01-30 12:26:21 -08:00
Henrik Grimler 7d3a0bb977 samsung-chagallwifi: enable FIMC IS with downstream kernel (MR 4721)
As for several other exynos devices we need to disable the
video4linux's udev rule OR disable FIMC IS and patch kernel to fix
build error without FIMC IS.

Add dependency on postmarketos-base-downstream-disable-udev-v4l to
override the v4l rule with symlink to /dev/null.  We can then drop
FIMC IS patch and keep kernel config more similar to original one.
2024-01-30 12:26:21 -08:00
Henrik Grimler 6b48aee5cd firmware-samsung-klimt: add wifi firmware for mainline (MR 4721)
We take the nvram file from downstream vendor repo, and depend on
linux-firmware-brcm for the brcm blob.
2024-01-30 12:26:21 -08:00
Henrik Grimler bc15225b03 firmware-samsung-klimt: switch to latest commit (MR 4721) 2024-01-30 12:26:21 -08:00
Henrik Grimler 7af2394e0c samsung-klimtlte: select firmware pkg variant in device package (MR 4721)
We want both klimtwifi and klimtlte to be able to depend on
firmware-samsung-klimt, for both their downstream and mainline kernel
variants.

Previously we used install_if like:
install_if="device-samsung-klimtlte-kernel-mainline" which will only
work for klimtlte and not klimtwifi.  Instead we add two nonfree
subpackages to the device packages that install_if's depending on
kernel choice.
2024-01-30 12:26:20 -08:00
Henrik Grimler a078aa3c62 firmware-samsung-chagall: add wifi firmware for mainline (MR 4721)
We take the nvram file from downstream vendor repo, and depend on
linux-firmware-brcm for the brcm blob.
2024-01-30 12:26:20 -08:00
Henrik Grimler a21a732983 firmware-samsung-chagall: add more downstream firmware blobs (MR 4721)
Add more wifi blobs, which might be used by different device models,

Also switch to another, better maintained, source repo.
2024-01-30 12:26:20 -08:00
Henrik Grimler 654b9dc36e samsung-chagallwifi: select firmware pkg variant in device package (MR 4721)
We want both chagallwifi and chagalllte to be able to depend on
firmware-samsung-chagall, for both their downstream and mainline
kernel variants.

Previously we used install_if like:
install_if="device-samsung-chagallwifi-kernel-mainline"
which will only work for chagallwifi and not chagalllte.  Instead we
add two nonfree subpackages to the device packages that install_if's
depending on kernel choice.
2024-01-30 12:26:20 -08:00
Henrik Grimler 4c89adb645 firmware-samsung-chagall: depend on firmware-samsung-exynos5420.. (MR 4721)
-downstream, when using downstream kernel.
2024-01-30 12:26:20 -08:00
Henrik Grimler f3f459db51 firmware-samsung-klimt: dep on firmware-samsung-exynos5420-.. (MR 4721)
-downstream, when using downstream kernel.
2024-01-30 12:26:20 -08:00
Henrik Grimler 124b9d677e firmware-samsung-exynos5420-downstream: add package (MR 4721)
Provides firmware files that are common for all Samsung devices based
on Exynos 5420 when using Samsung's vendor kernel.

For now the package contains mfc, sound and bluetooth firmware. Sound
and bluetooth do not work at the moment, but lets package the required
files anyways.
2024-01-30 12:26:20 -08:00
Arnav Singh 05a3c22d81 main/linux-postmarketos-allwinner: update to v6.7.2 (MR 4770)
Patch `0015-usb-gadget-u_ether-Re-attach-netif-device-to-mirror.patch` is
now in upstream.

[ci:skip-build]: already built successfully in CI
2024-01-29 21:22:03 +01:00
Anton Bambura 532f3962a5 temp/xf86-video-opentegra: remove (MR 4771) 2024-01-29 13:39:03 +01:00
Anton Bambura 9a5f7177b1 main/asus-transformer-blobtools: remove (MR 4772)
Devices that had been using it currently require users to install
U-Boot, so this package is not used and not needed anymore
2024-01-29 11:18:48 +01:00
Henrik Grimler 5e7ab9f35f device-lg-mako: avoid overriding udev v4l rule in /etc (MR 4768)
Postmarketos-base-downstream-disable-udev-v4l symlinks
/lib/udev/rules.d/60-persistent-v4l.rules to /dev/null, so depend on
this package instead.  The dependency is added to downstream kernel
subpackage, as issue *should* only affect downstream kernel.

[ci:ignore-count]: many device packages updated at the same time
[ci:skip-build]: already built successfully in CI
2024-01-28 22:15:12 +01:00
Henrik Grimler 60c8f7a54f device-sony-yuga: avoid overriding udev v4l rule in /etc (MR 4768)
Postmarketos-base-downstream-disable-udev-v4l symlinks
/lib/udev/rules.d/60-persistent-v4l.rules to /dev/null, so depend on
this package instead.  The dependency is added to downstream kernel
subpackage, as issue *should* only affect downstream kernel.
2024-01-28 22:15:12 +01:00
Henrik Grimler 02de87f414 device-sony-nicki: avoid overriding udev v4l rule in /etc (MR 4768)
Postmarketos-base-downstream-disable-udev-v4l symlinks
/lib/udev/rules.d/60-persistent-v4l.rules to /dev/null, so depend on
this package instead.  The dependency is added to downstream kernel
subpackage, as issue *should* only affect downstream kernel.
2024-01-28 22:15:11 +01:00
Henrik Grimler 82591a8c25 device-jolla-sbj: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 93789b8362 device-htc-k2ul: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 10280b22e2 device-htc-protou: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler b9c053c51e device-motorola-titan: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 55f0db994b device-motorola-thea: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler dd04440b64 device-samsung-gts210lte: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 4e9a885f22 device-xiaomi-santoni: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 6fde810437 device-samsung-s3ve3g: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler c63c313996 device-samsung-kminilte: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler ecc91098a9 device-samsung-zerofltexx: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler f278d1f50f device-samsung-zeroltexx: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 11b6021a21 device-samsung-v1awifi: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 4a1db82b65 device-sharp-shl22: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:11 +01:00
Henrik Grimler 4face185f1 device-samsung-j7eltetmo: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:10 +01:00
Henrik Grimler bc573e7d96 device-samsung-treltexx: avoid overriding udev v4l rule in /etc (MR 4768)
Depend on postmarketos-base-downstream-disable-udev-v4l instead, which
symlinks /lib/udev/rules.d/60-persistent-v4l.rules to /dev/null.
2024-01-28 22:15:10 +01:00
Henrik Grimler 43f788fa2f main/postmarketos-base-downstream: add disable-udev-v4l subpackage (MR 4768)
Which replaces /lib/udev/rules.d/60-persistent-v4l.rules (from the
eudev package) with a symlink to /dev/null.  Around 20 devices need
this to fix a kernel panic with downstream kernel when starting udev.
Issue happens due to that camera firmware is missing and/or not loaded
properly.
2024-01-28 22:15:10 +01:00
Oliver Smith e08332313d channels.cfg: mark v23.06 as unsupported 2024-01-28 19:06:21 +00:00
Oliver Smith 7b8f969222 cross/grub-efi-x86: upgrade to 2.12-r1 2024-01-28 18:55:30 +00:00
Oliver Smith 8e8c795b79 cross/busybox-static-*: upgrade to 1.36.1-r19 2024-01-28 18:55:23 +00:00
Willow Barraco f0a67a15e3 main/postmarketos-ui-sxmo-de-*: change maintainership (MR 4762)
[ci:skip-build]: already built successfully in CI
2024-01-26 13:47:53 +01:00
Luca Weiss 9c79574bd9 device-fairphone-fp5: add ALSA UCM for DisplayPort audio (MR 4761)
Since audio over DisplayPort (over USB-C) is supported in the kernel,
add a UCM config to complete support.

To be clear, this might not work out of the box yet, I hope it'll start
working better when another audio route (speaker or microphone) is
working from kernel side.

[ci:skip-build]: Already built successfully in CI.
2024-01-26 12:28:31 +01:00
Luca Weiss a794a8481c device-fairphone-fp5: set gpu_accelerated flag, add uim-selection dep (MR 4761)
Since the GPU is supported since a while enable
deviceinfo_gpu_accelerated to let pmbootstrap show UIs like phosh.

Also with modem working with patched tqftpserv, we need the
msm-modem-uim-selection dependency, so add that as well.
2024-01-26 12:28:30 +01:00
Luca Weiss 10545000d4 linux-postmarketos-qcom-sc7280: enable useful kernel config options (MR 4761)
* BINFMT_MISC
* CIFS
* LEDS_TRIGGER_PATTERN
* NETFILTER_XT_MATCH_STATISTIC
* PM_WAKELOCKS
* SND_USB_AUDIO
* UHID
* USB_CONFIGFS_NCM
2024-01-26 12:28:30 +01:00
André Apitzsch f8da0d6d3b device-motorola-peregrine: add mainline kernel configuration (MR 4753)
[ci:skip-build]: Already built successfully in CI.
2024-01-26 12:25:38 +01:00
Luca Weiss eb0ff6b46c device-htc-memul: add GPU support, ADSP & modem firmware (MR 4745)
We also kind of drop support for downstream, if somebody's interested in
this please revive it.

[ci:skip-build]: already built successfully in CI
2024-01-26 10:11:50 +00:00
Luca Weiss 0e7f627641 firmware-htc-memul: move firmware to device-specific subdirectory (MR 4745)
In mainline Linux these paths will be used, move the firmware packaging
there. By doing this we drop downstream support. Support could be
restored by adding some symlinks in a downstream-specific package if
required.

We also start squashing the firmware into .mbn format with pil-squasher.

For now we keep the files in _wififiles in their old location, I'm not
sure yet where they need to go since I didn't have wcnss working on
mainline yet.
2024-01-26 10:11:50 +00:00
Luca Weiss 28d7319042 linux-postmarketos-qcom-msm8226: upgrade to 6.7.0 (MR 4745)
Manual config changes:
* QCOM_BAM_DMUX=y
2024-01-26 10:11:50 +00:00
Stefan Hansson d6cfda9df9 linux-purism-librem5: upgrade to 6.6.13pureos1 (MR 4759)
[ci:skip-build]: already built successfully in CI
2024-01-26 01:29:55 +01:00
Clayton Craft f0ab570655 temp/gtk4.0: workaround for mesa-asahi being used (MR 4760)
Fixes: issue 2561
[ci:skip-build]: already built successfully in CI
2024-01-25 22:46:32 +00:00
Teemu Ikonen b5bb90e3d3 temp/gtk4.0: upgrade to 4.12.5 (MR 4754)
Remove post-install etc. scripts.

[ci:skip-build]: Already built successfully in CI.
2024-01-24 17:06:24 +01:00
Arnav Singh ffd803d1dd main/postmarketos-base-ui: read USB network interface name from configfs gadget (MR 4750)
The configfs gadget can provide the actual interface name, which may not be
the default "usb0" since another gadget driver might have claimed "usb0".
This code is based on the `start_unudhcpd` function in `init_functions.sh`

[ci:skip-build] already built successfully in CI
2024-01-23 12:21:24 -08:00
Arnav Singh 2a0fab1a77 main/postmarketos-initramfs: support reading USB network UDC name from deviceinfo (MR 4750)
Before this change the script assumed that the device has only one UDC.
However it is possible for a device to have multiple UDCs, in which case
the deviceinfo is the appropriate place to specify which one should be used.
This change adds an optional deviceinfo variable `deviceinfo_usb_network_udc`
to specify the UDC that should be used.

Also, before this change the script assumed the USB network interface name is
"usb0". But other gadget drivers like `g_cdc` can claim USB interfaces
before the initramfs script gets around to creating one for USB networking,
so the interface might be "usb1" or something else. The configfs gadget itself
can provide the actual interface name, so this change makes the script
use that.
2024-01-23 12:21:24 -08:00
Pablo Correa Gómez cf69326222 device/*: rebuild all devices (MR 4551)
[ci:ignore-count]
2024-01-22 19:32:30 +01:00
Pablo Correa Gómez 0a95f6ac31 main/devicepkg-dev: machine-info: remove manufacturer from HARDWARE_MODEL (MR 4551) 2024-01-22 19:32:30 +01:00
Luca Weiss 439227770f linux-postmarketos-qcom-sm6350: enable CONFIG_RMNET (MR 4749)
Required for getting mobile data up, otherwise ModemManager fails to
connect with:

  Status     |                connected: no
             |    connection error name: org.freedesktop.ModemManager1.Error.MobileEquipment.Unknown
             | connection error message: failed to create net link for device: failed to add link for device: Could not allocate link: Failed to add link with mux id 1: Netlink message with transaction 27 failed
[ci:skip-build]: already built successfully in CI
2024-01-21 19:10:06 +01:00
Luca Weiss 0274ee9ea0 linux-postmarketos-qcom-sc7280: enable CONFIG_RMNET (MR 4749)
Required for getting mobile data up, otherwise ModemManager fails to
connect with:

  Status     |                connected: no
             |    connection error name: org.freedesktop.ModemManager1.Error.MobileEquipment.Unknown
             | connection error message: failed to create net link for device: failed to add link for device: Could not allocate link: Failed to add link with mux id 1: Netlink message with transaction 27 failed
2024-01-21 18:02:48 +01:00
Duje Mihanović 90fe9b508a linux-samsung-coreprimevelte: upgrade to 6.7.0 (MR 4746)
Rewritten PMIC driver, power key and vibration support are also added in
this upgrade.
2024-01-21 13:17:46 +01:00
M0Rf30 badfe24eb6 linux-postmarketos-qcom-msm8953: upgrade to 6.6.12-r0 (MR 4744)
[ci:skip-build]: already built successfully in CI
2024-01-19 22:38:55 +01:00
Clayton Craft bf26469fd7 main/postmarketos-mkinitfs: add /lib/firmware to list of trigger dirs (MR 4742)
In many cases, when fw is installed in /lib/firmware, some of it ends up
in the initramfs. In those situations, mkinitfs should run so that the
initramfs gets the latest fw. This will result in mkinitfs possibly
running in cases where it doesn't matter (i.e. device has fw in
/lib/firmware but none is used in the initramfs), but I think the
trade-off is worth it.

This also breaks the triggers= line into multiple lines so that it's
easier to review/maintain. We can't prepend whitespace on these lines
since the apkbuild parser expects dirs to be separated by ":"
2024-01-19 18:51:50 +01:00
Stefan Hansson 73b1a493b9 ci: replace Flake8 with Ruff (MR 4741)
See similar patch in pmbootstrap for rationale:
https://gitlab.com/postmarketOS/pmbootstrap/-/commit/27618d5ffdb0b6cbf9471dc01a2ed14e1655ced0

W504 ignore is removed as the rule does not exist in Ruff. But, since it
was ignored anyway, this does not matter.
2024-01-19 18:06:09 +01:00
Stefan Hansson 57aa208435 ci: switch Alpine from latest stable to Edge (MR 4741)
We use this in pmbootstrap, and it is currently necessary to use Ruff.
Issue about moving Ruff to community:
https://gitlab.alpinelinux.org/alpine/aports/-/issues/15693
2024-01-19 18:05:58 +01:00
Clayton Craft b5b7983ade ci/grep.sh: always run all tests (MR 4740)
fixes #2543
2024-01-19 17:02:21 +01:00
Richard Acayan 4472e41952 google-sargo: drop msm-firmware-loader dependency (MR 4730)
Previously, the modem firmware would be loaded from the modem partition
using this firmware loader. As of the 6.5.4 SDM670 kernel upgrade, the
firmware is installed and loaded from the firmware package. Drop the
dependency on the msm-firmware-loader, which is now unused.
2024-01-19 16:43:46 +03:00
Clayton Craft a19105ce45 device-lenovo-21bx: add 'quiet' kernel cmdline option (MR 4739)
hides some early EFI-related kernel messages from the console
2024-01-19 12:38:50 +02:00
Clayton Craft 2ad0d8c4dc linux-lenovo-21bx: use zinstall (MR 4739) 2024-01-19 12:38:50 +02:00
Mohd Bilal 7a68a913e1 samsung-j6lte: new device (MR 4658)
[ci:skip-build]: Already built successfully in CI.
2024-01-18 23:25:52 +01:00
Stefan Hansson d8b97a440f CI: check for wallpaper being set in device packages (MR 4738)
We do not want this going forward as we will be changing the wallpaper
on a bi-yearly basis and we do not want to have perform shotgun surgery
every time we do so.

[ci:skip-build]: already built successfully in CI
2024-01-18 22:39:49 +01:00
WeirdTreeThing 1f86677848 alsa-ucm-conf-google-kukui: improvements for mt8183 ucm (MR 4733)
Krane doesn't have a headphone jack, which caused audio server issues
for me. Add a check to only enable the headphone and headset mic device
on non-Krane boards. Also improve the formatting and remove
ChromeOS-specifc options.

[ci:skip-build]: already built successfully in CI
2024-01-18 19:21:25 +01:00
QC8086 def7d29774 pine64-pinebookpro: change maintainership (MR 4736)
I would like to maintain this device to keep it in community.

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2024-01-18 19:18:19 +01:00
Nia Espera ee009c6305 device-oneplus-lemonade: remove lemonadep bits and stop using empty dtbo (MR 4729)
[ci:skip-build]: already built successfully in CI
2024-01-18 19:06:44 +01:00
Nia Espera e3fd584570 devices/testing: add device-oneplus-lemonadep (MR 4729) 2024-01-18 19:06:44 +01:00
Nia Espera b76664e25b linux-postmarketos-qcom-sm8350: upgrade to v6.7 (MR 4729)
Also change source to point to shared sm8350 mainline kernel fork
2024-01-18 19:06:44 +01:00
Nia Espera b7361b32b6 soc-qcom-sm8350: add necessary packages as depends (MR 4729) 2024-01-18 19:06:37 +01:00
Nia Espera 34eedabcf4 firmware-oneplus-lemonade: add more firmware (MR 4729) 2024-01-18 19:06:04 +01:00
Clayton Craft 25557afcb5 linux-lenovo-21bx: build specific commit, not branch archive (MR 4735)
I was building a branch archive previously, which meant that rebuilding
would fail if someone pushed to the branch upstream (the archive
checksum would change)... so I've reverted back to building from a
specific commit for now.

pkgrel was increased because this commit includes a couple of
audio-related patches that weren't included in the previous packaging of
the 6.7 branch.

[ci:skip-build] Already build-tested on Gitlab CI
2024-01-18 08:34:01 +03:00
Stefan Hansson 9ef583c26a linux-postmarketos-stericsson: upgrade to 6.7.0 (MR 4443)
[ci:skip-build]: already built successfully in CI
2024-01-17 00:31:44 +01:00
mulingLHY 1ad76090c0 linux-xiaomi-kenzo: fix kernel-compile error by remove Sun-Solaris style flag (MR 4715)
[ci:skip-build]: Already built successfully in CI.
2024-01-15 10:11:51 +01:00
Alexey Minnekhanov df6a692c8f xiaomi-clover: add Mi Pad 4 Plus variation (MR 4702)
Similarly to how it was done for xiaomi-beyllium with varying
display panels, add kernel variant for clover-plus.
Mi Pad 4 Plus is very very similar to regular Mi Pad 4,
but it has different panel and different touchscreen.
Therefore it uses different device tree in kernel - and it
is the only changed line in deviceinfo file.

Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>

[ci:skip-build]: Already built successfully in CI.
2024-01-15 10:04:43 +01:00
Alexey Minnekhanov 99e263a632 linux-postmarketos-qcom-sdm660: upgrade to 6.7.0 (MR 4702)
New devices:
* Xiaomi Mi Pad 4 Plus
  - simpledrm framebuffer
  - touchscreen
  - battery (fuelgauge, charger)
  - radios (modem, Wi-Fi, Bluetooth)

Changes to existing devices:
 * lavender:
   - radios (modem, Wi-Fi, Bluetooth)
   - battery (fuelgauge, charger)
 * tulip:
   - touchscreen
   - fixed vol-down button
   - Bluetooth

Fixes: https://gitlab.com/postmarketOS/pmaports/-/issues/1580
Fixes: https://gitlab.com/postmarketOS/pmaports/-/issues/2501

Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
2024-01-15 10:04:41 +01:00
Clayton Craft 74f7f0bc37 device-lenovo-21bx: add dependencies for enabling wwan / mobile data (MR 4718)
In order to make it work properly, the fcc unlock script from MM should
also be enabled... This info will be added to the device's wiki page for
now since upstream MM discourages distros from enabling these unlock
scripts by default...

fixes https://gitlab.com/postmarketOS/pmaports/-/issues/2489

[ci:skip-build]: Already built successfully in CI.
2024-01-15 10:01:40 +01:00
M0Rf30 f18fa3eabc linux-postmarketos-qcom-msm8953: enable USB sound card module (MR 4724)
Closes #2531

[ci:skip-build]: Already built successfully in CI.
2024-01-15 09:40:37 +01:00
Oliver Smith f6b8f9cf82 oem-amd: put amdgpu module + fw into initramfs (MR 4723)
Add the amdgpu kernel module and its firmware, as it is required for
e.g. the Thinkpad L14 to have any graphical output on boot.
2024-01-14 19:32:22 +00:00
Oliver Smith 44989cfce7 device-generic-x86_64: modules-initfs: add nvme (MR 4723) 2024-01-14 19:31:06 +00:00
Luca Weiss 3136aa71f5 linux-postmarketos-qcom-msm8974: upgrade to 6.7.0 (MR 4717)
[ci:skip-build] Already built fine on Gitlab CI
2024-01-14 17:09:04 +03:00
Barnabás Czémán 4b6128436d xiaomi-daisy: add goodix_ts for modules-initfs (MR 4722) 2024-01-14 02:17:35 +01:00
Henrik Grimler e63aeaf15e device-samsung-m3: set getty and flash kernel on update (MR 4719)
Serial shell on ttySAC2, and kernel upgrades, work well for i9305/m3,
just like for i9300/m0.

[ci:skip-build]: Already built successfully in CI.
2024-01-13 18:23:03 +01:00
Eli Hersha 2ac7ccbdb4 amazon-sheldon: new device (MR 4698) 2024-01-13 07:11:00 +03:00
Stefan Hansson a66a9051a5 device-motorola-titan: remove Weston configuration (MR 4713)
The fbdev backend was removed with Weston 10 which has been out for a
good while now. As such, it doesn't matter whether Xwayland works or not
since Weston won't work at all --- the DRM backend, which is what would
get used instead of fbdev with this removed, won't work on downstream
kernels like the one used by this device.

[ci:ignore-count]
[ci:skip-build]: Already built successfully in CI.
2024-01-12 13:07:30 +01:00
Stefan Hansson f3e4de82e4 device-motorola-thea: remove Weston configuration (MR 4713)
The fbdev backend was removed with Weston 10 which has been out for a
good while now. As such, it doesn't matter whether Xwayland works or not
since Weston won't work at all --- the DRM backend, which is what would
get used instead of fbdev with this removed, won't work on downstream
kernels like the one used by this device.
2024-01-12 13:07:24 +01:00
Stefan Hansson d0e7661a0b device-raspberry-pi3: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:24 +01:00
Stefan Hansson ef341cc29a device-motorola-def: remove Weston configuration (MR 4713)
There is no dri-backend.so. I don't know if this ever existed. May have
been a typo where the author meant to type drm-backend.so. The DRM
backend should be the default anyway, so just remove it instead of
fixing what may have been a typo.
2024-01-12 13:07:23 +01:00
Stefan Hansson 7f47a0c6ea device-pine64-dontbeevil: remove Weston configuration (MR 4713)
The fbdev backend was removed with Weston 10 which has been out for a
good while now. This device should be able to use the DRM backend
anyway given that it uses the A64 SoC which also e.g. the PinePhone
uses.

Additionally, the comment about Xwayland being broken contradicts the
actual configuration file where Xwayland actually is being enabled
(xwayland=true), so this shouldn't be causing any regressions even if it
actually is broken.
2024-01-12 13:07:23 +01:00
Stefan Hansson ebee4faa5f device-sony-sirius: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:23 +01:00
Stefan Hansson d5c4408c7b device-oneplus-bacon: remove Weston configuration (MR 4713)
The fbdev backend was removed with Weston 10 which has been out for a
good while now. As such, Weston won't work with the downstream port
anyway which is likely where Xwayland supposedly was broken. As such,
remove this unnecessary configuration file.
2024-01-12 13:07:23 +01:00
Stefan Hansson 429b500ac0 device-nokia-n9: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:23 +01:00
Stefan Hansson 2b8838f467 device-asus-flo: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:23 +01:00
Stefan Hansson 4dce6d1e7d device-qemu-riscv64: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:23 +01:00
Stefan Hansson 16ce2825dc device-qemu-amd64: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:23 +01:00
Stefan Hansson 62407d486f device-qemu-aarch64: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:22 +01:00
Stefan Hansson 12078dbcad device-samsung-i9100: remove Weston configuration (MR 4713)
The only relevant backend available for Weston nowadays is the DRM one, so
remove this unnecessary config.
2024-01-12 13:07:22 +01:00
Anton Bambura 713c8d261d nvida-tegra-armv7: disable fastboot (MR 4705)
We did set these variables, so it is possible to flash boot and root
partitions separately for booting with stock partition table. This
is useful for U-Boot as secondary bootloader. But it's not good for
U-Boot as primary bootloader because the resulting images have boot
and root partitions separated, so users have to create partitions
themselves and this is very confusing.

I'm suggesting to disable it in favor of doing U-Boot as primary
bootloader, this may be harder for users, but it needs to be done
only once, and this way is more fancy and is supported on more
devices than secondary bootloader.

If someone still wants to use this port with U-Boot as secondary
bootloader they can do "pmbootstrap install --split" and
"pmbootstrap export" to get 2 separate partitions to flash.

[ci:skip-build]: Already built successfully in CI.
2024-01-11 21:57:09 +01:00
mulingLHY 9147366ec8 firmware-xiaomi-kenzo: fix slow boot caused by venus firmware (MR 4699)
Package venus firmware to fix:
"subsys-pil-tz 1de0000.qcom,venus: venus: Failed to locate venus-v1.mdt"
causing 30 seconds delay on boot.
2024-01-11 16:51:19 +03:00
Svyatoslav Ryhel 942664fd0b firmware-nvidia-tegra-armv7: add missing bcm4330 sdio and Ouya bluetooth firmware (MR 4711)
bcm4330 has 2 wifi sdio firmwares, one with IEEE 802.11а support
and one without. One without was missing which caused some
devices to have wireless network issues.

Additionally Oyua specific bluetooth firmware was found and it
is included as well.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>

[ci:skip-build]: Already built successfully in CI.
2024-01-11 12:40:21 +01:00
Arnav Singh fc849e370f CODEOWNERS: add Arnavion for pine64-pinephone and shutdown-clear-rtc-wakealarm (MR 4709)
[ci:skip-build]: Already built successfully in CI.
2024-01-11 12:37:42 +01:00
Fiona Klute 4c3bf9ce07 linux-postmarketos-allwinner: Import patch for u_ether regression (MR 4706)
This fixes the USB networking issue, see:
https://patchwork.kernel.org/project/linux-usb/patch/20231218164532.411125-2-mailingradian@gmail.com/

Thanks to Alexey Min to pointing me at the patch!

[ci:skip-build]: Already built successfully in CI.
2024-01-11 12:35:12 +01:00
Fiona Klute 79d3be2826 linux-postmarketos-allwinner: upgrade to 6.7.0 (MR 4706)
Fixes #2349. Patches refreshed because some didn't apply when I built
directly from local repo and tried to import them with "git am".

Known issue: NetworkManager fails to assign IP to usb0, I had to
assign it manually to use USB networking.
2024-01-11 12:34:48 +01:00
Jianhua Lu 255aff57de firmware-xiaomi-elish: upgrade to 20240109 (MR 4700)
[ci:skip-build]: Already built successfully in CI.
2024-01-11 12:28:50 +01:00
Jianhua Lu 259c733e71 linux-postmarketos-qcom-sm8250: upgrade to 6.7.0 (MR 4700) 2024-01-11 12:28:48 +01:00
Jakob Hauser c467b2ae99 main/postmarketos-ui-xfce4: tooltips & onboard mouse keys (MR 4708)
- Hide tooltips by workaround (opacity and font size)
- Enable mouse key buttons on onboard keyboard by default (eases
  right-clicking)
2024-01-11 08:02:30 +03:00
Jakob Hauser f6e8a7beb9 main/postmarketos-ui-mate: make use of install option -t in APKBUILD (MR 4708) 2024-01-11 08:02:26 +03:00
Hagen Fritsch f46c5d762e samsung-manta: fix the battery readout driver (MR 4701)
In the mainline ds2482 onewire kernel driver, active_pullup defaults to
1 which is setting the APU register. This caused the connection to the
ds2784_battery slave to be unstable and flaky. In the AOSP manta project
this flag is set to 0 as well.
2024-01-11 07:57:08 +03:00
Stefan Hansson 85b2f83b9d wl1251-cal: move to device (MR 4707)
This is a device-specific package. The only device that depends on
this, device-nokia-n900, is in community, so let's move it there too.

[ci:skip-build]: already built successfully in CI
2024-01-10 20:27:38 +01:00
Stefan Hansson 74565c5321 u-boot-q8-a33-tablet: move to device (MR 4707)
This is a device-specific package. No need to keep it in main where it
gets included in stable releases unnecessarily. The only device that
depends on this, device-inet-a33, is in testing, so let's move it there
too.
2024-01-10 20:27:27 +01:00
Adam Thiede 2ddce77e9b linux-postmarketos-mediatek-mt8173: enable RTL8XXU module (MR 4703)
[ci:skip-build]: already built successfully in CI
2024-01-10 20:39:55 +02:00
Luca Weiss 8b8c03461b firmware-fairphone-fp4: upgrade to 20231122 (MR 4704)
Also start squashing the .mdt files into .mbn and provide compatibility
symlinks so old kernels that look for .mdt still find it.

Also move the zap firmware into a device-specific subdirectory.

Symlinks for venus are skipped since that one's not used in any
production branch yet for sm7225.

[ci:skip-build]: Already built successfully in CI.
2024-01-10 16:56:33 +01:00
Jakob Hauser 753b12a793 main/postmarketos-ui-lxqt: new set of improvements (MR 4623)
Dependencies:
- Add dependency "xfce4-screensaver" to provide virtual keyboard at screen
  unlock. As a dependency because several settings need to be implemented to
  integrate it well in LXQt.
- Add dependency "setxkbmap" to make keyboard layout settings work
- Add dependency "upower" to make battery icon in panel work

Recommends:
- Add recommend "pulseaudio" to make sound work
- Add recommend "adwaita-icon-theme" because that's used by xfce4-screensaver
- Remove recommend "pavucontrol" because there is already "pavucontrol-qt"

Sources:
- Add autostart desktop file for xfce4-screensaver
- Add autostart desktop file to override lxqt-xscreensaver-autostart
- Modify autostart desktop file for onboard, a startup delay mitigates
  an issue with the onboard panel icon not showing up at the first boot
- Modify lxqt-tablet.sh to include custom XDG_DATA_DIRS
- Add application desktop file to override xfce4-screensaver-preferences,
  adding it to the menu
- Add application desktop file to override xscreensaver-settings, removing it
  from the menu
- Change install location of "lxqt-tablet" repository configs from
  /etc/skel/.config to /etc/xdg/lxqt-tablet. That way they are handled as
  distribution-specific configs and are separated from the user configs in
  ~/.config.
- Upgrade to version 0.3 of "lxqt-tablet" repository:
  - Change theme to "Dark" to fix panel look
  - Increase panel size
  - Change wallpaper mode to "zoom" to avoid deforming the picture
  - Disable global single click to not interfere with PCManFM
  - Add terminal and file manager launchers to panel
  - Rename openbox xml file to apply the configs
  - Set lock command to xfce4-screensaver
  - Add xfconf files to configure xfce4-screensaver
  - Clean up configs by removing default values

[ci:skip-build]: Already built successfully in CI.
2024-01-10 16:45:57 +01:00
Jakob Hauser 540c678ad2 main/postmarketos-ui-lxqt: sort recommends and sources alphabetically (MR 4623) 2024-01-10 16:45:55 +01:00
Jakob Hauser 9b15060d54 main/postmarketos-ui-lxqt: enable on riscv64 (MR 4623)
It was disabled because Alpine riscv64 builder was behind. But now it's
fine again.
2024-01-10 16:45:55 +01:00
Clayton Craft e9222cb0b6 CODEOWNERS: add craftyguy for lenovo-21bx (MR 4696)
[ci:skip-build] already built successfully in CI
2024-01-09 16:30:16 -08:00
Clayton Craft a75a7cf685 device-lenovo-21bx: drop kernel cmdline params, add modules to initfs (MR 4696)
These cmdline params are not needed because the issues they worked
around were fixed in 6.7 or in this kernel branch we are using.

Additional modules are included in the initramfs since they may not be
builtin in the future, and not having them loaded in the initfs can break booting
2024-01-09 16:30:16 -08:00
Clayton Craft 7806d4f2b6 linux-lenovo-21bx: upgrade to 6.7 (MR 4696)
kconfig changes:
- Most are due to running 'pmb kconfig migrate'
- Enable USB_F_FS
- Build ath11k as a module + enable debug, to help with debugging
  pma#2361
- Enable support for BT BR/EDR stuff (like HFP)
- Enable CRYPTO_MD4 for EAP_MSCHAPv2
2024-01-09 16:30:14 -08:00
Clayton Craft d7dbabe46f device-generic-x86_64: split off oem-specific packages (MR 4673)
This uses oem-specific packages for configuring Intel and AMD systems,
and installs them all by default for new images using pmbootstrap's
pmb_recommends feature.

The intention is to provide pre-built images with support for Intel and
AMD already enabled/configured, and users can remove an unwanted set of
packages (e.g., `apk del device-generic-x86_64-intel` when on an AMD
system) if they want to.

Upgrading existing systems should work, in that I haven't observed any
apk conflicts with it. But you do need to manually install the new
oem-specific package if you need it (e.g. `oem-intel`)

fixes https://gitlab.com/postmarketOS/pmaports/-/issues/2484
2024-01-09 21:56:39 +01:00
Clayton Craft 304b4043b8 device/oem-intel: new aport (MR 4673) 2024-01-09 21:56:39 +01:00
Clayton Craft 6dd2396695 device/oem-amd: new aport (MR 4673) 2024-01-09 21:56:39 +01:00
Adam Thiede a27736f599 linux-postmarketos-mediatek-mt8173: upgrade to 6.7 (MR 4695)
[ci:skip-build]: already built successfully in CI
2024-01-09 01:34:43 +02:00
M0Rf30 9b1b2a1a32 linux-postmarketos-qcom-msm8953: upgrade to 6.6.10-r0 (MR 4690)
[ci:skip-build]: Already built successfully in CI.
2024-01-08 19:09:39 +01:00
Luca Weiss 9b34d19498 device-fairphone-fp4: update panel driver module name (MR 4694)
The panel driver has been renmaed in the kernel sources to be in line
with what's going to be upstreamed.

[ci:skip-build]: Already built successfully in CI.
2024-01-08 19:07:02 +01:00
Luca Weiss b9ecefbf67 linux-postmarketos-qcom-sm6350: upgrade to 6.7.0 (MR 4694)
Kconfig changes:
* CRYPTO_DEV_QCE
* CRYPTO_STATS
* CRYPTO_USER_API_AEAD
* GENERIC_ADC_THERMAL
* HW_RANDOM
* QCOM_BAM_DMA
2024-01-08 19:06:56 +01:00
Luca Weiss 16cb5fa1dc linux-postmarketos-qcom-sc7280: upgrade to 6.7.0 (MR 4693)
Kconfig changes:
* CRYPTO_DEV_QCE
* CRYPTO_STATS
* CRYPTO_USER_API_AEAD
* HW_RANDOM
* QCOM_BAM_DMA
* SND_SOC_SM8250

[ci:skip-build]: Already built successfully in CI.
2024-01-08 19:03:23 +01:00
Oliver Smith 0722c95c1c cross/grub-efi-x86: upgrade to 2.12-r0 2024-01-08 12:50:54 +01:00
Caleb Connolly 1fbbc17339 soc-qcom-sdm845: update alsa UCM configs (MR 4688)
Fix JackControl entries.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

[ci:skip-build]: Already built successfully in CI.
2024-01-06 23:14:14 +01:00
Svyatoslav Ryhel 93a3a97c95 firmware-nvidia-tegra-armv7: switch to new repo (MR 4683)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
[ci:skip-build]: already built successfully in CI
2024-01-05 21:05:14 +01:00
Svyatoslav Ryhel 3e4816e2bd linux-postmarketos-grate: upgrade to 6.6.9 (MR 4683)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2024-01-05 21:04:19 +01:00
Arnav Singh 6c0391deb4 linux-postmarketos-allwinner: update checksum due to upstream changes (MR 4684)
Codeberg tarballs changed checksums. The content is the same as before.

Ref: https://codeberg.org/Codeberg/Community/issues/1366

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2024-01-05 21:01:28 +01:00
Stefan Hansson fe4254f697 temp/logbookd: remove (MR 4685)
The riscv64 builder in Alpine has now caught up and logbookd is
available there for all architectures.
2024-01-05 20:57:19 +01:00
Caleb Connolly 57744b984e postmarketos-initramfs: export logs on boot failure (MR 4646)
Currently, when postmarketOS fails to boot up, retrieving any
information necessary to root cause the issue is non-trivial, requiring
building a custom initramfs with debug-shell enabled and then manually
copying out data.

Let's improve the situation by exporting logs automatically on boot
failure. This is safer than just exposing a root shell but still
provides a whole lot of useful info that should make duplicating and
triaging issues much easier for developers.

This commit implements the functionality and includes some generally
useful data. We then generate a README and expose files for each command/log
as well as an archive that can be easily attached to a GitLab issue.

To help with triaging, also record the version of the postmarketos-initramfs
package and hash the init.sh and init_functions.sh files.

For testing purposes, you can trigger the log recovery mode on-time by
creating an empty file named ".pmos_export_logs" in the /boot partition.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2024-01-05 17:29:45 +00:00
Caleb Connolly 241ade087f postmarketos-initramfs: always save logs (MR 4646)
Always write logs to the ramdisk, adjust setup_log() to spawn "tail" to
pipe the log to the console device when PMOS_NO_OUTPUT_REDIRECT is set.

This is necessary to ensure that the initramfs logs can be extracted on
a failed boot.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2024-01-05 16:36:18 +00:00
Alexey Minnekhanov 190860eb5f xiaomi-lavender: move downstream port to unmaintained (MR 4676)
In preparation of new sdm660-mainline kernel release all
downstream ports will become irrelevant.

If needed, downstream port can still be chosen as
'xiaomi-lavender-downstream' during pmbootstrap init.

Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
[ci:skip-build]: already built successfully in CI
2024-01-04 02:39:11 +01:00
M0Rf30 22c3cd1e69 linux-postmarketos-qcom-msm8953: upgrade to 6.6.8-r0 (MR 4671)
[ci:skip-build]: already built successfully in CI
2024-01-03 22:10:47 +01:00
M0Rf30 856aa1af6d soc-qcom-msm8953: update ucm configurations (MR 4669)
- fix jack control

[ci:skip-build]: already built successfully in CI
2024-01-03 22:08:37 +01:00
Anton Bambura f774a11e24 temp/xf86-video-opentegra: add a comment about removal (MR 4679)
[ci:skip-vercheck]: Changes don't affect the resulting package
[ci:skip-build]: Changes don't affect the resulting package
2024-01-03 21:23:37 +01:00
Anton Bambura 36c450994a temp/libvdpau-tegra: add a comment about removal (MR 4679) 2024-01-03 21:23:35 +01:00
Anton Bambura 71b23d8d95 samsung-p4wifi: move libvdpau-tegra to x11 subpackage (MR 4680)
It depends on some x11 libraries, so it pulls x11 when we don't need
it. Also, vdpau is a xorg thing which is not likely to work on wayland.
2024-01-02 23:31:54 +03:00
Anton Bambura 9d01f154ae samsung-i927: move libvdpau-tegra to x11 subpackage (MR 4680)
It depends on some x11 libraries, so it pulls x11 when we don't need
it. Also, vdpau is a xorg thing which is not likely to work on wayland.
2024-01-02 23:31:51 +03:00
Anton Bambura c332d82f77 ouya-ouya: move libvdpau-tegra to x11 subpackage (MR 4680)
It depends on some x11 libraries, so it pulls x11 when we don't need
it. Also, vdpau is a xorg thing which is not likely to work on wayland.
2024-01-02 23:31:47 +03:00
Anton Bambura 6c9586a13c microsoft-surface-rt: move libvdpau-tegra to x11 subpackage (MR 4680)
It depends on some x11 libraries, so it pulls x11 when we don't need
it. Also, vdpau is a xorg thing which is not likely to work on wayland.
2024-01-02 23:31:44 +03:00
Anton Bambura 9b0b8a4585 nvida-tegra-armv7: move libvdpau-tegra to x11 subpackage (MR 4680)
It depends on some x11 libraries, so it pulls x11 when we don't need
it. Also, vdpau is a xorg thing which is not likely to work on wayland.
2024-01-02 23:31:41 +03:00
Clayton Craft ed3fbbfe23 device-lenovo-21bx: depend on firmware-lenovo-21bx in nonfree fw pkg (MR 4664)
[ci:skip-build] already built successfully in CI
2024-01-01 15:06:32 -08:00
Clayton Craft 7e92a0cb32 firmware-lenovo-21bx: new aport (MR 4664)
non-free firmware not (yet?) submitted to linux-firmware, this is pulled
directly from the latest versions distributed by lenovo, instead of some
probably outdated repo distributed by random folks.

The bt firmware here fixes an issue where the bt range on the 21bx is
extremely poor (like ~1 meter or less)
2024-01-01 15:06:32 -08:00
Henrik Grimler 30ad206d3e shared-patches: merge linux3.4 #alloc&#execinstr patches (MR 4672)
linux3.4-ARM-8933-1-replace-Sun-Solaris-style-flag-on-section-xz-supplementation.patch
contains an addition that was not part of
linux3.4-ARM-8933-1-replace-Sun-Solaris-style-flag-on-section.patch
simply because error did not occur with the config I tested with.

[ci:skip-build]: already built successfully in CI
2024-01-01 15:44:22 +01:00
Oliver Smith 780a96aec1 cross/busybox-static-aarch64: upgrade to 1.36.1-r18 2024-01-01 15:16:59 +01:00
Oliver Smith 83a5b08c2d cross/musl-*: upgrade to 1.2.4_git20230717-r5 2024-01-01 14:12:22 +01:00
Oliver Smith 62f75c65ff cross/busybox-static: upgrade to 1.36.1-r18 2024-01-01 14:11:55 +01:00
hexaheximal e0ecc07790 main/postmarketos-ui-openbox: new aport (MR 4667)
[ci:skip-build]: already built successfully in CI
2024-01-01 11:59:26 +00:00
Teemu Ikonen 60485f1d08 temp/gtk+3.0: Upgrade to 3.24.37-2pureos4, fix patches (MR 4548)
Upgrade to upstrem version 3.24.37-2pureos4.

Apply an explicit list of patches from the PureOS upstream sources.
These upstream patches were skipped in the previous version and are now
applied:

  pureos/adaptive/Add-the-view-sidebar-symbolic-icon.patch
  pureos/events-Compress-touch-update-events.patch

Remove upstreamed gdk-wayland-Track-last-touch-serial-on-seat.patch.

Add a fixed version of 'Port file chooser to phones' patch:
https://source.puri.sm/Librem5/debs/gtk/-/blob/pureos/byzantium/debian/patches/pureos/adaptive/Port-file-chooser-to-phones.patch
The original did not apply cleanly and was disabled by PureOS upstream:
https://source.puri.sm/Librem5/debs/gtk/-/commit/f7dfd6e7b6a232099f31f1252ad2a992ee16e43d

[ci:skip-build] already built successfully in CI
2023-12-31 15:33:24 -08:00
Svyatoslav Ryhel 1c8cb906f4 device-nvidia-tegra-armv7: move to community (MR 4641)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>

[ci:skip-build]: Already built successfully in CI.
2023-12-31 10:10:30 -05:00
Svyatoslav Ryhel b36b693965 linux-postmarketos-grate: move to community (MR 4641)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2023-12-31 10:09:47 -05:00
Anton Bambura c4488f3c36 linux-postmarketos-grate: upgrade to 6.6.8 (MR 4668)
Probably fixes https://gitlab.com/postmarketOS/pmaports/-/issues/2486
2023-12-31 17:14:14 +03:00
M0Rf30 325626bccb main/lk2nd-msm8953: upgrade to 0.3.6 (MR 4670)
[ci:skip-build]: already built successfully in CI
2023-12-31 14:44:35 +01:00
Augis154 1b4262607d xiaomi-monet: new device (MR 4612)
[ci:skip-build]: already built successfully in CI
2023-12-31 14:09:36 +01:00
Luca Weiss f012b3b37c linux-postmarketos-qcom-msm8974: upgrade to 6.7.0_rc5 (MR 4663)
Manual config changes:
* POWER_RESET_QCOM_PON=y
* QCOM_RPM_MASTER_STATS=y

[ci:skip-build]: Already built successfully in CI
2023-12-31 12:10:14 +01:00
hexaheximal 26cd749376 device-samsung-gta7litewifi: add msm-fb-refresher to the APKBUILD (MR 4666)
[ci:skip-build] already built successfully in CI
2023-12-29 12:04:24 -08:00
Clayton Craft 9911c9f9de device-tablet-x{64,86}uefi: drop (MR 4554)
Moved/consolidated/refactored into "device-generic-x86_64"
2023-12-29 21:24:53 +02:00
Clayton Craft 93b904420a device-generic-x86_64: new aport (MR 4554)
This device package is intended to replace the tablet-x*uefi device
packages. It was made by basically merging config from those two
packages.

One important change (besides the name, covered later) is that it
replaces grub-efi with sd-boot for these devices.

The pkgver is starting at '8' to get ahead of the packages this is meant
to replace.

Because package names, especially for device packages(!), is important,
here's a long explanation of why the name is "device-generic-x86_64":

"uefi" was excluded from the device package name, because it should (in
theory at least...) be able to simultaneously support EFI and non-EFI
boot in 1 device package. The device-qemu-amd64 package kiiiinda does
this already and could be a useful example for how to do that, though in
this situation we'd need to support syslinux for legacy boot instead of
what qemu does (bypass installed bootloader and directly boot the
kernel). In other words, the packages this one is meant to replace only
support EFI boot, they currently don't support legacy boot. So IF we
need to support legacy boot in the future and IF there's no way to
support both in one package, THEN we can consider changing the name of
this one or calling the other "-legacy" or something.

"x86_64" instead of "amd64" (like the device-qemu-amd64 device package),
because "x86_64" is what Alpine uses to refer to this arch, and it
doesn't have a hw vendor name baked into it.

"tablet" was dropped from the name, because there are many other x86_64 devices
out there that people might want to install pmOS. For example, it might be
confusing if you want to install pmOS on an x86_64 toaster but best
pmOS image for it is named "device-tablet-..."
2023-12-29 21:24:52 +02:00
Willow Barraco 3695e5b98f main/postmarketos-ui-sxmo-de-*: Fix sxmo-setpermissions does not exists (MR 4659)
This daemons has been dropped, but this service management line
remained.

[ci:skip-build] already built successfully in CI
2023-12-29 09:44:42 -08:00
Duje Mihanović 189186cc69 linux-samsung-coreprimevelte: upgrade to v6.7-rc7 (MR 4600)
Also add a patch to fix NCM.

[ci:skip-build] already built successfully in CI
2023-12-29 09:40:43 -08:00
Luca Weiss e5c26d38f8 CI: add CODEOWNERS file sanity check (MR 4662)
* Check for space indentation instead of tabs
* Check that an entry actually exists
* Check that a directory ends in a slash, otherwise GitLab seems to
  ignore it
2023-12-29 15:02:10 +01:00
Luca Weiss 2cb6b5e645 CODEOWNERS: fix typos, remove non-existing entries (MR 4662) 2023-12-29 15:02:10 +01:00
Luca Weiss c34ddc658b CODEOWNERS: clean up formatting (MR 4662)
Make sure all directories end with a slash, replace spaces with tabs
2023-12-29 15:02:09 +01:00
Julian Groß 5406944deb xiaomi-wt88047: Add USB vendor and product IDs (MR 4625)
[ci:skip-build]: Already built successfully in CI.
2023-12-28 15:55:31 -05:00
Caleb Connolly 4a0a5456f1 device-oneplus-fajita: fix accelerometer mount matrix (MR 4661)
It's different to the op6 with one axis inverted

[ci:skip-build]: Already built successfully in CI.
2023-12-28 15:53:02 -05:00
Newbyte 3aba6bf37a linux-purism-librem5: upgrade to 6.6.6pureos1 (MR 4656)
[ci:skip-build] already built in CI
2023-12-26 14:45:30 +00:00
Pablo Correa Gómez b8cdb84ba7 main/postmarketos-base: enable tmpfs on boot instead of default runlevel (MR 4655)
This was enabled in the "default" runlevel during upgrades, which is an
error, since it depends on bootmisc, which is in "boot" runlevel

Fixes #2473

[ci:skip-build]: Already built successfully in CI.
2023-12-25 08:53:58 -05:00
Sergey Lisov 7cf39b60c3 samsung-a6lte: update Wi-Fi firmware (MR 4652)
This replaces the outdated blobs extracted from Android vendor partitions with more recent firmware provided in the linux-firmware-brcm package.

[ci:skip-build]: Already built successfully in CI.
2023-12-24 21:22:39 -05:00
Clayton Craft e9ccc5ae23 main/systemd-boot: upgrade to 255 (MR 4651)
- Dropped patch that was merged upstream
- Rebased other patches

[ci:skip-build]: Already built successfully in CI.
2023-12-24 21:20:17 -05:00
Duje Mihanović c8edef78a9 CODEOWNERS: add myself and @balejk for samsung-coreprimevelte (MR 4650)
[ci:skip-build]: already built successfully in CI
2023-12-23 12:53:28 +02:00
Duje Mihanović ae71bd1a3c samsung-coreprimevelte: enable postmarketos-update-kernel (MR 4650) 2023-12-23 12:51:48 +02:00
Duje Mihanović b25070234a linux-samsung-coreprimevelte: upgrade to 6.7-rc6 (MR 4650)
Touch keys and eMMC are also enabled as part of this upgrade.
2023-12-23 12:51:48 +02:00
Lux Aliaga c5ba3d5c2b device-nokia-n900: Add Portugese/Spanish keymap (MR 4379)
Add the Portugese/Spanish keymap. Similarly to the Finnish/Swedish
keymap, it's compatible with both Portugese and Spanish keyboards.

Also, modify x11-keymap so that the Portugese/Spanish map will use
Alt+Shift to enter an underscore in the F key and a backslash in the C
key, which was done to avoid redundancy with the "Ñ" key.

Signed-off-by: Lux Aliaga <lux@nixgoat.me

[ci:skip-build] already built successfully in CI
2023-12-22 21:25:22 -08:00
Iuri 40b4f1eecf samsung-logands: fix kernel build & add WIFI firmware (MR 4213)
[ci:skip-build] already built successfully in CI
2023-12-22 21:15:59 -08:00
Anton Bambura ad31f68615 temp/xf86-video-opentegra: add bash to makedepends (MR 4649)
This fixes building

[ci:skip-build]: Already built successfully in CI.
2023-12-22 13:18:13 +01:00
Pablo Correa Gómez 1229616e21 main/postmarketos-base: add service to mount /tmp as tmpfs (MR 4588)
And enable it by default, since it's a sensible thing to do.

This makes the bootmisc config file unnecessary, since it was only
used before to make sure that /tmp was wiped on every boot.

Mounting /tmp as a tmpfs will be skipped if:
* The user or maintainer configured deviceinfo_tmp_as_tmpfs_size=0
* If they didn't but the device has less than 2GB of RAM
* And in any case, if it is already mounted, to respect users that
  might have it in /etc/fstab

The options for mounting /tmp has been copied from my local debian
tmp.mount service. The only real difference is that we are mounting it
after /etc/fstab, and they do so before.

Fixes #2233
2023-12-21 17:38:45 +01:00
Nikita Travkin eb6ce7dfc0 device-acer-aspire1: Add UCM configs (MR 4648)
[ci:skip-build]: already built successfully in CI
2023-12-21 13:38:28 +02:00
Nikita Travkin 479978a716 soc-qcom-sc7180: Add firmware subpackage for WoA devices (MR 4648) 2023-12-20 17:32:57 +05:00
Nikita Travkin 7a4109ae79 linux-postmarketos-qcom-sc7180: Backport sound support for Aspire 1 (MR 4648) 2023-12-20 13:58:49 +05:00
knuxify be110154ba main/postmarketos-ui-xfce4: add xfce4-notifyd to _pmb_recommends (MR 4638)
Notification daemon; provides nice HUD for volume control and allows
Blueman to normally send notifications instead of opening separate
windows (which can get very annoying for frequently-reconnecting
devices).
2023-12-19 21:21:21 -08:00
Johannes Marbach d11ae5b790 main/unl0kr: upgrade to 2.0.3 (MR 4647) 2023-12-19 21:36:13 +01:00
hexaheximal 4daab00319 samsung-gta7litewifi: new device (MR 4627)
[ci:skip-build] already built successfully in CI
2023-12-19 01:57:14 -08:00
markochk 865a0c2e54 huawei-berlin: new device (MR 4640)
[ci:skip-build] already built successfully in CI
2023-12-19 01:38:27 -08:00
Luca Weiss e52a249972 firmware-fairphone-fp5: upgrade to 20231122 (MR 4634)
Start squashing all the .mdt files into .mbn and install those. Keep
installing compatibility symlinks so old and new kernel versions can
work with the firmware - the kernel detects the correct format anyways.

[ci:skip-build] already built successfully in CI
2023-12-19 01:30:27 -08:00
Pablo Correa Gómez 7e22978251 main/postmarketos-ui-phosh: add xdg-desktop-portal-wlr (MR 4334)
Since it's the recommended for the screencast feature
https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1301

[ci:skip-build]: Already built successfully in CI.
2023-12-18 11:18:52 -05:00
Oliver Smith aed8712bee issue_template: set EOL date for v23.06 2023-12-18 01:32:29 +01:00
Oliver Smith 7dcb2b5ff2 channels.cfg: mark v23.12 as released 2023-12-18 01:32:26 +01:00
Oliver Smith 0aa9524204 main/unl0kr: add workaround to fix fast typing bug (MR 4642)
[ci:skip-build]: already built successfully in CI
2023-12-17 17:04:19 +01:00
Pablo Correa Gómez b2e75201b4 main/postmarketos-ui-gnome-mobile: add tracker-miners dependency (MR 4636)
This is the substitute of gnome-online-miners removed in
bff508cdae

[ci:skip-build]: already built successfully in CI
2023-12-17 16:43:29 +01:00
Oliver Smith dd378d0c77 cross/busybox-static-*: upgrade to 1.36.1-r17 2023-12-17 15:57:44 +01:00
Alistair Francis f9251a560a librem5: Include bm818-tools by default (MR 4639)
Include the bm818-tools by default for the Librem5. This allows users to
check and change the VoLTE status.

Resolves: https://gitlab.com/postmarketOS/pmaports/-/issues/1905
Signed-off-by: Alistair Francis <alistair@alistair23.me>
[ci:skip-build]: already built successfully in CI
2023-12-17 15:49:23 +01:00
Ignacy Kuchciński 5000bf1bc5 samsung-serranolte: Fix build with binutils>=2.41 (MR 4637)
Currently, the build fails with the following error message:

arch/arm/mm/proc-v7.S: Assembler messages:
arch/arm/mm/proc-v7.S:346: Error: junk at end of line, first unrecognized character is `#'
make[1]: *** [scripts/Makefile.build:343: arch/arm/mm/proc-v7.o] Error 1
make: *** [Makefile:952: arch/arm/mm] Error 2

This is because in binutils package, starting with version 2.41, stopped
supporting Sun/Solaris style flags on section directive.

To fix that, use a patch that replaces this with the GNU style flags,
partly backported from mainline.

Fixes: https://gitlab.com/postmarketOS/pmaports/-/issues/2355
2023-12-16 20:52:44 -05:00
Caleb Connolly 7efcec020d postmarketos-base: disable openrc syslog service (MR 4617)
Ensure that we don't have two logging daemons running!

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-12-15 23:15:55 +00:00
Karl Chan fe4141c113 linksys-jamaica: new device (MR 4589)
[ci:skip-build]: Already built successfully in CI.
2023-12-15 13:16:19 -08:00
Svyatoslav Ryhel f0023dcf5e firmware-nvidia-tegra-armv7: include LG P880 specific bluetooth firmware (MR 4632)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>

[ci:skip-build]: already built successfully in CI
2023-12-15 21:33:33 +01:00
Svyatoslav Ryhel 5b2da79627 linux-postmarketos-grate: upgrade to 6.6.7 stable (MR 4632)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2023-12-15 21:33:33 +01:00
Luca Weiss 9410bf5da1 linux-postmarketos-qcom-sm6350: upgrade to 6.6.7 (MR 4635)
Manual config changes:
* DRM_MSM=m (there's a race condition, genpd_power_off_unused needs to
  turn off mdss_gdsc before the display driver inits, otherwise screen
  stays black)

[ci:skip-build]: already built successfully in CI
2023-12-15 21:30:32 +01:00
Jaymz 665 bff508cdae main/postmarketos-ui-gnome-mobile: remove gnome-online-miners dependency (MR 4633)
Remove the dependency, as the package has been removed in Alpine.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/commit/df5700e686eb537a6f699a956100356c45eca747
2023-12-15 19:15:46 +01:00
vipoll 20e0ff41c5 device-xiaomi-markw: workaround to fix touchscreens (MR 4631)
[ci:skip-build]: already built successfully in CI
2023-12-15 02:17:42 +04:00
Oliver Smith db94f21dc2 cross/busybox-static-*: upgrade to 1.36.1-r16 2023-12-13 22:15:12 +01:00
Pablo Correa Gómez 1844030880 main/postmarketos-base-ui: reduce appealing of iwd wifi backend (MR4629)
We probably shouldn't recommend it when #2440 can happen to devices in
community.

[ci:skip-build] already built successfully in CI
2023-12-13 10:24:19 -08:00
Anton Bambura 6fc890efea nvidia-tegra-armv7: fix deviceinfo_dtb (MR 4626)
For some reason we don't have dtb subdirectories.

Tested locally to pass pmbootstrap install and checked /boot for dtbs
[ci:skip-build]: already built successfully in CI
2023-12-13 17:21:20 +01:00
Sicelo A. Mhlongo f9c6d36d33 gps-nokia-n900: upgrade to 0.3.2 (MR 4628)
Upgrade to latest upstream version. It contains a fix for the reported GPS
date.

https://github.com/maemo-leste/gps-nokia-n900/commit/be8febb04200bea28cbe681d160e5fc1fd97a85a
[ci:skip-build]: already built successfully in CI
2023-12-13 17:16:32 +01:00
Jakob Hauser d859c9c908 main/postmarketos-ui-xfce4: whiskermenu, tooltips, onboard mouse keys (MR 4560)
There are three changes from the config source "xfce4-phone":
- Move whiskermenu settings to xfconf (required by an upstream change)
- Hide tooltips by workaround (opacity and font size)
- Increase double-click distance tolerance

And one change in postmarketOS files:
- Enable mouse key buttons on onboard keyboard by default (eases
  right-clicking)

[ci:skip-build]: Already built successfully in CI.
2023-12-13 14:18:58 +01:00
Joel Selvaraj 68c805cd55 device-oneplus-fajita: start hexagonrpcd on boot and configure accelerometer (MR 4050)
hexagonrpcd is necessary to provide access to the filesystem for the SDSP.
Also, OP6T accelerometer is mounted differently than the screen, adjust
it with a mount matrix. This way, screen rotations follow the actual
screen rotation by the user.
2023-12-13 00:50:47 -08:00
Joel Selvaraj 15a7b1b0d3 device-oneplus-enchilada: start hexagonrpcd on boot and configure accelerometer (MR 4050)
hexagonrpcd is necessary to provide access to the filesystem for the SDSP.
Also, OP6 accelerometer is mounted differently than the screen, adjust
it with a mount matrix. This way, screen rotations follow the actual
screen rotation by the user.
2023-12-13 00:50:47 -08:00
Joel Selvaraj 862f11c391 firmware-oneplus-sdm845: install sensor firmware files (MR 4050)
Sensor registry and DSP libraries are required for the SDSP
2023-12-13 00:50:46 -08:00
Dylan Van Assche 745d585a54 device-shift-axolotl: start hexagonrpcd on boot (MR 4050)
Necessary to provide access to the filesystem for the SDSP
2023-12-13 00:50:46 -08:00
Dylan Van Assche 5684f6e5a8 device-shift-axolotl: add accelerometer mount matrix (MR 4050)
SHIFT6mq accelerometer is mounted differently than the screen,
adjust it with a mount matrix. This way, screen rotations follow
the actual screen rotation by the user.
2023-12-13 00:50:46 -08:00
Dylan Van Assche 0db3344af5 firmware-shift-sdm845: install sensor firmware files (MR 4050)
Sensor registry and DSP libraries are required for the SDSP
2023-12-13 00:50:46 -08:00
Dylan Van Assche 0a25713ceb temp/iio-sensor-proxy: fork from Alpine (MR 4050)
Fork temporarily iio-sensor-proxy from Alpine to add support
for Qualcomm Snapdragon Sensor Core (SSC) sensors through libssc.
2023-12-13 00:50:46 -08:00
Anton Bambura a21e95e7e0 firmware-nvidia-tegra-armv7: use make install (MR 4620)
[ci:skip-build]: Already built successfully in CI.
2023-12-12 20:07:23 +01:00
Clayton Craft d13fa50d0c firmware-samsung-pxa1908: change initd service to start before 'wlan' (MR 4624)
[ci:skip-build] already built successfully in CI
2023-12-12 09:37:31 -08:00
Clayton Craft 4222a43e67 firmware-huawei-alice: change initd service to start before 'wlan' (MR 4624) 2023-12-12 09:37:31 -08:00
Clayton Craft 8b75a793af device-xiaomi-armani: change initd service to start before 'wlan' (MR 4624) 2023-12-12 09:37:31 -08:00
Clayton Craft 281aadfb55 device-jolla-sbj: change initd service to start before 'wlan' (MR 4624) 2023-12-12 09:37:27 -08:00
Sicelo A. Mhlongo caf2b5fec5 gps-nokia-n900: switch upstream sources to Leste repos (MR 4621)
Maemo Leste has better support/integration for the N900. Switch to their GPS
repository

[ci:skip-build]: Already built successfully in CI.
2023-12-11 20:36:49 +01:00
Sicelo A. Mhlongo 9731827819 gps-nokia-n900: add maintainer (MR 4621) 2023-12-11 20:36:48 +01:00
Sicelo A. Mhlongo fb59233471 gps-nokia-n900: switch arch to armv7 (MR 4621) 2023-12-11 20:36:47 +01:00
Sicelo A. Mhlongo d7d6129402 device/testing/gps-nokia-n900: move to device/community (MR 4621)
Enable installing gps-nokia-n900 for the N900 device, which is in community
category
2023-12-11 20:36:46 +01:00
Luca Weiss 62a2c66f02 device-fairphone-fp4: remove phosh-specific config (MR 4619)
Remove the gtk tweaks, they break the UI now, presumably because I've
added proper notch config for FP4 to the gmobile project.

Also we can remove the phoc.ini since nowadays phosh can properly scale
itself based on the screen information and doesn't need this static
config anymore.
[ci:skip-build]: already built successfully in CI
2023-12-11 11:31:33 +01:00
Oliver Smith 1a5e394074 main/postmarketos-release-upgrade: upgrade to 1.6.1 (MR 4616)
[ci:skip-build]: already built successfully in CI
2023-12-10 22:34:00 +01:00
Clayton Craft 5794852bf6 device-sony-pioneer: fix post-install script (MR 4618)
The leading space before the shebang was causing apk to fail.

[ci:skip-build]: Already built successfully in CI.
2023-12-10 22:05:32 +01:00
Pablo Correa Gómez f8f7228621 main/postmarketos-artwork: upgrade and install GNOME XMLs (MR 4614)
This allows GNOME Settings to display our wallpapers. And most
remarkably, it allows people to switch back to the original wallpaper
if they ever happen to change it.

[ci:skip-build]: already built successfully in CI
2023-12-10 15:14:40 +01:00
Pablo Correa Gómez c49ac1cc80 main/postmarketos-artwork: set buildddir (MR 4614)
This allows to build the package locally with pmbootstrap build --src

And is less repetition
2023-12-10 15:14:35 +01:00
raihan2000 6a58a985ee device-vivo-y21l: new device (MR 4535)
[ci:skip-build] already built successfully in CI
2023-12-09 14:49:10 -08:00
Clayton Craft aaaf815dc4 main/wcnss-wlan: change openrc service to start before "wlan" (MR 4564)
[ci:skip-build] # already built in CI
2023-12-09 21:30:35 +00:00
Clayton Craft 7e55caa84c main/postmarketos-base: change initcalls service to start before "wlan" (MR 4564) 2023-12-09 13:23:15 -08:00
Clayton Craft ba87ea6313 main/hisi-wlan: change openrc service to start before "wlan" (MR 4564) 2023-12-09 13:22:44 -08:00
Clayton Craft be7e85bb0e main/postmarketos-base-ui: Allow selecting WiFi backend (MR 4564)
With this change, users who build pmOS will be able to select a WiFi
backend (wpa_supplicant or iwd)

Also see: https://gitlab.com/postmarketOS/pmaports/-/issues/1379
2023-12-09 13:22:44 -08:00
Martijn Otto 1a93aba416 device-sony-pioneer: fix firmware dependency package name (MR 4613)
[ci:skip-build]: already built successfully in CI
2023-12-09 21:57:02 +01:00
Svyatoslav Ryhel f58f45db2d device: testing: remove outdated device packages (MR 4606)
List of packages switched to common device/firmware package:
 - device-asus-grouper;
 - device-asus-tf101;
 - device-asus-tf201;
 - device-asus-tf300t;
 - device-asus-tf300tg;
 - device-asus-tf700t;
 - device-asus-tilapia;
 - device-lg-p880;
 - device-lg-p895;
 - device-pegatron-chagall;
 - firmware-asus-grouper;
 - firmware-asus-transformer;
 - firmware-lg-x3;
 - linux-lg-p880;

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
[ci:skip-build]: already built successfully in CI
2023-12-09 21:52:09 +01:00
Svyatoslav Ryhel 23e6297d4a linux-postmarketos-grate: upgrade to 6.6.0 stable (MR 4606)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2023-12-09 21:52:09 +01:00
Svyatoslav Ryhel 58664e65f0 device-nvidia-tegra-armv7: introduce common armv7 Tegra device package (MR 4606)
This device port uses U-Boot as a basic bootloader. Users should install
U-Boot and reinstall pmOS to the U-Boot version of port (this one).
Thus an upgrade from old installations that depend on old vendor bootloader
is not implemented.

Instruction how to install U-Boot can be found on dedicated page of
pmOS wiki.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2023-12-09 21:52:09 +01:00
Svyatoslav Ryhel 87f372cb1f firmware-nvidia-tegra-armv7: create to common package (MR 4606)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2023-12-09 21:52:09 +01:00
Willow Barraco 79cde07ac9 linux-postmarketos-rockchip: enable NFS_FSCACHE (MR 4607)
[ci:skip-build]: already built successfully in CI
2023-12-09 17:28:06 +01:00
Caleb Connolly 128f2b150b main/postmarketos-base: enable logbookd on upgrade (MR 4549)
Logging is important, we want our users to have logging, so make sure we
enable the new logbookd service on existing installation.

We check that we're upgrading from a postmarketos-base version that
predates logbookd and only enable the service in this case. This way we
won't enable it again for folks who disabled it manually.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

[ci:skip-vercheck]
2023-12-09 01:05:54 -08:00
Martijn Braam 3460ae18d4 main/postmarketos-base: depend on logbookd (MR 4549)
Use logbookd to replace the busybox in-memory logger. The default
configuration of logbookd still logs in-memory but writes out the log on
shutdown or manual trigger.

The logread command is also replaced by a drop-in replacement for the
busybox tool.
2023-12-08 22:57:47 -08:00
Clayton Craft 95c6b91d86 temp/logbookd: fork from Alpine (MR 4549) 2023-12-08 22:57:47 -08:00
Caleb Connolly 363446f9da device/community/sdm845: enable console to workaround display init issue (MR 4610)
See edge blog post
https://gitlab.com/postmarketOS/postmarketos.org/-/merge_requests/236

upstream bug: https://gitlab.freedesktop.org/drm/msm/-/issues/46

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
[ci:skip-build]: already built successfully in CI
2023-12-08 17:56:23 +00:00
Luca Weiss a5882ea0ac device-fairphone-fp4: add bootmac dependency (MR 4608)
In order to get stable WiFi and Bluetooth MAC addresses, install the
bootmac service by default.

Also as noted in other device package reviews, qbootctl-openrc should be
a dependency so the post-install/post-upgrade script will definitely
have the openrc service available.
[ci:skip-build]: already built successfully in CI
2023-12-08 18:03:10 +01:00
Oliver Smith ee7acf9714 main/postmarketos-ui-sxmo*: upgrade to 1.15.0 (MR 4605)
Adjust to sxmo-utils 1.15.0 not having a sxmo-utils-openrc subpackage
anymore.

Temporarily disable it for riscv64 since the alpine edge builder is
currently stuck. We should still merge the patch to unblock bpo images
for edge for the other arches.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/56851
Related: https://lists.sr.ht/~mil/sxmo-announce/%3CCXIQYCSF6FI9.28OPMYXGT91GL%40willowbarraco.fr%3E
2023-12-08 17:57:36 +01:00
Richard Acayan 9ad01f6c9a testing/linux-postmarketos-qcom-sdm670: upgrade to 6.6.3 (MR 4587)
Also disable some drivers and subsystems in the kernel configuration
that are generally unused on the platform, according to the
corresponding patch in the kernel repository.

[ci:skip-build]: already built successfully in CI
2023-12-07 22:25:05 +01:00
Caleb Connolly b977cf3128 linux-postmarketos-qcom-sdm845: remove unused DTBs (MR 4597)
Drop all the non-sdm845 DTBs. This saves about 12MiB
of space in /boot

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
[ci:skip-build]: already built successfully in CI
2023-12-07 20:58:26 +01:00
Clayton Craft dbd23fb13a main/postmarketos-base: enable zram-init service on upgrade (MR 4598)
The post-upgrade script in pmos-base isn't symlinked to the post-install
script, so zram-init wasn't being enabled on systems that upgraded to
the pmos-base version that intro'd this feature. I think this should
have been enabled by default on upgraded systems. There's a deviceinfo
toggle for it, so users who won't want to use this can set that var to
disable it, in that case having the service enabled is basically a
no-op.

Update by Oliver: add a comment to mention the deviceinfo variable

[ci:skip-build]: already built successfully in CI
2023-12-07 20:37:56 +01:00
Oliver Smith f6467c52fe channels.cfg: update v23.12 aports branch
Alpine 3.19 is out \o/
2023-12-07 20:21:11 +01:00
Oliver Smith debb2461d3 cross/grub-efi-x86: upgrade to 2.06-r17 2023-12-07 20:21:06 +01:00
Ferass El Hafidi 41f11575de device-librecomputer-solitude: add myself as co-maintainer (MR 4602)
[ci:skip-vercheck] no feature changes

Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
[ci:skip-build]: already built successfully in CI
2023-12-07 09:07:44 +01:00
Pablo Correa Gómez 9ca0b50688 device/*: rebuild all devices with kernel subpackages (MR 4596)
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2023-12-07 09:03:22 +01:00
Pablo Correa Gómez 18e44a52ab main/devicepkg-dev: remove deviceinfo link in kernel subpackages (MR 4596)
This was a fallout from the /usr/share relocation, only found and
reported now by z3ntu. If the device package happened to be installed
later, then the link would point to the wrong location.

Fixes 1d748a93dd
2023-12-07 09:02:58 +01:00
Oliver Smith 97a6609aae main/postmarketos-ui-plasma-bigscreen: remove ovos (MR 4603)
Upstream Plasma Bigscreen stopped supporting it.

[ci:skip-build]: already built successfully in CI
2023-12-07 08:10:09 +01:00
Sam Day 2716f690e6 linux-postmarketos-qcom-msm8916: enable CONFIG_USB_VIDEO_CLASS (MR 4595) 2023-12-06 12:32:53 +01:00
Oliver Smith cd763b2cb1 main/postmarketos-release-upgrade: upgrade to 1.6.0 (MR 4592)
[ci:skip-build]: already built successfully in CI
2023-12-05 09:37:56 +01:00
Oliver Smith 6c92b6036d gitlab: issue template: add v23.12 2023-12-03 21:21:14 +01:00
Oliver Smith 48f9b081f4 channels.cfg: v23.12: use aports v3.19.0_rc2 2023-12-03 20:49:34 +01:00
André Apitzsch 8c934b9f74 main/hwtest: add missing dependency (MR 4591)
hwtest crashes if fftest is not provided.

[ci:skip-build]: already built successfully in CI
2023-12-03 15:12:58 +01:00
Jan Jasper de Kroon 2459e95cd6 linux-postmarketos-allwinner: upgrade to 6.6.3 (MR 4545)
[ci:skip-build]: already built successfully in CI
2023-12-03 14:07:28 +01:00
Stefan Hansson 736715b172 linux-purism-librem5: upgrade to 6.6.3 (MR 4584)
[ci:skip-build]: already built successfully in CI
2023-12-03 13:51:37 +01:00
Brandon Boese 08c20a83c7 google-x64cros: move from testing to community (MR 4577)
[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-12-03 13:40:15 +01:00
Sicelo A. Mhlongo d4a73356c8 main/hwtest: upgrade to 0.7.0 (MR 4582)
[ci:skip-build] already built successfully in CI
2023-12-02 01:00:33 -08:00
Karl Chan 18135abad5 linux-samsung-treltexx: fix build 2023-12-01 14:33:30 -08:00
Clayton Craft bfa873343a main/postmarketos-base-ui: setup cgroups on boot (MR 4585)
Allows things like podman/docker to work out of the box.

I looked at /etc/init.d/cgroups, and having this service enabled isn't a
problem if the kernel doesn't have cgroup support... in that situation,
the service script just simply exits (success).

[ci:skip-build] already built successfully in CI
2023-12-01 10:24:28 -08:00
Luca Weiss 12f440a0a1 linux-postmarketos-qcom-msm8226: upgrade to 6.6.2 (MR 4572)
Manual config changes:
* Enable SYSCON_REBOOT_MODE
* Enable LEDS_QCOM_LPG (not yet used but initial driver support present)

[ci:skip-build]: Already built successfully in CI.
2023-12-01 18:04:56 +01:00
Sicelo A. Mhlongo aa289aa350 linux-postmarketos-omap: upgrade to 6.6.3 (MR 4578)
[ci:skip-build]: already built successfully in CI
2023-12-01 08:58:08 +01:00
Stefan Hansson e384812b29 linux-postmarketos-qcom-sdm845: upgrade to sdm845-6.6.3-r3 tag (MR 4581)
[ci:skip-build]: already built successfully in CI
2023-11-29 23:18:41 +01:00
Stefan Hansson 48d6f7383c linux-postmarketos-qcom-sdm845: migrate defconfig (MR 4581)
The 6.6.3 upgrade had some oddities such as being configured for
Clang and being generated for 6.6.0. This resolves that.
2023-11-29 23:18:41 +01:00
Petr Hodina 3c8f78045a device-pine64-quartz64: new aport (MR 4178)
[ci:skip-build]: already built successfully in CI
2023-11-29 23:14:42 +01:00
Petr Hodina 04f7c38b2e linux-postmarketos-rockchip: enable configs for Quartz64 A/B models (MR 4178)
These configs were taken from https://wiki.pine64.org/wiki/Quartz64_Development#Linux_Kernel_Config_Options

These configs are also needed for the GPU hardware acceleration.
CONFIG_ARM_SCMI_PROTOCOL=m
CONFIG_COMMON_CLK_SCMI=m
2023-11-29 23:14:41 +01:00
Petr Hodina 45d4d4b380 testing/u-boot-pine64-quartz64: new aport (MR 4178) 2023-11-29 23:14:31 +01:00
Henrik Grimler 4f12013a68 device-google-peach-pi: use ttySAC3 for getty and console (MR 4576)
Tested on peach-pit, should work the same on peach-pi.

[ci:skip-build]: already built successfully in CI
2023-11-29 23:01:14 +01:00
Henrik Grimler 2465370c52 device-google-peach-pit: use ttySAC3 for getty and console (MR 4576)
For some reason kernel does not print anything to ttySAC3 even with
console=/dev/ttySAC3. If earlycon is specified it prints the early
stuff though.

Add ttySAC3 in both places anyways since that should be the correct
uart.
2023-11-29 23:01:08 +01:00
Oliver Smith 1b9f174924 main/postmarketos-ui-lxqt: disable for riscv64 (MR 4579)
The riscv64 builder in Alpine is currently stuck, let's disable the
package for riscv64 temporarily so bpo isn't stuck on it for master. I
doubt anybody is using it on riscv64 currently.

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-11-29 22:13:30 +01:00
Oliver Smith 5783346ecb temp/mutter-mobile: add lcms2-dev to makedepends (MR 4580)
Fix for:
  meson.build:130:12: ERROR: Dependency "lcms2" not found, tried pkgconfig

Related: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/53961
[ci:skip-build]: already built successfully in CI
2023-11-29 21:08:45 +01:00
Caleb Connolly eb794e62a8 linux-postmarketos-qcom-sdm845: upgrade to 6.6.3 (MR 4542)
Finally!

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

[ci:skip-build]: Already built successfully in CI.
2023-11-29 20:32:52 +01:00
Caleb Connolly d67268bef9 main/bootrr: detect failure (MR 4542)
Properly detect failures in bootrr

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-11-29 20:32:48 +01:00
Caleb Connolly 5fa718644e linux-postmarketos-qcom-sdm845: use ZBOOT (MR 4542)
EFI booting with systemd-boot requires building the kernel with ZBOOT -
the EFI decompressor stub. However, this breaks the old Android booting.
Detect when ZBOOT is enabled and install both vmlinuz.efi as well as the
old gzipped kernel image.

To help make this upgrade more seamless, continue to support building
the kernel with ZBOOT disabled and just print a warning.

Disable module stripping - we compress them anyway and a recent kernel
change seems to have caused some bug here.

This is a packaging change that doesn't require rebuilding the kernel.
[ci:skip-vercheck]
2023-11-29 20:32:48 +01:00
Oliver Smith b4467f9486 channels.cfg: set current alpine 3.19 branch
As of writing, the 3.19-stable branch does not exist yet.
2023-11-28 21:00:32 +01:00
Oliver Smith 7f24a86f5f channels.cfg: add initial v23.12 branch 2023-11-28 20:51:13 +01:00
Anton Bambura c084e40b80 firmware-powervr-gx6250: move to community (MR 4575)
This was missed when moving google-oak to community
2023-11-28 18:15:30 +02:00
ptrcnull 0f862d3fe3 firmware-powervr-gx6250: upgrade to 1.17.6503725 (MR 4573) 2023-11-28 18:11:21 +02:00
Petr Hodina b8f4433e68 linux-pine64-pinenote: upgrade to 6.3.10. (MR 4279)
Enable the Wacom pen as bluetooth input HID

[ci:skip-build]: Already built successfully in CI.
2023-11-28 12:19:34 +01:00
Brandon Boese 943cfe7540 google-x64cros: switch to systemd-boot (MR 4571)
[ci:skip-build]: Already built successfully in CI.
2023-11-28 12:12:16 +01:00
adamthiede e39ec891b8 linux-postmarketos-mediatek-mt8173: upgrade to 6.6.2 and enable CONFIG_LRU_GEN (MR 4570)
[ci:skip-build]: Already built successfully in CI
2023-11-27 22:35:17 +02:00
Brandon Boese 5b9382b742 device-google-x64cros: add myself as maintainer (MR 4569)
[ci:skip-build]: already built successfully in CI
2023-11-27 11:34:49 +01:00
Clayton Craft 38073a05a4 cross/gcc-x86_64: new aport (MR 4568)
Useful for compiling x86_64 packages on aarch64

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-11-24 17:44:48 -08:00
Clayton Craft 1590be8611 cross/musl-x86_64: new aport (MR 4568) 2023-11-24 17:44:48 -08:00
Antoni Aloy Torrens c467e17bfc main/postmarketos-ui-lxqt: various fixes and usability improvements (MR 3259)
Co-developed-by: Jakob Hauser <jahau@rocketmail.com>
Co-developed-by: Pablo Correa Gomez <ablocorrea@hotmail.com>

[ci:skip-build]: Already built successfully in CI.
2023-11-24 14:01:07 +01:00
Bart Ribbers bcabeb80a1 main/postmarketos-ui-plasma-mobile: remove plasma-welcome from _pmb_recommends (MR 4567)
It isn't ready for mobile yet as it refers to things that do not exist
on Plasma Mobile. We'll add it back later when it is ready

[ci:skip-vercheck]
2023-11-24 11:38:57 +01:00
Teemu Ikonen 665dbfd204 temp/gtk4.0: upgrade to 4.12.4 (MR 4566)
[ci:skip-build]: already built successfully in CI
2023-11-23 23:47:13 +01:00
Pablo Correa Gómez ed1040e5dc temp/pulseaudio: disable lto, might be broken in some armv7 devices (MR 4563)
Something seems to have gone wrong in our rebuild and sync of pulseaudio
with alpine upstream. And user feedback points that building armv7 devices
with LTO is actually broken in our builders. In alpine, they enabled lto
in pulseaudio very long ago (f46174365b219fe431890df3df7e7dc488c9451e 08-09-22)
and nobody as complained so far. Since it's not really a phone-specific package,
one would hope that more people upstream would have noticed if it were broken
there. Since nobody has, we assume this is a downstream problem, and just
unconditionally disable lto in our build. We hope this will be just a temporary
workaround, until the patches that prompted the fork are no longer needed, and
we can simply use upstream pulseaudio, that shouldn't be broken.

Fixes #2368

[ci:skip-build] already built successfully in CI
2023-11-22 01:15:41 -08:00
Luca Weiss 2a4320e16e main/postmarketos-mkinitfs: use NCM instead of RNDIS (MR 3670)
As described in [0] let's switch away from RNDIS and use NCM instead.

Since we cannot force all kernels to switch at the same time, let's keep
a fallback to RNDIS in the setup function.

We can also remove usb_f_rndis from modprobe as the module gets loaded
automatically when needed, but instead we need to load libcomposite
manually so that $configfs/usb_gadget gets created.

[0] https://gitlab.com/postmarketOS/pmaports/-/issues/1797

[ci:skip-build] already built successfully in CI
2023-11-20 16:33:57 -08:00
Henrik Grimler 2df9debe71 linux: add shared patch for when compiling kernels older than 5.5 (MR 4558)
With recent gcc versions we get errors like:

/linux/arch/arm/mm/proc-v7.S: Assembler messages:
/linux/arch/arm/mm/proc-v7.S:425: Error: junk at end of line, first unrecognized character is `#'

Seen on at least two samsung kernels based on 3.4 and 3.10. Fix issue
by backporting (part of) commit found in mainline.
2023-11-19 21:51:57 +01:00
Clayton Craft 63228b7c3c main/boot-deploy: upgrade to 0.12 (MR 4561)
upstream changelog:
https://gitlab.com/postmarketOS/boot-deploy/-/tags/0.12
2023-11-19 11:30:07 -08:00
Ben Westover aeedc86d67 amazon-biscuit: new device (MR 4532) 2023-11-19 10:45:27 -08:00
Anton Bambura 0bbbd50adb modem/msm-cros-efs-loader: update remote (MR 4559)
[ci:skip-build] already built successfully in CI
2023-11-19 10:35:44 -08:00
Ion Agorria c43e9f45a8 CI: add setup_usb_storage.sh to shellcheck.sh (MR 4450)
[ci:skip-build] already built successfully in CI
2023-11-19 10:27:42 -08:00
Ion Agorria 1258df73d7 postmarketos-mkinitfs-hook-debug-shell: Add setup_usb_storage.sh (MR 4450) 2023-11-19 10:27:41 -08:00
Ion Agorria 5626781fca main/postmarketos-initramfs: Separate code into setup_usb_configfs_udc (MR 4450)
This method is called from setup_usb_network_configfs and debug shell's
setup_usb_storage.sh
2023-11-19 10:27:41 -08:00
Jakob Meier 9d9fc6fa49 linux-postmarketos-mediatek-mt8183: enable BINFMT_MISC kconfig (MR 4555)
[ci:skip-build]: Already built successfully in CI
2023-11-14 21:04:53 +01:00
Minecrell 8833243e8b firmware-<qcom-msm8916>: adjust for new venus firmware path (MR 4553)
Linux 6.7-rc1 looks for the venus (video) firmware in
qcom/venus-1.8/venus.mbn instead of qcom/venus-1.8/venus.mdt.

Let's install it in both places with a symlink so that the firmware
packages work for both older and newer Linux versions.

[ci:ignore-count]: lots of packages
[ci:skip-build] already built successfully in CI
2023-11-13 22:56:59 -08:00
Oliver Smith ffd16fa263 cross/musl-*: upgrade to 1.2.4_git20230717-r4 2023-11-13 08:44:30 +01:00
Oliver Smith 2dc2b58c26 cross/busybox-static-*: upgrade to 1.36.1-r15 2023-11-13 08:44:24 +01:00
Sergey Lisov 3b85595ff8 modem/samsungipcd: update to v0.2.3 (MR 4544)
[ci:skip-build]: already built successfully in CI
2023-11-12 14:46:38 +01:00
Jan Jasper de Kroon f193f840cc linux-pine64-pinephonepro: upgrade to 6.6.0 (MR 4538)
[ci:skip-build]: already built successfully in CI
2023-11-12 13:58:58 +01:00
Danila Tikhonov 5e01ef5453 linux-postmarketos-qcom-sm7150: Upgrade to 6.6.1 (MR 4546)
Swap maintainer and co-maintainer (David is not active now and requested
it himself). Also update email addresses.

Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
2023-11-11 21:18:23 +03:00
Andreas Kemnade 937c1a8772 linux-kobo-clara-mainline: Upgrade to v6.6 (MR 4543)
[ci:skip-build]: Already built successfully in CI
2023-11-09 11:31:00 +01:00
Duje Mihanović f578581ad0 linux-samsung-coreprimevelte: upgrade to 6.6 (MR 4540)
Bluetooth and poweroff support are also added.

[ci:skip-build]: already built successfully in CI
2023-11-08 19:48:15 +01:00
Duje Mihanović 5abb5574db samsung-coreprimevelte: move downstream port to unmaintained (MR 4540)
The mainline port has almost reached full feature parity with the
downstream port. Default to mainline in new installations, but keep
downstream around as it'll still be needed for bringing up the currently
missing features.
2023-11-08 19:48:15 +01:00
Duje Mihanović 779361ba0a linux-samsung-coreprimevelte: fix build error, enable PROC_DEVICETREE (MR 4540) 2023-11-08 19:41:28 +01:00
Jianhua Lu d64553214f alsa-ucm-conf-qcom-sm8250: remove _packagename and _flavor variable to improve readability (MR 4524)
[ci:skip-build]: Already built successfully in CI
2023-11-08 16:57:31 +01:00
Jianhua Lu 52703cce87 linux-postmarketos-qcom-sm8250: upgrade to 6.6.0 (MR 4524) 2023-11-08 16:57:31 +01:00
Clayton Craft b08ff33a33 linux-postmarketos-allwinner: enable rtw88 wifi drivers on armv7 (MR 4536)
Used on some USB WiFi adapters. This also enabled RFKILL (used by iwd)

[ci:skip-build]: Already built successfully in CI
2023-11-08 16:41:12 +01:00
Bryant Mairs e371bbdb1f device-samsung-milletwifi: Add msm-modem to enable GPS (MR 4528)
GPS on milletwifi is via the "modem", which doesn't have any cell model
support, but is similar. This starts the modem remoteproc to support
GPS output.

[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI
2023-11-08 16:27:54 +01:00
Bryant Mairs 190f13df1f device-samsung-milletwifi: Add firmware for Wi-Fi and Bluetooth (MR 4528) 2023-11-08 16:27:49 +01:00
Bryant Mairs 0ccd921802 linux-postmarketos-qcom-msm8226: Move more sensors to modules (MR 4528)
Some of these sensors give spurious dmesg warnings, even when not used,
so move them to modules.
2023-11-08 16:27:49 +01:00
Bryant Mairs 809aa1a627 linux-postmarketos-qcom-msm8226: Enable nftables support (MR 4528) 2023-11-08 16:27:48 +01:00
Bryant Mairs bbb73593be linux-postmarketos-qcom-msm8226: Enable firmare loading (MR 4528)
Firmware drivers will load too early, before msm-firmware-loader, so they
won't load the necessary firmware. Instead, mark them as modules so they load
later in the boot process, when the firmware is available.
2023-11-08 16:27:48 +01:00
Bryant Mairs 3137915ddf linux-postmarketos-qcom-msm8226: Upgrade kconfig to latest kernel (MR 4528)
Didn't do this when I upgraded the version, so doing it here as a separate
commit for clarity.
2023-11-08 16:27:48 +01:00
Jan Jasper de Kroon a56803bc52 linux-postmarketos-allwinner: upgrade to 6.6.0 (MR 4537)
[ci:skip-build]: already built successfully in CI
2023-11-07 22:54:03 +01:00
blacksilver 95e9949260 linux-samsung-xcover3lte: fix kernel build (MR 4539)
[ci:skip-build]: already built successfully in CI
2023-11-07 22:50:18 +01:00
Clayton Craft eef37b4d81 linux-lenovo-21bx: enable BINFMT_MISC, HIDRAW, ETHERNET kconfig (MR 4533)
BINFMT_MISC for running qemu on this system, and HIDRAW is used for some
USB devices. ETHERNET lets me use usb NICs, since this device does not
have a rj45 port/onboard NIC.

[ci:skip-build] already built successfully in CI
2023-11-04 15:44:39 -07:00
Anton Bambura 44c6fba704 samsung-w767: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523)
[ci:skip-build] already built successfully in CI
2023-11-04 10:02:49 -07:00
Anton Bambura b441adafe8 lenovo-yoga-5g: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523) 2023-11-04 10:02:49 -07:00
Anton Bambura a7d4668b8d lenovo-flex-5g: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523) 2023-11-04 10:02:49 -07:00
Stefan Hansson 24b0744ae4 purism-librem5dev: remove gpsd config (MR 4507)
And don't bother disabling the gpsd service given how unlikely it is
that someone is doing something serious with this device, let alone
having it in the first place. Plus, it's in testing.

[ci:skip-build] already built successfully in CI
2023-11-03 23:28:30 -07:00
Stefan Hansson 5a2aafd62a pine64-pinephone: remove gpsd config (MR 4507)
This is no longer necessary as geoclue now can talk to ModemManager
directly for GPS information. It also presents a security risk due to
how gpsd works. As such, remove it.

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/2340
2023-11-03 23:28:29 -07:00
Clayton Craft 0443f204c7 device-purism-librem5: upgrade to 1.51 (MR 4411)
- librem5-base upgraded to v64: some tweaks to shipmode stuff, but
  otherwise nothing interesting for us

- actually install the mm-broadmobi-port-types udev rule

- add udev rule + service for enabling bluetooth for Sparklan WiFi
  adapters (fixes #2043)
2023-11-03 21:55:40 +01:00
Clayton Craft a44d7fd097 firmware-brcm43752: upgrade to 0.3_git20230613 (4411) (MR 4411)
pkgver was also updated to reflect that this is packaged from the latest
in git as of now. I probably should have done that from the start
(instead of ending up at the arbitrary '0.3'.)
2023-11-03 21:55:40 +01:00
Oliver Smith 1e47f77bc7 pine64-pinephonepro: update maintainers (MR 4529)
[ci:skip-build]: already built successfully in CI
2023-11-03 09:27:16 +01:00
Oliver Smith 9dad13d2e6 pine64-pinephone: update maintainers (MR 4529) 2023-11-03 09:27:16 +01:00
Oliver Smith 930aa6df78 cross/busybox-static-*: upgrade to 1.36.1-r14 2023-11-03 09:26:31 +01:00
Minecrell 6c2de41538 linux-postmarketos-qcom-msm8916: upgrade to 6.6 (MR 4520)
- Update to Linux v6.6
- Lots of cleanup and upstreaming, more than 40 commits upstreamed
  for 6.7

Device changes:
 - Add KTD2026 LED driver, used by bq-paella, bq-piccolo and
   acer-a1-724
 - bq-piccolo: Set proximity near level to fix detection in
   iio-sensor-proxy

New devices:
 - Vivo Y21L
   - eMMC, SD card, USB, Buttons, WiFi/BT
   - Sensors (Accelerometer, Magnetometer, Light)
   - No display yet

[ci:skip-build]: already built successfully in CI
2023-11-03 09:21:28 +01:00
1559 changed files with 151597 additions and 22547 deletions

No files matched your search

+43
View File
@@ -0,0 +1,43 @@
#!/bin/sh -e
# Description: verify CODEOWNERS file is sane
# https://postmarketos.org/pmb-ci
# TODO Future improvements:
# * Check that all devices in main/community have someone in CODEOWNERS
# * Check that GitLab user actually exists (e.g. deleted account, account with
# changed user name)
if grep -q " " CODEOWNERS; then
echo
echo "ERROR: Found space indentation in CODEOWNERS."
echo "ERROR: Please indent with tab characters."
grep " " CODEOWNERS
echo
exit 1
fi
fail=0
tmppipe=$(mktemp -u)
mkfifo "$tmppipe"
grep -v "^#" CODEOWNERS | cut -d' ' -f1 > "$tmppipe" &
while IFS= read -r line; do
[ -z "$line" ] && continue
# Check if entry generally exists
# shellcheck disable=SC2086
ls $line >/dev/null 2>&1 || { fail=1; echo "Non-existing: $line"; }
# Check that directories end with a slash
# shellcheck disable=SC2086
if test -d "$(ls -d $line)"; then
echo "$line" | grep -q '/$' || { fail=1; echo "Missing trailing slash: $line"; }
fi
done < "$tmppipe"
rm "$tmppipe"
if [ "$fail" = 1 ]; then
echo
echo "ERROR: Invalid CODEOWNERS entries, see above."
echo
exit 1
fi
+35 -6
View File
@@ -2,6 +2,8 @@
# Description: check various bad patterns with grep
# https://postmarketos.org/pmb-ci
exit_code=0
if [ "$(id -u)" = 0 ]; then
set -x
apk -q add grep
@@ -12,7 +14,7 @@ fi
if grep -qr '(CHANGEME!)' -- *; then
echo "ERROR: Please replace '(CHANGEME!)' in the following files:"
grep --color=always -r '(CHANGEME!)' -- *
exit 1
exit_code=1
fi
# DTBs installed to /usr/share/db
@@ -23,7 +25,7 @@ if grep -qr 'INSTALL_DTBS_PATH="$pkgdir"/usr/share/dtb' device/; then
echo 'ERROR: Files that need fixing:'
# shellcheck disable=SC2016
grep --color=always -r 'INSTALL_DTBS_PATH="$pkgdir"/usr/share/dtb' device/
exit 1
exit_code=1
fi
@@ -31,24 +33,51 @@ fi
if grep -qr '/etc/postmarketos-mkinitfs' -- *; then
echo "ERROR: Please replace '/etc/postmarketos-mkinitfs' with '/usr/share/mkinitfs' in the following files:"
grep --color=always -r '/etc/postmarketos-mkinitfs' -- *
exit 1
exit_code=1
fi
if grep -qr '/usr/share/postmarketos-mkinitfs' -- *; then
echo "ERROR: Please replace '/usr/share/postmarketos-mkinitfs' with '/usr/share/mkinitfs' in the following files:"
grep --color=always -r '/usr/share/postmarketos-mkinitfs' -- *
exit 1
exit_code=1
fi
# Direct sourcing of deviceinfo
if grep --exclude='source_deviceinfo' -qEr 'source /etc/deviceinfo|\. /etc/deviceinfo' -- *; then
echo 'ERROR: Please source the source_deviceinfo script instead of sourcing deviceinfo directly!'
grep --color=always --exclude='rootfs-usr-share-misc-source_deviceinfo' -Er 'source /etc/deviceinfo|\. /etc/deviceinfo' -- *
exit 1
exit_code=1
fi
# Removed deviceinfo variable
if grep -qr 'deviceinfo_modules_initfs' -- *; then
echo 'ERROR: deviceinfo_modules_initfs variable has been removed. Use "modules-initfs" file instead.'
grep --color=always -r 'deviceinfo_modules_initfs' -- *
exit 1
exit_code=1
fi
POSTMARKETOS_WALLPAPER_PATH='/usr/share/wallpapers/postmarketos.jpg'
# The excluded devices are "grandfathered in". New devices should not be added here.
# See https://gitlab.com/postmarketOS/pmaports/-/issues/2529
if grep -qr $POSTMARKETOS_WALLPAPER_PATH \
--exclude-dir='device-pine64-pinetab' \
--exclude-dir='device-oneplus-kebab' \
--exclude-dir='device-xiaomi-willow' \
-- device; then
echo "ERROR: Please don't include configuration files that set the default wallpaper in device-specific packages!"
grep --color=always -r $POSTMARKETOS_WALLPAPER_PATH \
--exclude-dir='device-pine64-pinetab' \
--exclude-dir='device-oneplus-kebab' \
--exclude-dir='device-xiaomi-willow' \
-- device
exit_code=1
fi
OPENRC_SERVICE_FILES=$(find . -name '*.initd')
# shellcheck disable=SC2086
if grep -q 'before wpa_supplicant' $OPENRC_SERVICE_FILES; then
echo "ERROR: Please use 'before wlan' in OpenRC service files! This ensures compatibility with both wpa_supplicant and iwd."
grep --color=always 'before wpa_supplicant' $OPENRC_SERVICE_FILES
exit_code=1
fi
exit "$exit_code"
+2 -2
View File
@@ -4,11 +4,11 @@
if [ "$(id -u)" = 0 ]; then
set -x
apk -q add py3-flake8
apk -q add ruff
exec su "${TESTUSER:-build}" -c "sh -e $0"
fi
set -x
# shellcheck disable=SC2046
flake8 --ignore E501,F401,E722,W504,W605 $(find .ci -name '*.py')
ruff --ignore E501,F401,E722,W605 $(find .ci -name '*.py')
+1 -2
View File
@@ -15,14 +15,13 @@ fi
# Shell: shellcheck
sh_files="
./main/mdss-fb-init-hack/mdss-fb-init-hack.sh
./main/osk-sdl/unlock.sh
./main/postmarketos-base/rootfs-usr-lib-firmwareload.sh
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-dns-filter.sh
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-tethering.sh
./main/postmarketos-installkernel/installkernel-pmos
./main/postmarketos-initramfs/init.sh
./main/postmarketos-initramfs/init_functions.sh
./main/postmarketos-mkinitfs-hook-debug-shell/20-debug-shell.sh
./main/postmarketos-mkinitfs-hook-debug-shell/setup_usb_storage.sh
./main/postmarketos-mkinitfs-hook-netboot/netboot.sh
./main/postmarketos-update-kernel/update-kernel.sh
./main/ttyescape/*.post-install
+75 -12
View File
@@ -1,30 +1,32 @@
#!/usr/bin/env python3
# Copyright 2021 Oliver Smith
# Copyright 2024 Oliver Smith
# SPDX-License-Identifier: GPL-3.0-or-later
import fnmatch
import glob
import os
import pytest
import sys
import os
import add_pmbootstrap_to_import_path
import pmb.parse
import pmb.parse._apkbuild
# Cache for codeowners_parse
codeowners_parsed = {}
# Don't complain if these nicknames are the only maintainers of an APKBUILD,
# because they are actually a group of people
gitlab_groups = [
"@sdm845-mainline",
]
def device_dependency_check(apkbuild, path):
""" Raise an error if a device package has a dependency that is not allowed
(e.g. because it should be in a subpackage instead). """
for depend in apkbuild["depends"]:
if depend == "linux-firmware-none":
continue
if (depend.startswith("firmware-") or
depend.startswith("linux-firmware")):
raise RuntimeError("Firmware package '" + depend + "' found in"
" depends of " + path + ". These go into"
" subpackages now, see"
" <https://postmarketos.org/devicepkg>.")
if depend == "mesa-dri-gallium":
raise RuntimeError(f"{path}: mesa-dri-gallium shouldn't be in"
" depends anymore (see pmaports!3478)")
@@ -46,7 +48,7 @@ def test_aports_device(args):
raise RuntimeError("Missing 'postmarketos-base' in depends of " +
path)
# Depends: Must not have firmware packages
# Depends: Must not have specific packages
for depend in apkbuild["depends"]:
device_dependency_check(apkbuild, path)
@@ -108,23 +110,84 @@ def test_aports_device_kernel(args):
path)
def codeowners_parse(args):
global codeowners_parsed
pattern_prev = None
with open(f"{args.aports}/CODEOWNERS") as h:
for line in h:
line = line.rstrip()
if not line or line.startswith("#"):
continue
pattern_nicks = line.split()
assert len(pattern_nicks) > 1, f"CODEOWNERS line without nicks: {line}"
pattern = pattern_nicks[0]
if pattern.endswith("/"):
pattern += "*"
nicks = []
for word in pattern_nicks[1:]:
if word.startswith("@"):
nicks += [word]
codeowners_parsed[pattern] = nicks
if pattern_prev:
assert pattern_prev <= pattern, "CODEOWNERS: please order entries alphabetically"
pattern_prev = pattern
def require_enough_codeowners_entries(args, path, maintainers):
"""
:param path: full path to an APKBUILD (e.g. /home/user/…/APKBUILD)
:param maintainers: list of one or more maintainers
"""
path = os.path.relpath(path, args.aports)
nicks = set()
for pattern, pattern_nicks in codeowners_parsed.items():
if fnmatch.fnmatch(path, pattern):
for nick in pattern_nicks:
nicks.add(nick)
print(f"{path}:")
print(f" APKBUILD: {maintainers}")
print(f" CODEOWNERS: {nicks}")
if len(nicks) < len(maintainers):
for nick in nicks:
if nick in gitlab_groups:
print(f" -> {nick} is a group")
return
assert len(nicks) >= len(maintainers), \
f"{path}: make sure that each maintainer is listed in CODEOWNERS!"
def test_aports_maintained(args):
"""
Ensure that aports in /device/{main,community} have "Maintainer:" and
"Co-Maintainer:" (only required for main) listed in their APKBUILDs.
"Co-Maintainer:" (only required for main) listed in their APKBUILDs. Also
check that at least as many are listed in CODEOWNERS.
"""
codeowners_parse(args)
for path in glob.iglob(f"{args.aports}/device/main/*/APKBUILD"):
if '/firmware-' in path:
continue
maintainers = pmb.parse._apkbuild.maintainers(path)
assert maintainers and len(maintainers) >= 2, \
f"{path} in main needs at least 1 Maintainer and 1 Co-Maintainer"
require_enough_codeowners_entries(args, path, maintainers)
for path in glob.iglob(f"{args.aports}/device/community/*/APKBUILD"):
if '/firmware-' in path:
continue
maintainers = pmb.parse._apkbuild.maintainers(path)
assert maintainers, f"{path} in community needs at least 1 Maintainer"
require_enough_codeowners_entries(args, path, maintainers)
def test_aports_unmaintained(args):
+1 -1
View File
@@ -30,7 +30,7 @@ def test_directories():
# Ensure no file in pmaports are executable.
# see https://gitlab.com/postmarketOS/pmaports/-/issues/593.
def test_executable_files():
for file in glob.iglob("**/*", recursive=True):
for file in glob.iglob("[!temp]**/**/*", recursive=True):
if os.path.isdir(file) or os.path.islink(file):
continue
# still check other less common inode types
+2 -1
View File
@@ -1,3 +1,4 @@
{
"SpacesAftertabs": true
"SpacesAftertabs": true,
"Exclude": ["temp"]
}
+1 -1
View File
@@ -7,7 +7,7 @@
# Top-most EditorConfig file.
root = true
[{**.{md,ini,sh,rules,nft},**/APKBUILD}]
[{**.{md,ini,sh,rules,nft},**/APKBUILD,CODEOWNERS}]
indent_style = tab
end_of_line = lf
trim_trailing_whitespace = true
+6 -4
View File
@@ -1,7 +1,7 @@
---
# global settings
image: alpine:latest
image: alpine:edge
after_script:
- .ci/lib/move_logs.sh $CI_PROJECT_DIR
stages:
@@ -36,7 +36,7 @@ wiki:
- .ci/wiki.sh
# testcases linting
flake8:
ruff:
stage: lint
<<: *only-default
only:
@@ -45,11 +45,12 @@ flake8:
changes:
- .ci/*
- .ci/*/*
- .gitlab-ci.yml
before_script:
- apk -q add py-flake8
- "echo 'https://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories"
script:
- .ci/lib/gitlab_prepare_ci.sh
- .ci/flake8.sh
- .ci/ruff.sh
# shellcheck and various grep checks
shellcheck-grep:
@@ -60,6 +61,7 @@ shellcheck-grep:
- .ci/lib/gitlab_prepare_ci.sh
- .ci/shellcheck.sh
- .ci/grep.sh
- .ci/codeowners.sh
editor-config:
stage: lint
+2 -2
View File
@@ -21,8 +21,8 @@
Replace space inside `[ ]` with `x` to fill the checkbox
-->
* [ ] edge (`master` branch)
* [ ] `v23.06`
* [ ] `v22.12` (Supported until 2023-07-06)
* [ ] `v23.12`
* [ ] `v23.06` (supported until 2024-01-18)
* [ ] I confirm that the issue still is present after running `sudo apk upgrade -a`
+104 -78
View File
@@ -1,88 +1,114 @@
# https://docs.gitlab.com/ee/user/project/code_owners.html
# Put groups like @sdm845-mainline into test_device.py:gitlab_groups.
# Order lines alphabetically!
device/*/*-amlogic-s905*/ @vitali64yt
device/*/*-arrow-db410c/ @Minecrell
device/*/*-asus-me176c/ @Minecrell
device/*/*-bq-paella/ @Minecrell
device/*/*-google-gru/ @jenneron
device/*/*-google-kukui/ @jenneron @binarycraft
device/*/*-google-oak/ @jenneron @adamthiede
device/*/*-google-trogdor/ @jenneron
device/*/*-google-veyron/ @jenneron
device/*/*-google-x64cros/ @jenneron @JustSoup321 @alpernebbi
device/*/*-htc-golfu/ @Newbyte
device/*/*-pine64-pinephone/ @craftyguy @milesalan @bshah @proycon @anjandev @StacyHarper
device/*/*-htc-m8qlul/ @Newbyte
device/*/*-purism-librem5/ @craftyguy @bshah
device/*/device-lg-judyln/ @Newbyte
device/*/device-samsung-m0/ @Newbyte
device/*/linux-postmarketos-exynos4/ @Newbyte
device/*/linux-postmarketos-msm8939/ @Newbyte
device/*/linux-postmarketos-stericsson/ @Newbyte
device/*/*-lenovo-21bx/ @craftyguy
device/*/*-lenovo-a6000/ @jenneron @Minecrell
device/*/*-lenovo-a6010/ @jenneron @Minecrell
device/*/*-motorola-harpia/ @Minecrell
device/*/*-nokia-n900/ @sicelo @Danct12
device/*/*-pine64-pinebookpro/ @QC8086
device/*/*-pine64-pinephone/ @craftyguy @milesalan @proycon @anjandev @StacyHarper @Arnavion @PsychoGame
device/*/*-pine64-pinephonepro/ @PsychoGame
device/*/*-pine64-rockpro64/ @PureTryOut
device/*/*-purism-librem5/ @craftyguy @alistair23 @Newbyte
device/*/*-qcom-msm8916/ @Minecrell @TravMurav
device/*/*-qcom-sdm845/ @sdm845-mainline
device/*/*-xiaomi-berrylium/ @joelselvaraj
device/*/*-qcom-sm6350/ @z3ntu
device/*/*-samsung-a3/ @Mis012 @TravMurav @Minecrell
device/*/*-samsung-a5/ @Minecrell @minlexx
device/*/*-samsung-e7/ @wonderfulShrineMaidenOfParadise
device/*/*-samsung-espresso10/ @MightyM17
device/*/*-samsung-espresso7/ @MightyM17 @antoni.aloytorrens
device/*/*-samsung-grandmax/ @wonderfulShrineMaidenOfParadise
device/*/*-samsung-gt510/ @TravMurav
device/*/*-samsung-gt58/ @TravMurav
device/*/*-samsung-serranove/ @Minecrell
device/*/*-videostrong-kii-pro/ @vitali64yt
device/*/*-wileyfox-crackling/ @TravMurav @Minecrell
device/*/*-xiaomi-beryllium/ @joelselvaraj
device/*/*-xiaomi-daisy/ @joelselvaraj @alikates
device/*/*-xiaomi-markw/ @vipaoL
device/*/*-xiaomi-mido/ @barni2000
device/*/*-xiaomi-scorpio/ @Tooniis
device/*/*-xiaomi-tissot/ @jiaxyga @barni2000
device/*/*-xiaomi-vince/ @M0Rf30
device/*/*-xiaomi-wt88047/ @Minecrell
device/*/*-xiaomi-ysl/ @barni2000
device/*/device-fairphone-*/ @z3ntu
device/*/device-google-nyan-big/ @jenneron
device/*/device-google-nyan-blaze/ @jenneron
device/*/device-google-peach-pi/ @jenneron
device/*/device-google-peach-pit/ @jenneron
device/*/device-google-snow/ @jenneron
device/*/device-huawei-plank/ @gtrxAC
device/*/device-lg-judyln/ @Newbyte
device/*/device-lg-judyp/ @jenneron
device/*/device-microsoft-surface-rt/ @jenneron @jethrob
device/*/device-nvidia-tegra-armv7/ @clamor95 @okias @mschwalm @nokun
device/*/device-odroid-xu4/ @Grimler
device/*/device-oneplus-enchilada/ @calebccff
device/*/device-oneplus-fajita/ @calebccff
device/*/firmware-oneplus-sdm845/ @calebccff
device/*/device-qemu-aarch64/ @Minecrell @ollieparanoid
device/*/device-qemu-amd64/ @Minecrell @ollieparanoid
device/*/device-qemu-riscv64/ @Minecrell @z3ntu
device/*/device-samsung-chagallwifi/ @Grimler
device/*/device-samsung-coreprimevelte/ @legolivesmatter @balejk
device/*/device-samsung-j5y17lte/ @andrisas
device/*/device-samsung-klimtlte/ @Grimler
device/*/device-samsung-m0/ @Newbyte
device/*/device-samsung-manta/ @jenneron @alexmrqt
device/*/device-shift-axolotl/ @amartinz @calebccff @dylanvanassche
device/*/*-lenovo-a6010/ @jenneron
device/*/*-lenovo-a6000/ @jenneron
device/*/device-microsoft-surface-rt/ @jenneron
device/*/device-google-fennel/ @jenneron
device/*/device-google-veyron-minnie/ @jenneron
device/*/device-google-burnet/ @jenneron
device/*/device-google-elm/ @jenneron
device/*/device-google-nyan-big/ @jenneron
device/*/device-google-peach-pi/ @jenneron
device/*/device-google-veyron-speedy/ @jenneron
device/*/linux-google-veyron/ @jenneron
device/*/u-boot-peach-pi/ @jenneron
device/*/device-google-cozmo/ @jenneron
device/*/u-boot-veyron-speedy/ @jenneron
device/*/device-google-juniper/ @jenneron @binarycraft
device/*/u-boot-peach-pit/ @jenneron
device/*/device-google-damu/ @jenneron
device/*/u-boot-nyan-4gb/ @jenneron
device/*/device-google-kenzo/ @jenneron
device/*/device-google-kodama/ @jenneron
device/*/u-boot-snow/ @jenneron
device/*/device-google-kevin/ @jenneron
device/*/linux-postmarketos-exynos5/ @jenneron @Grimler
device/*/device-google-krane/ @jenneron
device/*/soc-mediatek-mt8183/ @jenneron
device/*/u-boot-veyron-minnie/ @jenneron
device/*/device-google-fennel14/ @jenneron
device/*/linux-google-nyan/ @jenneron
device/*/device-google-willow/ @jenneron
device/*/linux-postmarketos-mediatek-mt8173/ @jenneron
device/*/linux-postmarketos-mediatek-mt8183/ @jenneron @binarycraft
device/*/device-google-nyan-blaze/ @jenneron
device/*/firmware-powervr-gx6250/ @jenneron
device/*/device-google-hana/ @jenneron
device/*/device-google-snow/ @jenneron
device/*/device-google-kappa/ @jenneron
device/*/u-boot-nyan-2gb/ @jenneron
device/*/device-google-veyron-jerry/ @jenneron
device/*/device-google-kakadu/ @jenneron
device/*/firmware-google-veyron-brcm/ @jenneron
device/*/device-google-peach-pit/ @jenneron
device/*/device-lg-judyp/ @jenneron
device/*/device-asus-tf201/ @clamor95
device/*/device-asus-tf300t/ @clamor95
device/*/device-asus-tf300tg/ @clamor95
device/*/device-asus-tf700t/ @clamor95
device/*/device-lg-p895/ @clamor95
device/*/firmware-asus-transformer/ @clamor95 @jenneron
device/*/firmware-lg-x3/ @clamor95
device/*/linux-postmarketos-grate/ @clamor95 @jenneron
device/*/device-samsung-chagallwifi @Grimler
device/*/device-odroid-xu4 @Grimler
device/*/device-samsung-klimtlte @Grimler
device/*/linux-samsung-klimtlte @Grimler
device/*/firmware-odroid-xu4 @Grimler
device/*/linux-samsung-chagallwifi @Grimler
device/*/device-huawei-plank @gtrxAC
device/*/linux-huawei-plank @gtrxAC
device/*/firmware-odroid-xu4/ @Grimler
device/*/firmware-oneplus-sdm845/ @calebccff
device/*/firmware-powervr-gx6250/ @jenneron
device/*/linux-google-nyan/ @jenneron
device/*/linux-google-veyron/ @jenneron
device/*/linux-huawei-plank/ @gtrxAC
device/*/linux-postmarketos-allwinner/ @Arnavion @PsychoGame
device/*/linux-postmarketos-amlogic/ @vitali64yt @exkc
device/*/linux-postmarketos-exynos4/ @Newbyte @ThiagaoPlusPlus
device/*/linux-postmarketos-exynos5/ @jenneron @Grimler
device/*/linux-postmarketos-grate/ @clamor95 @jenneron @jethrob
device/*/linux-postmarketos-mediatek-mt8173/ @jenneron @adamthiede
device/*/linux-postmarketos-mediatek-mt8183/ @jenneron @binarycraft
device/*/linux-postmarketos-omap/ @MightyM17 @Sicelo
device/*/linux-postmarketos-qcom-msm8939/ @Newbyte
device/*/linux-postmarketos-qcom-msm8953/ @M0Rf30 @Ultra-azu
device/*/linux-postmarketos-qcom-msm8996/ @Tooniis
device/*/linux-postmarketos-qcom-sc7180/ @jenneron
device/*/linux-postmarketos-rockchip/ @QC8086
device/*/linux-postmarketos-stericsson/ @Newbyte
device/*/linux-samsung-chagallwifi/ @Grimler
device/*/linux-samsung-coreprimevelte/ @legolivesmatter @balejk
device/*/linux-samsung-j5y17lte/ @andrisas
device/*/linux-samsung-klimtlte/ @Grimler
device/*/oem-amd/ @craftyguy
device/*/oem-intel/ @craftyguy
device/*/soc-mediatek-mt8183/ @jenneron
device/*/soc-qcom-msm8953/ @barni2000
device/*/soc-qcom-msm8996/ @Tooniis
device/*/soc-qcom-sc7180/ @jenneron
device/*/soc-rockchip-rk3399/ @jenneron
device/*/soc-samsung-exynos4412/ @Newbyte
device/*/u-boot-librem5/ @craftyguy @alistair23 @Newbyte
device/*/u-boot-pinebookpro/ @QC8086
device/*/u-boot-pinephone/ @Arnavion @PsychoGame
device/*/wl1251-cal/ @Danct12
main/postmarketos-ui-plasma-mobile/ @bshah
main/postmarketos-update-depthcharge-kernel/ @jenneron
main/osk-sdl/ @craftyguy
main/postmarketos-ui-plasma-mobile/ @bshah
main/ttyescape @calebccff
temp/u-boot-librem5/ @craftyguy @bshah
temp/alsa-ucm-conf-google-kukui/ @jenneron @binarycraft
temp/alsa-ucm-conf-google-gru/ @jenneron
device/*/*-videostrong-kii-pro/ @vitali64yt
device/*/*-amlogic-s905* @vitali64yt
device/*/linux-postmarketos-amlogic/ @vitali64yt @exkc
# vim: ts=8 sw=4 et
main/shutdown-clear-rtc-wakealarm/ @Arnavion
main/ttyescape/ @calebccff
+7 -1
View File
@@ -8,8 +8,14 @@ branch_pmaports=master
branch_aports=master
mirrordir_alpine=edge
[v23.06]
[v23.12]
description=Latest release / Recommended for best stability
branch_pmaports=v23.12
branch_aports=3.19-stable
mirrordir_alpine=v3.19
[v23.06]
description=Old release (unsupported)
branch_pmaports=v23.06
branch_aports=3.18-stable
mirrordir_alpine=v3.18
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-aarch64
pkgver=1.36.1
pkgrel=13
pkgrel=21
_arch="aarch64"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
681be47249ef54bf72b1c8efab04df871605660f1264e53f7173354dcc4d111e30178c21946a0bda9a2323f112c4aad17ec988d845b326250cbb03cf42a59411 busybox-static-1.36.1-r13-aarch64-edge.apk
0a234d00087f85ba8b21d014c38535947ae087df94c18a174717452c91f732489d258394bf616fecae94259e1c932edcf8ea1dcf4aacf6eb803064e3b3587a78 busybox-static-1.36.1-r21-aarch64-edge.apk
"
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-armhf
pkgver=1.36.1
pkgrel=13
pkgrel=21
_arch="armhf"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
6cc17825b7a59698ad2ce0c8f563d3aa2a03befafa9d52a6baac12d2481c07304c6f29c02410b66d50e34bf071b4201d4ddef441e23ae60f4d3f3da74a637840 busybox-static-1.36.1-r13-armhf-edge.apk
0f8c600ff2fe1a176503e44924dfdd7520615b3be8e5e84b5fa869c543d43ee7a5307cdf7b8b46effbf8f393682566fa76a9368bcb228e4b44d800ef7c01b888 busybox-static-1.36.1-r21-armhf-edge.apk
"
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-armv7
pkgver=1.36.1
pkgrel=13
pkgrel=21
_arch="armv7"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
6cdc89b734fcc82edac2490d370baca8480e48b42d398f95aed930abd88bb0c66da7308092ad290d6e2484242eaca8ce5ae698f5e1bb5d102746e44028321e09 busybox-static-1.36.1-r13-armv7-edge.apk
441ff2d84e385408671c34f891dbe245a3b3c16668f6c985786067fad093c0d218e85695c0604d3f8364b750ff7e7eb4ee00af089ed198d419300b2d4e3edf61 busybox-static-1.36.1-r21-armv7-edge.apk
"
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+14 -7
View File
@@ -24,7 +24,7 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-aarch64
pkgver=13.2.1_git20231014
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
@@ -46,6 +46,7 @@ makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-
subpackages="g++-aarch64:gpp libstdc++-dev-aarch64:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
@@ -143,7 +144,7 @@ case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64) LANG_D=false ;;
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
@@ -155,6 +156,7 @@ case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
@@ -162,6 +164,7 @@ esac
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
@@ -186,6 +189,11 @@ riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
@@ -269,6 +277,7 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
@@ -328,6 +337,7 @@ build() {
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
@@ -683,10 +693,6 @@ go() {
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
# See https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
provides="go-bootstrap"
provider_priority=1 # lowest, see community/go
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
@@ -787,7 +793,7 @@ gdb() {
}
sha512sums="
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -823,4 +829,5 @@ b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+14 -7
View File
@@ -24,7 +24,7 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-armhf
pkgver=13.2.1_git20231014
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
@@ -46,6 +46,7 @@ makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-
subpackages="g++-armhf:gpp libstdc++-dev-armhf:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
@@ -143,7 +144,7 @@ case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64) LANG_D=false ;;
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
@@ -155,6 +156,7 @@ case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
@@ -162,6 +164,7 @@ esac
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
@@ -186,6 +189,11 @@ riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
@@ -269,6 +277,7 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
@@ -328,6 +337,7 @@ build() {
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
@@ -683,10 +693,6 @@ go() {
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
# See https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
provides="go-bootstrap"
provider_priority=1 # lowest, see community/go
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
@@ -787,7 +793,7 @@ gdb() {
}
sha512sums="
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -823,4 +829,5 @@ b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+14 -7
View File
@@ -24,7 +24,7 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-armv7
pkgver=13.2.1_git20231014
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
@@ -46,6 +46,7 @@ makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-
subpackages="g++-armv7:gpp libstdc++-dev-armv7:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
@@ -143,7 +144,7 @@ case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64) LANG_D=false ;;
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
@@ -155,6 +156,7 @@ case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
@@ -162,6 +164,7 @@ esac
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
@@ -186,6 +189,11 @@ riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
@@ -269,6 +277,7 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
@@ -328,6 +337,7 @@ build() {
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
@@ -683,10 +693,6 @@ go() {
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
# See https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
provides="go-bootstrap"
provider_priority=1 # lowest, see community/go
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
@@ -787,7 +793,7 @@ gdb() {
}
sha512sums="
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -823,4 +829,5 @@ b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+14 -7
View File
@@ -24,7 +24,7 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-riscv64
pkgver=13.2.1_git20231014
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
@@ -46,6 +46,7 @@ makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-
subpackages="g++-riscv64:gpp libstdc++-dev-riscv64:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
@@ -143,7 +144,7 @@ case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64) LANG_D=false ;;
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
@@ -155,6 +156,7 @@ case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
@@ -162,6 +164,7 @@ esac
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
@@ -186,6 +189,11 @@ riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
@@ -269,6 +277,7 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
@@ -328,6 +337,7 @@ build() {
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
@@ -683,10 +693,6 @@ go() {
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
# See https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
provides="go-bootstrap"
provider_priority=1 # lowest, see community/go
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
@@ -787,7 +793,7 @@ gdb() {
}
sha512sums="
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -823,4 +829,5 @@ b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+14 -7
View File
@@ -24,7 +24,7 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-x86
pkgver=13.2.1_git20231014
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
@@ -46,6 +46,7 @@ makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-
subpackages="g++-x86:gpp libstdc++-dev-x86:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
@@ -143,7 +144,7 @@ case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64) LANG_D=false ;;
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
@@ -155,6 +156,7 @@ case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
@@ -162,6 +164,7 @@ esac
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
@@ -186,6 +189,11 @@ riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
@@ -269,6 +277,7 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
@@ -328,6 +337,7 @@ build() {
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
@@ -683,10 +693,6 @@ go() {
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
# See https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
provides="go-bootstrap"
provider_priority=1 # lowest, see community/go
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
@@ -787,7 +793,7 @@ gdb() {
}
sha512sums="
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -823,4 +829,5 @@ b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
@@ -0,0 +1,42 @@
From 47b4bd4deb2c356bb07d2a96f22127aefafec3a4 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH 01/35] posix_memalign
---
gcc/config/i386/pmm_malloc.h | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
index 3527283693b..c4071b64b53 100644
--- a/gcc/config/i386/pmm_malloc.h
+++ b/gcc/config/i386/pmm_malloc.h
@@ -27,12 +27,13 @@
#include <stdlib.h>
/* We can't depend on <stdlib.h> since the prototype of posix_memalign
- may not be visible. */
+ may not be visible and we can't pollute the namespace either. */
#ifndef __cplusplus
-extern int posix_memalign (void **, size_t, size_t);
+extern int _mm_posix_memalign (void **, size_t, size_t)
#else
-extern "C" int posix_memalign (void **, size_t, size_t) throw ();
+extern "C" int _mm_posix_memalign (void **, size_t, size_t) throw ()
#endif
+__asm__("posix_memalign");
static __inline void *
_mm_malloc (size_t __size, size_t __alignment)
@@ -42,7 +43,7 @@ _mm_malloc (size_t __size, size_t __alignment)
return malloc (__size);
if (__alignment == 2 || (sizeof (void *) == 8 && __alignment == 4))
__alignment = sizeof (void *);
- if (posix_memalign (&__ptr, __alignment, __size) == 0)
+ if (_mm_posix_memalign (&__ptr, __alignment, __size) == 0)
return __ptr;
else
return NULL;
--
2.41.0
@@ -0,0 +1,203 @@
From 4fa620d8c3e6730211bfb071eb4c817320491bd0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 08:59:00 +0400
Subject: [PATCH 02/35] gcc: poison-system-directories
Add /sw/include and /opt/include based on the original
zecke-no-host-includes.patch patch. The original patch checked for
/usr/include, /sw/include and /opt/include and then triggered a failure and
aborted.
Instead, we add the two missing items to the current scan. If the user
wants this to be a failure, they can add "-Werror=poison-system-directories".
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
---
gcc/common.opt | 4 ++++
gcc/config.in | 6 ++++++
gcc/configure | 16 ++++++++++++++++
gcc/configure.ac | 10 ++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.cc | 2 ++
gcc/incpath.cc | 21 +++++++++++++++++++++
7 files changed, 68 insertions(+)
diff --git a/gcc/common.opt b/gcc/common.opt
index 862c474d3c8..64c4277c991 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -711,6 +711,10 @@ Wreturn-local-addr
Common Var(warn_return_local_addr) Init(1) Warning
Warn about returning a pointer/reference to a local or temporary variable.
+Wpoison-system-directories
+Common Var(flag_poison_system_directories) Init(1) Warning
+Warn for -I and -L options using system directories if cross compiling
+
Wshadow
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
index 4cad077bfbe..0679fbbf4c6 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -236,6 +236,12 @@
#endif
+/* Define to warn for use of native system header directories */
+#ifndef USED_FOR_TARGET
+#undef ENABLE_POISON_SYSTEM_DIRECTORIES
+#endif
+
+
/* Define if you want all operations on RTL (the basic data structure of the
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
index c7b26d1927d..8c46369f73f 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1026,6 +1026,7 @@ enable_maintainer_mode
enable_link_mutex
enable_link_serialization
enable_version_specific_runtime_libs
+enable_poison_system_directories
enable_plugin
enable_host_shared
enable_libquadmath_support
@@ -1788,6 +1789,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
+ --enable-poison-system-directories
+ warn for use of native system header directories
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -31753,6 +31756,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
+# Check whether --enable-poison-system-directories was given.
+if test "${enable_poison_system_directories+set}" = set; then :
+ enableval=$enable_poison_system_directories;
+else
+ enable_poison_system_directories=no
+fi
+
+if test "x${enable_poison_system_directories}" = "xyes"; then
+
+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
+
+fi
+
# Substitute configuration variables
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 09082e8ccae..5504bf6eb01 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7292,6 +7292,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
+AC_ARG_ENABLE([poison-system-directories],
+ AS_HELP_STRING([--enable-poison-system-directories],
+ [warn for use of native system header directories]),,
+ [enable_poison_system_directories=no])
+if test "x${enable_poison_system_directories}" = "xyes"; then
+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
+ [1],
+ [Define to warn for use of native system header directories])
+fi
+
# Substitute configuration variables
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index af0e5933fdb..b6731a4673c 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -384,6 +384,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded
-Wparentheses -Wno-pedantic-ms-format
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast
+-Wno-poison-system-directories
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls
-Wrestrict -Wno-return-local-addr -Wreturn-type
-Wno-scalar-storage-order -Wsequence-point
@@ -8426,6 +8427,14 @@ made up of data only and thus requires no special treatment. But, for
most targets, it is made up of code and thus requires the stack to be
made executable in order for the program to work properly.
+@opindex Wno-poison-system-directories
+@item -Wno-poison-system-directories
+Do not warn for @option{-I} or @option{-L} options using system
+directories such as @file{/usr/include} when cross compiling. This
+option is intended for use in chroot environments when such
+directories contain the correct headers and libraries for the target
+system rather than the host.
+
@opindex Wfloat-equal
@opindex Wno-float-equal
@item -Wfloat-equal
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 16bb07f2cdc..33b56e721d2 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1146,6 +1146,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
+ %{Wno-poison-system-directories:--no-poison-system-directories} \
+ %{Werror=poison-system-directories:--error-poison-system-directories} \
%{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
index 4d44321183f..0f3f071b44c 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@
#include "intl.h"
#include "incpath.h"
#include "cppdefault.h"
+#include "diagnostic-core.h"
/* Microsoft Windows does not natively support inodes.
VMS has non-numeric inodes. */
@@ -399,6 +400,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
}
fprintf (stderr, _("End of search list.\n"));
}
+
+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
+ if (flag_poison_system_directories)
+ {
+ struct cpp_dir *p;
+
+ for (p = heads[INC_QUOTE]; p; p = p->next)
+ {
+ if ((!strncmp (p->name, "/usr/include", 12))
+ || (!strncmp (p->name, "/usr/local/include", 18))
+ || (!strncmp (p->name, "/usr/X11R6/include", 18))
+ || (!strncmp (p->name, "/sw/include", 11))
+ || (!strncmp (p->name, "/opt/include", 12)))
+ warning (OPT_Wpoison_system_directories,
+ "include location \"%s\" is unsafe for "
+ "cross-compilation",
+ p->name);
+ }
+ }
+#endif
}
/* Use given -I paths for #include "..." but not #include <...>, and
--
2.41.0
@@ -0,0 +1,44 @@
From ff4dd4ce33133e675b7bedc86b73357c04631cb9 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH 03/35] specs: turn on -Wl,-z,now by default
Previously, we also used to turn on -z relro here, but we now build
binutils with --enable-relro, which is functionally equivalent.
Binutils does not appear to have a similar option for enabling -z
now by default.
---
gcc/doc/invoke.texi | 3 +++
gcc/gcc.cc | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index b6731a4673c..f393c7846c6 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -17961,6 +17961,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
linker. When using the GNU linker, you can also get the same effect with
@option{-Wl,-Map=output.map}.
+NOTE: In Alpine Linux, for LDFLAGS, the option
+@option{-Wl,-z,now} is used. To disable, use @option{-Wl,-z,nonow}.
+
@opindex u
@item -u @var{symbol}
Pretend the symbol @var{symbol} is undefined, to force linking of
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 33b56e721d2..f82fae23c22 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1144,6 +1144,7 @@ proper position among the other output files. */
"%{flto|flto=*:%<fcompare-debug*} \
%{flto} %{fno-lto} %{flto=*} %l " LINK_PIE_SPEC \
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
+ "-z now " \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
2.41.0
@@ -0,0 +1,46 @@
From 1b315235433701e4a974da259b8d651169ddc7ac Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH 04/35] Turn on -D_FORTIFY_SOURCE=2 by default for C, C++,
ObjC, ObjC++, if the optimization level is > 0
---
gcc/c-family/c-cppbuiltin.cc | 4 ++++
gcc/doc/invoke.texi | 6 ++++++
2 files changed, 10 insertions(+)
diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc
index 5d64625fcd7..868d69506e4 100644
--- a/gcc/c-family/c-cppbuiltin.cc
+++ b/gcc/c-family/c-cppbuiltin.cc
@@ -1546,6 +1546,10 @@ c_cpp_builtins (cpp_reader *pfile)
builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
+ /* Fortify Source enabled by default for optimization levels > 0 */
+ if (optimize)
+ builtin_define_with_int_value ("_FORTIFY_SOURCE", 2);
+
/* Misc. */
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index f393c7846c6..ef3c14a189e 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -11868,6 +11868,12 @@ also turns on the following optimization flags:
Please note the warning under @option{-fgcse} about
invoking @option{-O2} on programs that use computed gotos.
+NOTE: In Alpine Linux, @option{-D_FORTIFY_SOURCE=2} is
+set by default, and is activated when @option{-O} is set to 2 or higher.
+This enables additional compile-time and run-time checks for several libc
+functions. To disable, specify either @option{-U_FORTIFY_SOURCE} or
+@option{-D_FORTIFY_SOURCE=0}.
+
@opindex O3
@item -O3
Optimize yet more. @option{-O3} turns on all optimizations specified
--
2.41.0
@@ -0,0 +1,272 @@
From 67c0f5789630b27149f60ff831999ef7c1dba5d5 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH 05/35] On linux targets pass --as-needed by default to the
linker, but always link the sanitizer libraries with --no-as-needed.
---
gcc/config/aarch64/aarch64-linux.h | 1 +
gcc/config/alpha/linux-elf.h | 2 +-
gcc/config/arm/linux-elf.h | 1 +
gcc/config/gnu-user.h | 6 +++---
gcc/config/i386/gnu-user.h | 2 +-
gcc/config/i386/gnu-user64.h | 1 +
gcc/config/ia64/linux.h | 2 +-
gcc/config/mips/gnu-user.h | 1 +
gcc/config/riscv/linux.h | 1 +
gcc/config/rs6000/linux64.h | 4 ++--
gcc/config/rs6000/sysv4.h | 2 +-
gcc/config/s390/linux.h | 2 +-
gcc/config/sparc/linux.h | 2 +-
gcc/gcc.cc | 28 ++++++++++++++++++++--------
14 files changed, 36 insertions(+), 19 deletions(-)
diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
index 4277f03da2a..b131983a546 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define LINUX_TARGET_LINK_SPEC "%{h*} \
+ --as-needed \
%{static:-Bstatic} \
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
index 03f783f2ad1..d946e700dda 100644
--- a/gcc/config/alpha/linux-elf.h
+++ b/gcc/config/alpha/linux-elf.h
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER
-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+#define LINK_SPEC "-m elf64alpha --as-needed %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
%{shared:-shared} \
%{!shared: \
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 7b7b7cbbe14..49c050c6f2c 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
-X \
+ --as-needed \
%{mbig-endian:-EB} %{mlittle-endian:-EL}" \
SUBTARGET_EXTRA_LINK_SPEC
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index eda8010b133..b26b17f2f2a 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LIBASAN_EARLY_SPEC "%{!shared:libasan_preinit%O%s} " \
"%{static-libasan:%{!shared:" \
LD_STATIC_OPTION " --whole-archive -lasan --no-whole-archive " \
- LD_DYNAMIC_OPTION "}}%{!static-libasan:-lasan}"
+ LD_DYNAMIC_OPTION "}}%{!static-libasan:%{!fuse-ld=gold:--push-state} --no-as-needed -lasan %{fuse-ld=gold:--as-needed;:--pop-state}}"
#undef LIBHWASAN_EARLY_SPEC
#define LIBHWASAN_EARLY_SPEC "%{!shared:libhwasan_preinit%O%s} " \
"%{static-libhwasan:%{!shared:" \
@@ -146,12 +146,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LIBTSAN_EARLY_SPEC "%{!shared:libtsan_preinit%O%s} " \
"%{static-libtsan:%{!shared:" \
LD_STATIC_OPTION " --whole-archive -ltsan --no-whole-archive " \
- LD_DYNAMIC_OPTION "}}%{!static-libtsan:-ltsan}"
+ LD_DYNAMIC_OPTION "}}%{!static-libtsan:%{!fuse-ld=gold:--push-state} --no-as-needed -ltsan %{fuse-ld=gold:--as-needed;:--pop-state}}"
#undef LIBLSAN_EARLY_SPEC
#define LIBLSAN_EARLY_SPEC "%{!shared:liblsan_preinit%O%s} " \
"%{static-liblsan:%{!shared:" \
LD_STATIC_OPTION " --whole-archive -llsan --no-whole-archive " \
- LD_DYNAMIC_OPTION "}}%{!static-liblsan:-llsan}"
+ LD_DYNAMIC_OPTION "}}%{!static-liblsan:%{!fuse-ld=gold:--push-state} --no-as-needed -llsan %{fuse-ld=gold:--as-needed;:--pop-state}}"
#endif
#undef TARGET_F951_OPTIONS
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index a79b739089d..e0752673dff 100644
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -68,7 +68,7 @@ along with GCC; see the file COPYING3. If not see
{ "link_emulation", GNU_USER_LINK_EMULATION },\
{ "dynamic_linker", GNU_USER_DYNAMIC_LINKER }
-#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) --as-needed %{shared:-shared} \
%{!shared: \
%{!static: \
%{!static-pie: \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index 3b63b99acf6..759bf0db86f 100644
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -56,6 +56,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
"%{" SPEC_64 ":-m " GNU_USER_LINK_EMULATION64 "} \
%{" SPEC_32 ":-m " GNU_USER_LINK_EMULATION32 "} \
%{" SPEC_X32 ":-m " GNU_USER_LINK_EMULATIONX32 "} \
+ --as-needed \
%{shared:-shared} \
%{!shared: \
%{!static: \
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index 5dfd428aa17..02656dad7fc 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do { \
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "\
+#define LINK_SPEC " --as-needed \
%{shared:-shared} \
%{!shared: \
%{!static: \
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index a4e5380b589..3cc61bce69f 100644
--- a/gcc/config/mips/gnu-user.h
+++ b/gcc/config/mips/gnu-user.h
@@ -55,6 +55,7 @@ along with GCC; see the file COPYING3. If not see
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC "\
%{G*} %{EB} %{EL} %{mips*} %{shared} \
+ -as-needed \
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index 3e625e0f867..f8c2c351e5a 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -48,6 +48,7 @@ along with GCC; see the file COPYING3. If not see
"%{mabi=ilp32:_ilp32}"
#define LINK_SPEC "\
+-as-needed \
-melf" XLEN_SPEC DEFAULT_ENDIAN_SPEC "riscv" LD_EMUL_SUFFIX " \
%{mno-relax:--no-relax} \
%{mbig-endian:-EB} \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 9e457033d11..08016bf224d 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -377,13 +377,13 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
-#define LINK_OS_LINUX_SPEC32 LINK_OS_LINUX_EMUL32 " %{!shared: %{!static: \
+#define LINK_OS_LINUX_SPEC32 LINK_OS_LINUX_EMUL32 " --as-needed %{!shared: %{!static: \
%{!static-pie: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER32 "}}} \
%(link_os_extra_spec32)"
-#define LINK_OS_LINUX_SPEC64 LINK_OS_LINUX_EMUL64 " %{!shared: %{!static: \
+#define LINK_OS_LINUX_SPEC64 LINK_OS_LINUX_EMUL64 " --as-needed %{!shared: %{!static: \
%{!static-pie: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "}}} \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index ae932fc22f0..c8ff0c6dc8e 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -780,7 +780,7 @@ GNU_USER_TARGET_CC1_SPEC
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#endif
-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --as-needed %{!shared: %{!static: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index 02aa1edaff8..64df5801134 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -82,7 +82,7 @@ along with GCC; see the file COPYING3. If not see
#undef LINK_SPEC
#define LINK_SPEC \
- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \
%{shared:-shared} \
%{!shared: \
%{static:-static} \
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 0e33b3cac2c..c2f44546e62 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -81,7 +81,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+#define LINK_SPEC "-m elf32_sparc --as-needed %{shared:-shared} \
%{!mno-relax:%{!r:-relax}} \
%{!shared: \
%{!static: \
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index f82fae23c22..da6417dd0d1 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -754,8 +754,11 @@ proper position among the other output files. */
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \
- "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
+ " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lasan " \
+ " %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -790,8 +793,11 @@ proper position among the other output files. */
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION \
- "} -ltsan %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -ltsan " \
+ " %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -808,8 +814,11 @@ proper position among the other output files. */
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION \
- "} -llsan %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
+ " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -llsan " \
+ " %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -824,8 +833,11 @@ proper position among the other output files. */
#define STATIC_LIBUBSAN_LIBS \
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
-#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION \
- "} -lubsan %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lubsan " \
+ " %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.41.0
@@ -0,0 +1,34 @@
From bb25e8489384504cd59e4a2538720863da1fb29c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH 06/35] Enable -Wformat and -Wformat-security by default.
---
gcc/c-family/c.opt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index a75038930ae..b98726f33ed 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -704,7 +704,7 @@ Warn about function calls with format strings that write past the end
of the destination region. Same as -Wformat-overflow=1.
Wformat-security
-C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
+C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
Warn about possible security problems with format functions.
Wformat-signedness
@@ -725,7 +725,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
Warn about zero-length formats.
Wformat=
-C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2)
+C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2)
Warn about printf/scanf/strftime/strfmon format string anomalies.
Wformat-overflow=
--
2.41.0
@@ -0,0 +1,25 @@
From 4a728ad48a7b437cc6f2697e26603bf648149f86 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH 07/35] Enable -Wtrampolines by default.
---
gcc/common.opt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index 64c4277c991..c24839d32bc 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -803,7 +803,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
-Common Var(warn_trampolines) Warning
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtrivial-auto-var-init
--
2.41.0
@@ -0,0 +1,53 @@
From 32f24560d0602f7735d5e9efd92fe3151bd72cea Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH 08/35] Disable ssp on -nostdlib, -nodefaultlibs and
-ffreestanding Change the buffer size.
---
gcc/gcc.cc | 8 +++++++-
gcc/params.opt | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index da6417dd0d1..b5a6f200635 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -983,6 +983,12 @@ proper position among the other output files. */
#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
#endif
+#ifdef ENABLE_DEFAULT_SSP
+#define NO_SSP_SPEC "%{nostdlib|nodefaultlibs|ffreestanding:-fno-stack-protector} "
+#else
+#define NO_SSP_SPEC ""
+#endif
+
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1282,7 +1288,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %w%b.s}}}\
- %{fsyntax-only:-o %j} %{-param*}\
+ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
%{coverage:-fprofile-arcs -ftest-coverage}\
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
diff --git a/gcc/params.opt b/gcc/params.opt
index 823cdb2ff85..5b096899b40 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -1006,7 +1006,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
The maximum number of SSA_NAME assignments to follow in determining a value.
-param=ssp-buffer-size=
-Common Joined UInteger Var(param_ssp_buffer_size) Init(8) IntegerRange(1, 65536) Param Optimization
+Common Joined UInteger Var(param_ssp_buffer_size) Init(4) IntegerRange(1, 65536) Param Optimization
The lower bound for a buffer to be considered for stack smashing protection.
-param=stack-clash-protection-guard-size=
--
2.41.0
@@ -0,0 +1,54 @@
From c7ec8da7280d7f97f5543eb9ddeca7600aafc43c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH 09/35] Ensure that msgfmt doesn't encounter problems during
gcc bootstrapping.
Solves error messages like the following:
msgfmt: /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/libstdc++.so.6)
The libgcc_s.so used during build doesn't satisfy the needs of the
libstdc++.so that msgfmt is linked against. On the other hand, msgfmt
is used as a stand-alone application here, and what library it uses
behind the scenes is of no concern to the gcc build process.
Therefore, simply invoking it "as usual", i.e. without any special
library path, will make it work as expected here.
2011-09-19 Martin von Gagern
References:
https://bugs.gentoo.org/372377
https://bugs.gentoo.org/295480
---
libstdc++-v3/po/Makefile.am | 1 +
libstdc++-v3/po/Makefile.in | 1 +
2 files changed, 2 insertions(+)
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index 12d34910830..61b13762b71 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -38,6 +38,7 @@ MSGFMT = msgfmt
EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN)
.po.mo:
+ env --unset=LD_LIBRARY_PATH \
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index 8e93445acd2..d6ff06e5ddb 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -561,6 +561,7 @@ uninstall-am:
.po.mo:
+ env --unset=LD_LIBRARY_PATH \
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--
2.41.0
@@ -0,0 +1,28 @@
From aaa029bcee68298695b7c4278c90b6bc320d098c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH 10/35] Don't declare asprintf if defined as a macro.
---
include/libiberty.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/libiberty.h b/include/libiberty.h
index 1d5c779fcff..19e3cb1e31c 100644
--- a/include/libiberty.h
+++ b/include/libiberty.h
@@ -652,8 +652,11 @@ extern void *bsearch_r (const void *, const void *,
/* Like sprintf but provides a pointer to malloc'd storage, which must
be freed by the caller. */
+/* asprintf may be declared as a macro by glibc with __USE_FORTIFY_LEVEL. */
+#ifndef asprintf
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
#endif
+#endif
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
2.41.0
@@ -0,0 +1,24 @@
From 65e01e749205c9af218b01233cebd0077538d0ee Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH 11/35] libiberty: copy PIC objects during build process
---
libiberty/Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index 72608f3e4a7..58356884728 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -265,6 +265,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
$(AR) $(AR_FLAGS) $(TARGETLIB) \
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
$(RANLIB) $(TARGETLIB); \
+ cp $(TARGETLIB) ../ ; \
cd ..; \
else true; fi
--
2.41.0
+57
View File
@@ -0,0 +1,57 @@
From 453a815bf2844971a91eaef800af188d9e86b784 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH 12/35] libgcc_s
---
gcc/config/i386/i386-expand.cc | 4 ++--
libgcc/config/i386/cpuinfo.c | 6 +++---
libgcc/config/i386/t-linux | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
index 0d817fc3f3b..2e99db00db9 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
@@ -12691,10 +12691,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
{
case IX86_BUILTIN_CPU_INIT:
{
- /* Make it call __cpu_indicator_init in libgcc. */
+ /* Make it call __cpu_indicator_init in libgcc.a. */
tree call_expr, fndecl, type;
type = build_function_type_list (integer_type_node, NULL_TREE);
- fndecl = build_fn_decl ("__cpu_indicator_init", type);
+ fndecl = build_fn_decl ("__cpu_indicator_init_local", type);
call_expr = build_call_expr (fndecl, 0);
return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
}
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index 50b6d8248a2..724ced402a1 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -63,7 +63,7 @@ __cpu_indicator_init (void)
__cpu_features2);
}
-#if defined SHARED && defined USE_ELF_SYMVER
-__asm__ (".symver __cpu_indicator_init, __cpu_indicator_init@GCC_4.8.0");
-__asm__ (".symver __cpu_model, __cpu_model@GCC_4.8.0");
+#ifndef SHARED
+int __cpu_indicator_init_local (void)
+ __attribute__ ((weak, alias ("__cpu_indicator_init")));
#endif
diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
index 8506a635790..564296f788e 100644
--- a/libgcc/config/i386/t-linux
+++ b/libgcc/config/i386/t-linux
@@ -3,5 +3,5 @@
# t-slibgcc-elf-ver and t-linux
SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver
-HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER $(CET_FLAGS)
+HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS)
CRTSTUFF_T_CFLAGS += $(CET_FLAGS)
--
2.41.0
+75
View File
@@ -0,0 +1,75 @@
From 7d7d12137c666761a8dd61179c9651b85dae9b41 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH 13/35] nopie
---
gcc/configure | 27 +++++++++++++++++++++++++++
gcc/configure.ac | 13 +++++++++++++
2 files changed, 40 insertions(+)
diff --git a/gcc/configure b/gcc/configure
index 8c46369f73f..e59cbee1767 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -32268,6 +32268,33 @@ fi
$as_echo "$gcc_cv_no_pie" >&6; }
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
+else
+ # Check if -nopie works.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -nopie option" >&5
+$as_echo_n "checking for -nopie option... " >&6; }
+if test "${gcc_cv_nopie+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ saved_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -nopie"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+int main(void) {return 0;}
+_ACEOF
+if ac_fn_cxx_try_link "$LINENO"; then :
+ gcc_cv_nopie=yes
+else
+ gcc_cv_nopie=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$saved_LDFLAGS"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_nopie" >&5
+$as_echo "$gcc_cv_nopie" >&6; }
+ if test "$gcc_cv_nopie" = "yes"; then
+ NO_PIE_FLAG="-nopie"
+ fi
fi
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 5504bf6eb01..57268319de1 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7552,6 +7552,19 @@ AC_CACHE_CHECK([for -no-pie option],
LDFLAGS="$saved_LDFLAGS"])
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
+else
+ # Check if -nopie works.
+ AC_CACHE_CHECK([for -nopie option],
+ [gcc_cv_nopie],
+ [saved_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -nopie"
+ AC_LINK_IFELSE([int main(void) {return 0;}],
+ [gcc_cv_nopie=yes],
+ [gcc_cv_nopie=no])
+ LDFLAGS="$saved_LDFLAGS"])
+ if test "$gcc_cv_nopie" = "yes"; then
+ NO_PIE_FLAG="-nopie"
+ fi
fi
AC_SUBST([NO_PIE_FLAG])
--
2.41.0
@@ -0,0 +1,42 @@
From dd5bb97c31a9f57034c70a7a18ba6e2e133084c7 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH 14/35] ada: fix shared linking
---
gcc/ada/link.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/link.c b/gcc/ada/link.c
index f2126441208..22cfa9c641f 100644
--- a/gcc/ada/link.c
+++ b/gcc/ada/link.c
@@ -107,9 +107,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
|| defined (__NetBSD__) || defined (__OpenBSD__) \
|| defined (__QNX__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
@@ -129,9 +129,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
#elif defined (__linux__) || defined (__GLIBC__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
2.41.0
@@ -0,0 +1,24 @@
From 6bb5b7d9161d05f31b001d8211a9c63caf63fd2f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH 15/35] build: fix CXXFLAGS_FOR_BUILD passing
---
Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.in b/Makefile.in
index 06a9398e172..6ff2b3f9925 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -178,6 +178,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
--
2.41.0
@@ -0,0 +1,25 @@
From f0d9e00cac06689f64b214de7aee80d7116ef084 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:01:06 +0000
Subject: [PATCH 16/35] add fortify-headers paths
---
gcc/config/linux.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index e3aca79cccc..b3537b8fbeb 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -159,6 +159,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
+ { NATIVE_SYSTEM_HEADER_DIR "/fortify", 0, 0, 0, 1, 2 }, \
+ { NATIVE_SYSTEM_HEADER_DIR "/fortify", 0, 0, 0, 1, 0 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 },
#else
--
2.41.0
@@ -0,0 +1,31 @@
From 857db04f4f1a06e866551b4172fe8f27363f4a92 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Fri, 21 Aug 2020 07:03:00 +0000
Subject: [PATCH 17/35] Alpine musl package provides libssp_nonshared.a. We
link to it unconditionally, as otherwise we get link failures if some objects
are -fstack-protector built and final link happens with -fno-stack-protector.
This seems to be the common case when bootstrapping gcc, the piepatches do
not seem to fully fix the crosstoolchain and bootstrap sequence wrt.
stack-protector flag usage.
---
gcc/gcc.cc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index b5a6f200635..6cbb726599b 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -991,8 +991,7 @@ proper position among the other output files. */
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
-#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
- "|fstack-protector-strong|fstack-protector-explicit:}"
+#define LINK_SSP_SPEC "-lssp_nonshared"
#else
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
"|fstack-protector-strong|fstack-protector-explicit" \
--
2.41.0
@@ -0,0 +1,69 @@
From 5a8347e23ab13912b6edec2c6c6e3a101b017c79 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:03:42 +0000
Subject: [PATCH 18/35] DP: Use --push-state/--pop-state for gold as well when
linking libtsan.
---
gcc/gcc.cc | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 6cbb726599b..59390fd39d6 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -755,10 +755,10 @@ proper position among the other output files. */
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
- " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " %{!static-libasan:--push-state --no-as-needed}" \
" -lasan " \
" %{static-libasan:" LD_DYNAMIC_OPTION "}" \
- " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
+ " %{!static-libasan:--pop-state}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -794,10 +794,10 @@ proper position among the other output files. */
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
- " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " %{!static-libtsan:--push-state --no-as-needed}" \
" -ltsan " \
" %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
- " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
+ " %{!static-libtsan:--pop-state}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -815,10 +815,10 @@ proper position among the other output files. */
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
- " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " %{!static-liblsan:--push-state --no-as-needed}" \
" -llsan " \
" %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
- " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
+ " %{!static-liblsan:--pop-state}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -834,10 +834,10 @@ proper position among the other output files. */
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
- " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " %{!static-libubsan:--push-state --no-as-needed}" \
" -lubsan " \
" %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
- " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
+ " %{!static-libubsan:--pop-state}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.41.0
@@ -0,0 +1,26 @@
From 41d00a2eb0754acf71958808bd17dbebeb517b84 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:12:55 +0000
Subject: [PATCH 19/35] aarch64: disable multilib support
multilib is unsupported on Alpine GCC
---
gcc/config/aarch64/t-aarch64-linux | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
index 57bf4100fcd..172894b57ef 100644
--- a/gcc/config/aarch64/t-aarch64-linux
+++ b/gcc/config/aarch64/t-aarch64-linux
@@ -22,7 +22,7 @@ LIB1ASMSRC = aarch64/lib1funcs.asm
LIB1ASMFUNCS = _aarch64_sync_cache_range
AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
+MULTILIB_OSDIRNAMES = mabi.lp64=../lib
MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
--
2.41.0
@@ -0,0 +1,25 @@
From 85b42bfbba71616831d14360b16998acb28790fd Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:13:59 +0000
Subject: [PATCH 20/35] s390x: disable multilib support
multilib is not supported on Alpine GCC at present
---
gcc/config/s390/t-linux64 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/config/s390/t-linux64 b/gcc/config/s390/t-linux64
index cc6ab367072..7f498ee1cdc 100644
--- a/gcc/config/s390/t-linux64
+++ b/gcc/config/s390/t-linux64
@@ -7,5 +7,5 @@
MULTILIB_OPTIONS = m64/m31
MULTILIB_DIRNAMES = 64 32
-MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu)
-MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
--
2.41.0
@@ -0,0 +1,81 @@
From 7b53df284242638e940c0155b6c21e88cea1f55b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:14:33 +0000
Subject: [PATCH 21/35] ppc64[le]: disable multilib support
multilib is not presently supported on Alpine GCC
---
gcc/config/rs6000/t-linux | 6 ++++--
gcc/config/rs6000/t-linux64 | 4 ++--
gcc/config/rs6000/t-linux64bele | 4 ++--
gcc/config/rs6000/t-linux64lebe | 4 ++--
4 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/gcc/config/rs6000/t-linux b/gcc/config/rs6000/t-linux
index 4e371255533..128c75c7d39 100644
--- a/gcc/config/rs6000/t-linux
+++ b/gcc/config/rs6000/t-linux
@@ -2,7 +2,8 @@
# or soft-float.
ifeq (,$(filter $(with_cpu),$(SOFT_FLOAT_CPUS))$(findstring soft,$(with_float)))
ifneq (,$(findstring powerpc64,$(target)))
-MULTILIB_OSDIRNAMES := .=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
else
MULTIARCH_DIRNAME := $(call if_multiarch,powerpc-linux-gnu)
endif
@@ -10,7 +11,8 @@ ifneq (,$(findstring powerpcle,$(target)))
MULTIARCH_DIRNAME := $(subst -linux,le-linux,$(MULTIARCH_DIRNAME))
endif
ifneq (,$(findstring powerpc64le,$(target)))
-MULTILIB_OSDIRNAMES := $(subst -linux,le-linux,$(MULTILIB_OSDIRNAMES))
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
endif
endif
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
index 01a94242308..b3a76379c03 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -28,8 +28,8 @@
MULTILIB_OPTIONS := m64/m32
MULTILIB_DIRNAMES := 64 32
MULTILIB_EXTRA_OPTS :=
-MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.cc
$(COMPILE) $<
diff --git a/gcc/config/rs6000/t-linux64bele b/gcc/config/rs6000/t-linux64bele
index 97c1ee6fb4d..08d72639cb6 100644
--- a/gcc/config/rs6000/t-linux64bele
+++ b/gcc/config/rs6000/t-linux64bele
@@ -2,6 +2,6 @@
MULTILIB_OPTIONS += mlittle
MULTILIB_DIRNAMES += le
-MULTILIB_OSDIRNAMES += $(subst =,.mlittle=,$(subst lible32,lib32le,$(subst lible64,lib64le,$(subst lib,lible,$(subst -linux,le-linux,$(MULTILIB_OSDIRNAMES))))))
-MULTILIB_OSDIRNAMES += $(subst $(if $(findstring 64,$(target)),m64,m32).,,$(filter $(if $(findstring 64,$(target)),m64,m32).mlittle%,$(MULTILIB_OSDIRNAMES)))
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
diff --git a/gcc/config/rs6000/t-linux64lebe b/gcc/config/rs6000/t-linux64lebe
index 2e63bdb9fc9..c6e1c5db65d 100644
--- a/gcc/config/rs6000/t-linux64lebe
+++ b/gcc/config/rs6000/t-linux64lebe
@@ -2,6 +2,6 @@
MULTILIB_OPTIONS += mbig
MULTILIB_DIRNAMES += be
-MULTILIB_OSDIRNAMES += $(subst =,.mbig=,$(subst libbe32,lib32be,$(subst libbe64,lib64be,$(subst lib,libbe,$(subst le-linux,-linux,$(MULTILIB_OSDIRNAMES))))))
-MULTILIB_OSDIRNAMES += $(subst $(if $(findstring 64,$(target)),m64,m32).,,$(filter $(if $(findstring 64,$(target)),m64,m32).mbig%,$(MULTILIB_OSDIRNAMES)))
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
--
2.41.0
@@ -0,0 +1,26 @@
From 96e7e1e9a899d9bb5fcbdf788bd529d0390c626f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:14:54 +0000
Subject: [PATCH 22/35] x86_64: disable multilib support
multilib is not presently supported on Alpine GCC
---
gcc/config/i386/t-linux64 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
index 138956b0962..bc03dab874f 100644
--- a/gcc/config/i386/t-linux64
+++ b/gcc/config/i386/t-linux64
@@ -33,6 +33,6 @@
comma=,
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
--
2.41.0
@@ -0,0 +1,76 @@
From b26224acf342eacb33491f6ea0da1faf73d35715 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 3 Jan 2022 07:14:48 +0100
Subject: [PATCH 23/35] riscv: disable multilib support
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From the musl wiki [1]:
musl does not support sharing an include directory between archs
[…], and thus is not compatible with GCC-style multilib. It is
recommended that distributions build GCC with multilib disabled,
and use library directories named lib, not lib64 or lib32.
For this reason, we patch existing GCC configuration files (gcc/config)
to pin MULTILIB_OSDIRNAMES to lib, there is also a corresponding GCC
upstream bug about this issue [2]. Avoiding the use of lib64 and lib32
directories is a bit more difficult on the RISC-V architecture. This is
due to the fact that the default RISC-V configuration does not only use
the lib64 and lib32 directories but also subdirectories within these
directories for different RISC-V ABIs (e.g. lp64d, lp64, …) [3].
This patch aligns the RISC-V configuration with other architectures by
pinning MULTILIB_OSDIRNAMES to lib for rv64gc (our default RISC-V
-march). Furthermore, this patch removes the ABI-specific startfile
prefix spec. Since both of these impact the default LIBRARY_PATH [4]
this patch thereby aligns the default RISC-V LIBRARY_PATH with that from
other Alpine architectures and thereby fixes #13369 [5].
Incidentally, this also fixes gccgo on riscv64, as without this patch
gccgo is otherwise not able to find the *.gox files for the Go standard
library.
[1]: https://wiki.musl-libc.org/guidelines-for-distributions.html#Multilib/multi_arch
[2]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90077
[3]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103889#c14
[4]: https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/gcc.c;h=d4c8746b0aa322286decf92aa72a12f0a393b655;hb=HEAD#l9122
[5]: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13369
---
gcc/config/riscv/linux.h | 8 --------
gcc/config/riscv/t-linux | 7 +++++--
2 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index f8c2c351e5a..8d9881eadeb 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -61,11 +61,3 @@ along with GCC; see the file COPYING3. If not see
%{static:-static}}"
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
-
-#define STARTFILE_PREFIX_SPEC \
- "/lib" XLEN_SPEC "/" ABI_SPEC "/ " \
- "/usr/lib" XLEN_SPEC "/" ABI_SPEC "/ " \
- "/lib/ " \
- "/usr/lib/ "
-
-#define RISCV_USE_CUSTOMISED_MULTI_LIB select_by_abi
diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux
index 216d2776a18..1a8a863853e 100644
--- a/gcc/config/riscv/t-linux
+++ b/gcc/config/riscv/t-linux
@@ -1,3 +1,6 @@
-# Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/
-MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES)))
+MULTILIB_OPTIONS := march=rv64gc
+MULTILIB_DIRNAMES := rv64gc
+
+MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib,$(MULTILIB_DIRNAMES)))
MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+MULTILIB_MATCHES := march?rv64gc=march?rv64imafdc
--
2.41.0
@@ -0,0 +1,51 @@
From a72e0613f79f6b6867819317accb7a714031a08c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:05:41 +0000
Subject: [PATCH 24/35] always build libgcc_eh.a
highly inspired by:
http://landley.net/hg/aboriginal/file/7e0747a665ab/sources/patches/gcc-core-libgcceh.patch
---
libgcc/Makefile.in | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 6c4dc79ab71..023cede18a7 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -960,8 +960,9 @@ ifneq ($(LIBUNWIND),)
all: libunwind.a
endif
+all: libgcc_eh.a
ifeq ($(enable_shared),yes)
-all: libgcc_eh.a libgcc_s$(SHLIB_EXT)
+all: libgcc_s$(SHLIB_EXT)
ifneq ($(LIBUNWIND),)
all: libunwind$(SHLIB_EXT)
libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_EXT)
@@ -1163,10 +1164,6 @@ install-libunwind:
install-shared:
$(mkinstalldirs) $(DESTDIR)$(inst_libdir)
- $(INSTALL_DATA) libgcc_eh.a $(DESTDIR)$(inst_libdir)/
- chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a
- $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a
-
$(subst @multilib_dir@,$(MULTIDIR),$(subst \
@shlib_base_name@,libgcc_s,$(subst \
@shlib_slibdir_qual@,$(MULTIOSSUBDIR),$(SHLIB_INSTALL))))
@@ -1183,6 +1180,10 @@ ifeq ($(enable_gcov),yes)
$(RANLIB) $(DESTDIR)$(inst_libdir)/libgcov.a
endif
+ $(INSTALL_DATA) libgcc_eh.a $(DESTDIR)$(inst_libdir)/
+ chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a
+ $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a
+
parts="$(INSTALL_PARTS)"; \
for file in $$parts; do \
rm -f $(DESTDIR)$(inst_libdir)/$$file; \
--
2.41.0
@@ -0,0 +1,135 @@
From 3ee8cbc1cad261b30d4a7a66d31496d5f243ce2f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:06:30 +0000
Subject: [PATCH 25/35] ada: libgnarl compatibility for musl
---
gcc/ada/libgnarl/s-osinte__linux.ads | 11 ------
gcc/ada/libgnarl/s-taprop__linux.adb | 53 ++--------------------------
2 files changed, 3 insertions(+), 61 deletions(-)
diff --git a/gcc/ada/libgnarl/s-osinte__linux.ads b/gcc/ada/libgnarl/s-osinte__linux.ads
index a5e645d334d..32165347071 100644
--- a/gcc/ada/libgnarl/s-osinte__linux.ads
+++ b/gcc/ada/libgnarl/s-osinte__linux.ads
@@ -403,12 +403,6 @@ package System.OS_Interface is
PTHREAD_RWLOCK_PREFER_WRITER_NP : constant := 1;
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP : constant := 2;
- function pthread_rwlockattr_setkind_np
- (attr : access pthread_rwlockattr_t;
- pref : int) return int;
- pragma Import
- (C, pthread_rwlockattr_setkind_np, "pthread_rwlockattr_setkind_np");
-
function pthread_rwlock_init
(mutex : access pthread_rwlock_t;
attr : access pthread_rwlockattr_t) return int;
@@ -470,11 +464,6 @@ package System.OS_Interface is
protocol : int) return int;
pragma Import (C, pthread_mutexattr_setprotocol);
- function pthread_mutexattr_setprioceiling
- (attr : access pthread_mutexattr_t;
- prioceiling : int) return int;
- pragma Import (C, pthread_mutexattr_setprioceiling);
-
type struct_sched_param is record
sched_priority : int; -- scheduling priority
end record;
diff --git a/gcc/ada/libgnarl/s-taprop__linux.adb b/gcc/ada/libgnarl/s-taprop__linux.adb
index 821ceef30e4..ae95b58e01e 100644
--- a/gcc/ada/libgnarl/s-taprop__linux.adb
+++ b/gcc/ada/libgnarl/s-taprop__linux.adb
@@ -198,9 +198,6 @@ package body System.Task_Primitives.Operations is
pragma Import
(C, GNAT_pthread_condattr_setup, "__gnat_pthread_condattr_setup");
- function GNAT_has_cap_sys_nice return C.int;
- pragma Import
- (C, GNAT_has_cap_sys_nice, "__gnat_has_cap_sys_nice");
-- We do not have pragma Linker_Options ("-lcap"); here, because this
-- library is not present on many Linux systems. 'libcap' is the Linux
-- "capabilities" library, called by __gnat_has_cap_sys_nice.
@@ -210,38 +207,6 @@ package body System.Task_Primitives.Operations is
-- Convert Ada priority to Linux priority. Priorities are 1 .. 99 on
-- GNU/Linux, so we map 0 .. 98 to 1 .. 99.
- function Get_Ceiling_Support return Boolean;
- -- Get the value of the Ceiling_Support constant (see below).
- -- Note well: If this function or related code is modified, it should be
- -- tested by hand, because automated testing doesn't exercise it.
-
- -------------------------
- -- Get_Ceiling_Support --
- -------------------------
-
- function Get_Ceiling_Support return Boolean is
- Ceiling_Support : Boolean := False;
- begin
- if Locking_Policy /= 'C' then
- return False;
- end if;
-
- declare
- function geteuid return Integer;
- pragma Import (C, geteuid, "geteuid");
- Superuser : constant Boolean := geteuid = 0;
- Has_Cap : constant C.int := GNAT_has_cap_sys_nice;
- pragma Assert (Has_Cap in 0 | 1);
- begin
- Ceiling_Support := Superuser or else Has_Cap = 1;
- end;
-
- return Ceiling_Support;
- end Get_Ceiling_Support;
-
- pragma Warnings (Off, "non-preelaborable call not allowed*");
- Ceiling_Support : constant Boolean := Get_Ceiling_Support;
- pragma Warnings (On, "non-preelaborable call not allowed*");
-- True if the locking policy is Ceiling_Locking, and the current process
-- has permission to use this policy. The process has permission if it is
-- running as 'root', or if the capability was set by the setcap command,
@@ -344,7 +309,9 @@ package body System.Task_Primitives.Operations is
-- Init_Mutex --
----------------
+ pragma Warnings (Off, "formal parameter * is not referenced");
function Init_Mutex (L : RTS_Lock_Ptr; Prio : Any_Priority) return C.int is
+ pragma Warnings (On, "formal parameter * is not referenced");
Mutex_Attr : aliased pthread_mutexattr_t;
Result, Result_2 : C.int;
@@ -356,16 +323,7 @@ package body System.Task_Primitives.Operations is
return Result;
end if;
- if Ceiling_Support then
- Result := pthread_mutexattr_setprotocol
- (Mutex_Attr'Access, PTHREAD_PRIO_PROTECT);
- pragma Assert (Result = 0);
-
- Result := pthread_mutexattr_setprioceiling
- (Mutex_Attr'Access, Prio_To_Linux_Prio (Prio));
- pragma Assert (Result = 0);
-
- elsif Locking_Policy = 'I' then
+ if Locking_Policy = 'I' then
Result := pthread_mutexattr_setprotocol
(Mutex_Attr'Access, PTHREAD_PRIO_INHERIT);
pragma Assert (Result = 0);
@@ -405,11 +363,6 @@ package body System.Task_Primitives.Operations is
Result := pthread_rwlockattr_init (RWlock_Attr'Access);
pragma Assert (Result = 0);
- Result := pthread_rwlockattr_setkind_np
- (RWlock_Attr'Access,
- PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP);
- pragma Assert (Result = 0);
-
Result := pthread_rwlock_init (L.RW'Access, RWlock_Attr'Access);
pragma Assert (Result in 0 | ENOMEM);
--
2.41.0
@@ -0,0 +1,223 @@
From 3df4788c79c7429b196c7b284af2b4cf9a4b4f8d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:07:48 +0000
Subject: [PATCH 26/35] ada: musl support fixes
---
gcc/ada/Makefile.rtl | 10 +++++-----
gcc/ada/adaint.c | 34 +++++++++++++++++++---------------
gcc/ada/adaint.h | 10 ++++------
gcc/ada/terminals.c | 8 ++++----
4 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 96306f8cc9a..090b6770ae5 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1549,7 +1549,7 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
s-intman.adb<libgnarl/s-intman__posix.adb \
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
a-exetim.adb<libgnarl/a-exetim__posix.adb \
a-exetim.ads<libgnarl/a-exetim__default.ads \
s-linux.ads<libgnarl/s-linux.ads \
@@ -2174,7 +2174,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
s-taspri.ads<libgnarl/s-taspri__posix.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ppc.ads
@@ -2205,7 +2205,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
endif
# ARM linux, GNU eabi
-ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(target_cpu) $(target_os))),)
+ifeq ($(strip $(filter-out arm% linux-gnueabi% linux-musleabi% linux-muslgnueabi%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
@@ -2420,7 +2420,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
$(GNATRTL_128BIT_PAIRS) \
@@ -2524,7 +2524,7 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
s-taspri.ads<libgnarl/s-taspri__posix.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(X86_64_TARGET_PAIRS) \
$(SIMD_PATH_TARGET_PAIRS) \
diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index 8522094164e..92b230a462b 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -91,6 +91,11 @@
#include <sys/param.h>
#include <sys/pstat.h>
#endif
+
+#if defined (linux) || defined(__linux__)
+#define _GNU_SOURCE 1
+#include <sched.h>
+#endif
#ifdef __PikeOS__
#define __BSD_VISIBLE 1
@@ -3438,7 +3443,6 @@ __gnat_lwp_self (void)
#endif
#if defined (__linux__)
-#include <sched.h>
/* glibc versions earlier than 2.7 do not define the routines to handle
dynamically allocated CPU sets. For these targets, we use the static
@@ -3448,7 +3452,7 @@ __gnat_lwp_self (void)
/* Dynamic cpu sets */
-cpu_set_t *
+void *
__gnat_cpu_alloc (size_t count)
{
return CPU_ALLOC (count);
@@ -3461,33 +3465,33 @@ __gnat_cpu_alloc_size (size_t count)
}
void
-__gnat_cpu_free (cpu_set_t *set)
+__gnat_cpu_free (void *set)
{
- CPU_FREE (set);
+ CPU_FREE ((cpu_set_t *) set);
}
void
-__gnat_cpu_zero (size_t count, cpu_set_t *set)
+__gnat_cpu_zero (size_t count, void *set)
{
- CPU_ZERO_S (count, set);
+ CPU_ZERO_S (count, (cpu_set_t *) set);
}
void
-__gnat_cpu_set (int cpu, size_t count, cpu_set_t *set)
+__gnat_cpu_set (int cpu, size_t count, void *set)
{
/* Ada handles CPU numbers starting from 1, while C identifies the first
CPU by a 0, so we need to adjust. */
- CPU_SET_S (cpu - 1, count, set);
+ CPU_SET_S (cpu - 1, count, (cpu_set_t *) set);
}
#else /* !CPU_ALLOC */
/* Static cpu sets */
-cpu_set_t *
+void *
__gnat_cpu_alloc (size_t count ATTRIBUTE_UNUSED)
{
- return (cpu_set_t *) xmalloc (sizeof (cpu_set_t));
+ return xmalloc (sizeof (cpu_set_t));
}
size_t
@@ -3497,23 +3501,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED)
}
void
-__gnat_cpu_free (cpu_set_t *set)
+__gnat_cpu_free (void *set)
{
free (set);
}
void
-__gnat_cpu_zero (size_t count ATTRIBUTE_UNUSED, cpu_set_t *set)
+__gnat_cpu_zero (size_t count ATTRIBUTE_UNUSED, void *set)
{
- CPU_ZERO (set);
+ CPU_ZERO ((cpu_set_t *) set);
}
void
-__gnat_cpu_set (int cpu, size_t count ATTRIBUTE_UNUSED, cpu_set_t *set)
+__gnat_cpu_set (int cpu, size_t count ATTRIBUTE_UNUSED, void *set)
{
/* Ada handles CPU numbers starting from 1, while C identifies the first
CPU by a 0, so we need to adjust. */
- CPU_SET (cpu - 1, set);
+ CPU_SET (cpu - 1, (cpu_set_t *) set);
}
#endif /* !CPU_ALLOC */
#endif /* __linux__ */
diff --git a/gcc/ada/adaint.h b/gcc/ada/adaint.h
index 987432c9307..4d782f07de9 100644
--- a/gcc/ada/adaint.h
+++ b/gcc/ada/adaint.h
@@ -319,13 +319,11 @@ extern void *__gnat_lwp_self (void);
/* Routines for interface to required CPU set primitives */
-#include <sched.h>
-
-extern cpu_set_t *__gnat_cpu_alloc (size_t);
+extern void * __gnat_cpu_alloc (size_t);
extern size_t __gnat_cpu_alloc_size (size_t);
-extern void __gnat_cpu_free (cpu_set_t *);
-extern void __gnat_cpu_zero (size_t, cpu_set_t *);
-extern void __gnat_cpu_set (int, size_t, cpu_set_t *);
+extern void __gnat_cpu_free (void *);
+extern void __gnat_cpu_zero (size_t, void *);
+extern void __gnat_cpu_set (int, size_t, void *);
#endif
#if defined (_WIN32)
diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c
index c0ee4a16bb1..ed796a48c1b 100644
--- a/gcc/ada/terminals.c
+++ b/gcc/ada/terminals.c
@@ -1127,7 +1127,7 @@ __gnat_setup_winsize (void *desc ATTRIBUTE_UNUSED,
/* POSIX does not specify how to open the master side of a terminal.Several
methods are available (system specific):
1- using a cloning device (USE_CLONE_DEVICE)
- 2- getpt (USE_GETPT)
+ 2- posix_openpt (USE_POSIX_OPENPT)
3- openpty (USE_OPENPTY)
When using the cloning device method, the macro USE_CLONE_DEVICE should
@@ -1141,7 +1141,7 @@ __gnat_setup_winsize (void *desc ATTRIBUTE_UNUSED,
#if defined (__APPLE__) || defined (BSD)
#define USE_OPENPTY
#elif defined (__linux__)
-#define USE_GETPT
+#define USE_POSIX_OPENPT
#elif defined (__sun__)
#define USE_CLONE_DEVICE "/dev/ptmx"
#elif defined (_AIX)
@@ -1190,8 +1190,8 @@ allocate_pty_desc (pty_desc **desc) {
int master_fd = -1;
char *slave_name = NULL;
-#ifdef USE_GETPT
- master_fd = getpt ();
+#if defined(USE_POSIX_OPENPT)
+ master_fd = posix_openpt(O_RDWR | O_NOCTTY);
#elif defined (USE_OPENPTY)
status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL);
#elif defined (USE_CLONE_DEVICE)
--
2.41.0
@@ -0,0 +1,256 @@
From 7b50823d8a4131e5a55d2499a0f5a52b3d91eed2 Mon Sep 17 00:00:00 2001
From: Drew DeVault <sir@cmpwn.com>
Date: Wed, 9 Dec 2020 07:42:06 +0000
Subject: [PATCH 27/35] configure: Add --enable-autolink-libatomic, use in
LINK_GCC_C_SEQUENCE_SPEC [PR81358]
This fixes issues with RISC-V.
---
Makefile.in | 1 +
gcc/config.in | 6 ++++++
gcc/config/gnu-user.h | 12 +++++++++++-
gcc/configure | 31 ++++++++++++++++++++++++++++++-
gcc/configure.ac | 21 +++++++++++++++++++++
gcc/doc/install.texi | 8 ++++++++
gcc/doc/tm.texi | 8 +++++++-
gcc/doc/tm.texi.in | 8 +++++++-
gcc/gcc.cc | 12 +++++++++++-
9 files changed, 102 insertions(+), 5 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 6ff2b3f9925..394b105b271 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -235,6 +235,7 @@ HOST_EXPORTS = \
RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
READELF_FOR_TARGET="$(READELF_FOR_TARGET)"; export READELF_FOR_TARGET; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
+ TARGET_CONFIGDIRS="$(TARGET_CONFIGDIRS)"; export TARGET_CONFIGDIRS; \
HOST_LIBS="$(STAGE1_LIBS)"; export HOST_LIBS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
diff --git a/gcc/config.in b/gcc/config.in
index 0679fbbf4c6..ee81139b385 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -118,6 +118,12 @@
#endif
+/* Define if libatomic should always be linked. */
+#ifndef USED_FOR_TARGET
+#undef ENABLE_AUTOLINK_LIBATOMIC
+#endif
+
+
/* Define to 1 to specify that we are using the BID decimal floating point
format instead of DPD */
#ifndef USED_FOR_TARGET
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index b26b17f2f2a..3f64ea46180 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -109,8 +109,18 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LINK_EH_SPEC "%{!static|static-pie:--eh-frame-hdr} "
#endif
+#if !defined(LINK_LIBATOMIC_SPEC) && defined(ENABLE_AUTOLINK_LIBATOMIC)
+# ifdef LD_AS_NEEDED_OPTION
+# define LINK_LIBATOMIC_SPEC LD_AS_NEEDED_OPTION " -latomic " LD_NO_AS_NEEDED_OPTION
+# else
+# define LINK_LIBATOMIC_SPEC "-latomic"
+# endif
+#elif !defined(LINK_LIBATOMIC_SPEC)
+# define LINK_LIBATOMIC_SPEC ""
+#endif
+
#define GNU_USER_TARGET_LINK_GCC_C_SEQUENCE_SPEC \
- "%{static|static-pie:--start-group} %G %{!nolibc:%L} \
+ "%{static|static-pie:--start-group} %G %{!nolibc:" LINK_LIBATOMIC_SPEC " %L} \
%{static|static-pie:--end-group}%{!static:%{!static-pie:%G}}"
#undef LINK_GCC_C_SEQUENCE_SPEC
diff --git a/gcc/configure b/gcc/configure
index e59cbee1767..787c35d4e25 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -984,6 +984,7 @@ with_changes_root_url
enable_languages
with_multilib_list
with_multilib_generator
+enable_autolink_libatomic
with_zstd
with_zstd_include
with_zstd_lib
@@ -1713,6 +1714,9 @@ Optional Features:
--disable-shared don't provide a shared libgcc
--disable-gcov don't provide libgcov and related host tools
--enable-languages=LIST specify which front-ends to build
+ --enable-autolink-libatomic
+ enable automatic linking of libatomic (ignored if
+ not built)
--disable-rpath do not hardcode runtime library paths
--enable-sjlj-exceptions
arrange to use setjmp/longjmp exception handling
@@ -8329,7 +8333,6 @@ else
fi
-
# Check whether --with-multilib-generator was given.
if test "${with_multilib_generator+set}" = set; then :
withval=$with_multilib_generator; :
@@ -8337,6 +8340,32 @@ else
with_multilib_generator=default
fi
+# If libatomic is available, whether it should be linked automatically
+# Check whether --enable-autolink-libatomic was given.
+if test "${enable_autolink_libatomic+set}" = set; then :
+ enableval=$enable_autolink_libatomic;
+ case $enable_autolink_libatomic in
+ yes | no) ;;
+ *) as_fn_error $? "'$enable_autolink_libatomic' is an invalid value for
+--enable-autolink-libatomic. Valid choices are 'yes' and 'no'." "$LINENO" 5 ;;
+ esac
+
+else
+ enable_autolink_libatomic=''
+fi
+
+
+if test x$enable_autolink_libatomic = xyes; then
+ if echo " ${TARGET_CONFIGDIRS} " | grep " libatomic " > /dev/null 2>&1 ; then
+
+$as_echo "#define ENABLE_AUTOLINK_LIBATOMIC 1" >>confdefs.h
+
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libatomic is not build for this target, --enable-autolink-libatomic ignored" >&5
+$as_echo "$as_me: WARNING: libatomic is not build for this target, --enable-autolink-libatomic ignored" >&2;}
+ fi
+fi
+
# -------------------------
# Checks for other programs
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 57268319de1..56bcaa87620 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1199,6 +1199,27 @@ AC_ARG_WITH(multilib-generator,
:,
with_multilib_generator=default)
+# If libatomic is available, whether it should be linked automatically
+AC_ARG_ENABLE(autolink-libatomic,
+[AS_HELP_STRING([--enable-autolink-libatomic],
+ [enable automatic linking of libatomic (ignored if not built)])],
+[
+ case $enable_autolink_libatomic in
+ yes | no) ;;
+ *) AC_MSG_ERROR(['$enable_autolink_libatomic' is an invalid value for
+--enable-autolink-libatomic. Valid choices are 'yes' and 'no'.]) ;;
+ esac
+], [enable_autolink_libatomic=''])
+
+if test x$enable_autolink_libatomic = xyes; then
+ if echo " ${TARGET_CONFIGDIRS} " | grep " libatomic " > /dev/null 2>&1 ; then
+ AC_DEFINE(ENABLE_AUTOLINK_LIBATOMIC, 1,
+ [Define if libatomic should always be linked.])
+ else
+ AC_MSG_WARN([libatomic is not build for this target, --enable-autolink-libatomic ignored])
+ fi
+fi
+
# -------------------------
# Checks for other programs
# -------------------------
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index b30d3691fe6..ccc8e5dbb00 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -2377,6 +2377,14 @@ files, but these changed header paths may conflict with some compilation
environments. Enabled by default, and may be disabled using
@option{--disable-canonical-system-headers}.
+@item --enable-autolink-libatomic
+@itemx --disable-autolink-libatomic
+Tell GCC that it should automatically link libatomic; if supported by
+the linker, the file is only linked as needed. This flag is ignored
+when libatomic is not built. Note that this conigure flag is in particular
+useful when building an offloading-target compiler; as for those, a
+user had to specify @code{-foffload=target=-latomic} otherwise.
+
@item --with-glibc-version=@var{major}.@var{minor}
Tell GCC that when the GNU C Library (glibc) is used on the target it
will be version @var{major}.@var{minor} or later. Normally this can
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index a660e33739b..6183c407a2b 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -381,7 +381,13 @@ the argument @option{-lgcc} to tell the linker to do the search.
@defmac LINK_GCC_C_SEQUENCE_SPEC
The sequence in which libgcc and libc are specified to the linker.
-By default this is @code{%G %L %G}.
+By default this is @code{%G LINK_LIBATOMIC_SPEC %L %G}.
+@end defmac
+
+@defmac LINK_LIBATOMIC_SPEC
+This macro is used in the default @code{LINK_GCC_C_SEQUENCE_SPEC} to link
+libatomic. By default, it is unset unless @code{ENABLE_AUTOLINK_LIBATOMIC}
+is set.
@end defmac
@defmac POST_LINK_SPEC
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index f7ab5d48a63..281540aba68 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -381,7 +381,13 @@ the argument @option{-lgcc} to tell the linker to do the search.
@defmac LINK_GCC_C_SEQUENCE_SPEC
The sequence in which libgcc and libc are specified to the linker.
-By default this is @code{%G %L %G}.
+By default this is @code{%G LINK_LIBATOMIC_SPEC %L %G}.
+@end defmac
+
+@defmac LINK_LIBATOMIC_SPEC
+This macro is used in the default @code{LINK_GCC_C_SEQUENCE_SPEC} to link
+libatomic. By default, it is unset unless @code{ENABLE_AUTOLINK_LIBATOMIC}
+is set.
@end defmac
@defmac POST_LINK_SPEC
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 59390fd39d6..dae1dd4cf79 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -974,13 +974,23 @@ proper position among the other output files. */
# define ASM_DEBUG_OPTION_SPEC ""
#endif
+#if !defined(LINK_LIBATOMIC_SPEC) && defined(ENABLE_AUTOLINK_LIBATOMIC)
+# ifdef LD_AS_NEEDED_OPTION
+# define LINK_LIBATOMIC_SPEC LD_AS_NEEDED_OPTION " -latomic " LD_NO_AS_NEEDED_OPTION
+# else
+# define LINK_LIBATOMIC_SPEC "-latomic"
+# endif
+#elif !defined(LINK_LIBATOMIC_SPEC)
+# define LINK_LIBATOMIC_SPEC ""
+#endif
+
/* Here is the spec for running the linker, after compiling all files. */
/* This is overridable by the target in case they need to specify the
-lgcc and -lc order specially, yet not require them to override all
of LINK_COMMAND_SPEC. */
#ifndef LINK_GCC_C_SEQUENCE_SPEC
-#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
+#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:" LINK_LIBATOMIC_SPEC " %L %G}"
#endif
#ifdef ENABLE_DEFAULT_SSP
--
2.41.0
@@ -0,0 +1,57 @@
From 5bbbd320e54ab5341cfba83e8af98685131caba1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 29 Aug 2021 12:23:34 +0200
Subject: [PATCH 28/35] configure: fix detection of atomic builtins in
libatomic configure script
Alpine's --enable-autolink-libatomic (which is enabled for riscv64 by
default) causes the libatomic configure script to incorrectly detect
which builtins are available on riscv64. This then causes incorrect code
generation for libatomic since it assumes compiler builtins to be
available which are not actually available on riscv64.
This commit fixes this issue by disabling linking of libatomic configure
test code entirely, thereby preventing linking against libatomic.
See:
* https://gitlab.alpinelinux.org/alpine/aports/-/issues/12948
* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101996#c6
---
libatomic/configure.tgt | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/libatomic/configure.tgt b/libatomic/configure.tgt
index a92ae9e8309..90b579ca4d8 100644
--- a/libatomic/configure.tgt
+++ b/libatomic/configure.tgt
@@ -30,6 +30,26 @@
# on ${target_cpu}. For example to allow proper use of multilibs.
configure_tgt_pre_target_cpu_XCFLAGS="${XCFLAGS}"
+# The libatomic configure script performs several checks to determine
+# whether builtins for atomic operations are available. When compiling
+# with --enable-autolink-libatomic the test code compiled by the
+# configure script is also linked against libatomic. This causes it
+# to think that builtins are available, even if there are not, since
+# the tested symbols are provided by libatomic.
+#
+# This is a hack to ensure that we don't link against libatomic by not
+# linking any configure test code at all when --enable-autolink-libatomic
+# is given.
+#
+# See:
+#
+# * https://gitlab.alpinelinux.org/alpine/aports/-/issues/12817
+# * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101996#c4
+#
+if test x$enable_autolink_libatomic = xyes; then
+ gcc_no_link=yes
+fi
+
case "${target_cpu}" in
alpha*)
# fenv.c needs this option to generate inexact exceptions.
--
2.41.0
@@ -0,0 +1,27 @@
From 430c701a3cefbe09a9c7c8a2f5bbe957f9b2ecb2 Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Thu, 30 Jun 2022 16:44:51 +0000
Subject: [PATCH 29/35] libstdc++: do not throw exceptions for non-C locales on
musl targets
---
libstdc++-v3/config/locale/generic/c_locale.cc | 3 ---
1 file changed, 3 deletions(-)
diff --git a/libstdc++-v3/config/locale/generic/c_locale.cc b/libstdc++-v3/config/locale/generic/c_locale.cc
index 8849d78fdfa..aff467f98fe 100644
--- a/libstdc++-v3/config/locale/generic/c_locale.cc
+++ b/libstdc++-v3/config/locale/generic/c_locale.cc
@@ -242,9 +242,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Currently, the generic model only supports the "C" locale.
// See http://gcc.gnu.org/ml/libstdc++/2003-02/msg00345.html
__cloc = 0;
- if (strcmp(__s, "C"))
- __throw_runtime_error(__N("locale::facet::_S_create_c_locale "
- "name not valid"));
}
void
--
2.41.0
@@ -0,0 +1,27 @@
From 05f0043755f341a2ff4f845379327076b3e0203d Mon Sep 17 00:00:00 2001
From: Mathias LANG <pro.mathias.lang@gmail.com>
Date: Mon, 17 Jan 2022 03:49:21 +0000
Subject: [PATCH 30/35] gdc: unconditionally link libgphobos against
libucontext
ref: alpine/aports#13422
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index 394b105b271..bc4a77fc300 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -52809,7 +52809,7 @@ configure-target-libphobos:
esac; \
module_srcdir=libphobos; \
rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) \
+ CONFIG_SITE=no-such-file LIBS="-lucontext $$LIBS" $(SHELL) \
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
--
2.41.0
@@ -0,0 +1,54 @@
From 0b89a74fbf77ae6917f043c79cd03db0d6ef0212 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sat, 16 Jul 2022 09:21:11 +0200
Subject: [PATCH 31/35] druntime: link against libucontext on all platforms
On musl-based Linux distributions, swapcontext etc. are not provided by
musl but instead by libucontext. Hence, we _always_ need to link against
an external library for these functions.
---
libphobos/configure | 8 --------
libphobos/m4/druntime/libraries.m4 | 8 --------
2 files changed, 16 deletions(-)
diff --git a/libphobos/configure b/libphobos/configure
index 925c53c5f5e..60c2a0c11c6 100755
--- a/libphobos/configure
+++ b/libphobos/configure
@@ -15216,14 +15216,6 @@ fi
# Keep this in sync with core/thread.d, set druntime_fiber_asm_external to
# "yes" for targets that have 'version = AsmExternal'.
druntime_fiber_asm_external=no
- case "$target_cpu" in
- aarch64* | \
- arm* | \
- i[34567]86|x86_64 | \
- powerpc)
- druntime_fiber_asm_external=yes
- ;;
- esac
if test "$druntime_fiber_asm_external" = no; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing swapcontext" >&5
$as_echo_n "checking for library containing swapcontext... " >&6; }
diff --git a/libphobos/m4/druntime/libraries.m4 b/libphobos/m4/druntime/libraries.m4
index 45a56f6f76a..fef6e890b1e 100644
--- a/libphobos/m4/druntime/libraries.m4
+++ b/libphobos/m4/druntime/libraries.m4
@@ -220,14 +220,6 @@ AC_DEFUN([DRUNTIME_LIBRARIES_UCONTEXT],
# Keep this in sync with core/thread.d, set druntime_fiber_asm_external to
# "yes" for targets that have 'version = AsmExternal'.
druntime_fiber_asm_external=no
- case "$target_cpu" in
- aarch64* | \
- arm* | \
- i[[34567]]86|x86_64 | \
- powerpc)
- druntime_fiber_asm_external=yes
- ;;
- esac
if test "$druntime_fiber_asm_external" = no; then
AC_SEARCH_LIBS([swapcontext], [c ucontext], [],
AC_MSG_ERROR([swapcontext required but not found]))
--
2.41.0
@@ -0,0 +1,25 @@
From eeec799f43fbd0bfffc13594585b39d708972511 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Tue, 19 Jul 2022 14:54:07 +0200
Subject: [PATCH 32/35] libgnat: time_t is always 64-bit on musl libc
---
gcc/ada/libgnat/s-parame.ads | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/ada/libgnat/s-parame.ads b/gcc/ada/libgnat/s-parame.ads
index 3d6e345a1ba..cfe0b4d3ca6 100644
--- a/gcc/ada/libgnat/s-parame.ads
+++ b/gcc/ada/libgnat/s-parame.ads
@@ -102,7 +102,7 @@ package System.Parameters is
-- Characteristics of time_t type --
------------------------------------
- time_t_bits : constant := Long_Integer'Size;
+ time_t_bits : constant := Long_Long_Integer'Size;
-- Number of bits in type time_t
----------------------------------------------
--
2.41.0
@@ -0,0 +1,44 @@
From b71d21b87e6946c763edad5e420bf22d8a453077 Mon Sep 17 00:00:00 2001
From: psykose <alice@ayaya.dev>
Date: Mon, 29 May 2023 15:33:11 +0000
Subject: [PATCH 33/35] libphobos: do not use LFS64 symbols
musl does not have these since 1.2.4, we can't use the compat interfaces.
---
libphobos/libdruntime/core/sys/posix/config.d | 2 +-
libphobos/libdruntime/core/sys/posix/sys/mman.d | 6 +-----
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/libphobos/libdruntime/core/sys/posix/config.d b/libphobos/libdruntime/core/sys/posix/config.d
index ae6752f220e..6b80d1ff0e6 100644
--- a/libphobos/libdruntime/core/sys/posix/config.d
+++ b/libphobos/libdruntime/core/sys/posix/config.d
@@ -88,7 +88,7 @@ else version (CRuntime_Musl)
enum __REDIRECT = false;
// Those three are irrelevant for Musl as it always uses 64 bits off_t
- enum __USE_FILE_OFFSET64 = _FILE_OFFSET_BITS == 64;
+ enum __USE_FILE_OFFSET64 = false;
enum __USE_LARGEFILE = __USE_FILE_OFFSET64 && !__REDIRECT;
enum __USE_LARGEFILE64 = __USE_FILE_OFFSET64 && !__REDIRECT;
diff --git a/libphobos/libdruntime/core/sys/posix/sys/mman.d b/libphobos/libdruntime/core/sys/posix/sys/mman.d
index 0d3d517d69a..323aa0af72d 100644
--- a/libphobos/libdruntime/core/sys/posix/sys/mman.d
+++ b/libphobos/libdruntime/core/sys/posix/sys/mman.d
@@ -293,11 +293,7 @@ else version (CRuntime_Bionic)
}
else version (CRuntime_Musl)
{
- static if (__USE_LARGEFILE64) void* mmap64(void*, size_t, int, int, int, off_t);
- static if (__USE_FILE_OFFSET64)
- alias mmap = mmap64;
- else
- void* mmap(void*, size_t, int, int, int, off_t);
+ void* mmap(void*, size_t, int, int, int, off_t);
int munmap(void*, size_t);
}
else version (CRuntime_UClibc)
--
2.41.0
@@ -0,0 +1,195 @@
From 4bfcb35bc43d3e3b7510620362d7c28d9e4c17ca Mon Sep 17 00:00:00 2001
From: psykose <alice@ayaya.dev>
Date: Mon, 10 Jul 2023 23:23:29 +0000
Subject: [PATCH 34/35] libgo: fix lfs64 use
---
.../go/internal/syscall/unix/at_largefile.go | 2 +-
libgo/go/os/dir_largefile.go | 2 +-
libgo/go/syscall/libcall_glibc.go | 2 +-
libgo/go/syscall/libcall_linux.go | 4 +--
libgo/go/syscall/libcall_posix_largefile.go | 26 +++++++++----------
libgo/runtime/go-varargs.c | 2 +-
libgo/sysinfo.c | 9 +++----
7 files changed, 22 insertions(+), 25 deletions(-)
diff --git a/libgo/go/internal/syscall/unix/at_largefile.go b/libgo/go/internal/syscall/unix/at_largefile.go
index 82e0dcfd074..16151ecad1b 100644
--- a/libgo/go/internal/syscall/unix/at_largefile.go
+++ b/libgo/go/internal/syscall/unix/at_largefile.go
@@ -10,5 +10,5 @@ import (
"syscall"
)
-//extern fstatat64
+//extern fstatat
func fstatat(int32, *byte, *syscall.Stat_t, int32) int32
diff --git a/libgo/go/os/dir_largefile.go b/libgo/go/os/dir_largefile.go
index 1fc5ee0771f..0c6dffe1a75 100644
--- a/libgo/go/os/dir_largefile.go
+++ b/libgo/go/os/dir_largefile.go
@@ -11,5 +11,5 @@ package os
import "syscall"
-//extern readdir64
+//extern readdir
func libc_readdir(*syscall.DIR) *syscall.Dirent
diff --git a/libgo/go/syscall/libcall_glibc.go b/libgo/go/syscall/libcall_glibc.go
index 5c1ec483c75..5a1245ed44b 100644
--- a/libgo/go/syscall/libcall_glibc.go
+++ b/libgo/go/syscall/libcall_glibc.go
@@ -114,7 +114,7 @@ func Pipe2(p []int, flags int) (err error) {
}
//sys sendfile(outfd int, infd int, offset *Offset_t, count int) (written int, err error)
-//sendfile64(outfd _C_int, infd _C_int, offset *Offset_t, count Size_t) Ssize_t
+//sendfile(outfd _C_int, infd _C_int, offset *Offset_t, count Size_t) Ssize_t
func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
if race.Enabled {
diff --git a/libgo/go/syscall/libcall_linux.go b/libgo/go/syscall/libcall_linux.go
index 03ca7261b59..ad21fd0b3ac 100644
--- a/libgo/go/syscall/libcall_linux.go
+++ b/libgo/go/syscall/libcall_linux.go
@@ -158,7 +158,7 @@ func Reboot(cmd int) (err error) {
//adjtimex(buf *Timex) _C_int
//sys Fstatfs(fd int, buf *Statfs_t) (err error)
-//fstatfs64(fd _C_int, buf *Statfs_t) _C_int
+//fstatfs(fd _C_int, buf *Statfs_t) _C_int
func Gettid() (tid int) {
r1, _, _ := Syscall(SYS_GETTID, 0, 0, 0)
@@ -245,7 +245,7 @@ func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n i
}
//sys Statfs(path string, buf *Statfs_t) (err error)
-//statfs64(path *byte, buf *Statfs_t) _C_int
+//statfs(path *byte, buf *Statfs_t) _C_int
//sysnb Sysinfo(info *Sysinfo_t) (err error)
//sysinfo(info *Sysinfo_t) _C_int
diff --git a/libgo/go/syscall/libcall_posix_largefile.go b/libgo/go/syscall/libcall_posix_largefile.go
index f90055bb29a..334212f0af1 100644
--- a/libgo/go/syscall/libcall_posix_largefile.go
+++ b/libgo/go/syscall/libcall_posix_largefile.go
@@ -10,40 +10,40 @@
package syscall
//sys Creat(path string, mode uint32) (fd int, err error)
-//creat64(path *byte, mode Mode_t) _C_int
+//creat(path *byte, mode Mode_t) _C_int
//sys Fstat(fd int, stat *Stat_t) (err error)
-//fstat64(fd _C_int, stat *Stat_t) _C_int
+//fstat(fd _C_int, stat *Stat_t) _C_int
//sys Ftruncate(fd int, length int64) (err error)
-//ftruncate64(fd _C_int, length Offset_t) _C_int
+//ftruncate(fd _C_int, length Offset_t) _C_int
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
-//getrlimit64(resource _C_int, rlim *Rlimit) _C_int
+//getrlimit(resource _C_int, rlim *Rlimit) _C_int
//sys Lstat(path string, stat *Stat_t) (err error)
-//lstat64(path *byte, stat *Stat_t) _C_int
+//lstat(path *byte, stat *Stat_t) _C_int
//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-//mmap64(addr *byte, length Size_t, prot _C_int, flags _C_int, fd _C_int, offset Offset_t) *byte
+//mmap(addr *byte, length Size_t, prot _C_int, flags _C_int, fd _C_int, offset Offset_t) *byte
//sys Open(path string, mode int, perm uint32) (fd int, err error)
-//__go_open64(path *byte, mode _C_int, perm Mode_t) _C_int
+//__go_open(path *byte, mode _C_int, perm Mode_t) _C_int
//sys Pread(fd int, p []byte, offset int64) (n int, err error)
-//pread64(fd _C_int, buf *byte, count Size_t, offset Offset_t) Ssize_t
+//pread(fd _C_int, buf *byte, count Size_t, offset Offset_t) Ssize_t
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error)
-//pwrite64(fd _C_int, buf *byte, count Size_t, offset Offset_t) Ssize_t
+//pwrite(fd _C_int, buf *byte, count Size_t, offset Offset_t) Ssize_t
//sys Seek(fd int, offset int64, whence int) (off int64, err error)
-//lseek64(fd _C_int, offset Offset_t, whence _C_int) Offset_t
+//lseek(fd _C_int, offset Offset_t, whence _C_int) Offset_t
//sysnb Setrlimit(resource int, rlim *Rlimit) (err error)
-//setrlimit64(resource int, rlim *Rlimit) _C_int
+//setrlimit(resource int, rlim *Rlimit) _C_int
//sys Stat(path string, stat *Stat_t) (err error)
-//stat64(path *byte, stat *Stat_t) _C_int
+//stat(path *byte, stat *Stat_t) _C_int
//sys Truncate(path string, length int64) (err error)
-//truncate64(path *byte, length Offset_t) _C_int
+//truncate(path *byte, length Offset_t) _C_int
diff --git a/libgo/runtime/go-varargs.c b/libgo/runtime/go-varargs.c
index f84860891e6..7efc9615985 100644
--- a/libgo/runtime/go-varargs.c
+++ b/libgo/runtime/go-varargs.c
@@ -84,7 +84,7 @@ __go_ioctl_ptr (int d, int request, void *arg)
int
__go_open64 (char *path, int mode, mode_t perm)
{
- return open64 (path, mode, perm);
+ return open (path, mode, perm);
}
#endif
diff --git a/libgo/sysinfo.c b/libgo/sysinfo.c
index 180f5c31d74..1d717d55c0e 100644
--- a/libgo/sysinfo.c
+++ b/libgo/sysinfo.c
@@ -366,7 +366,7 @@ typedef loff_t libgo_loff_t_type;
#endif
#if defined(HAVE_OFF64_T)
-typedef off64_t libgo_off_t_type;
+typedef off_t libgo_off_t_type;
#else
typedef off_t libgo_off_t_type;
#endif
@@ -398,13 +398,11 @@ typedef off_t libgo_off_t_type;
// From dirent.h
SREF(dirent);
-SREF(dirent64);
OTREF(DIR);
EREF(DT_UNKNOWN);
// From fcntl.h
SREF(flock);
-SREF(flock64);
// From ffi headers
SREF(_ffi_type);
@@ -485,11 +483,10 @@ EREF(SS_ONSTACK);
EREF(SEGV_MAPERR);
// From stat.h
-SREF(stat64);
+SREF(stat);
// From statfs.h
SREF(statfs);
-SREF(statfs64);
// From sysinfo.h
SREF(sysinfo);
@@ -519,7 +516,7 @@ EREF(PTRACE_PEEKTEXT);
// From sys/resource.h
SREF(rusage);
-SREF(rlimit64);
+SREF(rlimit);
EREF(RLIMIT_NOFILE);
EREF(PRIO_USER);
EREF(RUSAGE_SELF);
--
2.41.0
@@ -0,0 +1,186 @@
https://gcc.gnu.org/PR110792
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=790c1f60a5662b16eb19eb4b81922995863c7571
https://github.com/randombit/botan/issues/3637
From 85628c5653ff40963158a24c60eeec6a3b5a8e56 Mon Sep 17 00:00:00 2001
From: Roger Sayle <roger@nextmovesoftware.com>
Date: Thu, 3 Aug 2023 07:12:04 +0100
Subject: [PATCH] PR target/110792: Early clobber issues with
rot32di2_doubleword on i386.
This patch is a conservative fix for PR target/110792, a wrong-code
regression affecting doubleword rotations by BITS_PER_WORD, which
effectively swaps the highpart and lowpart words, when the source to be
rotated resides in memory. The issue is that if the register used to
hold the lowpart of the destination is mentioned in the address of
the memory operand, the current define_insn_and_split unintentionally
clobbers it before reading the highpart.
Hence, for the testcase, the incorrectly generated code looks like:
salq $4, %rdi // calculate address
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
Traditionally, the textbook way to fix this would be to add an
explicit early clobber to the instruction's constraints.
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
(const_int 32)))]
but unfortunately this currently generates significantly worse code,
due to a strange choice of reloads (effectively memcpy), which ends up
looking like:
salq $4, %rdi // calculate address
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
movq -8(%rsp), %rdi // load highpart
movq -16(%rsp), %rbp // load lowpart
Note that reload's "&" doesn't distinguish between the memory being
early clobbered, vs the registers used in an addressing mode being
early clobbered.
The fix proposed in this patch is to remove the third alternative, that
allowed offsetable memory as an operand, forcing reload to place the
operand into a register before the rotation. This results in:
salq $4, %rdi
movq WHIRL_S(%rdi), %rax
movq WHIRL_S+8(%rdi), %rdi
movq %rax, %rbp
I believe there's a more advanced solution, by swapping the order of
the loads (if first destination register is mentioned in the address),
or inserting a lea insn (if both destination registers are mentioned
in the address), but this fix is a minimal "safe" solution, that
should hopefully be suitable for backporting.
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
PR target/110792
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
place operand in a register before gen_<insn>64ti2_doubleword.
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
operand in a register before gen_<insn>32di2_doubleword.
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
(<any_rotate>64ti2_doubleword): Likewise.
gcc/testsuite/ChangeLog
PR target/110792
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
* gcc.target/i386/pr110792.c: New 64-bit C test case.
(cherry picked from commit 790c1f60a5662b16eb19eb4b81922995863c7571)
---
gcc/config/i386/i386.md | 18 ++++++++++++------
gcc/testsuite/g++.target/i386/pr110792.C | 16 ++++++++++++++++
gcc/testsuite/gcc.target/i386/pr110792.c | 18 ++++++++++++++++++
3 files changed, 46 insertions(+), 6 deletions(-)
create mode 100644 gcc/testsuite/g++.target/i386/pr110792.C
create mode 100644 gcc/testsuite/gcc.target/i386/pr110792.c
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f3a3305..a71e837 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -14359,7 +14359,10 @@
emit_insn (gen_ix86_<insn>ti3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (TImode, operands[1]);
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ }
else
{
rtx amount = force_reg (QImode, operands[2]);
@@ -14394,7 +14397,10 @@
emit_insn (gen_ix86_<insn>di3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (DImode, operands[1]);
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ }
else
FAIL;
@@ -14562,8 +14568,8 @@
})
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
(const_int 32)))]
"!TARGET_64BIT"
"#"
@@ -14580,8 +14586,8 @@
})
(define_insn_and_split "<insn>64ti2_doubleword"
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
(const_int 64)))]
"TARGET_64BIT"
"#"
diff --git a/gcc/testsuite/g++.target/i386/pr110792.C b/gcc/testsuite/g++.target/i386/pr110792.C
new file mode 100644
index 0000000..ce21a7a
--- /dev/null
+++ b/gcc/testsuite/g++.target/i386/pr110792.C
@@ -0,0 +1,16 @@
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2" } */
+
+template <int ROT, typename T>
+inline T rotr(T input)
+{
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
+}
+
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
+unsigned long long whirl(unsigned char x0)
+{
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
+ return rotr<32>(s4);
+}
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr110792.c b/gcc/testsuite/gcc.target/i386/pr110792.c
new file mode 100644
index 0000000..b65125c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr110792.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O2" } */
+
+static inline unsigned __int128 rotr(unsigned __int128 input)
+{
+ return ((input >> 64) | (input << (64)));
+}
+
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
+unsigned __int128 whirl(unsigned char x0)
+{
+ register int t __asm("rdi") = x0&0xFF;
+ const unsigned __int128 s4 = WHIRL_S[t];
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
+ asm("":::"memory");
+ return tt;
+}
+/* { dg-final { scan-assembler-not "movq\tWHIRL_S\\+8\\(%rdi\\), %rdi" } } */
--
2.41.0
@@ -0,0 +1,61 @@
From c4f484f465a32e796ae384aa3f90e79fa218b4e9 Mon Sep 17 00:00:00 2001
From: Jingyun Hua <huajingyun@loongson.cn>
Date: Mon, 7 Aug 2023 15:25:58 +0800
Subject: [PATCH] loongarch disable multilib support
Signed-off-by: Jingyun Hua <huajingyun@loongson.cn>
---
gcc/config/loongarch/linux.h | 10 +---------
gcc/config/loongarch/t-linux | 18 +++---------------
3 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/gcc/config/loongarch/linux.h b/gcc/config/loongarch/linux.h
index 9059d2441..23eaff0cc 100644
--- a/gcc/config/loongarch/linux.h
+++ b/gcc/config/loongarch/linux.h
@@ -22,15 +22,7 @@ along with GCC; see the file COPYING3. If not see
* can work in a multilib environment. */
#if defined(LA_DISABLE_MULTILIB) && defined(LA_DISABLE_MULTIARCH)
-
- #if DEFAULT_ABI_BASE == ABI_BASE_LP64D
- #define ABI_LIBDIR "lib64"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64F
- #define ABI_LIBDIR "lib64/f32"
- #elif DEFAULT_ABI_BASE == ABI_BASE_LP64S
- #define ABI_LIBDIR "lib64/sf"
- #endif
-
+ #define ABI_LIBDIR "lib"
#endif
#ifndef ABI_LIBDIR
diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
index e40da1792..f72c6e878 100644
--- a/gcc/config/loongarch/t-linux
+++ b/gcc/config/loongarch/t-linux
@@ -36,18 +36,6 @@ else
endif
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
-ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-
- MULTILIB_OSDIRNAMES = \
- mabi.lp64d=../lib64$\
- $(call if_multiarch,:loongarch64-linux-gnu)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64f=../lib64/f32$\
- $(call if_multiarch,:loongarch64-linux-gnuf32)
-
- MULTILIB_OSDIRNAMES += \
- mabi.lp64s=../lib64/sf$\
- $(call if_multiarch,:loongarch64-linux-gnusf)
-
-endif
+ MULTILIB_OSDIRNAMES = mabi.lp64d=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64f=../lib
+ MULTILIB_OSDIRNAMES += mabi.lp64s=../lib
--
2.41.0
+833
View File
@@ -0,0 +1,833 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen gcc-x86_64
# Based on: main/gcc (from Alpine)
CTARGET_ARCH=x86_64
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
LANG_D=false
LANG_OBJC=false
LANG_JAVA=false
LANG_GO=false
LANG_FORTRAN=false
LANG_ADA=false
options="!strip"
# abuild doesn't try to tries to install "build-base-$CTARGET_ARCH"
# when this variable matches "no*"
BOOTSTRAP="nobuildbase"
# abuild will only cross compile when this variable is set, but it
# needs to find a valid package database in there for dependency
# resolving, so we set it to /.
CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-x86_64
pkgver=13.2.1_git20240309
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
_pkgsnap="${pkgver##*_git}"
[ "$BOOTSTRAP" = "nolibc" ] && pkgname="gcc-pass2"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-x86_64
pkgrel=0
pkgdesc="Stage2 cross-compiler for x86_64"
url="https://gcc.gnu.org"
arch="aarch64"
license="GPL-2.0-or-later AND LGPL-2.1-or-later"
_gccrel=$pkgver-r$pkgrel
depends="binutils-x86_64 mpc1"
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-x86_64 binutils-x86_64"
subpackages="g++-x86_64:gpp libstdc++-dev-x86_64:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
options="!strip"
: "${LANG_CXX:=true}"
: "${LANG_D:=true}"
: "${LANG_OBJC:=true}"
: "${LANG_GO:=true}"
: "${LANG_FORTRAN:=true}"
: "${LANG_ADA:=true}"
: "${LANG_JIT:=true}"
_libgomp=true
_libgcc=false
_libatomic=true
_libitm=true
if [ "$CHOST" != "$CTARGET" ]; then
if [ "$BOOTSTRAP" = nolibc ]; then
LANG_CXX=false
LANG_ADA=false
_libgcc=false
_builddir="$srcdir/build-cross-pass2"
else
_builddir="$srcdir/build-cross-final"
fi
LANG_OBJC=false
LANG_GO=false
LANG_FORTRAN=false
LANG_D=false
LANG_JIT=false
_libgomp=false
_libatomic=false
_libitm=false
# format-sec: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100431
CPPFLAGS="${CPPFLAGS/-Werror=format-security/}"
# reset target flags (should be set in crosscreate abuild)
# fixup flags. seems gcc treats CPPFLAGS as global without
# _FOR_xxx variants. wrap it in CFLAGS and CXXFLAGS.
export CFLAGS="$CPPFLAGS -g0 ${CFLAGS/-Werror=format-security/}"
export CXXFLAGS="$CPPFLAGS -g0 ${CXXFLAGS/-Werror=format-security/}"
unset CPPFLAGS
export CFLAGS_FOR_TARGET=" "
export CXXFLAGS_FOR_TARGET=" "
export LDFLAGS_FOR_TARGET=" "
STRIP_FOR_TARGET="$CTARGET-strip"
elif [ "$CBUILD" != "$CHOST" ]; then
# format-sec: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100431
CPPFLAGS="${CPPFLAGS/-Werror=format-security/}"
# fixup flags. seems gcc treats CPPFLAGS as global without
# _FOR_xxx variants. wrap it in CFLAGS and CXXFLAGS.
export CFLAGS="$CPPFLAGS -g0 ${CFLAGS/-Werror=format-security/}"
export CXXFLAGS="$CPPFLAGS -g0 ${CXXFLAGS/-Werror=format-security/}"
unset CPPFLAGS
# reset flags and cc for build
export CC_FOR_BUILD="gcc"
export CXX_FOR_BUILD="g++"
export CFLAGS_FOR_BUILD=" "
export CXXFLAGS_FOR_BUILD=" "
export LDFLAGS_FOR_BUILD=" "
export CFLAGS_FOR_TARGET=" "
export CXXFLAGS_FOR_TARGET=" "
export LDFLAGS_FOR_TARGET=" "
# Languages that do not need bootstrapping
LANG_OBJC=false
LANG_GO=false
LANG_FORTRAN=false
LANG_D=false
LANG_JIT=false
STRIP_FOR_TARGET=${CROSS_COMPILE}strip
_builddir="$srcdir/build-cross-native"
else
STRIP_FOR_TARGET=${CROSS_COMPILE}strip
_builddir="$srcdir/build"
# format-sec: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100431
CPPFLAGS="${CPPFLAGS/-Werror=format-security/}"
# pass -g0 by default to bypass -g, since we don't do debug
# if -dbg added, the -g is appended and overrides this
export CFLAGS="$CPPFLAGS -g0 ${CFLAGS/-Werror=format-security/} -O2"
export CXXFLAGS="$CPPFLAGS -g0 ${CXXFLAGS/-Werror=format-security/} -O2"
unset CPPFLAGS
# https://gcc.gnu.org/install/build.html
export CFLAGS_FOR_TARGET="$CFLAGS"
export CXXFLAGS_FOR_TARGET="$CXXFLAGS"
export LDFLAGS_FOR_TARGET="$LDFLAGS"
export BOOT_CFLAGS="$CFLAGS"
export BOOT_CXXFLAGS="$CXXFLAGS"
export BOOT_LDFLAGS="$LDFLAGS"
fi
case "$CARCH" in
# GDC hasn't been ported to PowerPC
# See libphobos/configure.tgt in GCC sources for supported targets
# riscv fails with: error: static assert "unimplemented"
ppc64le|riscv64|loongarch64) LANG_D=false ;;
# GDC does currently not work on 32-bit musl architectures.
# This is a known upstream issue.
# See: https://github.com/dlang/druntime/pull/3383
armhf|armv7|x86) LANG_D=false ;;
esac
# libitm has TEXTRELs in ARM build, so disable for now
case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
riscv64) _libitm=false ;;
loongarch64) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
# investigate further. We disable LANG_GO on mips64 as it requires
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
loongarch64) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
# currently on x86, x86_64 and ia64
_libquadmath=$LANG_FORTRAN
case "$CTARGET_ARCH" in
x86 | x86_64 | ppc64le) _libquadmath=$LANG_FORTRAN ;;
*) _libquadmath=false ;;
esac
# libatomic is a dependency for openvswitch
$_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH"
$_libgcc && subpackages="$subpackages libgcc::$CTARGET_ARCH"
$_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH"
if $_libgomp; then
depends="$depends libgomp=$_gccrel"
subpackages="$subpackages libgomp::$CTARGET_ARCH"
fi
case "$CARCH" in
riscv64)
LANG_ADA=false;;
esac
case "$CTARGET_ARCH" in
loongarch64)
LANG_ADA=false;;
esac
_languages=c
if $LANG_CXX; then
_languages="$_languages,c++"
fi
if $LANG_D; then
subpackages="$subpackages libgphobos::$CTARGET_ARCH gcc-gdc$_target:gdc"
_languages="$_languages,d"
makedepends_build="$makedepends_build libucontext-dev gcc-gdc-bootstrap"
fi
if $LANG_OBJC; then
subpackages="$subpackages libobjc::$CTARGET_ARCH gcc-objc$_target:objc"
_languages="$_languages,objc"
fi
if $LANG_GO; then
subpackages="$subpackages libgo::$CTARGET_ARCH gcc-go$_target:go"
_languages="$_languages,go"
fi
if $LANG_FORTRAN; then
subpackages="$subpackages libgfortran::$CTARGET_ARCH gfortran$_target:gfortran"
_languages="$_languages,fortran"
fi
if $LANG_ADA; then
subpackages="$subpackages gcc-gnat$_target:gnat"
_languages="$_languages,ada"
if [ "$CBUILD" = "$CTARGET" ]; then
makedepends_build="$makedepends_build gcc-gnat-bootstrap"
subpackages="$subpackages libgnat-static:libgnatstatic:$CTARGET_ARCH libgnat::$CTARGET_ARCH"
else
subpackages="$subpackages libgnat::$CTARGET_ARCH"
makedepends_build="$makedepends_build gcc-gnat gcc-gnat$_cross"
fi
fi
if $LANG_JIT; then
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
fi
makedepends="$makedepends_build $makedepends_host"
# when using upstream releases, use this URI template
# https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgbase:-$pkgver}.tar.xz
#
# right now, we are using a git snapshot. snapshots are taken from gcc.gnu.org/pub/gcc/snapshots.
# However, since they are periodically deleted from the GCC mirrors the utilized snapshots are
# mirrored on dev.alpinelinux.org. Please ensure that the snapshot Git commit (as stated in the
# README) matches the base commit on the version-specific branch in the Git repository below.
#
# PLEASE submit all patches to gcc to https://gitlab.alpinelinux.org/kaniini/alpine-gcc-patches,
# so that they can be properly tracked and easily rebased if needed.
source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${_pkgbase%%.*}-$_pkgsnap.tar.xz
0001-posix_memalign.patch
0002-gcc-poison-system-directories.patch
0003-specs-turn-on-Wl-z-now-by-default.patch
0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
0006-Enable-Wformat-and-Wformat-security-by-default.patch
0007-Enable-Wtrampolines-by-default.patch
0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
0011-libiberty-copy-PIC-objects-during-build-process.patch
0012-libgcc_s.patch
0013-nopie.patch
0014-ada-fix-shared-linking.patch
0015-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
0016-add-fortify-headers-paths.patch
0017-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
0018-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
0019-aarch64-disable-multilib-support.patch
0020-s390x-disable-multilib-support.patch
0021-ppc64-le-disable-multilib-support.patch
0022-x86_64-disable-multilib-support.patch
0023-riscv-disable-multilib-support.patch
0024-always-build-libgcc_eh.a.patch
0025-ada-libgnarl-compatibility-for-musl.patch
0026-ada-musl-support-fixes.patch
0027-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
0028-configure-fix-detection-of-atomic-builtins-in-libato.patch
0029-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch
0030-gdc-unconditionally-link-libgphobos-against-libucont.patch
0031-druntime-link-against-libucontext-on-all-platforms.patch
0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
0037-loongarch-disable-multilib-support.patch
"
# secfixes:
# 13.2.1_git20231014-r0:
# - CVE-2023-4039
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase%%.*}-$_pkgsnap
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
_gcclibexec="/usr/libexec/gcc/$CTARGET/${_pkgbase:-$pkgver}"
prepare() {
cd "$_gccdir"
_err=
for i in $source; do
case "$i" in
*.patch)
msg "Applying $i"
patch -p1 -i "$srcdir"/$i || _err="$_err $i"
;;
esac
done
if [ -n "$_err" ]; then
error "The following patches failed:"
for i in $_err; do
echo " $i"
done
return 1
fi
echo ${_pkgbase:-$pkgver} > gcc/BASE-VER
}
build() {
local _arch_configure=
local _libc_configure=
local _bootstrap_configure=
local _symvers=
local _jit_configure=
cd "$_gccdir"
case "$CTARGET" in
aarch64-*-*-*) _arch_configure="--with-arch=armv8-a --with-abi=lp64";;
armv5-*-*-*eabi) _arch_configure="--with-arch=armv5te --with-tune=arm926ej-s --with-float=soft --with-abi=aapcs-linux";;
armv6-*-*-*eabihf) _arch_configure="--with-arch=armv6kz --with-tune=arm1176jzf-s --with-fpu=vfpv2 --with-float=hard --with-abi=aapcs-linux";;
armv7-*-*-*eabihf) _arch_configure="--with-arch=armv7-a --with-tune=generic-armv7-a --with-fpu=vfpv3-d16 --with-float=hard --with-abi=aapcs-linux --with-mode=thumb";;
mips-*-*-*) _arch_configure="--with-arch=mips32 --with-mips-plt --with-float=soft --with-abi=32";;
mips64-*-*-*) _arch_configure="--with-arch=mips3 --with-tune=mips64 --with-mips-plt --with-float=soft --with-abi=64";;
mips64el-*-*-*) _arch_configure="--with-arch=mips3 --with-tune=mips64 --with-mips-plt --with-float=soft --with-abi=64";;
mipsel-*-*-*) _arch_configure="--with-arch=mips32 --with-mips-plt --with-float=soft --with-abi=32";;
powerpc-*-*-*) _arch_configure="--enable-secureplt --enable-decimal-float=no";;
powerpc64*-*-*-*) _arch_configure="--with-abi=elfv2 --enable-secureplt --enable-decimal-float=no --enable-targets=powerpcle-linux";;
i486-*-*-*) _arch_configure="--with-arch=i486 --with-tune=generic --enable-cld";;
i586-*-*-*) _arch_configure="--with-arch=pentium-m --with-fpmath=sse --with-tune=generic --enable-cld";;
s390x-*-*-*) _arch_configure="--with-arch=z196 --with-tune=zEC12 --with-zarch --with-long-double-128 --enable-decimal-float";;
riscv64-*-*-*) _arch_configure="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic";;
loongarch64-*-*-*) _arch_configure="--with-arch=loongarch64 --with-abi=lp64d";;
esac
case "$CTARGET_ARCH" in
mips*) _hash_style_configure="--with-linker-hash-style=sysv" ;;
*) _hash_style_configure="--with-linker-hash-style=gnu" ;;
esac
case "$CTARGET_LIBC" in
musl)
# musl does not support libsanitizer
# alpine musl provides libssp_nonshared.a, so we don't need libssp either
_libc_configure="--disable-libssp --disable-libsanitizer"
_symvers="--disable-symvers"
export libat_cv_have_ifunc=no
;;
esac
case "$BOOTSTRAP" in
nolibc) _bootstrap_configure="--with-newlib --disable-shared --enable-threads=no" ;;
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
esac
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
$_libquadmath || _arch_configure="$_arch_configure --disable-libquadmath"
msg "Building the following:"
echo ""
echo " CBUILD=$CBUILD"
echo " CHOST=$CHOST"
echo " CTARGET=$CTARGET"
echo " CTARGET_ARCH=$CTARGET_ARCH"
echo " CTARGET_LIBC=$CTARGET_LIBC"
echo " languages=$_languages"
echo " arch_configure=$_arch_configure"
echo " libc_configure=$_libc_configure"
echo " cross_configure=$_cross_configure"
echo " bootstrap_configure=$_bootstrap_configure"
echo " hash_style_configure=$_hash_style_configure"
echo ""
local version="Alpine $pkgver"
local gccconfiguration="
--prefix=/usr
--mandir=/usr/share/man
--infodir=/usr/share/info
--build=$CBUILD
--host=$CHOST
--target=$CTARGET
--enable-checking=release
--disable-cet
--disable-fixed-point
--disable-libstdcxx-pch
--disable-multilib
--disable-nls
--disable-werror
$_symvers
--enable-__cxa_atexit
--enable-default-pie
--enable-default-ssp
--enable-languages=$_languages
--enable-link-serialization=2
--enable-linker-build-id
$_arch_configure
$_libc_configure
$_cross_configure
$_bootstrap_configure
--with-bugurl=https://gitlab.alpinelinux.org/alpine/aports/-/issues
--with-system-zlib
$_hash_style_configure
"
mkdir -p "$_builddir"
cd "$_builddir"
"$_gccdir"/configure $gccconfiguration \
--with-pkgversion="$version"
msg "building gcc"
make
# we build gccjit separate to not build all of gcc with --enable-host-shared
# as doing so slows it down a few %, so for some quick if's here we gain
# free performance
if $LANG_JIT; then
mkdir -p "$_builddir"/libgccjit-build
cd "$_builddir"/libgccjit-build
"$_gccdir"/configure $gccconfiguration \
--disable-bootstrap \
--enable-host-shared \
--enable-languages=jit \
--with-pkgversion="$version"
msg "building libgccjit"
make all-gcc
fi
}
package() {
cd "$_builddir"
make -j1 DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/cc
ln -s ${CTARGET}-gcc "$pkgdir"/usr/bin/${CTARGET}-cc
if $LANG_JIT; then
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
fi
# we dont support gcj -static
# and saving 35MB is not bad.
find "$pkgdir" \( -name libgtkpeer.a \
-o -name libgjsmalsa.a \
-o -name libgij.a \) \
-delete
# strip debug info from some static libs
find "$pkgdir" \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \
-o -name libgphobos.a -o -name libgdruntime.a \
-o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \
-o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \
-o -name libatomic.a -o -name libasan.a -o -name libtsan.a \) \
-a -type f \
-exec $STRIP_FOR_TARGET -g {} +
if $_libgomp; then
mv "$pkgdir"/usr/lib/libgomp.spec "$pkgdir"/$_gcclibdir
fi
if $_libitm; then
mv "$pkgdir"/usr/lib/libitm.spec "$pkgdir"/$_gcclibdir
fi
# remove ffi
rm -f "$pkgdir"/usr/lib/libffi* "$pkgdir"/usr/share/man/man3/ffi*
find "$pkgdir" -name 'ffi*.h' -delete
local gdblib=${_target:+$CTARGET/}lib
if [ -d "$pkgdir"/usr/$gdblib/ ]; then
for i in $(find "$pkgdir"/usr/$gdblib/ -type f -maxdepth 1 -name "*-gdb.py"); do
mkdir -p "$pkgdir"/usr/share/gdb/python/auto-load/usr/$gdblib
mv "$i" "$pkgdir"/usr/share/gdb/python/auto-load/usr/$gdblib/
done
fi
# move ada runtime libs
if $LANG_ADA; then
for i in $(find "$pkgdir"/$_gcclibdir/adalib/ -type f -maxdepth 1 -name "libgna*.so"); do
mv "$i" "$pkgdir"/usr/lib/
ln -s ../../../../${i##*/} $i
done
if [ "$CHOST" = "$CTARGET" ]; then
for i in $(find "$pkgdir"/$_gcclibdir/adalib/ -type f -maxdepth 1 -name "libgna*.a"); do
mv "$i" "$pkgdir"/usr/lib/
ln -s ../../../../${i##*/} $i
done
fi
fi
if [ "$CHOST" != "$CTARGET" ]; then
# cross-gcc: remove any files that would conflict with the
# native gcc package
rm -rf "$pkgdir"/usr/bin/cc "$pkgdir"/usr/include "${pkgdir:?}"/usr/share
# libcc1 does not depend on target, don't ship it
rm -rf "$pkgdir"/usr/lib/libcc1.so*
# fixup gcc library symlinks to be linker scripts so
# linker finds the libs from relocated sysroot
for so in "$pkgdir"/usr/"$CTARGET"/lib/*.so; do
if [ -h "$so" ]; then
local _real=$(basename "$(readlink "$so")")
rm -f "$so"
echo "GROUP ($_real)" > "$so"
fi
done
else
# add c89/c99 wrapper scripts
cat >"$pkgdir"/usr/bin/c89 <<'EOF'
#!/bin/sh
_flavor="-std=c89"
for opt; do
case "$opt" in
-ansi|-std=c89|-std=iso9899:1990) _flavor="";;
-std=*) echo "$(basename $0) called with non ANSI/ISO C option $opt" >&2
exit 1;;
esac
done
exec gcc $_flavor ${1+"$@"}
EOF
cat >"$pkgdir"/usr/bin/c99 <<'EOF'
#!/bin/sh
_flavor="-std=c99"
for opt; do
case "$opt" in
-std=c99|-std=iso9899:1999) _flavor="";;
-std=*) echo "$(basename $0) called with non ISO C99 option $opt" >&2
exit 1;;
esac
done
exec gcc $_flavor ${1+"$@"}
EOF
chmod 755 "$pkgdir"/usr/bin/c?9
# install lto plugin so regular binutils may use it
mkdir -p "$pkgdir"/usr/lib/bfd-plugins
ln -s /$_gcclibexec/liblto_plugin.so "$pkgdir/usr/lib/bfd-plugins/"
fi
}
libatomic() {
pkgdesc="GCC Atomic library"
depends=
replaces="gcc"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libatomic.so.* "$subpkgdir"/usr/lib/
}
libcxx() {
pkgdesc="GNU C++ standard runtime library"
depends=
if [ "$CHOST" = "$CTARGET" ]; then
# verify that we are using clock_gettime rather than doing direct syscalls
# so we dont break 32 bit arches due to time64.
nm -D "$pkgdir"/usr/lib/libstdc++.so.* | grep clock_gettime
fi
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
}
libcxx_dev() {
pkgdesc="GNU C++ standard runtime library (development files)"
depends=
replaces="g++"
amove usr/${_target:+$CTARGET/}lib/libstdc++.a \
usr/${_target:+$CTARGET/}lib/libstdc++exp.a \
usr/${_target:+$CTARGET/}lib/libstdc++.so \
usr/${_target:+$CTARGET/}lib/libstdc++fs.a \
usr/${_target:+$CTARGET/}lib/libsupc++.a \
usr/${_target:+$CTARGET/}include/c++
}
gpp() {
pkgdesc="GNU C++ standard library and compiler"
depends="libstdc++=$_gccrel libstdc++-dev$_target=$_gccrel gcc$_target=$_gccrel libc-dev"
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/usr/bin \
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
"$subpkgdir"/usr/${_target:+$CTARGET/}lib \
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
}
jit() {
pkgdesc="GCC JIT Library"
depends=
amove usr/lib/libgccjit.so*
}
jitdev() {
pkgdesc="GCC JIT Library (development files)"
depends="libgccjit"
amove usr/include/libgccjit*.h
}
libobjc() {
pkgdesc="GNU Objective-C runtime"
replaces="objc"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libobjc.so.* "$subpkgdir"/usr/lib/
}
objc() {
pkgdesc="GNU Objective-C"
replaces="gcc"
depends="libc-dev gcc=$_gccrel libobjc=$_gccrel"
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/$_gcclibdir/include \
"$subpkgdir"/usr/lib
mv "$pkgdir/$_gcclibexec/cc1obj" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/$_gcclibdir/include/objc "$subpkgdir"/$_gcclibdir/include/
mv "$pkgdir"/usr/lib/libobjc.so "$pkgdir"/usr/lib/libobjc.a \
"$subpkgdir"/usr/lib/
}
libgcc() {
pkgdesc="GNU C compiler runtime libraries"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libgcc_s.so.* "$subpkgdir"/usr/lib/
}
libgomp() {
pkgdesc="GCC shared-memory parallel programming API library"
depends=
replaces="gcc"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libgomp.so.* "$subpkgdir"/usr/lib/
}
libgphobos() {
pkgdesc="D programming language standard library for GCC"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgdruntime.so.* "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.so.* "$subpkgdir"/usr/lib/
}
gdc() {
pkgdesc="GCC-based D language compiler"
depends="gcc=$_gccrel libgphobos=$_gccrel musl-dev"
depends="$depends libucontext-dev"
provides="gcc-gdc-bootstrap=$_gccrel"
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/$_gcclibdir/include/d/ \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
# Copy: The installed '.d' files, the static lib, the binary itself
# The shared libs are part of 'libgphobos' so one can run program
# without installing the compiler
mv "$pkgdir/$_gcclibexec/d21" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/$_gcclibdir/include/d/* "$subpkgdir"/$_gcclibdir/include/d/
mv "$pkgdir"/usr/lib/libgdruntime.a "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgdruntime.so "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.a "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.so "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.spec "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/bin/$CTARGET-gdc "$subpkgdir"/usr/bin/
mv "$pkgdir"/usr/bin/gdc "$subpkgdir"/usr/bin/
}
libgo() {
pkgdesc="Go runtime library for GCC"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgo.so.* "$subpkgdir"/usr/lib/
}
go() {
pkgdesc="GCC Go frontend (intended for bootstrapping community/go)"
depends="gcc=$_gccrel libgo=$_gccrel !go"
install="$pkgname-go.post-install"
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
mv "$pkgdir"/usr/lib/go "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/bin/*gccgo "$subpkgdir"/usr/bin/
mv "$pkgdir"/usr/bin/*go "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/*gofmt "$subpkgdir"/usr/bin
mv "$pkgdir"/$_gcclibexec/go1 "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/cgo "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/buildid "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/test2json "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/vet "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/usr/lib/libgo.a \
"$pkgdir"/usr/lib/libgo.so \
"$pkgdir"/usr/lib/libgobegin.a \
"$pkgdir"/usr/lib/libgolibbegin.a \
"$subpkgdir"/usr/lib/
}
libgfortran() {
pkgdesc="Fortran runtime library for GCC"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgfortran.so.* "$subpkgdir"/usr/lib/
}
libquadmath() {
replaces="gcc"
pkgdesc="128-bit math library for GCC"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libquadmath.so.* "$subpkgdir"/usr/lib/
}
gfortran() {
pkgdesc="GNU Fortran Compiler"
depends="gcc=$_gccrel libgfortran=$_gccrel"
$_libquadmath && depends="$depends libquadmath=$_gccrel"
replaces="gcc"
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/$_gcclibdir \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/*gfortran "$subpkgdir"/usr/bin/
mv "$pkgdir"/usr/lib/libgfortran.a \
"$pkgdir"/usr/lib/libgfortran.so \
"$subpkgdir"/usr/lib/
if $_libquadmath; then
mv "$pkgdir"/usr/lib/libquadmath.a \
"$pkgdir"/usr/lib/libquadmath.so \
"$subpkgdir"/usr/lib/
fi
mv "$pkgdir"/$_gcclibdir/finclude "$subpkgdir"/$_gcclibdir/
mv "$pkgdir"/$_gcclibexec/f951 "$subpkgdir"/$_gcclibexec
mv "$pkgdir"/usr/lib/libgfortran.spec "$subpkgdir"/$_gcclibdir
}
libgnat() {
pkgdesc="GNU Ada runtime shared libraries"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgna*.so "$subpkgdir"/usr/lib/
}
libgnatstatic() {
pkgdesc="GNU Ada static libraries"
depends=
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgna*.a "$subpkgdir"/usr/lib/
}
gnat() {
pkgdesc="Ada support for GCC"
depends="gcc=$_gccrel"
provides="$pkgname-gnat-bootstrap=$_gccrel"
[ "$CHOST" = "$CTARGET" ] && depends="$depends libgnat=$_gccrel"
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/$_gcclibdir \
"$subpkgdir"/usr/bin
mv "$pkgdir"/$_gcclibexec/*gnat* "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibdir/*ada* "$subpkgdir"/$_gcclibdir/
mv "$pkgdir"/usr/bin/*gnat* "$subpkgdir"/usr/bin/
}
gdb() {
pkgdesc="$pkgdesc (gdb printers)"
install_if="$pkgname=$pkgver-r$pkgrel gdb"
amove \
usr/share/gdb/python/ \
usr/share/gcc-*/python/
}
sha512sums="
2d1e0374ebdee526f0549319fc9c364968c52a0d4aaa16759f00453cb083fe58d8f463c47d97f3bb74a0a92e251989eb75a50ee5800b4569978c72d25446b44e gcc-13-20240309.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
17a2993027d3ddf8595952ebcae425695ddc7b1cf73b384d2e55fddecb9cbf3f6482860a502ff69b14075e12badf27300fd3039f3a9005e851fd8d121d258c2b 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
444550e55491ff89fe8cbbb4b73d017c9c147cdce1ad5c0561fe7d6ab3834515a814c7676c408cfeec18e1aaace27b3c26a2ffe4a75042285df5124976c38672 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
5a5f57e4e45745bb4d9d63d7d410fe9dd56ce12dbd70c376dd45015909307faf02391e75368e4e7404591614a874cee41b20652cf27be234765d6db97ceb4e7e 0006-Enable-Wformat-and-Wformat-security-by-default.patch
3a2b22388398a93dae7787e794cd580b9c577326f286241e086120c1fcfdd9228c2e00407088ebb163fb1acc21722c199071343551c989a958dc3c845b15132d 0007-Enable-Wtrampolines-by-default.patch
7535de1c552544e3a51cbb00b5e08ac59edbf3bdcfce2a63b9f319fada3f3676f47e3a00c75d91bcefd14500555ea0844f18c130ff46b20f416ea76071e5af39 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
93d03afd83dee5f7129c36a7b81fa8fd323476507e2f53a4fbe40a026037e7dfafa23591145d7af5848d9a322d212497947a0f58ef828734552e6a6dabd00cfa 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
da9eaf2f0ddbec5ee14dc26053936587e6c76fbf16846db804a18cf4d318579426ebcc566aed02daf8e34f60c08b61f5d3959305886dca9bbcdc84db057258d9 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
35b9aafe7eee8138cb7aad7164a8f77c15ccdce26843cee78b5871ef91d76cad22ed0871b20f51c4b89b71afd9cfe4ba4227086e158c466558513708fe7d2a1a 0011-libiberty-copy-PIC-objects-during-build-process.patch
9d43f844fad0ac6e1c35a2b6f461f9278ae09e468f2c9ae8adc43accbe6934994aa10d3a433644d1393a4a76e3caed69e3191db7f3c0c24b4e7a0a0a0cbac3f1 0012-libgcc_s.patch
b2c4921c5eef33ee43a92ab5ec7f09d5d3adb49a2416595001e6376ffdf652ef9d0dc21778c3a86e45334290dbe467a4e891ed34a6522e0c72f746def22e8663 0013-nopie.patch
0b50ad15115192699efa9fda3d4fb1c2fa95da06d7880ba34615b40c19a8256e1fe364da39f5c70dc22fbccf21db2de5900932afef68948722eeb25e435262f8 0014-ada-fix-shared-linking.patch
00097c7106625ccf02149a757366f434c48f2abe824bb8b4bf067d29308889cb6039a5e5b2d3bd2683617693b47707d549252c56eea6bc3cdc2450a8d14f46a7 0015-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
7f0bc42b93a389b614054e700b851abfbc53db391aa10cbdf6990d41396b293af78980bb39f1cf0967184d3fbf3d46ac7c7f096717b8f193ea34cbf7f37d7e91 0016-add-fortify-headers-paths.patch
0841acbce81250f8cb140a75ff62958dfcab3bed792822baf1fe4193dd62633648343f4b66df886c12338eed88a98e591b968131416460f9f0274046019bb8ef 0017-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
589d538bdf692559e475e53c79869734dede0eb15228cab9ca901c9db81b0e78a0e532b20dfb05ca584ea19ff4bedd83e139ddca912a26b446c5eb6905180536 0018-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
2213e07bab6f5d8d3d39c732f5385f46cc8f0c84e35054139fdaf13051252d7bf11f647f54aa8456b532166b008fff0656d8f41278e34ba868dd6fe427427a3a 0019-aarch64-disable-multilib-support.patch
a9567947471c3ba8a547a79c55e183974554bf823d9a97a165c966d7b3caad8789980e096e3b78452ece5de062bd9bb006af464bbf0c5a35b689eac3ee21e5c5 0020-s390x-disable-multilib-support.patch
f382eb5f7c2c60c5a23fac587c9629a3059d7be0898e97a1feaf9b9cbe1ef4693cc1177eb29333e8b7944fa17487478e73958be45d5782ccb9ef501961fb9a96 0021-ppc64-le-disable-multilib-support.patch
44ab86feb8e41e7c2b2e27accdf46194c9b80ee6a39543303dc04824f669d9fad182aabd40c9c7f6c265cf9bb71be830c257be115dc9d701d54eca3aa9ef174e 0022-x86_64-disable-multilib-support.patch
e0763083c31485e8ac0b3724376a28af01bb6f50e1a054780b61886e4e3de2a35d127e6e353eb8d8729964ada9b5751bf05bdd51df539667008216db38f228a3 0023-riscv-disable-multilib-support.patch
ab88a2f63e3545bbc36537aa9a86f2c6c35e41bbf702d6e13743a405cdac4f901eed5737189b780da96647fea9f5d863fdc76373f25a00064106dcb5514d6d87 0024-always-build-libgcc_eh.a.patch
8fdbe0c8bf4ca60f458a33e59027de03d15ac91933fe46d8ca62119346d20b9bc2447c0bf22bceb63d0cf8613ab61512d9197f4e6c2224af473b63ef9f254295 0025-ada-libgnarl-compatibility-for-musl.patch
30369bea84020c32d514196ba3adb3d09d2d0359af5550bd3f9719aa357e44b2f695623c1d2a99416e120dc86896c196c5dd4f638183dced4799604137385367 0026-ada-musl-support-fixes.patch
3f9a406d7d2ce34951215ffbcadb49a45e55ad5c24ab9097c0e5e92383e43b876872ccd2a7e7def2833ab204975ee5733f8bcf90934db9fa9c4f6f56c62081f6 0027-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
720a4001f9a1fa4122e456077ecff8d3eb8af7c83d0a81f9da6a6cca05b23664206a82a349e34482c48bfe40e99aa5f21567613d0913f6a24f282bc84a994496 0028-configure-fix-detection-of-atomic-builtins-in-libato.patch
2044c23b23726965c0a6fd39f616cc464badd650947cb40495eeabd906a3af629878c1d28b403b8eb46b30a1a0ba39083023290d62f0c99ccf070063226e3f8f 0029-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch
58e8415612e1042329ad114471852c19f6bf15bf3bfd7cd81ceeafa75778bcc28410a01071a7c8cbf12b8f549acd85723215772813deedb8f266e28b9e01a353 0030-gdc-unconditionally-link-libgphobos-against-libucont.patch
d47b559075f40d526235f47b91da1d0cf6bfe6c5b7311bbfe08af9dd6e8f27e6c7cd82e3b2d529aab0536246fc56e2d42c089b22cacb0e7f09ca4a9d07556994 0031-druntime-link-against-libucontext-on-all-platforms.patch
b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95e21c9ffbf2412193f8b9fc89a4c36fa5a6a041661ac7399d 0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
d834f5f95f4ebe70ec0af0748c8632c99a4f57b69dc14db1a38becdfcb03406b32febf39f772f37bd145538147099fa7433edce845e14ee77cd8f38fd9774fc1 0037-loongarch-disable-multilib-support.patch
"
+8
View File
@@ -0,0 +1,8 @@
#!/bin/sh
cat 1>&2 <<EOF
*
* gcc-go is used in Alpine for bootstrapping Go.
* It is currently discouraged to use it for other purposes.
*
EOF
+3 -3
View File
@@ -2,8 +2,8 @@
# Generator: pmbootstrap aportgen grub-efi-x86
pkgname=grub-efi-x86
pkgver=2.06
pkgrel=14
pkgver=2.12
pkgrel=2
_arch="x86"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -22,5 +22,5 @@ package() {
}
sha512sums="
060ff6d50336911e00d5f1b0267d76a269ebf562dea0b79d6a5502b2453326f49b63af4041748bb13a4db09d6722ec41eceea727cfd9820564e8b6c6900ab442 grub-efi-2.06-r14-x86-edge.apk
2337e5db9d3502b56f1166f0648a15f2264d207e717dfbd0c8bbb9de4546dee069dbc2b55f2c7c48bfee062d7ca17b56e97b6eaa725af0479ab49e2cb5f178a3 grub-efi-2.12-r2-x86-edge.apk
"
+4 -4
View File
@@ -7,8 +7,8 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=musl-aarch64
pkgver=1.2.4_git20230717
pkgrel=3
pkgver=1.2.5
pkgrel=0
arch="x86_64"
subpackages="musl-dev-aarch64:package_dev"
@@ -57,6 +57,6 @@ package_dev() {
}
sha512sums="
7f450061d9d45902ab90180816592426fe0e5f148a1a3373196b7d0564abe26780223a641006ce7d9808e0258b63646a3d7a551ab686a5590e064f25a63540e8 musl-1.2.4_git20230717-r3-aarch64-edge.apk
4a4e255a149ceec21b644bf63a46a324955714154340052771734d5c303779c997ea1be02c4b45c16186ab3c50fdaa26eecfb0ebcfcba5ba8e0bf56d66df461b musl-dev-1.2.4_git20230717-r3-aarch64-edge.apk
dddd12728842e84bf7d532901d9b9e26e2c8c86e25a3625329586c9088ec9b3825ce3e512c56b7e875b923905308b89494d31d7ca05ebda5485bd00de3954236 musl-1.2.5-r0-aarch64-edge.apk
061e68319d2069c211169d7f39b1da572a4c0ab56f8cfe5267c024921ea0e5f44ecc1cca6051bebaa9c83d067f0fd2cbc6b6b73d0e3075410eaf889a25cc82b4 musl-dev-1.2.5-r0-aarch64-edge.apk
"
+4 -4
View File
@@ -7,8 +7,8 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=musl-armhf
pkgver=1.2.4_git20230717
pkgrel=3
pkgver=1.2.5
pkgrel=0
arch="x86_64"
subpackages="musl-dev-armhf:package_dev"
@@ -57,6 +57,6 @@ package_dev() {
}
sha512sums="
174208a869df2aa25806a3440b990c789c60609e3f8504ac0cf1068db753a309293994cd3482f28bb4a375ea8c42bddcd136f0eaf0af2bf3a779a80eba86ac49 musl-1.2.4_git20230717-r3-armhf-edge.apk
9e76f36edb13bd09f149085c57135b2ced3093f5a617d7a29ea6cb40ca53fb82e141bc950918a55757213364d7ff9d4d83e2545f60686e94bebc1c21b01bcc91 musl-dev-1.2.4_git20230717-r3-armhf-edge.apk
4d76f479017b6f666c36782183f3bdb3e58a48f7400cd125c129e380a8654cf99f685f8d3e97b51cb0199b59720a320e251dd9b89fe55ef8f542a043ab3e7355 musl-1.2.5-r0-armhf-edge.apk
7fa4e9ed4acb6292d46939a63e572eb92085e577bbfce75139a3ebef910434230fcbbb7a236efde7ad6d150d84e31c46edcfe835f4102cb9e68f062eb8488a1e musl-dev-1.2.5-r0-armhf-edge.apk
"
+4 -4
View File
@@ -7,8 +7,8 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=musl-armv7
pkgver=1.2.4_git20230717
pkgrel=3
pkgver=1.2.5
pkgrel=0
arch="x86_64"
subpackages="musl-dev-armv7:package_dev"
@@ -57,6 +57,6 @@ package_dev() {
}
sha512sums="
0115bc654494c59bf0b77ac7118f14dce31cd8f86c3d5a20e3fdd49e66dd1c0d0fc1973b92f236e5845c2cf5395c19344acc4ea24c1f19095d44cc526fbc30c4 musl-1.2.4_git20230717-r3-armv7-edge.apk
5a1558325c7a6b02556975ebb2014319657f3f5a721a49eb3b744a18fb7977d91c966d1a1a38f7f5a7c371585d88ebff436a2239e59bb695752167bc4fd7db7d musl-dev-1.2.4_git20230717-r3-armv7-edge.apk
74e482403f77b9d302a4bb0ad6b86a18e81b5be0eb987296a4b0033c996e474b86eac079abc52bd8f02723aa242ea2a74e61bbd0eee036fbf79a21ae250a6e04 musl-1.2.5-r0-armv7-edge.apk
02321d629aaa3712546b01645f1eb308f5e25e49bc3c2c42eff3a7cf84cd60327c6bc9818ebeb7d1d9556ddfaa2e132fdab0dc2142eec4df3a799e3402329c49 musl-dev-1.2.5-r0-armv7-edge.apk
"
+4 -4
View File
@@ -7,8 +7,8 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=musl-riscv64
pkgver=1.2.4_git20230717
pkgrel=3
pkgver=1.2.5
pkgrel=0
arch="x86_64"
subpackages="musl-dev-riscv64:package_dev"
@@ -57,6 +57,6 @@ package_dev() {
}
sha512sums="
1b0ab754d99bcc6216c5c1c49a7337e87268f7c9a8af9ec9c73b75f366672922b53c4b3c8950178419585699a7899d2000a8f9c498c123854f284b2778fdbc7f musl-1.2.4_git20230717-r3-riscv64-edge.apk
0ed3a00b5c1072b01cf0573cab70ec9fe2027c804b7f6c046ca00daa7d3d5083ed639e76467b98ffed1d45f938a73aff8b0e7da0ca00a4cbbed107021df52794 musl-dev-1.2.4_git20230717-r3-riscv64-edge.apk
c11fb5eed8dab05504d88660a4750981a40020a1609b4ec4f9184cf7645283893e7cafc48da471012a4095699d371517cc9e09c0ec73fef4612280c95feebca2 musl-1.2.5-r0-riscv64-edge.apk
77eba42ed78e680419f838f47a9a9f17d42288259540b70792af23b22f85ba1d2f87958e7db77b11b43629d8593fa58a02902453ecb0a46dd7c33cfca750b820 musl-dev-1.2.5-r0-riscv64-edge.apk
"
+4 -4
View File
@@ -7,8 +7,8 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=musl-x86
pkgver=1.2.4_git20230717
pkgrel=3
pkgver=1.2.5
pkgrel=0
arch="x86_64"
subpackages="musl-dev-x86:package_dev"
@@ -57,6 +57,6 @@ package_dev() {
}
sha512sums="
19a5b95a805f2df590c656828fcde6a9c9c4aefc5ea0e35a5f75767a5eb328636e86ffcfa59b8172e84f0cd214141284c7b051f15440bc9fd087c1b48cb4cd80 musl-1.2.4_git20230717-r3-x86-edge.apk
fb3c0011aca00c4528e383b0e0ba95fe01a84a7ef8e69ec808c42ecf0527b4bafa0d4762ce327c281d1ec2cb9b6350c96d7bd04ddee6849b2c6a1c596318ed5e musl-dev-1.2.4_git20230717-r3-x86-edge.apk
7403427bbe6683739ce00c0396dc4bfa8fce2f3e4957d12bc6c31bfb1a60bafca9e7ba266d1ba7ca469ab3738874965cf25e8f3bd838c002b4e5aad702a79e18 musl-1.2.5-r0-x86-edge.apk
f5b0dfe7543bd7d1de3bfc8617c61fb7287227ea4dd9a722bfd4ec99e8a9405826973375a81a380b04bcba419c18e292cf60aaf1c9503eec3b420ed7adbacd68 musl-dev-1.2.5-r0-x86-edge.apk
"
+62
View File
@@ -0,0 +1,62 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen musl-x86_64
# Stub for apkbuild-lint
if [ -z "$(type -t arch_to_hostspec)" ]; then
arch_to_hostspec() { :; }
fi
pkgname=musl-x86_64
pkgver=1.2.5
pkgrel=0
arch="aarch64"
subpackages="musl-dev-x86_64:package_dev"
_arch="x86_64"
_mirror="http://dl-4.alpinelinux.org/alpine/"
url="https://musl-libc.org"
license="MIT"
options="!check !strip"
pkgdesc="the musl library (lib c) implementation for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
musl-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/musl-$pkgver-r$pkgrel.apk
musl-dev-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/musl-dev-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
# Use 'busybox tar' to avoid 'tar: Child returned status 141'
# on some machines (builds.sr.ht, gitlab-ci). See pmaports#26.
busybox tar -xf $srcdir/musl-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
}
package_dev() {
mkdir -p "$subpkgdir/usr/$_target"
cd "$subpkgdir/usr/$_target"
# Use 'busybox tar' to avoid 'tar: Child returned status 141'
# on some machines (builds.sr.ht, gitlab-ci). See pmaports#26.
busybox tar -xf $srcdir/musl-dev-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
# symlink everything from /usr/$_target/usr/*
# to /usr/$_target/* so the cross-compiler gcc does not fail
# to build.
for _dir in include lib; do
mkdir -p "$subpkgdir/usr/$_target/$_dir"
cd "$subpkgdir/usr/$_target/usr/$_dir"
for i in *; do
cd "$subpkgdir/usr/$_target/$_dir"
ln -s /usr/$_target/usr/$_dir/$i $i
done
done
}
sha512sums="
8bb997e077850195621916ee0722be7e054086fa5c2907c7d290ee8892910c073e3aece13a2839589966987711f4af6b2f4bffdc6c45d636a24655ef9cbec101 musl-1.2.5-r0-x86_64-edge.apk
5d93191c3c9bf03b466dc169b57e519f0165c6551d117ae09538907c57a49f58afa3c9225aafc7a61625f224276eff4ee2dbe79d65cf684d03a46c24dd78aa4c musl-dev-1.2.5-r0-x86_64-edge.apk
"
@@ -0,0 +1,111 @@
From 704dfdbbc7df036ed1d5d234dfc67d765804eb4d Mon Sep 17 00:00:00 2001
From: Nick Desaulniers <ndesaulniers@google.com>
Date: Mon, 4 Nov 2019 19:31:45 +0100
Subject: [PATCH] ARM: 8933/1: replace Sun/Solaris style flag on section
directive
It looks like a section directive was using "Solaris style" to declare
the section flags. Replace this with the GNU style so that Clang's
integrated assembler can assemble this directive.
The modified instances were identified via:
$ ag \.section | grep #
Link: https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_7.html#SEC119
Link: https://github.com/ClangBuiltLinux/linux/issues/744
Link: https://bugs.llvm.org/show_bug.cgi?id=43759
Link: https://reviews.llvm.org/D69296
Acked-by: Nicolas Pitre <nico@fluxnic.net>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Suggested-by: Fangrui Song <maskray@google.com>
Suggested-by: Jian Cai <jiancai@google.com>
Suggested-by: Peter Smith <peter.smith@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
[ partial backport to 3.4 ]
---
arch/arm/boot/bootp/init.S | 2 +-
arch/arm/boot/compressed/big-endian.S | 2 +-
arch/arm/boot/compressed/head.S | 2 +-
arch/arm/boot/compressed/piggy.lzma.S | 2 +-
arch/arm/boot/compressed/piggy.xzkern.S | 2 +-
arch/arm/mm/proc-v7.S | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/bootp/init.S b/arch/arm/boot/bootp/init.S
index 78b508075161..868eeeaaa46e 100644
--- a/arch/arm/boot/bootp/init.S
+++ b/arch/arm/boot/bootp/init.S
@@ -16,7 +16,7 @@
* size immediately following the kernel, we could build this into
* a binary blob, and concatenate the zImage using the cat command.
*/
- .section .start,#alloc,#execinstr
+ .section .start, "ax"
.type _start, #function
.globl _start
diff --git a/arch/arm/boot/compressed/big-endian.S b/arch/arm/boot/compressed/big-endian.S
index 25ab26f1c6f0..f22428e275f8 100644
--- a/arch/arm/boot/compressed/big-endian.S
+++ b/arch/arm/boot/compressed/big-endian.S
@@ -5,7 +5,7 @@
* Author: Nicolas Pitre
*/
- .section ".start", #alloc, #execinstr
+ .section ".start", "ax"
mrc p15, 0, r0, c1, c0, 0 @ read control reg
orr r0, r0, #(1 << 7) @ enable big endian mode
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
index 77a716bdf4d3..b70606652d21 100644
--- a/arch/arm/boot/compressed/head.S
+++ b/arch/arm/boot/compressed/head.S
@@ -113,7 +113,7 @@
#endif
.endm
- .section ".start", #alloc, #execinstr
+ .section ".start", "ax"
/*
* sort out different calling conventions
*/
diff --git a/arch/arm/boot/compressed/piggy.lzma.S b/arch/arm/boot/compressed/piggy.lzma.S
index d7e69cffbc0a..cfea81ae8f4b 100644
--- a/arch/arm/boot/compressed/piggy.lzma.S
+++ b/arch/arm/boot/compressed/piggy.lzma.S
@@ -1,4 +1,4 @@
- .section .piggydata,#alloc
+ .section .piggydata, "a"
.globl input_data
input_data:
.incbin "arch/arm/boot/compressed/piggy.lzma"
diff --git a/arch/arm/boot/compressed/piggy.xzkern.S b/arch/arm/boot/compressed/piggy.xzkern.S
index 5703f300d027..a135d3b549c5 100644
--- a/arch/arm/boot/compressed/piggy.xzkern.S
+++ b/arch/arm/boot/compressed/piggy.xzkern.S
@@ -1,4 +1,4 @@
- .section .piggydata,#alloc
+ .section .piggydata, "a"
.globl input_data
input_data:
.incbin "arch/arm/boot/compressed/piggy.xzkern"
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index 69363be2f241..321cb1c6a091 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -422,7 +422,7 @@ __v7_setup_stack:
string cpu_elf_name, "v7"
.align
- .section ".proc.info.init", #alloc, #execinstr
+ .section ".proc.info.init", "ax"
/*
* Standard v7 proc info content
--
2.43.0
@@ -0,0 +1,10 @@
diff --git a/arch/arm/boot/compressed/piggy.gzip.S b/arch/arm/boot/compressed/piggy.gzip.S
index a68adf91a16..175ed02a6ac 100644
--- a/arch/arm/boot/compressed/piggy.gzip.S
+++ b/arch/arm/boot/compressed/piggy.gzip.S
@@ -1,4 +1,4 @@
- .section .piggydata,#alloc
+ .section .piggydata, "a"
.globl input_data
input_data:
.incbin "arch/arm/boot/compressed/piggy.gzip"
@@ -0,0 +1,12 @@
diff --git a/arch/arm64/mm/proc.S b/arch/arm64/mm/proc.S
index d2f2cedf..7e2cbc74 100644
--- a/arch/arm64/mm/proc.S
+++ b/arch/arm64/mm/proc.S
@@ -171,7 +171,6 @@ ENTRY(cpu_do_switch_mm)
ret
ENDPROC(cpu_do_switch_mm)
- .section ".text.init", #alloc, #execinstr
/*
* __cpu_setup
@@ -0,0 +1,101 @@
From 3020e3a81b63e05891ef5d40f3acfbd00040ba17 Mon Sep 17 00:00:00 2001
From: Nick Desaulniers <ndesaulniers@google.com>
Date: Mon, 4 Nov 2019 19:31:45 +0100
Subject: [PATCH] ARM: 8933/1: replace Sun/Solaris style flag on section
directive
It looks like a section directive was using "Solaris style" to declare
the section flags. Replace this with the GNU style so that Clang's
integrated assembler can assemble this directive.
The modified instances were identified via:
$ ag \.section | grep #
Link: https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_7.html#SEC119
Link: https://github.com/ClangBuiltLinux/linux/issues/744
Link: https://bugs.llvm.org/show_bug.cgi?id=43759
Link: https://reviews.llvm.org/D69296
Acked-by: Nicolas Pitre <nico@fluxnic.net>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Suggested-by: Fangrui Song <maskray@google.com>
Suggested-by: Jian Cai <jiancai@google.com>
Suggested-by: Peter Smith <peter.smith@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
[ partial backport to 5.4 ]
---
arch/arm/boot/bootp/init.S | 2 +-
arch/arm/boot/compressed/big-endian.S | 2 +-
arch/arm/boot/compressed/head.S | 2 +-
arch/arm/boot/compressed/piggy.lzma.S | 2 +-
arch/arm/mm/proc-v7.S | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm/boot/bootp/init.S b/arch/arm/boot/bootp/init.S
index 78b508075161..868eeeaaa46e 100644
--- a/arch/arm/boot/bootp/init.S
+++ b/arch/arm/boot/bootp/init.S
@@ -16,7 +16,7 @@
* size immediately following the kernel, we could build this into
* a binary blob, and concatenate the zImage using the cat command.
*/
- .section .start,#alloc,#execinstr
+ .section .start, "ax"
.type _start, #function
.globl _start
diff --git a/arch/arm/boot/compressed/big-endian.S b/arch/arm/boot/compressed/big-endian.S
index 25ab26f1c6f0..f22428e275f8 100644
--- a/arch/arm/boot/compressed/big-endian.S
+++ b/arch/arm/boot/compressed/big-endian.S
@@ -5,7 +5,7 @@
* Author: Nicolas Pitre
*/
- .section ".start", #alloc, #execinstr
+ .section ".start", "ax"
mrc p15, 0, r0, c1, c0, 0 @ read control reg
orr r0, r0, #(1 << 7) @ enable big endian mode
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
index 77a716bdf4d3..b70606652d21 100644
--- a/arch/arm/boot/compressed/head.S
+++ b/arch/arm/boot/compressed/head.S
@@ -113,7 +113,7 @@
#endif
.endm
- .section ".start", #alloc, #execinstr
+ .section ".start", "ax"
/*
* sort out different calling conventions
*/
diff --git a/arch/arm/boot/compressed/piggy.S b/arch/arm/boot/compressed/piggy.S
index 0284f84dcf3804..27577644ee721a 100644
--- a/arch/arm/boot/compressed/piggy.S
+++ b/arch/arm/boot/compressed/piggy.S
@@ -1,5 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0 */
- .section .piggydata,#alloc
+ .section .piggydata, "a"
.globl input_data
input_data:
.incbin "arch/arm/boot/compressed/piggy_data"
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index c4e8006a1a8cdd..48e0ef6f0dccfe 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -644,7 +644,7 @@ __v7_setup_stack:
string cpu_elf_name, "v7"
.align
- .section ".proc.info.init", #alloc
+ .section ".proc.info.init", "a"
/*
* Standard v7 proc info content
--
2.30.2
@@ -0,0 +1,40 @@
From f00083cae331e5d3eecade6b4fdc35d0825e73ef Mon Sep 17 00:00:00 2001
From: Mark Rutland <mark.rutland@arm.com>
Date: Fri, 11 Dec 2015 11:04:31 +0000
Subject: [PATCH] arm64: mm: place __cpu_setup in .text
We drop __cpu_setup in .text.init, which ends up being part of .text.
The .text.init section was a legacy section name which has been unused
elsewhere for a long time.
The ".text.init" name is misleading if read as a synonym for
".init.text". Any CPU may execute __cpu_setup before turning the MMU on,
so it should simply live in .text.
Remove the pointless section assignment. This will leave __cpu_setup in
the .text section.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
---
arch/arm64/mm/proc.S | 2 --
1 file changed, 2 deletions(-)
diff --git a/arch/arm64/mm/proc.S b/arch/arm64/mm/proc.S
index cacecc4ad3e5..b6f9053ab184 100644
--- a/arch/arm64/mm/proc.S
+++ b/arch/arm64/mm/proc.S
@@ -139,8 +139,6 @@ ENTRY(cpu_do_switch_mm)
ret
ENDPROC(cpu_do_switch_mm)
- .section ".text.init", #alloc, #execinstr
-
/*
* __cpu_setup
*
--
2.39.2
@@ -1,7 +1,8 @@
# Maintainer: Jenneron <jenneron@protonmail.com>
# Maintainer: WeirdTreeThing <bradyn127@protonmail.com>
# Co-Maintainer: Jenneron <jenneron@protonmail.com>
pkgname=alsa-ucm-conf-google-kukui
pkgver=1
pkgrel=3
pkgver=2
pkgrel=0
pkgdesc="ALSA Use Case Manager configuration for Google Kukui Chromebooks"
url="https://alsa-project.org"
arch="aarch64"
@@ -33,8 +34,8 @@ package() {
}
sha512sums="
d998860ca82ec9277a7b660dbdc644fc8ec84d5f3703dc72eac44a6b70b61ea9f733eeae94d21d9d2cadf25f95e951ce3c804593b4f0a4c715770b4b422d4ca7 mt8183_da7219_HiFi.conf
c8ce246275beaa3e89eb4e06bed825935122c9f6a9fff9f8e3188dec47f37db92d908148cd7551785de5282c13386134bd6daf8ed033de122218b698d67bab33 mt8183_da7219_rt1015p.conf
749180019ca12ec342604fc6924aa60c5f4ff2892ce22d2199b78d707947a8b91e71fa7a71643f3475bf2dba6e94c36e4fc57cb98f7a96519c83106b08ebc5c3 mt8183_mt6358_HiFi.conf
c8ce246275beaa3e89eb4e06bed825935122c9f6a9fff9f8e3188dec47f37db92d908148cd7551785de5282c13386134bd6daf8ed033de122218b698d67bab33 mt8183_mt6358_ts3a227_max98357.conf
9755c2eaf4bc28a9f3734b6778550ebd77bbee8f6aa353642bc5a35d68e009a17b05d9b09f1c62fe592eb16a2d342e3d2abcda98f2c53142bd4905e4a883a88b mt8183_da7219_HiFi.conf
13ffff0471c29d4e624ba7089d8df811f6578bebc4a9da2e8e82e247430fd41dbc95204fdf1891cfb76f1d90303fcdb8501ecf47b8ca40c7429066bf2ff1379b mt8183_da7219_rt1015p.conf
3656cb0cc76994aab39bd0d0cfe283339bce0689448612f74a0d09a30b19516950132456945096a13bd5700d0e7f868c413e268ced810046ec70252ca8b07603 mt8183_mt6358_HiFi.conf
171e9e3376e5bd56e133a5b19309f60f6326f052922064e6f95c53b4345ea12cc205adde7305a7bd840722a29b7fb393c71d2b39e60952b0979ecc2e5ec03efa mt8183_mt6358_ts3a227_max98357.conf
"
@@ -1,81 +1,90 @@
SectionVerb {
EnableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='Headphone Volume' 0"
# cset "name='UL3_CH1 ADDA_UL_CH1' 0"
# cset "name='UL3_CH2 ADDA_UL_CH2' 0"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
cset "name='MTKAIF_DMIC' 1"
cset "name='Mt6358 Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
]
DisableSequence [
]
}
SectionDevice."Headphone" {
Value {
PlaybackPCM "hw:mt8183da7219rt1,0"
JackDev "mt8183_da7219_rt1015p Headset Jack"
JackSwitch "2"
}
ConflictingDevice [
"Speaker"
]
EnableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
]
DisableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='I2S3_CH1 DL1_CH1' 0"
cset "name='I2S3_CH2 DL1_CH2' 0"
]
}
SectionDevice."Speaker" {
Comment "Speaker"
Value {
PlaybackPCM "hw:mt8183da7219rt1,0"
DspName "speaker_eq"
PlaybackPCM "hw:${CardId},0"
}
ConflictingDevice [
"Headphone"
]
EnableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
cset "name='Speakers Switch' 1"
]
DisableSequence [
cset "name='I2S3_CH1 DL1_CH1' 0"
cset "name='I2S3_CH2 DL1_CH2' 0"
cset "name='Speakers Switch' 0"
]
}
SectionDevice."Headphones" {
Comment "Headphones"
Value {
PlaybackPCM "hw:${CardId},0"
}
EnableSequence [
cset "name='Playback Digital Switch' 1"
cset "name='Headphone Switch' 1"
cset "name='ST Mixer Out FilterL Out FilterL Switch' 1"
cset "name='Mixer Out FilterL DACL Switch' 1"
cset "name='ST Mixer Out FilterR Out FilterR Switch' 1"
cset "name='Mixer Out FilterR DACR Switch' 1"
cset "name='Out DACL Mux' DAIL"
cset "name='Out DACR Mux' DAIR"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
]
DisableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='Playback Digital Switch' 0"
cset "name='Headphone Switch' 0"
cset "name='ST Mixer Out FilterL Out FilterL Switch' 0"
cset "name='Mixer Out FilterL DACL Switch' 0"
cset "name='ST Mixer Out FilterR Out FilterR Switch' 0"
cset "name='Mixer Out FilterR DACR Switch' 0"
cset "name='I2S3_CH1 DL1_CH1' 0"
cset "name='I2S3_CH2 DL1_CH2' 0"
]
}
SectionDevice."Internal Mic" {
SectionDevice."Mic" {
Comment "Internal Microphone"
Value {
CapturePCM "hw:mt8183da7219rt1,5"
CaptureChannelMap "0 1 -1 -1 -1 -1 -1 -1 -1 -1 -1"
IntrinsicSensitivity "-600"
CapturePCM "hw:${CardId},5"
}
EnableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='MTKAIF_DMIC' 1"
cset "name='Mt6358 Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
]
DisableSequence [
cdev "hw:mt8183da7219rt1"
cset "name='MTKAIF_DMIC' 0"
cset "name='Mt6358 Mic Type Mux' 0"
cset "name='UL3_CH1 ADDA_UL_CH1' 0"
cset "name='UL3_CH2 ADDA_UL_CH2' 0"
]
}
SectionDevice."Headset" {
Comment "Headset Microphone"
Value {
CapturePCM "hw:${CardId},5"
}
EnableSequence [
cset "name='Capture Digital Switch' 1"
cset "name='Mixin Switch' 1"
cset "name='Mic Switch' 1"
cset "name='Mixer In Mic Switch' 1"
cset "name='Out DAIL Mux' ADC"
cset "name='UL3_CH1 I2S2_CH1' 1"
]
DisableSequence [
cset "name='Capture Digital Switch' 0"
cset "name='Mixin Switch' 0"
cset "name='Mic Switch' 0"
cset "name='Mixer In Mic Switch' 0"
cset "name='UL3_CH1 I2S2_CH1' 0"
]
}
@@ -1,8 +1,24 @@
Syntax 2
Comment "Kukui internal card"
Syntax 6
SectionUseCase."HiFi" {
File "HiFi.conf"
Comment "Default"
}
BootSequence [
# Speaker
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
cset "name='Speakers Switch' 1"
# Internal Mic
cset "name='MTKAIF_DMIC' 1"
cset "name='Mt6358 Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
# Headset
cset "name='Headphone Volume' 56"
cset "name='Capture Digital Volume' 113"
cset "name='Mic Volume' 3"
]
@@ -1,144 +1,86 @@
SectionVerb {
EnableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='Headphone Volume' 0"
cset "name='ADDA_DL_CH1 DL1_CH1' 0"
cset "name='ADDA_DL_CH2 DL1_CH2' 0"
cset "name='HPL Mux' 0"
cset "name='HPR Mux' 0"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
cset "name='MTKAIF_DMIC' 1"
cset "name='Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
# from headset mic - does not work -see below
# cset "name='PGA L Mux' 0"
# cset "name='ADC L Mux' 0"
# cset "name='PGA Volume' 0"
]
DisableSequence [
]
}
SectionDevice."Headphones" {
Comment "Headphones"
Value {
PlaybackPCM "hw:mt8183mt6358ts3,0"
JackControl "mt8183_mt6358_ts3a227_max98357 Headset Jack"
}
ConflictingDevice [
"Speaker"
]
EnableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='ADDA_DL_CH1 DL1_CH1' 1"
cset "name='ADDA_DL_CH2 DL1_CH2' 1"
cset "name='HPL Mux' 2"
cset "name='HPR Mux' 2"
]
DisableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='ADDA_DL_CH1 DL1_CH1' 0"
cset "name='ADDA_DL_CH2 DL1_CH2' 0"
cset "name='HPL Mux' 0"
cset "name='HPR Mux' 0"
]
}
SectionDevice."Speaker" {
Comment "Speaker"
Value {
PlaybackPCM "hw:mt8183mt6358ts3,0"
DspName "speaker_eq"
PlaybackPCM "hw:${CardId},0"
}
ConflictingDevice [
"Headphones"
]
EnableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
]
DisableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='I2S3_CH1 DL1_CH1' 0"
cset "name='I2S3_CH2 DL1_CH2' 0"
]
}
# headset mic does not work for some reason - if enabled there is no signal
# from it and after switching back to internal mic even that does not give
# any signal anymore
#SectionDevice."HeadsetMic" {
# Comment "Headset Microphone"
#
# Value {
# CapturePCM "hw:mt8183mt6358ts3,5"
# # i guess this one is chromeos specific and not used otherwise
# CaptureChannelMap "0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1"
# JackControl "mt8183_mt6358_ts3a227_max98357 Headset Jack"
# }
#
# ConflictingDevice [
# "InternalMic"
# ]
#
# EnableSequence [
# cdev "hw:mt8183mt6358ts3"
# cset "name='PGA L Mux' 2"
# cset "name='ADC L Mux' 2"
# cset "name='Mic Type Mux' 1"
# cset "name='PGA Volume' 4"
# cset "name='UL3_CH1 ADDA_UL_CH1' 1"
# ]
#
# DisableSequence [
# cdev "hw:mt8183mt6358ts3"
# cset "name='PGA L Mux' 0"
# cset "name='ADC L Mux' 0"
# cset "name='Mic Type Mux' 0"
# cset "name='PGA Volume' 0"
# cset "name='UL3_CH1 ADDA_UL_CH1' 0"
# ]
#}
SectionDevice."InternalMic" {
Comment "Intrernal Microphone"
SectionDevice."Mic" {
Comment "Internal Microphone"
Value {
CapturePCM "hw:mt8183mt6358ts3,5"
# i guess those two are chromeos specific and not used otherwise
CaptureChannelMap "0 1 -1 -1 -1 -1 -1 -1 -1 -1 -1"
IntrinsicSensitivity "-2600"
CapturePCM "hw:${CardId},5"
}
# from headset mic - does not work -see above
# ConflictingDevice [
# "HeadsetMic"
# ]
EnableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='MTKAIF_DMIC' 1"
cset "name='Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
]
DisableSequence [
cdev "hw:mt8183mt6358ts3"
cset "name='MTKAIF_DMIC' 0"
cset "name='UL3_CH1 ADDA_UL_CH1' 0"
cset "name='UL3_CH2 ADDA_UL_CH2' 0"
]
}
If.krane {
Condition {
Type String
Haystack "${sys:firmware/devicetree/base/compatible}"
Needle "google,krane"
}
False {
SectionDevice."Headphones" {
Comment "Headphones"
Value {
PlaybackPCM "hw:${CardId},0"
}
EnableSequence [
cset "name='ADDA_DL_CH1 DL1_CH1' 1"
cset "name='ADDA_DL_CH2 DL1_CH2' 1"
cset "name='HPL Mux' 2"
cset "name='HPR Mux' 2"
]
DisableSequence [
cset "name='ADDA_DL_CH1 DL1_CH1' 0"
cset "name='ADDA_DL_CH2 DL1_CH2' 0"
cset "name='HPL Mux' 0"
cset "name='HPR Mux' 0"
]
}
SectionDevice."Headset" {
Comment "Headset Microphone"
Value {
CapturePCM "hw:${CardId},5"
}
EnableSequence [
cset "name='PGA L Mux' 2"
cset "name='ADC L Mux' 2"
cset "name='Mic Type Mux' 1"
cset "name='PGA Volume' 4"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
]
DisableSequence [
cset "name='PGA L Mux' 0"
cset "name='ADC L Mux' 0"
cset "name='Mic Type Mux' 0"
cset "name='PGA Volume' 0"
cset "name='UL3_CH1 ADDA_UL_CH1' 0"
]
}
}
}
@@ -1,8 +1,31 @@
Syntax 2
Comment "Kukui internal card"
Syntax 6
SectionUseCase."HiFi" {
File "HiFi.conf"
Comment "Default"
}
BootSequence [
# Speakers
cset "name='I2S3_CH1 DL1_CH1' 1"
cset "name='I2S3_CH2 DL1_CH2' 1"
# Headphones
cset "name='Headphone Volume' 17"
cset "name='ADDA_DL_CH1 DL1_CH1' 0"
cset "name='ADDA_DL_CH2 DL1_CH2' 0"
cset "name='HPL Mux' 0"
cset "name='HPR Mux' 0"
# Internal Mic
cset "name='MTKAIF_DMIC' 1"
cset "name='Mic Type Mux' 2"
cset "name='UL3_CH1 ADDA_UL_CH1' 1"
cset "name='UL3_CH2 ADDA_UL_CH2' 1"
# Headset Mic
cset "name='PGA L Mux' 0"
cset "name='ADC L Mux' 0"
cset "name='PGA Volume' 0"
cset "name='UL3_CH1 ADDA_UL_CH1' 0"
]
@@ -2,8 +2,8 @@
# Maintainer: Minecrell <minecrell@minecrell.net>
pkgname=device-arrow-db410c
pkgdesc="Arrow DragonBoard 410c"
pkgver=3
pkgrel=3
pkgver=4
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -32,6 +32,6 @@ nonfree_firmware() {
}
sha512sums="
b8bb88f11bf7f5889a0159e63fac5e38e7ca68a11aa3b89294ee6bc4f6f56a02964d213ce418d7bd5231fb977e4d62a555d587807f5a3ad0d40fb1b5798a6f7d deviceinfo
9e4e3c89c6328c60a3e6a02bae30e79863a512760be04177c710827788970963be3679602e288ddee1a4a054e0e80d707ad53d15db6918998680119882e3eab8 deviceinfo
ccd6758cb4954eb0a96c7fb15e732e8147414f8edc498d9faf7d04ddef85d817733669ec1a6003e623e8392f3f6bb85f71160efe4e82f27e300d58aa6f5c8549 modules-initfs
"
@@ -23,6 +23,7 @@ deviceinfo_getty="ttyMSM0;115200"
deviceinfo_flash_method="fastboot"
deviceinfo_kernel_cmdline="earlycon console=ttyMSM0,115200 PMOS_NO_OUTPUT_REDIRECT"
deviceinfo_generate_bootimg="true"
deviceinfo_generate_extlinux_config="true"
deviceinfo_bootimg_dtb_second="true"
deviceinfo_flash_offset_base="0x80000000"
deviceinfo_flash_offset_kernel="0x00080000"
@@ -31,4 +32,4 @@ deviceinfo_flash_offset_second="0x00f00000"
deviceinfo_flash_offset_tags="0x01e00000"
deviceinfo_flash_pagesize="2048"
deviceinfo_flash_sparse="true"
deviceinfo_flash_fastboot_partition_system="rootfs"
deviceinfo_flash_fastboot_partition_rootfs="rootfs"
+1 -1
View File
@@ -3,7 +3,7 @@
pkgname=device-asus-me176c
pkgdesc="ASUS MeMO Pad 7 (ME176C(X))"
pkgver=6
pkgrel=3
pkgrel=4
_commit=3155254999ac36c3051a2118c415de25a072c0f6
url="https://postmarketos.org"
license="MIT"
+3 -3
View File
@@ -2,8 +2,8 @@
# Maintainer: Minecrell <minecrell@minecrell.net>
pkgname=device-bq-paella
pkgdesc="BQ Aquaris X5"
pkgver=7
pkgrel=1
pkgver=8
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -38,6 +38,6 @@ nonfree_firmware() {
}
sha512sums="
b33c075d49febd0bcff4c696214e39f134f7e05dc4770f60bfff52fb7e7b432b53ef69803ac32957e921d45cb7a35cc205112f6691dbdfd1a5032c89d34789fa deviceinfo
ae1d413f189856d5f9ccc6a3a64e6cd719ad3cf7e4d1f5b358201037f7fcad2098a33eedfb83278ecf80073bdfbfd49cc796b43da4992f7b2bd3a6dbaa266c40 deviceinfo
ebf6a40372329116a25df1407e671365bb2bf0613f61f0a572fc77890fb0a1760259ab35ed9f002ef2a5c6ee8836bc7bbeb50bf5ac3de14c11e6d96872ad3644 modules-initfs
"
@@ -23,6 +23,7 @@ deviceinfo_getty="ttyMSM0;115200"
deviceinfo_flash_method="fastboot"
deviceinfo_kernel_cmdline="earlycon console=ttyMSM0,115200 PMOS_NO_OUTPUT_REDIRECT"
deviceinfo_generate_bootimg="true"
deviceinfo_generate_extlinux_config="true"
deviceinfo_flash_offset_base="0x80000000"
deviceinfo_flash_offset_kernel="0x00080000"
deviceinfo_flash_offset_ramdisk="0x02000000"
+5 -16
View File
@@ -2,13 +2,14 @@
# Maintainer: Luca Weiss <luca@z3ntu.xyz>
pkgname=device-fairphone-fp4
pkgdesc="Fairphone 4"
pkgver=1.2
pkgrel=2
pkgver=2
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
bootmac
linux-postmarketos-qcom-sm6350
make-dynpart-mappings
mesa-vulkan-freedreno
@@ -16,6 +17,7 @@ depends="
postmarketos-base
postmarketos-update-kernel
qbootctl
qbootctl-openrc
swclock-offset
"
makedepends="devicepkg-dev"
@@ -24,12 +26,9 @@ source="
90-feedbackd-aw8695.rules
deviceinfo
modules-initfs
gtk.css
phoc.ini
"
subpackages="
$pkgname-nonfree-firmware:nonfree_firmware
$pkgname-phosh
"
build() {
@@ -63,18 +62,8 @@ nonfree_firmware() {
mkdir "$subpkgdir"
}
phosh() {
install_if="$pkgname=$pkgver-r$pkgrel phosh"
install -Dm644 "$srcdir"/gtk.css \
"$subpkgdir"/etc/skel/.config/gtk-3.0/gtk.css
install -Dm644 "$srcdir"/phoc.ini \
"$subpkgdir"/etc/phosh/phoc.ini
}
sha512sums="
2974ccc172bf1299daeb0bc746879b3a1db1fbc3a2b163a02a6554fed6ed9f733144bcf976cd2441c5664d496dcce3ae943f4314c653470dc07dda0de5ad632b 90-feedbackd-aw8695.rules
e223df827d1d18507197d64fc409f527514f7f76b68f784811b7b59452260dbd72133c85277b1e7df38b0058e0f16ac0d1174104a193b7f6c8dcf64577863eba deviceinfo
285dcb0011a2114e83621811a4204dfae4310ff9312f727d2cbf5d10712fe7fae7a20f636fc02b7794a41af67864a42d04f8c2f7e241f9f5182827d0a0556179 modules-initfs
25a93dcbe6dbc6cff24f57cbf5539bc475c5fe0f6bf5e8374c7032b9c38a939bef0aa0cde1707afcc16b1ec2d0859c03c6ee92d80d8048d1c6adc6e25178b85f gtk.css
65f74d29ab318b23f7ac8923a3661f2c4130049273a8c6be234ed2c8e00810b6a1254b54cf0932e42850a6d48f821dcd038900fbb836feeddfab2759afffae38 phoc.ini
52bb7ed829caa4dcff9728bd6e3cdf118b3c7ee7dfe90df0d4e6422dd67bf3258ae2a4d2dc7599da4182fbd8eb47a0e1d20c58198dc17f2bf178b8f01a8887f7 modules-initfs
"
@@ -1,11 +0,0 @@
/* TWEAKS-START phosh-clock-notch */
.phosh-topbar-clock {
margin-left: 100.0px;
}
/* TWEAKS-END phosh-clock-notch */
/* TWEAKS-START phosh-panel-btn-space */
.phosh-panel-btn {
margin-left: 10.0px;
margin-right: 10.0px;
}
/* TWEAKS-END phosh-panel-btn-space */
@@ -1,2 +1,2 @@
msm
panel-hx83112a-auo
panel-himax-hx83112a
@@ -1,5 +0,0 @@
# /etc/phosh/phoc.ini
# Overwrites values set in /usr/share/phosh/phoc.ini
[output:DSI-1]
scale = 3.0
+1 -1
View File
@@ -3,7 +3,7 @@
pkgname=device-google-gru
pkgdesc="Google Gru Chromebooks"
pkgver=5
pkgrel=5
pkgrel=6
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -3,7 +3,7 @@
pkgname=device-google-kukui
pkgdesc="Google Kukui Chromebooks"
pkgver=6
pkgrel=3
pkgrel=4
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
+3 -2
View File
@@ -1,9 +1,10 @@
# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Jenneron <jenneron@protonmail.com>
# Maintainer: Adam Thiede <me@adamthiede.com>
# Co-Maintainer: Jenneron <jenneron@protonmail.com>
pkgname=device-google-oak
pkgdesc="Google Oak Chromebooks"
pkgver=4
pkgrel=3
pkgrel=5
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -2,8 +2,8 @@
# Maintainer: Jenneron <jenneron@protonmail.com>
pkgname=device-google-peach-pit
pkgdesc="Samsung Chromebook 2 (11.6 inch)"
pkgver=4
pkgrel=4
pkgver=6
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="armv7"
@@ -58,8 +58,8 @@ nonfree_firmware() {
}
sha512sums="
c0bce7063912e13464ad7b4338eea3135b86cf7e946f535c48d4bf180bab58739e97791ada53df5065eb0bec0649b125b6f4f39bf23f1315316e71ce36243a16 deviceinfo
a1fd6b4964b0bd4c66983430528f5906eea5cc9ddbe8485ba17e97496652240d0a93dbd3af34ecd3c273b7172202b8dcb24e0b5fa372512d01affec3914a023d modules-initfs
cbeb0f1fdf4357763eae7ede0b28923ae39c18aa187894baa778bdb20afa728aa97cad63b957d799ffcd1130ae40c3b796e293a2a1c97d9a68bf132ec6ce6d13 deviceinfo
e12a68f919182cb4e6812a5dd13fce8dc15266d2ac16aa5f0a31034f111cb403c020ebaaa4d94309f4baf2f71379327c57c08029e27c506d152695e9a2b04b2b modules-initfs
e53ca475830930ecfc1fd537702e850e2abcb66fbed521cb6c3a2918d762649254bd0244ec93a47b20dfc593ec3afc9bdebdec1759a7bc96dcbe4800f40893da 90-tap-to-click.conf
6fe67c8f2e09e3e37297eebaf2a86a32671923a5fd4d18e5aeb10e580fb998e4ddb4a691531a0c8f4b4e70c6f0f7e91008dd836ffca8026d59862c6e829fd996 Peach-Pit-I2S-MAX98090.conf
194b6169168b40592cf1e6b5f3b21aaa24a602869d7aec358cd5e1f06de34e9b0fe3da094e438ef2d3ab5be80275e6c0b6afe7ce92e2365a70e8b5a21a873234 HiFi.conf
@@ -23,7 +23,8 @@ deviceinfo_flash_method="none"
deviceinfo_cgpt_kpart="/boot/vmlinuz.kpart"
deviceinfo_cgpt_kpart_start="8192"
deviceinfo_cgpt_kpart_size="16384"
deviceinfo_kernel_cmdline="console=null mem=3523M"
deviceinfo_kernel_cmdline="console=/dev/ttySAC3,115200n8 mem=3523M"
deviceinfo_depthcharge_board="peach-pit"
deviceinfo_generate_depthcharge_image="true"
deviceinfo_generate_extlinux_config="true"
deviceinfo_getty="ttySAC3;115200"
@@ -4,3 +4,5 @@ drm-kms-helper
cros-ec-keyb
sbs-battery
tps65090-charger
uas
sd-mod
+4 -42
View File
@@ -2,8 +2,8 @@
# Maintainer: Jenneron <jenneron@protonmail.com>
pkgname=device-google-snow
pkgdesc="Samsung Chromebook"
pkgver=4
pkgrel=3
pkgver=6
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="armv7"
@@ -20,19 +20,11 @@ makedepends="devicepkg-dev"
source="
deviceinfo
modules-initfs
i3wm/xorg.conf.d/90-tap-to-click.conf
modprobe.d/mali.conf
ucm/HiFi.conf
ucm/Snow-I2S-MAX98090.conf
mpv/mpv.conf.wayland
mpv/mpv.conf.xorg
sway/foot/foot.ini
sway/tinydm/10-no-hardware-cursor.sh
"
subpackages="
$pkgname-i3wm
$pkgname-mpv-wayland:mpv_wayland
$pkgname-mpv-xorg:mpv_xorg
$pkgname-nonfree-firmware:nonfree_firmware
$pkgname-sway
"
@@ -44,10 +36,6 @@ build() {
package() {
devicepkg_package $startdir $pkgname
# Block panfrost probe as it causes segfault in X11
install -Dm644 "$srcdir"/mali.conf \
"$pkgdir"/etc/modprobe.d/mali.conf
# Alsa UCM configs
install -Dm644 "$srcdir"/Snow-I2S-MAX98090.conf \
"$pkgdir"/usr/share/alsa/ucm2/conf.d/Snow-I2S-MAX980/Snow-I2S-MAX98090.conf
@@ -55,25 +43,6 @@ package() {
"$pkgdir"/usr/share/alsa/ucm2/conf.d/Snow-I2S-MAX980/HiFi.conf
}
i3wm() {
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-ui-i3wm"
install -D -m644 "$srcdir"/90-tap-to-click.conf \
"$subpkgdir"/etc/X11/xorg.conf.d/90-tap-to-click.conf
}
mpv_wayland() {
# Looks like wayland libs are installed with some x11 UIs too, so match wlroots here
install_if="$pkgname=$pkgver-r$pkgrel mpv wlroots"
install -Dm644 "$srcdir"/mpv.conf.wayland \
"$subpkgdir"/etc/mpv/mpv.conf
}
mpv_xorg() {
install_if="$pkgname=$pkgver-r$pkgrel mpv xorg-server"
install -Dm644 "$srcdir"/mpv.conf.xorg \
"$subpkgdir"/etc/mpv/mpv.conf
}
nonfree_firmware() {
pkgdesc="WiFi/BT and MFC firmware"
depends="linux-firmware-mrvl linux-firmware-s5p-mfc"
@@ -84,19 +53,12 @@ sway() {
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-ui-sway"
install -Dm644 "$srcdir"/foot.ini \
"$subpkgdir"/etc/skel/.config/foot/foot.ini
install -Dm755 "$srcdir"/10-no-hardware-cursor.sh \
"$subpkgdir"/etc/tinydm.d/env-wayland.d/10-no-hardware-cursor.sh
}
sha512sums="
4be0a2e0ff5d5189b9adbea995b111724cf686eda3c191fac405757facee4621297314bb4d2015e8dc72b29f30d47d2e00253d70d64c51a02a5177cb4d4959cd deviceinfo
a1fd6b4964b0bd4c66983430528f5906eea5cc9ddbe8485ba17e97496652240d0a93dbd3af34ecd3c273b7172202b8dcb24e0b5fa372512d01affec3914a023d modules-initfs
e53ca475830930ecfc1fd537702e850e2abcb66fbed521cb6c3a2918d762649254bd0244ec93a47b20dfc593ec3afc9bdebdec1759a7bc96dcbe4800f40893da 90-tap-to-click.conf
c5fdd5a39a41044343d937a1ad31cc6bb893f19a329beb4ce09249064cac066d643c84ffcbfcd794113c228c5a56e28c82812092751546b49ab31142dc8245b1 mali.conf
8f12e32794f68ecc312ef9edde380bffc73f931cf210c8e0a5552f47b325f0f6648a95986ae17ad0a32245308dfd3c1e381377b67e6b96eeae18f97b83621f92 deviceinfo
e12a68f919182cb4e6812a5dd13fce8dc15266d2ac16aa5f0a31034f111cb403c020ebaaa4d94309f4baf2f71379327c57c08029e27c506d152695e9a2b04b2b modules-initfs
8a8f593694528a9323ef4a0aff7e9c6ad45608957eb042d425663f682885c2f95eb01db4fe87b7c43a90de48f3e5f8b10cab4b13c547b5b0d31b924fcb083cad HiFi.conf
b163535da7626e3866faa45768c3888f69f90c98d694650e16a7594a03eb91391e166931eb487901217d983bb2dc4e49b99a2a5531740a7d87f8f4f5c3d0cf59 Snow-I2S-MAX98090.conf
8f9dc3c7caeab6c5321dc2bf498f1a03a793f23cb776763316bc356b9d433d7a3337e61154069464dcda200bf390b99f3be8f657a40c6d2f6be3cbc6fb751080 mpv.conf.wayland
d6bc39df48ba0e985a796426039205335adf1c91b9c150b05a4239339fc78b1748b3a83c699de69e9a5829f29573a323f40788da58ed15b1951de1eab7e31c3d mpv.conf.xorg
61c56cf84cf88371a2238845db1f8283c7eb7b417dec8c51d71e51fb96899bb026c0ee22dc94a43537a56477fb0db59de960949add4b0ce90552a1286e6afe69 foot.ini
8ddd237b14e8eea34b8716d155cdf199cf681b1287b482c8e184656d6d0440f018a2d46478c8b45eb790a1e71cfcfefd0f66798cd0b226647f11088549cfae64 10-no-hardware-cursor.sh
"
@@ -16,8 +16,6 @@ deviceinfo_keyboard="true"
deviceinfo_external_storage="true"
deviceinfo_screen_width="1366"
deviceinfo_screen_height="768"
# DRM is available, so all UIs can work with software rendering
deviceinfo_gpu_accelerated="true"
# Bootloader related
@@ -1,6 +0,0 @@
Section "InputClass"
Identifier "touchpad"
MatchIsTouchpad "on"
Driver "libinput"
Option "Tapping" "on"
EndSection
@@ -1 +0,0 @@
blacklist panfrost
@@ -4,3 +4,5 @@ drm-kms-helper
cros-ec-keyb
sbs-battery
tps65090-charger
uas
sd-mod
Loaded 100 of 1559 files, more files were not shown because too many files have changed in this diff. Show more