Compare commits

...
541 Commits
Author SHA1 Message Date
Dylan Van Assche 50f78961c5 main/device-pine64-pinephone: switch to UEFI booting
Drop U-Boot scripts and enable UEFI booting with grub on the
PinePhone to be EBBR compliant. This brings the PinePhone boot process
on par with the PinePhone Pro. Tow-Boot is now a requirement to even be
able to boot as U-Boot does not have UEFI enabled.

Dropped the symlink from .. to /boot/allwinner because symlinks are
not supported on fat32 which is required for booting into UEFI.
2022-09-11 19:56:56 +02:00
Dylan Van Assche 48bb4c6b2f linux-postmarketos-allwinner: enable EFI
Moving towards Tow-Boot allows us to enable UEFI booting easily
on the PinePhone as well. Enable EFI and SMBIOS in the kernel config.
2022-09-11 17:41:57 +02:00
Bart Ribbers 97475c024a temp/u-boot-pinephone: drop u-boot in favor of Tow-Boot
Just as we did with the PPP already, we're moving the PP to requiring
Tow-Boot to be installed. This allows us to drop our own u-boot package
and use standard UEFI-based booting. We'll move to UEFI later but we can
already drop our own u-boot and use Tow-Boot in combination with
extlinux.conf
2022-09-11 17:41:57 +02:00
Oliver Smith f5fcfe6e56 cross/gcc{4,6}: remove dep on isl package (MR 3419)
Adjust to removal of isl in Alpine, see pmbootstrap issue 2167.
Packages generated with pmbootstrap MR 2203.
2022-09-11 16:59:48 +02:00
Luca Weiss 64d8dc390e community/linux-postmarketos-qcom-sm6350: adjust config (MR 3416)
Switch to minimal config that I've been using for development for the
last months, with some minor modifications. In addition to that enable
all the kconfig options that will be a part of the new
pmb:kconfigcheck-community (anbox/waydroid + iwd + nftables + containers
+ zram + netboot).

Note by ollieparanoid:
Re-applied it after I just reverted it. Now realized that I didn't need
to revert this in the first place, this is and aarch64 package and the
cross compilers (x86_64 packages) needed to be published. Anyway, the
gcc mess is mostly resolved now, see issue 2167.

[ci:skip-build] Already built successfuly on CI in MR
2022-09-11 16:43:38 +02:00
Oliver Smith 16d4b59ab8 Revert "community/linux-postmarketos-qcom-sm6350: adjust config (MR 3416)"
Temporarily revert this, so bpo can first build and publish all gcc
cross packages. The build for this linux package currently failed - I
could also set it back to queued and have it build, but that would delay
the publish of the gcc-aarch64 package until the kernel is built.

This reverts commit 979cc0bfb6.
2022-09-11 16:27:19 +02:00
Oliver Smith cd43a0b58e cross/gcc-*: upgrade to 12.1.1_git20220630-r5
Removed isl as described in pmaports issue 2167. Verified locally that
gcc-aarch64 builds. Tried to test building packages with it, but wasn't
possible with the local build due to a bug, I'll create an issue and
link it in pmaports issue 2167. Pushing this now as it's a critical fix,
should work in theory as soon as the binary packages are built on bpo,
and right now it's broken anyway.
2022-09-11 15:29:31 +02:00
Luca Weiss 979cc0bfb6 community/linux-postmarketos-qcom-sm6350: adjust config (MR 3416)
Switch to minimal config that I've been using for development for the
last months, with some minor modifications. In addition to that enable
all the kconfig options that will be a part of the new
pmb:kconfigcheck-community (anbox/waydroid + iwd + nftables + containers
+ zram + netboot).

[ci:skip-build] Already built successfuly on CI in MR
2022-09-10 15:01:25 +02:00
Svyatoslav Ryhel 7adba98f70 linux-postmarketos-grate: upgrade to 5.19.0_rc8 (MR 3345)
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2022-09-09 09:56:44 +02:00
Svyatoslav Ryhel 58c0cd2a20 firmware-asus-transformer: add all known Asus Transformers on Nvidia Tegra (MR 3345)
Add support for next devices:
- Asus Eee Pad Transformer TF101 and TF101G
- Asus Eee Pad Slider SL101
- Asus Transformer Prime TF201
- Asus Transformer Pad TF300T/TF300TG/TF300TL
- Asus VivoTab RT TF600T (Windows RT based)
- Asus Transformer Infinity TF700T
- Asus Transformer AiO P1801-T
- Asus Transformer PAD TF701T
- Pegatron Chagall based devices

Package has no dependencies.

Signed-off-by: Anton Bambura <jenneron@protonmail.com>
Signed-off-by: Maxim Schwalm <maxim.schwalm@gmail.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2022-09-09 09:56:44 +02:00
Newbyte 13659ae78d temp/gtk4.0: drop (MR 3413)
Bug should've been fixed in GTK 4.8.0, which has been released now.

Alpine MR: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/37983
2022-09-08 19:06:39 +02:00
Raymond Hackley 829413ef71 main/postmarketos-base-ui-pulseaudio: depend on pulseaudio-utils (MR 3411)
start-pulseaudio-x11 uses pactl, which is not installed by default.
2022-09-08 13:56:06 +02:00
Clayton Craft 4a7e47013e main/postmarketos-base-ui: simplify pulseaudio config (MR 3412)
config scripts in /etc/pulse/default.pa.d are loaded automatically by
default.pa
2022-09-08 09:15:22 +02:00
Luca Weiss 566b8de98a device/*: Remove pmb:kconfigcheck-apparmor (MR 3410)
Remove as we are removing apparmor check from pmbootstrap

[ci:skip-vercheck] No rebuild necessary
[ci:skip-build]: already built successfully / also not really needed
2022-09-08 08:31:35 +02:00
Federico Amedeo Izzo 5d2300793d linux-postmarketos-mtk-mt8183: enable F2FS filesystem (MR 3403)
Enable F2FS Filesystem as builtin module with default kconfig options selected.

[ci:skip-build] Already built successfuly on CI in MR
2022-09-07 21:31:40 +02:00
Sergey Lisov 4867a3f4e3 samsung-a6lte: new device (Samsung Galaxy A6 2018) (MR 3393)
[ci:skip-build] Already built successfuly on CI in MR
2022-09-07 08:12:14 +02:00
Clayton CraftandOliver Smith f9769f26fd temp/upower: fork from Alpine, downgrade to 0.99.20 (MR 3408)
A lame workaround for this[1] until something better comes along. Not
having a functional battery gauge on a mobile device is kind of painful.

1. pmaports issue 1677

Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
Tested-by: Drew DeVault <sir@cmpwn.com>

[ci:skip-build] already built successfully in CI
2022-09-06 16:36:53 -07:00
Alexander Martinz 13ec74abfb community/linux-postmarketos-qcom-sdm845: upgrade to 5.19.7 (MR 3394)
For a merge list, please see the merge commits:
  - 5.19.1 - (https://gitlab.com/sdm845-mainline/linux/-/commit/447097cc4bf3d9d2569310395e49ecd44705aee2)
  - 5.19.2 - (https://gitlab.com/sdm845-mainline/linux/-/commit/ffe84a5d134b12d2cdf48a83c129aa45e939d5f3)
  - 5.19.3 - (https://gitlab.com/sdm845-mainline/linux/-/commit/421c4a4220595d0e4748ceb3bcfd651b559adee3)
  - 5.19.4 - (https://gitlab.com/sdm845-mainline/linux/-/commit/58306b544f7daae56672fc4ad3859c3cca9bea6b)
  - 5.19.5 - (https://gitlab.com/sdm845-mainline/linux/-/commit/3985649cd07e2de7a51ae811162ecf7880b154a7)
  - 5.19.6 - (https://gitlab.com/sdm845-mainline/linux/-/commit/ce51b0645946ee419d2153eba5538bb6876387a0)
  - 5.19.7 - (https://gitlab.com/sdm845-mainline/linux/-/commit/3c3bb6290821d2feb6adb017227dde0ce773bd16)

Change-Id: I43256c81b91fe7aa69bad0f27503888120ac2973
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
2022-09-06 14:09:40 +02:00
Clayton Craft bb129dd247 linux-purism-librem5: upgrade to 5.18.11 (MR 3407)
[ci:skip-build]: already built successfully in CI
2022-09-06 08:45:23 +02:00
Newbyte 759ae7dbee samsung-p4note: fix kernel partition name (MR 3397)
Without this, pmbootstrap flasher flash_kernel fails as it tries to
flash the kernel to a partition called KERNEL, which does not
exist.
2022-09-05 11:25:16 +02:00
Bart Ribbers a90ecd5929 main/postmarketos-ui-plasma-mobile: add callaudiod to properly route audio (MR 3406) 2022-09-05 11:18:11 +02:00
Song Fuchang 06e79fb51a xiaomi-polaris: Make touchscreen work during boot (MR 3399) 2022-09-05 08:51:06 +02:00
Dylan Van Assche 3ec4e103fa community/linux-pine64-pinephonepro: enable SPI flash (MR 3401)
SPI flash for Tow-Boot was enabled a long time ago, but the config was missing in pmaports.

Enables https://gitlab.com/pine64-org/linux/-/merge_requests/29
[ci:skip-build]: already built successfully in CI
2022-09-05 08:47:34 +02:00
Newbyte 6149a7d418 main/postmarketos-ui-phosh: add phosh-mobile-settings to recommends (MR 3396)
[ci:skip-vercheck]: Changing _pmb_recommends does not affect the
resulting package.
2022-09-04 16:02:14 +00:00
Oliver Smith 76afb0408c cross/busybox-static-*: upgrade to 1.35.0-r24 2022-09-04 13:38:42 +02:00
Dylan Van Assche 8c291862b6 main/postmarketos-base: add replace for busybox-openrc (MR 3400)
Alpine refactored the Busybox APKBUILD which resulted into a few
renamings like busybox-initscripts to busybox-openrc.

See https://gitlab.alpinelinux.org/alpine/aports/-/commit/8b30ff10ab691ce8380423c551dd9c327a5a1f9a
2022-09-04 12:58:15 +02:00
Dylan Van Assche 7d72743b1f device-odroid-hc2: switch to linux-edge (MR 3378)
ODROID HC2 is based upon the Samsung Exynos 5422 and can run full
mainline. Switch to linux-edge from Alpine to enable this and drop
the close-to-mainline fork for this device. The close-to-mainline
fork was already linux-edge for a while but with a separate KConfig.
These KConfig changes are now integrated in linux-edge of Alpine.

U-boot script was updated to handle vmlinuz-edge as well since
Alpine's linux-edge does not generate a vmlinuz file, but vmlinuz-edge.
Probably to allow installing linux-lts as well.

initcall_blacklist=exynos_drm_init was added to the kernel cmdline
because upstream wants to set CONFIG_DRM_EXYNOS=y instead of module.
The DRM subsystem of Exynos5 in the kernel seems to be broken for this
device. There's also no use for it since this device does not have video
out. See https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/38094
2022-09-02 12:55:49 +02:00
Oliver Smith fb3b854976 linux-postmarketos-exynos4: disable HDMI for Midas (MR 3395)
Disable HDMI as workaround, as it seems to be buggy when HDMI is
unplugged. It's apparently in DRM_MODE_CONNECTED state, but without size
and with no modes. According to Guido from Phosh this is a bug and
should be fixed in the kernel. By disabling this until it is fixed, we
get Phosh working again.

Related: https://gitlab.gnome.org/World/Phosh/phosh/-/issues/828
2022-09-01 23:21:36 +02:00
Jonas Fentker 48cad306b9 device-pine64-pinephone: move flashlight rules to main pkg (MR 3322) 2022-09-01 16:40:39 +02:00
Duje Mihanović 194fdc32a9 samsung-coreprimevelte: enable nonfree firmware (MR 3352) 2022-09-01 08:41:26 +02:00
Duje Mihanović fce80a1777 firmware-samsung-xcover3lte: rename to *-pxa1908 (MR 3352)
This is to emphasize the fact that this firmware package will work essentially
unmodified on the samsung-coreprimevelte and other Samsung PXA1908 phones as
well.
2022-09-01 08:41:23 +02:00
Duje Mihanović 74b5c32318 samsung-coreprimevelte: fix sudden reboots (MR 3352) 2022-09-01 08:41:23 +02:00
Duje Mihanović 1810b0ea99 samsung-coreprimevelte: use Samsung sparse format (MR 3352) 2022-09-01 08:41:23 +02:00
Oliver Smith 2795c52e24 cross/busybox-static-*: upgrade to 1.35.0-r23 2022-09-01 08:28:15 +02:00
Martijn Braam 751f109220 main/postmarketos-welcome: upgrade to 0.6.0 (MR 3392) 2022-08-31 16:57:43 +02:00
map220v 0e4c72fcfd samsung-a72q: new device (MR 3390)
[ci:skip-build]: already built successfully in CI
2022-08-29 09:32:28 +02:00
map220v 43f8e10919 alsa-ucm-conf-samsung-sm7125: add support for samsung-a72q (MR 3390) 2022-08-29 09:32:11 +02:00
bonfire_ d5d54b2b50 google-krane: new device (MR 3387)
- remove kernel_rev4/5
- various notes from @jenneron
- update modules initfs
- fix tab linter; remove linux-postmarketos-mtk-mt8183
- fixing tabs grrr and skuX values
- make deviceinfo_external_storage=true
- add hid-multitouch

[ci:skip-build]: already built successfully in CI
2022-08-29 09:17:26 +02:00
Bart Ribbers 4d8d989202 main/postmarketos-ui-plasma-desktop: add maliit-keyboard to _pmb_recommends (MR 3388)
Although qt5-qtvirtualkeyboard is used by SDDM, in a Plasma session
itself maliit-keyboard is used instead

[ci:skip-build]: already built successfully in CI
2022-08-28 23:13:20 +02:00
Newbyte 3012079396 linux-postmarketos-exynos4: fix build with GCC 12 (MR 3389)
[ci:skip-build]: already built successfully in CI
2022-08-28 23:07:02 +02:00
Martijn Braam 798cef69b5 main/powersupply: drop aport (MR 3383)
This package is now in Alpine
2022-08-25 13:10:11 +02:00
Luca Weiss 5e17ea3aed fairphone-fp4: move to community (MR 3364)
The device fulfils the requirements for community category, and I plan
to maintain and develop this device further going forward. Move it!

[ci:skip-vercheck]: linux pkg was moved
[ci:skip-build]: already built successfully in CI
2022-08-25 09:28:58 +02:00
Mighty 9ec0be94e0 linux-postmarketos-omap: new aport (MR 3107)
[ci:skip-build]: already built successfully in CI
2022-08-25 09:25:18 +02:00
Jianhua Lu 986fd72cd7 firmware-xiaomi-elish: add touchscreen firmware (MR 3376)
[ci:skip-build]: already built successfully in CI
2022-08-25 09:17:00 +02:00
Jianhua Lu d437ffef29 device-xiaomi-elish: enable touchscreen (MR 3376) 2022-08-25 09:16:53 +02:00
Jianhua Lu 43ec5f81d8 linux-postmarketos-qcom-sm8250: upgrade to 5.19.0 (MR 3376) 2022-08-25 09:16:48 +02:00
Leandro Friedrich df62747456 samsung-a52q: new device (MR 3379) 2022-08-24 18:48:18 +02:00
Leandro Friedrich ea62ccf0d4 alsa-ucm-conf-samsung-sm7125: new aport (MR 3379) 2022-08-24 18:48:17 +02:00
Leandro Friedrich 0eabfc2d53 soc-qcom-sm7125: new aport (MR 3379) 2022-08-24 18:48:16 +02:00
Leandro Friedrich 59454386ea linux-postmarketos-qcom-sm7125: new aport (MR 3379) 2022-08-24 18:48:14 +02:00
Oliver Smith 452f12bc2c cross/binutils-*: upgrade to 2.39-r1 (MR 3381)
Generated with modernized aportgen binutils code in
pmbootstrap MR 2199.
2022-08-24 13:59:15 +02:00
Roberto MF 15f87fa497 device-lg-hammerhead: remove device-specific weston config (MR 3380)
Weston workaround was cleaned up in 6e75a19cc1
2022-08-24 09:02:07 +02:00
TAKIZAWA Fumiya 86900a49b7 amazon-karnak: new device (MR 3375)
[ci:skip-build]: already built successfully in CI
2022-08-24 08:50:04 +02:00
Andreas Kemnade 2a963f35f7 device-kobo-clara: remove mesa-dri-gallium dep (MR 3371)
Having mesa-dri-gallium installed causes Xorg to crash. See #1658.
Furthermore, display works without at least with near-mainline kernel,
tested with osk-sdl and xfce4.
So if specific applications depend on it, it should be added as a
dependency there.

This reverts MR 3306

This is just a hotfix, Xorg/mesa should be tamed to not crash here
but analyzing that costs time.
2022-08-22 09:52:05 +02:00
Newbyte 6651bd3ef6 cubietech-cubieboard: use initramfs as initrd name (MR 3370)
boot-deploy renames initramfs-edge to initramfs.

Similar to https://gitlab.com/postmarketOS/pmaports/-/merge_requests/2521
2022-08-22 09:47:42 +02:00
Bobby The Builder d93b955b83 main/linux-postmarketos-allwinner: upgrade to 5.19.2 (MR 3368)
[ci:skip-build] Already built successfuly on CI in MR
2022-08-20 19:54:03 -04:00
David Wronek 2e11baa90d main/postmarketos-base: Add alpine-release to replaces (MR 3372)
Upstream changed the alpine-base package. Conflicting files are now in
alpine-release instead of alpine-base.
2022-08-20 21:47:39 +02:00
Newbyte 8bb44eb40b linux-postmarketos-stericsson: migrate kconfig (MR 3369)
This was forgotten during the latest update.

[ci:skip-build] Already built once
2022-08-20 18:31:05 +03:00
Andreas Kemnade 04208c6461 device/testing/device-{tolino,kobo}*: use common waveform extractor (MR 3099)
There is no need to duplicate things over and over again.
Also load the waveform in initramfs before loading display
modules. That is early enough to have a working display in
initramfs.
2022-08-19 18:52:44 -04:00
Andreas Kemnade 18efe7b80e kobo-epdc-extractor: extractor for hidden waveform partitions (MR 3099)
Extracts waveform into a file. Waveform seems to be specific to a
display batch.
2022-08-19 18:52:40 -04:00
Dylan Van Assche 3942f8b1b6 soc-qcom-sdm845: set MAC address on boot (MR 3360)
SDM845 devices running mainline lack a valid MAC address, and
fallback to a random one on each boot. This makes DHCP IPs vary
on each boot and breaks Bluetooth BNEP mode since the kernel enforces
that a valid MAC address is used when Bluetooth BNEP mode is activated.

Add a udev rule to trigger a script when the WLAN or Bluetooth interface
appear to set the MAC address by reading it from the persist partition
for the WLAN MAC address and increment it for generating a Bluetooth MAC
address. This approach seems to be common on some downstream devices
such as the Oneplus 6.

[ci:skip-build]: already built successfully in CI
2022-08-19 09:36:15 +02:00
Dylan Van Assche 2bb6c15cbd main: bootmac: new pmaport (MR 3360)
Bootmac configures the MAC addresses of WLAN and Bluetooth interfaces at boot.
Bootmac can be invoked in various ways at boot, but currently only udev rules are tested.
Bootmac generates MAC addresses from the `serialno` provided by Android bootloaders
through /proc/cmdline or from /etc/machine-id. The Organizationally Unique Identifier (OUI)
is retrieved from a lookup database macdb by matching deviceinfo_manufacturer
from /etc/deviceinfo with the entries in the database.

See https://gitlab.com/postmarketOS/bootmac
2022-08-19 09:35:45 +02:00
Johannes Marbach ce053e7179 main/unl0kr: upgrade to 0.2.0_git20220817 (MR 3366) 2022-08-18 12:31:45 +03:00
Anri Dellal 3e677782ab main/postmarketos-ui-weston: hide for downstream kernels (MR 3367)
Weston doesn't have fbdev backend anymore,
so hide it in pmbootstrap init to avoid
confusion.
2022-08-18 12:14:56 +03:00
Luca Weiss 13419f0561 testing/device-fairphone-fp4: remove i2c-gpio from initfs again (MR 3363)
Now with GPI DMA fixed this is not necessary anymore.
[ci:skip-build]: already built successfully in CI
2022-08-17 09:16:08 +02:00
Luca Weiss c86c1d9e93 testing/linux-postmarketos-qcom-sm6350: upgrade to 6.0.0_rc1 (MR 3363)
GPI_DMA now works so we can use GENI I2C and remove bitbang i2c-gpio.
PM8008 driver from mailing list is imported and configured. CCI (camera
i2c bus) is configured plus CAMCC dependency. And some smaller changes.
2022-08-17 09:15:24 +02:00
Bobby The Builder a34fbd3571 pine64-pinephonepro: add simple-card.conf symlink (MR 3356)
Add a workaround to fix loading the alsa ucm config.

Related: https://github.com/Tow-Boot/Tow-Boot/issues/171
[ci:skip-build]: already built successfully in CI
2022-08-17 09:09:25 +02:00
ErenTheTitan ca4860c34b google-juniper: add sound support (MR 3348) 2022-08-16 11:00:07 -04:00
ErenTheTitan 49f7b70d9c temp/alsa-ucm-conf-google-kukui: new aport (MR 3348) 2022-08-16 11:00:07 -04:00
Newbyte 3a00c8d5bc linux-postmarketos-stericsson: fix project link and pkgdesc (MR 3354)
We are just building upstream Linux with minor patches and no longer
using the linked GitHub repo, so let's fix this to avoid confusion.

[ci:skip-build]: already built successfully in CI
2022-08-16 08:46:08 +02:00
Oliver Smith 00828c40cb qemu-amd64,aarch64: remove edge4virt kernel
Follow removal of linux-edge4virt in Alpine:
https://gitlab.alpinelinux.org/alpine/aports/-/commit/1a838bdeb6bc13e29816164b2534c49e84b090df

Fix for upstream compat failure:
  Increase 'device-qemu-amd64' pkgrel (0 -> 1), missing depend(s): linux-edge4virt

[ci:skip-build]: already built successfully in CI
2022-08-16 08:40:29 +02:00
Dylan Van Assche 133cbd3116 soc-qcom-sdm845: drop upower subpackage (MR 3361)
UPower config to shut down device on low battery
is usefull for all SDM845 devices.

[ci:skip-build]: built successfully in CI
2022-08-15 18:46:53 +02:00
Oliver Smith 8cd0101304 Revert "cross/binutils-*: upgrade to 2.39-r1"
This reverts commit 0ce9fdf8d6.

These cross/binutils packages are generated with pmbootstrap aportgen. I
push them directly to master without build testing because so far they
always built fine... but this time it failed. Revert for now.

Related: https://builds.sr.ht/~postmarketos/job/823964
2022-08-15 18:42:54 +02:00
Oliver Smith 0ce9fdf8d6 cross/binutils-*: upgrade to 2.39-r1 2022-08-15 18:16:46 +02:00
Bobby The Builder b341018d89 main/posmarketos-mkinitfs: add -f parameter to parted (MR 3355)
[ci:skip-build]: already built successfully in CI
2022-08-15 17:42:39 +02:00
Jean Lucas 2b37392456 linux-postmartketos-allwinner: add PinePhone keyboard battery driver (MR 3358)
IP5XXX is needed to be able to read PinePhone battery levels. Extra
configs were automatically added by pmbootstrap.

Signed-off-by: Jean Lucas <jean@4ray.co>
2022-08-14 22:26:11 -04:00
Bobby The Builder 0c0b623f87 cross/gcc-*: upgrade to 12.1.1_git20220630 (MR 3353) 2022-08-13 11:17:36 -04:00
Dang Huynh 84b6d7a0ec linux-nokia-n900: upgrade to 5.18.16 (MR 3350)
Signed-off-by: Dang Huynh <danct12@disroot.org>

[ci:skip-build] Already built successfuly on CI in MR
2022-08-10 16:27:53 -04:00
Dylan Van Assche 6f6d10e499 linux-postmarketos-qcom-sdm845: sync config from sdm845.config (MR 3347)
Squash of
- linux-postmarketos-qcom-sdm845: enable LED_TRIGGER_PATTERN as builtin
- linux-postmarketos-qcom-sdm845: switch BT_RFCOMM to module
- linux-postmarketos-qcom-sdm845: switch BT_BNEP to module

LED_TRIGGER_PATTERN is necessary for feedbackd to function correctly.
However, it doesn't get enabled by default when build as module,
build as built-in to avoid this problem so the notification LED
blinks correctly. This works around the problem that LED_TRIGGER_PATTERN
is not probed automatically when the Qualcomm LPG driver is used for SDM845 devices. See https://gitlab.com/sdm845-mainline/linux/-/merge_requests/34

CONFIG_BT_RFCOMM should always be build as a module otherwise it may never
be initialized at boot. Without this module, BlueZ will not enable
profiles depending on RFCOMM such as HFP. RFCOMM support as builtin may
work if the Bluetooth driver is builtin (which is not the case here), but I haven't verified that. See https://gitlab.com/sdm845-mainline/linux/-/merge_requests/38

CONFIG_BT_BNEP should always be build as a module otherwise it may never
be initialized at boot. Without this module, BlueZ will not start up its
networking plugin to provide Bluetooth PAN support. BNEP support as
builtin may work if the Bluetooth driver is builtin (which is not the case here), but I haven't verified that. See https://gitlab.com/sdm845-mainline/linux/-/merge_requests/38

[ci:skip-build]
2022-08-09 17:05:49 +03:00
Molly Sophia 08446405c5 xiaomi-polaris: new device (MR 3327) 2022-08-08 17:16:43 +01:00
Caleb Connolly 81b0abbc98 community/linux-postmarketos-qcom-sdm845: upgrade to 5.19.0 (MR 3334)
[ci:skip-build] already built in CI
2022-08-06 23:52:02 +01:00
Caleb Connolly 7facf445fe community/linux-postmarketos-qcom-sdm845: remove unnecessary variable (MR 3334) 2022-08-06 23:51:33 +01:00
Jami Kettunen 8f1e9d1940 oneplus-dumpling: add support for alpine-edge kernel (MR 3336)
Adds Alpine's linux-edge as a kernel for the OnePlus 5T.

[ci:skip-build]
2022-08-06 16:42:52 +01:00
Jami Kettunen 7e43e9aba7 oneplus-cheeseburger: add support for alpine-edge kernel (MR 3336)
Adds Alpine's linux-edge as a kernel for the OnePlus 5.
2022-08-06 16:42:34 +01:00
Jami Kettunen 6f556380df oneplus-dumpling: move downstream pieces to unmaintained (MR 3336)
It can still be chosen as 'oneplus-dumpling-downstream' in
pmbootstrap init.
2022-08-06 16:42:34 +01:00
Jami Kettunen e1209e44ff oneplus-cheeseburger: move downstream pieces to unmaintained (MR 3336)
It can still be chosen as 'oneplus-cheeseburger-downstream' in
pmbootstrap init.
2022-08-06 16:42:34 +01:00
Jami Kettunen b1914ddb10 linux-oneplus-msm8998: move to unmaintained (MR 3336)
The downstream kernel has barely any functionality without libhybris
(which is not coming back to pmOS) so move everything related to the
OnePlus 5/5T downstream ports to downstream since a working mainline
port is much more feature rich.
2022-08-06 16:42:34 +01:00
Luca Weiss 113a5baa3e fairphone-fp4: add support for using super partition (MR 3344)
Set the necessary flag in deviceinfo so a user can use a logical
partition that was flashed using fastbootd.

$ fastboot create-logical-partition postmarketOS 1000000000
$ pmbootstrap flasher flash_rootfs --partition postmarketOS

[ci:skip-build]: already built successfully in CI
2022-08-05 09:14:51 +02:00
Oliver Smith d34f9020da gcc4, gcc6: rebuild against latest isl (MR 3343)
Bump the pkgrel of gcc4 and gcc6, and regenerate the cross/* versions
with "pmbootstrap aportgen gcc6-armv7" etc.

Should fix these errors:
  Error loading shared library libisl.so.22: No such file or directory (needed by /usr/gcc6/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/cc1)
  Error relocating /usr/gcc6/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/cc1: isl_union_map_free: symbol not found
  Error relocating /usr/gcc6/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/cc1: isl_map_from_pw_aff: symbol not found
  Error relocating /usr/gcc6/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/cc1: isl_schedule_from_domain: symbol not found
  ...

Related: https://gitlab.alpinelinux.org/alpine/aports/-/commit/54749a52225575a91f01d04f8d024b4ee853cfb6
[ci:skip-build]: already built successfully in CI
2022-08-05 09:10:00 +02:00
Oliver Smith 2280958b5e cross/busybox-static-*: upgrade to 1.35.0-r22 2022-08-04 09:03:17 +02:00
Elliot Huang 9b819e65bb google-juniper: new device (MR 3332) 2022-08-04 07:31:12 +03:00
Elliot Huang 50c5d50d75 linux-postmarketos-mtk-mt8183: new aport (MR 3332) 2022-08-04 07:31:09 +03:00
Jami Kettunen 2670b2c580 volla-mimameid: new device (Volla Phone 22) (MR 3340) 2022-08-03 19:27:44 -04:00
Luca Weiss 4c14014faa pine64-dontbeevil: remove sensorfw/primaryuse.conf (MR 3338)
This conflicts with sensorfw config provided in Alpine. Both have the
same content so remove the one from device package.
2022-08-03 20:38:13 +02:00
Luca Weiss 2d9018806e pine64-pinephone: remove sensorfw/primaryuse.conf (MR 3338)
This conflicts with sensorfw config provided in Alpine. Both have the
same content so remove the one from device package.
2022-08-03 20:38:13 +02:00
Luca Weiss 5beb88422b temp/evince: remove libexecinfo-dev from makedepends (MR 3339)
See https://gitlab.alpinelinux.org/alpine/aports/-/commit/50795a14dee639ce2dcc836e2b2baca9bad4a1b1
2022-08-03 15:40:35 +02:00
Luca Weiss c6818f1e78 temp/ofono: remove libexecinfo-dev from makedepends (MR 3339)
See https://gitlab.alpinelinux.org/alpine/aports/-/commit/50795a14dee639ce2dcc836e2b2baca9bad4a1b1
2022-08-03 15:38:38 +02:00
Oliver Smith 11682fb0ab gitlab-ci.yml: set timeout for build to 10h (MR 3337)
A common issue is that building kernels takes longer than the default of
1h, and then MR authors need to adjust the timeout in their pmaports
fork and run it again. By setting this option this is hopefully no
longer the case.

I set it to 10h because that's what we currently have set in the
postmarketOS gitlab configuration and it would allow building MRs for
service packs with multiple kernels.

pmbootstrap has logic built in to detect stale builds - by default it
will stop a build if there was no output for 15 minutes. So having a
large timeout shouldn't be a problem.
2022-08-03 09:24:35 -04:00
Martin Lillepuu 9de9244812 testing/device-oneplus-oneplus3t: add oneplus3t with s6e3fa5 panel (MR 3330)
Add support for multiple panels using kernel variants
2022-08-03 13:55:03 +01:00
Yassine Oudjana c534e4010c community/soc-qcom-msm8996: add UCM configuration for Xiaomi MSM8996 devices (MR 3333)
[ci:skip-build]: already built successfully in CI
2022-08-02 09:43:52 +02:00
Yassine Oudjana 7edd56e50a community/linux-postmarketos-qcom-msm8996: upgrade to 5.18.15 (MR 3333) 2022-07-31 23:03:43 +01:00
Anton Bambura 4dfa72c680 google-nyan-big: new device (MR 3325)
Co-Authored-By: Segfault <awarnecke002@hotmail.com>
[ci:skip-build]: already built successfully in CI
2022-07-31 22:03:21 +02:00
Anton BamburaandSegfault fcffd2b4b5 google-nyan-blaze: new device (MR 3325)
Co-Authored-By: Segfault <awarnecke002@hotmail.com>
2022-07-31 22:03:13 +02:00
Anton Bambura 4799d000d9 u-boot-nyan-4gb: new aport (MR 3325) 2022-07-31 22:03:13 +02:00
Anton Bambura c23d44be33 u-boot-nyan-2gb: new aport (MR 3325) 2022-07-31 22:03:13 +02:00
Anton BamburaandSegfault f7ef5ff857 linux-google-nyan: new aport (MR 3325)
Co-Authored-By: Segfault <awarnecke002@hotmail.com>
2022-07-31 22:03:08 +02:00
Albin Martinsson 2aa7b9d72e lenovo-tb-x704f: new device (MR 3326)
Wiki: https://wiki.postmarketos.org/wiki/Lenovo_TAB4_10_Plus_(lenovo-tb-x704f)

[ci:skip-build] Already built successfuly on CI in MR
2022-07-31 15:38:53 +02:00
pcworld 570d55b47e linux-postmarketos-allwinner: Enable AF8133J magnetometer driver (MR 3324)
The AF8133J magnetometer is being used since the PinePhone Beta edition
in place of the earlier ST LIS3MDL magnetometer.

[ci:skip-build] Already built successfuly on CI in MR
2022-07-29 21:27:09 -04:00
Oliver Smith 20472ab79c cross/gcc-*: upgrade to 11.2.1_git20220219-r5 2022-07-29 09:48:13 +02:00
Oliver Smith 0d1a11d700 cross/binutils-*: upgrade to 2.38-r4 2022-07-29 09:48:08 +02:00
Anton Bambura beeba0b911 google-kevin: new device (MR 3215)
[ci:skip-build]: already built successfully in CI
2022-07-29 09:41:43 +02:00
Anton Bambura 2d47ede894 temp/alsa-ucm-conf-google-gru: new aport (MR 3215) 2022-07-29 09:41:36 +02:00
Anton Bambura c1464d8f16 linux-postmarketos-rockchip: add support for gru chromebooks (MR 3215) 2022-07-29 09:41:36 +02:00
Ben Westover 30e95a0f20 amazon-ford: new device (MR 3286)
[ci:skip-build]: already built successfully in CI
2022-07-29 09:38:50 +02:00
Luca Weiss ac6030a6e7 fairphone-fp4: fix osk-sdl touch and flash kernel on upgrade (MR 3321)
The touchscreen currently is on i2c-gpio due to issues with the hardware
i2c. Include the module in initfs so the touch driver probes and is
usable in osk-sdl.

[ci:skip-build]: already built successfully in CI
2022-07-29 09:35:02 +02:00
Martin Lillepuu 881bbdd158 testing/firmware-oneplus-oneplus3t: add custom ath10k board file (MR 3313)
[ci:skip-build]: already built successfully in CI
2022-07-28 09:01:35 +02:00
Martin Lillepuu 2959b6c15d linux-postmarketos-qcom-msm8996: tweak configs (MR 3317)
Enable:
* CONFIG_UINPUT required by fbkeyboard
* CONFIG_PSTORE_PMSG required to enable dmesg/console ramoops

Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
[ci:skip-build]: already built successfully in CI
2022-07-28 08:41:01 +02:00
Pablo Correa Gómez 7ebf3bfc71 main/device-pine64-pinephone: add logind and upower fwupd plugins (MR 3320)
Otherwise, an update could be allowed even if the phone is not
connected to AC and it might also suspend in the middle of the upgrade
2022-07-27 10:57:31 -04:00
Pablo Correa Gómez 0007ee331c main/device-pine64-pinephone: add logind and upower fwupd plugins (MR 3320)
Otherwise, an update could be allowed even if the phone is not
connected to AC and it might also suspend in the middle of the upgrade
2022-07-27 10:57:31 -04:00
David Wronek 28132d3af0 samsung-a6plte: new device (MR 3311) 2022-07-27 14:39:31 +03:00
Clayton Craft b26e5287f7 device-oneplus-lemonade: support header v2 (MR 3297)
Co-authored-by: Jami Kettunen <jami.kettunen@protonmail.com>
[ci:skip-build]: already built successfully in CI
2022-07-27 08:57:38 +02:00
Clayton Craft d12a0772d5 main/boot-deploy: upgrade to 0.6 (MR 3297) 2022-07-27 08:57:02 +02:00
Adam Thiede 6545705115 device-pine64-pinephonepro: add gschema override for keyboard symbols (MR 3310)
[ci:skip-build]: already built successfully in CI
2022-07-27 08:42:49 +02:00
Adam Thiede 7b0017628f device-pine64-pinephone: add gschema override for keyboard symbols (MR 3310) 2022-07-27 08:42:33 +02:00
Martin Lillepuu 5b0ff093f7 oneplus3t: update dtb name (MR 3312)
[ci:skip-build]: already built successfully in CI
2022-07-27 08:22:36 +02:00
Oliver Smith 21792f411d cross/busybox-static: upgrade to 1.35.0-r20 2022-07-24 17:16:01 +02:00
Oliver Smith 69afe6cfc7 u-boot-*: bump pkgrel after a-t-f upgrade (MR 3291)
Bump the remaining users of arm-trusted-firmware besides
u-boot-pinephone.

[ci:skip-build]: already built successfully in CI
2022-07-24 17:11:48 +02:00
Dylan Van Assche 47c6d4995a soc-qcom-sdm845: shutdown when battery is critical (MR 3287)
UPower defaults to HybridSleep mode when battery is critical.
Since we allow suspending the device in regular use, this approach
won't help in a critical battery case scenario. When the battery
level is critical, shutdown the device instead.

Moreover, adjust the default levels for battery low, critical, critical
action since they are too high for SDM845 devices.
2022-07-24 17:07:55 +02:00
Anton Bambura feb91937c1 main/postmarketos-mkinitfs: support mounting with UUIDs (MR 3298) 2022-07-24 16:58:55 +02:00
Anton Bambura d14ca29400 main/postmarketos-update-depthcharge-kernel: new aport (MR 3290) 2022-07-23 22:07:18 -04:00
Laar3 fca17c6e08 postmarketos-mkinitfs: add option to disable splash (MR 3305)
Add PMOS_NOSPLASH as a kernel command line option to disable
the splash screen to show the logs on the screen for debugging.

See https://wiki.postmarketos.org/wiki/Initramfs_development
on how to use it.
2022-07-23 17:51:37 +00:00
Dylan Van Assche b23b3c4cd8 device-kobo-clara: add mesa-dri-gallium dep (MR 3306)
Mesa dependency was missing causing the screen to stay blank after boot
2022-07-23 11:17:01 -04:00
djyee 49d91586ad samsung-treltexx: new device (MR 3285)
[ci:skip-build] already built successfully in CI
2022-07-21 21:03:47 -07:00
Newbyte d22e6e0511 samsung-gavini: new device (MR 3289)
[ci:skip-build] already built successfully in CI
2022-07-21 21:01:13 -07:00
Newbyte 896412ae8d samsung-codina-tmo: new device (MR 3289) 2022-07-21 21:01:13 -07:00
Newbyte 5c9d8a5840 samsung-kyle: new device (MR 3289) 2022-07-21 21:01:13 -07:00
Luca Weiss 91ca0bfa01 device/*: replace old mesa-dri- dependencies with gallium (MR 3257)
vc4 and freedreno have been provided by mesa-dri-gallium for a long
time.

mesa-dri-intel subpackage has been deprecated for a while (previously
dependend on dri-classic and dri-gallium)

mesa-dri-classic drivers is removed because mesa upstream has removed
those old drivers from the tree. They've been replaced (for not-ancient
hardware) by gallium.

See also https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/31848
2022-07-21 13:53:12 +02:00
Newbyte 22882900bd linux-htc-golfu: adopt (MR 3300)
[ci:skip-build]: already built in CI / just metadata changed
2022-07-21 08:48:00 +02:00
Newbyte 8fea4d0db3 firmware-htc-m8qlul: adopt (MR 3300) 2022-07-21 08:47:49 +02:00
Newbyte 54b0179f8e CODEOWNERS: add myself where appropriate (MR 3300) 2022-07-21 08:47:49 +02:00
Newbyte 50f50da0d9 CODEOWNERS: order alphabetically (MR 3300) 2022-07-21 08:47:44 +02:00
Martijn Braam 6cb9bf823b temp/gtk+3.0: rebuild against newer pango (MR 3304) 2022-07-20 23:16:14 +02:00
Newbyte 8c85821115 cross/gcc-armhf: upgrade to 11.2.1_git20220219-r4 2022-07-20 10:24:09 -04:00
Dylan Van Assche a3f7bf3e1a main/postmarketos-base: use setup-devd (MR 3302)
Alpine does not use setup-udev anymore and provides the same
functionality through setup-devd. The setup-udev script was deleted [1]
but postmarketos-base still used it and caused pmbootstrap to fail when
building a device image. Use the rc-service setup directly from
setup-devd.

[1] https://gitlab.alpinelinux.org/alpine/aports/-/commit/b56c4c2b9ddea6007c5e4349f97310a1538f29b6
2022-07-20 10:05:27 -04:00
Minecrell 074a142319 cross/gcc-{armv7,aarch64}: upgrade to 11.2.1_git20220219-r4
Fix the following error:

ERROR: unable to select packages:
  libstdc++-11.2.1_git20220219-r4:
    breaks: g++-aarch64-11.2.1_git20220219-r3[libstdc++=11.2.1_git20220219-r3]
    satisfies: gcc-11.2.1_git20220219-r4[so:libstdc++.so.6]
               binutils-2.38-r3[so:libstdc++.so.6]
               ccache-4.6.1-r0[so:libstdc++.so.6]
  gcc-11.2.1_git20220219-r4:
    breaks: g++-aarch64-11.2.1_git20220219-r3[gcc=11.2.1_git20220219-r3]

The new version does not seem to be in the armhf repos yet so skip that
one for now.
2022-07-19 18:45:58 +02:00
Pablo Correa Gómez ca8a14e0c8 temp/gtk4.0: upgrade to 4.6.6 (MR 3294)
[ci:skip-build] already built successfully in CI
2022-07-18 15:26:31 -07:00
Minecrell c51cfe0c06 modem/rmtfs: upgrade to 0.2_git20220718 (MR 3296)
No functional change, the patch was finally merged so we can drop it.
2022-07-18 23:16:20 +02:00
Oliver Smith e6fc18b008 main/postmarketos-ui-*: recommend postprocessd (MR 3292)
Adjust UIs that pre-install megapixels (not megapixels-gtk3) to also
recommend using postprocessd. This pulls in opencv, but overall improves
the usability of megapixels a lot so it seems worth installing by
default.

[ci:skip-vercheck]: _pmb_recommends doesn't need a pkgrel bump
2022-07-17 20:16:05 +02:00
Bobby The Builder 389267bb21 linux-allwinner: upgrade to 5.18.7 (MR 3263)
[ci:skip-build]: already built successfully in CI
2022-07-17 17:12:03 +02:00
Bobby The Builder 41fec92f75 main/u-boot-pinephone: upgrade to 2022.07 (MR 3263) 2022-07-17 17:11:52 +02:00
Bobby The Builder 858c730020 temp/arm-trusted-firmware: upgrade to 2.7.0 (MR 3263) 2022-07-17 17:10:49 +02:00
Yassine Oudjana ba3896f2ae community/firmware-xiaomi-scorpio: Add QCA6174 board firmware (MR 3271) 2022-07-15 16:07:41 +02:00
Oliver Smith ae068eac13 channels.cfg: mark v21.12 as unsupported (EOL) 2022-07-12 08:22:08 +02:00
Oliver Smith f50d8b96d7 temp/calamares-extensions: fork, increase timeout (MR 3280)
Increase the timeout for the PartitionJob from 2 min to 10 min, so it
works on the PinePhone Pro with its 128 GiB eMMC.

Related: https://github.com/calamares/calamares-extensions/pull/20
[ci:skip-vercheck]: forked pkg intentionally not having pkgrel=0
2022-07-11 08:38:43 +02:00
Oliver Smith c798839c60 pine64-pinephonepro: tweak kernel parameters (MR 3280)
* set PMOS_FORCE_PARTITION_RESIZE
* set loglevel=1 to have less verbose kernel output during boot, same as
  for the pinephone
2022-07-11 08:32:04 +02:00
Oliver Smith aa996d27b0 main/postmarketos-ondev: upgrade to 0.8.1 (MR 3280) 2022-07-11 08:32:04 +02:00
Oliver Smith f608015ea3 pine64-pinephonepro: fix dev_internal_storage (MR 3280) 2022-07-11 08:31:59 +02:00
Minecrell 0737d3089a qemu: add option to use linux-edge(4virt) kernel (MR 3281) 2022-07-10 20:42:33 -04:00
Richard Qian 43e3bc87df samsung-d2vzw: new device (Samsung Galaxy SIII (Verizon)) (MR 1761)
[ci:skip-build]: already built successfully in CI
2022-07-10 16:55:33 +02:00
Luca Weiss 724f4dc8b2 bq-paella: update maintainers (MR 3200)
Jonathan hasn't been active on GitLab since more than a year, so remove
them from the maintainer list for this device.
2022-07-08 21:29:18 +02:00
Luca Weiss 0dc7fabb1f device-lg-hammerhead: add gpu flag (MR 3159)
GPU has been supported for a while in the mainline-ish kernel, so let
pmbootstrap show UIs like Phosh.
2022-07-08 21:06:15 +02:00
Oliver Smith 28e2019ff7 pine64-pinephonepro: fix audio with alsa-lib 1.2.7 (MR 3272)
Let /usr/share/alsa/ucm2/conf.d/simple-card/*.conf be a symlink,
as it is expected since alsa-lib 1.2.7.

Related: https://github.com/alsa-project/alsa-lib/commit/d6adde0e32376554e461098dcd7cfdb824fabd1e
[ci:skip-build]: already built successfully in CI
2022-07-08 00:04:54 +02:00
Martijn Braam e99bc1224d device/pine64-pinephonepro: add bluetooth firmware (MR 3278)
[ci:skip-build]: already built successfully in CI
2022-07-07 23:31:18 +02:00
Martijn Braam f59355bf6b device/pine64-pinephonepro: update kernel to 5.17.9 (MR 3278) 2022-07-07 14:58:22 +02:00
Alexey Minnekhanov 04d250d328 cross/busybox-static-*: upgrade to 1.35.0-r18 2022-07-07 10:57:27 +03:00
Martijn Braam 560c92cff3 device/pine64-pinephonepro: clean up kconfig (MR 3238)
[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2022-07-07 09:27:18 +02:00
Martijn Braam 11e959cc01 device/pine64-pinephonepro: fix up firmware (MR 3238)
Remove the firmware that was copied from the pine64-pinephone and add
the cdn-dp firmware for the rockchip platform.

[ci:skip-vercheck]
2022-07-07 09:26:57 +02:00
Martijn Braam b58b7cfbd4 device/pine64-pinephonepro: fix calling (MR 3238) 2022-07-07 09:26:57 +02:00
Martijn Braam 484b23f7a0 device/pine64-pinephonepro: Move to commmunity (MR 3238) 2022-07-07 09:26:57 +02:00
Richard Qian 02aaa6eae6 amazon-austin: new device (MR 3251)
Based on hexdump0815 and GjergjiFloychi's work.

[ci:skip-build] Already built successfuly on CI in MR
2022-07-06 12:13:47 -04:00
Minecrell d9326d5ac9 modem/tqftpserv: start before rmtfs (MR 3269)
Ideally tqftpserv should be started before rmtfs. This is because rmtfs
is currently responsible for starting the modem, and it's best for
performance if all the services needed by the modem are already up.

Also change "want" -> "use" for consistency with rmtfs. The difference
between "want" and "use" is that "want" just triggers starting of the
other service, while "use" also ensures that the other service starts
successfully.
2022-07-05 18:49:25 +02:00
Minecrell dcd3ae8f07 modem/rmtfs: upgrade to 0.2_git20210809, start before networkmanager (MR 3269)
Also include z3ntu's patch fixing a buffer overread issue which sadly
has not been merged for several months now.

rmtfs should be ideally started and stopped before NetworkManager
because otherwise the modem network interface might be removed before
NetworkManager can set it down. This has caused kernel issues at some
point (although it seems to be fine again at the moment).
2022-07-05 18:49:21 +02:00
Minecrell df4b8c44d1 modem/qrtr: upgrade to 0.3_git20201207 (MR 3269) 2022-07-05 18:49:16 +02:00
Jianhua Lu f27ec087f8 xiaomi-elish: Add support for dynamic partition and wifi & venus (MR 3277)
[ci:skip-build] already built successfully in CI
2022-07-05 18:46:15 +02:00
Jianhua Lu 0c80af7aa3 firmware-xiaomi-elish: Add venus firmware (MR 3277) 2022-07-05 18:42:39 +02:00
Jianhua Lu 6d8bc79c1d linux-postmarktos-qcom-sm8250: Refactor this APKBUILD and upgrade to 5.19.0-rc5 (MR 3277)
Enable wifi and venus driver, sm8250 soc has the qca6390 wifi module connected to pcie0, this driver is contained in
ath11k_pci in mainline.
2022-07-05 18:42:35 +02:00
Harry Austen 700756cad2 community/linux-postmarketos-qcom-msm8996: add support for iwd (MR 3266)
These options are required by `iwd`. Make use of the `kconfigcheck-iwd`
APKBUILD option to ensure the required config options remain selected.

[ci:skip-build] already built successfully in CI
2022-07-05 18:39:04 +02:00
Harry Austen 01ffe2082a testing/firmware-oneplus-oneplus3: add custom ath10k board file (MR 3266)
This enables support for the oneplus3's QCA6174 WiFi chipset. The
`board-2.bin` file (overwriting the file with the same name from the
`linux-firmware-ath10k` package) is created from `bdwlan30.bin`, which
is extracted from the baseband modem firmware disk image,
`NON-HLOS.bin`. This board file has not yet been upstreamed.
2022-07-05 18:37:57 +02:00
Harry Austen affa4d24d2 main/qca-swiss-army-knife: new aport (MR 3266)
qca-swiss-army-knife contains a number of utilities to help and debug
Qualcomm Atheros wireless driver development.
2022-07-05 18:37:52 +02:00
Clayton Craft c442dfbd5f purism-librem5: update paths to ucm to support alsa 1.2.7 (MR 3265)
conf.d expects symlinks now, see:
https://github.com/alsa-project/alsa-lib/commit/d6adde0e32376554e461098dcd7cfdb824fabd1e

[ci:skip-build] already built successfully in CI
2022-07-05 09:21:23 -07:00
Oliver Smith 5572c21fa3 pine64-pinetab: fix audio with alsa-lib 1.2.7 (MR 3273)
Let /usr/share/alsa/ucm2/conf.d/simple-card/*.conf be a symlink,
as it is expected since alsa-lib 1.2.7.

Related: https://github.com/alsa-project/alsa-lib/commit/d6adde0e32376554e461098dcd7cfdb824fabd1e
2022-07-05 11:44:32 -04:00
Shinjo Park 8302ff553a lg-madai: new device (LG Fx0) (MR 3276)
Because I don't have access to the serial port yet, I begin with the
vendor kernel.
* Make display work by setting to 16bpp

[ci:skip-build]: already built successfully in CI
2022-07-05 08:13:31 +02:00
Oliver Smith 0c4b793bc8 temp/gtk+4.0: replace at-spi2-atk/atk with at-spi2-core (MR 3274)
Fix for:
  missing depend(s): atk-dev

Related: https://gitlab.alpinelinux.org/alpine/aports/-/commit/926ab65be5c376ea66bbf36c039a3c8e3969c301
[ci:skip-build]: already built successfully in CI
2022-07-04 07:50:18 +02:00
Oliver Smith 9787be25fe temp/gtk+3.0: replace at-spi2-atk/atk with at-spi2-core (MR 3274)
Fix for:
  missing depend(s): atk-dev

Related: https://gitlab.alpinelinux.org/alpine/aports/-/commit/926ab65be5c376ea66bbf36c039a3c8e3969c301
2022-07-03 18:46:31 +02:00
Oliver Smith f07bf45b73 cross/musl-*: upgrade to 1.2.3-r1 2022-07-03 18:38:57 +02:00
Oliver Smith 3a2007c36b pine64-pinephone: fix audio with alsa-lib 1.2.7 (MR 3267)
Let /usr/share/alsa/ucm2/conf.d/simple-card/*.conf be a symlink,
as it is expected since alsa-lib 1.2.7.

Related: https://github.com/alsa-project/alsa-lib/commit/d6adde0e32376554e461098dcd7cfdb824fabd1e

[ci:skip-build] already built successfully in CI
2022-07-02 23:29:05 -07:00
Dylan Van Assche 18a50389d6 device-pine64-pinebookpro: drop ALSA UCM configs (MR 3268)
ALSA UCM configs are now upstreamed which causes
a conflict with the device package as both are now
providing the same files. Drop our configs in the device package.
2022-07-02 16:16:28 -04:00
Anton Bambura df7444b1b0 google-veyron-jerry: add myself as co-maintainer (MR 3270) 2022-07-02 13:16:04 -04:00
Anton Bambura 64ab8ce76b temp/alsa-ucm-conf-google-veyron: drop (MR 3270) 2022-07-02 13:16:02 -04:00
Clayton Craft ed3ba95558 cross/gcc-*: upgrade to 11.2.1_git20220219-r3 2022-06-30 15:39:20 -07:00
Shinjo Park 1a57242213 samsung-kiran: new device (Samsung Z1) (MR 3234)
The kernel is based on Samsung's downstream kernel for the device. Some
configuration changes are required to make the kernel to work:
* Tizen kernel uses SLP USB gadget, changed to Android USB gadget.
* sprdfb patches and modification on the devicetree files are required
  to use the framebuffer.
* Other required pmOS kernel settings were enabled.
* Tizen does not use initramfs, use RAMDISK partition to store initramfs
  of pmOS (like heimdall-isorec configuration). As far as I know, no
  alternative OS exists for this device so this is the very first usage.
* Flash the root file system to USER, as ROOTFS is < 1 GB in size and
  USER is about 2.7 GB.

samsung-kiran: Update device and firmware packages

* Changed kernel configuration for firmware path to follow postmarketOS.
* Post install script to mount CSA partition

CSA partition [1] contains non-volatile data for Tizen devices. As
Samsung Z1 uses this partition to store Wi-Fi and Bluetooth information,
mount this partition to use within postmarketOS.

[1] https://docs.tizen.org/platform/porting/kernel/

linux-samsung-kiran: Use lzop to decompress initramfs

This synchronizes behavior with other heimdall-isorec devices.

[ci:skip-build] Already built successfuly on CI in MR
2022-06-30 12:11:59 -04:00
Luca Weiss e147b0f1a0 fairphone-fp4: add vulkan and haptics (MR 3262)
Add udev rule to make feedbackd handle haptics.

With mesa where A619 is supported (which isn't packaged in pmaports
anyways but it's just one small patch that should go upstream in the
near future) Vulkan works absolutely fine, so install the driver for it.

[ci:skip-build] Already built successfuly on CI in MR
2022-06-30 09:15:45 -04:00
Luca Weiss b5dd55f277 testing/firmware-fairphone-fp4: remove board-2.bin (MR 3262)
This file is now provided by linux-firmware-ath10k and conflicts with
the one provided by this package.
2022-06-30 09:15:44 -04:00
Luca Weiss d25c061ee2 testing/linux-postmarketos-qcom-sm6350: upgrade to 5.19_rc1 (MR 3262)
New features:
* AW8695 haptics driver (for FP4)
* Interconnect
2022-06-30 09:15:43 -04:00
Newbyte 7e94b27b71 CI: remove msm-firmware-loader from shellcheck (MR 3260)
msm-firmware-loader is in its own repo now.
2022-06-29 08:07:58 +02:00
Newbyte 469acb86b4 main/msm-firmware-loader: use separate repo as source (MR 3260)
Closes https://gitlab.com/postmarketOS/pmaports/-/issues/1292
2022-06-29 08:07:53 +02:00
Oliver Smith 3a964003e7 main/postmarketos-welcome: upgrade to 0.5.1 (MR 3249) 2022-06-29 07:59:20 +02:00
Luca Weiss 9f36519cf1 sony-leo: clean up device package (MR 3250)
Add flash method fastboot so we can actually flash it with pmbootstrap,
remove outdated 90-android-touch-dev.rules and improve the formatting
throughout the APKBUILD.

[ci:skip-build] already built successfully in CI
2022-06-28 20:57:45 -07:00
Oliver Smith c5c623221a asus-flo: fix using downstream kernel (MR 3256)
Don't try to append the dtb if using the downstream kernel.

Fix for:
  ERROR: File not found: /usr/share/dtb/qcom-apq8064-asus-nexus7-flo.dtb
Fixes: MR 2239 ("main/linux-postmarketos-qcom-apq8064: new aport")

[ci:skip-build] already built successfully in CI
2022-06-28 20:56:01 -07:00
Newbyte 2148e3b774 lg-judyln: add myself as maintainer (MR 3261)
[ci:skip-build] already built successfully in CI
2022-06-28 20:53:08 -07:00
Clayton Craft b06f5c6f72 linux-purism-librem5: upgrade to 5.18.5 (MR 3253)
Upstream changelog:

https://source.puri.sm/Librem5/linux/-/commit/5167067a7a895be6fd1317bace5d4009dc3d1dfa

[ci:skip-build]: already built successfully in CI
2022-06-27 08:58:01 +02:00
Oliver Smith 3c2d684546 cross/grub-efi-x86: upgrade to 2.06-r5 2022-06-27 08:36:05 +02:00
Oliver Smith 50c625c7fb cross/binutils-*: upgrade to 2.38-r3 2022-06-27 08:36:00 +02:00
bjorn3 6712fc6922 samsung-s3ve3g: fix signature mismatch for msm_pm_boot_init (MR 3248)
This previously caused msm_pm_boot_init to incorrectly get handled as
__init function when it needs to be an __devinit function as it is
called by msm_pm_boot_probe, which is an __devinit function.

[ci:skip-build]: already built successfully in CI
2022-06-24 10:20:04 +02:00
bjorn3 c7dd25cb51 samsung-s3ve3g: Use the ondemand scaling governor (MR 3248)
This prevents the device from getting pretty hot
2022-06-24 10:17:52 +02:00
Ben Westover a9f2075aae lg-mmh4x: new device (LG K40) (MR 3231)
[ci:skip-build]: already built successfully in CI
2022-06-23 09:22:24 +02:00
Rajin Gangadharan 1476dba6f2 motorola-panelli: new device (MR 3246)
[ci:skip-build]: already built successfully in CI
2022-06-23 09:06:49 +02:00
Shinjo Park ef0f70f9d7 main/tizen-mkdzimage: new aport (MR 3247)
dzImage generation tool for Tizen devices. The same dzImage format is
used in all Samsung's Tizen devices (Spreadtrum, Qualcomm, Exynos), so
we pick the latest script from the Tizen's Exynos kernel package.
2022-06-22 10:24:07 +00:00
Richard Acayan e07d1716cd main/make-dynpart-mappings: upgrade to 10.2.4 (MR 3244) 2022-06-22 09:29:36 +02:00
Oliver Smith f108c30736 cross/busybox-static-*: upgrade to 1.35.0-r17 2022-06-22 09:04:27 +02:00
András El Koulali 51731f7990 samsung-coreprimevelte: correctly use uImage as kernel (MR 3144) 2022-06-22 08:59:05 +02:00
André Apitzsch 8db94cb77b linux-postmarketos-stericsson: upgrade to 5.19-rc2 (MR 3243)
Also enable NFC support for Codina P

[ci:skip-build] Already built successfuly on CI in MR
2022-06-19 11:27:30 -04:00
Oliver Smith 63bc318a16 cross/busybox-static-*: upgrade to 1.35.0-r16 2022-06-19 11:26:32 +02:00
Sönke Holz 4c1d852356 samsung-xcover4lte: use sm-sparse-image-tool (MR 3222)
The option `deviceinfo_flash_sparse_samsung_format` seems to work
fine on the xcover4lte.

Setting `deviceinfo_flash_sparse_samsung_format` to `1` (and
`deviceinfo_flash_sparse="true"`) causes heimdall to no longer hang
while the rootfs is being flashed.

[ci:skip-build]: already built successfully in CI
2022-06-19 11:13:56 +02:00
Shinjo Park 89aafe235a shared-patches: add spreadtrum patches (MR 3242)
Merge and move Spreadtrum patches from these kernels to shared-patches:
* linux-finepower-f1
* linux-samsung-{gtel3g,gtelwifi,j1mini3g,j3xnlte}
* linux-zte-p731a20

[ci:skip-build]: already built successfully in CI
2022-06-19 10:57:00 +02:00
Uli Roth 2eb1a1199b firmware-xiaomi-beryllium: remove board-2.bin to solve conflict (MR 3241)
Remove board-2.bin firmware as it is already included in linux-firmware-ath10k.

Fixes #1567
2022-06-17 19:10:05 +03:00
Arnavion f8df093985 device/pine64-pinephone: add additional modem udev rule for new community firmware serial (MR 3240)
Ref: https://github.com/Biktorgj/pinephone_modem_sdk/releases/tag/0.6.7

>Set USB port serial number to `community_fw`, so distros can use
a specific ruleset in udev for this firmware and a different one
when using stock
2022-06-16 22:15:58 +02:00
Anton Bambura e4c9eaf06e linux-postmarketos-exynos5: fix Mali T628 (MR 3217)
[ci:skip-build] Already built successfuly on CI in MR
2022-06-16 15:44:34 -04:00
Richard Acayan 20c7501b50 main/postmarketos-mkinitfs: resize_root_partition: resize dm-* devices (MR 3216)
Prior to this commit, the initramfs was unable to resize the root
partition if it was on a device backed by the device mapper. This commit
fixes that now that it is possible for the root partition to lie on a
device mapper device.
2022-06-16 10:12:07 +02:00
Przemysław Romanik 580ff69729 samsung-crownlte: add Bluetooth support (MR 3224)
[ci:skip-build]: already built successfully in CI
2022-06-16 09:58:16 +02:00
Dylan Van Assche f9c7ffa9b6 temp/pulseaudio: fork for Bluetooth HFP/HSP support (MR 3080)
PulseAudio is used for handling all audio on postmarketOS.
This also involves Bluetooth audio such as A2DP, HSP and HFP audio.
In the case of HFP/HSP, the HF and AG can interact with each other
through AT commands defined in the Bluetooth HFP 1.8 spec.

This set of patches implements HFP support to allow Bluetooth devices
to accept/reject/hangup calls, dial numbers, DTMF tone generation,
query signal strength, roaming status, service status, AG battery level,
call status, etc.

More details in the upstream MR:
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/693

Available in edge for testing this merge request with a broader user
base. Not intended for backporting to stable branches.

[ci:skip-build]: already built successfully in CI
2022-06-16 09:33:35 +02:00
Jami Kettunen 6fbaf44b0a linux-postmarketos-grate: add vndbinder device for Waydroid (MR 3239)
[ci:skip-build]: already built successfully in CI
2022-06-16 08:49:09 +02:00
Jami Kettunen 46676e735d linux-postmarketos-rockchip: add vndbinder device for Waydroid (MR 3239) 2022-06-15 21:30:54 +03:00
M0Rf30 13fce2b163 linux-xiaomi-vince: upgrade to 4.9.317 (MR 3221)
This involves also config, synced with upstream

[ci:skip-build] Already built successfuly on CI in MR
2022-06-15 11:57:45 -04:00
Oliver Smith f7b5c3bed2 main/postmarketos-release-upgrade: upgrade to 1.2.1 (MR 3237) 2022-06-15 13:09:46 +02:00
Martijn Braam b62d7f6e7c device/pine64-pinephone: add recommended modem udev rules (MR 3235)
For the Biktorgj firmware the control/power file should be set to on
instead of auto. By matching on the serial number this only applies to
modems with the community firmware installed.
2022-06-15 12:30:26 +02:00
Oliver Smith cc5a379809 main/postmarketos-ui-sxmo-*: fix _pmb_recommends (MR 3236)
gnome-icon-theme has been dropped in alpine edge in favor of
adwaita-icon-theme. Adjust the _pmb_recommends of the Sxmo UI packages.

Fix for:
  package 'gnome-icon-theme' from _pmb_recommends not found for arch 'x86_64'

Related: https://gitlab.alpinelinux.org/alpine/aports/-/commit/b24abe8a2c915a5da358a9588565e203dd765286
Related: https://gitlab.com/postmarketOS/pmaports/-/jobs/2593231817
[ci:skip-vercheck]: changing _pmb_recommends doesn't need version bump
2022-06-15 12:24:10 +02:00
Newbyte 50f392df43 main/postmarketos-ui-gnome: don't mark UI as hardware accelerated (MR 3041)
While GNOME does require hardware acceleration, GNOME's X11 mode
(not sure about Wayland mode) does work without DRM support, so
it works fine with software rendering on devices without a working
GPU as long as fbdev works.

I think this raises the question of whether we should rename
pmb:hw-accel to pmb:drm as e.g. Phosh should work without 3D
acceleration if a device e.g. uses a kernel with SimpleDRM support,
but that is out of scope for this MR/commit.

Effectively reverts 638362de63

[ci:skip-vercheck]
2022-06-15 11:33:37 +02:00
Oliver Smith 01e348b3a5 main/postmarketos-release-upgrade: upgrade to 1.2.0 (MR 3232)
Most importantly, this fixes upgrading to edge.

Related: https://gitlab.com/postmarketOS/postmarketos-release-upgrade/-/tags/1.2.0
2022-06-14 10:19:20 +02:00
Alexander Martinz cdc9bb564b community/linux-postmarketos-qcom-sdm845: upgrade to 5.18.3 (MR 3213)
For a merge list, please see the merge commits:
  - 5.18.1 - (https://gitlab.com/sdm845-mainline/linux/-/commit/3d98cf52b5d07eeac01a03c86325c9c48f39e9c4)
  - 5.18.2 - (https://gitlab.com/sdm845-mainline/linux/-/commit/99cf0d285f5059176ab59b14b3b1dff8002f1407)
  - 5.18.3 - (https://gitlab.com/sdm845-mainline/linux/-/commit/b425b70a6379f3415ed349f5c5719d4a6f315523)

-----

This also changes the following Kconfig options:
  - CONFIG_SCSI_UFS_BSG -> y

Change-Id: I4406f381b48a894ea0bff3006fb3fa62683e61a0
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build]: already built successfully in CI
2022-06-14 10:13:41 +02:00
Pablo Correa Gómez f4783d4c88 main/postmarketos-mkinitfs: provide only a virtual package (MR 3228)
Fixes 02dfe83c4b

The previous `provides="mkinifs=3.6.0"` was a requirement because alpine's
kernels had a minimum dependency in `mkinitfs>=3.6.0` to make sure that
support for compressed modules existed. That requirement is no longer
in place[1], since the dependency is now on the `initramfs-generator`
virtual package. Also, since `initramfs-generator` is a virtual package
and not a real package, versioning it might mess up APK. The documentation
explictly states that virtual packages are those with unversioned provides
and a provider_priority. So to avoid having problems in the future, let's
strictly stick to it.

[1] https://gitlab.alpinelinux.org/alpine/aports/-/commit/4fac61c826cac81af72e095b645098900d3094a1
2022-06-14 09:54:04 +02:00
Oliver Smith 6c01d67f3c pine64-pinephone: update maintainers list (MR 3199)
* add myself as maintainer
* remove Clayton and Bart

[ci:skip-vercheck]
2022-06-14 09:36:17 +02:00
Oliver Smith b874bcf4c9 channels.cfg: mark v22.06 as released
Related: https://postmarketos.org/blog/2022/06/12/v22.06-release/
2022-06-13 21:17:42 +02:00
David Wales 84cba1b36d raspberry-rpi0: fix use of deprecated initramfs-<flavor> (MR 3225)
This is the same as c8b3a16e38, but
for the Raspbberry Pi 0.

Related to !2731
2022-06-13 17:51:49 +02:00
David Wales 76e388c2d5 raspberry-rpi: fix use of deprecated initramfs-<flavor> (MR 3225)
This is the same as c8b3a16e38, but
for the original Raspbberry Pi.

Related to !2731
2022-06-13 17:51:46 +02:00
Clayton Craft c5c0e0f061 main/postmarketos-mkinitfs: add missing ascii nls module (MR 3229)
This is required by fat32, fixes #1555
2022-06-12 10:26:16 -07:00
Jakob Hauser b6f19a2ed7 main/postmarketos-base: remove udev rule for rt5033 battery refresh (MR 3223)
The refresh method was removed in UPower version 0.99.18 for regular
usage (available in debug mode only).
2022-06-12 15:44:47 +02:00
Clayton Craft 02dfe83c4b main/postmarketos-mkinitfs: provide initramfs-generator (MR 3219)
Alpine provides a 'initramfs-generator' thing now that the alpine
linux-* depend on explicitly. This sets postmarketos-mkinitfs to be the
preferred provider of that virtual package.

Fixes:
        ERROR: unable to select packages:
          postmarketos-mkinitfs-1.4.1-r5:
            conflicts: mkinitfs-3.6.1-r2[mkinitfs=3.6.0]
            satisfies: postmarketos-base-20-r1[postmarketos-mkinitfs]
                       postmarketos-base-nofde-20-r1[postmarketos-mkinitfs]
                       .pmbootstrap-20220610.215815[postmarketos-mkinitfs]
                       .pmbootstrap-20220610.215815[mkinitfs]
          mkinitfs-3.6.1-r2:
            conflicts: postmarketos-mkinitfs-1.4.1-r5
            satisfies: .pmbootstrap-20220610.215815[mkinitfs]
                       linux-rpi-5.15.45-r1[initramfs-generator]
          .pmbootstrap-20220610.215815:
            masked in: cache
            satisfies: world[.pmbootstrap=20220610.215815]

Also see:
        30d7b88324 (aports) main/mkinitfs: provide initramfs-generator
        4fac61c826 (aports) main/linux-lts: replace mkinitfs with initramfs-generator
2022-06-12 15:33:57 +02:00
Oliver Smith b3a26d80b7 main/postmarketos-release-upgrade: upgrade to 1.1.2 (MR 3227) 2022-06-12 14:07:09 +02:00
Oliver Smith bd5fe72ccf main/postmarketos-welcome: upgrade to 0.5.0 (MR 3226) 2022-06-12 13:01:06 +02:00
Oliver Smith 636f22a038 cross/grub-efi-x86: upgrade to 2.06-r4 2022-06-12 12:33:06 +02:00
Oliver Smith 6e4625ac27 cross/busybox-static-*: upgrade to 1.35.0-r15 2022-06-12 12:27:02 +02:00
Raymond Hackley 3c0dd53efb samsung-{j3,j5,j5x}: Add panel and touchscreen modules to initfs (MR 3081)
Add panel and Imagis touchscreen for J3, J5 and J5X.

[ci:skip-build] already built successfully in CI
2022-06-11 15:56:39 -07:00
Raymond Hackley 23a25798fe samsung-j5: depends on soc-qcom-msm8916-rproc (MR 3081)
Add modem support for J5.

[ci:skip-build] already built successfully in CI
2022-06-11 15:56:39 -07:00
Raymond Hackley bf639fc01d samsung-e7: Move to community (MR 3188)
Like samsung-a{3,5}, samsung-e7 works quite well. Move it to community.

[ci:skip-build] already built successfully in CI
2022-06-11 15:52:18 -07:00
Caleb Connolly 8e5b569bef device-shift-axolotl: depend on qbootctl (MR 3190)
[ci:skip-build] already built successfully in CI
2022-06-11 15:47:27 -07:00
Caleb Connolly faae2121ff device-oneplus-*: depend on qbootctl (MR 3190)
[ci:skip-build] already built successfully in CI
2022-06-11 15:47:26 -07:00
Caleb Connolly 245f6e6911 soc-qcom-sdm845: add qbootctl (MR 3190)
[ci:skip-build] already built successfully in CI
2022-06-11 15:47:26 -07:00
Antoni Aloy Torrens 18f7fcc000 samsung-arubaslim: new device (MR 3186)
[ci:skip-build] already built successfully in CI
2022-06-11 15:44:20 -07:00
Clayton Craft 87d6a4cff4 linux-purism-librem5: upgrade to 5.18.1pureos1 (MR 3214)
Config changes are just from rebasing on purism's defconfig + migrating
to 5.18 config

[ci:skip-build] already built successfully in CI
2022-06-11 15:38:28 -07:00
Martijn Braam f321581f12 device-pine64-pinetab: fix alsa ucm (MR 3218)
[ci:skip-build] already built successfully in CI
2022-06-11 15:35:56 -07:00
Clayton Craft 160e6085be device/main/u-boot-librem5: upgrade to 2022.04_git20220420 (MR 3085)
This also re-enables the auto flashing for u-boot on the L5, but keeps
it disabled on the devkit for now until this u-boot supports the devkit
again.

[ci:skip-build] already built successfully in CI
2022-06-11 15:33:00 -07:00
Raymond Hackley 2159ed63f3 samsung-grandmax: new device (MR 3160) 2022-06-11 18:53:08 +02:00
Oliver Smith 8c933ef9a0 main/postmarketos-welcome: upgrade to 0.4.2 (MR 3208) 2022-06-10 10:01:09 +02:00
Pablo Correa Gómez bec9861ec4 main/postmarketos-welcome: version provides (MR 3208)
There was lately a discussion upstream due to apk 2.12.10 breaking
some packages in aports[1]. The conclusion in IRC is that provides
were designed to be either versioned or have a provider_priority.
Otherwise, the provides will be treated as a "virtual package".
Which is not what we want here.

[1] https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/10847
2022-06-10 10:01:04 +02:00
Yassine Oudjana 4da6031e8f community/device-xiaomi-scorpio: disable GPU binning pass (MR 3210)
This is a workaround for a freedreno bug that causes some artifacts
in GNOME and GTK4 apps.
2022-06-09 08:54:47 +02:00
Jack Knightly 4912e44aa3 main/postmarketos-base: modify tm2-touchkey udev rule for midas (MR 3192) 2022-06-09 08:08:41 +02:00
Syboxez Blank 1770b37b60 device: sdm845-{enchilada,fajita,beryllium,axolotl}: rename qcom_smb2 to qcom_pmi8998_charger (MR 3204) 2022-06-08 09:41:31 +02:00
Oliver Smith 5eeb86a419 main/postmarketos-welcome: upgrade to 4.0.0 (MR 3207)
[ci:skip-vercheck]: postmarketos-ui-phosh change in _pmb_recommends
doesn't need a version bump
2022-06-08 01:23:50 +02:00
Minecrell dcfaa6acc2 community/linux-asus-me176c: fix build by updating kernel config
Run "pmbootstrap kconfig migrate asus-me176c" to update the kernel
config for the new Linux version. Otherwise there is an interactive
prompt that times out on BPO (although it succeeds on GitLab CI for
some strange reason).
2022-06-07 19:42:57 +02:00
Oliver Smith 8c4e11ab5b main/postmarketos-release-upgrade: new aport (MR 3197)
[ci:skip-build]: already built successfully in CI
2022-06-07 09:44:48 +02:00
Oliver Smith 8f09708b9b cross/busybox-static-*: upgrade to 1.35.0-r14 2022-06-07 09:41:33 +02:00
Minecrell 62f0d60ef7 community/device-asus-me176c: install vulkan/libva driver if needed (MR 3195)
Add subpackages that automatically cause installation of the Vulkan
and libva driver if packages using them get installed. This reduces
the size of a minimal rootfs but still ensures those are present if
needed.

[ci:skip-build]: already built successfully in CI
2022-06-07 08:22:43 +02:00
Minecrell 635906b9aa community/linux-asus-me176c: upgrade to 5.4.197 (MR 3195)
The new linux-edge / 5.18 kernel will likely not make it in time for
the v22.06 release so let's upgrade the good old 5.4 kernel to the
latest stable release at least.
2022-06-07 08:22:37 +02:00
Oliver Smith 5be7308c82 Revert "main/postmarketos-ui-phosh: add yelp to _pmb_recommends (MR 2832)" (MR 3196)
The patch was meant well. But there are problems with yelp in its
current form in postmarketOS:
* It's practically empty. In the default install, there is only one
  application that has some sort of help text, which is Chatty. But
  when you click on the entry, there is only one line of generic
  information about the app. Not useful for users.
* Yelp is not adapted for small screens, the one line of help text is
  cut off on the PinePhone.

So let's not ship it by default in edge and v22.06 for now.
This reverts commit 5ef50b12f2.

[ci:skip-vercheck]: modifying _pmb_recommends doesn't need a version
bump.
2022-06-07 08:17:19 +02:00
Oliver Smith 5d4d9c80cd CI: test_ui: get arches from pmaports.cfg (MR 3205)
Don't assume that each branch has all arches that pmbootstrap supports,
instead add them to pmaports.cfg and read them from there. This should
allow the test to pass on v22.06.
2022-06-07 08:01:25 +02:00
Martijn Braam bda72ea7fc device-pine64-pinebookpro: fix alsa ucm (MR 3203)
[ci:skip-build]: already built successfully in CI
2022-06-07 07:41:28 +02:00
Martijn Braam 1f3c16ca9c main/postmarketos-ui-gnome: autostart bluetooth service (MR 3202) 2022-06-06 16:27:44 +02:00
Minecrell b714ea8aef device-*: Drop file system modules from deviceinfo_modules_initfs (MR 3166)
File system modules are included by default in postmarketos-mkinitfs
and loaded dynamically when needed.

[ci:skip-build]: already built successfully in CI
2022-06-06 10:11:59 +02:00
Minecrell 16c9892a8f main/postmarketos-mkinitfs: load file system modules dynamically (MR 3166)
At the moment, mkinitfs loads some file system modules always (ext4),
some dynamically (brtfs) and some not at all (f2fs, vfat), expecting
them to be built-in.

To support generic kernels (e.g. from Alpine) properly, use the
partition type detection for both boot and root partition and always
load the necessary modules before mounting.
2022-06-06 10:11:51 +02:00
Minecrell a0a0b369d5 main/postmarketos-mkinitfs: include vfat in initfs by default (MR 3166)
An increasing number of devices relies on the vfat file system in the
initfs (e.g. for UEFI boot). Having to add all the modules required for
it to work to deviceinfo_modules_initfs is annoying and inconsistent,
in particular for the additionally chosen "nls" modules. Since we
already bundle several file systems by default, let's just add vfat
as well to simplify this.

Ideally mkinitfs should detect the file systems chosen at install time
in the future and only include the necessary modules, but until then
this just adds a couple of kilobytes to the initramfs.
2022-06-06 10:11:51 +02:00
Minecrell 0b5a4f9a44 main/postmarketos-mkinitfs: include crc32c_generic module by default (MR 3166)
CRC32C is required for ext4 to work, otherwise mounting the ext4 rootfs
fails with "Cannot load crc32c driver.".
2022-06-06 10:11:46 +02:00
Yassine Oudjana b47461fa75 community/linux-postmarketos-qcom-msm8996: upgrade to 5.18.1 (MR 3183)
[ci:skip-build]: already built successfully in CI
2022-06-06 09:41:48 +02:00
Dylan Van Assche 8848527c22 device-odroid-hc2: enable Samsung JPEG encoder (MR 3191)
Add missing firmware from linux-firmware-other to enable Samsung JPEG hardware encoder
[ci:skip-build]: already built successfully in CI
2022-06-06 09:38:08 +02:00
Dylan Van Assche 7a0e90c2fb linux-odroid-hc2: upgrade to 5.18.1 (MR 3191) 2022-06-06 09:37:48 +02:00
Clayton Craft abae34206b main/osk-sdl: upgrade to 0.67 (MR 3193) 2022-06-06 09:29:21 +02:00
Minecrell fa93f361b5 community/linux-postmarketos-qcom-msm8916: upgrade to 5.18 (MR 3189)
- Update to Linux 5.18
- Fix Bluetooth startup problem
- Upstreamed not so many patches this time
- Even more things I forgot than usual...

pmOS kernel config:
  - Enable BNEP, RFCOMM for extra BT features

Device changes:
  - samsung-j3ltetw/j5/j5x:
    - Now covered by a common device tree include
    - Add proper display driver (no brightness control yet)
    - Hall sensor (except j3ltetw)
    - Touchscreen (only j3ltetw and j5x, j5 is still WIP)
    - Sound/Modem for all of them

New devices:
  - samsung-grandmax (Samsung Galaxy Grand Max)
    - eMMC, SD card, USB, Buttons, WiFi/BT, Vibrator
    - Display
    - Touchscreen
    - Sensors (Accelerometer)
    - Sound/Modem
    - Battery status

[ci:skip-build]: already built successfully in CI
2022-06-06 09:11:12 +02:00
Anton Bambura 7db9fb51cd google-veyron-speedy: new device (MR 3187)
[ci:skip-build] Already built successfuly on CI in MR
2022-06-05 16:25:11 -04:00
interstellartaurusandJenneron 97ac1d9d68 google-veyron-minnie: new device (MR 3187)
Co-authored-by: Jenneron <jenneron@protonmail.com>
2022-06-05 16:23:21 -04:00
Anton Bambura f1ab8f6b2b firmware-google-veyron-brcm: new aport (MR 3187) 2022-06-05 16:23:21 -04:00
Anton Bambura f08c65aa4f google-veyron-jerry: depend on alsa-ucm-conf-google-veyron (MR 3187) 2022-06-05 16:23:21 -04:00
Anton Bambura 32d8b57634 temp/alsa-ucm-conf-google-veyron: new aport (MR 3187) 2022-06-05 16:23:21 -04:00
Anton Bambura 20ce68a947 google-veyron-jerry: add cros-ec to initfs modules (MR 3187) 2022-06-05 16:23:20 -04:00
Anton Bambura 0408920a34 linux-postmarketos-rockchip: rework armv7 config (MR 3187) 2022-06-05 16:23:20 -04:00
Sicelo A. Mhlongo ba3731956d nokia-n900: drop weston subpackage (MR 3174)
Drop the weston config, as it was for fbdev which has not been supported
in weston anymore for a while.

Remove Martijn as Co-Maintainer, as both previous maintainers of the
Nokia N900 stopped maintaining it when the device was briefly dropped
from community.

Co-Authored-By: Oliver Smith <ollieparanoid@postamrketos.org>
[ci:skip-build]: already built successfully in CI
2022-06-03 09:58:08 +02:00
Sicelo A. MhlongoandOliver Smith 90c71ce639 linux-nokia-n900: upgrade to 5.18.1 (MR 3174)
Drop 0002-ARM-dts-n900-remove-rx51-battery.patch, because this wasn't
needed for postmarketOS in the first place. The patch was created for
Maemo Leste as upower quirk initially and they don't carry it anymore
either.

Drop other patches, as they have been upstreamed.

Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2022-06-03 09:47:41 +02:00
Caleb Connolly e820b4171d community/linux-postmarketos-qcom-sdm845: upgrade to 5.18.0 (MR 3143)
[ci:skip-build]: already built successfully in CI
2022-06-03 09:24:27 +02:00
Pablo Correa Gómez 39607ed347 temp/gtk4.0: upgrade to 4.6.5 (MR 3185)
[ci:skip-build]: already built successfully in CI
2022-06-03 09:14:51 +02:00
Uli Roth 7b10f19396 device-xiaomi-beryllium: Fix touchscreen in initramfs for ebbg panels (MR 3184)
[ci:skip-build] already built successfully in CI
2022-06-02 16:09:02 -07:00
Clayton Craft 2dd5a5ab0f linux-postmarketos-rockchip: upgrade to 5.18 (MR 3170)
Dropped the usb-c patches, because it looks like usb-c charging works
now out of the box on 5.18, and that was the primary reason for me to
include those patches here originally.

[ci:skip-build] already built successfully in CI
2022-06-01 21:43:12 -07:00
jenneron 25b2afb40c google-veyron-jerry: add WiFi/BT firmware (MR 3173)
[ci:skip-build] already built successfully in CI
2022-06-01 21:38:44 -07:00
Newbyte 3346f16f6a samsung-expressatt: change name from S III to Express (MR 3171)
Samsung's website and others call this one Express rather than
S III.

See:

 - https://www.samsung.com/us/business/support/owners/product/galaxy-express-at-t/
 - https://www.gsmarena.com/samsung_galaxy_express_i437-5018.php

[ci:skip-build] already built successfully in CI
2022-06-01 21:35:15 -07:00
Newbyte 924b0c2529 lg-judyp: lge -> lg in dtb name (MR 3180)
In preparation for upstreaming the dts.

[ci:skip-build] already built successfully in CI
2022-06-01 21:31:45 -07:00
Newbyte e2d8e7ae75 lg-judyln: lge -> lg in dtb name (MR 3180)
In preparation for upstreaming the dts.

[ci:skip-build] already built successfully in CI
2022-06-01 21:31:45 -07:00
Newbyte d6380b5493 linux-postmarketos-stericsson: upgrade to 5.18.0 (MR 3172)
[ci:skip-build] already built successfully in CI
2022-06-01 21:25:29 -07:00
Richard Acayan 0a50707c6e google-sargo: new device (MR 3136)
[ci:skip-build] already built successfully in CI
2022-06-01 21:21:26 -07:00
Clayton Craft 879ffd1f54 linux-purism-librem5: upgrade to 5.17.9 (MR 3175)
Patches to work around modem instabilities are now in purism's fork, so
they were dropped.

I ran 'kconfig migrate' on the config, which is why there are a lot of
chnages there.

[ci:skip-build] already built successfully in CI
2022-06-01 21:17:13 -07:00
Anjandev Momi 620082575d add pinephone-keyboard config (MR 3175)
closes #1515

This patch HAS NOT been tested to see if it actually fixes #1515. I do
not have my pinephone keyboard with me and will not till v22.06 is out.
Can someone please test this patch before merging?

Note: this is being merged upstream but needs a refactor of the
Makefile. See:

https://lists.sr.ht/~mil/sxmo-devel/patches/32630

Since we cannot get the refactor of the Makefile out before the next
release, this is the next best thing

[ci:skip-build] already built successfully in CI.
2022-06-01 21:15:09 -07:00
Minecrell ac86b5e760 community/firmware-qcom-db410c: upgrade to 1036.1 (except -wcnss) (MR 3163)
While the newer "Linux board support package" has newer versions for
the "modem" and "venus" firmware, the "wcnss" firmware is actually
older than the one in the previous 1034.2.1 release. To avoid
downgrading it, it is still packaged from the old release in a separate
APKBUILD. (It is probably also better tested than the new release...)

[ci:skip-vercheck]: non-zero pkgrel is intended to match old package
[ci:skip-build] already built successfully in CI
2022-06-01 21:12:32 -07:00
blacksilver 757e0aeb83 samsung-xcover3lte: new device (MR 3139)
[ci:skip-build] already built successfully in CI
2022-06-01 21:04:25 -07:00
Luca Weiss f8e60aa5b3 linux-postmarketos-qcom-msm8974: upgrade to 5.18.1 (MR 3157)
[ci:skip-build] already built successfully in CI
2022-06-01 21:00:59 -07:00
Bart Ribbers adb4801c12 temp/gtk4.0: fix Plasma Mobile virtual keyboard not opening on GTK apps (MR 3181)
pmOS equivalent of https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/34970
2022-06-01 10:42:07 +02:00
Bart Ribbers 1b9afe9116 temp/gtk+3.0: fix Plasma Mobile virtual keyboard not opening on GTK apps (MR 3181)
pmOS equivalent of https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/34970
2022-06-01 10:41:58 +02:00
Johannes Marbach bfb933dec1 main/postmarketos-mkinitfs-hook-debug-shell: add libinput utils (MR 3169)
This adds the libinput program to allow to debug libinput device handling.

[ci:skip-build] already built successfully in CI
2022-05-31 08:36:05 -07:00
Newbyte ed0c3001eb device/community/u-boot-pinebookpro: add maintainer (MR 3135)
Copied from device-pine64-pinebookpro.

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2022-05-31 09:23:34 +02:00
Newbyte 6adf25277d device/community/u-boot-rockpro64: add maintainers (MR 3135)
Copied from device-pine64-rockpro64.
2022-05-31 09:23:24 +02:00
Newbyte 699252ad23 device/main/u-boot-pinephone: add maintainers (MR 3135)
Copied from device-pine64-pinephone.
2022-05-31 09:23:23 +02:00
Newbyte 48ed077169 device/testing/u-boot-lark-freeme-70-2s: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte 9e1c0fc692 device/testing/u-boot-goclever-gcta741l: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte 81faa9986b device/testing/u-boot-rock64: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte a84f8e3e08 device/testing/u-boot-peach-pit: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte 99dc414f21 device/testing/u-boot-peach-pi: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte a7ae892741 device/testing/starqltechn: move from temp (MR 3135) 2022-05-31 09:23:23 +02:00
Newbyte b2efb3916d device/testing/u-boot-snow: move from temp (MR 3135) 2022-05-31 09:23:22 +02:00
Newbyte 512c02b179 device/community/u-boot-pinebookpro: move from temp (MR 3135) 2022-05-31 09:23:22 +02:00
Newbyte 40e937a459 device/community/u-boot-rockpro64: move from temp (MR 3135) 2022-05-31 09:23:22 +02:00
Newbyte 981db6c080 device/main/u-boot-pinephone: move from temp (MR 3135)
Let's clean up temp and move these not-so-temporary U-Boot forks to
the appropriate device subdirectory instead.
2022-05-31 09:23:12 +02:00
Newbyte 538129be5b linux-postmarketos-exynos4: upgrade to 5.18.0 (MR 3168)
Dropped patch was upstreamed.

[ci:skip-build] Already built successfuly on CI in MR
2022-05-30 19:06:29 +02:00
Johannes Marbach aa0f96edb9 main/postmarketos-mkinitfs: Correctly set up udev (MR 3146)
This replaces the previous `udevadm test` hack with a combination of
`udevd`, `udevadm trigger` and `udevadm settle` in order to coldplug all
available devices and make them available for use via libinput / unl0kr.

Relates to: #1411

[ci:skip-build] already built successfully in CI
2022-05-29 12:03:04 -07:00
Luca Weiss 9a18e34f33 device-fairphone-fp2: add gpu flag and sim fix (MR 3158)
GPU has been supported for a while in the mainline-ish kernel, so let
pmbootstrap show UIs like Phosh.

And msm-modem-uim-selection will setup the modem well enough so at least
the primary SIM should work out of the box.

[ci:skip-build] already built successfully in CI
2022-05-29 10:51:48 -07:00
Andreas Kemnade 84b83ddf83 linux-kobo-clara-mainline: upgrade to 5.17.9 (MR 3142)
and while at it, also adding a maintainer

[ci:skip-build] Already built successfuly on CI in MR
2022-05-29 17:57:22 +02:00
magnouvean 16c6179977 motorola-lux: changed arch from armhf to armv7 (MR 3145)
Note from merger (Newbyte):
While this device is aarch64, switching to aarch64 comes with issues
and would need more work than a vendor kernel like this is worth.
Use armv7 for now and hopefully mainline it in the future and switch
to aarch64 then.

[ci:skip-build] Already built successfuly on CI in MR
2022-05-29 17:53:42 +02:00
Newbyte c528aba4ff main/postmarketos-ui-phosh: add karlender to _pmb_recommends (MR 3141)
Karlender fits well into GNOME and fills the lack of a calendar app
in Phosh.

[ci:skip-vercheck]
2022-05-27 19:56:58 +02:00
Oliver Smith cecfb418c0 non-free/sgx-ddk-um: remove (MR 3162)
Only makes sense with mesa-pvr-dri-classic, which was dropped in the
previous commit. See the reasoning there.
2022-05-27 09:22:07 +02:00
Oliver Smith 023f8cc1c3 main/mesa-pvr-dri-classic: remove (MR 3162)
We decided against pvr hacks, quoting craftyguy from issue 1316:

> We discussed this in our team meeting, and ultimately decided that
> supporting pvr in pmaports/pmOS has many of the same problems that
> we saw when trying to support hallium/libhybris, something we
> decided against. For much of the same reasons, we've decided that we
> want to avoid adding the proprietary userspace components required to
> support pvr in pmOS.

No device port is using this package anymore, but we forgot to remove
it. After branching v22.06 I realized that it doesn't build anymore
and as stated in MR 2702, it's unmaintained.

Related: https://builds.sr.ht/~postmarketos/job/767700
2022-05-27 09:11:13 +02:00
Luca Weiss 96f2ad2fac firmware-qcom-adreno: upgrade to 20220509, add a330 & a420 (MR 3149)
The new linux-firmware release contains A330 and A420 firmware, so add
subpackages for those.

[ci:skip-build]: already built successfully in CI
2022-05-25 09:51:07 +02:00
Luca Weiss 7fd08e8693 device/testing/firmware-qcom-adreno-extra: remove (MR 3149)
Adreno 330 and 420 firmware is now part of upstream linux-firmware, and
Adreno 225 subpackage is not used.

So let's remove this package.
2022-05-25 09:50:51 +02:00
Luca Weiss 2d907e4d09 device-sony-sirius: remove linux-firmware-qcom dependency (MR 3140)
Conflicts with firmware-qcom-adreno-a330 and shouldn't be necessary.

[ci:skip-build]: already built successfully in CI
2022-05-25 09:45:58 +02:00
Newbyte fb881276df device-lg-hammerhead: remove linux-firmware-qcom dependency (MR 3140)
Conflicts with firmware-qcom-adreno-a330 and shouldn't be necessary.

See https://gitlab.com/postmarketOS/pmaports/-/issues/1530
2022-05-25 09:45:36 +02:00
Newbyte c4838be834 temp/evince: fix build with Meson 0.60 (MR 3155)
[ci:skip-build]: already built successfully in CI
2022-05-25 09:17:02 +02:00
Luca Weiss b265acd927 cross/gcc4-armv7: regenerate to fix build (MR 3156)
[ci:skip-build]: already built successfully in CI
2022-05-25 09:13:50 +02:00
Luca Weiss e0921b64c3 cross/gcc4-aarch64: regenerate to fix build (MR 3156) 2022-05-25 08:35:45 +02:00
Luca Weiss f8b96744fa temp/gtk+3.0: fix build (MR 3154)
Fix the build failure when built with newer gcc:

../gtk/gtktextsegment.c: In function '_gtk_toggle_segment_new':
../gtk/gtktextsegment.c:433:6: error: array subscript 'GtkTextLineSegment {aka struct _GtkTextLineSegment}[0]' is partly outside array bounds of 'unsigned char[40]' [-Werror=array-bounds]
  433 |   seg->type = on ? &gtk_text_toggle_on_type : &gtk_text_toggle_off_type;
      |      ^~

Patch source: https://gitlab.gnome.org/GNOME/gtk/-/commit/b4e110920aa18e6cc149ccbbfcd90b5143526e6d
2022-05-24 23:50:05 +02:00
Luca Weiss d23fd662f2 main/gcc6: fix build (MR 3153)
Fix the build failure when built with newer gcc:

/home/pmos/build/src/gcc-6.4.0/gcc/config/i386/i386.c: In function 'int function_arg_advance_32(CUMULATIVE_ARGS*, machine_mode, const_tree, long int, long int)':
/home/pmos/build/src/gcc-6.4.0/gcc/config/i386/i386.c:8743:18: error: converting to 'bool' from 'std::nullptr_t' requires direct-initialization [-fpermissive]
 8743 |   bool error_p = NULL;
      |                  ^~~~

Patch source: https://svnweb.freebsd.org/ports/head/lang/gcc7/files/patch-gcc_config_i386_i386.c?view=markup&pathrev=545751
2022-05-24 23:48:56 +02:00
Luca Weiss 19809ae262 main/gcc4: fix build (MR 3152)
Fix the build failure when built with newer gcc:

/home/pmos/build/src/gcc-4.9.2/gcc/reload1.c:89:24: error: use of an operand of type 'bool' in 'operator++' is forbidden in C++17
   89 |   (this_target_reload->x_spill_indirect_levels)
      |   ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/home/pmos/build/src/gcc-4.9.2/gcc/reload1.c:444:7: note: in expansion of macro 'spill_indirect_levels'
  444 |       spill_indirect_levels++;
      |       ^~~~~~~~~~~~~~~~~~~~~

Patch source: https://github.com/ChrisMacGregor/esp-open-sdk/blob/master/1001-fix-reload1-compile-error.patch
2022-05-24 23:05:24 +02:00
Luca Weiss f41e08f9e9 temp/android-tools: remove (MR 3151)
The bug that caused us to fork this package has been resolved upstream.

Tested by downgrading FP2 bootloader to a version susceptible to this
bug:

~ # ./fastboot-31.0.0p1-r2 flash boot boot.img
fastboot: error: Couldn't parse partition size '0x'.
~ # ./fastboot-31.0.3p1-r4 flash boot boot.img
Sending 'boot' (11666 KB)                          OKAY [  0.367s]
Writing 'boot'                                     OKAY [  0.276s]
Finished. Total time: 0.670s
2022-05-24 21:52:30 +02:00
Bart Ribbers 3e8e7b9c40 channels.cfg: add initial v22.06 branch (MR 3150) 2022-05-24 09:30:30 +02:00
Oliver Smith 6375f8b134 cross/binutils-*: upgrade to 2.38-r2 2022-05-23 08:05:28 +02:00
Pablo Correa Gómez 1f4d5ba114 temp/gtk4.0: upgrade to 4.6.4 (MR 3148)
[ci:skip-build]: already built successfully in CI
2022-05-23 08:00:50 +02:00
InsanePrawn 43af024596 device/community: sdm845-{enchilada,fajita,beryllium,axolotl}: add appropiate charging drivers (MR 3127) 2022-05-19 02:50:22 +02:00
Elagost f5b0a91d6a pine64-pinephone: fix pinephone keyboard layout (MR 3133) 2022-05-18 10:45:07 +02:00
Elagost c352711162 pine64-pinephonepro: fix pinephone keyboard layout (MR 3133) 2022-05-18 10:45:07 +02:00
ElagostandOliver Smith f0509a9a19 temp/xkeyboard-config: upgrade to 2.35.1 (MR 3133)
Upgrade to latest version and add a backport of the PinePhone keyboard
patch by Undef, which is already merged to upstream master and therefore
will be in the next version.

Adjust the source URL to the same that is in the Alpine APKBUILD.

Keep the RX-51 (Nokia N900) patches for now, but it would be good if we
could upstream/drop them in order to use Alpine's package again in the
near future. Created pmaports issue 1521 for that.

Related: pmaports issue 1515
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2022-05-18 10:45:03 +02:00
Alexander Martinz b4ac329482 shift-axolotl: add support for dynamic partitions (MR 3137)
For more information, see this wiki entry:
  - https://wiki.postmarketos.org/wiki/Android_dynamic_partitions

Change-Id: Iaf4ba715bc7226d43e05213cd5bd6ce82d327b7e
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
2022-05-17 20:28:07 +02:00
Jianhua Lu 3629ac421a device-xiaomi-elish: enable display and gpu (MR 3138)
Signed-off-by: Jianhua Lu <lujianhua000@gmail.com>

[ci:skip-build] Already built successfuly on CI in MR
2022-05-17 15:37:25 +02:00
Jianhua Lu a2d8eb9aa1 firmware-xiaomi-elish: add adreno 650 firmware (MR 3138)
Signed-off-by: Jianhua Lu <lujianhua000@gmail.com>
2022-05-17 15:37:15 +02:00
Jianhua Lu 2b973b639b linux-postmarketos-qcom-sm8250: upgrade to 5.18.0_rc6 (MR 3138)
Enable display and gpu.

Signed-off-by: Jianhua Lu <lujianhua000@gmail.com>
2022-05-17 15:37:14 +02:00
Raymond Hackley f3cd6ea0ee device/*: fix phosh startup due to new config syntax (MR 3117)
[ci:ignore-count]
2022-05-15 16:52:04 +02:00
Bart Ribbers 86af0bb463 shift-axolotl: move to community (MR 3119)
It checks all the boxes as defined in https://wiki.postmarketos.org/wiki/Device_categorization

[ci:skip-vercheck]
2022-05-14 16:12:19 +02:00
AlecJY 7f88a60024 xiaomi-natrium: new device (MR 3128)
[ci:skip-build]: already built successfully in CI
2022-05-13 09:59:46 +02:00
Martijn Braam fbaa5168d7 main/postmarketos-tweaks: upgrade to 0.12.0 (MR 3129)
[ci:skip-build]: already built successfully in CI
2022-05-13 09:46:45 +02:00
Pablo Correa Gómez 72075de4e0 temp/gtk4.0: fork from alpine to fix bug in PinePhone (MR 3122)
Add hack to prevent GTK4 apps to be unusable in the PinePhone.

Fixes #1510
Upstream issue https://gitlab.gnome.org/GNOME/gtk/-/issues/4763

A good solution will take a bit more time but is an on-going process
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4687

[ci:skip-build]: already built successfully in CI
2022-05-13 08:59:39 +02:00
Antoni Aloy Torrens e822fde276 community/linux-samsung-espresso3g: Fix WiFi reboot issue (MR 3130)
- Patch from Robert Nelson and Hansem Ro.

- Based on the work of Hansem Ro,
  who owns another device, the First Generation Kindle Fire,
  which has similar specifications as the Samsung Galaxy Tab 2 7.0.
2022-05-12 16:30:11 +01:00
Richard Acayan 36ff86f895 main/postmarketos-mkinitfs: dynamic partitioning support (MR 3088) 2022-05-12 09:43:57 +02:00
Richard Acayan 2a120bd2f6 main/make-dynpart-mappings: new package (MR 3088) 2022-05-12 09:43:53 +02:00
Elagost 64ef5024d0 device-pine64-pinephone: deviceinfo: change kb151 -> pinephone_keyboard (MR 3124) 2022-05-11 12:16:51 +00:00
Yassine Oudjana 43f309f5ed xiaomi-scorpio: change device tree name (MR 3126)
The device tree in the kernel is now named msm8996pro-xiaomi-scorpio.dts.
[ci:skip-build]: already built successfully in CI
2022-05-11 09:33:15 +02:00
Yassine Oudjana 02a1a8a20b community/linux-postmarketos-qcom-msm8996: upgrade to 5.17.6 (MR 3126)
- Add support for Xiaomi Mi 5s Plus (xiaomi-natrium)
- Update charger driver
- Fix race condition in qcom-ngd-ctrl probe
2022-05-11 09:32:56 +02:00
Pablo Correa Gómez 131b686bf6 temp/gnome-software: upgrade to 41.5 2022-05-10 15:02:55 +02:00
Pablo Correa Gómez b630c1a3d1 temp/gnome-software-plugin-apk: upgrade to v0.10.0 2022-05-10 15:02:55 +02:00
Oliver Smith 06d57aef2d cross/busybox-static-*: upgrade to 1.35.0-r13 2022-05-10 09:40:53 +02:00
Newbyte b3ffa2191c samsung-m3: change names in UCM (MR 3120)
This makes the names match the recommended names in the ALSA UCM
header:
https://github.com/alsa-project/alsa-lib/blob/f1fa7ea07768bd5dbe15462ef734b28380a12a43/include/use-case.h#L112-L144
2022-05-08 17:26:22 +02:00
Newbyte 0a90f9d777 samsung-m0: change names in UCM (MR 3120)
This makes the names match the recommended names in the ALSA UCM
header:
https://github.com/alsa-project/alsa-lib/blob/f1fa7ea07768bd5dbe15462ef734b28380a12a43/include/use-case.h#L112-L144
2022-05-08 17:26:21 +02:00
Oliver Smith 7a4ea7dd4c cross/busybox-static-*: upgrade to 1.35.0-r12 2022-05-08 17:15:28 +02:00
Bobby The Builder e2f31a3d52 linux-postmarketos-allwinner: upgrade to 5.17.5 (MR 3108)
[ci:skip-build]: already built successfully in CI
2022-05-08 17:02:42 +02:00
Bobby The Builder 0389d102fb linux-postmarketos-allwinner: switch back PP Keyboard driver as module (MR 3108) 2022-05-08 17:02:27 +02:00
Newbyte 0ecbe662c7 soc-samsung-exynos4412: add myself as maintainer (MR 3100)
[ci:skip-vercheck]: Moving between categories doesn't require changing
pkgrel.
[ci:skip-build]: Already built successfuly on CI in MR
2022-05-06 18:52:01 +02:00
Newbyte 84deb8cc6e samsung-m0: move to community (MR 3100) 2022-05-06 18:51:31 +02:00
Newbyte aac3347c1c linux-postmarketos-exynos4: move to community (MR 3100) 2022-05-06 18:51:30 +02:00
Newbyte 45ce85d198 soc-samsung-exynos4412: move to community (MR 3100) 2022-05-06 18:51:30 +02:00
Newbyte 72d5076fad firmware-samsung-midas: move to community (MR 3100) 2022-05-06 18:51:30 +02:00
Alexander Martinz 1038e2670a community/linux-postmarketos-qcom-sdm845: upgrade to 5.17.5 (MR 3118)
For a merge list, please see the merge commits:
  - 5.17.1 - (https://gitlab.com/sdm845-mainline/linux/-/commit/6151d07534a46eee9ddfbbaedd756a4752e9e6c2)
  - 5.17.2 - (https://gitlab.com/sdm845-mainline/linux/-/commit/c8e2541a5370c981ad8f6949761f7be3848ea863)
  - 5.17.3 - (https://gitlab.com/sdm845-mainline/linux/-/commit/f7006752c1317055acf3a56a4fa8fb5f189c2eb4)
  - 5.17.4 - (https://gitlab.com/sdm845-mainline/linux/-/commit/ee8fb89013f6772493eb7be5a9d361dbcd69b179)
  - 5.17.5 - (https://gitlab.com/sdm845-mainline/linux/-/commit/b33c0511c507e34750d3cb6c1ca3f91e0f0249bc)

Change-Id: Ic1ec5571bd981aa6c24c619aac24ecd2a941d604
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build]: already built successfully in CI
2022-05-06 09:01:18 +02:00
Newbyte 3786a769fc linux-postmarketos-exynos4: upgrade to 5.17.4 (MR 3096)
[ci:skip-build]: already built successfully in CI
2022-05-06 08:58:18 +02:00
Andreas Kemnade f5a4a663e0 tolino-shine3: new device (MR 2909)
Basic support for the Tolino Shine 3 ebook reader. It is the same board as
the Kobo Clara HD.
Waveform handling shares the same oddities as for the Kobo Clara HD
but the file epdc_E060SCM.fw from the IMX6SL BSP from NXP does also work.
The existing waveform from SD card is used.

Preferred way to install is to clone the internal SD, keeping the original
as a backup, install on that clone.

U-Boot is a more recent one than the factory u-boot, so devicetrees are nicely
supported. Kernel is the near mainline kernel also used by the Kobo Clara HD.
2022-05-05 21:18:08 +02:00
Raymond Hackley b334319ede samsung-a7: add missing subpackage phosh (MR 3116)
Add missing subpackage phosh to fix scale with phoc.ini
2022-05-05 18:48:52 +02:00
mint 22e6d12c84 linux-postmarketos-qcom-sm6125: new aport (MR 3105)
This commit adds a package for the sm6125-mainline kernel fork. As of
now it uses kernel version 5.18_rc4, pulled from torvalds/linux.
You can find the repository on https://gitlab.com/sm6125-mainline/linux

[ci:skip-build] Already built successfuly on CI in MR
2022-05-05 11:09:47 +02:00
mint de6de0bdde xiaomi-laurel: new device (Xiaomi Mi A3) (MR 3105)
A quirky device, the last Mi Ax phone in the line. - Powered by
Snapdragon 665 (SM6125, codenamed Trinket), 8 cores, 4 clocked a 2.0
GHz and 4 more clocked at 1.8 GHz. 4-6 GB of RAM, 64-128 GB of UFS
storage, 720p 6.09" AMOLED display, a 48 Mpx quad-bayer camera (plus two
more on the back and one on the front) and an under display fingerprint
sensor which may be impossible to ever implement... *sigh*

Mainline kernel as of now is pretty minimal (framebuffer display, USB
networking). No UFS support (yet!).
2022-05-05 11:09:34 +02:00
André Apitzsch a7e672fc05 samsung-codina: switch to mainline (MR 3104)
[ci:skip-build] Already built successfuly on CI in MR
2022-05-05 08:44:52 +02:00
André Apitzsch f33ade5ae6 linux-postmarketos-stericsson: upgrade to 5.18-rc4 (MR 3104)
Also add hardware enabled in arch/arm/configs/u8500_defconfig
2022-05-05 08:44:05 +02:00
alikates af54978d9e main/lk2nd-msm8953: typo in url (MR 3113)
[ci:skip-build]: already built successfully in CI
2022-05-05 08:19:47 +02:00
Newbyte 819620d7aa main/postmarketos-ui-*: add explicit networkmanager-openrc dependency (MR 3111)
This should be reverted when this Alpine issue has been closed:
https://gitlab.alpinelinux.org/alpine/aports/-/issues/13778

sxmo-common already had this for some reason.

[ci:ignore-count]
[ci:skip-build] Already built successfuly on CI in MR
2022-05-04 17:09:41 +02:00
Newbyte 10de8847fd main/postmarketos-mkinitfs: provide mkinitfs 3.6.0
linux-lts started requiring mkinitfs version 3.6.0 5 days ago as of
writing, and this package only provides mkinitfs 0.0.1, so bump
this to fix installation.

See https://gitlab.alpinelinux.org/alpine/aports/-/commit/f2ae372e8b25366af33550980fa9e0f98d0d2c75

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/1517
2022-05-04 09:33:23 +02:00
Clayton Craft 440aa4ede3 main/postmarketos-ui-*: add networkmanager subpackages for wifi, wwan (MR 3110)
the networkmanager package in alpine was refactored and the wifi and
wwan components were split off into separate subpackages. without these,
wifi and wwan networking are broken.

also see: aports 830af82c6c

[ci:ignore-count]
2022-05-04 07:23:03 +02:00
Bobby The Builder a5b16897c1 linux-postmarketos-allwinner: upgrade to 5.17.4_git20220427 (MR 3097)
Disable options
-CONFIG_NET_VENDOR_ENGLEDER
-CONFIG_NET_VENDOR_VERTEXCOM
-CONFIG_SURFACE_PLATFORM

Enable options
+CONFIG_KEYBOARD_PINEPHONE

Note by ollieparanoid: this fixes the suspend to ram issue, pma 1478
[ci:skip-build]: already built successfully in CI
2022-05-01 23:38:22 +02:00
Gareth Peoples ee7e523e61 nokia-panther: new device (Nokia 4.2) (MR 3092) 2022-05-01 16:08:36 +02:00
Petr Vorel 891a4cb5a1 linux-postmarketos-qcom-msm8994: upgrade to 5.17.2 (MR 3073)
patches added are (not all, just some) fixes and feature enhancements
for msm8992 and msm8994 from qcom mainline maintainer tree [1] for v5.18
and v5.19.

Changes:
* update deviceinfo_dtb_mainline for device-huawei-angler and
  device-lg-bullhead.
* add sdhc1 support for device-huawei-angler

[1] https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>

[ci:skip-build] Already built successfully in CI in MR
2022-05-01 12:26:18 +03:00
Stacy Harper 9a43f57791 main/postmarketos-ui-sxmo-de-sway: upgrade to 1.9.0 (MR 3101)
[ci:skip-build] already built successfully in CI
2022-04-30 19:36:11 -07:00
Stacy Harper da0c3fb72c main/postmarketos-ui-sxmo-de-dwm: upgrade to 1.9.0 (MR 3101)
[ci:skip-build] already built successfully in CI
2022-04-30 19:36:07 -07:00
Stacy Harper 25a4101e32 main/sxmo-common: upgrade to 1.9.0 (MR 3101)
[ci:skip-build] already built successfully in CI
2022-04-30 19:35:50 -07:00
Newbyte a57701d131 main/postmarketos-upgrade-kernel: fix custom boot partition being ignored (MR 3095)
This code wasn't actually working for me on samsung-m0, so I
investigated and came up with that this fixes it. I'm not sure if you
are supposed to be able to omit the deviceinfo_ prefix? Either way, it
doesn't seem to work, so let's fix it.

Fixes fad7c7ef8e
2022-04-29 08:36:26 +02:00
Newbyte fbb170674a samsung-m0: enable automatic kernel upgrades (MR 3095) 2022-04-29 08:36:21 +02:00
Bastindo 3511403475 huawei-u8825: new device (MR 3087)
[ci:skip-build] Already built successfuly on CI in MR
2022-04-29 08:27:32 +02:00
Oliver Smith 81edc0a4d2 temp/dino: rebuild against new libicuuc.so (MR 3093)
Fix for:
  missing depend(s): so:libicuuc.so.70

While at it, I've checked if this is the most recent version of this
mobile fork, and what the upstream stance on this is. Meanwhile there's
a feature branch in the official dino.git repository, so I've adjusted
the APKBUILD. The commit is still the same, and apparently upstream
won't merge it, but rather switch the whole application to libadwaita.

Related: https://github.com/dino/dino/issues/178
Related: https://github.com/dino/dino/issues/1182

[ci:skip-build] already built successfully in CI
2022-04-27 09:48:56 -07:00
Pablo Correa Gómez bf20cfc49f temp/epiphany: drop (MR 3098)
Helps #1479

The Disable-fullscreen patch from Purism is in principle useful
in mobile, as exiting fullscreen is at least troublesome. However,
the patch has not been upstreamed and, although we could carry it
in alpine for the 42 cycle, the 43 cycle will come with GTK4 support
and the patch will not rebase easily. Therefore, instead of waiting
6 months to drop, lets just drop it now.

[ci:skip-build] already built successfully in CI
2022-04-27 09:47:08 -07:00
iAboothahir 80793cb259 asus-x00td: fix deviceinfo (MR 3084)
* set true for external_storage and gpu_accelerated
* add panel-simple and msm modules to initfs

[ci:skip-build] Already built fine on CI in MR
2022-04-27 15:26:59 +03:00
iAboothahir 93e98706dd linux-postmarketos-qcom-sdm660: upgrade to 5.17.0 (MR 3084) 2022-04-27 15:26:15 +03:00
Bobby The Builder 422d14823a main/linux-postmarketos-allwinner: enable TCPMSS match functionality (MR 3039) (MR 3086)
Re-applied after downgrading to 5.16.4. [ci:skip-vercheck].
2022-04-24 14:20:06 +02:00
Oliver Smith 1cc273fead linux-postmarketos-allwinner: patch dirtypipe (MR 3086) 2022-04-24 14:20:06 +02:00
Oliver Smith 207e9fa1b0 linux-postmarketos-allwinner: downgrade to 5.16.4_git20220131 (MR 3086)
Downgrade to avoid the suspend issues we've been seeing for the past three
weeks. This reverts commit 3d4d3558b7
("linux-postmarketos-allwinner: upgrade to 5.17.0_git20220313 (MR 3001)").

Related: pmaports issue 1478
2022-04-24 14:20:05 +02:00
Oliver Smith 8271ec7b87 Revert "main/linux-postmarketos-allwinner: enable TCPMSS match functionality (MR 3039)" (MR 3086)
Reverting this to cleanly revert to 5.16.4_git20220131 in the next
patch. This reverts commit 56183bcae3.
2022-04-24 14:19:59 +02:00
Oliver Smith 885ee925e5 cross/busybox-static-*: upgrade to 1.35.0-r10
The dl-4 Alpine mirror isn't up-to-date, so I've used:
  pmb.config.aportgen_mirror_alpine = "http://uk.alpinelinux.org/alpine/"

Related: https://gitlab.alpinelinux.org/alpine/infra/infra/-/issues/10756
2022-04-22 09:26:20 +02:00
Raymond Hackley a4b90a31e2 samsung-j5: Add panel-simple and msm modules to initfs (MR 3078)
[ci:skip-build] already built successfully in CI
2022-04-21 11:31:41 -07:00
Pablo Correa Gómez 85cb669587 main/postmarketos-ui-phosh: remove xwayland from pmb_recommends (MR 3083)
XWayland is a phosh dependency. Having it in pmb_recommends adds
nothing and can be confusing, since power users would expect that
removing it from world would remove the package. That will never
be the case since phosh depends on it.

[ci:skip-build] already built successfully in CI
2022-04-21 11:28:59 -07:00
Clayton Craft 45939e84f7 temp/megapixels-purism: ugprade to 0.19 (MR 3082)
Requires the 5.17 purism librem 5 kernel

[ci:skip-build] Already built successfuly on CI in MR
2022-04-21 10:40:45 +02:00
Clayton Craft fbbc1e2683 linux-purism-librem5: upgrade to 5.17.2pureos1 (MR 3082)
- Latest revision of the modem PM issue workaround patches from Purism
- Rebased config on Purism's defconfig
2022-04-21 10:40:35 +02:00
Newbyte 2996aad422 linux-postmarketos-stericsson: enable CPU frequency scaling (MR 3060)
[ci:skip-build] Already built successfuly on CI in MR
2022-04-21 10:32:04 +02:00
Newbyte 852017d19d linux-postmarketos-stericsson: upgrade to 5.18-rc1 (MR 3060) 2022-04-21 10:31:47 +02:00
Oliver Smith f940819e64 CI: wiki: add note about renamed devices (MR 3079)
Ask people to add renamed devices to https://postmarketos.org/renamed
The CI script already downloads this page and ignores missing devices
that are on this list of renamed devices. This is important, so when
creating a MR that renames a device, and already renaming the device in
the wiki, other CI jobs will not start failing until the MR is merged.
2022-04-21 09:45:18 +02:00
Maxim Kutnij ffeeba88a5 samsung-t03g: switch to mainline and armv7 (MR 3077) 2022-04-20 07:12:02 +03:00
Maxim Kutnij 47158e31f8 linux-samsung-n7100: move downstream kernel to unmaintained (MR 3077) 2022-04-20 07:11:36 +03:00
Enrico Lumetti af30557f7a pmaports.cfg: bump min pmb version to 1.43.0 (MR 3056)
This is needed to support the `flash_sparse_samsung_format` deviceinfo
proprety

[ci:skip-build]: already built successfully in CI
2022-04-19 09:18:19 +02:00
Enrico Lumetti 6fb12b2e3a samsung-n1awifi: patch sparse image to work with heimdall (MR 3056) 2022-04-19 09:17:51 +02:00
Enrico Lumetti a0aa47e5a0 samsung-n1awifi: Use deviceinfo_flash_sparse (MR 3056)
This is still not enough for heimdall to succeed in flashing because
of Samsung's custom sparse image format.
2022-04-19 09:17:45 +02:00
Jakob Hauser 49023c3f33 main/postmarketos-ui-{mate,xfce4}: add blueman (MR 3075)
Adding bluez to "depends" in order to enable bluetooth service (doesn't
work on packages in "_pmb_recommends").

Adding blueman to "_pmb_recommends" to allow uninstallation by the
user.

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/1465
2022-04-18 14:37:34 +02:00
Raymond Hackley 5431f520d4 main/postmarketos-base-ui-gnome: depend on networkmanager, nmcli and nmtui (MR 3076)
nmcli and nmtui are still missing in Gnome.
Move NetworkManager dependencies from postmarketos-ui-phosh, and phosh
will get them when depending on postmarketos-ui-gnome.
2022-04-18 14:27:55 +02:00
Raymond Hackley 49c6f0ce39 samsung-fortunaltezt: new device (MR 3026) 2022-04-16 16:54:18 +03:00
Siddharth Manthan 8746bc8de7 samsung-fortuna3g: new device (MR 3026) 2022-04-16 16:54:08 +03:00
Siddharth Manthan ab1fd4e5d0 samsung-gprimeltecan: new device (MR 3026) 2022-04-16 16:53:55 +03:00
Raymond Hackley c46f7b9187 firmware-samsung-gprimeltexx: new package (MR 3026) 2022-04-16 16:53:36 +03:00
haroldsoixante f93a733ace samsung-gprimeltexx: new device (MR 3026) 2022-04-16 16:52:31 +03:00
Raymond Hackley 9ba72cea2b samsung-gprime: remove device (MR 3026) 2022-04-16 16:52:22 +03:00
Antoine Fontaine 0e349cd4c8 wiko-lenny2: remove maintainership (MR 3069) 2022-04-16 07:09:05 +03:00
Newbyte 58488d02de temp/gnome-contacts: drop (MR 3072)
See https://gitlab.com/postmarketOS/pmaports/issues/1479
2022-04-13 15:43:02 +02:00
Newbyte 664c7ac2e7 temp/gnome-control-center: drop (MR 3072)
See https://gitlab.com/postmarketOS/pmaports/issues/1479
2022-04-13 15:43:02 +02:00
Anjandev Momi 5030271e74 main/sxmo-common: add xdg-user-dirs dep (MR 3071)
This patch is meant to support https://git.sr.ht/~mil/sxmo-utils/commit/46cc06b

Which in turn should fix https://todo.sr.ht/~mil/sxmo-tickets/350 and
https://gitlab.com/postmarketOS/megapixels/-/issues/46

This patch is not in the current release of sxmo but I am adding it so
that when 1.9.0 is released, we dont have to deal with this bug again.
2022-04-13 09:03:46 +02:00
Clayton Craft 36586e6107 cross/gcc-*: upgrade to 11.2.1_git20220219-r2 2022-04-11 16:29:06 -07:00
Jakob Hauser f6c2712322 main/postmarketos-ui-i3wm|mate|xfce4: remove deinstall scripts (MR 3064)
postmarketos-ui-i3wm|mate.post-deinstall:
Contains removal of file "61-autologin.conf"|"65-autologin.conf".
However, this file is removed by apk automatically unpon
deinstallation.

postmarketos-ui-i3wm|mate|xfce4.pre-deinstall:
Contains disabling service "lightdm". Removing display manager service
upon deinstallation isn't done by other UIs either. It can lead to
unexpected behaviour when installing another UI using lightdm and then
uninstall MATE UI.

Additionally
postmarketos-ui-i3wm.post-upgrade:
Removed postmarketos-ui-i3wm.post-upgrade and replaced it with a link to
postmarketos-ui-i3wm.post-install, like it's done in MATE and Xfce4.
2022-04-10 15:53:52 +01:00
Enrico Lumetti cb31d2f496 main/sm-sparse-image-tool: new package (MR 3067) 2022-04-10 15:31:17 +01:00
Oliver Smith eb4a080901 cross/musl-*: upgrade to 1.2.3-r0 2022-04-10 14:32:33 +02:00
Oliver Smith 9b5e57e591 cross/busybox-static-*: upgrade to 1.35.0-r8 2022-04-10 14:32:28 +02:00
Clayton Craft f5c79dd7b3 device-purism-librem5: add fw to nonfree subpackage, re-enable modem PM (MR 3066) 2022-04-09 13:59:50 +03:00
Clayton Craft e8a268df68 device/main/firmware-brcm43752: new aport (MR 3066)
Firmware for the SparkLAN/broadcom wifi module that can be installed in
the librem 5
2022-04-09 13:59:48 +03:00
Clayton Craft 56b346b452 main/linux-purism-librem5: upgrade to 5.16.18 (MR 3066)
- Enable Broadcom and Marvel wifi drivers (cards exist that can be
  installed in the L5)

- Add workaround that helps with modem disappearing when modem PM is
  enabled. Doesn't solve it completely, but it makes the problem much
  less frequent.
2022-04-09 13:59:46 +03:00
Jack Knightly 04383c3ae7 samsung-{m0,m3,t0lte}: add soc-samsung-exynos4412 haptics subpackage (MR 3062) 2022-04-07 01:50:24 +03:00
Jack Knightly 327fa42814 soc-samsung-exynos4412: feedbackd rules for vibration (MR 3062) 2022-04-07 01:50:09 +03:00
Ignacy Kuchciński 55fb881c42 samsung-serranolte: fix zero host MAC (MR 3057)
[ci:skip-build] Already built fine on CI in MR
2022-04-07 00:22:55 +03:00
Clayton Craft 17beef02f2 device/main/u-boot-librem5: disable installing u-boot on the devkit (MR 2983)
This u-boot version doesn't support the devkit yet. Last I heard, Purism
plans to add the config back in after porting it from the old u-boot.

If anyone needs this (probably no one besides me?), the old u-boot can
be built locally from an earlier version of this package.
2022-04-06 09:11:56 +02:00
Bart Ribbers e8fdf51d1b device/main/u-boot-librem5: move from temp (MR 2983) 2022-04-06 09:11:56 +02:00
Clayton Craft d2ff4c16f2 device-purism-librem5: update boot.scr and uboot flash script (MR 2983)
- updates the boot.scr to support SD card boot

- updates the uboot flash script to support the latest librem5-uboot
  package changes
2022-04-06 09:11:56 +02:00
Clayton CraftandBart Ribbers 2f78939f94 temp/u-boot-librem5: upgrade to 2022.04_rc1_git20220214 (MR 2983)
Updates the u-boot on the Librem 5 to a branch that is much closer to
mainline u-boot.

- adds support for booting from SD card to the u-boot boot script
- m4 is no longer necessary, at least not right now (may be re-added by
  purism in the future for supporting some low power modes)
- adds a patch to enable u-boot console on uart 4 (on the m.2 connector)
  for the debug board
- drops the patch to enable efidebug command, this isn't necessary
  anymore with mainline u-boot

Co-authored-by: Bart Ribbers <bribbers@disroot.org>
2022-04-06 09:11:56 +02:00
Clayton Craft 7f52cf8f04 device/main/firmware-siliconlabs-rs9116: upgrade to 2.5.1 (MR 3061) 2022-04-06 00:34:07 +03:00
Clayton Craft c4d37a5a5b device/main/firmware-siliconlabs-rs9116: move from community (MR 3061)
fw is used by the L5's wifi chip
2022-04-06 00:34:07 +03:00
Newbyte 0e9be207dd device-*: replace mesa-dri-swrast with mesa-dri-gallium (MR 3059)
mesa-dri-swrast no longer exists and just installs,
mesa-dri-gallium. However, this might not always be the case, so
let's change it before it causes any issues.

[ci:ignore-count]
[ci:skip-build]
2022-04-05 23:23:03 +03:00
Danct12 3536cf549a chuwi-hi10plus: drop (MR 2989)
I'd say this is not appropriate to be in postmarketOS because
this is just a bog standard x86 computer, it has UEFI BIOS and
everything, and you can just boot a Linux distro on a USB
stick.

It also has a 64-bit UEFI unlike some other tablet, so there
should be no issue installing a Linux distro with a fairly
modern kernel these days.

So, let's just drop it and forget this port even existed.
2022-04-05 09:53:45 +02:00
Dang Huynh 2db41b939e device-xiaomi-santoni: get rid of vibrator script and hybris ref (MR 3055)
The charging script does nothing other than annoy a few people,
so get rid of it.

While at it, let's remove hybris reference from the APKBUILD as
hybrisOS is dead.

Closes #1487

Signed-off-by: Dang Huynh <danct12@disroot.org>
2022-04-04 13:20:35 +02:00
Alexey Minnekhanov 4426b96684 xiaomi-cepheus: new device (Xiaomi Mi 9) (MR 2346)
Powerful beast with Snapdragon 855 - 8 cores up to 2.8 GHz,
6 Gb RAM and fast UFS storage.

Mainline port is bare minimum (UART, framebuffer display, physical
keys, USB network). No storage support yet (UFS refuses to work)

https://wiki.postmarketos.org/wiki/Xiaomi_Mi_9_(xiaomi-cepheus)
2022-04-03 20:50:31 +02:00
Alexey Minnekhanov 0411403007 xiaomi-cepheus-downstream: new device (Xiaomi Mi 9) (MR 2346)
Downstream kernel will not be maintained really, but useful for
exploring stuff. This kernel is at version 4.14 and can be
compiled with recent gcc versions though, so not that bad.

USB rndis works, touchscreen too, but no display (framebuffer,
/dev/fb0 is not present at all). Internal storage works, also
battery/charging.
2022-04-03 20:50:31 +02:00
Oliver Smith b693cdaac7 cross/busybox-static: upgrade to 1.35.0-r7 2022-04-03 19:06:42 +02:00
Newbyte 89ce95fe08 linux-postmarketos-exynos4: enable charging on p4note (MR 3051)
This is merged upstream, so we'll be able to drop it soon enough.

[ci:skip-build] Already built successfuly on CI in MR
2022-04-03 16:47:41 +02:00
Newbyte b2c4544ef2 device-*: rootston.ini -> phoc.ini (MR 3054)
rootston.ini is an old, deprecated name.

[ci:ignore-count]
2022-04-03 12:00:06 +02:00
Raymond Hackley ca34c8f202 samsung-j3ltetw: new device (MR 3029) 2022-04-02 17:03:02 +02:00
Bobby The Builder 56183bcae3 main/linux-postmarketos-allwinner: enable TCPMSS match functionality (MR 3039)
[ci:skip-build]: already built successfully in CI
2022-04-02 16:58:50 +02:00
Luca Weiss 7f9549f2bd fairphone-fp3: add mainline kernel subpackage (MR 3020)
Modem firmware is currently not installed by default because the modem
doesn't actually boot.
2022-04-02 16:53:36 +02:00
Newbyte fa2bae032d samsung-espresso3g: depend on mesa-dri-gallium (MR 3048)
Resolves software rendering not working.
2022-04-02 16:50:05 +02:00
Anjandev Momi 3f94934954 main/sxmo-common: add adwaita-icon-theme as dependency (MR 3052)
I usually end up installing it on new installs. Why not enable it by
default and have a more polished experience for users? Most users will
use a gtk app and/or use the gtk file chooser
2022-04-02 16:45:13 +02:00
Dzmitry Sankouski 310b01ef45 samsung-starqltechn: new device (MR 2835)
Device uses mainline kernel. What works:
- boots
- pstore log
- simple framebuffer
- storage including sdcard

* payload mock device tree:

Payload mock device tree is needed to mock device tree,
when we're overriding linux with u-boot in android boot image.
Stock bootloader needs this dtb appended to gzipped u-boot.

Bootscript is a simple hush shell script, dedicated to boot OS.
It may be customized to implement dual boot or to change kernel
command line.
2022-04-02 14:44:11 +02:00
Newbyte 9476f65b87 firmware-samsung-midas: add symlink for p4note (MR 2908) 2022-04-01 04:36:05 +03:00
blackenedharmony ea0a6c61a3 samsung-p4note: new device (MR 2908) 2022-04-01 04:36:03 +03:00
Caleb Connolly b7cc808b7d main/osk-sdl: depend on mesa-egl (MR 3046)
mesa-egl is usually installed by dependencies of ui packages, but when
choosing the "none" ui option in pmbootstrap, it isn't selected, leading
to libEGL.so.1 not being found.

Add it as an explicit dependency.
[ci:skip-build]: already built successfully in CI
2022-03-31 09:53:27 +02:00
Alexey Minnekhanov 185492156e samsung-klte: switch to fastboot and require lk2nd (MR 3044)
To make panel driver upstreamable to mainline linux, we need to use
proper panel selection in secondary bootloader (still TODO), and
therefore lk2nd will be strictly required to boot mainline port.

Switch flashing method to fastboot, enable sparse rootfs generation,
and depend on lk2nd package.

Depends on: postmarketOS/pmbootstrap!2174, to provide full
integration of lk2nd in pmbootstrap.

So, full flashing procedure for samsung-klte will look like:

 $ pmbootstrap init
 $ pmbootstrap install
 $ pmbootstrap flasher --method=heimdall-bootimg flash_lk2nd
 $ pmbootstrap flasher flash_kernel --no-install
 $ pmbootstrap flasher flash_rootfs
 $ fastboot reboot
2022-03-31 01:38:29 +03:00
Alexey Minnekhanov 29d71342c1 main/lk2nd: upgrade to 0.12.0 (MR 3043)
Changelog: https://github.com/msm8916-mainline/lk2nd/releases/tag/0.12.0
2022-03-31 01:16:35 +03:00
Newbyte 9089cd9127 pine64-pinephonepro: remove u-boot-pine64-pinephonepro dependency (MR 3049)
We're using Tow-Boot now, so remove this as it is unnecessary and
makes the package unbuildable since the dependency doesn't exist
any more.

Fixes d26cc84c32

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/1483
2022-03-30 16:39:52 +02:00
Caleb Connolly dd31d3f94c CODEOWNERS: add sdm845 devs (MR 3047)
Add myself and Joel as codeowners of SDM845 projects and devices.
2022-03-30 13:10:23 +01:00
Newbyte a7f4ebdd77 linux-postmarketos-exynos4: upgrade to 5.17.1 (MR 3040)
Dropped patch was upstreamed.
[ci:skip-build]: already built successfully in CI
2022-03-30 09:54:56 +02:00
Bart Ribbers 8b5b4522ea device/testing/u-boot-pine64-pinephonepro: drop (MR 2870)
We don't need this anymore, we use a pre-flashed platform firmware now 🎉

[ci:skip-build]: already built successfully in CI
2022-03-30 09:06:52 +02:00
Bart RibbersandOliver Smith d26cc84c32 pine64-pinephonepro: switch to UEFI booting (MR 2870)
This removes u-boot from our image and allows booting via an
UEFI-compatible platform firmware instead. So to flash pmOS on the PPP
now we will require the user to flash Tow-Boot to the SPI. See the edge
post for more information.

Related: https://postmarketos.org/edge/2022/03/28/ppp-tow-boot/
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2022-03-30 09:05:11 +02:00
Clayton Craft 24adb5f5cd purism-librem5: fix audio, enable xwayland accel (MR 3045)
fixes #1480

[ci:skip-build] already built successfully in CI
2022-03-29 16:07:41 -07:00
Wouter Franken b8e1335558 sony-yuga: add support for APQ8064 mainline kernel (MR 3037)
Add option for mainline kernel iso downstream kernel. Note that a lot is
not working yet due to incomplete devicetree, so this is for development
purposes only.
2022-03-29 18:56:47 +00:00
Devin Lin b5d1289a05 main/postmarketos-ui-plasma-mobile: update deps (MR 2938)
Add and rearrange dependencies with new apps, and fix angelfish package
name.

Adds the following packages to extras:
- alligator (rss reader)
- kasts (podcasts)
- tokodon (mastodon client)

Move neochat from a required to an extra dependency, since it's a
matrix client (which many people may not need).

Add plasma-mobile-sounds to main dependency, so that kclock (and dialer
in the future) have sounds to choose from.

Rename plasma-angelfish to angelfish dependency since plasma-angelfish
was renamed in alpine at some point.

Remove the part of the description of the package that says numeric
passwords are required (no longer the case).
2022-03-29 09:46:37 +02:00
Caleb Connolly 139a79fa9b main/ttyescape: change licence to GPL-2.0 (MR 3042)
When moving the code to it's own repo I changed the license to GPL-2.0,
I forgot to update the APKBUILD.

[ci:skip-build] already built successfully in CI
2022-03-28 21:45:26 -07:00
Alexey Minnekhanov 6ad0ed843d linux-postmarketos-qcom-msm8974: upgrade to 5.17.1 (MR 3038)
Rebase pmos 8974 patchset on top of linux-stable/5.17.y.

No changes, seems to work same as before.

[ci:skip-build] Already built fine on CI in MR
2022-03-29 00:31:56 +03:00
Oliver Smith c12f529dee cross/busybox-static-*: upgrade to 1.35.0-r6 2022-03-28 08:31:41 +02:00
Minecrell 6c628d66ed samsung-{a3,a5}: also apply ModemManager "facility lock" workaround (MR 3021)
It seems like at least samsung-a5 needs the same "facility lock"
workaround as samsung-serranove, otherwise ModemManager can not detect
the SIM card correctly. Move it to a subpackage of soc-qcom-msm8916
and apply it to samsung-a3 as well just to be sure.

So far this issue seems limited to Samsung devices, at least bq-paella
is not affected (tested with the same SIM card), so it does not seem
right to apply it unconditionally to all devices.

[ci:skip-build] Already built successfuly on CI in MR
2022-03-27 16:34:39 +02:00
Martijn Braam a987568e07 main/postmarketos-ui*: add back nmcli and nmtui (MR 3023)
[ci:ignore-count]
2022-03-27 16:15:39 +02:00
Luca Weiss f5b0d1bd49 fairphone-fp4: set sector size to 4096 (MR 3036)
Now that internal storage is supported, we actually need a 4096 sector
size, otherwise kpartx won't work on internal partitions.

[ci:skip-build] Already built successfuly on CI in MR
2022-03-27 16:12:21 +02:00
Luca Weiss 9ccd3dc338 testing/linux-postmarketos-qcom-sm6350: upgrade to support UFS (MR 3036)
Also modify the defconfig to for UFS and disable the legacy
CONFIG_USB_ETH option and use configfs instead.
2022-03-27 16:11:48 +02:00
Martijn Braam 4d269cb31a main/powersupply: upgrade to 0.6.0 (MR 3025) 2022-03-27 14:57:45 +02:00
Sicelo A. Mhlongo 2991b783d9 linux-nokia-n900: update kernel to LTS 5.15.31 (MR 3032)
[ci:skip-build] Already built successfuly on CI in MR
2022-03-26 22:42:27 +01:00
Clayton Craft 85fbc51248 linux-purism-librem5: upgrade to 5.16.16 (MR 3033)
The dropped patch was merged in purism's kernel fork

[ci:skip-build] Already built successfuly on CI in MR
2022-03-26 17:36:33 +01:00
Gianluca Boiano d4f66a1770 linux-xiaomi-vince: upgrade to 4.9.308 (MR 3035)
This involves also config, synced with upstream and with reduced debug

[ci:skip-build] Already built successfuly on CI in MR
2022-03-26 17:32:17 +01:00
Gianluca Boiano 723a52e8e9 device-xiaomi-vince: fix flash pagesize (MR 3035) 2022-03-26 17:31:54 +01:00
Raymond Hackley 7381adb19b samsung-e7: new device (MR 2813) 2022-03-26 14:49:54 +01:00
Mighty ed90e5dafe linux-samsung-espresso3g: use mainline 5.17, not PowerVR fork (MR 3027)
[ci:skip-build] Already built fine on CI in MR
2022-03-26 16:20:16 +03:00
Mighty 865ff8dca6 device-samsung-espresso3g: remove GPU support and hacks (MR 3027) 2022-03-26 16:19:15 +03:00
Newbyte c2178fbe1a linux-postmarketos-exynos4: add patch to fix GPU issue (MR 3028)
Fixes/works around issue where some applications using the GPU
would crash with DRM_IOCTL_MODE_CREATE_DUMB failed.

See https://gitlab.com/postmarketOS/pmaports/-/issues/1246

[ci:skip-build] Already built successfuly on CI in MR
2022-03-25 15:16:35 +01:00
Jasper Korten 8021b27169 samsung-on7: new device (MR 3030) 2022-03-25 01:16:59 +03:00
Alexander Martinz f28294c93b community/linux-postmarketos-qcom-sdm845: upgrade to 5.17.0-r1 (MR 3031)
- Add support for sdm845-samsung-starqltechn
  - Fix touch for axolotl

Change-Id: Ie7073f450f207e9242b821b4971ce2be89ba6a54
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>

[ci:skip-build] Already built successfuly on CI in MR
2022-03-24 21:21:16 +01:00
Martijn Braam 0ecaa59f4b main/postmarketos-tweaks: upgrade to 0.11.0 (MR 3024) 2022-03-24 13:28:03 +01:00
Jack Knightly 167556d3eb samsung-t0lte: add Wi-Fi firmware (MR 3022) 2022-03-24 13:59:49 +03:00
Iourine 97e5330cb1 google-peach-pi: new device (Samsung Chromebook2 13.3") (MR 3007)
[ci:skip-build] Already built successfuly on CI in MR
2022-03-23 22:41:42 +01:00
Jack Knightly 83158aa8e2 samsung-m0/m3: add notification led (MR 3012)
[ci:skip-build] Already built successfuly on CI in MR
2022-03-23 17:10:45 +01:00
Jack Knightly f41cfe726a samsung-t0lte: add leds (MR 3012) 2022-03-23 14:13:05 +00:00
Caleb Connolly 1b85320889 device/testing/pine64-pinephonepro: fix UART baud rate (MR 3018) 2022-03-23 14:25:16 +01:00
Raymond Hackley c04e85a4df samsung-j5x: add WCNSS and remote processor selection (MR 3016) 2022-03-23 15:33:33 +03:00
Dmitry Kuznetsov 1cbc5a52bd ark-peach: add device (ARK Benefit A3) (MR 2812) 2022-03-23 11:50:47 +01:00
David Wronek 25c8729aa0 huawei-y635: new device (MR 2826) 2022-03-23 11:44:03 +01:00
Minecrell d55c91d1f9 community/soc-qcom-msm8916: update ALSA UCM files (MR 3014)
- alcatel-idol347: add headphones
- Try to revert playback/capture priorities to maybe make automatic
  switching to headphones based on jack detection work a bit better.

[ci:skip-build] Already built successfuly on CI in MR
2022-03-23 10:01:27 +01:00
Minecrell fbafdc5cba bq-paella: update touchscreen module name in deviceinfo (MR 3014)
The driver has been renamed to prepare for potential upstreaming.
2022-03-23 09:59:04 +01:00
Minecrell 2be78249e4 community/linux-postmarketos-qcom-msm8916: upgrade to 5.17 (MR 3014)
- Update to Linux 5.17
- Upstreamed many more patches
- Probably many other things I forgot :)

Device changes:
  - alcatel-idol347:
    - Headphones
  - longcheer-l8910 (bq-paella):
    - Touch keys: Allow changing function from userspace
  - samsung-gprime:
    - Split into 3 variants: gprimeltecan, fortuna3g, fortunaltezt
    - Buttons, WiFi/BT, Vibrator
    - Display
    - Touchscreen
    - Sound/Modem
    - Sensors (Accelerometer/Magnetometer, depending on variant)
    - NFC (some variants only)
    - Battery
  - samsung-j5x (J5 2016):
    - WiFi/BT
    - Sensors (Accelerometer)
    - Sound/Modem (jack detection is somewhat broken)

New devices:
  - ark-peach (ARK Benefit A3)
    - eMMC, SD card, USB, Buttons, WiFi/BT
  - huawei-y635:
    - eMMC, SD card, USB, Buttons, WiFi/BT
    - Display
    - Touchscreen
    - Sensors (Accelerometer, Proximity)
    - Sound
    - Battery/Charging
  - samsung-a5-zt: new device variant of samsung-a5
    - different setup for accelerometer and touch key
  - samsung-e7:
    - eMMC, SD card, USB, Buttons, WiFi/BT
    - Display (no brightness control yet)
    - Touchscreen
    - Sensors (Accelerometer)
    - Sound/Modem
    - NFC
  - samsung-j3ltetw:
    - eMMC, SD card, USB, Buttons, WiFi/BT
    - Display (no brightness control yet)
    - Touchscreen
    - Sensors (Accelerometer)
    - Sound/Modem
  - samsung-on7:
    - eMMC, SD card, USB, Buttons, WiFi/BT

Removed devices:
  - oppo-a51f: Unfortunately, it has been unmaintained for a long time
    and it was the last remaining device in a non-upstreamable state
    (authorship unclear and missing Signed-off-by).
2022-03-23 09:59:04 +01:00
Minecrell 224ca9037c oppo-a51f: drop device port (MR 3014)
Unfortunately, the oppo-a51f has been unmaintained for quite some time
now. The original author (harutora) has disappeared and no one else
seems to have this device. The device port has several open problems:

  1. The device was never added properly to upstream lk2nd, because
     of a special (OPPO-specific) boot image format. Users need to
     compile and install some outdated version of lk2nd, which is no
     longer (fully) compatible with newer kernel versions.

  2. The authorship of the Linux changes are unclear: They were created
     with a "no-reply" email address and without Signed-off-by line
     that clarifies the licensing of the changes and permits upstreaming
     the patches.

Since oppo-a51f is the last remaining device port in linux-postmarketos
-qcom-msm8916 with this problem, I decided to drop the patches from the
kernel, at least until harutora returns or can clarify the authorship
of the created patches.
2022-03-23 09:59:04 +01:00
Caleb Connolly be91c62136 main/ttyescape: move to own repo (MR 3017) 2022-03-23 00:09:03 +00:00
Caleb Connolly 6ec43fbbb4 ci: remove shellcheck for TTYEscape (MR 3017)
It's been moved to it's own repo.
2022-03-23 00:09:03 +00:00
Alexey Min 58ae418c0f linux-postmarketos-qcom-sm8150: upgrade to 5.17.0 (MR 3019)
Includes support for xiaomi-cepheus.

[ci:skip-build] Already built successfuly on CI in MR
2022-03-22 14:32:38 +01:00
Joel Selvaraj b75e662f90 CI: don't exclude sdm845 related firmware packages (MR 2982)
No longer needed as these firmware packages doesn't depend on
soc-qcom-sdm845-nonfree-firmware anymore.
2022-03-22 12:29:45 +01:00
Joel Selvaraj 367e1484e8 community/linux-postmarketos-qcom-sdm845: upgrade to 5.17.0 (MR 2982) 2022-03-22 12:29:45 +01:00
Joel Selvaraj 1969218aec community/soc-qcom-sdm845: update ucm conf and add q6voiced for call audio support (MR 2982)
Also, moving the modemmanager.conf file from the main package to the
nonfree-firmware subpackage as Modem Manager is going to work
only if the nonfree-firmwares are present.
2022-03-22 12:29:44 +01:00
Joel Selvaraj 3865de4dca community/device-xiaomi-beryllium: add q6voiced conf and fix dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-xiaomi-beryllium package to the device package.
This will make the firmware package to only depend on firmware files.
2022-03-22 12:29:44 +01:00
Joel Selvaraj 2ed40be4a1 community/device-oneplus-enchilada: add q6voiced conf and fix dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-oneplus-sdm845 package to the device package.
This will make the firmware package to only depend on firmware  files.
2022-03-22 12:29:44 +01:00
Joel Selvaraj f0272470e9 community/device-oneplus-fajita: fix dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-oneplus-sdm845 package to the device package.
This will make the firmware package to only depend on firmware  files.
2022-03-22 12:29:44 +01:00
Joel Selvaraj d00448a16e community/device-shift-axolotl: fix dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-shift-sdm845 package to the device package.
This will make the firmware package to only depend on firmware files.
2022-03-22 12:29:44 +01:00
Joel Selvaraj c9f9f679d2 community/firmware-shift-sdm845: remove soc-qcom-sdm845-nonfree-firmware dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-shift-sdm845 package to the device package.
This will make the firmware package to only depend on firmware files.
Also, pmb:cross-native is added to the package options so CI testcases
doesn't fail.
2022-03-22 12:29:44 +01:00
Joel Selvaraj 8b0eca4231 community/firmware-oneplus-sdm845: remove soc-qcom-sdm845-nonfree-firmware dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-oneplus-sdm845 package to the device package.
This will make the firmware package to only depend on firmware  files.
Also, pmb:cross-native is added to the package options so CI testcases
doesn't fail.
2022-03-22 12:29:44 +01:00
Joel Selvaraj aa80a81e38 community/firmware-xiaomi-beryllium: remove soc-qcom-sdm845-nonfree-firmware dependency (MR 2982)
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-xiaomi-beryllium package to the device package.
This will make the firmware package to only depend on firmware files.
Also, pmb:cross-native is added to the package options so CI testcases
doesn't fail.
2022-03-22 12:29:43 +01:00
Raymond Hackley ab83b8cbeb main/postmarketos-base: udev rule for zinitix touchkey (MR 3015)
The udev file "20-zinitix-input.rules" maps the touchkey on Zinitix-TS to
KEY_MENU and KEY_BACK.
2022-03-21 22:25:54 +09:00
Clayton Craft 562f542902 main/boot-deploy: upgrade to 0.5 (MR 3011)
[ci:skip-build]: already built successfully in CI
2022-03-21 09:50:22 +01:00
Martijn Braam 3d4d3558b7 linux-postmarketos-allwinner: upgrade to 5.17.0_git20220313 (MR 3001)
[ci:skip-build]: already built successfully in CI
2022-03-21 09:25:28 +01:00
iAboothahir 3765454957 device-asus-x00td: initial support for mainline kernel in addition to downstream kernel (MR 2985)
Signed-off-by: iAboothahir <aboothahirpkd@gmail.com>

[ci:skip-build] Already built successfuly on CI in MR
2022-03-20 18:45:28 +01:00
iAboothahir 3d7f6a5fbd linux-postmarketos-qcom-sdm660: upgrade to support asus-x00td (MR 2985)
Also enable CONFIG_ARM_SMMU,CONFIG_QFMT_V1,CONFIG_QFMT_V2
2022-03-20 18:43:57 +01:00
Raymond Hackley f44c4e870b main/postmarketos-ui-console: Add networkmanager-{cli,tui} to dependencies (MR 3013)
nmcli and nmtui are not included in package networkmanager.
Add necessary subpackages as dependencies.

https://gitlab.alpinelinux.org/alpine/aports/-/commit/841288756642d93f444265f1cf97d2bc745f1795
2022-03-20 17:16:56 +01:00
Dzmitry Sankouski 96c6504cfd temp/u-boot-starqltechn: add u-boot for SM-G9600 (MR 3000) 2022-03-20 10:37:19 +01:00
Dylan Van Assche 1ffe798a68 device-odroid-hc2: use different name for old rootfs (MR 3009)
It became too confusing by using almost the same name for the old rootfs when booting from HDDs

[ci:skip-build] already built successfully in CI
2022-03-19 00:29:47 -07:00
tim 0cea31a837 google-veyron-jerry: add initfs modules and update kernel config (MR 3004)
[ci:skip-build] already built successfully in CI
2022-03-19 00:27:27 -07:00
Martijn Braam 711d743a8e main/postmarketos-ui-gnome: add firefox wayland config (MR 3008)
Add MOZ_ENABLE_WAYLAND=1 to make firefox not use xwayland in Gnome
2022-03-17 11:26:36 +01:00
Dylan Van Assche 456cb2205f linux-odroid-hc2: upgrade to 5.16.14 (MR 3006)
[ci:skip-build]: already built successfully in CI
2022-03-16 08:59:38 +01:00
Gianluca Boiano 1fc1975c4f linux-xiaomi-vince: upgrade to 4.9.305 (MR 3002)
[ci:skip-build] Already built successfuly on CI in MR
2022-03-15 19:07:59 +01:00
Dylan Van Assche 8dc7bade2f Revert "linux-odroid-hc2: upgrade to 5.16.14"
This reverts commit f6fbe3584a.
2022-03-15 17:46:52 +01:00
Dylan Van Assche f6fbe3584a linux-odroid-hc2: upgrade to 5.16.14 2022-03-15 17:43:52 +01:00
Pablo Correa Gómez 53a68a88ec main/postmarketos-base-ui-gnome: new aport (MR 2945)
Shared package for shared gnome and phosh ui configurations

Additionally, added missing dependencies:

Both Phosh and GNOME need elogind to do sleep inhibition and to
provide pam modules. gnome-bluetooth has some small udev rule
that helps marking devices for rfkill. Given that most devices
in pmOS have a bluetooth, this should be useful as a dependency.
2022-03-15 09:52:46 +01:00
Pablo Correa Gómez 9cf1eb5ba0 main/postmarketos-ui-gnome: remove clock overrides (MR 2945)
These were most likely copied from phosh, but not necessary in
GNOME. They safe space in the interface, but GNOME Shell is really
not that useful in very narrow devices, so adding a configuration
for such cases should be unnecessary.
2022-03-15 09:52:45 +01:00
Pablo Correa Gómez aa7e507d8c main/postmarketos-ui-phosh: move non-relocatable schemas to override (MR 2945)
The dconf configuration and installation file was needed because the
schemas `sm.puri.phoc.application.org-gnome-maps` and
`sm.puri.phoc.application.firefox` are not schemas that can be overriden.
The actual schema is `sm.puri.phoc.application`, which is a relocatable
schema. Therefore, we could use an override to specify the default,
but with a simple configuration file, gsettings cannot relocate the
schema. Therefore, the dconf configuration makes sense for these kind
of schemas. For regular schemas that can be overriden with an override
file, it is simpler to just use it.
2022-03-15 09:52:45 +01:00
Pablo Correa Gómez 2450153249 main/postmarketos-ui-phosh: remove custom button-layout override (MR 2945)
Phosh takes care of it in a smarter way[1]. The custom override also has the
consequence of never showing closing buttons in docked mode, which can be
an inconvenience.

[1] https://gitlab.gnome.org/World/Phosh/phosh/-/blob/main/src/docked-manager.c#L292-L295

Or in case the lines change with time:
```C
phosh_docked_manager_set_enabled (PhoshDockedManager *self, gboolean enable)

  if (enable)
    g_settings_reset (self->wm_settings, WM_KEY_LAYOUT);
  else
    g_settings_set_string (self->wm_settings, WM_KEY_LAYOUT, "appmenu:");
```
2022-03-15 09:52:45 +01:00
Pablo Correa Gómez 8fd97238fb main/postmarketos-ui-phosh: remove redundant schemas set by Phosh (MR 2945)
Phosh already installs these schemas by default[1] and makes them specific
to the Phosh desktop. Originally these might have been needed because
either Phosh didn't ship the overrides or/and tinydm wasn't setting the
environment variable XDG_CURRENT_DESKTOP properly[2]. To verify that the
behavior of the Phosh override is working as expected one can do the following
from an ssh session (so that the full DE envvars are not set):
```bash
$ export DISPLAY=:0 # so that gsettings reset works
$ gsettings reset org.gnome.desktop.interface clock-show-date
$ gsettings get org.gnome.desktop.interface clock-show-date # false
$ sudo rm /usr/share/glib-2.0/schemas/000-postmarketos.gschema.override
$ sudo glib-compile-schemas --strict /usr/share/glib-2.0/schemas/
$ gsettings get org.gnome.desktop.interface clock-show-date # true (which is the default)
$ export XDG_CURRENT_DESKTOP=GNOME:Phosh
$ gsettings get org.gnome.desktop.interface clock-show-date # false (from phosh override)
```

[1] https://gitlab.gnome.org/World/Phosh/phosh/-/blob/main/data/00_sm.puri.Phosh.gschema.override
[2] https://gitlab.com/postmarketOS/tinydm/-/merge_requests/12
2022-03-15 09:52:45 +01:00
Pablo Correa Gómez 2b307748a6 main/postmarketos-ui-phosh: document reason for osk.sh script (MR 2945) 2022-03-15 09:52:45 +01:00
Pablo Correa Gómez bf8b2273df main/postmarketos-ui-phosh: remove firefox scaling (MR 2945)
firefox scaling was set to true before `mobile-config-firefox` existed.
In new installations false is the default, so explicitly stating false is
only necessary for upgrades. Since the default was changed in one and a half
years ago in fef3af0d75 when the
package was still in version 4, removing it should not have any impact. If
anybody had an edge installation not upgrade for more than 1.5 years, it would
definitely be wiser to reinstall than to upgrade.
2022-03-15 09:52:40 +01:00
Newbyte d4b43f8d24 main/postmarketos-hidden-desktop-entries: unhide Glade (MR 2993)
Glade can be useful if you're building GTK apps on your phone when
making use of convergence, so let's unhide it. The reason it was
hidden was that it gets pulled in when building Phosh, but this
might be solvable in a better way.

Hiding of org.gnome.Extensions can probably be dropped when
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/31086
has been merged.
2022-03-15 09:05:39 +01:00
Martijn Braam 217643fe19 main/postmarketos-tweaks: upgrade to 0.10.0 (MR 3003) 2022-03-14 17:32:29 +01:00
Newbyte 0ce8404555 samsung-m3: add initial audio support (MR 2992)
I'm not deduplicating the UCM files between m3 and m0 as I may not
always be able to test changes to m3, and I'd rather have a an
outdated configuration for m3 than a broken one.
2022-03-13 18:02:45 +01:00
Newbyte a23582e15c samsung-m0: add initial audio support (MR 2992)
This is missing some functionality, notably input from the main
microphone and headset audio out. But, it should be better than
nothing.

Relates to https://gitlab.com/postmarketOS/pmaports/-/issues/1281
2022-03-13 18:02:45 +01:00
Pablo Correa Gómez 4502fc6c6e temp/gnome-control-center: upgrade to 41.4 and add dependency (MR 2997)
Downstream follow-up of
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/31918
2022-03-13 16:27:20 +01:00
Jakob Hauser fae42ed91b main/postmarketos-ui-mate: enable screen lock and single-click (MR 2999)
Enable screen locking and embed virtual keyboard. For devices with a
hardware keyboard, this is unfavorable. For touch devices, however,
that's needed for unlocking the screen.

Additionally enable single-click behavior in file manager. This applies
also to the desktop icons. Again this is unfavorable for conventional
devices but advantageous for touch devices.
2022-03-13 16:22:45 +01:00
Newbyte 0ee32f2558 firmware-samsung-midas: switch to linux-firmware-brcm (MR 2995)
Apparently works significantly better on SHV-E210S and seems to
work about equally well on i9300. Besides, using upstream firmware
with a clear licence is nice. Also use different nvram file for m3.
2022-03-12 09:13:57 +01:00
1447 changed files with 159673 additions and 42227 deletions

No files matched your search

+4
View File
@@ -121,6 +121,10 @@ def main():
print("it more easily. Many times one person did a port with basic")
print("functionality, and then someone else jumped in and")
print("contributed major new features.")
print("")
print("NOTE: if you renamed a device in pmaports, rename it in the")
print("wiki as well and make sure to add it here:")
print("https://postmarketos.org/renamed")
return 1
else:
print("*** Wiki check successful!")
-2
View File
@@ -26,10 +26,8 @@ sh_files="
./main/postmarketos-update-kernel/update-kernel.sh
./main/swclock-offset/swclock-offset-boot.sh
./main/swclock-offset/swclock-offset-shutdown.sh
./main/ttyescape/*.sh
./main/ttyescape/*.post-install
./main/unl0kr/unlock.sh
./main/msm-firmware-loader/*.sh
./main/msm-firmware-loader/*.post-install
$(find . -path './main/postmarketos-ui-*/*.sh')
-3
View File
@@ -17,12 +17,9 @@ def test_aports_firmware(args):
excluded = [
"firmware-motorola-potter", # Depends on soc-qcom-msm8916-ucm
"firmware-oneplus-msm8998", # Depends on soc-qcom-sdm845-nonfree-firmware
"firmware-oneplus-sdm845", # Depends on soc-qcom-sdm845-nonfree-firmware
"firmware-samsung-baffinlite", # Depends on firmware-aosp-broadcom-wlan
"firmware-samsung-crespo", # Depends on firmware-aosp-broadcom-wlan
"firmware-samsung-maguro", # Depends on firmware-aosp-broadcom-wlan
"firmware-shift-sdm845", # Depends on soc-qcom-sdm845-nonfree-firmware
"firmware-xiaomi-beryllium", # Depends on soc-qcom-sdm845-nonfree-firmware
"firmware-xiaomi-ferrari", # Depends on soc-qcom-msm8916
"firmware-xiaomi-willow", # Doesn't build, source link is dead (pma#1212)
]
+3 -1
View File
@@ -15,7 +15,9 @@ def test_aports_ui(args):
"""
Raise an error if package in _pmb_recommends is not found
"""
for arch in pmb.config.build_device_architectures:
pmaports_cfg = pmb.config.pmaports.read_config(args)
for arch in pmaports_cfg["supported_arches"].split(","):
for path in glob.iglob(args.aports + "/main/postmarketos-ui-*/APKBUILD"):
apkbuild = pmb.parse.apkbuild(path)
# Skip if arch isn't enabled
+1
View File
@@ -145,6 +145,7 @@ mr-settings:
expire_in: 1 week
paths:
- packages/
timeout: 10 h
build-x86_64:
extends: .build
+12 -1
View File
@@ -1,10 +1,21 @@
# https://docs.gitlab.com/ee/user/project/code_owners.html
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/community/*-qcom-sdm845 @calebccff @joelselvaraj
device/community/*-xiaomi-berrylium @joelselvaraj
device/community/device-oneplus-enchilada @calebccff
device/community/device-oneplus-fajita @calebccff
main/osk-sdl/ @craftyguy
main/mesa-pvr-dri-classic/ @xc-racer99
main/postmarketos-ui-plasma-mobile/ @bshah
main/ttyescape @calebccff
temp/u-boot-librem5/ @craftyguy @bshah
# vim: ts=4 sw=4 et
+7 -1
View File
@@ -8,8 +8,14 @@ branch_pmaports=master
branch_aports=master
mirrordir_alpine=edge
[v21.12]
[v22.06]
description=Latest release / Recommended for best stability
branch_pmaports=v22.06
branch_aports=3.16-stable
mirrordir_alpine=v3.16
[v21.12]
description=Old release (unsupported)
branch_pmaports=v21.12
branch_aports=3.15-stable
mirrordir_alpine=v3.15
+90 -23
View File
@@ -2,26 +2,32 @@
# Generator: pmbootstrap aportgen binutils-aarch64
# Based on: main/binutils
CTARGET_ARCH=aarch64
CTARGET="$(arch_to_hostspec $CTARGET_ARCH)"
pkgname=binutils-aarch64
pkgver=2.38
pkgver=2.39
pkgrel=1
pkgdesc="Tools necessary to build programs for aarch64 targets"
url="https://www.gnu.org/software/binutils/"
makedepends="gettext libtool autoconf automake bison texinfo"
makedepends_build="bison flex texinfo"
makedepends_host="zlib-dev"
makedepends="$makedepends_build $makedepends_host"
arch="x86_64"
license="GPL-2.0 GPL-3.0-or-later LGPL-2.0 BSD"
subpackages="binutils-dev binutils-doc"
source="https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz
binutils-ld-fix-static-linking.patch
gold-mips.patch
ld-bfd-mips.patch
0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
binutils-mips-disable-assert.patch
binutils-ppc-fix-machine-options.patch
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
subpackages=""
subpackages="$subpackages binutils-gold"
fi
if [ "$CHOST" != "$CTARGET" ]; then
@@ -42,41 +48,102 @@ fi
# - CVE-2017-7614
build() {
_target="$(arch_to_hostspec aarch64)"
"$builddir"/configure \
--build="$CBUILD" \
--target=$_target \
--with-lib-path=/usr/lib \
local _sysroot=/
local _cross_configure="--enable-install-libiberty --enable-shared"
local _arch_configure=""
local _gold_configure="--disable-gold"
local _plugin_configure="--enable-plugins"
if [ "$CHOST" != "$CTARGET" ]; then
_sysroot="$CBUILDROOT"
_cross_configure="--disable-install-libiberty"
_plugin_configure="--disable-plugins"
fi
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
_gold_configure="--enable-gold"
fi
if [ "$CTARGET_ARCH" = "x86_64" ]; then
_arch_configure="--enable-targets=x86_64-pep"
fi
if [ "$CTARGET_ARCH" = "riscv64" ]; then
_gold_configure="--disable-gold"
fi
case "$CTARGET_ARCH" in
mips*) _hash_style_configure="--enable-default-hash-style=sysv" ;;
*) _hash_style_configure="--enable-default-hash-style=gnu" ;;
esac
./configure \
--build=$CBUILD \
--host=$CHOST \
--target=$CTARGET \
--with-build-sysroot="$CBUILDROOT" \
--with-sysroot=$_sysroot \
--prefix=/usr \
--with-sysroot=/usr/$_target \
--enable-ld=default \
--enable-gold=yes \
--enable-plugins \
--enable-deterministic-archives \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-multilib \
--disable-gprofng \
--enable-ld=default \
$_gold_configure \
--enable-64-bit-bfd \
$_plugin_configure \
--enable-relro \
--enable-deterministic-archives \
--enable-default-execstack=no \
$_cross_configure \
$_arch_configure \
$_hash_style_configure \
--with-pic \
--disable-werror \
--disable-nls
--disable-nls \
--with-mmap \
--with-system-zlib
make
}
package() {
make install DESTDIR="$pkgdir"
# remove man, info folders
rm -rf "$pkgdir"/usr/share
# remove files that conflict with non-cross binutils
rm -rf "$pkgdir"/usr/lib/bfd-plugins
if [ -d "$pkgdir"/usr/lib64 ]; then
mv "$pkgdir"/usr/lib64/* "$pkgdir"/usr/lib/
rmdir "$pkgdir"/usr/lib64
fi
if [ "$CHOST" != "$CTARGET" ]; then
# creating cross tools: remove any files that would conflict
# with the native tools, or other cross tools
rm -r "${pkgdir:?}"/usr/share
rm -f "$pkgdir"/usr/lib/libiberty.a
rm -r "${pkgdir:?}"/usr/lib/bfd-plugins
fi
}
libs() {
pkgdesc="Runtime libraries from binutils - libbfd and libopcodes"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.so "$subpkgdir"/usr/lib/
}
gold() {
pkgdesc="GNU binutils - gold linker"
if [ -e "$pkgdir"/usr/bin/ld.gold ]; then
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/ld.gold "$subpkgdir"/usr/bin
fi
mkdir -p "$subpkgdir"/usr/$CTARGET/bin
mv "$pkgdir"/usr/$CTARGET/bin/ld.gold "$subpkgdir"/usr/$CTARGET/bin/ld.gold
}
sha512sums="
8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d binutils-2.38.tar.xz
68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3 binutils-2.39.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
70ec22bd72ef6dddecfd970613387dd4a8cdc8730dd3cbf03d5a0c3a7c4d839383167bb06dad21bf7c235329fd44b5dc4aefe762f68544f17155cf002bf1be4a 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
609cd90d8b334eb309f586b17b9d335a08d3dbb6def7c3eb5c010028fcb681674031e5b9d853aa7a39a50304356a86afc184b85562b3f228f8197f4d29395c8f binutils-mips-disable-assert.patch
27ea91e0e406e2ed464fd692cf92a07e338781789f2d968c8b95d9d5545985056a6f7f500df3952e5ab42165db28b741aa33d6b717e880b11a2e41fe406b13c4 binutils-ppc-fix-machine-options.patch
"
@@ -1,41 +0,0 @@
Fix for DARN opcode error during ppc64le compilation of rng-tools which
occurs with binutils 2.38 but not with binutils 2.37..
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=cebc89b9328;hp=9cbed90ee623d75e31994e7943960c997ba565f2
diff -aur a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -5965,7 +5965,30 @@
options do not count as a new machine, instead they add
to currently selected opcodes. */
ppc_cpu_t machine_sticky = 0;
- new_cpu = ppc_parse_cpu (ppc_cpu, &machine_sticky, cpu_string);
+ /* Unfortunately, some versions of gcc emit a .machine
+ directive very near the start of the compiler's assembly
+ output file. This is bad because it overrides user -Wa
+ cpu selection. Worse, there are versions of gcc that
+ emit the *wrong* cpu, not even respecting the -mcpu given
+ to gcc. See gcc pr101393. And to compound the problem,
+ as of 20220222 gcc doesn't pass the correct cpu option to
+ gas on the command line. See gcc pr59828. Hack around
+ this by keeping sticky options for an early .machine. */
+ asection *sec;
+ for (sec = stdoutput->sections; sec != NULL; sec = sec->next)
+ {
+ segment_info_type *info = seg_info (sec);
+ /* Are the frags for this section perturbed from their
+ initial state? Even .align will count here. */
+ if (info != NULL
+ && (info->frchainP->frch_root != info->frchainP->frch_last
+ || info->frchainP->frch_root->fr_type != rs_fill
+ || info->frchainP->frch_root->fr_fix != 0))
+ break;
+ }
+ new_cpu = ppc_parse_cpu (ppc_cpu,
+ sec == NULL ? &sticky : &machine_sticky,
+ cpu_string);
if (new_cpu != 0)
ppc_cpu = new_cpu;
else
+90 -23
View File
@@ -2,26 +2,32 @@
# Generator: pmbootstrap aportgen binutils-armhf
# Based on: main/binutils
CTARGET_ARCH=armhf
CTARGET="$(arch_to_hostspec $CTARGET_ARCH)"
pkgname=binutils-armhf
pkgver=2.38
pkgver=2.39
pkgrel=1
pkgdesc="Tools necessary to build programs for armhf targets"
url="https://www.gnu.org/software/binutils/"
makedepends="gettext libtool autoconf automake bison texinfo"
makedepends_build="bison flex texinfo"
makedepends_host="zlib-dev"
makedepends="$makedepends_build $makedepends_host"
arch="x86_64"
license="GPL-2.0 GPL-3.0-or-later LGPL-2.0 BSD"
subpackages="binutils-dev binutils-doc"
source="https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz
binutils-ld-fix-static-linking.patch
gold-mips.patch
ld-bfd-mips.patch
0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
binutils-mips-disable-assert.patch
binutils-ppc-fix-machine-options.patch
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
subpackages=""
subpackages="$subpackages binutils-gold"
fi
if [ "$CHOST" != "$CTARGET" ]; then
@@ -42,41 +48,102 @@ fi
# - CVE-2017-7614
build() {
_target="$(arch_to_hostspec armhf)"
"$builddir"/configure \
--build="$CBUILD" \
--target=$_target \
--with-lib-path=/usr/lib \
local _sysroot=/
local _cross_configure="--enable-install-libiberty --enable-shared"
local _arch_configure=""
local _gold_configure="--disable-gold"
local _plugin_configure="--enable-plugins"
if [ "$CHOST" != "$CTARGET" ]; then
_sysroot="$CBUILDROOT"
_cross_configure="--disable-install-libiberty"
_plugin_configure="--disable-plugins"
fi
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
_gold_configure="--enable-gold"
fi
if [ "$CTARGET_ARCH" = "x86_64" ]; then
_arch_configure="--enable-targets=x86_64-pep"
fi
if [ "$CTARGET_ARCH" = "riscv64" ]; then
_gold_configure="--disable-gold"
fi
case "$CTARGET_ARCH" in
mips*) _hash_style_configure="--enable-default-hash-style=sysv" ;;
*) _hash_style_configure="--enable-default-hash-style=gnu" ;;
esac
./configure \
--build=$CBUILD \
--host=$CHOST \
--target=$CTARGET \
--with-build-sysroot="$CBUILDROOT" \
--with-sysroot=$_sysroot \
--prefix=/usr \
--with-sysroot=/usr/$_target \
--enable-ld=default \
--enable-gold=yes \
--enable-plugins \
--enable-deterministic-archives \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-multilib \
--disable-gprofng \
--enable-ld=default \
$_gold_configure \
--enable-64-bit-bfd \
$_plugin_configure \
--enable-relro \
--enable-deterministic-archives \
--enable-default-execstack=no \
$_cross_configure \
$_arch_configure \
$_hash_style_configure \
--with-pic \
--disable-werror \
--disable-nls
--disable-nls \
--with-mmap \
--with-system-zlib
make
}
package() {
make install DESTDIR="$pkgdir"
# remove man, info folders
rm -rf "$pkgdir"/usr/share
# remove files that conflict with non-cross binutils
rm -rf "$pkgdir"/usr/lib/bfd-plugins
if [ -d "$pkgdir"/usr/lib64 ]; then
mv "$pkgdir"/usr/lib64/* "$pkgdir"/usr/lib/
rmdir "$pkgdir"/usr/lib64
fi
if [ "$CHOST" != "$CTARGET" ]; then
# creating cross tools: remove any files that would conflict
# with the native tools, or other cross tools
rm -r "${pkgdir:?}"/usr/share
rm -f "$pkgdir"/usr/lib/libiberty.a
rm -r "${pkgdir:?}"/usr/lib/bfd-plugins
fi
}
libs() {
pkgdesc="Runtime libraries from binutils - libbfd and libopcodes"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.so "$subpkgdir"/usr/lib/
}
gold() {
pkgdesc="GNU binutils - gold linker"
if [ -e "$pkgdir"/usr/bin/ld.gold ]; then
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/ld.gold "$subpkgdir"/usr/bin
fi
mkdir -p "$subpkgdir"/usr/$CTARGET/bin
mv "$pkgdir"/usr/$CTARGET/bin/ld.gold "$subpkgdir"/usr/$CTARGET/bin/ld.gold
}
sha512sums="
8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d binutils-2.38.tar.xz
68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3 binutils-2.39.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
70ec22bd72ef6dddecfd970613387dd4a8cdc8730dd3cbf03d5a0c3a7c4d839383167bb06dad21bf7c235329fd44b5dc4aefe762f68544f17155cf002bf1be4a 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
609cd90d8b334eb309f586b17b9d335a08d3dbb6def7c3eb5c010028fcb681674031e5b9d853aa7a39a50304356a86afc184b85562b3f228f8197f4d29395c8f binutils-mips-disable-assert.patch
27ea91e0e406e2ed464fd692cf92a07e338781789f2d968c8b95d9d5545985056a6f7f500df3952e5ab42165db28b741aa33d6b717e880b11a2e41fe406b13c4 binutils-ppc-fix-machine-options.patch
"
@@ -1,41 +0,0 @@
Fix for DARN opcode error during ppc64le compilation of rng-tools which
occurs with binutils 2.38 but not with binutils 2.37..
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=cebc89b9328;hp=9cbed90ee623d75e31994e7943960c997ba565f2
diff -aur a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -5965,7 +5965,30 @@
options do not count as a new machine, instead they add
to currently selected opcodes. */
ppc_cpu_t machine_sticky = 0;
- new_cpu = ppc_parse_cpu (ppc_cpu, &machine_sticky, cpu_string);
+ /* Unfortunately, some versions of gcc emit a .machine
+ directive very near the start of the compiler's assembly
+ output file. This is bad because it overrides user -Wa
+ cpu selection. Worse, there are versions of gcc that
+ emit the *wrong* cpu, not even respecting the -mcpu given
+ to gcc. See gcc pr101393. And to compound the problem,
+ as of 20220222 gcc doesn't pass the correct cpu option to
+ gas on the command line. See gcc pr59828. Hack around
+ this by keeping sticky options for an early .machine. */
+ asection *sec;
+ for (sec = stdoutput->sections; sec != NULL; sec = sec->next)
+ {
+ segment_info_type *info = seg_info (sec);
+ /* Are the frags for this section perturbed from their
+ initial state? Even .align will count here. */
+ if (info != NULL
+ && (info->frchainP->frch_root != info->frchainP->frch_last
+ || info->frchainP->frch_root->fr_type != rs_fill
+ || info->frchainP->frch_root->fr_fix != 0))
+ break;
+ }
+ new_cpu = ppc_parse_cpu (ppc_cpu,
+ sec == NULL ? &sticky : &machine_sticky,
+ cpu_string);
if (new_cpu != 0)
ppc_cpu = new_cpu;
else
+90 -23
View File
@@ -2,26 +2,32 @@
# Generator: pmbootstrap aportgen binutils-armv7
# Based on: main/binutils
CTARGET_ARCH=armv7
CTARGET="$(arch_to_hostspec $CTARGET_ARCH)"
pkgname=binutils-armv7
pkgver=2.38
pkgver=2.39
pkgrel=1
pkgdesc="Tools necessary to build programs for armv7 targets"
url="https://www.gnu.org/software/binutils/"
makedepends="gettext libtool autoconf automake bison texinfo"
makedepends_build="bison flex texinfo"
makedepends_host="zlib-dev"
makedepends="$makedepends_build $makedepends_host"
arch="x86_64"
license="GPL-2.0 GPL-3.0-or-later LGPL-2.0 BSD"
subpackages="binutils-dev binutils-doc"
source="https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz
binutils-ld-fix-static-linking.patch
gold-mips.patch
ld-bfd-mips.patch
0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
binutils-mips-disable-assert.patch
binutils-ppc-fix-machine-options.patch
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
subpackages=""
subpackages="$subpackages binutils-gold"
fi
if [ "$CHOST" != "$CTARGET" ]; then
@@ -42,41 +48,102 @@ fi
# - CVE-2017-7614
build() {
_target="$(arch_to_hostspec armv7)"
"$builddir"/configure \
--build="$CBUILD" \
--target=$_target \
--with-lib-path=/usr/lib \
local _sysroot=/
local _cross_configure="--enable-install-libiberty --enable-shared"
local _arch_configure=""
local _gold_configure="--disable-gold"
local _plugin_configure="--enable-plugins"
if [ "$CHOST" != "$CTARGET" ]; then
_sysroot="$CBUILDROOT"
_cross_configure="--disable-install-libiberty"
_plugin_configure="--disable-plugins"
fi
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
_gold_configure="--enable-gold"
fi
if [ "$CTARGET_ARCH" = "x86_64" ]; then
_arch_configure="--enable-targets=x86_64-pep"
fi
if [ "$CTARGET_ARCH" = "riscv64" ]; then
_gold_configure="--disable-gold"
fi
case "$CTARGET_ARCH" in
mips*) _hash_style_configure="--enable-default-hash-style=sysv" ;;
*) _hash_style_configure="--enable-default-hash-style=gnu" ;;
esac
./configure \
--build=$CBUILD \
--host=$CHOST \
--target=$CTARGET \
--with-build-sysroot="$CBUILDROOT" \
--with-sysroot=$_sysroot \
--prefix=/usr \
--with-sysroot=/usr/$_target \
--enable-ld=default \
--enable-gold=yes \
--enable-plugins \
--enable-deterministic-archives \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-multilib \
--disable-gprofng \
--enable-ld=default \
$_gold_configure \
--enable-64-bit-bfd \
$_plugin_configure \
--enable-relro \
--enable-deterministic-archives \
--enable-default-execstack=no \
$_cross_configure \
$_arch_configure \
$_hash_style_configure \
--with-pic \
--disable-werror \
--disable-nls
--disable-nls \
--with-mmap \
--with-system-zlib
make
}
package() {
make install DESTDIR="$pkgdir"
# remove man, info folders
rm -rf "$pkgdir"/usr/share
# remove files that conflict with non-cross binutils
rm -rf "$pkgdir"/usr/lib/bfd-plugins
if [ -d "$pkgdir"/usr/lib64 ]; then
mv "$pkgdir"/usr/lib64/* "$pkgdir"/usr/lib/
rmdir "$pkgdir"/usr/lib64
fi
if [ "$CHOST" != "$CTARGET" ]; then
# creating cross tools: remove any files that would conflict
# with the native tools, or other cross tools
rm -r "${pkgdir:?}"/usr/share
rm -f "$pkgdir"/usr/lib/libiberty.a
rm -r "${pkgdir:?}"/usr/lib/bfd-plugins
fi
}
libs() {
pkgdesc="Runtime libraries from binutils - libbfd and libopcodes"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.so "$subpkgdir"/usr/lib/
}
gold() {
pkgdesc="GNU binutils - gold linker"
if [ -e "$pkgdir"/usr/bin/ld.gold ]; then
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/ld.gold "$subpkgdir"/usr/bin
fi
mkdir -p "$subpkgdir"/usr/$CTARGET/bin
mv "$pkgdir"/usr/$CTARGET/bin/ld.gold "$subpkgdir"/usr/$CTARGET/bin/ld.gold
}
sha512sums="
8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d binutils-2.38.tar.xz
68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3 binutils-2.39.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
70ec22bd72ef6dddecfd970613387dd4a8cdc8730dd3cbf03d5a0c3a7c4d839383167bb06dad21bf7c235329fd44b5dc4aefe762f68544f17155cf002bf1be4a 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
609cd90d8b334eb309f586b17b9d335a08d3dbb6def7c3eb5c010028fcb681674031e5b9d853aa7a39a50304356a86afc184b85562b3f228f8197f4d29395c8f binutils-mips-disable-assert.patch
27ea91e0e406e2ed464fd692cf92a07e338781789f2d968c8b95d9d5545985056a6f7f500df3952e5ab42165db28b741aa33d6b717e880b11a2e41fe406b13c4 binutils-ppc-fix-machine-options.patch
"
@@ -1,41 +0,0 @@
Fix for DARN opcode error during ppc64le compilation of rng-tools which
occurs with binutils 2.38 but not with binutils 2.37..
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=cebc89b9328;hp=9cbed90ee623d75e31994e7943960c997ba565f2
diff -aur a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -5965,7 +5965,30 @@
options do not count as a new machine, instead they add
to currently selected opcodes. */
ppc_cpu_t machine_sticky = 0;
- new_cpu = ppc_parse_cpu (ppc_cpu, &machine_sticky, cpu_string);
+ /* Unfortunately, some versions of gcc emit a .machine
+ directive very near the start of the compiler's assembly
+ output file. This is bad because it overrides user -Wa
+ cpu selection. Worse, there are versions of gcc that
+ emit the *wrong* cpu, not even respecting the -mcpu given
+ to gcc. See gcc pr101393. And to compound the problem,
+ as of 20220222 gcc doesn't pass the correct cpu option to
+ gas on the command line. See gcc pr59828. Hack around
+ this by keeping sticky options for an early .machine. */
+ asection *sec;
+ for (sec = stdoutput->sections; sec != NULL; sec = sec->next)
+ {
+ segment_info_type *info = seg_info (sec);
+ /* Are the frags for this section perturbed from their
+ initial state? Even .align will count here. */
+ if (info != NULL
+ && (info->frchainP->frch_root != info->frchainP->frch_last
+ || info->frchainP->frch_root->fr_type != rs_fill
+ || info->frchainP->frch_root->fr_fix != 0))
+ break;
+ }
+ new_cpu = ppc_parse_cpu (ppc_cpu,
+ sec == NULL ? &sticky : &machine_sticky,
+ cpu_string);
if (new_cpu != 0)
ppc_cpu = new_cpu;
else
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-aarch64
pkgver=1.35.0
pkgrel=5
pkgrel=24
_arch="aarch64"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
5be7db2e4793b74ffa487153b1ca52027b6d1a4ca316c152163d1b3030ba3270e645d02522f9c8187b14fc193b5471ccedc7439b38463fabeac08b404f1b6fbb busybox-static-1.35.0-r5-aarch64-edge.apk
c8a27c516cd9651250f520c3c0fd582fa8a1144c5e971d81c6054b2b37639390f62d40d95181b081deeba2654b7c23606fa62751d1fcb75b0616b9fd19daf0d8 busybox-static-1.35.0-r24-aarch64-edge.apk
"
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-armhf
pkgver=1.35.0
pkgrel=5
pkgrel=24
_arch="armhf"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
dcfd4a8af7c0f2ae33cacdc933f38906c9173b9a6476b04624d0dce7bf03277328bc3422182cbf0cf784495ff663326779a39d4a259064d5a740f8bea4f5a3be busybox-static-1.35.0-r5-armhf-edge.apk
cd9f427ee34c435d23d105a34018ed509ff434c5f3aeed1c1c4233d5191150c6a8f39ae1399bd93f0f4300ed93334ed0114fdd48503c122bd4d57ecded099783 busybox-static-1.35.0-r24-armhf-edge.apk
"
+2 -2
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-armv7
pkgver=1.35.0
pkgrel=5
pkgrel=24
_arch="armv7"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
2b2ff67a0cf0ab1b1fc67458f328c7b2e91a24a6c57d4d7707c5c88a68b715af11b2ee29381aaa15946d6bccaf3d6f899f8a760ff87df2156a59bd12e67af71d busybox-static-1.35.0-r5-armv7-edge.apk
45bf57f2d3815d52ea702f99b08d947978f85148c4b6800f7ebf57885697118070c2f872c56fe215ccc5a20c02527e605c020e068a91d1c93d7e77a79d026bb0 busybox-static-1.35.0-r24-armv7-edge.apk
"
+2 -5
View File
@@ -1,4 +1,4 @@
From feb04e50d907683385cc4dc0163cf1d82258073a Mon Sep 17 00:00:00 2001
From 74c7b0df9971b6bc75d7d172c2819ffd21d51050 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH] posix_memalign
@@ -8,7 +8,7 @@ Subject: [PATCH] posix_memalign
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
index 1b0bfe37852..d7b2b19bb3c 100644
index 3b2e4f47915..20f790904a2 100644
--- a/gcc/config/i386/pmm_malloc.h
+++ b/gcc/config/i386/pmm_malloc.h
@@ -27,12 +27,13 @@
@@ -37,6 +37,3 @@ index 1b0bfe37852..d7b2b19bb3c 100644
return __ptr;
else
return NULL;
--
2.35.1
@@ -1,4 +1,4 @@
From d64825212f807435a4b2f8e068c0f65195c8e2e6 Mon Sep 17 00:00:00 2001
From dd1e75ff4ecda96957465b34681f245e818928bd 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] gcc: poison-system-directories
@@ -21,15 +21,15 @@ Upstream-Status: Pending
gcc/configure | 16 ++++++++++++++++
gcc/configure.ac | 10 ++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.c | 2 ++
gcc/incpath.c | 21 +++++++++++++++++++++
gcc/gcc.cc | 2 ++
gcc/incpath.cc | 21 +++++++++++++++++++++
7 files changed, 68 insertions(+)
diff --git a/gcc/common.opt b/gcc/common.opt
index a75b44ee47e..d15105a73f3 100644
index 8a0dafc522d..0357868e22c 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -683,6 +683,10 @@ Wreturn-local-addr
@@ -710,6 +710,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.
@@ -41,10 +41,10 @@ index a75b44ee47e..d15105a73f3 100644
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 2de5a463315..059c818c895 100644
index 64c27c9cfac..f0fbf123aa8 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -218,6 +218,12 @@
@@ -230,6 +230,12 @@
#endif
@@ -58,10 +58,10 @@ index 2de5a463315..059c818c895 100644
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 708328e1670..4b977e313b5 100755
index 5ce0557719a..e9060112384 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1020,6 +1020,7 @@ enable_maintainer_mode
@@ -1023,6 +1023,7 @@ enable_maintainer_mode
enable_link_mutex
enable_link_serialization
enable_version_specific_runtime_libs
@@ -69,7 +69,7 @@ index 708328e1670..4b977e313b5 100755
enable_plugin
enable_host_shared
enable_libquadmath_support
@@ -1782,6 +1783,8 @@ Optional Features:
@@ -1785,6 +1786,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
@@ -78,7 +78,7 @@ index 708328e1670..4b977e313b5 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -31790,6 +31793,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
@@ -31982,6 +31985,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -99,10 +99,10 @@ index 708328e1670..4b977e313b5 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index df1c9cc3200..5461bab88a9 100644
index 23bee7010a3..75a7048045c 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7311,6 +7311,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
@@ -7421,6 +7421,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -120,10 +120,10 @@ index df1c9cc3200..5461bab88a9 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index cf536a15116..7d3f1ccddf3 100644
index 07b440190c3..b2de464798a 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -369,6 +369,7 @@ Objective-C and Objective-C++ Dialects}.
@@ -379,6 +379,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
-Wparentheses -Wno-pedantic-ms-format @gol
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol
@@ -131,7 +131,7 @@ index cf536a15116..7d3f1ccddf3 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
@@ -7728,6 +7729,14 @@ made up of data only and thus requires no special treatment. But, for
@@ -8029,6 +8030,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.
@@ -146,11 +146,11 @@ index cf536a15116..7d3f1ccddf3 100644
@item -Wfloat-equal
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 8ba410c9e17..a83ba34ac4b 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1152,6 +1152,8 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index bb07cc244e3..47fb5802194 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1159,6 +1159,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}}} \
@@ -159,10 +159,10 @@ index 8ba410c9e17..a83ba34ac4b 100644
%{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.c b/gcc/incpath.c
index 446d280321d..fbfc0ce03b8 100644
--- a/gcc/incpath.c
+++ b/gcc/incpath.c
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
index bd2a97938eb..c80f100f476 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@
#include "intl.h"
#include "incpath.h"
@@ -171,7 +171,7 @@ index 446d280321d..fbfc0ce03b8 100644
/* Microsoft Windows does not natively support inodes.
VMS has non-numeric inodes. */
@@ -395,6 +396,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
@@ -399,6 +400,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
}
fprintf (stderr, _("End of search list.\n"));
}
@@ -198,6 +198,3 @@ index 446d280321d..fbfc0ce03b8 100644
}
/* Use given -I paths for #include "..." but not #include <...>, and
--
2.35.1
@@ -1,4 +1,4 @@
From 9675297b3a46b65a54e9df97f26ea445d53c67c6 Mon Sep 17 00:00:00 2001
From 40e45739e7d3787acd13b5b9a4c27d843de0ffe2 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH] specs: turn on -Wl,-z,now by default
@@ -10,14 +10,14 @@ Binutils does not appear to have a similar option for enabling -z
now by default.
---
gcc/doc/invoke.texi | 3 +++
gcc/gcc.c | 1 +
gcc/gcc.cc | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 7d3f1ccddf3..485d2d6b742 100644
index b2de464798a..83bd1bde433 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -15921,6 +15921,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
@@ -16872,6 +16872,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}.
@@ -27,11 +27,11 @@ index 7d3f1ccddf3..485d2d6b742 100644
@item -u @var{symbol}
@opindex u
Pretend the symbol @var{symbol} is undefined, to force linking of
diff --git a/gcc/gcc.c b/gcc/gcc.c
index a83ba34ac4b..faf9ce76b3d 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1150,6 +1150,7 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 47fb5802194..d18b5d7b59a 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1157,6 +1157,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 \
@@ -39,6 +39,3 @@ index a83ba34ac4b..faf9ce76b3d 100644
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
2.35.1
@@ -1,19 +1,19 @@
From 4eb1b3849325b77c4cb66b675119299de35125bb Mon Sep 17 00:00:00 2001
From 666d0aeb808ac9c10d065ae7b196695c81a25a20 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH] Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC,
ObjC++, if the optimization level is > 0
---
gcc/c-family/c-cppbuiltin.c | 4 ++++
gcc/doc/invoke.texi | 6 ++++++
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.c b/gcc/c-family/c-cppbuiltin.c
index 11e015bdb87..de8b7bf246f 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1427,6 +1427,10 @@ c_cpp_builtins (cpp_reader *pfile)
diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc
index 4672ae8486a..573c021e1e8 100644
--- a/gcc/c-family/c-cppbuiltin.cc
+++ b/gcc/c-family/c-cppbuiltin.cc
@@ -1510,6 +1510,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);
@@ -25,10 +25,10 @@ index 11e015bdb87..de8b7bf246f 100644
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 485d2d6b742..164929f7583 100644
index 83bd1bde433..dda299a9987 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10225,6 +10225,12 @@ also turns on the following optimization flags:
@@ -10896,6 +10896,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.
@@ -41,6 +41,3 @@ index 485d2d6b742..164929f7583 100644
@item -O3
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified
--
2.35.1
@@ -1,4 +1,4 @@
From 8de5d46c530ceca9f4add46d5cae3cd52c38eba3 Mon Sep 17 00:00:00 2001
From 75d1a35180cf0967f062765314bf091a64032062 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH] On linux targets pass --as-needed by default to the linker,
@@ -18,11 +18,11 @@ Subject: [PATCH] On linux targets pass --as-needed by default to the linker,
gcc/config/rs6000/sysv4.h | 2 +-
gcc/config/s390/linux.h | 2 +-
gcc/config/sparc/linux.h | 2 +-
gcc/gcc.c | 28 ++++++++++++++++++++--------
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 7f2529a2a1d..b097e1688aa 100644
index 5e4553d79f5..b516f3ef97f 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
@@ -34,7 +34,7 @@ index 7f2529a2a1d..b097e1688aa 100644
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
index c1dae8ca2cf..a87dc740171 100644
index 17f16a55910..9ec667e9a5e 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
@@ -47,7 +47,7 @@ index c1dae8ca2cf..a87dc740171 100644
%{shared:-shared} \
%{!shared: \
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 0c1c4e70b6b..8b581afacdd 100644
index df3da67c4f0..7532bc29f9b 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
@@ -59,7 +59,7 @@ index 0c1c4e70b6b..8b581afacdd 100644
SUBTARGET_EXTRA_LINK_SPEC
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index 5ebbf42a13d..902378e1bad 100644
index 857c0e077bf..8433e56c3e1 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
@@ -87,7 +87,7 @@ index 5ebbf42a13d..902378e1bad 100644
#undef TARGET_F951_OPTIONS
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index a23e7ab3eb7..12ac8cb93a9 100644
index 0102b2a6f3b..994414c1845 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
@@ -100,7 +100,7 @@ index a23e7ab3eb7..12ac8cb93a9 100644
%{!static: \
%{!static-pie: \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index f3e25b1412a..712b0f1c30e 100644
index abc8cf624ca..fe656aeae27 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
@@ -112,7 +112,7 @@ index f3e25b1412a..712b0f1c30e 100644
%{!shared: \
%{!static: \
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index ac40c3dfd3f..6e19e25c35a 100644
index 93510098ccc..3813e536423 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do { \
@@ -125,7 +125,7 @@ index ac40c3dfd3f..6e19e25c35a 100644
%{!shared: \
%{!static: \
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index a390bcece83..be0ee289367 100644
index 6aad7192e69..e1256a55add 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
@@ -137,7 +137,7 @@ index a390bcece83..be0ee289367 100644
%{!static: \
%{rdynamic:-export-dynamic} \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index fce5b896e6e..ee29979dd34 100644
index 38803723ba9..3067ed6eac8 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -58,6 +58,7 @@ along with GCC; see the file COPYING3. If not see
@@ -149,10 +149,10 @@ index fce5b896e6e..ee29979dd34 100644
%{mno-relax:--no-relax} \
%{mbig-endian:-EB} \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index e3f2cd254f6..43499ed29cf 100644
index b2a7afabc73..34ceb4e4fce 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -374,13 +374,13 @@ extern int dot_symbols;
@@ -377,13 +377,13 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
@@ -169,10 +169,10 @@ index e3f2cd254f6..43499ed29cf 100644
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "}}} \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 510abe169c5..3c1f3a8ec5d 100644
index 7e2519de5d4..61215a7a1b3 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -789,7 +789,7 @@ GNU_USER_TARGET_CC1_SPEC
@@ -788,7 +788,7 @@ GNU_USER_TARGET_CC1_SPEC
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#endif
@@ -182,7 +182,7 @@ index 510abe169c5..3c1f3a8ec5d 100644
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index daa48fdfc2b..2fcfc5d770f 100644
index d7b7e7a7b02..d2287f14f2e 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
@@ -195,7 +195,7 @@ index daa48fdfc2b..2fcfc5d770f 100644
%{!shared: \
%{static:-static} \
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 2550d7ee8f0..7596d0b2757 100644
index 6a809e9092d..93bfb92d3ff 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);
@@ -207,11 +207,11 @@ index 2550d7ee8f0..7596d0b2757 100644
%{!mno-relax:%{!r:-relax}} \
%{!shared: \
%{!static: \
diff --git a/gcc/gcc.c b/gcc/gcc.c
index faf9ce76b3d..1ad5da6d769 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -737,8 +737,11 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index d18b5d7b59a..3b76311b544 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -744,8 +744,11 @@ proper position among the other output files. */
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -225,7 +225,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -773,8 +776,11 @@ proper position among the other output files. */
@@ -780,8 +783,11 @@ proper position among the other output files. */
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -239,7 +239,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -791,8 +797,11 @@ proper position among the other output files. */
@@ -798,8 +804,11 @@ proper position among the other output files. */
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -253,7 +253,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -807,8 +816,11 @@ proper position among the other output files. */
@@ -814,8 +823,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
@@ -267,6 +267,3 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.35.1
@@ -1,4 +1,4 @@
From 85e12e3d32a44c3fd10b5327edd542972a179eec Mon Sep 17 00:00:00 2001
From c664283dd30949c5299d1c45bd5740bcfe993d22 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH] Enable -Wformat and -Wformat-security by default.
@@ -8,10 +8,10 @@ Subject: [PATCH] Enable -Wformat and -Wformat-security by default.
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 2005b783c68..c5c6af427cc 100644
index 07da40ef43b..8683f706426 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -637,7 +637,7 @@ Warn about function calls with format strings that write past the end
@@ -692,7 +692,7 @@ Warn about function calls with format strings that write past the end
of the destination region. Same as -Wformat-overflow=1.
Wformat-security
@@ -20,7 +20,7 @@ index 2005b783c68..c5c6af427cc 100644
Warn about possible security problems with format functions.
Wformat-signedness
@@ -658,7 +658,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
@@ -713,7 +713,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
Warn about zero-length formats.
Wformat=
@@ -29,6 +29,3 @@ index 2005b783c68..c5c6af427cc 100644
Warn about printf/scanf/strftime/strfmon format string anomalies.
Wformat-overflow=
--
2.35.1
@@ -1,4 +1,4 @@
From f1e92f5f3576779776c9f3d6aeef76e1569e719a Mon Sep 17 00:00:00 2001
From e4d0ec43e772b6dc7c3708aed5309897df26a125 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH] Enable -Wtrampolines by default.
@@ -8,10 +8,10 @@ Subject: [PATCH] Enable -Wtrampolines by default.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index d15105a73f3..29f9504cb68 100644
index 0357868e22c..6d5e5eebe60 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -775,7 +775,7 @@ Common Var(warn_system_headers) Warning
@@ -802,7 +802,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
@@ -19,7 +19,4 @@ index d15105a73f3..29f9504cb68 100644
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtype-limits
--
2.35.1
Wtrivial-auto-var-init
@@ -1,19 +1,19 @@
From 3503fd734a33b67ec6a9fdc2c52bb8310864b119 Mon Sep 17 00:00:00 2001
From 27e5d5bd3fed9006a2958d2b09750d15ad07383b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH] Disable ssp on -nostdlib, -nodefaultlibs and -ffreestanding
Change the buffer size.
---
gcc/gcc.c | 8 +++++++-
gcc/gcc.cc | 8 +++++++-
gcc/params.opt | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 1ad5da6d769..99314032ec2 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -989,6 +989,12 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 3b76311b544..cc99d0b7aa1 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -996,6 +996,12 @@ proper position among the other output files. */
#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
#endif
@@ -26,7 +26,7 @@ index 1ad5da6d769..99314032ec2 100644
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1288,7 +1294,7 @@ static const char *cc1_options =
@@ -1295,7 +1301,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %w%b.s}}}\
@@ -36,10 +36,10 @@ index 1ad5da6d769..99314032ec2 100644
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
diff --git a/gcc/params.opt b/gcc/params.opt
index 8ba281b4cfa..bab39cdf8a2 100644
index b88e1372005..82a7e25dd2f 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -946,7 +946,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
@@ -1012,7 +1012,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=
@@ -48,6 +48,3 @@ index 8ba281b4cfa..bab39cdf8a2 100644
The lower bound for a buffer to be considered for stack smashing protection.
-param=stack-clash-protection-guard-size=
--
2.35.1
@@ -1,4 +1,4 @@
From c4dd51fe15a938fdd76d781a4eede2a9205eacbc Mon Sep 17 00:00:00 2001
From 83bf2a316222e2fe0b72968cadf4e334d41173f6 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH] Ensure that msgfmt doesn't encounter problems during gcc
@@ -26,7 +26,7 @@ https://bugs.gentoo.org/295480
2 files changed, 2 insertions(+)
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index ab716ff04ea..e595268d9fc 100644
index 8f51544989e..5329804d136 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -38,6 +38,7 @@ MSGFMT = msgfmt
@@ -38,10 +38,10 @@ index ab716ff04ea..e595268d9fc 100644
all-local: all-local-$(USE_NLS)
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index 8edd2e05639..63f61fcf96f 100644
index 243f3db7b72..822210781fa 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -553,6 +553,7 @@ uninstall-am:
@@ -561,6 +561,7 @@ uninstall-am:
.po.mo:
@@ -49,6 +49,3 @@ index 8edd2e05639..63f61fcf96f 100644
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--
2.35.1
@@ -1,4 +1,4 @@
From 0a1fd78184f00fb77dac00dabe98eb025620efc2 Mon Sep 17 00:00:00 2001
From 190064993cd8ddbd48015c1fc1916e4110a97733 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH] Don't declare asprintf if defined as a macro.
@@ -8,7 +8,7 @@ Subject: [PATCH] Don't declare asprintf if defined as a macro.
1 file changed, 3 insertions(+)
diff --git a/include/libiberty.h b/include/libiberty.h
index f4c0fe11d6f..cf4b1043e4d 100644
index a65ced9c820..eb20ab0f95f 100644
--- a/include/libiberty.h
+++ b/include/libiberty.h
@@ -652,8 +652,11 @@ extern void *bsearch_r (const void *, const void *,
@@ -23,6 +23,3 @@ index f4c0fe11d6f..cf4b1043e4d 100644
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
2.35.1
@@ -1,4 +1,4 @@
From f81d67f6fe1f1066642606209c882b333d937cb7 Mon Sep 17 00:00:00 2001
From 838e1daa955d9013c462be3471497cb39641e951 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH] libiberty: copy PIC objects during build process
@@ -8,10 +8,10 @@ Subject: [PATCH] libiberty: copy PIC objects during build process
1 file changed, 1 insertion(+)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index 4f1213b983b..d0224649d30 100644
index 1b17c2e3a47..8db1176df2e 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -264,6 +264,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
@@ -265,6 +265,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
$(AR) $(AR_FLAGS) $(TARGETLIB) \
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
$(RANLIB) $(TARGETLIB); \
@@ -19,6 +19,3 @@ index 4f1213b983b..d0224649d30 100644
cd ..; \
else true; fi
--
2.35.1
@@ -1,4 +1,4 @@
From 3b732288ce771348cbcc9fb633a36b7aff2b4ad4 Mon Sep 17 00:00:00 2001
From 717346fbbd6642ba6b0c3af2deb3771794346507 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:36 +0000
Subject: [PATCH] libitm: disable FORTIFY
@@ -8,7 +8,7 @@ Subject: [PATCH] libitm: disable FORTIFY
1 file changed, 10 insertions(+)
diff --git a/libitm/configure.tgt b/libitm/configure.tgt
index a3d84896cc5..ecb281d5919 100644
index 06e90973ef3..669e64236c3 100644
--- a/libitm/configure.tgt
+++ b/libitm/configure.tgt
@@ -47,6 +47,16 @@ if test "$gcc_cv_have_tls" = yes ; then
@@ -28,6 +28,3 @@ index a3d84896cc5..ecb281d5919 100644
# Map the target cpu to an ARCH sub-directory. At the same time,
# work out any special compilation flags as necessary.
case "${target_cpu}" in
--
2.35.1
+14 -17
View File
@@ -1,33 +1,33 @@
From a3e556187d0a8e9d39544f023960eca0f07d3e83 Mon Sep 17 00:00:00 2001
From 048c394eb709bfd216e307c1b92ac7f8a7e7758b Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH] libgcc_s
---
gcc/config/i386/i386-expand.c | 4 ++--
libgcc/config/i386/cpuinfo.c | 6 +++---
libgcc/config/i386/t-linux | 2 +-
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.c b/gcc/config/i386/i386-expand.c
index 1772fb16c9a..77e04b0c2df 100644
--- a/gcc/config/i386/i386-expand.c
+++ b/gcc/config/i386/i386-expand.c
@@ -11066,10 +11066,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
index 31780b6daf7..d89898846e1 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
@@ -12338,10 +12338,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_local in libgcc.a. */
- /* 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);
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);
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 ef463848f9d..1a3de052c80 100644
index dab1d98060f..cf824b4114a 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -63,7 +63,7 @@ __cpu_indicator_init (void)
@@ -52,6 +52,3 @@ index 8506a635790..564296f788e 100644
-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.35.1
+5 -8
View File
@@ -1,4 +1,4 @@
From f520e67fba621f213146271408ff3210b3527176 Mon Sep 17 00:00:00 2001
From db28b1e0f3b06325026ec5b5e7cdca4e9992e05c Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH] nopie
@@ -9,10 +9,10 @@ Subject: [PATCH] nopie
2 files changed, 40 insertions(+)
diff --git a/gcc/configure b/gcc/configure
index 4b977e313b5..592e81e40f6 100755
index e9060112384..2f6b3265a6c 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -32300,6 +32300,33 @@ fi
@@ -32497,6 +32497,33 @@ fi
$as_echo "$gcc_cv_no_pie" >&6; }
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
@@ -47,10 +47,10 @@ index 4b977e313b5..592e81e40f6 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 5461bab88a9..1577529ffb7 100644
index 75a7048045c..e683d3a7a5f 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7571,6 +7571,19 @@ AC_CACHE_CHECK([for -no-pie option],
@@ -7681,6 +7681,19 @@ AC_CACHE_CHECK([for -no-pie option],
LDFLAGS="$saved_LDFLAGS"])
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
@@ -70,6 +70,3 @@ index 5461bab88a9..1577529ffb7 100644
fi
AC_SUBST([NO_PIE_FLAG])
--
2.35.1
@@ -1,4 +1,4 @@
From 26daa73d678b87a6950df1d79d171ba40ecbce15 Mon Sep 17 00:00:00 2001
From 686e85d8a05f9f9e6c983afb13f937bd88fe84dd Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:18:32 +0000
Subject: [PATCH] dlang: use libucontext on mips64
@@ -8,7 +8,7 @@ Subject: [PATCH] dlang: use libucontext on mips64
1 file changed, 1 insertion(+)
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
index 0643daeb613..b74d9fb3f25 100644
index 0063dd23249..c5e782a1238 100644
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -38,6 +38,7 @@ case "${target}" in
@@ -19,6 +19,3 @@ index 0643daeb613..b74d9fb3f25 100644
;;
power*-*-freebsd*)
LIBPHOBOS_SUPPORTED=yes
--
2.35.1
@@ -1,25 +0,0 @@
From 37310cabb8bc7256899c4d45cc68a47ca2a3232b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:09 +0000
Subject: [PATCH] libffi: use __linux__ instead of __gnu_linux__ for musl
---
libffi/src/closures.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libffi/src/closures.c b/libffi/src/closures.c
index 721ff00ea43..22a699c6340 100644
--- a/libffi/src/closures.c
+++ b/libffi/src/closures.c
@@ -34,7 +34,7 @@
#include <ffi_common.h>
#if !FFI_MMAP_EXEC_WRIT && !FFI_EXEC_TRAMPOLINE_TABLE
-# if __gnu_linux__ && !defined(__ANDROID__)
+# if __linux__ && !defined(__ANDROID__)
/* This macro indicates it may be forbidden to map anonymous memory
with both write and execute permission. Code compiled when this
option is defined will attempt to map such pages once, but if it
--
2.35.1
@@ -1,4 +1,4 @@
From 374a19de60fcd5c31321c3f4d26dcc4b631e8c3f Mon Sep 17 00:00:00 2001
From fd642f8cd61849a9dc169588be5562ceda96a889 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH] ada: fix shared linking
@@ -8,7 +8,7 @@ Subject: [PATCH] ada: fix shared linking
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/link.c b/gcc/ada/link.c
index 5cd5ef64f56..1c611a82cab 100644
index a7574efb472..0ad0d66463c 100644
--- a/gcc/ada/link.c
+++ b/gcc/ada/link.c
@@ -107,9 +107,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
@@ -37,6 +37,3 @@ index 5cd5ef64f56..1c611a82cab 100644
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
2.35.1
@@ -1,425 +0,0 @@
From 586e82425a024d85d1bd9952ca51d8a671aa9b5d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:51 +0000
Subject: [PATCH] dlang: update zlib binding
---
libphobos/src/std/zlib.d | 266 ++++++++++++++++++++++++++++-----------
1 file changed, 196 insertions(+), 70 deletions(-)
diff --git a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
index e6cce240fd5..bd2fe37ebec 100644
--- a/libphobos/src/std/zlib.d
+++ b/libphobos/src/std/zlib.d
@@ -1,7 +1,7 @@
// Written in the D programming language.
/**
- * Compress/decompress data using the $(HTTP www._zlib.net, _zlib library).
+ * Compress/decompress data using the $(HTTP www.zlib.net, zlib library).
*
* Examples:
*
@@ -43,12 +43,12 @@
* References:
* $(HTTP en.wikipedia.org/wiki/Zlib, Wikipedia)
*
- * Copyright: Copyright Digital Mars 2000 - 2011.
+ * Copyright: Copyright The D Language Foundation 2000 - 2011.
* License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
* Authors: $(HTTP digitalmars.com, Walter Bright)
- * Source: $(PHOBOSSRC std/_zlib.d)
+ * Source: $(PHOBOSSRC std/zlib.d)
*/
-/* Copyright Digital Mars 2000 - 2011.
+/* Copyright The D Language Foundation 2000 - 2011.
* Distributed under the Boost Software License, Version 1.0.
* (See accompanying file LICENSE_1_0.txt or copy at
* http://www.boost.org/LICENSE_1_0.txt)
@@ -75,9 +75,9 @@ enum
class ZlibException : Exception
{
- this(int errnum)
- { string msg;
-
+ private static string getmsg(int errnum) nothrow @nogc pure @safe
+ {
+ string msg;
switch (errnum)
{
case Z_STREAM_END: msg = "stream end"; break;
@@ -90,7 +90,12 @@ class ZlibException : Exception
case Z_VERSION_ERROR: msg = "version error"; break;
default: msg = "unknown error"; break;
}
- super(msg);
+ return msg;
+ }
+
+ this(int errnum)
+ {
+ super(getmsg(errnum));
}
}
@@ -104,7 +109,7 @@ class ZlibException : Exception
* buf = buffer containing input data
*
* Returns:
- * A $(D uint) checksum for the provided input data and starting checksum
+ * A `uint` checksum for the provided input data and starting checksum
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Adler-32)
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] buf)
* buf = buffer containing input data
*
* Returns:
- * A $(D uint) checksum for the provided input data and starting checksum
+ * A `uint` checksum for the provided input data and starting checksum
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Cyclic_redundancy_check)
@@ -191,13 +196,14 @@ uint crc32(uint crc, const(void)[] buf)
ubyte[] compress(const(void)[] srcbuf, int level)
in
{
- assert(-1 <= level && level <= 9);
+ assert(-1 <= level && level <= 9, "Compression level needs to be within [-1, 9].");
}
-body
+do
{
import core.memory : GC;
+ import std.array : uninitializedArray;
auto destlen = srcbuf.length + ((srcbuf.length + 1023) / 1024) + 12;
- auto destbuf = new ubyte[destlen];
+ auto destbuf = uninitializedArray!(ubyte[])(destlen);
auto err = etc.c.zlib.compress2(destbuf.ptr, &destlen, cast(ubyte *) srcbuf.ptr, srcbuf.length, level);
if (err)
{
@@ -276,7 +282,7 @@ void[] uncompress(const(void)[] srcbuf, size_t destlen = 0u, int winbits = 15)
throw new ZlibException(err);
}
}
- assert(0);
+ assert(0, "Unreachable code");
}
@system unittest
@@ -370,9 +376,9 @@ class Compress
this(int level, HeaderFormat header = HeaderFormat.deflate)
in
{
- assert(1 <= level && level <= 9);
+ assert(1 <= level && level <= 9, "Legal compression level are in [1, 9].");
}
- body
+ do
{
this.level = level;
this.gzip = header == HeaderFormat.gzip;
@@ -406,6 +412,7 @@ class Compress
const(void)[] compress(const(void)[] buf)
{
import core.memory : GC;
+ import std.array : uninitializedArray;
int err;
ubyte[] destbuf;
@@ -420,7 +427,7 @@ class Compress
inited = 1;
}
- destbuf = new ubyte[zs.avail_in + buf.length];
+ destbuf = uninitializedArray!(ubyte[])(zs.avail_in + buf.length);
zs.next_out = destbuf.ptr;
zs.avail_out = to!uint(destbuf.length);
@@ -461,9 +468,10 @@ class Compress
void[] flush(int mode = Z_FINISH)
in
{
- assert(mode == Z_FINISH || mode == Z_SYNC_FLUSH || mode == Z_FULL_FLUSH);
+ assert(mode == Z_FINISH || mode == Z_SYNC_FLUSH || mode == Z_FULL_FLUSH,
+ "Mode must be either Z_FINISH, Z_SYNC_FLUSH or Z_FULL_FLUSH.");
}
- body
+ do
{
import core.memory : GC;
ubyte[] destbuf;
@@ -523,6 +531,7 @@ class UnCompress
z_stream zs;
int inited;
int done;
+ bool inputEnded;
size_t destbufsize;
HeaderFormat format;
@@ -571,16 +580,16 @@ class UnCompress
const(void)[] uncompress(const(void)[] buf)
in
{
- assert(!done);
+ assert(!done, "Buffer has been flushed.");
}
- body
+ do
{
+ if (inputEnded || !buf.length)
+ return null;
+
import core.memory : GC;
+ import std.array : uninitializedArray;
int err;
- ubyte[] destbuf;
-
- if (buf.length == 0)
- return null;
if (!inited)
{
@@ -598,26 +607,152 @@ class UnCompress
if (!destbufsize)
destbufsize = to!uint(buf.length) * 2;
- destbuf = new ubyte[zs.avail_in * 2 + destbufsize];
- zs.next_out = destbuf.ptr;
- zs.avail_out = to!uint(destbuf.length);
-
- if (zs.avail_in)
- buf = zs.next_in[0 .. zs.avail_in] ~ cast(ubyte[]) buf;
+ auto destbuf = uninitializedArray!(ubyte[])(destbufsize);
+ size_t destFill;
zs.next_in = cast(ubyte*) buf.ptr;
zs.avail_in = to!uint(buf.length);
- err = inflate(&zs, Z_NO_FLUSH);
- if (err != Z_STREAM_END && err != Z_OK)
+ while (true)
{
- GC.free(destbuf.ptr);
- error(err);
+ auto oldAvailIn = zs.avail_in;
+
+ zs.next_out = destbuf[destFill .. $].ptr;
+ zs.avail_out = to!uint(destbuf.length - destFill);
+
+ err = inflate(&zs, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ {
+ inputEnded = true;
+ break;
+ }
+ else if (err != Z_OK)
+ {
+ GC.free(destbuf.ptr);
+ error(err);
+ }
+ else if (!zs.avail_in)
+ break;
+
+ /*
+ According to the zlib manual inflate() stops when either there's
+ no more data to uncompress or the output buffer is full
+ So at this point, the output buffer is too full
+ */
+
+ destFill = destbuf.length;
+
+ if (destbuf.capacity)
+ {
+ if (destbuf.length < destbuf.capacity)
+ destbuf.length = destbuf.capacity;
+ else
+ {
+ auto newLength = GC.extend(destbuf.ptr, destbufsize, destbufsize);
+
+ if (newLength && destbuf.length < destbuf.capacity)
+ destbuf.length = destbuf.capacity;
+ else
+ destbuf.length += destbufsize;
+ }
+ }
+ else
+ destbuf.length += destbufsize;
}
+
destbuf.length = destbuf.length - zs.avail_out;
return destbuf;
}
+ // Test for issues 3191 and 9505
+ @system unittest
+ {
+ import std.algorithm.comparison;
+ import std.array;
+ import std.file;
+ import std.zlib;
+
+ // Data that can be easily compressed
+ ubyte[1024] originalData;
+
+ // This should yield a compression ratio of at least 1/2
+ auto compressedData = compress(originalData, 9);
+ assert(compressedData.length < originalData.length / 2,
+ "The compression ratio is too low to accurately test this situation");
+
+ auto chunkSize = compressedData.length / 4;
+ assert(chunkSize < compressedData.length,
+ "The length of the compressed data is too small to accurately test this situation");
+
+ auto decompressor = new UnCompress();
+ ubyte[originalData.length] uncompressedData;
+ ubyte[] reusedBuf;
+ int progress;
+
+ reusedBuf.length = chunkSize;
+
+ for (int i = 0; i < compressedData.length; i += chunkSize)
+ {
+ auto len = min(chunkSize, compressedData.length - i);
+ // simulate reading from a stream in small chunks
+ reusedBuf[0 .. len] = compressedData[i .. i + len];
+
+ // decompress using same input buffer
+ auto chunk = decompressor.uncompress(reusedBuf);
+ assert(progress + chunk.length <= originalData.length,
+ "The uncompressed result is bigger than the original data");
+
+ uncompressedData[progress .. progress + chunk.length] = cast(const ubyte[]) chunk[];
+ progress += chunk.length;
+ }
+
+ auto chunk = decompressor.flush();
+ assert(progress + chunk.length <= originalData.length,
+ "The uncompressed result is bigger than the original data");
+
+ uncompressedData[progress .. progress + chunk.length] = cast(const ubyte[]) chunk[];
+ progress += chunk.length;
+
+ assert(progress == originalData.length,
+ "The uncompressed and the original data sizes differ");
+ assert(originalData[] == uncompressedData[],
+ "The uncompressed and the original data differ");
+ }
+
+ @system unittest
+ {
+ ubyte[1024] invalidData;
+ auto decompressor = new UnCompress();
+
+ try
+ {
+ auto uncompressedData = decompressor.uncompress(invalidData);
+ }
+ catch (ZlibException e)
+ {
+ assert(e.msg == "data error");
+ return;
+ }
+
+ assert(false, "Corrupted data didn't result in an error");
+ }
+
+ @system unittest
+ {
+ ubyte[2014] originalData = void;
+ auto compressedData = compress(originalData, 9);
+
+ auto decompressor = new UnCompress();
+ auto uncompressedData = decompressor.uncompress(compressedData ~ cast(ubyte[]) "whatever");
+
+ assert(originalData.length == uncompressedData.length,
+ "The uncompressed and the original data sizes differ");
+ assert(originalData[] == uncompressedData[],
+ "The uncompressed and the original data differ");
+ assert(!decompressor.uncompress("whatever").length,
+ "Compression continued after the end");
+ }
+
/**
* Decompress and return any remaining data.
* The returned data should be appended to that returned by uncompress().
@@ -626,49 +761,40 @@ class UnCompress
void[] flush()
in
{
- assert(!done);
+ assert(!done, "Buffer has been flushed before.");
}
out
{
- assert(done);
+ assert(done, "Flushing failed.");
}
- body
+ do
{
- import core.memory : GC;
- ubyte[] extra;
- ubyte[] destbuf;
- int err;
-
done = 1;
- if (!inited)
- return null;
+ return null;
+ }
- L1:
- destbuf = new ubyte[zs.avail_in * 2 + 100];
- zs.next_out = destbuf.ptr;
- zs.avail_out = to!uint(destbuf.length);
+ /// Returns true if all input data has been decompressed and no further data
+ /// can be decompressed (inflate() returned Z_STREAM_END)
+ @property bool empty() const
+ {
+ return inputEnded;
+ }
- err = etc.c.zlib.inflate(&zs, Z_NO_FLUSH);
- if (err == Z_OK && zs.avail_out == 0)
- {
- extra ~= destbuf;
- goto L1;
- }
- if (err != Z_STREAM_END)
- {
- GC.free(destbuf.ptr);
- if (err == Z_OK)
- err = Z_BUF_ERROR;
- error(err);
- }
- destbuf = destbuf.ptr[0 .. zs.next_out - destbuf.ptr];
- err = etc.c.zlib.inflateEnd(&zs);
- inited = 0;
- if (err)
- error(err);
- if (extra.length)
- destbuf = extra ~ destbuf;
- return destbuf;
+ ///
+ @system unittest
+ {
+ // some random data
+ ubyte[1024] originalData = void;
+
+ // append garbage data (or don't, this works in both cases)
+ auto compressedData = cast(ubyte[]) compress(originalData) ~ cast(ubyte[]) "whatever";
+
+ auto decompressor = new UnCompress();
+ auto uncompressedData = decompressor.uncompress(compressedData);
+
+ assert(uncompressedData[] == originalData[],
+ "The uncompressed and the original data differ");
+ assert(decompressor.empty, "The UnCompressor reports not being done");
}
}
--
2.35.1
@@ -1,4 +1,4 @@
From ad053bc46b535e78397f992e3c2c1d28c1ebd1f4 Mon Sep 17 00:00:00 2001
From a547632f5c7caec4a164e8d5e5b568fb7a461365 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH] build: fix CXXFLAGS_FOR_BUILD passing
@@ -8,10 +8,10 @@ Subject: [PATCH] build: fix CXXFLAGS_FOR_BUILD passing
1 file changed, 1 insertion(+)
diff --git a/Makefile.in b/Makefile.in
index 047be0255e2..426949aa91c 100644
index 593495e1650..b96f60e33e2 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -170,6 +170,7 @@ BUILD_EXPORTS = \
@@ -176,6 +176,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
@@ -19,6 +19,3 @@ index 047be0255e2..426949aa91c 100644
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
--
2.35.1
@@ -1,4 +1,4 @@
From 18d44a7f8d801cc6926a73e2dda2f0ce859dc561 Mon Sep 17 00:00:00 2001
From 5bd37f8ee93a0fe1a3f841f48ed6626e7e0aa19d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:01:06 +0000
Subject: [PATCH] add fortify-headers paths
@@ -8,10 +8,10 @@ Subject: [PATCH] add fortify-headers paths
1 file changed, 2 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 4e1db60fced..7fcf402b416 100644
index 74f70793d90..61b07f319f6 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -167,6 +167,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -172,6 +172,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
@@ -20,6 +20,3 @@ index 4e1db60fced..7fcf402b416 100644
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 },
#else
--
2.35.1
@@ -1,38 +0,0 @@
From caeae8288593dbd5a1a6d93508d875eb0d8fdf49 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:19:12 +0000
Subject: [PATCH] dlang: libdruntime: define fcntl.h constants for mips64
---
libphobos/libdruntime/core/sys/posix/fcntl.d | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/libphobos/libdruntime/core/sys/posix/fcntl.d b/libphobos/libdruntime/core/sys/posix/fcntl.d
index 59df921ba41..9ee9f943948 100644
--- a/libphobos/libdruntime/core/sys/posix/fcntl.d
+++ b/libphobos/libdruntime/core/sys/posix/fcntl.d
@@ -871,6 +871,21 @@ else version (CRuntime_Musl)
F_SETLKW = 7,
}
}
+ else version (MIPS_Any)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x010000, // octal 0200000
+ O_NOFOLLOW = 0x020000, // octal 0400000
+ O_DIRECT = 0x008000, // octal 0100000
+ O_LARGEFILE = 0x002000, // octal 0020000
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 33,
+ F_SETLK = 34,
+ F_SETLKW = 35,
+ }
+ }
else
static assert(0, "Platform not supported");
--
2.35.1
@@ -1,4 +1,4 @@
From 38d27ebdcc5a8bea0807b5d56203f0ea5e16868f Mon Sep 17 00:00:00 2001
From d2577dc78a1f159e5c41fd0b53e73fa0e264cb52 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] Alpine musl package provides libssp_nonshared.a. We link to
@@ -9,14 +9,14 @@ Subject: [PATCH] Alpine musl package provides libssp_nonshared.a. We link to
stack-protector flag usage.
---
gcc/gcc.c | 3 +--
gcc/gcc.cc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 99314032ec2..6e91767efe8 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -997,8 +997,7 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index cc99d0b7aa1..c60a75371f8 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1004,8 +1004,7 @@ proper position among the other output files. */
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
@@ -26,6 +26,3 @@ index 99314032ec2..6e91767efe8 100644
#else
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
"|fstack-protector-strong|fstack-protector-explicit" \
--
2.35.1
@@ -1,18 +1,18 @@
From 0cc2a1befaf343e5ce1cbc15bd247eee812bdf33 Mon Sep 17 00:00:00 2001
From bbd5c529ef878c2d6096fd4949616714eb82683a Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:03:42 +0000
Subject: [PATCH] DP: Use --push-state/--pop-state for gold as well when
linking libtsan.
---
gcc/gcc.c | 16 ++++++++--------
gcc/gcc.cc | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 6e91767efe8..22dbbf85850 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -738,10 +738,10 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index c60a75371f8..735b2b1bba1 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -745,10 +745,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 "}" \
@@ -25,7 +25,7 @@ index 6e91767efe8..22dbbf85850 100644
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -777,10 +777,10 @@ proper position among the other output files. */
@@ -784,10 +784,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 "}" \
@@ -38,7 +38,7 @@ index 6e91767efe8..22dbbf85850 100644
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -798,10 +798,10 @@ proper position among the other output files. */
@@ -805,10 +805,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 "}" \
@@ -51,7 +51,7 @@ index 6e91767efe8..22dbbf85850 100644
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -817,10 +817,10 @@ proper position among the other output files. */
@@ -824,10 +824,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 "}" \
@@ -64,6 +64,3 @@ index 6e91767efe8..22dbbf85850 100644
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.35.1
@@ -1,4 +1,4 @@
From feea6f782e83a53487ad633608484dfa3483be1b Mon Sep 17 00:00:00 2001
From 714ed6d9649bf9ed42e34fef9c41169921e63921 Mon Sep 17 00:00:00 2001
From: Nils Andreas Svee <me@lochnair.net>
Date: Thu, 21 Dec 2017 03:14:33 +0100
Subject: [PATCH] mips64: disable multilib support
@@ -10,10 +10,10 @@ multilib is not supported by Alpine GCC
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 47aac9d3d61..4ad81059a86 100644
index 858bbba3a36..2d4f553e652 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -3425,11 +3425,11 @@ struct GTY(()) machine_function {
@@ -3447,11 +3447,11 @@ struct GTY(()) machine_function {
/* If we are *not* using multilibs and the default ABI is not ABI_32 we
need to change these from /lib and /usr/lib. */
#if MIPS_ABI_DEFAULT == ABI_N32
@@ -30,7 +30,7 @@ index 47aac9d3d61..4ad81059a86 100644
/* Load store bonding is not supported by micromips and fix_24k. The
diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64
index 130e1f04707..a64ac2bbb5b 100644
index 2fdd8e00407..406a3676289 100644
--- a/gcc/config/mips/t-linux64
+++ b/gcc/config/mips/t-linux64
@@ -21,6 +21,6 @@ MULTILIB_DIRNAMES = n32 32 64
@@ -43,6 +43,3 @@ index 130e1f04707..a64ac2bbb5b 100644
+ ../lib \
+ ../lib32 \
+ ../lib
--
2.35.1
@@ -1,4 +1,4 @@
From cbd96a32dc2aaa61f6adcb3643e1da21f185f80e Mon Sep 17 00:00:00 2001
From 8fc8d6c26a2a45945182e211bc3ac2eae4d6a11b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:12:55 +0000
Subject: [PATCH] aarch64: disable multilib support
@@ -9,7 +9,7 @@ multilib is unsupported on Alpine GCC
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
index 241b0ef20b6..18e63b34d8b 100644
index d0cd546002a..b63a77f4969 100644
--- a/gcc/config/aarch64/t-aarch64-linux
+++ b/gcc/config/aarch64/t-aarch64-linux
@@ -22,7 +22,7 @@ LIB1ASMSRC = aarch64/lib1funcs.asm
@@ -21,6 +21,3 @@ index 241b0ef20b6..18e63b34d8b 100644
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.35.1
@@ -1,4 +1,4 @@
From e87e415e9a88dbce68ed7b9d8386c3c2d0c0d6b6 Mon Sep 17 00:00:00 2001
From 65ad898df141261a1ccd891a99133ad8f9847133 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:13:59 +0000
Subject: [PATCH] s390x: disable multilib support
@@ -20,6 +20,3 @@ index cc6ab367072..7f498ee1cdc 100644
-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.35.1
@@ -1,4 +1,4 @@
From 5c24869c9bc1a552f8bb5c32a8538c6e065a4db8 Mon Sep 17 00:00:00 2001
From 3263d8634da6d7e1edb1bfd88e1b2627ce0aa1be Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:14:33 +0000
Subject: [PATCH] ppc64[le]: disable multilib support
@@ -12,7 +12,7 @@ multilib is not presently supported on Alpine GCC
4 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/gcc/config/rs6000/t-linux b/gcc/config/rs6000/t-linux
index aeb7440c492..ab14c455d8d 100644
index 4e371255533..128c75c7d39 100644
--- a/gcc/config/rs6000/t-linux
+++ b/gcc/config/rs6000/t-linux
@@ -2,7 +2,8 @@
@@ -36,7 +36,7 @@ index aeb7440c492..ab14c455d8d 100644
endif
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
index e11a118cb5f..df81dc04a32 100644
index 47e0efd5764..f89729af64f 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -28,8 +28,8 @@
@@ -48,7 +48,7 @@ index e11a118cb5f..df81dc04a32 100644
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
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
@@ -76,6 +76,3 @@ index 2e63bdb9fc9..c6e1c5db65d 100644
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
--
2.35.1
@@ -1,4 +1,4 @@
From 25927f8106583ee594e7bcdf92dd1387e0fd024c Mon Sep 17 00:00:00 2001
From bf63353ea679e0bbf2c2f17bb64c75ebd590c6e7 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:14:54 +0000
Subject: [PATCH] x86_64: disable multilib support
@@ -9,7 +9,7 @@ multilib is not presently supported on Alpine GCC
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
index d288b093522..2949033aa04 100644
index 5526ad0e6cc..78866afab36 100644
--- a/gcc/config/i386/t-linux64
+++ b/gcc/config/i386/t-linux64
@@ -33,6 +33,6 @@
@@ -21,6 +21,3 @@ index d288b093522..2949033aa04 100644
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
--
2.35.1
@@ -1,4 +1,4 @@
From 18bcf23cae4069ffe9d9f64e851193d29dd4814f Mon Sep 17 00:00:00 2001
From 2eed19787020ce52cf07b76a5d167c420ec42b61 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] riscv: disable multilib support
@@ -43,7 +43,7 @@ library.
2 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index ee29979dd34..fe8a82d6702 100644
index 3067ed6eac8..4c8c85e3285 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -71,9 +71,3 @@ along with GCC; see the file COPYING3. If not see
@@ -69,6 +69,3 @@ index 216d2776a18..1a8a863853e 100644
+MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib,$(MULTILIB_DIRNAMES)))
MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+MULTILIB_MATCHES := march?rv64gc=march?rv64imafdc
--
2.35.1
@@ -1,4 +1,4 @@
From a46c8d6cb9428db29fbf8a80609ff449354ce111 Mon Sep 17 00:00:00 2001
From 51a35c0fa0e793c6a2c64ae1449c0cfd681d8f8a Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:05:41 +0000
Subject: [PATCH] always build libgcc_eh.a
@@ -10,7 +10,7 @@ highly inspired by:
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 2c8be561eb5..c557750b1b3 100644
index 09b3ec8bc2e..c9ca58c64cc 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -957,8 +957,9 @@ ifneq ($(LIBUNWIND),)
@@ -46,6 +46,3 @@ index 2c8be561eb5..c557750b1b3 100644
parts="$(INSTALL_PARTS)"; \
for file in $$parts; do \
rm -f $(DESTDIR)$(inst_libdir)/$$file; \
--
2.35.1
@@ -1,4 +1,4 @@
From d7064ab25a561bb99c3d0b35663154656013aed2 Mon Sep 17 00:00:00 2001
From 64a1c5f57e278869f41c43ee56cc5defb3dd55c5 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:06:30 +0000
Subject: [PATCH] ada: libgnarl compatibility for musl
@@ -9,10 +9,10 @@ Subject: [PATCH] ada: libgnarl compatibility for musl
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 2272f83d68d..1d78456544a 100644
index 7c9e7ca4518..caafc4aa68f 100644
--- a/gcc/ada/libgnarl/s-osinte__linux.ads
+++ b/gcc/ada/libgnarl/s-osinte__linux.ads
@@ -401,12 +401,6 @@ package System.OS_Interface is
@@ -403,12 +403,6 @@ package System.OS_Interface is
PTHREAD_RWLOCK_PREFER_WRITER_NP : constant := 1;
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP : constant := 2;
@@ -25,7 +25,7 @@ index 2272f83d68d..1d78456544a 100644
function pthread_rwlock_init
(mutex : access pthread_rwlock_t;
attr : access pthread_rwlockattr_t) return int;
@@ -468,11 +462,6 @@ package System.OS_Interface is
@@ -470,11 +464,6 @@ package System.OS_Interface is
protocol : int) return int;
pragma Import (C, pthread_mutexattr_setprotocol);
@@ -38,7 +38,7 @@ index 2272f83d68d..1d78456544a 100644
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 757a6cdfdad..82df94f6a00 100644
index 4ff784f0ea7..b34a12802c6 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
@@ -130,6 +130,3 @@ index 757a6cdfdad..82df94f6a00 100644
Result := pthread_rwlock_init (L.RW'Access, RWlock_Attr'Access);
pragma Assert (Result in 0 | ENOMEM);
--
2.35.1
@@ -1,4 +1,4 @@
From 5193de0a6c96fefe0c46fc9a6b8c27623ad85640 Mon Sep 17 00:00:00 2001
From 82addb1312f4f58a412a664228944009aa5cb569 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:07:48 +0000
Subject: [PATCH] ada: musl support fixes
@@ -11,10 +11,10 @@ Subject: [PATCH] ada: musl support fixes
4 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index b5b8b573ea4..6fce40d1e98 100644
index aaf853e3a2a..e2dd3587ed5 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1748,7 +1748,7 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
@@ -1633,7 +1633,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) \
@@ -23,7 +23,7 @@ index b5b8b573ea4..6fce40d1e98 100644
a-exetim.adb<libgnarl/a-exetim__posix.adb \
a-exetim.ads<libgnarl/a-exetim__default.ads \
s-linux.ads<libgnarl/s-linux.ads \
@@ -2355,7 +2355,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
@@ -2258,7 +2258,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) \
@@ -32,7 +32,7 @@ index b5b8b573ea4..6fce40d1e98 100644
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ppc.ads
@@ -2386,7 +2386,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
@@ -2289,7 +2289,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
endif
# ARM linux, GNU eabi
@@ -41,7 +41,7 @@ index b5b8b573ea4..6fce40d1e98 100644
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
@@ -2597,7 +2597,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
@@ -2504,7 +2504,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) \
@@ -50,7 +50,7 @@ index b5b8b573ea4..6fce40d1e98 100644
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
$(GNATRTL_128BIT_PAIRS) \
@@ -2700,7 +2700,7 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(target_cpu) $(target_os))),)
@@ -2608,7 +2608,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) \
@@ -60,7 +60,7 @@ index b5b8b573ea4..6fce40d1e98 100644
$(X86_64_TARGET_PAIRS) \
$(GNATRTL_128BIT_PAIRS) \
diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index 2e54e69643a..e7e6507e2e0 100644
index 591d033fbca..a485cbf15b9 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -91,6 +91,11 @@
@@ -75,7 +75,7 @@ index 2e54e69643a..e7e6507e2e0 100644
#ifdef __PikeOS__
#define __BSD_VISIBLE 1
@@ -3442,7 +3447,6 @@ __gnat_lwp_self (void)
@@ -3446,7 +3451,6 @@ __gnat_lwp_self (void)
#endif
#if defined (__linux__)
@@ -83,7 +83,7 @@ index 2e54e69643a..e7e6507e2e0 100644
/* glibc versions earlier than 2.7 do not define the routines to handle
dynamically allocated CPU sets. For these targets, we use the static
@@ -3452,7 +3456,7 @@ __gnat_lwp_self (void)
@@ -3456,7 +3460,7 @@ __gnat_lwp_self (void)
/* Dynamic cpu sets */
@@ -92,7 +92,7 @@ index 2e54e69643a..e7e6507e2e0 100644
__gnat_cpu_alloc (size_t count)
{
return CPU_ALLOC (count);
@@ -3465,33 +3469,33 @@ __gnat_cpu_alloc_size (size_t count)
@@ -3469,33 +3473,33 @@ __gnat_cpu_alloc_size (size_t count)
}
void
@@ -134,7 +134,7 @@ index 2e54e69643a..e7e6507e2e0 100644
}
size_t
@@ -3501,23 +3505,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED)
@@ -3505,23 +3509,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED)
}
void
@@ -164,10 +164,10 @@ index 2e54e69643a..e7e6507e2e0 100644
#endif /* !CPU_ALLOC */
#endif /* __linux__ */
diff --git a/gcc/ada/adaint.h b/gcc/ada/adaint.h
index 85997b9ba68..fd10e5b5589 100644
index 2631be5ad3e..d442f4bd6cd 100644
--- a/gcc/ada/adaint.h
+++ b/gcc/ada/adaint.h
@@ -325,13 +325,11 @@ extern void *__gnat_lwp_self (void);
@@ -321,13 +321,11 @@ extern void *__gnat_lwp_self (void);
/* Routines for interface to required CPU set primitives */
@@ -186,7 +186,7 @@ index 85997b9ba68..fd10e5b5589 100644
#if defined (_WIN32)
diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c
index ec9db3a6a4c..6f92e50dd67 100644
index 32d30a49c7e..d960e32e2d0 100644
--- a/gcc/ada/terminals.c
+++ b/gcc/ada/terminals.c
@@ -1132,7 +1132,7 @@ __gnat_setup_winsize (void *desc ATTRIBUTE_UNUSED,
@@ -218,6 +218,3 @@ index ec9db3a6a4c..6f92e50dd67 100644
#elif defined (USE_OPENPTY)
status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL);
#elif defined (USE_CLONE_DEVICE)
--
2.35.1
@@ -1,4 +1,4 @@
From 8a42d93247c375f199f3079538d659f95b9ff2a0 Mon Sep 17 00:00:00 2001
From 7feb681596c4cfa34c769505058aa5bdf31c5131 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:59:45 +0200
Subject: [PATCH] gcc-go: Fix handling of signal 34 on musl
@@ -8,14 +8,14 @@ Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/mksigtab.sh | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
libgo/mksigtab.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/mksigtab.sh b/libgo/mksigtab.sh
index 11e4ec436bd..fe866eacb27 100644
index bea8739957e..3876002efab 100644
--- a/libgo/mksigtab.sh
+++ b/libgo/mksigtab.sh
@@ -82,7 +82,7 @@ checksig _SIGPWR '{_SigNotify, "SIGPWR: power failure restart"}'
@@ -86,7 +86,7 @@ checksig _SIGPWR '{_SigNotify, "SIGPWR: power failure restart"}'
checksig _SIGEMT '{_SigThrow, "SIGEMT: emulate instruction executed"}'
checksig _SIGINFO '{_SigNotify, "SIGINFO: status request from keyboard"}'
checksig _SIGTHR '{_SigNotify, "SIGTHR: reserved"}'
@@ -24,20 +24,3 @@ index 11e4ec436bd..fe866eacb27 100644
checksig _SIGWAITING '{_SigNotify, "SIGWAITING: reserved signal no longer used by"}'
checksig _SIGLWP '{_SigNotify, "SIGLWP: reserved signal no longer used by"}'
checksig _SIGFREEZE '{_SigNotify, "SIGFREEZE: special signal used by CPR"}'
@@ -95,10 +95,12 @@ checksig _SIGLOST ' {_SigNotify, "SIGLOST: resource lost (Sun); server died (G
# Special handling of signals 32 and 33 on GNU/Linux systems,
# because they are special to glibc.
+# Signal 34 is additionally special to Linux systems with musl.
if test "${GOOS}" = "linux"; then
- SIGLIST=$SIGLIST"_32__33_"
+ SIGLIST=$SIGLIST"_32__33__34_"
echo ' 32: {_SigSetStack + _SigUnblock, "signal 32"}, /* SIGCANCEL; see issue 6997 */'
echo ' 33: {_SigSetStack + _SigUnblock, "signal 33"}, /* SIGSETXID; see issues 3871, 9400, 12498 */'
+ echo ' 34: {_SigSetStack + _SigUnblock, "signal 34"}, /* see issue 30062 */'
fi
if test "${GOOS}" = "aix"; then
--
2.35.1
@@ -1,4 +1,4 @@
From c205f79c18add13247a06cfd843f5eb44c4c3cb4 Mon Sep 17 00:00:00 2001
From b6885cf73989161b1b6893b5ae0dafed006d5f13 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 25 Nov 2021 01:47:03 +0000
Subject: [PATCH] There are more than one st_{a,m,c}tim fields in struct stat
@@ -22,6 +22,3 @@ index 0c52ea5d71a..6fef104cc1c 100755
if test "${GOOS}" = "netbsd"; then
st_times='-e s/st_atim/Atimespec/ -e s/st_mtim/Mtimespec/ -e s/st_ctim/Ctimespec/'
fi
--
2.35.1
@@ -1,4 +1,4 @@
From 6e41b6753af412388e9259fe791904146695e84e Mon Sep 17 00:00:00 2001
From c7a22e42ae403154a0c0158495b04b0205102041 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 30 Aug 2020 19:27:51 +0200
Subject: [PATCH] gcc-go: undef SETCONTEXT_CLOBBERS_TLS in proc.c
@@ -8,7 +8,7 @@ Subject: [PATCH] gcc-go: undef SETCONTEXT_CLOBBERS_TLS in proc.c
1 file changed, 4 insertions(+)
diff --git a/libgo/runtime/proc.c b/libgo/runtime/proc.c
index 38bf7a6b255..e50403b5a75 100644
index 3a30748d329..a987678fa84 100644
--- a/libgo/runtime/proc.c
+++ b/libgo/runtime/proc.c
@@ -66,6 +66,10 @@ static void gscanstack(G*);
@@ -22,6 +22,3 @@ index 38bf7a6b255..e50403b5a75 100644
#ifndef SETCONTEXT_CLOBBERS_TLS
static inline void
--
2.35.1
@@ -1,4 +1,4 @@
From cc89c078ffc58a7f6675a60fbca24224effcb7e3 Mon Sep 17 00:00:00 2001
From ef9df74e0c1059e51bb76b1f6d9d4746949d4d34 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Mon, 31 Aug 2020 08:59:40 +0200
Subject: [PATCH] gcc-go: link to libucontext
@@ -8,10 +8,10 @@ Subject: [PATCH] gcc-go: link to libucontext
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index 426949aa91c..f97db1ef569 100644
index b96f60e33e2..b564ddbf792 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -50331,7 +50331,7 @@ configure-target-libgo:
@@ -52802,7 +52802,7 @@ configure-target-libgo:
esac; \
module_srcdir=libgo; \
rm -f no-such-file || : ; \
@@ -20,6 +20,3 @@ index 426949aa91c..f97db1ef569 100644
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
--
2.35.1
@@ -1,4 +1,4 @@
From 3fb914ca83ac18287ee24aa75aba9149e35487ad Mon Sep 17 00:00:00 2001
From 5093aa99f9cdded2e1ddf67b7139da6fac36b0a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 19 Apr 2021 07:21:41 +0200
Subject: [PATCH] Use generic errstr.go implementation on musl
@@ -43,6 +43,3 @@ index 5b19e6f202d..8dc60172186 100644
package syscall
--
2.35.1
@@ -1,4 +1,4 @@
From 52ce9c86c0c89ae45e0d08cc232682e1811aa8f2 Mon Sep 17 00:00:00 2001
From 573a66e4146c9a65d895af9081a4d3d49cfc9e7a Mon Sep 17 00:00:00 2001
From: Drew DeVault <sir@cmpwn.com>
Date: Wed, 9 Dec 2020 16:07:26 +0000
Subject: [PATCH] configure: Add --enable-autolink-libatomic, use in
@@ -9,19 +9,19 @@ This fixes issues with RISC-V.
Makefile.in | 1 +
gcc/config.in | 6 ++++++
gcc/config/gnu-user.h | 12 +++++++++++-
gcc/configure | 34 +++++++++++++++++++++++++++++++---
gcc/configure | 32 ++++++++++++++++++++++++++++++--
gcc/configure.ac | 22 +++++++++++++++++++++-
gcc/doc/install.texi | 8 ++++++++
gcc/doc/tm.texi | 8 +++++++-
gcc/doc/tm.texi.in | 8 +++++++-
gcc/gcc.c | 12 +++++++++++-
9 files changed, 103 insertions(+), 8 deletions(-)
gcc/gcc.cc | 12 +++++++++++-
9 files changed, 102 insertions(+), 7 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index f97db1ef569..7e577ed3dbb 100644
index b564ddbf792..a95c7407d16 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -222,6 +222,7 @@ HOST_EXPORTS = \
@@ -232,6 +232,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; \
@@ -30,10 +30,10 @@ index f97db1ef569..7e577ed3dbb 100644
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
diff --git a/gcc/config.in b/gcc/config.in
index 059c818c895..2a560417440 100644
index f0fbf123aa8..af84efc4f9e 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -106,6 +106,12 @@
@@ -118,6 +118,12 @@
#endif
@@ -47,7 +47,7 @@ index 059c818c895..2a560417440 100644
format instead of DPD */
#ifndef USED_FOR_TARGET
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index 902378e1bad..daf7727a01a 100644
index 8433e56c3e1..0347f10da8b 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
@@ -71,10 +71,10 @@ index 902378e1bad..daf7727a01a 100644
#undef LINK_GCC_C_SEQUENCE_SPEC
diff --git a/gcc/configure b/gcc/configure
index 592e81e40f6..8672298f23f 100755
index 2f6b3265a6c..6dc65bf4ccb 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -978,6 +978,7 @@ with_changes_root_url
@@ -981,6 +981,7 @@ with_changes_root_url
enable_languages
with_multilib_list
with_multilib_generator
@@ -82,7 +82,7 @@ index 592e81e40f6..8672298f23f 100755
with_zstd
with_zstd_include
with_zstd_lib
@@ -1707,6 +1708,9 @@ Optional Features:
@@ -1710,6 +1711,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
@@ -92,7 +92,7 @@ index 592e81e40f6..8672298f23f 100755
--disable-rpath do not hardcode runtime library paths
--enable-sjlj-exceptions
arrange to use setjmp/longjmp exception handling
@@ -8070,7 +8074,6 @@ else
@@ -8324,7 +8328,6 @@ else
fi
@@ -100,7 +100,7 @@ index 592e81e40f6..8672298f23f 100755
# Check whether --with-multilib-generator was given.
if test "${with_multilib_generator+set}" = set; then :
withval=$with_multilib_generator; :
@@ -8078,6 +8081,32 @@ else
@@ -8332,6 +8335,32 @@ else
with_multilib_generator=default
fi
@@ -133,25 +133,16 @@ index 592e81e40f6..8672298f23f 100755
# -------------------------
# Checks for other programs
@@ -19501,7 +19530,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 19501 "configure"
+#line 19158 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -34068,4 +34097,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
@@ -34296,4 +34325,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
-
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 1577529ffb7..e96691f69ba 100644
index e683d3a7a5f..07c81c78336 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1149,6 +1149,27 @@ AC_ARG_WITH(multilib-generator,
@@ -1205,6 +1205,27 @@ AC_ARG_WITH(multilib-generator,
:,
with_multilib_generator=default)
@@ -179,16 +170,16 @@ index 1577529ffb7..e96691f69ba 100644
# -------------------------
# Checks for other programs
# -------------------------
@@ -7729,4 +7750,3 @@ done
@@ -7839,4 +7860,3 @@ done
],
[subdirs='$subdirs'])
AC_OUTPUT
-
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 4c38244ae58..4a544e6a4ee 100644
index 48408d842db..c90be0ee750 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -2213,6 +2213,14 @@ files, but these changed header paths may conflict with some compilation
@@ -2295,6 +2295,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}.
@@ -204,7 +195,7 @@ index 4c38244ae58..4a544e6a4ee 100644
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 b370bc76b25..acc78273983 100644
index c5006afc00d..56b62c69ae8 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.
@@ -223,7 +214,7 @@ index b370bc76b25..acc78273983 100644
@defmac POST_LINK_SPEC
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index 2974dae2701..80e003a38ce 100644
index f869ddd5e5b..57c93f24ac3 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.
@@ -241,11 +232,11 @@ index 2974dae2701..80e003a38ce 100644
@end defmac
@defmac POST_LINK_SPEC
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 22dbbf85850..90aa576037a 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -980,13 +980,23 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 735b2b1bba1..f10f3c91aa7 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -987,13 +987,23 @@ proper position among the other output files. */
# define ASM_DEBUG_OPTION_SPEC ""
#endif
@@ -270,6 +261,3 @@ index 22dbbf85850..90aa576037a 100644
#endif
#ifdef ENABLE_DEFAULT_SSP
--
2.35.1
@@ -1,29 +0,0 @@
From af64f915a4717036a7f1fe637308b455c94e0f1e Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:03:03 +0200
Subject: [PATCH] gcc-go: signal 34 is special on musl libc
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/go/runtime/signal_gccgo.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/go/runtime/signal_gccgo.go b/libgo/go/runtime/signal_gccgo.go
index 2eece687e35..e86490ce203 100644
--- a/libgo/go/runtime/signal_gccgo.go
+++ b/libgo/go/runtime/signal_gccgo.go
@@ -106,7 +106,7 @@ func getsig(i uint32) uintptr {
if sigaction(i, nil, &sa) < 0 {
// On GNU/Linux glibc rejects attempts to call
// sigaction with signal 32 (SIGCANCEL) or 33 (SIGSETXID).
- if GOOS == "linux" && (i == 32 || i == 33) {
+ if GOOS == "linux" && (i == 32 || i == 33 || i == 34) {
return _SIG_DFL
}
throw("sigaction read failure")
--
2.35.1
@@ -1,4 +1,4 @@
From 5010fa237897bca92291ba8835123125d4af933a Mon Sep 17 00:00:00 2001
From 4baaeb9661fa4015d9701e3616ce1ad4e8a07fd8 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 09:45:27 +0200
Subject: [PATCH] configure: fix detection of atomic builtins in libatomic
@@ -22,7 +22,7 @@ See:
1 file changed, 20 insertions(+)
diff --git a/libatomic/configure.tgt b/libatomic/configure.tgt
index 670b0d72cfe..38c2cd9345f 100644
index 33f8c91ce77..3999db2cf8a 100644
--- a/libatomic/configure.tgt
+++ b/libatomic/configure.tgt
@@ -30,6 +30,26 @@
@@ -52,6 +52,3 @@ index 670b0d72cfe..38c2cd9345f 100644
case "${target_cpu}" in
alpha*)
# fenv.c needs this option to generate inexact exceptions.
--
2.35.1
@@ -1,4 +1,4 @@
From 2d924c522dde7426afbb8096d9301b17d0e73121 Mon Sep 17 00:00:00 2001
From 4655244d80aa67904a88d620361f2d37ea4c8576 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 28 Nov 2021 00:54:37 +0100
Subject: [PATCH] libgo: Recognize off64_t and loff_t definitions of musl libc
@@ -18,7 +18,7 @@ it include fcntl.h which defines loff_t on musl.
3 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/libgo/configure b/libgo/configure
index 70f64c974fd..69d15839e8c 100755
index ffe17c9be55..c2dbecef98c 100755
--- a/libgo/configure
+++ b/libgo/configure
@@ -15546,7 +15546,9 @@ _ACEOF
@@ -33,10 +33,10 @@ index 70f64c974fd..69d15839e8c 100755
cat >>confdefs.h <<_ACEOF
diff --git a/libgo/configure.ac b/libgo/configure.ac
index ebab9d9de3e..a3d9d309aba 100644
index 7e2b98ba67c..667feae3c03 100644
--- a/libgo/configure.ac
+++ b/libgo/configure.ac
@@ -602,7 +602,9 @@ AC_STRUCT_DIRENT_D_TYPE
@@ -601,7 +601,9 @@ AC_STRUCT_DIRENT_D_TYPE
AC_CHECK_FUNCS(accept4 dup3 epoll_create1 faccessat fallocate fchmodat fchownat futimesat getxattr inotify_add_watch inotify_init inotify_init1 inotify_rm_watch listxattr mkdirat mknodat open64 openat pipe2 removexattr renameat setxattr sync_file_range splice syscall tee unlinkat unshare utimensat)
AC_TYPE_OFF_T
@@ -79,6 +79,3 @@ index 8ce061e2f5f..b85add15a7b 100644
// SIOCGIFMTU can't be added in the above enum as it might
// be signed in some OSes.
#ifdef SIOCGIFMTU
--
2.35.1
@@ -1,4 +1,4 @@
From 36c79820c1085590f272ef1afcad4744125d96d0 Mon Sep 17 00:00:00 2001
From 76c13560bba3534bff335e5bb571a8b95d50d4ba Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:33:49 +0200
Subject: [PATCH] gcc-go: Use int64 type as offset argument for mmap
@@ -58,6 +58,3 @@ index fa3389d857e..57bed97c710 100644
p := sysMmap(addr, n, prot, flags, fd, off)
if uintptr(p) == _MAP_FAILED {
return nil, errno()
--
2.35.1
@@ -1,4 +1,4 @@
From 353c8abdc34a294c89c24423ef0c4182189117f6 Mon Sep 17 00:00:00 2001
From cf41d579088e1c0b5c33c93657ad041e797b5905 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren@soeren-tempel.net>
Date: Sun, 2 Jan 2022 01:07:03 +0100
Subject: [PATCH] libgo: include asm/ptrace.h for pt_regs definition on PowerPC
@@ -37,7 +37,7 @@ Signed-off-by: Sören Tempel <soeren@soeren-tempel.net>
1 file changed, 6 insertions(+)
diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c
index d30d1603adc..fc01e04e4a1 100644
index 528d9b6d9fe..c67503f0a79 100644
--- a/libgo/runtime/go-signal.c
+++ b/libgo/runtime/go-signal.c
@@ -10,6 +10,12 @@
@@ -53,6 +53,3 @@ index d30d1603adc..fc01e04e4a1 100644
#include "runtime.h"
#ifndef SA_RESTART
--
2.35.1
@@ -1,4 +1,4 @@
From dba87d9796b61f4f3eea83c200a2d208564e2277 Mon Sep 17 00:00:00 2001
From fbc8240ac15225ede8416a27c9978559b85d6877 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Mon, 21 Feb 2022 10:04:47 +0000
Subject: [PATCH] go/gospec: forcibly disable -fsplit-stack support
@@ -6,13 +6,13 @@ Subject: [PATCH] go/gospec: forcibly disable -fsplit-stack support
for some reason, TARGET_CAN_SPLIT_STACK still gets defined on 32-bit x86,
so hackfix it for now
---
gcc/go/gospec.c | 5 +++--
gcc/go/gospec.cc | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/gcc/go/gospec.c b/gcc/go/gospec.c
index cf8d0f2b60e..d5bfa57ea45 100644
--- a/gcc/go/gospec.c
+++ b/gcc/go/gospec.c
diff --git a/gcc/go/gospec.cc b/gcc/go/gospec.cc
index df92b62d8e6..cf168beb4cf 100644
--- a/gcc/go/gospec.cc
+++ b/gcc/go/gospec.cc
@@ -269,11 +269,12 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
/* Copy the 0th argument, i.e., the name of the program itself. */
new_decoded_options[j++] = decoded_options[i++];
@@ -28,6 +28,3 @@ index cf8d0f2b60e..d5bfa57ea45 100644
if (is_m64)
supports_split_stack = 1;
#endif
--
2.35.1
@@ -1,80 +0,0 @@
From 72f32e3383129ad139df76d9a063fac9b03079b1 Mon Sep 17 00:00:00 2001
From: Alex McGrath <amk@amk.ie>
Date: Wed, 13 Oct 2021 23:24:27 +0100
Subject: [PATCH] Fix attempt to use poisoned calloc error in libgccjit
This moves usages of pthread.h to above any usage of system.h as it
included #pragma GCC poison calloc
---
gcc/jit/jit-playback.c | 4 ++--
gcc/jit/jit-recording.c | 4 ++--
gcc/jit/libgccjit.c | 3 ++-
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/gcc/jit/jit-playback.c b/gcc/jit/jit-playback.c
index cee9daa8220..a5600084933 100644
--- a/gcc/jit/jit-playback.c
+++ b/gcc/jit/jit-playback.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#include <pthread.h>
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
@@ -41,8 +43,6 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "stmt.h"
-#include <pthread.h>
-
#include "jit-playback.h"
#include "jit-result.h"
#include "jit-builtins.h"
diff --git a/gcc/jit/jit-recording.c b/gcc/jit/jit-recording.c
index 117ff70114c..d2634a546b1 100644
--- a/gcc/jit/jit-recording.c
+++ b/gcc/jit/jit-recording.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#include <pthread.h>
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
@@ -25,8 +27,6 @@ along with GCC; see the file COPYING3. If not see
#include "pretty-print.h"
#include "toplev.h"
-#include <pthread.h>
-
#include "jit-builtins.h"
#include "jit-recording.h"
#include "jit-playback.h"
diff --git a/gcc/jit/libgccjit.c b/gcc/jit/libgccjit.c
index 0cc650f9810..2f44481eeb0 100644
--- a/gcc/jit/libgccjit.c
+++ b/gcc/jit/libgccjit.c
@@ -18,13 +18,14 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#include <pthread.h>
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "timevar.h"
#include "typed-splay-tree.h"
#include "cppbuiltin.h"
-#include <pthread.h>
#include "libgccjit.h"
#include "jit-recording.h"
--
2.35.1
@@ -0,0 +1,31 @@
From 38270192ea355d8035d9f1b5fe50e36ca3fa3708 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Thu, 30 Jun 2022 17:04:23 +0000
Subject: [PATCH] gcc-go: fix build error with SYS_SECCOMP
fix the build error:
sysinfo.go:6606:7: error: redefinition of 'SYS_SECCOMP'
6606 | const SYS_SECCOMP = _SYS_SECCOMP
| ^
sysinfo.go:6600:7: note: previous definition of 'SYS_SECCOMP' was here
6600 | const SYS_SECCOMP = _SYS_seccomp
| ^
Upstream report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105225
---
libgo/mksysinfo.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh
index 6fef104cc1c..06289a43bdf 100755
--- a/libgo/mksysinfo.sh
+++ b/libgo/mksysinfo.sh
@@ -126,7 +126,7 @@ if ! grep '^const SIGCLD ' ${OUT} >/dev/null 2>&1; then
fi
# The syscall numbers. We force the names to upper case.
-grep '^const _SYS_' gen-sysinfo.go | \
+grep '^const _SYS_[a-z]' gen-sysinfo.go | \
sed -e 's/const _\(SYS_[^= ]*\).*$/\1/' | \
while read sys; do
sup=`echo $sys | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`
@@ -0,0 +1,24 @@
From 20c84de53efcb86993f1a1909e65a97240d6123e Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Thu, 30 Jun 2022 17:08:36 +0000
Subject: [PATCH] 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 1e4db8d4415..9b79bc3c5dd 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
@@ -1,106 +0,0 @@
From aeef0ee2aac43d89ae26c6a3559aae4f8a1d53da Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Thu, 25 Nov 2021 17:44:04 +0100
Subject: [PATCH] stddef.h: add support for musl typedef macro guards
The stddef.h header checks/sets various hardcoded toolchain/os specific
macro guards to prevent redefining types such as ptrdiff_t, wchar_t, or
size_t. However, without this patch, the file does not check/set the
typedef macro guards for musl libc. This causes types such as size_t to
be defined twice for files which include both musl's stddef.h as well as
GCC's ginclude/stddef.h. This is, for example, the case for
libgo/sysinfo.c. If libgo/sysinfo.c has multiple typedefs for size_t
this confuses -fdump-go-spec and causes size_t not to be included in the
generated type definitions thereby causing a gcc-go compilation failure
on musl with the following error message:
sysinfo.go:7765:13: error: use of undefined type '_size_t'
7765 | type Size_t _size_t
| ^
libcall_posix.go:49:35: error: non-integer len argument in make
49 | b := make([]byte, len)
|
This commit fixes this issue by ensuring that ptrdiff_t, wchar_t, and size_t
are only defined once in the pre-processed libgo/sysinfo.c file by enhancing
gcc/ginclude/stddef.h with musl-specific typedef macro guards.
---
gcc/ginclude/stddef.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h
index 66619fe43b1..50d710a5ab9 100644
--- a/gcc/ginclude/stddef.h
+++ b/gcc/ginclude/stddef.h
@@ -128,6 +128,7 @@ _TYPE_wchar_t;
#ifndef ___int_ptrdiff_t_h
#ifndef _GCC_PTRDIFF_T
#ifndef _PTRDIFF_T_DECLARED /* DragonFly */
+#ifndef __DEFINED_ptrdiff_t /* musl libc */
#define _PTRDIFF_T
#define _T_PTRDIFF_
#define _T_PTRDIFF
@@ -137,10 +138,12 @@ _TYPE_wchar_t;
#define ___int_ptrdiff_t_h
#define _GCC_PTRDIFF_T
#define _PTRDIFF_T_DECLARED
+#define __DEFINED_ptrdiff_t
#ifndef __PTRDIFF_TYPE__
#define __PTRDIFF_TYPE__ long int
#endif
typedef __PTRDIFF_TYPE__ ptrdiff_t;
+#endif /* __DEFINED_ptrdiff_t */
#endif /* _PTRDIFF_T_DECLARED */
#endif /* _GCC_PTRDIFF_T */
#endif /* ___int_ptrdiff_t_h */
@@ -174,6 +177,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
#ifndef _SIZE_T_DEFINED
#ifndef _BSD_SIZE_T_DEFINED_ /* Darwin */
#ifndef _SIZE_T_DECLARED /* FreeBSD 5 */
+#ifndef __DEFINED_size_t /* musl libc */
#ifndef ___int_size_t_h
#ifndef _GCC_SIZE_T
#ifndef _SIZET_
@@ -191,6 +195,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
#define _SIZE_T_DEFINED
#define _BSD_SIZE_T_DEFINED_ /* Darwin */
#define _SIZE_T_DECLARED /* FreeBSD 5 */
+#define __DEFINED_size_t /* musl libc */
#define ___int_size_t_h
#define _GCC_SIZE_T
#define _SIZET_
@@ -215,6 +220,7 @@ typedef long ssize_t;
#endif /* _SIZET_ */
#endif /* _GCC_SIZE_T */
#endif /* ___int_size_t_h */
+#endif /* __DEFINED_size_t */
#endif /* _SIZE_T_DECLARED */
#endif /* _BSD_SIZE_T_DEFINED_ */
#endif /* _SIZE_T_DEFINED */
@@ -251,6 +257,7 @@ typedef long ssize_t;
#ifndef _BSD_WCHAR_T_DEFINED_ /* Darwin */
#ifndef _BSD_RUNE_T_DEFINED_ /* Darwin */
#ifndef _WCHAR_T_DECLARED /* FreeBSD 5 */
+#ifndef __DEFINED_wchar_t /* musl libc */
#ifndef _WCHAR_T_DEFINED_
#ifndef _WCHAR_T_DEFINED
#ifndef _WCHAR_T_H
@@ -272,6 +279,7 @@ typedef long ssize_t;
#define __INT_WCHAR_T_H
#define _GCC_WCHAR_T
#define _WCHAR_T_DECLARED
+#define __DEFINED_wchar_t
/* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_
instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other
@@ -326,6 +334,7 @@ typedef __WCHAR_TYPE__ wchar_t;
#endif
#endif
#endif
+#endif /* __DEFINED_wchar_t */
#endif /* _WCHAR_T_DECLARED */
#endif /* _BSD_RUNE_T_DEFINED_ */
#endif
--
2.35.1
@@ -1,4 +1,4 @@
From e74e2946a534fbac7e8ec6c687c407761daef49a Mon Sep 17 00:00:00 2001
From b6554d1207d0f5771c2f5d11316b61787e4dd705 Mon Sep 17 00:00:00 2001
From: Mathias LANG <pro.mathias.lang@gmail.com>
Date: Mon, 17 Jan 2022 16:31:09 +0000
Subject: [PATCH] gdc: unconditionally link libgphobos against libucontext
@@ -9,10 +9,10 @@ ref: alpine/aports#13422
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index 7e577ed3dbb..da40b61a8c5 100644
index a95c7407d16..ea942d60387 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -51248,7 +51248,7 @@ configure-target-libphobos:
@@ -53287,7 +53287,7 @@ configure-target-libphobos:
esac; \
module_srcdir=libphobos; \
rm -f no-such-file || : ; \
@@ -21,6 +21,3 @@ index 7e577ed3dbb..da40b61a8c5 100644
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
--
2.35.1
@@ -0,0 +1,51 @@
From 39f5c9a850917a3c19630c0115ef0d5b0f151c72 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 13:26:49 +0200
Subject: [PATCH] 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 9da06f087d0..0db0acfb9c2 100755
--- a/libphobos/configure
+++ b/libphobos/configure
@@ -15192,14 +15192,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]))
@@ -1,115 +0,0 @@
From 2c6bf28619c9b3bf713f7f5319c5d750a6c297ae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren@soeren-tempel.net>
Date: Fri, 21 Jan 2022 19:22:46 +0000
Subject: [PATCH] Disable -fsplit-stack support on non-glibc targets
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The -fsplit-stack option requires the pthread_t TCB definition in the
libc to provide certain struct fields at specific hardcoded offsets. As
far as I know, only glibc provides these fields at the required offsets.
Most notably, musl libc does not have these fields. However, since gcc
accesses the fields using a fixed offset, this does not cause a
compile-time error, but instead results in a silent memory corruption at
run-time with musl libc. For example, on s390x libgcc's
__stack_split_initialize CTOR will overwrite the cancel field in the
pthread_t TCB on musl.
The -fsplit-stack option is used within the gcc code base itself by
gcc-go (if available). On musl-based systems with split-stack support
(i.e. s390x or x86) this causes Go programs compiled with gcc-go to
misbehave at run-time.
This patch fixes gcc-go on musl by disabling -fsplit-stack in gcc itself
since it is not supported on non-glibc targets anyhow. This is achieved
by checking if gcc targets a glibc-based system. This check has been
added for x86 and s390x, the rs6000 config already checks for
TARGET_GLIBC_MAJOR. Other architectures do not have split-stack
support. With this patch applied, the gcc-go configure script will
detect that -fsplit-stack support is not available and will not use it.
See https://www.openwall.com/lists/musl/2012/10/16/12
This patch was written under the assumption that glibc is the only libc
implementation which supports the required fields at the required
offsets in the pthread_t TCB. The patch has been tested on Alpine Linux
Edge on the s390x and x86 architectures by bootstrapping Google's Go
implementation with gcc-go.
Signed-off-by: Sören Tempel <soeren@soeren-tempel.net>
gcc/ChangeLog:
* common/config/s390/s390-common.c (s390_supports_split_stack):
Only support split-stack on glibc targets.
* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN): Ditto.
* config/i386/gnu.h (defined): Ditto.
---
gcc/common/config/s390/s390-common.c | 14 ++++++++++----
gcc/config/i386/gnu-user-common.h | 5 +++--
gcc/config/i386/gnu.h | 5 ++++-
3 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/gcc/common/config/s390/s390-common.c b/gcc/common/config/s390/s390-common.c
index b6bc8501742..8c1e590322d 100644
--- a/gcc/common/config/s390/s390-common.c
+++ b/gcc/common/config/s390/s390-common.c
@@ -116,13 +116,19 @@ s390_handle_option (struct gcc_options *opts ATTRIBUTE_UNUSED,
/* -fsplit-stack uses a field in the TCB, available with glibc-2.23.
We don't verify it, since earlier versions just have padding at
- its place, which works just as well. */
+ its place, which works just as well. For other libc implementations
+ we disable the feature entirely to avoid corrupting the TCB. */
static bool
-s390_supports_split_stack (bool report ATTRIBUTE_UNUSED,
- struct gcc_options *opts ATTRIBUTE_UNUSED)
+s390_supports_split_stack (bool report,
+ struct gcc_options *opts)
{
- return true;
+ if (opts->x_linux_libc == LIBC_GLIBC)
+ return true;
+
+ if (report)
+ error ("%<-fsplit-stack%> currently only supported on GNU/Linux");
+ return false;
}
#undef TARGET_DEFAULT_TARGET_FLAGS
diff --git a/gcc/config/i386/gnu-user-common.h b/gcc/config/i386/gnu-user-common.h
index 00226f5a455..6e13315b5a3 100644
--- a/gcc/config/i386/gnu-user-common.h
+++ b/gcc/config/i386/gnu-user-common.h
@@ -66,7 +66,8 @@ along with GCC; see the file COPYING3. If not see
#define STACK_CHECK_STATIC_BUILTIN 1
/* We only build the -fsplit-stack support in libgcc if the
- assembler has full support for the CFI directives. */
-#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE
+ assembler has full support for the CFI directives and
+ targets glibc. */
+#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE && OPTION_GLIBC
#define TARGET_CAN_SPLIT_STACK
#endif
diff --git a/gcc/config/i386/gnu.h b/gcc/config/i386/gnu.h
index 25fbc07f58c..afd3e8e8841 100644
--- a/gcc/config/i386/gnu.h
+++ b/gcc/config/i386/gnu.h
@@ -35,7 +35,10 @@ along with GCC. If not, see <http://www.gnu.org/licenses/>.
crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
#endif
-#ifdef TARGET_LIBC_PROVIDES_SSP
+/* -fsplit-stack uses a field in the TCB at a fixed offset. This
+ field is only available for glibc. Disable -fsplit-stack for
+ other libc implementations to avoid silent TCB corruptions. */
+#if defined (TARGET_LIBC_PROVIDES_SSP) && OPTION_GLIBC
/* i386 glibc provides __stack_chk_guard in %gs:0x14. */
#define TARGET_THREAD_SSP_OFFSET 0x14
--
2.35.1
@@ -0,0 +1,107 @@
From 9cef407678b40c20ecc39850c7e43346ad92a60b Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <siarheit@google.com>
Date: Mon, 27 Jun 2022 03:31:45 +0100
Subject: [PATCH] c++: avoid <memory> poisoning on musl [PR106102]
On musl <pthread.h> uses calloc() (via <sched.h>). <memory> includes
it indirectly and exposes use of poisoned calloc() when module code
is built:
/build/build/./prev-gcc/xg++ ... ../../gcc-13-20220626/gcc/cp/mapper-resolver.cc
In file included from /<<NIX>>/musl-1.2.3-dev/include/pthread.h:30,
from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/x86_64-unknown-linux-musl/bits/gthr-default.h:35,
....
from /build/build/prev-x86_64-unknown-linux-musl/libstdc++-v3/include/memory:77,
from ../../gcc-13-20220626/gcc/../libcody/cody.hh:24,
from ../../gcc-13-20220626/gcc/cp/../../c++tools/resolver.h:25,
from ../../gcc-13-20220626/gcc/cp/../../c++tools/resolver.cc:23,
from ../../gcc-13-20220626/gcc/cp/mapper-resolver.cc:32:
/<<NIX>>/musl-1.2.3-dev/include/sched.h:84:7: error: attempt to use poisoned "calloc"
84 | void *calloc(size_t, size_t);
| ^
/<<NIX>>/musl-1.2.3-dev/include/sched.h:124:36: error: attempt to use poisoned "calloc"
124 | #define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)))
| ^
gcc/cp/
PR c++/106102
* mapper-client.cc: Include <memory> via "system.h".
* mapper-resolver.cc: Ditto.
* module.cc: Ditto.
libcc1/
PR c++/106102
* libcc1plugin.cc: Include <memory> via "system.h".
* libcp1plugin.cc: Ditto.
(cherry picked from commit 3b21c21f3f5726823e19728fdd1571a14aae0fb3)
---
gcc/cp/mapper-client.cc | 1 +
gcc/cp/mapper-resolver.cc | 1 +
gcc/cp/module.cc | 1 +
libcc1/libcc1plugin.cc | 1 +
libcc1/libcp1plugin.cc | 1 +
5 files changed, 5 insertions(+)
diff --git a/gcc/cp/mapper-client.cc b/gcc/cp/mapper-client.cc
index 8603a886a09..fe9544b5ba4 100644
--- a/gcc/cp/mapper-client.cc
+++ b/gcc/cp/mapper-client.cc
@@ -27,6 +27,7 @@ along with GCC; see the file COPYING3. If not see
#define INCLUDE_STRING
#define INCLUDE_VECTOR
#define INCLUDE_MAP
+#define INCLUDE_MEMORY
#include "system.h"
#include "line-map.h"
diff --git a/gcc/cp/mapper-resolver.cc b/gcc/cp/mapper-resolver.cc
index e3d29fb5ada..e70d1b4ae2c 100644
--- a/gcc/cp/mapper-resolver.cc
+++ b/gcc/cp/mapper-resolver.cc
@@ -25,6 +25,7 @@ along with GCC; see the file COPYING3. If not see
#define INCLUDE_VECTOR
#define INCLUDE_ALGORITHM
#define INCLUDE_MAP
+#define INCLUDE_MEMORY
#include "system.h"
// We don't want or need to be aware of networking
diff --git a/gcc/cp/module.cc b/gcc/cp/module.cc
index cebf9c35c1d..5c5d02bb523 100644
--- a/gcc/cp/module.cc
+++ b/gcc/cp/module.cc
@@ -202,6 +202,7 @@ Classes used:
#define _DEFAULT_SOURCE 1 /* To get TZ field of struct tm, if available. */
#include "config.h"
+#define INCLUDE_MEMORY
#define INCLUDE_STRING
#define INCLUDE_VECTOR
#include "system.h"
diff --git a/libcc1/libcc1plugin.cc b/libcc1/libcc1plugin.cc
index 12ab5a57c8d..bdd0bdabe77 100644
--- a/libcc1/libcc1plugin.cc
+++ b/libcc1/libcc1plugin.cc
@@ -31,6 +31,7 @@
#undef PACKAGE_TARNAME
#undef PACKAGE_VERSION
+#define INCLUDE_MEMORY
#include "gcc-plugin.h"
#include "system.h"
#include "coretypes.h"
diff --git a/libcc1/libcp1plugin.cc b/libcc1/libcp1plugin.cc
index 83dab7f58b1..e2d5039a0a1 100644
--- a/libcc1/libcp1plugin.cc
+++ b/libcc1/libcp1plugin.cc
@@ -32,6 +32,7 @@
#undef PACKAGE_TARNAME
#undef PACKAGE_VERSION
+#define INCLUDE_MEMORY
#include "gcc-plugin.h"
#include "system.h"
#include "coretypes.h"
@@ -0,0 +1,117 @@
From f982c816d8f52a65231544b838160484b5ed4c71 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <siarheit@google.com>
Date: Mon, 27 Jun 2022 14:44:48 +0100
Subject: [PATCH] jit: avoid calloc() poisoning on musl [PR106102]
On musl <pthread.h> uses calloc() (via <sched.h>). jit/ includes
it directly and exposes use of poisoned calloc():
/build/build/./prev-gcc/xg++ ... ../../gcc-13-20220626/gcc/jit/jit-playback.cc
make[3]: *** [Makefile:1143: jit/libgccjit.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /<<NIX>>/musl-1.2.3-dev/include/pthread.h:30,
from ../../gcc-13-20220626/gcc/jit/jit-playback.cc:44:
/<<NIX>>/musl-1.2.3-dev/include/sched.h:84:7: error: attempt to use poisoned "calloc"
84 | void *calloc(size_t, size_t);
| ^
/<<NIX>>/musl-1.2.3-dev/include/sched.h:124:36: error: attempt to use poisoned "calloc"
124 | #define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)))
| ^
The change moves <pthread.h> inclusion to "system.h" under new
INCLUDE_PTHREAD_H guard and uses this mechanism in libgccjit.
gcc/
PR c++/106102
* system.h: Introduce INCLUDE_PTHREAD_H macros to include <pthread.h>.
gcc/jit/
PR c++/106102
* jit-playback.cc: Include <pthread.h> via "system.h" to avoid calloc()
poisoning.
* jit-recording.cc: Ditto.
* libgccjit.cc: Ditto.
(cherry picked from commit 49d508065bdd36fb1a9b6aad9666b1edb5e06474)
---
gcc/jit/jit-playback.cc | 3 +--
gcc/jit/jit-recording.cc | 2 +-
gcc/jit/libgccjit.cc | 2 +-
gcc/system.h | 4 ++++
4 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/gcc/jit/jit-playback.cc b/gcc/jit/jit-playback.cc
index 6be6bdf8dea..79714132b91 100644
--- a/gcc/jit/jit-playback.cc
+++ b/gcc/jit/jit-playback.cc
@@ -19,6 +19,7 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_PTHREAD_H
#include "system.h"
#include "coretypes.h"
#include "target.h"
@@ -41,8 +42,6 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "stmt.h"
-#include <pthread.h>
-
#include "jit-playback.h"
#include "jit-result.h"
#include "jit-builtins.h"
diff --git a/gcc/jit/jit-recording.cc b/gcc/jit/jit-recording.cc
index a31720f043e..5556b9c4905 100644
--- a/gcc/jit/jit-recording.cc
+++ b/gcc/jit/jit-recording.cc
@@ -19,13 +19,13 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_PTHREAD_H
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "pretty-print.h"
#include "toplev.h"
-#include <pthread.h>
#include "jit-builtins.h"
#include "jit-recording.h"
diff --git a/gcc/jit/libgccjit.cc b/gcc/jit/libgccjit.cc
index cc6486c9cad..4c991e5436b 100644
--- a/gcc/jit/libgccjit.cc
+++ b/gcc/jit/libgccjit.cc
@@ -19,12 +19,12 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_PTHREAD_H
#include "system.h"
#include "coretypes.h"
#include "timevar.h"
#include "typed-splay-tree.h"
#include "cppbuiltin.h"
-#include <pthread.h>
#include "libgccjit.h"
#include "jit-recording.h"
diff --git a/gcc/system.h b/gcc/system.h
index c5562cc49a3..e10c34f70ec 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -750,6 +750,10 @@ extern int vsnprintf (char *, size_t, const char *, va_list);
#endif
#endif
+#ifdef INCLUDE_PTHREAD_H
+#include <pthread.h>
+#endif
+
#ifdef INCLUDE_ISL
#ifdef HAVE_isl
#include <isl/options.h>
@@ -1,94 +0,0 @@
From 4ea687132408a7c662706c4a7eb3c61b7773d735 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Fri, 21 Jan 2022 13:24:00 -0800
Subject: [PATCH] x86: Properly disable -fsplit-stack support on non-glibc
targets
Revert x86 changes in
commit c163647ffbc9a20c8feb6e079dbecccfe016c82e
Author: Soren Tempel <soeren@soeren-tempel.net>
Date: Fri Jan 21 19:22:46 2022 +0000
Disable -fsplit-stack support on non-glibc targets
and change ix86_supports_split_stack to return true only on glibc.
PR bootstrap/104170
* common/config/i386/i386-common.c (ix86_supports_split_stack):
Return true only on glibc.
* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN):
Revert commit c163647ffbc.
* config/i386/gnu.h (TARGET_LIBC_PROVIDES_SSP): Likewise.
---
gcc/common/config/i386/i386-common.c | 17 +++++++++++------
gcc/config/i386/gnu-user-common.h | 5 ++---
gcc/config/i386/gnu.h | 5 +----
3 files changed, 14 insertions(+), 13 deletions(-)
diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c
index 96549aa7d7e..a3b5258e828 100644
--- a/gcc/common/config/i386/i386-common.c
+++ b/gcc/common/config/i386/i386-common.c
@@ -1696,16 +1696,21 @@ ix86_option_init_struct (struct gcc_options *opts)
field in the TCB, so they cannot be used together. */
static bool
-ix86_supports_split_stack (bool report ATTRIBUTE_UNUSED,
+ix86_supports_split_stack (bool report,
struct gcc_options *opts ATTRIBUTE_UNUSED)
{
+#ifdef TARGET_THREAD_SPLIT_STACK_OFFSET
+ if (opts->x_linux_libc != LIBC_GLIBC)
+#endif
+ {
+ if (report)
+ error ("%<-fsplit-stack%> currently only supported on GNU/Linux");
+ return false;
+ }
+
bool ret = true;
-#ifndef TARGET_THREAD_SPLIT_STACK_OFFSET
- if (report)
- error ("%<-fsplit-stack%> currently only supported on GNU/Linux");
- ret = false;
-#else
+#ifdef TARGET_THREAD_SPLIT_STACK_OFFSET
if (!HAVE_GAS_CFI_PERSONALITY_DIRECTIVE)
{
if (report)
diff --git a/gcc/config/i386/gnu-user-common.h b/gcc/config/i386/gnu-user-common.h
index 6e13315b5a3..00226f5a455 100644
--- a/gcc/config/i386/gnu-user-common.h
+++ b/gcc/config/i386/gnu-user-common.h
@@ -66,8 +66,7 @@ along with GCC; see the file COPYING3. If not see
#define STACK_CHECK_STATIC_BUILTIN 1
/* We only build the -fsplit-stack support in libgcc if the
- assembler has full support for the CFI directives and
- targets glibc. */
-#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE && OPTION_GLIBC
+ assembler has full support for the CFI directives. */
+#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE
#define TARGET_CAN_SPLIT_STACK
#endif
diff --git a/gcc/config/i386/gnu.h b/gcc/config/i386/gnu.h
index afd3e8e8841..25fbc07f58c 100644
--- a/gcc/config/i386/gnu.h
+++ b/gcc/config/i386/gnu.h
@@ -35,10 +35,7 @@ along with GCC. If not, see <http://www.gnu.org/licenses/>.
crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
#endif
-/* -fsplit-stack uses a field in the TCB at a fixed offset. This
- field is only available for glibc. Disable -fsplit-stack for
- other libc implementations to avoid silent TCB corruptions. */
-#if defined (TARGET_LIBC_PROVIDES_SSP) && OPTION_GLIBC
+#ifdef TARGET_LIBC_PROVIDES_SSP
/* i386 glibc provides __stack_chk_guard in %gs:0x14. */
#define TARGET_THREAD_SSP_OFFSET 0x14
--
2.35.1
@@ -0,0 +1,28 @@
From d54419ddcc14f52517017147201560da5353c436 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 17 Jul 2022 02:52:13 +0200
Subject: [PATCH] libgo: adjust name of union in sigevent struct
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The union in struct sigevent is named __sev_fields on musl but
_sigev_un on glibc. Not sure what this code actually does and
how this works if the union layout is different…
---
libgo/go/runtime/os_linux.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/go/runtime/os_linux.go b/libgo/go/runtime/os_linux.go
index 96fb178870e..a75a2dd703f 100644
--- a/libgo/go/runtime/os_linux.go
+++ b/libgo/go/runtime/os_linux.go
@@ -365,7 +365,7 @@ func setThreadCPUProfiler(hz int32) {
var sevp _sigevent
sevp.sigev_notify = _SIGEV_THREAD_ID
sevp.sigev_signo = _SIGPROF
- *((*int32)(unsafe.Pointer(&sevp._sigev_un))) = int32(mp.procid)
+ *((*int32)(unsafe.Pointer(&sevp.__sev_fields))) = int32(mp.procid)
ret := timer_create(_CLOCK_THREAD_CPUTIME_ID, &sevp, &timerid)
if ret != 0 {
// If we cannot create a timer for this M, leave profileTimerValid false
@@ -1,298 +0,0 @@
From 7b5108375bb67532af30d1e7f553ac5f3b1096fe Mon Sep 17 00:00:00 2001
From: Jakub Jelinek <jakub@redhat.com>
Date: Mon, 24 Jan 2022 11:13:39 +0100
Subject: [PATCH] properly disable -fsplit-stack on non-glibc targets
[PR104170]
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
On Sat, Jan 22, 2022 at 10:32:21AM +0100, Martin Liška wrote:
> I've just noticed the patch broke a few cross compilers:
>
> s390x-ibm-tpf:
>
> /home/marxin/buildworker/zen2-cross-compilers/build/gcc/common/config/s390/s390-common.cc: In function ‘bool s390_supports_split_stack(bool, gcc_options*)’:
> /home/marxin/buildworker/zen2-cross-compilers/build/gcc/common/config/s390/s390-common.cc:126:13: error: ‘struct gcc_options’ has no member named ‘x_linux_libc’
> 126 | if (opts->x_linux_libc == LIBC_GLIBC)
> | ^~~~~~~~~~~~
>
> i686-kopensolaris-gnu, i686-symbolics-gnu
>
> /home/marxin/buildworker/zen2-cross-compilers/build/gcc/common/config/i386/i386-common.cc: In function ‘bool ix86_supports_split_stack(bool, gcc_options*)’:
> /home/marxin/buildworker/zen2-cross-compilers/build/gcc/common/config/i386/i386-common.cc:1721:13: error: ‘struct gcc_options’ has no member named ‘x_linux_libc’
> 1721 | if (opts->x_linux_libc != LIBC_GLIBC)
> | ^~~~~~~~~~~~
> make[1]: *** [Makefile:2418: i386-common.o] Error 1
>
> Can you please take a look? Btw. do you have a bugzilla account?
I bet instead of opts->x_linux_libc != LIBC_GLIBC it needs to use
#ifdef OPTION_GLIBC
if (!OPTION_GLIBC)
#endif
or so. I think the first committed patch actually used that
but used it in #if directive, which is wrong because it is something
that needs to be evaluated at runtime.
That doesn't work well either, because the *supports_split_stack
hooks have opts argument and OPTION_GLIBC doesn't take that.
So, here is a patch that introduces OPTION_*_P macros that take opts
as an argument and redefines OPTION_* using those (similarly to how
the option scripts create TARGET_*_P and TARGET_* macros).
2022-01-24 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/104170
* config/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
using OPTION_*_P macros.
* config/alpha/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
using OPTION_*_P macros.
* config/rs6000/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
using OPTION_*_P macros.
* config/rs6000/linux64.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
OPTION_BIONIC_P, OPTION_MUSL_P): Define.
(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
using OPTION_*_P macros.
* config/fuchsia.h (OPTION_MUSL_P): Redefine.
* config/glibc-stdint.h (OPTION_MUSL_P): Define if not defined.
* common/config/s390/s390-common.cc (s390_supports_split_stack): Re-add
ATTRIBUTE_UNUSED to opts parameter. If OPTION_GLIBC_P is defined, use
OPTION_GLIBC_P (opts) as condition, otherwise assume if (false).
* common/config/i386/i386-common.cc (ix86_supports_split_stack): If
OPTION_GLIBC_P is defined use !OPTION_GLIBC_P (opts) as condition,
otherwise assume if (true).
---
gcc/common/config/i386/i386-common.c | 4 ++--
gcc/common/config/s390/s390-common.c | 6 ++++--
gcc/config/alpha/linux.h | 25 +++++++++++++++----------
gcc/config/fuchsia.h | 2 ++
gcc/config/glibc-stdint.h | 3 +++
gcc/config/linux.h | 25 +++++++++++++++----------
gcc/config/rs6000/linux.h | 25 +++++++++++++++----------
gcc/config/rs6000/linux64.h | 25 +++++++++++++++----------
8 files changed, 71 insertions(+), 44 deletions(-)
diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c
index a3b5258e828..864e68ab985 100644
--- a/gcc/common/config/i386/i386-common.c
+++ b/gcc/common/config/i386/i386-common.c
@@ -1699,8 +1699,8 @@ static bool
ix86_supports_split_stack (bool report,
struct gcc_options *opts ATTRIBUTE_UNUSED)
{
-#ifdef TARGET_THREAD_SPLIT_STACK_OFFSET
- if (opts->x_linux_libc != LIBC_GLIBC)
+#if defined(TARGET_THREAD_SPLIT_STACK_OFFSET) && defined(OPTION_GLIBC_P)
+ if (!OPTION_GLIBC_P (opts))
#endif
{
if (report)
diff --git a/gcc/common/config/s390/s390-common.c b/gcc/common/config/s390/s390-common.c
index 8c1e590322d..11116f131cb 100644
--- a/gcc/common/config/s390/s390-common.c
+++ b/gcc/common/config/s390/s390-common.c
@@ -121,10 +121,12 @@ s390_handle_option (struct gcc_options *opts ATTRIBUTE_UNUSED,
static bool
s390_supports_split_stack (bool report,
- struct gcc_options *opts)
+ struct gcc_options *opts ATTRIBUTE_UNUSED)
{
- if (opts->x_linux_libc == LIBC_GLIBC)
+#ifdef OPTION_GLIBC_P
+ if (OPTION_GLIBC_P (opts))
return true;
+#endif
if (report)
error ("%<-fsplit-stack%> currently only supported on GNU/Linux");
diff --git a/gcc/config/alpha/linux.h b/gcc/config/alpha/linux.h
index bde7fb0d292..812ec8ecb31 100644
--- a/gcc/config/alpha/linux.h
+++ b/gcc/config/alpha/linux.h
@@ -58,18 +58,23 @@ along with GCC; see the file COPYING3. If not see
#define WCHAR_TYPE "int"
#ifdef SINGLE_LIBC
-#define OPTION_GLIBC (DEFAULT_LIBC == LIBC_GLIBC)
-#define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
-#define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (DEFAULT_LIBC == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) (DEFAULT_LIBC == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) (DEFAULT_LIBC == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) (DEFAULT_LIBC == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) (DEFAULT_LIBC == LIBC_MUSL)
#else
-#define OPTION_GLIBC (linux_libc == LIBC_GLIBC)
-#define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
-#define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (linux_libc == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) ((opts)->x_linux_libc == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) ((opts)->x_linux_libc == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) ((opts)->x_linux_libc == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) ((opts)->x_linux_libc == LIBC_MUSL)
#endif
+#define OPTION_GLIBC OPTION_GLIBC_P (&global_options)
+#define OPTION_UCLIBC OPTION_UCLIBC_P (&global_options)
+#define OPTION_BIONIC OPTION_BIONIC_P (&global_options)
+#undef OPTION_MUSL
+#define OPTION_MUSL OPTION_MUSL_P (&global_options)
/* Determine what functions are present at the runtime;
this includes full c99 runtime and sincos. */
diff --git a/gcc/config/fuchsia.h b/gcc/config/fuchsia.h
index 54602dc300d..47c0dfd8b81 100644
--- a/gcc/config/fuchsia.h
+++ b/gcc/config/fuchsia.h
@@ -52,6 +52,8 @@ along with GCC; see the file COPYING3. If not see
/* We are using MUSL as our libc. */
#undef OPTION_MUSL
#define OPTION_MUSL 1
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) 1
#ifndef TARGET_SUB_OS_CPP_BUILTINS
#define TARGET_SUB_OS_CPP_BUILTINS()
diff --git a/gcc/config/glibc-stdint.h b/gcc/config/glibc-stdint.h
index c8d7ba18d1c..f095197514f 100644
--- a/gcc/config/glibc-stdint.h
+++ b/gcc/config/glibc-stdint.h
@@ -27,6 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#ifndef OPTION_MUSL
#define OPTION_MUSL 0
#endif
+#ifndef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) 0
+#endif
#define SIG_ATOMIC_TYPE "int"
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 7fcf402b416..ab62a1741f7 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -29,18 +29,23 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* C libraries supported on Linux. */
#ifdef SINGLE_LIBC
-#define OPTION_GLIBC (DEFAULT_LIBC == LIBC_GLIBC)
-#define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
-#define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (DEFAULT_LIBC == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) (DEFAULT_LIBC == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) (DEFAULT_LIBC == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) (DEFAULT_LIBC == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) (DEFAULT_LIBC == LIBC_MUSL)
#else
-#define OPTION_GLIBC (linux_libc == LIBC_GLIBC)
-#define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
-#define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (linux_libc == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) ((opts)->x_linux_libc == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) ((opts)->x_linux_libc == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) ((opts)->x_linux_libc == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) ((opts)->x_linux_libc == LIBC_MUSL)
#endif
+#define OPTION_GLIBC OPTION_GLIBC_P (&global_options)
+#define OPTION_UCLIBC OPTION_UCLIBC_P (&global_options)
+#define OPTION_BIONIC OPTION_BIONIC_P (&global_options)
+#undef OPTION_MUSL
+#define OPTION_MUSL OPTION_MUSL_P (&global_options)
#define GNU_USER_TARGET_OS_CPP_BUILTINS() \
do { \
diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
index 47c9d9ac0b6..be04462d357 100644
--- a/gcc/config/rs6000/linux.h
+++ b/gcc/config/rs6000/linux.h
@@ -27,18 +27,23 @@
#define NO_PROFILE_COUNTERS 1
#ifdef SINGLE_LIBC
-#define OPTION_GLIBC (DEFAULT_LIBC == LIBC_GLIBC)
-#define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
-#define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (DEFAULT_LIBC == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) (DEFAULT_LIBC == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) (DEFAULT_LIBC == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) (DEFAULT_LIBC == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) (DEFAULT_LIBC == LIBC_MUSL)
#else
-#define OPTION_GLIBC (linux_libc == LIBC_GLIBC)
-#define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
-#define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (linux_libc == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) ((opts)->x_linux_libc == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) ((opts)->x_linux_libc == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) ((opts)->x_linux_libc == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) ((opts)->x_linux_libc == LIBC_MUSL)
#endif
+#define OPTION_GLIBC OPTION_GLIBC_P (&global_options)
+#define OPTION_UCLIBC OPTION_UCLIBC_P (&global_options)
+#define OPTION_BIONIC OPTION_BIONIC_P (&global_options)
+#undef OPTION_MUSL
+#define OPTION_MUSL OPTION_MUSL_P (&global_options)
/* Determine what functions are present at the runtime;
this includes full c99 runtime and sincos. */
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 43499ed29cf..1d73a09a476 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -267,18 +267,23 @@ extern int dot_symbols;
#define OS_MISSING_POWERPC64 !TARGET_64BIT
#ifdef SINGLE_LIBC
-#define OPTION_GLIBC (DEFAULT_LIBC == LIBC_GLIBC)
-#define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
-#define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (DEFAULT_LIBC == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) (DEFAULT_LIBC == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) (DEFAULT_LIBC == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) (DEFAULT_LIBC == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) (DEFAULT_LIBC == LIBC_MUSL)
#else
-#define OPTION_GLIBC (linux_libc == LIBC_GLIBC)
-#define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
-#define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
-#undef OPTION_MUSL
-#define OPTION_MUSL (linux_libc == LIBC_MUSL)
+#define OPTION_GLIBC_P(opts) ((opts)->x_linux_libc == LIBC_GLIBC)
+#define OPTION_UCLIBC_P(opts) ((opts)->x_linux_libc == LIBC_UCLIBC)
+#define OPTION_BIONIC_P(opts) ((opts)->x_linux_libc == LIBC_BIONIC)
+#undef OPTION_MUSL_P
+#define OPTION_MUSL_P(opts) ((opts)->x_linux_libc == LIBC_MUSL)
#endif
+#define OPTION_GLIBC OPTION_GLIBC_P (&global_options)
+#define OPTION_UCLIBC OPTION_UCLIBC_P (&global_options)
+#define OPTION_BIONIC OPTION_BIONIC_P (&global_options)
+#undef OPTION_MUSL
+#define OPTION_MUSL OPTION_MUSL_P (&global_options)
/* Determine what functions are present at the runtime;
this includes full c99 runtime and sincos. */
--
2.35.1
@@ -0,0 +1,75 @@
From 01be086df55016ad676685c6b0dca6aa11330bfc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 17 Jul 2022 13:38:39 +0200
Subject: [PATCH] libphobos: don't define __mode_t twice on musl targets
For musl targets, __mode_t is already aliased to uint, thus if it
aliased in an architecture-specific if-case then it is defined twice
which causes a build error.
To-Do: Report this upstream or revise this patch in a way that is also
works with glibc and submit that upstream.
---
libphobos/libdruntime/core/sys/posix/sys/stat.d | 7 -------
1 file changed, 7 deletions(-)
diff --git a/libphobos/libdruntime/core/sys/posix/sys/stat.d b/libphobos/libdruntime/core/sys/posix/sys/stat.d
index 1fb4e44cbbf..ca31bbb7ccf 100644
--- a/libphobos/libdruntime/core/sys/posix/sys/stat.d
+++ b/libphobos/libdruntime/core/sys/posix/sys/stat.d
@@ -167,7 +167,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = size_t;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -483,7 +482,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = uint;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -565,7 +563,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = size_t;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -660,7 +657,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = uint;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -746,7 +742,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = uint;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -838,7 +833,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = uint;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -914,7 +908,6 @@ version (linux)
alias __dev_t = ulong;
alias __ino_t = c_ulong;
alias __ino64_t = ulong;
- alias __mode_t = uint;
alias __nlink_t = ulong;
alias __uid_t = uint;
alias __gid_t = uint;
@@ -1,75 +0,0 @@
From 400bae077d11c3a2ee9f4c8b96c31bbf39416a4f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren@soeren-tempel.net>
Date: Mon, 21 Feb 2022 04:13:47 +0100
Subject: [PATCH] x86: Fix -fsplit-stack feature detection via
TARGET_CAN_SPLIT_STACK
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Since commit c163647ffbc9a20c8feb6e079dbecccfe016c82e -fsplit-stack
is only supported on glibc targets. However, this original commit
required some fixups. As part of the fixup, the changes to the
gnu-user-common.h and gnu.h where partially reverted in commit
60953a23d57b13a672f751bec0c6eefc059eb1ab thus causing TARGET_CAN_SPLIT_STACK
to be defined for non-glibc targets even though -fsplit-stack is
actually not supported and attempting to use it causes a runtime error.
This causes gcc internal code, such as ./gcc/go/gospec.c to not
correctly detect that -fsplit-stack is not supported and thus causes
gccgo to fail compilation on non-glibc targets.
This commit ensures that TARGET_CAN_SPLIT_STACK is set based on the
changes performed in 2c31a8be4a5db11a0a0e97c366dded6362421086, i.e.
the new OPTION_GLIBC_P macro is now used to detect if -fsplit-stack is
supported in the x86 header files.
The proposed changes have been tested on x86_64 Alpine Linux (which uses
musl libc) and fix compilation of gccgo for this target.
Signed-off-by: Sören Tempel <soeren@soeren-tempel.net>
gcc/ChangeLog:
* config/i386/gnu-user-common.h (defined): Only define
TARGET_CAN_SPLIT_STACK for glibc targets.
* config/i386/gnu.h (defined): Ditto.
---
gcc/config/i386/gnu-user-common.h | 5 +++--
gcc/config/i386/gnu.h | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/gnu-user-common.h b/gcc/config/i386/gnu-user-common.h
index 00226f5a455..4e3fbb1de05 100644
--- a/gcc/config/i386/gnu-user-common.h
+++ b/gcc/config/i386/gnu-user-common.h
@@ -66,7 +66,8 @@ along with GCC; see the file COPYING3. If not see
#define STACK_CHECK_STATIC_BUILTIN 1
/* We only build the -fsplit-stack support in libgcc if the
- assembler has full support for the CFI directives. */
-#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE
+ assembler has full support for the CFI directives. Also
+ we only support -fsplit-stack on glibc targets. */
+#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE && defined(OPTION_GLIBC_P)
#define TARGET_CAN_SPLIT_STACK
#endif
diff --git a/gcc/config/i386/gnu.h b/gcc/config/i386/gnu.h
index 25fbc07f58c..41a6a37dfee 100644
--- a/gcc/config/i386/gnu.h
+++ b/gcc/config/i386/gnu.h
@@ -41,8 +41,9 @@ along with GCC. If not, see <http://www.gnu.org/licenses/>.
#define TARGET_THREAD_SSP_OFFSET 0x14
/* We only build the -fsplit-stack support in libgcc if the
- assembler has full support for the CFI directives. */
-#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE
+ assembler has full support for the CFI directives. Also
+ we only support -fsplit-stack on glibc targets. */
+#if HAVE_GAS_CFI_PERSONALITY_DIRECTIVE && defined(OPTION_GLIBC_P)
#define TARGET_CAN_SPLIT_STACK
#endif
/* We steal the last transactional memory word. */
--
2.35.1
@@ -0,0 +1,36 @@
From 3825632cf4007ac93d8e44705a6da042c496318b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 18 Jul 2022 20:34:39 +0200
Subject: [PATCH] libgo: Explicitly define SYS_timer_settime for 32-bit musl
arches
On 32-bit systems musl only defines SYS_timer_settime32 not
SYS_timer_settime. This causes the following compilation error:
os_linux.go:251:30: error: reference to undefined name '_SYS_timer_settime'
251 | return int32(syscall(_SYS_timer_settime, uintptr(timerid), uintptr(flags), uintptr(unsafe.Pointer(new)), uintptr(unsafe.Pointer(old)), 0, 0))
| ^
This commit fixes this error by defining SYS_timer_settime to
SYS_timer_settime32 if the latter is defined.
---
libgo/sysinfo.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libgo/sysinfo.c b/libgo/sysinfo.c
index b85add15a7b..ff04706a993 100644
--- a/libgo/sysinfo.c
+++ b/libgo/sysinfo.c
@@ -343,6 +343,12 @@ enum {
#endif
};
+// musl libc does not have SYS_timer_settime on 32-bit platforms
+// but defines SYS_timer_settime32 instead, alias accordingly.
+#ifdef SYS_timer_settime32
+#define SYS_timer_settime SYS_timer_settime32
+#endif
+
// musl libc has both off64_t and loff_t. However, both of these types
// are defined as CPP macros, not as C typedefs. Unfortunately, the GCC
// -fdump-go-spec option, which is responsible for generating type
@@ -0,0 +1,22 @@
From 4b28b8356c7ecf9375a2c07ac6be226a5693f8d2 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 01:05:11 +0200
Subject: [PATCH] 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 4b8111402ba..b670e78c53b 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
----------------------------------------------
@@ -0,0 +1,28 @@
From 75a430f66760802bf1ac5afcd716613e3cf8c77d 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 07:15:25 +0200
Subject: [PATCH] libgo: make match.sh POSIX-shell compatible
The `(( expression ))` syntax is a Bash extension. However, the
arithmetic expressions used by the gobuild() function can also
be expressed using Arithmetic POSIX Expansion with `$(( expression ))`.
Contrary to the Bash expression, the Arithmetic Expansion doesn't set
the return value if the expression is non-zero but instead just prints
the expression result. Hence, the expression also needs to be negated.
---
libgo/match.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/match.sh b/libgo/match.sh
index 7ed587ff794..b355d47429a 100755
--- a/libgo/match.sh
+++ b/libgo/match.sh
@@ -111,7 +111,7 @@ gobuild() {
if test "$goarch" != "386"; then
line=$(echo "$line" | sed -e "s/\\(${wrap}\\)386\\(${wrap}\\)/\10\2/g")
fi
- (($line))
+ return $((! ( line )))
}
matched=
+185 -137
View File
@@ -24,20 +24,20 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-aarch64
_pkgbase=11.2.1
pkgver=11.2.1_git20220219
_pkgbase=12.1.1
pkgver=12.1.1_git20220630
[ "$BOOTSTRAP" = "nolibc" ] && pkgname="gcc-pass2"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-aarch64
pkgrel=1
pkgrel=5
pkgdesc="Stage2 cross-compiler for aarch64"
url="https://gcc.gnu.org"
arch="x86_64"
license="GPL-2.0-or-later LGPL-2.1-or-later"
_gccrel=$pkgver-r$pkgrel
depends="isl binutils-aarch64 mpc1"
depends="binutils-aarch64 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-aarch64 binutils-aarch64"
subpackages="g++-aarch64:gpp"
@@ -117,11 +117,15 @@ else
_builddir="$srcdir/build"
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"
case "$CARCH" in
ppc64le|riscv64) 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
@@ -167,7 +171,7 @@ fi
if $LANG_D; then
subpackages="$subpackages libgphobos::$CTARGET_ARCH gcc-gdc$_target:gdc"
_languages="$_languages,d"
makedepends_build="$makedepends_build libucontext-dev"
makedepends_build="$makedepends_build libucontext-dev gcc-gdc-bootstrap"
fi
if $LANG_OBJC; then
subpackages="$subpackages libobjc::$CTARGET_ARCH gcc-objc$_target:objc"
@@ -182,14 +186,18 @@ if $LANG_FORTRAN; then
_languages="$_languages,fortran"
fi
if $LANG_ADA; then
subpackages="$subpackages libgnat-static:libgnatstatic:$CTARGET_ARCH libgnat::$CTARGET_ARCH gcc-gnat$_target:gnat"
subpackages="$subpackages gcc-gnat$_target:gnat"
_languages="$_languages,ada"
[ "$CBUILD" = "$CTARGET" ] && makedepends_build="$makedepends_build gcc-gnat-bootstrap"
[ "$CBUILD" != "$CTARGET" ] && makedepends_build="$makedepends_build gcc-gnat gcc-gnat$_cross"
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"
_languages="$_languages,jit"
fi
makedepends="$makedepends_build $makedepends_host"
@@ -215,43 +223,43 @@ source="https://dev.alpinelinux.org/~nenolod/gcc-${pkgver}.tar.xz
0012-libitm-disable-FORTIFY.patch
0013-libgcc_s.patch
0014-nopie.patch
0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
0016-dlang-update-zlib-binding.patch
0017-dlang-use-libucontext-on-mips64.patch
0018-dlang-libdruntime-define-fcntl.h-constants-for-mips6.patch
0019-ada-fix-shared-linking.patch
0020-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
0021-add-fortify-headers-paths.patch
0022-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
0023-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
0024-mips64-disable-multilib-support.patch
0025-aarch64-disable-multilib-support.patch
0026-s390x-disable-multilib-support.patch
0027-ppc64-le-disable-multilib-support.patch
0028-x86_64-disable-multilib-support.patch
0029-riscv-disable-multilib-support.patch
0030-always-build-libgcc_eh.a.patch
0031-ada-libgnarl-compatibility-for-musl.patch
0032-ada-musl-support-fixes.patch
0033-gcc-go-Fix-handling-of-signal-34-on-musl.patch
0034-There-are-more-than-one-st_-a-m-c-tim-fields-in-stru.patch
0035-gcc-go-signal-34-is-special-on-musl-libc.patch
0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
0037-gcc-go-link-to-libucontext.patch
0038-Use-generic-errstr.go-implementation-on-musl.patch
0039-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
0040-configure-fix-detection-of-atomic-builtins-in-libato.patch
0041-libgo-Recognize-off64_t-and-loff_t-definitions-of-mu.patch
0042-Fix-attempt-to-use-poisoned-calloc-error-in-libgccji.patch
0043-stddef.h-add-support-for-musl-typedef-macro-guards.patch
0044-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
0045-libgo-include-asm-ptrace.h-for-pt_regs-definition-on.patch
0046-Disable-fsplit-stack-support-on-non-glibc-targets.patch
0047-x86-Properly-disable-fsplit-stack-support-on-non-gli.patch
0048-gdc-unconditionally-link-libgphobos-against-libucont.patch
0049-properly-disable-fsplit-stack-on-non-glibc-targets-P.patch
0050-x86-Fix-fsplit-stack-feature-detection-via-TARGET_CA.patch
0051-go-gospec-forcibly-disable-fsplit-stack-support.patch
0015-dlang-use-libucontext-on-mips64.patch
0016-ada-fix-shared-linking.patch
0017-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
0018-add-fortify-headers-paths.patch
0019-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
0020-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
0021-mips64-disable-multilib-support.patch
0022-aarch64-disable-multilib-support.patch
0023-s390x-disable-multilib-support.patch
0024-ppc64-le-disable-multilib-support.patch
0025-x86_64-disable-multilib-support.patch
0026-riscv-disable-multilib-support.patch
0027-always-build-libgcc_eh.a.patch
0028-ada-libgnarl-compatibility-for-musl.patch
0029-ada-musl-support-fixes.patch
0030-gcc-go-Fix-handling-of-signal-34-on-musl.patch
0031-There-are-more-than-one-st_-a-m-c-tim-fields-in-stru.patch
0032-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
0033-gcc-go-link-to-libucontext.patch
0034-Use-generic-errstr.go-implementation-on-musl.patch
0035-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
0036-configure-fix-detection-of-atomic-builtins-in-libato.patch
0037-libgo-Recognize-off64_t-and-loff_t-definitions-of-mu.patch
0039-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
0040-libgo-include-asm-ptrace.h-for-pt_regs-definition-on.patch
0041-go-gospec-forcibly-disable-fsplit-stack-support.patch
0042-gcc-go-fix-build-error-with-SYS_SECCOMP.patch
0043-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch
0044-gdc-unconditionally-link-libgphobos-against-libucont.patch
0045-druntime-link-against-libucontext-on-all-platforms.patch
0046-c-avoid-memory-poisoning-on-musl-PR106102.patch
0047-jit-avoid-calloc-poisoning-on-musl-PR106102.patch
0049-libgo-adjust-name-of-union-in-sigevent-struct.patch
0050-libphobos-don-t-define-__mode_t-twice-on-musl-target.patch
0051-libgo-Explicitly-define-SYS_timer_settime-for-32-bit.patch
0052-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0053-libgo-make-match.sh-POSIX-shell-compatible.patch
"
# we build out-of-tree
@@ -331,8 +339,6 @@ build() {
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
esac
$LANG_JIT && _jit_configure="--enable-host-shared"
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
@@ -350,48 +356,77 @@ build() {
echo " libc_configure=$_libc_configure"
echo " cross_configure=$_cross_configure"
echo " bootstrap_configure=$_bootstrap_configure"
echo " hash_style_configure=$_hash_style_configure"
echo " hash_style_configure=$_hash_style_configure"
echo ""
export CFLAGS="$CFLAGS -O2"
export CXXFLAGS="$CXXFLAGS -O2"
export CPPFLAGS="$CPPFLAGS -O2"
local version="Alpine $pkgver-r$pkgrel"
local gccconfiguration="
--prefix=/usr
--mandir=/usr/share/man
--infodir=/usr/share/info
--build=${CBUILD}
--host=${CHOST}
--target=${CTARGET}
--enable-checking=release
--disable-fixed-point
--disable-libstdcxx-pch
--disable-multilib
--disable-nls
--disable-werror
$_symvers
--enable-__cxa_atexit
--enable-default-pie
--enable-default-ssp
--enable-cloog-backend
--enable-languages=$_languages
$_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 --prefix=/usr \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--build=${CBUILD} \
--host=${CHOST} \
--target=${CTARGET} \
--with-pkgversion="Alpine $pkgver" \
--enable-checking=release \
--disable-fixed-point \
--disable-libstdcxx-pch \
--disable-multilib \
--disable-nls \
--disable-werror \
$_symvers \
--enable-__cxa_atexit \
--enable-default-pie \
--enable-default-ssp \
--enable-cloog-backend \
--enable-languages=$_languages \
$_arch_configure \
$_libc_configure \
$_cross_configure \
$_bootstrap_configure \
$_jit_configure \
--with-system-zlib \
$_hash_style_configure
"$_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
make DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/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 \
@@ -434,10 +469,12 @@ package() {
mv "$i" "$pkgdir"/usr/lib/
ln -s ../../../../${i##*/} $i
done
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
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
@@ -513,9 +550,21 @@ libcxx() {
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/lib/libstdc++.a \
usr/lib/libstdc++.so \
usr/lib/libstdc++fs.a \
usr/lib/libsupc++.a \
usr/include/c++
}
gpp() {
pkgdesc="GNU C++ standard library and compiler"
depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev"
depends="libstdc++=$_gccrel libstdc++-dev=$_gccrel gcc=$_gccrel libc-dev"
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/usr/bin \
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
@@ -523,8 +572,6 @@ gpp() {
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/*++* "$subpkgdir"/usr/${_target:+$CTARGET/}lib/
mv "$pkgdir"/usr/${_target:+$CTARGET/}include/c++ "$subpkgdir"/usr/${_target:+$CTARGET/}include/
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
}
@@ -592,6 +639,7 @@ 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/ \
@@ -703,7 +751,7 @@ libgnatstatic() {
gnat() {
pkgdesc="Ada support for GCC"
depends="gcc=$_gccrel"
provides="$pkgname-gnat-bootstrap"
provides="$pkgname-gnat-bootstrap=$_gccrel"
[ "$CHOST" = "$CTARGET" ] && depends="$depends libgnat=$_gccrel"
mkdir -p "$subpkgdir"/$_gcclibexec \
@@ -715,56 +763,56 @@ gnat() {
}
sha512sums="
94d4d2e31f5a84455055d34cfbbcc63d5bd63e60345c2a4e30aa404724e65e5d14868ef50b7fcf5537dd12dc6f1381a27cede269801050e193b4bdb8f2919971 gcc-11.2.1_git20220219.tar.xz
d46a87edb919697a37c15af99c9142c6ad8ec364fe9b5747f5808368e619766163d3d8b64e987b1155785ddc91b5b191b795857cd70118d64f978e46b476bfff 0001-posix_memalign.patch
59fa772417c1d1baf8bd8477ef4e30975fbd616d949fbd72fa88cc72d9662f2e28214305a188d75e30c54a95be111c7998784f7d1499562490acbe194a3c2116 0002-gcc-poison-system-directories.patch
556240f9888c24706694560ad3ba1a90d3ed6da1dd3d7eebb603f4e3551d5743908840d4b1f598d6d5dc3cc52bcfafbcd777282ec8864051c3c8aba623866d3e 0003-specs-turn-on-Wl-z-now-by-default.patch
747a2ba2c0227471dd8a327bddd4699aa6aad5ddce2e523816e43e04fd5a4d8c2f1a69f02980632263ab1c23334d01e27d5df737a0ba9f6bd16b9c85112de82a 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
0fe2b802ce0b9c986d7ea5378df49899b028baad419ccd4071fd1a2dad90736e0f04eef29056f6c74c1fa2482359629b5e3747d58fcbf3520c6ed10c66c7b87e 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
7d37f31108cddfeb25ebf7e462d999873dc184bb26f74c9d7d6d32534a15070291661ab58be41ccedb44af20de0568e704b4152668c6bd803cf88f1ddfb6e35c 0006-Enable-Wformat-and-Wformat-security-by-default.patch
698893670d00df1ddbaa7dd970b17049f94d0cc2fec3225925bbad606e44c29288e38a7afa4b4cae3c9c26be35646c52e9eadc67022b89d7b4ce97ce64a5a2ac 0007-Enable-Wtrampolines-by-default.patch
b549d45824d6b9f2ec830ed66ba192ebfe9d9c3db554bf0b51379e9b624de0f0a1a315520487a1a3bfbe9d65d41c41239b9461bc9f1b5059c51d5f4dc7581872 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
15089ea9465057f6897d5c570e79abd068b85f9fc77490668872397699025905aa065eaf7318ddb0847747da4397676242064f290b45e16f616bab86258be260 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
cc9aa31e3b4227f7887d9be470bb19cb3ccd8125155741721921b4c8f791710fabc279b492232454fda0a47bf98509bd2fd4bcdbf5a5aad8b8f476bc5aa74d07 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
c2c74411717e5bf6e261bde4d5c50b12645de2d556b3eb898600e7629772f7d9d213e32f5a0b81d8ee2ba2e4bc55ea64ee60119d9d9a03045574016d94b76f61 0011-libiberty-copy-PIC-objects-during-build-process.patch
d92fe356d745fbc858cbb338b0027b814a2f7812fc7bb6147d641e7319d4ff09ac4ade766b419566e70e6250847ec56e95fd74617a82069dc93f669d827dd48e 0012-libitm-disable-FORTIFY.patch
2e5c0845581c92573fc2e60f7771d9f99e23fd32bf4da7c09bc1738f69174f8becfe9f0c9ee96fbc87b3264dcf2d4b801d051606bd528b43e76cd1fb9ddf6b40 0013-libgcc_s.patch
2a79fd03fe9b98cca3cdbed368969304f9ebcedb7701703740c30a1fe70bfdeceaddac4cbf796f60ee080f0d62a926da6c48042c563b081d9116691c4531a68c 0014-nopie.patch
4a1d53c120047702ea51df3c611af3e4ae82b9cf63dc8244ac38042de44b24afe98578e70aa964884b22ef76ee65d1d703355defc613637acf52d580ce86f17c 0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
64065ec9243eb12424cb75822219376e7829f1e1d206d93c4b4cbe18eb4e538019361cc1b5b7d88da4d2d5c891d9e282d579902db534d09b7d58ec91bfada6b5 0016-dlang-update-zlib-binding.patch
35ffecaa8ec56b64c73df93530d858632f0429de007d70869432c183610d344711a1552b1bb00f2180ae952c66a66e1c6285139a8818d656691a121cd7abdba7 0017-dlang-use-libucontext-on-mips64.patch
f78fc1bc99669a90bd68051f9d17bfc25065e49c7d4e853cda293be3a9f17b08867de31e73b90a82b948005f5e17020ccf55dfa4a1b0b9b0cba707c0ed635a46 0018-dlang-libdruntime-define-fcntl.h-constants-for-mips6.patch
463ce54bb32d9ba52ed7f0d7df99011f17543e80f6aca9a61b747e074662b283c563434b96a0bc8ae4636e154f1033c5720f3c8113bc6ad095592a1d5584981c 0019-ada-fix-shared-linking.patch
194647e5a87fb7ebd7602eee9ffa5d3e713dc26baa5f8fa50ada513ca5d28898d1fcee5e9db0d3af6d5b774961426fc1e2f9b5155992ead9981412c627967219 0020-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
d707e47a10c866c0e6d085f9a2bfa1b21eff8e6a1b222840abbbe1b2f21cc4a50f4fa45f7dbbb1ad86dc2eb7c88160c715e69039d3de7f7784de7d5f2a87d6e4 0021-add-fortify-headers-paths.patch
e746e250451eb76726a9de8f42de5eb1d23a228fd3d8961cd2a6c6f691a5418fcd32a817998e3a5aaf8d2d90cd03371aaf7912c9b834ed6c663c649f85f1d058 0022-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
c6d3a4b5d541b52f44641e59556c6312d785c4e12d47fac11a530ae0746170e891c0ed64ce6e9856e5581debfae0d5216753afaf87df1a2d40d50bdfa24ea7dc 0023-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
a29ad877662bbdbc6422456d32ed31aab3764edcc1eb3e1abe7be0f22d162da6d0f0d6565a25c7a43bf23151faba0492122ddcf832bdac57b3e47f89a6ab158d 0024-mips64-disable-multilib-support.patch
18be870ec68865f4661ac73f9bf50765164711582b497beb852928e1d993bc257a0d2b015f435e93461c35edc1811505d31f3a46147bccb4764dcf9b8319c93a 0025-aarch64-disable-multilib-support.patch
b2b830626396936be105361e87c82490b5cd3d26ce7b8dbccf156d53eb5d0db82a28167656aaa5e47b6a1315263abf070432db693c5ae10da892217ce2728728 0026-s390x-disable-multilib-support.patch
094ed675ff5512829bbf7f2bd2632498300b7f15cec6b4a397b145f378a41c17c99f05ea0b94ed1408773a3e8b1fd713ba302c64dba00269df270d401b0e6443 0027-ppc64-le-disable-multilib-support.patch
ee67238c66132f30fd00cc084d37012a927abe32ac48b4617779f22069d86384826c063b79626ab64f6adefdac0f00fcd5c18b95c8a2f11fb2cbee67babc9beb 0028-x86_64-disable-multilib-support.patch
2ddf60a03db15c9c3e847001e300a54dfd9b5435da630e18379313e516fccbb8ea5e26571bb4f88baa6756cdb5c8ba7d059249c46a2f56e67bfca368750431eb 0029-riscv-disable-multilib-support.patch
e7f9088809a4a4b87a6a5670227fb31766fb124ecdcea9936b00a7b98fdc06d7e7f27b6f67a575c434ba978623cb5f1183691dd63d6db98b180c4e08d62e5c5e 0030-always-build-libgcc_eh.a.patch
653b2dbdf43ad336e75aa33ee3e520edd4c8cdb486bf8f5a30dbd8496b96451aa508e12e6a81dd16d36119f22fb9b0c46bcc39d731c89443c435fa4d1ca6fa08 0031-ada-libgnarl-compatibility-for-musl.patch
9d46489087018366eea3b6537f6a86b0e183c7d49f8fecc2f50fbbcebf78727f5a1661ee6a50b5bddef0d54ebe47668ad61440784495194420b0896d5bd3f1aa 0032-ada-musl-support-fixes.patch
63a2f9a81f94826dfac05073d6b7cb599c5b1d026c460edfd329f770c72208e369af1e427904528351aa78bce6e9445af9c59ca73ef5302f7362027757fa5d46 0033-gcc-go-Fix-handling-of-signal-34-on-musl.patch
8d3a01d7e5e983eaabdf5c4a7e58ef33c55a794ed4cb5d438b41218ded367d3214b868a5c8d68f52ef74b0f83abb95d29b36ef8d0c7be68f7d1537a04e65d5c1 0034-There-are-more-than-one-st_-a-m-c-tim-fields-in-stru.patch
56c7c1911fef05beaecfa1b41703d46d18c5e967430c79c719f8685f4c4971bb177f2de35b0a1631d5d3ed7292cb54c618e52fa859f483fafb5445511e5b226b 0035-gcc-go-signal-34-is-special-on-musl-libc.patch
07921d5c30f3a23ba1c0540e106abe49e1675f183ffe2b326bdab80c59847b9ed5f39efd2836bc47d4ac1b3a3152f8de092c498ba91682e51c20548a65c0f105 0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
ef8df8a047b4145f30884b052345e4e390fc1efb35a9c7da63899aa115c19b8cc04513a57b2340a6a58ed02dc6881b10f684da653734afe5acf69761e3d064e7 0037-gcc-go-link-to-libucontext.patch
cf000459b493815bb0c9bccbbccc61ab8101f067b5b45d0f30cf49bf0ec6745f6ae360e4b5dccdb5c9bef1974835830efbb349c2ab38d1ee4dcc22385546873b 0038-Use-generic-errstr.go-implementation-on-musl.patch
0baffb0d19c26a387d38525c87b3500c4486bf11aeb9d98cec559eb67db4b71d5bc580fa6aebb9a12295422edb53aea77101e521e91f5189c744749448b89b4a 0039-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
d80074e1fa09cf6f7047a4dac7acadcfb53fcc93667af3348c61b22390999d618f2b16107c30a0fc52b145e27f14d6fddbe43ea36e6a9089741cb3b0b64fd856 0040-configure-fix-detection-of-atomic-builtins-in-libato.patch
04434b605d71b6d4e9dedd03a810f250725d31fc70a5ad28d69499a04436caf6b0ec69f5c7223cb511063cc18c350ffdd95b722de97467f827789006ebcb2c73 0041-libgo-Recognize-off64_t-and-loff_t-definitions-of-mu.patch
a3dc43ba56f12f4243c186572b32809d47a9d29c7a40edcf7f6da34c7add65a271c77635a5b9ae325d167e24a2e6bbe883c63eccec3af5d6f925cb304f8ba92b 0042-Fix-attempt-to-use-poisoned-calloc-error-in-libgccji.patch
04ebbf2143a2d4b6c6d768c3aeea2899e6261adf414e16faed1247bc94eeaf61e54f88a2ba7ffdca90e9c0ee87c6fd7e3746481d184c539b8e0130a14b215fa7 0043-stddef.h-add-support-for-musl-typedef-macro-guards.patch
e47183b5a565bdc64a497e14124d767a3e889e9f9d77a92567b0047b285c5ca49897b46ba681e339a8982611b70583ae87a3472dae33f07becaeceb21b3cfe74 0044-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
a5adab61de2d4b2c3ccb1a55c70384a8496c447f7727a6680fa29263c4f57599a3dfb85e1e322859797f86605491af0f68f9dd1141ab4bbbe8b5183f67f3b32e 0045-libgo-include-asm-ptrace.h-for-pt_regs-definition-on.patch
9c0e461eeba709110ca88d60236190c9b71d57d4e13786e2f15521a902e37dacc08d466966764abce9bc84e27d06e2e8523a1a80325f8a16d6ec16d2bf89fa05 0046-Disable-fsplit-stack-support-on-non-glibc-targets.patch
f62778ab53125a9ba5a8088e064c2182c014bc264a46fd3d28d1ee0142dd02a7ed2c684dc63e9768a56a6f8f65621bea20026cd6b65053c2ff9ee51568ee260d 0047-x86-Properly-disable-fsplit-stack-support-on-non-gli.patch
c44c6e5b28b622897af60e7e2dbf0d0284379eb57b39b480936e6d8b3743a24287c2a9ed69a530ef4f2327b5e5ca61ce00e92d415e0ed033e54bdffde345e6a9 0048-gdc-unconditionally-link-libgphobos-against-libucont.patch
160ef16fde90546474e1548f1487c18d9b8edbae1d42a13ad06041b03214d06ff2c3586acd4d0bae27d48e48bb651861c6b9a140ade4ac59f00a268e85275da4 0049-properly-disable-fsplit-stack-on-non-glibc-targets-P.patch
f4d9ebf6d5c80d2f303404b9bf315bf81435c0d369b03b92f8e8510d82db72c2a30d84603307ddc0697df3845862ba93045e4a3724f8e491e7c01bd4396d8864 0050-x86-Fix-fsplit-stack-feature-detection-via-TARGET_CA.patch
8ac54b3a46f7270d975fa3e1198ac37a2311a4b9940938958ffc148e4e9c82c3e81cf3e3c3abd43cef29137897cd6768220b432f828672e036308f7994422d2e 0051-go-gospec-forcibly-disable-fsplit-stack-support.patch
43de66dfed7b5351bb543f7f2e8253e63d1e544e5bd293829e8ec7bffe60925cabcf8f6972fe8825100b1f1d7839e41d9314ec650c1320150c09317e2be24aa9 gcc-12.1.1_git20220630.tar.xz
41cbb4d69218006cf9e0cdb6c86212ef451f8decd52a50a7dbb4d34726009da7a4e0261c852b46cb584db253a4bae2f31dc485c506cb545e64a7d26e0ba6c2b6 0001-posix_memalign.patch
531155055cda7f119bcac6479bcae73af9201cd596af9cf1616850bbcf4393b91c5de9f2fbbc1cde6e158fb4df7237b033146f662dff5fa0ea12151cc514adb8 0002-gcc-poison-system-directories.patch
c1275d77b5269386a2ec683933570810f5a2ba1208c161ed887797eb9aee3cb82ef08a8964635902614e6a6e83f3065ba0801c9355d85dd8d60cb1fa20bdf687 0003-specs-turn-on-Wl-z-now-by-default.patch
a54e45bff4484a35d3826435a414d909281453f5605f4081cf3be1f15336cceed93a1d8a54e92e2fa97188623e3030ca1323d7749141e228a7db73795230d86a 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
ad132ddbd0c33a3983e3de4f74d8fdb8cb1ddf53ef54de0a5c12efb49e42014ed117165d43f396bcf3455ecfe2c8620e0326e73b4160a370a4cc92d213329c34 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
0b9ce0f130a7b797770f3d58a5200575f20e5663c86c0c5710718b7bffd3416cc2f05861613d9c258428e9541c6e0b9837d01f0c99d383e2c3de0503a988e861 0006-Enable-Wformat-and-Wformat-security-by-default.patch
e7813acc7ead61373c212cefbe53eb020b4c5bd8f0f35ee972e0524060713f911624f5a1a871feada642e1f3f5e48c8508125ca2da09de351d544bedf1d44ada 0007-Enable-Wtrampolines-by-default.patch
d0d0566a11e4828bdd6f53346a9a6b9841f3066d3f4a05ee2b6fe97aeb4552654170e7662318ea18fc777c3e75c88a067097478fc4e880a3f9c134b8a3af2277 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
f75e63d9d933874f18fb7f55b135c60dfa0377abafa8e0edb91b85d5f00f4f072d0a338ba5d9baec18494211dbbda8068782830dbafbb37068936f76aede270f 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
afa4daba222a19569588736a8276dc7c12223a7c222f3dd3795dc3f1cd90f40b90518971ae27b358020354f89562c9680ec8b8e24e85e6d4f8e54e79d185359b 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
79dac82249fb573ec477e1451a33883302eb63a5110853faed117f5021221f2153e2ec845dd5a0043b1bf9f0e5736ef0c89743ff2d771774a281c8b24542803a 0011-libiberty-copy-PIC-objects-during-build-process.patch
b035f85c1703b45d15c1d1ffe7d23400e01625e5d403504911cc92f740b02586447de2a9d66a9f80f12b9c227bc193e2a43942c8af2bdb42cdeff8272bbe6068 0012-libitm-disable-FORTIFY.patch
9fb4d396a9493d2d68fe829ce075ba4c5df148b1d6aaab315a6f8ccbdd70d0e052a5dc50369adc2dab005b4a3becd1504b182faed6e82c86accb95f5bc2b9f50 0013-libgcc_s.patch
f82ac22961d842c9f8e731a601bb255918cc160969888363ad2d83e2ccf08b19114a200d46bcf99d097bf530f470c2b1e71e46828bc1b9fff5469ff945f541d8 0014-nopie.patch
6527dc9d250db48d56cf01e9299461bf22a838ffda96c40d448e18f457b206cec2322275d2d5abbbaf3c6573c5e7eba12724c9691b601f118ff7520e19726373 0015-dlang-use-libucontext-on-mips64.patch
6c3ce0ccd68b19e2c76172d8f24b0747ee0af2b8de7af692f2f699848267d7fc42fec8e5c303102fe05be7e934b56f21eea17ce47c8aca20570590830d88e9b0 0016-ada-fix-shared-linking.patch
7089a96aaec8e0b222cb3fa7301d71bb2e328a24dec33e15ea9e3e7695bcae919308249b9a3be5ea2f3b1f069f9fd1739066f31d12317fcdab0596dba9ca54a4 0017-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
b7ebdeee0b143052fdd6e3efa070ea8621d4fb729312cbc787d618e666b593990a20cd9044a786265970d8e09ec13da03b797009543d0b657b0fe924f2dcaa68 0018-add-fortify-headers-paths.patch
8e682893d6367732ab8c490b915112a68d98855deec3bd8db91dc0d9bf486b8c044b13ee2b95c4806da7ac17c41034e081b7a66861018274cb33fdb2fd6df04a 0019-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
a14c5f98ade5af8cd6e3a0244752674d9c4f6dadb4260f98f1949bff51ac1211a3f8319e0f933f776e98998d2c7221004f92413f97ccc2e966f8462ed6d33597 0020-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
28c1d477da79aa212ac79e4b02cf865d8b9c31cec6c42f41b4268e3f3c49bf67fb51e54180abe543a54e550788bb472bfcf1b4bc38d072a792d7403dbbee178a 0021-mips64-disable-multilib-support.patch
0920e31c46bf937b47a0602766f042d45adb71abf332ee84399c665c12298ef115cff945fe26d646b0276bfdfdd04913970e6f1f8784a11c26e15111c854643d 0022-aarch64-disable-multilib-support.patch
e4c6bf7ec40f2798c8e5b40a543aecffd5591a2805546b3b97aaa4fbe4df6ce4330a60973a9ddfbca9890590606d5204e7f653ab2b6e4b2c13feeb595b68e63a 0023-s390x-disable-multilib-support.patch
0e956d793c94283ce5af7fe84bfcbb655585a9573608e9bf497fa7b726e12daa391e44977d0a8c97fb460aba89b1773b91e036b0ee1ef4d6263a3943cb63d9cd 0024-ppc64-le-disable-multilib-support.patch
95917fcb60dbc0a8134db9beb583f3c9ea61128499c214f594c434ec8246641ec41e245ce2d1d9b85ffd40ea0e5764f7a33c5522b2547145814245ac0fa25025 0025-x86_64-disable-multilib-support.patch
b40d7e4712c035674c993bbb55475290ec14523b3f0fd05493514bac4e9adaa6641faf815fc40ffc00119d9fd64be28218ee874c289ec7430eeef05ab2fcae5e 0026-riscv-disable-multilib-support.patch
674360ce2ee9f704d0632cc98756f9fe8dd8ca30064fb9d3423b437f7e679c1c51e765b15e535dcb278cd2769583690acb3395b91e4fd5f6f4e3b97879fcc313 0027-always-build-libgcc_eh.a.patch
f060687adcd5297124e4000f1ba1e3fd5d7d124da04d948cbd0d4a6c69a90a2b29a4a0dbbe13a83ab6950724f434de012b681bdbcdf53c0100b40fe3d00f2f2f 0028-ada-libgnarl-compatibility-for-musl.patch
5160bae68e20a1966c1f6d655ee98af759e9b9ee842718ae6007d467b418e1cf3b307528a0841477b5259671ce868521b06c0f2e947b7b8f3a398c53dd978252 0029-ada-musl-support-fixes.patch
74c70a752ff24f231b45c69ca1d86ebf261bca643334cb6ba518ac204986ccd7fa84f4df4fdb38bbc0bb61832514b0100b2d2ba069fb1842929369d073220f24 0030-gcc-go-Fix-handling-of-signal-34-on-musl.patch
9786711f308d5f93f2f5a45862f340d4741e1d8aef116d696b85a6debb6149d3772b0cfab4d9ef8782172b102664d9acdd27021af433b504c5918f379b1dd978 0031-There-are-more-than-one-st_-a-m-c-tim-fields-in-stru.patch
4ffd2f279fbcf5abb1ac8cc6435204e48a776e7ef3742f2120eef1a1bdca2d0a01d30c481fd1495926c9166daaf127f9013fda0efefe3ed7bf6e660915cc1b49 0032-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
0ad15e78806031cef68da6577f7ce9be178533b3768ca42fff7f12816d61fa745acc77be2e047ac1c5bfdbc04e999202e5cefd04042bca798177197236b79954 0033-gcc-go-link-to-libucontext.patch
699dc3641099da6136dd3689f06c6553c03b3a85acf83a3fce1beb5425065b3e378535ca9e9100a120fdbafc34871d61c063fd5328a49cd87a15a989ed51706d 0034-Use-generic-errstr.go-implementation-on-musl.patch
d9ba710f770e053c8f212e821817c188091a829658050b9ab5906388553ec60fec37943ea43c270e92a9014902949f3c98fc4639032d92b8145b375bb29e193e 0035-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
ab90d8fdd977d6cd3da096a1c76d77be3e89a020b2127247771711a32eb608cceed21834ef488ab4b69bb0f408b098fdfb61630819e3d1a1e57d5af67800ee74 0036-configure-fix-detection-of-atomic-builtins-in-libato.patch
7b356e11f66877bee864e2b1f81ae4be6c6c586040afb3ac220ff902f694efd60dcb4647cc7a37890c91dd539535b9992d463b785d3158205dbf9369b17c8ab7 0037-libgo-Recognize-off64_t-and-loff_t-definitions-of-mu.patch
5905e4309670cfa4a5883aa21f744391ee2107731795817e0ffcccfaa22b0c21df883038c86362b091e7b35730aa4de6dce827c908ea398a161add851df5c31e 0039-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
570e084d223671fa29cb460b1b536a216920a7bcdfcdad21fe8cd7610e13f6942c1b1dd34ec861e9e3d830b9fe1f0e02e305c50c54d83aaf20526be09ca2256c 0040-libgo-include-asm-ptrace.h-for-pt_regs-definition-on.patch
a8b53c7d6e0d6d19c655844cab074f49b8f14c54a7af920b5792303f73713fdc69b723a0a6041548d227dfaa98ef63641460ea355487619eb29f9fec4a1e301b 0041-go-gospec-forcibly-disable-fsplit-stack-support.patch
15c93c9f2d68b19d00c6e82748e5f14470a120a3996f64d1ce91f17a65a5334cca478b4a6eba7d2d0a1d6d22206407ac3b1b5255987cc1144f5177bbb68153c8 0042-gcc-go-fix-build-error-with-SYS_SECCOMP.patch
25014dfa99d96ee70ce0ad22e9f7974f0a51cc50b3b9c2db49df50774c8cd29e497ceed120486bee50be83bfb07f2009ed310eb9b0543f2795bd7359b87eadd2 0043-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch
75fd83ac05ab0a08d5f48547b08810f9934209bc78b5db59d65f33887b382af7ec24d8a29d40f86325c05af40c1ae1ec6466c839f646af90afc895a13073d07b 0044-gdc-unconditionally-link-libgphobos-against-libucont.patch
13e047153076d6e1fc40c9f5b6bfe5699c0e5460248f3d2b35ae36677cb960525af7b0b025997e5000a8492cec5e77a86828d66b4058c0d7f89fde0ab3890142 0045-druntime-link-against-libucontext-on-all-platforms.patch
ba87d4b4433e5f018071ce933ae523c62334574be2e46881a8945c9dc7ecc0fadfed3aaf837f13f93fd4c0d6d33feb24cb67c77d9c0adb40b62637991fed4374 0046-c-avoid-memory-poisoning-on-musl-PR106102.patch
03e7c0caf59ee7c7d13a840178befb378b734f18a5c36ec4bbfad3f78253f0afab80864ea0905b58454178c8c31b2441622dd38668dd54e6550e30e6249e882b 0047-jit-avoid-calloc-poisoning-on-musl-PR106102.patch
be7688a44707991c31337bff24245394aa385e7b4ba151f18e21e734a4bbb151348458f413965e5cba50185ab8e0aba8b793eba04c0802dc563b148ed490f26d 0049-libgo-adjust-name-of-union-in-sigevent-struct.patch
179cd15d629884a66e954fd76066675efa594686b970facbb12ad50769e5d70b5530d7f61e77120e26d1c3dfc701cfc5295f341f635db998df73c41bc8e62172 0050-libphobos-don-t-define-__mode_t-twice-on-musl-target.patch
d7592589cbf982f4518cb07572f96131278c7d2fd8fbbcd7fcb47f6628529ae9a5fc22b2dfe929be06845d137e1c5d2efeb6f63b1c2fb9c36cd6bdb97d41c65f 0051-libgo-Explicitly-define-SYS_timer_settime-for-32-bit.patch
eb403d8ea665fd5dc2c11faf43b055e6a3bf480a397ceee3e0ca1e38ec7d2392315f2694ed9a34ffbc99e464f2873fbbf91be8646ea4dea5d3636e3ea22fefa0 0052-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
29c4fe28e5bf232e01b44106b2f8a3e50b5e00fc4302a69d3f5f90695e43ef07721a917b51d49dc40ae0543d8d97d432cb475834059c92176b73d326af9496e3 0053-libgo-make-match.sh-POSIX-shell-compatible.patch
"
+2 -5
View File
@@ -1,4 +1,4 @@
From feb04e50d907683385cc4dc0163cf1d82258073a Mon Sep 17 00:00:00 2001
From 74c7b0df9971b6bc75d7d172c2819ffd21d51050 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH] posix_memalign
@@ -8,7 +8,7 @@ Subject: [PATCH] posix_memalign
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
index 1b0bfe37852..d7b2b19bb3c 100644
index 3b2e4f47915..20f790904a2 100644
--- a/gcc/config/i386/pmm_malloc.h
+++ b/gcc/config/i386/pmm_malloc.h
@@ -27,12 +27,13 @@
@@ -37,6 +37,3 @@ index 1b0bfe37852..d7b2b19bb3c 100644
return __ptr;
else
return NULL;
--
2.35.1
@@ -1,4 +1,4 @@
From d64825212f807435a4b2f8e068c0f65195c8e2e6 Mon Sep 17 00:00:00 2001
From dd1e75ff4ecda96957465b34681f245e818928bd 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] gcc: poison-system-directories
@@ -21,15 +21,15 @@ Upstream-Status: Pending
gcc/configure | 16 ++++++++++++++++
gcc/configure.ac | 10 ++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.c | 2 ++
gcc/incpath.c | 21 +++++++++++++++++++++
gcc/gcc.cc | 2 ++
gcc/incpath.cc | 21 +++++++++++++++++++++
7 files changed, 68 insertions(+)
diff --git a/gcc/common.opt b/gcc/common.opt
index a75b44ee47e..d15105a73f3 100644
index 8a0dafc522d..0357868e22c 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -683,6 +683,10 @@ Wreturn-local-addr
@@ -710,6 +710,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.
@@ -41,10 +41,10 @@ index a75b44ee47e..d15105a73f3 100644
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 2de5a463315..059c818c895 100644
index 64c27c9cfac..f0fbf123aa8 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -218,6 +218,12 @@
@@ -230,6 +230,12 @@
#endif
@@ -58,10 +58,10 @@ index 2de5a463315..059c818c895 100644
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 708328e1670..4b977e313b5 100755
index 5ce0557719a..e9060112384 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1020,6 +1020,7 @@ enable_maintainer_mode
@@ -1023,6 +1023,7 @@ enable_maintainer_mode
enable_link_mutex
enable_link_serialization
enable_version_specific_runtime_libs
@@ -69,7 +69,7 @@ index 708328e1670..4b977e313b5 100755
enable_plugin
enable_host_shared
enable_libquadmath_support
@@ -1782,6 +1783,8 @@ Optional Features:
@@ -1785,6 +1786,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
@@ -78,7 +78,7 @@ index 708328e1670..4b977e313b5 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -31790,6 +31793,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
@@ -31982,6 +31985,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -99,10 +99,10 @@ index 708328e1670..4b977e313b5 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index df1c9cc3200..5461bab88a9 100644
index 23bee7010a3..75a7048045c 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7311,6 +7311,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
@@ -7421,6 +7421,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -120,10 +120,10 @@ index df1c9cc3200..5461bab88a9 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index cf536a15116..7d3f1ccddf3 100644
index 07b440190c3..b2de464798a 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -369,6 +369,7 @@ Objective-C and Objective-C++ Dialects}.
@@ -379,6 +379,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
-Wparentheses -Wno-pedantic-ms-format @gol
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol
@@ -131,7 +131,7 @@ index cf536a15116..7d3f1ccddf3 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
@@ -7728,6 +7729,14 @@ made up of data only and thus requires no special treatment. But, for
@@ -8029,6 +8030,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.
@@ -146,11 +146,11 @@ index cf536a15116..7d3f1ccddf3 100644
@item -Wfloat-equal
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 8ba410c9e17..a83ba34ac4b 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1152,6 +1152,8 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index bb07cc244e3..47fb5802194 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1159,6 +1159,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}}} \
@@ -159,10 +159,10 @@ index 8ba410c9e17..a83ba34ac4b 100644
%{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.c b/gcc/incpath.c
index 446d280321d..fbfc0ce03b8 100644
--- a/gcc/incpath.c
+++ b/gcc/incpath.c
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
index bd2a97938eb..c80f100f476 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@
#include "intl.h"
#include "incpath.h"
@@ -171,7 +171,7 @@ index 446d280321d..fbfc0ce03b8 100644
/* Microsoft Windows does not natively support inodes.
VMS has non-numeric inodes. */
@@ -395,6 +396,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
@@ -399,6 +400,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
}
fprintf (stderr, _("End of search list.\n"));
}
@@ -198,6 +198,3 @@ index 446d280321d..fbfc0ce03b8 100644
}
/* Use given -I paths for #include "..." but not #include <...>, and
--
2.35.1
@@ -1,4 +1,4 @@
From 9675297b3a46b65a54e9df97f26ea445d53c67c6 Mon Sep 17 00:00:00 2001
From 40e45739e7d3787acd13b5b9a4c27d843de0ffe2 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH] specs: turn on -Wl,-z,now by default
@@ -10,14 +10,14 @@ Binutils does not appear to have a similar option for enabling -z
now by default.
---
gcc/doc/invoke.texi | 3 +++
gcc/gcc.c | 1 +
gcc/gcc.cc | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 7d3f1ccddf3..485d2d6b742 100644
index b2de464798a..83bd1bde433 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -15921,6 +15921,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
@@ -16872,6 +16872,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}.
@@ -27,11 +27,11 @@ index 7d3f1ccddf3..485d2d6b742 100644
@item -u @var{symbol}
@opindex u
Pretend the symbol @var{symbol} is undefined, to force linking of
diff --git a/gcc/gcc.c b/gcc/gcc.c
index a83ba34ac4b..faf9ce76b3d 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1150,6 +1150,7 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 47fb5802194..d18b5d7b59a 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1157,6 +1157,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 \
@@ -39,6 +39,3 @@ index a83ba34ac4b..faf9ce76b3d 100644
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
2.35.1
@@ -1,19 +1,19 @@
From 4eb1b3849325b77c4cb66b675119299de35125bb Mon Sep 17 00:00:00 2001
From 666d0aeb808ac9c10d065ae7b196695c81a25a20 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH] Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC,
ObjC++, if the optimization level is > 0
---
gcc/c-family/c-cppbuiltin.c | 4 ++++
gcc/doc/invoke.texi | 6 ++++++
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.c b/gcc/c-family/c-cppbuiltin.c
index 11e015bdb87..de8b7bf246f 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1427,6 +1427,10 @@ c_cpp_builtins (cpp_reader *pfile)
diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc
index 4672ae8486a..573c021e1e8 100644
--- a/gcc/c-family/c-cppbuiltin.cc
+++ b/gcc/c-family/c-cppbuiltin.cc
@@ -1510,6 +1510,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);
@@ -25,10 +25,10 @@ index 11e015bdb87..de8b7bf246f 100644
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 485d2d6b742..164929f7583 100644
index 83bd1bde433..dda299a9987 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10225,6 +10225,12 @@ also turns on the following optimization flags:
@@ -10896,6 +10896,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.
@@ -41,6 +41,3 @@ index 485d2d6b742..164929f7583 100644
@item -O3
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified
--
2.35.1
@@ -1,4 +1,4 @@
From 8de5d46c530ceca9f4add46d5cae3cd52c38eba3 Mon Sep 17 00:00:00 2001
From 75d1a35180cf0967f062765314bf091a64032062 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH] On linux targets pass --as-needed by default to the linker,
@@ -18,11 +18,11 @@ Subject: [PATCH] On linux targets pass --as-needed by default to the linker,
gcc/config/rs6000/sysv4.h | 2 +-
gcc/config/s390/linux.h | 2 +-
gcc/config/sparc/linux.h | 2 +-
gcc/gcc.c | 28 ++++++++++++++++++++--------
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 7f2529a2a1d..b097e1688aa 100644
index 5e4553d79f5..b516f3ef97f 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
@@ -34,7 +34,7 @@ index 7f2529a2a1d..b097e1688aa 100644
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
index c1dae8ca2cf..a87dc740171 100644
index 17f16a55910..9ec667e9a5e 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
@@ -47,7 +47,7 @@ index c1dae8ca2cf..a87dc740171 100644
%{shared:-shared} \
%{!shared: \
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 0c1c4e70b6b..8b581afacdd 100644
index df3da67c4f0..7532bc29f9b 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
@@ -59,7 +59,7 @@ index 0c1c4e70b6b..8b581afacdd 100644
SUBTARGET_EXTRA_LINK_SPEC
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index 5ebbf42a13d..902378e1bad 100644
index 857c0e077bf..8433e56c3e1 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
@@ -87,7 +87,7 @@ index 5ebbf42a13d..902378e1bad 100644
#undef TARGET_F951_OPTIONS
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index a23e7ab3eb7..12ac8cb93a9 100644
index 0102b2a6f3b..994414c1845 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
@@ -100,7 +100,7 @@ index a23e7ab3eb7..12ac8cb93a9 100644
%{!static: \
%{!static-pie: \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index f3e25b1412a..712b0f1c30e 100644
index abc8cf624ca..fe656aeae27 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
@@ -112,7 +112,7 @@ index f3e25b1412a..712b0f1c30e 100644
%{!shared: \
%{!static: \
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index ac40c3dfd3f..6e19e25c35a 100644
index 93510098ccc..3813e536423 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do { \
@@ -125,7 +125,7 @@ index ac40c3dfd3f..6e19e25c35a 100644
%{!shared: \
%{!static: \
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index a390bcece83..be0ee289367 100644
index 6aad7192e69..e1256a55add 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
@@ -137,7 +137,7 @@ index a390bcece83..be0ee289367 100644
%{!static: \
%{rdynamic:-export-dynamic} \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index fce5b896e6e..ee29979dd34 100644
index 38803723ba9..3067ed6eac8 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -58,6 +58,7 @@ along with GCC; see the file COPYING3. If not see
@@ -149,10 +149,10 @@ index fce5b896e6e..ee29979dd34 100644
%{mno-relax:--no-relax} \
%{mbig-endian:-EB} \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index e3f2cd254f6..43499ed29cf 100644
index b2a7afabc73..34ceb4e4fce 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -374,13 +374,13 @@ extern int dot_symbols;
@@ -377,13 +377,13 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
@@ -169,10 +169,10 @@ index e3f2cd254f6..43499ed29cf 100644
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "}}} \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 510abe169c5..3c1f3a8ec5d 100644
index 7e2519de5d4..61215a7a1b3 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -789,7 +789,7 @@ GNU_USER_TARGET_CC1_SPEC
@@ -788,7 +788,7 @@ GNU_USER_TARGET_CC1_SPEC
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#endif
@@ -182,7 +182,7 @@ index 510abe169c5..3c1f3a8ec5d 100644
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index daa48fdfc2b..2fcfc5d770f 100644
index d7b7e7a7b02..d2287f14f2e 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
@@ -195,7 +195,7 @@ index daa48fdfc2b..2fcfc5d770f 100644
%{!shared: \
%{static:-static} \
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 2550d7ee8f0..7596d0b2757 100644
index 6a809e9092d..93bfb92d3ff 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);
@@ -207,11 +207,11 @@ index 2550d7ee8f0..7596d0b2757 100644
%{!mno-relax:%{!r:-relax}} \
%{!shared: \
%{!static: \
diff --git a/gcc/gcc.c b/gcc/gcc.c
index faf9ce76b3d..1ad5da6d769 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -737,8 +737,11 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index d18b5d7b59a..3b76311b544 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -744,8 +744,11 @@ proper position among the other output files. */
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -225,7 +225,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -773,8 +776,11 @@ proper position among the other output files. */
@@ -780,8 +783,11 @@ proper position among the other output files. */
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -239,7 +239,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -791,8 +797,11 @@ proper position among the other output files. */
@@ -798,8 +804,11 @@ proper position among the other output files. */
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
@@ -253,7 +253,7 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -807,8 +816,11 @@ proper position among the other output files. */
@@ -814,8 +823,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
@@ -267,6 +267,3 @@ index faf9ce76b3d..1ad5da6d769 100644
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.35.1
@@ -1,4 +1,4 @@
From 85e12e3d32a44c3fd10b5327edd542972a179eec Mon Sep 17 00:00:00 2001
From c664283dd30949c5299d1c45bd5740bcfe993d22 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH] Enable -Wformat and -Wformat-security by default.
@@ -8,10 +8,10 @@ Subject: [PATCH] Enable -Wformat and -Wformat-security by default.
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 2005b783c68..c5c6af427cc 100644
index 07da40ef43b..8683f706426 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -637,7 +637,7 @@ Warn about function calls with format strings that write past the end
@@ -692,7 +692,7 @@ Warn about function calls with format strings that write past the end
of the destination region. Same as -Wformat-overflow=1.
Wformat-security
@@ -20,7 +20,7 @@ index 2005b783c68..c5c6af427cc 100644
Warn about possible security problems with format functions.
Wformat-signedness
@@ -658,7 +658,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
@@ -713,7 +713,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
Warn about zero-length formats.
Wformat=
@@ -29,6 +29,3 @@ index 2005b783c68..c5c6af427cc 100644
Warn about printf/scanf/strftime/strfmon format string anomalies.
Wformat-overflow=
--
2.35.1
@@ -1,4 +1,4 @@
From f1e92f5f3576779776c9f3d6aeef76e1569e719a Mon Sep 17 00:00:00 2001
From e4d0ec43e772b6dc7c3708aed5309897df26a125 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH] Enable -Wtrampolines by default.
@@ -8,10 +8,10 @@ Subject: [PATCH] Enable -Wtrampolines by default.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index d15105a73f3..29f9504cb68 100644
index 0357868e22c..6d5e5eebe60 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -775,7 +775,7 @@ Common Var(warn_system_headers) Warning
@@ -802,7 +802,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
@@ -19,7 +19,4 @@ index d15105a73f3..29f9504cb68 100644
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtype-limits
--
2.35.1
Wtrivial-auto-var-init
@@ -1,19 +1,19 @@
From 3503fd734a33b67ec6a9fdc2c52bb8310864b119 Mon Sep 17 00:00:00 2001
From 27e5d5bd3fed9006a2958d2b09750d15ad07383b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH] Disable ssp on -nostdlib, -nodefaultlibs and -ffreestanding
Change the buffer size.
---
gcc/gcc.c | 8 +++++++-
gcc/gcc.cc | 8 +++++++-
gcc/params.opt | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 1ad5da6d769..99314032ec2 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -989,6 +989,12 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 3b76311b544..cc99d0b7aa1 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -996,6 +996,12 @@ proper position among the other output files. */
#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
#endif
@@ -26,7 +26,7 @@ index 1ad5da6d769..99314032ec2 100644
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1288,7 +1294,7 @@ static const char *cc1_options =
@@ -1295,7 +1301,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %w%b.s}}}\
@@ -36,10 +36,10 @@ index 1ad5da6d769..99314032ec2 100644
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
diff --git a/gcc/params.opt b/gcc/params.opt
index 8ba281b4cfa..bab39cdf8a2 100644
index b88e1372005..82a7e25dd2f 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -946,7 +946,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
@@ -1012,7 +1012,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=
@@ -48,6 +48,3 @@ index 8ba281b4cfa..bab39cdf8a2 100644
The lower bound for a buffer to be considered for stack smashing protection.
-param=stack-clash-protection-guard-size=
--
2.35.1
@@ -1,4 +1,4 @@
From c4dd51fe15a938fdd76d781a4eede2a9205eacbc Mon Sep 17 00:00:00 2001
From 83bf2a316222e2fe0b72968cadf4e334d41173f6 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH] Ensure that msgfmt doesn't encounter problems during gcc
@@ -26,7 +26,7 @@ https://bugs.gentoo.org/295480
2 files changed, 2 insertions(+)
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index ab716ff04ea..e595268d9fc 100644
index 8f51544989e..5329804d136 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -38,6 +38,7 @@ MSGFMT = msgfmt
@@ -38,10 +38,10 @@ index ab716ff04ea..e595268d9fc 100644
all-local: all-local-$(USE_NLS)
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index 8edd2e05639..63f61fcf96f 100644
index 243f3db7b72..822210781fa 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -553,6 +553,7 @@ uninstall-am:
@@ -561,6 +561,7 @@ uninstall-am:
.po.mo:
@@ -49,6 +49,3 @@ index 8edd2e05639..63f61fcf96f 100644
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--
2.35.1
@@ -1,4 +1,4 @@
From 0a1fd78184f00fb77dac00dabe98eb025620efc2 Mon Sep 17 00:00:00 2001
From 190064993cd8ddbd48015c1fc1916e4110a97733 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH] Don't declare asprintf if defined as a macro.
@@ -8,7 +8,7 @@ Subject: [PATCH] Don't declare asprintf if defined as a macro.
1 file changed, 3 insertions(+)
diff --git a/include/libiberty.h b/include/libiberty.h
index f4c0fe11d6f..cf4b1043e4d 100644
index a65ced9c820..eb20ab0f95f 100644
--- a/include/libiberty.h
+++ b/include/libiberty.h
@@ -652,8 +652,11 @@ extern void *bsearch_r (const void *, const void *,
@@ -23,6 +23,3 @@ index f4c0fe11d6f..cf4b1043e4d 100644
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
2.35.1
@@ -1,4 +1,4 @@
From f81d67f6fe1f1066642606209c882b333d937cb7 Mon Sep 17 00:00:00 2001
From 838e1daa955d9013c462be3471497cb39641e951 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH] libiberty: copy PIC objects during build process
@@ -8,10 +8,10 @@ Subject: [PATCH] libiberty: copy PIC objects during build process
1 file changed, 1 insertion(+)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index 4f1213b983b..d0224649d30 100644
index 1b17c2e3a47..8db1176df2e 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -264,6 +264,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
@@ -265,6 +265,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
$(AR) $(AR_FLAGS) $(TARGETLIB) \
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
$(RANLIB) $(TARGETLIB); \
@@ -19,6 +19,3 @@ index 4f1213b983b..d0224649d30 100644
cd ..; \
else true; fi
--
2.35.1
@@ -1,4 +1,4 @@
From 3b732288ce771348cbcc9fb633a36b7aff2b4ad4 Mon Sep 17 00:00:00 2001
From 717346fbbd6642ba6b0c3af2deb3771794346507 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:36 +0000
Subject: [PATCH] libitm: disable FORTIFY
@@ -8,7 +8,7 @@ Subject: [PATCH] libitm: disable FORTIFY
1 file changed, 10 insertions(+)
diff --git a/libitm/configure.tgt b/libitm/configure.tgt
index a3d84896cc5..ecb281d5919 100644
index 06e90973ef3..669e64236c3 100644
--- a/libitm/configure.tgt
+++ b/libitm/configure.tgt
@@ -47,6 +47,16 @@ if test "$gcc_cv_have_tls" = yes ; then
@@ -28,6 +28,3 @@ index a3d84896cc5..ecb281d5919 100644
# Map the target cpu to an ARCH sub-directory. At the same time,
# work out any special compilation flags as necessary.
case "${target_cpu}" in
--
2.35.1
+14 -17
View File
@@ -1,33 +1,33 @@
From a3e556187d0a8e9d39544f023960eca0f07d3e83 Mon Sep 17 00:00:00 2001
From 048c394eb709bfd216e307c1b92ac7f8a7e7758b Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH] libgcc_s
---
gcc/config/i386/i386-expand.c | 4 ++--
libgcc/config/i386/cpuinfo.c | 6 +++---
libgcc/config/i386/t-linux | 2 +-
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.c b/gcc/config/i386/i386-expand.c
index 1772fb16c9a..77e04b0c2df 100644
--- a/gcc/config/i386/i386-expand.c
+++ b/gcc/config/i386/i386-expand.c
@@ -11066,10 +11066,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
index 31780b6daf7..d89898846e1 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
@@ -12338,10 +12338,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_local in libgcc.a. */
- /* 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);
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);
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 ef463848f9d..1a3de052c80 100644
index dab1d98060f..cf824b4114a 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -63,7 +63,7 @@ __cpu_indicator_init (void)
@@ -52,6 +52,3 @@ index 8506a635790..564296f788e 100644
-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.35.1
+5 -8
View File
@@ -1,4 +1,4 @@
From f520e67fba621f213146271408ff3210b3527176 Mon Sep 17 00:00:00 2001
From db28b1e0f3b06325026ec5b5e7cdca4e9992e05c Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH] nopie
@@ -9,10 +9,10 @@ Subject: [PATCH] nopie
2 files changed, 40 insertions(+)
diff --git a/gcc/configure b/gcc/configure
index 4b977e313b5..592e81e40f6 100755
index e9060112384..2f6b3265a6c 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -32300,6 +32300,33 @@ fi
@@ -32497,6 +32497,33 @@ fi
$as_echo "$gcc_cv_no_pie" >&6; }
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
@@ -47,10 +47,10 @@ index 4b977e313b5..592e81e40f6 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 5461bab88a9..1577529ffb7 100644
index 75a7048045c..e683d3a7a5f 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7571,6 +7571,19 @@ AC_CACHE_CHECK([for -no-pie option],
@@ -7681,6 +7681,19 @@ AC_CACHE_CHECK([for -no-pie option],
LDFLAGS="$saved_LDFLAGS"])
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
@@ -70,6 +70,3 @@ index 5461bab88a9..1577529ffb7 100644
fi
AC_SUBST([NO_PIE_FLAG])
--
2.35.1
@@ -1,4 +1,4 @@
From 26daa73d678b87a6950df1d79d171ba40ecbce15 Mon Sep 17 00:00:00 2001
From 686e85d8a05f9f9e6c983afb13f937bd88fe84dd Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:18:32 +0000
Subject: [PATCH] dlang: use libucontext on mips64
@@ -8,7 +8,7 @@ Subject: [PATCH] dlang: use libucontext on mips64
1 file changed, 1 insertion(+)
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
index 0643daeb613..b74d9fb3f25 100644
index 0063dd23249..c5e782a1238 100644
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -38,6 +38,7 @@ case "${target}" in
@@ -19,6 +19,3 @@ index 0643daeb613..b74d9fb3f25 100644
;;
power*-*-freebsd*)
LIBPHOBOS_SUPPORTED=yes
--
2.35.1
@@ -1,25 +0,0 @@
From 37310cabb8bc7256899c4d45cc68a47ca2a3232b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:09 +0000
Subject: [PATCH] libffi: use __linux__ instead of __gnu_linux__ for musl
---
libffi/src/closures.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libffi/src/closures.c b/libffi/src/closures.c
index 721ff00ea43..22a699c6340 100644
--- a/libffi/src/closures.c
+++ b/libffi/src/closures.c
@@ -34,7 +34,7 @@
#include <ffi_common.h>
#if !FFI_MMAP_EXEC_WRIT && !FFI_EXEC_TRAMPOLINE_TABLE
-# if __gnu_linux__ && !defined(__ANDROID__)
+# if __linux__ && !defined(__ANDROID__)
/* This macro indicates it may be forbidden to map anonymous memory
with both write and execute permission. Code compiled when this
option is defined will attempt to map such pages once, but if it
--
2.35.1
@@ -1,4 +1,4 @@
From 374a19de60fcd5c31321c3f4d26dcc4b631e8c3f Mon Sep 17 00:00:00 2001
From fd642f8cd61849a9dc169588be5562ceda96a889 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH] ada: fix shared linking
@@ -8,7 +8,7 @@ Subject: [PATCH] ada: fix shared linking
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/link.c b/gcc/ada/link.c
index 5cd5ef64f56..1c611a82cab 100644
index a7574efb472..0ad0d66463c 100644
--- a/gcc/ada/link.c
+++ b/gcc/ada/link.c
@@ -107,9 +107,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
@@ -37,6 +37,3 @@ index 5cd5ef64f56..1c611a82cab 100644
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
2.35.1
@@ -1,425 +0,0 @@
From 586e82425a024d85d1bd9952ca51d8a671aa9b5d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:51 +0000
Subject: [PATCH] dlang: update zlib binding
---
libphobos/src/std/zlib.d | 266 ++++++++++++++++++++++++++++-----------
1 file changed, 196 insertions(+), 70 deletions(-)
diff --git a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
index e6cce240fd5..bd2fe37ebec 100644
--- a/libphobos/src/std/zlib.d
+++ b/libphobos/src/std/zlib.d
@@ -1,7 +1,7 @@
// Written in the D programming language.
/**
- * Compress/decompress data using the $(HTTP www._zlib.net, _zlib library).
+ * Compress/decompress data using the $(HTTP www.zlib.net, zlib library).
*
* Examples:
*
@@ -43,12 +43,12 @@
* References:
* $(HTTP en.wikipedia.org/wiki/Zlib, Wikipedia)
*
- * Copyright: Copyright Digital Mars 2000 - 2011.
+ * Copyright: Copyright The D Language Foundation 2000 - 2011.
* License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
* Authors: $(HTTP digitalmars.com, Walter Bright)
- * Source: $(PHOBOSSRC std/_zlib.d)
+ * Source: $(PHOBOSSRC std/zlib.d)
*/
-/* Copyright Digital Mars 2000 - 2011.
+/* Copyright The D Language Foundation 2000 - 2011.
* Distributed under the Boost Software License, Version 1.0.
* (See accompanying file LICENSE_1_0.txt or copy at
* http://www.boost.org/LICENSE_1_0.txt)
@@ -75,9 +75,9 @@ enum
class ZlibException : Exception
{
- this(int errnum)
- { string msg;
-
+ private static string getmsg(int errnum) nothrow @nogc pure @safe
+ {
+ string msg;
switch (errnum)
{
case Z_STREAM_END: msg = "stream end"; break;
@@ -90,7 +90,12 @@ class ZlibException : Exception
case Z_VERSION_ERROR: msg = "version error"; break;
default: msg = "unknown error"; break;
}
- super(msg);
+ return msg;
+ }
+
+ this(int errnum)
+ {
+ super(getmsg(errnum));
}
}
@@ -104,7 +109,7 @@ class ZlibException : Exception
* buf = buffer containing input data
*
* Returns:
- * A $(D uint) checksum for the provided input data and starting checksum
+ * A `uint` checksum for the provided input data and starting checksum
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Adler-32)
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] buf)
* buf = buffer containing input data
*
* Returns:
- * A $(D uint) checksum for the provided input data and starting checksum
+ * A `uint` checksum for the provided input data and starting checksum
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Cyclic_redundancy_check)
@@ -191,13 +196,14 @@ uint crc32(uint crc, const(void)[] buf)
ubyte[] compress(const(void)[] srcbuf, int level)
in
{
- assert(-1 <= level && level <= 9);
+ assert(-1 <= level && level <= 9, "Compression level needs to be within [-1, 9].");
}
-body
+do
{
import core.memory : GC;
+ import std.array : uninitializedArray;
auto destlen = srcbuf.length + ((srcbuf.length + 1023) / 1024) + 12;
- auto destbuf = new ubyte[destlen];
+ auto destbuf = uninitializedArray!(ubyte[])(destlen);
auto err = etc.c.zlib.compress2(destbuf.ptr, &destlen, cast(ubyte *) srcbuf.ptr, srcbuf.length, level);
if (err)
{
@@ -276,7 +282,7 @@ void[] uncompress(const(void)[] srcbuf, size_t destlen = 0u, int winbits = 15)
throw new ZlibException(err);
}
}
- assert(0);
+ assert(0, "Unreachable code");
}
@system unittest
@@ -370,9 +376,9 @@ class Compress
this(int level, HeaderFormat header = HeaderFormat.deflate)
in
{
- assert(1 <= level && level <= 9);
+ assert(1 <= level && level <= 9, "Legal compression level are in [1, 9].");
}
- body
+ do
{
this.level = level;
this.gzip = header == HeaderFormat.gzip;
@@ -406,6 +412,7 @@ class Compress
const(void)[] compress(const(void)[] buf)
{
import core.memory : GC;
+ import std.array : uninitializedArray;
int err;
ubyte[] destbuf;
@@ -420,7 +427,7 @@ class Compress
inited = 1;
}
- destbuf = new ubyte[zs.avail_in + buf.length];
+ destbuf = uninitializedArray!(ubyte[])(zs.avail_in + buf.length);
zs.next_out = destbuf.ptr;
zs.avail_out = to!uint(destbuf.length);
@@ -461,9 +468,10 @@ class Compress
void[] flush(int mode = Z_FINISH)
in
{
- assert(mode == Z_FINISH || mode == Z_SYNC_FLUSH || mode == Z_FULL_FLUSH);
+ assert(mode == Z_FINISH || mode == Z_SYNC_FLUSH || mode == Z_FULL_FLUSH,
+ "Mode must be either Z_FINISH, Z_SYNC_FLUSH or Z_FULL_FLUSH.");
}
- body
+ do
{
import core.memory : GC;
ubyte[] destbuf;
@@ -523,6 +531,7 @@ class UnCompress
z_stream zs;
int inited;
int done;
+ bool inputEnded;
size_t destbufsize;
HeaderFormat format;
@@ -571,16 +580,16 @@ class UnCompress
const(void)[] uncompress(const(void)[] buf)
in
{
- assert(!done);
+ assert(!done, "Buffer has been flushed.");
}
- body
+ do
{
+ if (inputEnded || !buf.length)
+ return null;
+
import core.memory : GC;
+ import std.array : uninitializedArray;
int err;
- ubyte[] destbuf;
-
- if (buf.length == 0)
- return null;
if (!inited)
{
@@ -598,26 +607,152 @@ class UnCompress
if (!destbufsize)
destbufsize = to!uint(buf.length) * 2;
- destbuf = new ubyte[zs.avail_in * 2 + destbufsize];
- zs.next_out = destbuf.ptr;
- zs.avail_out = to!uint(destbuf.length);
-
- if (zs.avail_in)
- buf = zs.next_in[0 .. zs.avail_in] ~ cast(ubyte[]) buf;
+ auto destbuf = uninitializedArray!(ubyte[])(destbufsize);
+ size_t destFill;
zs.next_in = cast(ubyte*) buf.ptr;
zs.avail_in = to!uint(buf.length);
- err = inflate(&zs, Z_NO_FLUSH);
- if (err != Z_STREAM_END && err != Z_OK)
+ while (true)
{
- GC.free(destbuf.ptr);
- error(err);
+ auto oldAvailIn = zs.avail_in;
+
+ zs.next_out = destbuf[destFill .. $].ptr;
+ zs.avail_out = to!uint(destbuf.length - destFill);
+
+ err = inflate(&zs, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ {
+ inputEnded = true;
+ break;
+ }
+ else if (err != Z_OK)
+ {
+ GC.free(destbuf.ptr);
+ error(err);
+ }
+ else if (!zs.avail_in)
+ break;
+
+ /*
+ According to the zlib manual inflate() stops when either there's
+ no more data to uncompress or the output buffer is full
+ So at this point, the output buffer is too full
+ */
+
+ destFill = destbuf.length;
+
+ if (destbuf.capacity)
+ {
+ if (destbuf.length < destbuf.capacity)
+ destbuf.length = destbuf.capacity;
+ else
+ {
+ auto newLength = GC.extend(destbuf.ptr, destbufsize, destbufsize);
+
+ if (newLength && destbuf.length < destbuf.capacity)
+ destbuf.length = destbuf.capacity;
+ else
+ destbuf.length += destbufsize;
+ }
+ }
+ else
+ destbuf.length += destbufsize;
}
+
destbuf.length = destbuf.length - zs.avail_out;
return destbuf;
}
+ // Test for issues 3191 and 9505
+ @system unittest
+ {
+ import std.algorithm.comparison;
+ import std.array;
+ import std.file;
+ import std.zlib;
+
+ // Data that can be easily compressed
+ ubyte[1024] originalData;
+
+ // This should yield a compression ratio of at least 1/2
+ auto compressedData = compress(originalData, 9);
+ assert(compressedData.length < originalData.length / 2,
+ "The compression ratio is too low to accurately test this situation");
+
+ auto chunkSize = compressedData.length / 4;
+ assert(chunkSize < compressedData.length,
+ "The length of the compressed data is too small to accurately test this situation");
+
+ auto decompressor = new UnCompress();
+ ubyte[originalData.length] uncompressedData;
+ ubyte[] reusedBuf;
+ int progress;
+
+ reusedBuf.length = chunkSize;
+
+ for (int i = 0; i < compressedData.length; i += chunkSize)
+ {
+ auto len = min(chunkSize, compressedData.length - i);
+ // simulate reading from a stream in small chunks
+ reusedBuf[0 .. len] = compressedData[i .. i + len];
+
+ // decompress using same input buffer
+ auto chunk = decompressor.uncompress(reusedBuf);
+ assert(progress + chunk.length <= originalData.length,
+ "The uncompressed result is bigger than the original data");
+
+ uncompressedData[progress .. progress + chunk.length] = cast(const ubyte[]) chunk[];
+ progress += chunk.length;
+ }
+
+ auto chunk = decompressor.flush();
+ assert(progress + chunk.length <= originalData.length,
+ "The uncompressed result is bigger than the original data");
+
+ uncompressedData[progress .. progress + chunk.length] = cast(const ubyte[]) chunk[];
+ progress += chunk.length;
+
+ assert(progress == originalData.length,
+ "The uncompressed and the original data sizes differ");
+ assert(originalData[] == uncompressedData[],
+ "The uncompressed and the original data differ");
+ }
+
+ @system unittest
+ {
+ ubyte[1024] invalidData;
+ auto decompressor = new UnCompress();
+
+ try
+ {
+ auto uncompressedData = decompressor.uncompress(invalidData);
+ }
+ catch (ZlibException e)
+ {
+ assert(e.msg == "data error");
+ return;
+ }
+
+ assert(false, "Corrupted data didn't result in an error");
+ }
+
+ @system unittest
+ {
+ ubyte[2014] originalData = void;
+ auto compressedData = compress(originalData, 9);
+
+ auto decompressor = new UnCompress();
+ auto uncompressedData = decompressor.uncompress(compressedData ~ cast(ubyte[]) "whatever");
+
+ assert(originalData.length == uncompressedData.length,
+ "The uncompressed and the original data sizes differ");
+ assert(originalData[] == uncompressedData[],
+ "The uncompressed and the original data differ");
+ assert(!decompressor.uncompress("whatever").length,
+ "Compression continued after the end");
+ }
+
/**
* Decompress and return any remaining data.
* The returned data should be appended to that returned by uncompress().
@@ -626,49 +761,40 @@ class UnCompress
void[] flush()
in
{
- assert(!done);
+ assert(!done, "Buffer has been flushed before.");
}
out
{
- assert(done);
+ assert(done, "Flushing failed.");
}
- body
+ do
{
- import core.memory : GC;
- ubyte[] extra;
- ubyte[] destbuf;
- int err;
-
done = 1;
- if (!inited)
- return null;
+ return null;
+ }
- L1:
- destbuf = new ubyte[zs.avail_in * 2 + 100];
- zs.next_out = destbuf.ptr;
- zs.avail_out = to!uint(destbuf.length);
+ /// Returns true if all input data has been decompressed and no further data
+ /// can be decompressed (inflate() returned Z_STREAM_END)
+ @property bool empty() const
+ {
+ return inputEnded;
+ }
- err = etc.c.zlib.inflate(&zs, Z_NO_FLUSH);
- if (err == Z_OK && zs.avail_out == 0)
- {
- extra ~= destbuf;
- goto L1;
- }
- if (err != Z_STREAM_END)
- {
- GC.free(destbuf.ptr);
- if (err == Z_OK)
- err = Z_BUF_ERROR;
- error(err);
- }
- destbuf = destbuf.ptr[0 .. zs.next_out - destbuf.ptr];
- err = etc.c.zlib.inflateEnd(&zs);
- inited = 0;
- if (err)
- error(err);
- if (extra.length)
- destbuf = extra ~ destbuf;
- return destbuf;
+ ///
+ @system unittest
+ {
+ // some random data
+ ubyte[1024] originalData = void;
+
+ // append garbage data (or don't, this works in both cases)
+ auto compressedData = cast(ubyte[]) compress(originalData) ~ cast(ubyte[]) "whatever";
+
+ auto decompressor = new UnCompress();
+ auto uncompressedData = decompressor.uncompress(compressedData);
+
+ assert(uncompressedData[] == originalData[],
+ "The uncompressed and the original data differ");
+ assert(decompressor.empty, "The UnCompressor reports not being done");
}
}
--
2.35.1
@@ -1,4 +1,4 @@
From ad053bc46b535e78397f992e3c2c1d28c1ebd1f4 Mon Sep 17 00:00:00 2001
From a547632f5c7caec4a164e8d5e5b568fb7a461365 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH] build: fix CXXFLAGS_FOR_BUILD passing
@@ -8,10 +8,10 @@ Subject: [PATCH] build: fix CXXFLAGS_FOR_BUILD passing
1 file changed, 1 insertion(+)
diff --git a/Makefile.in b/Makefile.in
index 047be0255e2..426949aa91c 100644
index 593495e1650..b96f60e33e2 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -170,6 +170,7 @@ BUILD_EXPORTS = \
@@ -176,6 +176,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
@@ -19,6 +19,3 @@ index 047be0255e2..426949aa91c 100644
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
--
2.35.1
@@ -1,4 +1,4 @@
From 18d44a7f8d801cc6926a73e2dda2f0ce859dc561 Mon Sep 17 00:00:00 2001
From 5bd37f8ee93a0fe1a3f841f48ed6626e7e0aa19d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:01:06 +0000
Subject: [PATCH] add fortify-headers paths
@@ -8,10 +8,10 @@ Subject: [PATCH] add fortify-headers paths
1 file changed, 2 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 4e1db60fced..7fcf402b416 100644
index 74f70793d90..61b07f319f6 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -167,6 +167,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -172,6 +172,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
@@ -20,6 +20,3 @@ index 4e1db60fced..7fcf402b416 100644
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 },
#else
--
2.35.1
@@ -1,38 +0,0 @@
From caeae8288593dbd5a1a6d93508d875eb0d8fdf49 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Thu, 6 Jan 2022 03:19:12 +0000
Subject: [PATCH] dlang: libdruntime: define fcntl.h constants for mips64
---
libphobos/libdruntime/core/sys/posix/fcntl.d | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/libphobos/libdruntime/core/sys/posix/fcntl.d b/libphobos/libdruntime/core/sys/posix/fcntl.d
index 59df921ba41..9ee9f943948 100644
--- a/libphobos/libdruntime/core/sys/posix/fcntl.d
+++ b/libphobos/libdruntime/core/sys/posix/fcntl.d
@@ -871,6 +871,21 @@ else version (CRuntime_Musl)
F_SETLKW = 7,
}
}
+ else version (MIPS_Any)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x010000, // octal 0200000
+ O_NOFOLLOW = 0x020000, // octal 0400000
+ O_DIRECT = 0x008000, // octal 0100000
+ O_LARGEFILE = 0x002000, // octal 0020000
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 33,
+ F_SETLK = 34,
+ F_SETLKW = 35,
+ }
+ }
else
static assert(0, "Platform not supported");
--
2.35.1
@@ -1,4 +1,4 @@
From 38d27ebdcc5a8bea0807b5d56203f0ea5e16868f Mon Sep 17 00:00:00 2001
From d2577dc78a1f159e5c41fd0b53e73fa0e264cb52 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] Alpine musl package provides libssp_nonshared.a. We link to
@@ -9,14 +9,14 @@ Subject: [PATCH] Alpine musl package provides libssp_nonshared.a. We link to
stack-protector flag usage.
---
gcc/gcc.c | 3 +--
gcc/gcc.cc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 99314032ec2..6e91767efe8 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -997,8 +997,7 @@ proper position among the other output files. */
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index cc99d0b7aa1..c60a75371f8 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1004,8 +1004,7 @@ proper position among the other output files. */
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
@@ -26,6 +26,3 @@ index 99314032ec2..6e91767efe8 100644
#else
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
"|fstack-protector-strong|fstack-protector-explicit" \
--
2.35.1
Loaded 100 of 1447 files, more files were not shown because too many files have changed in this diff. Show more