Compare commits

..
Author SHA1 Message Date
Daniele Debernardi cc7d1795b2 Force reboot on kernel panic 2020-12-05 01:36:47 +01:00
Alexey Min cd27108630 cross/musl-*: upgrade to 1.2.2_pre3-r0
Upstream commit https://gitlab.alpinelinux.org/alpine/aports/-/commit/31abfb36a377296596bd76d0ed3a3cab4c4f4212
2020-11-21 02:37:50 +03:00
Vincent Knecht 2886477023 modem/rmtfs: upgrade to 0.2_git20201113 (MR 1744)
Update rmtfs, so that upstreamed change necessary for upcoming/WIP
alcatel-idol3 port is integrated already.
2020-11-20 11:12:10 -08:00
DX37 252466cb17 wexler-qc750: new device (MR 1742)
Hello there, DragonX256 here.
For now, this tablet only have flashing, USB net, display and touchscreen.
I will try to add other features soon, or, if I fail enough, switch to mainlining immediately :D
2020-11-20 14:25:30 +01:00
Oliver Smith 3fd5a9a568 main/linux-postmarketos-allwinner: upgrade to 5.9.8_git20201117 (MR 1735)
Update ov5640 autofocus related patch. We had it working with Martijn's
patch in 5.9.1_git20201019-r2 (MR 1654), but then dropped the patch in
favor of the patch that was added to megi's tree in 5.9.3_git20201101
(MR 1678).

It turns out that the patch added to megi's tree was different than the
patch we were carrying, it was a WIP version where loading the autofocus
firmware did not work anymore.

Megi decided to drop the autofocus patch from his tree for now, as the
firmware uploader takes more time in Martijn's proper patch. According
to Martijn it takes about a second, which seems reasonable for the
postmarketOS use case. I've added the previous version again as
out-of-tree patch.

Martijn found that for some reason the continuous autofocus still
doesn't want to start with this kernel and current patch version, as for
some reason the firmware load fails. But he extended the patch to make
autofocus work again with "tap to focus" at least.

0005-dts-pinephone-Disable-flash-led-in-OV5640-node.patch is not needed
anymore, the same change is in megi's tree.

Co-Authored-By: Martijn Braam <martijn@brixit.nl>
[ci:skip-build]: already built successfully in CI
2020-11-20 13:58:34 +01:00
Oliver Smith 8e2c194d64 main/tinydm: upgrade to 1.0.2
Fix X11 sessions.
2020-11-20 13:45:19 +01:00
BO41 12f6a1ecd3 huawei-kiwi: new device (Huawei Honor 5X) (MR 1739)
[ci:skip-build]: already built successfully in CI
2020-11-20 13:43:32 +03:00
Alexey Min 9052367465 cross/musl-*: upgrade to 1.2.2_pre2-r0
Upstream commit https://gitlab.alpinelinux.org/alpine/aports/-/commit/9e3ec61a9b2ecdbd4a4107230d865c215fb912d3
2020-11-20 12:22:45 +03:00
Oliver Smith f8364dd858 main/postmarketos-android-recovery-installer: upgrade to 1.0.3 (MR 1740)
Related: https://gitlab.com/postmarketOS/postmarketos-android-recovery-installer/-/tags/1.0.3
2020-11-19 17:15:32 +01:00
Oliver Smith e974e110b3 devicepkg-dev: patch Makefile.common too (MR 1738)
Remove -Werror from Makefile.common files too, as found in the
xiaomi-latte downstream kernel (MR 1692).
2020-11-19 14:32:31 +03:00
Daniele Debernardi 99438870d6 samsung-dream: new device (Samsung Galaxy S8/S8+) (MR 1725) 2020-11-19 04:29:35 +03:00
Bart Ribbers 33b79866a4 main/postmarketos-ui-plasma-mobile: enable Bluetooth by default (MR 1727) 2020-11-18 23:09:25 +01:00
Oliver Smith 8cc5e9e0fc cross/gcc-*: upgrade to 10.2.1_pre0-r2 2020-11-18 14:32:31 +01:00
Oliver Smith 7fa02ab6c4 main/postmarketos-welcome-gtk3: upgrade to 0.2.2 (MR 1728)
Minor text updates:
https://gitlab.com/postmarketOS/postmarketos-welcome-gtk3/-/tags/0.2.2
2020-11-18 13:47:49 +01:00
Bart Ribbers 5f11b9082e kde/plasma-settings: upgrade to 0_git20201117 (MR 1734) 2020-11-18 11:36:02 +01:00
Luca Weiss f2a2764a35 CI: add check for unreferenced files in aports (MR 1731)
[ci:ignore-count] [ci:skip-vercheck] [ci:skip-build]
2020-11-18 11:24:19 +01:00
Luca Weiss 959bbaaffe treewide: remove unused files (MR 1731)
These files aren't references by any APKBUILD, delete them.
2020-11-18 11:24:01 +01:00
Dolphin von Chips 72eb261185 main/postmarketos-ui-plasma-desktop: enable on armv7 (MR 1733) 2020-11-18 09:56:11 +01:00
Adam af03173738 xiaomi-mido: rework to use mainline kernel (MR 1717)
[ci:skip-build]: already built successfully in CI
2020-11-18 09:04:01 +01:00
Bart Ribbers 4fd3d043ab main/postmarketos-ui-plasma-bigscreen: adapt to plasma-bigscreen upstream changes (MR 1721) 2020-11-17 19:35:36 -08:00
Bart Ribbers ace97e76f7 kde/plasma-bigscreen: upgrade to 0_git20201102 (MR 1721) 2020-11-17 19:35:36 -08:00
Bart Ribbers dcd8d2ec4e main/postmarketos-ui-plasma-bigscreen: use tinydm instead of lightdm (MR 1720) 2020-11-17 19:29:54 -08:00
Bart Ribbers 7573f5fce4 main/postmarketos-mkinitfs: workaround for not being able to find provider of kpartx (MR 1732)
Because of
https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/10725,
cmd:kpartx can not be found. That bug obviously needs to be fixed, but
let's workaround it for now by just depending on the package that
provides it.
2020-11-17 21:08:03 +01:00
Oliver Smith ce6ea43b72 cross/gcc-*: upgrade to 10.2.1_pre0-r1 2020-11-17 16:12:01 +01:00
Newbyte 9419179a52 temp/phosh: upgrade to 0.6.0 (MR 1726) 2020-11-17 10:00:54 +01:00
Oliver Smith 1c9cca883b main/tinydm: upgrade to 1.0.1 (MR 1729)
Change log path to ~/.cache/tinydm.log.
2020-11-17 11:07:18 +03:00
Oliver Smith 9c7c6b8eb1 main/linux-postmarketos-allwinner: upgrade to 5.9.8_git20201115 (MR 1704)
While at it, include 'Allow leds for pinephone dtb in suspend' patch.
2020-11-16 20:44:36 +01:00
Bart Ribbers ece48a2c6e main/postmarketos-ui-plasma-mobile: use tinydm instead of lightdm (MR 1715)
Follow-up of !1659, but now for Plasma Mobile
2020-11-16 18:07:52 +01:00
Dolphin von Chips f6c9e3dcc7 cross/musl-*: upgrade to 1.2.2_pre1-r0 2020-11-14 22:30:22 +05:00
Dylan Van Assche 9d0c1b48d8 Set voice call playback rate to 8000 Hz, closes #864 (MR 1711) 2020-11-14 00:46:37 -08:00
Bart Ribbers 0b405957e0 pine64-pinephone: enable cifs kernel module (MR 1716)
[ci:skip-build]: already built successfully in CI
2020-11-14 00:37:39 -08:00
Bart Ribbers ef8b6b1114 main/postmarketos-ui-phosh: remove leftover 60-lightdm-autologin.conf 2020-11-13 23:17:57 +01:00
Bart Ribbers 5fc992cf52 device/testing/device-bq-paella: drop, not sure how that ended up there 2020-11-13 13:28:42 +01:00
Bart Ribbers 787c730c1b cross/busybox-static-*: upgrade to 1.32.0-r4 2020-11-13 13:16:22 +01:00
Bart Ribbers 2216ae0c83 cross/gcc-x86_64: remove, not needed and broken
Partially reverts 4cd33610c5, just for
x86_64
2020-11-13 13:00:49 +01:00
Luca Weiss caf50d4e58 kde/krecorder: move from kde/voicememo and upgrade to 0_git20201103 (MR 1525) 2020-11-13 12:32:53 +01:00
Bart Ribbers 4cd33610c5 cross/gcc-*: upgrade to gcc 10.2.1_pre0 2020-11-13 11:30:52 +01:00
Bart Ribbers 975597dd7c main/telepathy-mission-control: drop, newer version is in Alpine 2020-11-13 11:02:24 +01:00
Oliver Smith b00f718f3f main/postmarketos-ui-phosh: use tinydm instead of lightdm (MR 1659) 2020-11-13 10:47:07 +01:00
Oliver Smith da4c0a731b main/autologin: new aport (MR 1659) 2020-11-13 10:47:07 +01:00
Oliver Smith df51b94658 main/tinydm: new aport (MR 1659) 2020-11-13 10:47:07 +01:00
Ash 0cad340c13 xiaomi-daisy: new device (Xiaomi Mi A2 Lite) (MR 1697) 2020-11-13 10:20:16 +01:00
Bart Ribbers bb41f53879 pine64-pinephone: clean setup-modem.sh script (MR 1701)
Since we now use the in-kernel modem driver of Megi's 5.9 kernel, the
majority of the setup script has become unnecessary. Remove all the now
unnecessary commands and keep it just for enabling VoLTE auto profile
selecting

https://megous.com/git/linux/tree/drivers/misc/modem-power.c?h=orange-pi-5.10#n531
https://megous.com/git/linux/tree/drivers/misc/modem-power.c?h=orange-pi-5.10#n580
https://megous.com/git/linux/tree/drivers/misc/modem-power.c?h=orange-pi-5.10#n610
2020-11-13 01:08:58 -08:00
Bart Ribbers a4f2794165 kde/plasma-dialer: upgrade to 0.1_git20201109 (MR 1707) 2020-11-13 00:59:56 -08:00
Bart Ribbers 00f2453aaa kde/alligator: upgrade to 0_git20201101 (MR 1708) 2020-11-13 00:55:58 -08:00
Bart Ribbers 3b6dd7acb0 kde/qmlkonsole: upgrade to 0_git20201001 (MR 1709) 2020-11-13 00:52:38 -08:00
Bart Ribbers 6a8fb10e2f kde/qrca: upgrade to 0_git20201104 (MR 1710) 2020-11-13 00:47:37 -08:00
Bart Ribbers c4f0cbaafe kde/rattlesnake: new aport (MR 1712) 2020-11-13 00:43:44 -08:00
clayton craft 96c4ec84f5 gitlab ci: add pinephone elogind hook script to shellcheck (MR 1665) 2020-11-13 00:33:31 -08:00
clayton craft c37012a909 postmarketos-base: add elogind hook to conditionally cancel suspend (MR 1665)
This hook will cancel a suspend if:
        - There's an open ssh connection to the system
        - apk database is locked
2020-11-13 00:33:31 -08:00
clayton craft 8308463dc0 main/osk-sdl: upgrade to 0.59 (MR 1625) 2020-11-12 23:42:39 -08:00
clayton craft 0e30c6f760 postmarketos-mkinitfs: fallback to directfb if osk-sdl fails w/ mesa (1625) (MR 1625) 2020-11-12 23:42:39 -08:00
clayton craft 5a7962685e purism-librem5: set deviceinfo_mesa_driver (MR 1625) 2020-11-12 23:42:39 -08:00
Oliver Smith 1617d7a35c pine64-pinetab: set deviceinfo_mesa_driver (MR 1625) 2020-11-12 23:42:38 -08:00
Luca Weiss 58f06f8b91 fairphone-fp2: set deviceinfo_mesa_driver to get fast osk-sdl (MR 1625)
we also have to install the gpu firmware into the initramfs
2020-11-12 23:42:38 -08:00
Luca Weiss 870db09b50 pine64-pinephone: set deviceinfo_mesa_driver to get fast osk-sdl (MR 1625) 2020-11-12 23:41:29 -08:00
clayton craft 13fbb3e501 main/postmarketos-mkinitfs: set no_supertile for osk with mesa (MR 1625)
This is needed by the librem 5, else the graphics are
distorted/unusable.
2020-11-12 23:41:29 -08:00
Luca Weiss a6ec22b9a4 main/postmarketos-mkinitfs: use kmsdrm sdl backend for osk-sdl (MR 1625) 2020-11-12 23:41:28 -08:00
Bart Ribbers 4cf7da3a7c kde/kclock: remove, upstreamed to Alpine 2020-11-12 11:55:52 +01:00
Bart Ribbers 2aaa5ca9cd kde/kirigami-addons: remove, upstreamed to Alpine 2020-11-12 11:55:49 +01:00
Bart Ribbers 3c83a7aaf8 temp/plasma-phone-components: upgrade to 5.20.3_git20201108 (MR 1703) 2020-11-12 11:44:31 +01:00
Bart Ribbers 5222119570 temp/plasma-nano: upgrade to 5.20.3_git20201001 (MR 1703) 2020-11-12 11:44:31 +01:00
dzmitry 97a88d030b samsung-a5y17lte : use gcc6 for wifi module (MR 1698)
Fall back to gcc6, because wlan module compiled with gcc10 fails to
initialize with `module wlan: overflow in relocation type 261 val ffffffbffc000000`
error.
Explicitly add gcc-aarch64 in makedepends, because of gcc6 present, seems
like gcc dependencies  not resolved correctly

[ci:skip-build]: already built successfully in CI
2020-11-12 08:29:51 +01:00
VDavid003 29c004310f samsung-jackpotlte: Add WiFi firmware (MR 1664)
[ci:skip-build]: already built successfully in CI
2020-11-12 08:26:28 +01:00
VDavid003 35e50b29f7 samsung-jackpotlte: Add new device (Samsung Galaxy A8 (2018)) (MR 1664) 2020-11-12 08:26:09 +01:00
Timothee LF 85e0b12f0d temp/gnome-software: backport Appstream from Alpine and add our own (MR 1688) 2020-11-12 08:14:38 +01:00
Oliver Smith 3731ba09ea CI: build_changed_aports: fix checksum for 0 pkgs (MR 1705)
When using '[ci:skip-build]' without any changed packages, do not
attempt to run "pmbootstrap checksum" without any package arguments.
This may happen, because CI in MRs runs across all patches in the MR,
but CI on branches (master, v20.05) only run on the last commit.

Prevents CI failures like this one:
https://gitlab.com/postmarketOS/pmaports/-/commit/9a48b41a2362ba0dd2b0901cae966011b37d1856
2020-11-11 22:49:10 +03:00
Oliver Smith 9a48b41a23 pmaports.cfg: require pmbootstrap 1.24.0 (MR 1634)
Flashing linux-postmarketos-exynos4 to the i9100 requires pmbootstrap MR
1986.

[ci:skip-vercheck]: linux-samsung-i9300: 3.0.101-r1 instead of -r0 is
not a mistake, the linting error fixes are in a separate commit with
their own pkgrel bump. I decided to leave that in its own commit instead
of squashing together with the other commit (as we usually do), because
the linting fixes are quite a lot and it makes the log more readable.
[ci:skip-build]: already built successfully in CI
2020-11-11 14:35:26 +01:00
Thiago Foganholi dde69343ef samsung-i9300: fix lint msgs for downstream kernel (MR 1634) 2020-11-11 14:35:20 +01:00
Thiago Foganholi 3057a029b5 samsung-i9100: Use Exynos4 mainline kernel (MR 1634) 2020-11-11 14:35:20 +01:00
Thiago Foganholi 637f9d2e86 samsung-i9305: Rename packages to samsung-i9300 (MR 1634)
The existing device package and its dependencies are for i9305, but
renaming them to i9300 makes more sense, as the i9300 is the base
version (SIII) and the i9305 (SIII LTE) is the improved version.
2020-11-11 14:35:20 +01:00
Thiago Foganholi 42fda5098b samsung-i9305: Add multiple-kernel configuration (MR 1634)
With a new mainline kernel package available for this device, add a new
package dependency and allow the user to choose downstream or mainline
kernel.
2020-11-11 14:35:20 +01:00
Thiago Foganholi 0bab9b5f8a Add package main/linux-postmarketos-exynos4 (MR 1634)
The devices supported by this package are Galaxy S3 (GT-I9300, GT-I9305,
SHV-E210K/L/S) and the Galaxy Note 2 (GT-N7100, GT-N7105) - a family of
boards also known by the codename "Midas" - and the Galaxy S2 (GT-I9100)

From this list, only the i9100 doesn't support the bootimg method.
Because of this, this kernel package is using the isorec method for all
the devices on the list. Additionally, for the midas devices, there is
no problem with this because the boot.img file is, in fact, a copy of
the kernel+initramfs on the pmos boot partition and what the isorec
initramfs does is actually to load the initramfs on that partition
directly (at least on my understanding).
2020-11-11 14:35:15 +01:00
Luca Weiss b5895c0e19 linux-htc-memul: fix strace (MR 1690)
[ci:skip-build]: already built successfully in CI
2020-11-11 13:11:46 +01:00
Luca Weiss 6d0e79bbdb linux-fairphone-fp2: fix strace & elogind (MR 1690) 2020-11-11 13:11:38 +01:00
Luca Weiss 863240f6c7 device-fairphone-fp2: configure serial console for downstream kernel (MR 1690) 2020-11-11 13:11:33 +01:00
Bart RibbersandOliver Smith 8e5c217d4a linux-postmarketos-allwinner: upgrade to 5.9.3 (MR 1678)
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2020-11-11 10:56:57 +01:00
Oliver Smith 4d4bca4f8b Revert "temp/wlroots: revert 0 dimension error check (MR 1702)"
This reverts commit c3e87a47ca. It has
been merged in Alpine, no need for our fork.
2020-11-10 21:44:57 +01:00
Oliver Smith c3e87a47ca temp/wlroots: revert 0 dimension error check (MR 1702)
Currently phosh is broken in postmarketOS edge. Fork wlroots from Alpine
and revert the new consistency check that results in the breakage. I've
submitted the same to Alpine, but let's get it in pmOS now so it is
fixed ASAP.

Alpine MR: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/14522
[ci:skip-vercheck]: new package added with -r1 on purpose
2020-11-10 21:23:11 +01:00
Bart Ribbers 8dba9d5a62 linux-postmarketos-allwinner: enable ecryptfs support (MR 1694)
There have been support questions about this from users
https://www.reddit.com/r/postmarketOS/comments/jqbqu2/mounting_ecryptfs_encrypted_folder/

[ci:skip-build]: already built successfully in CI
2020-11-10 12:01:39 +01:00
Luca Weiss 51a635d236 device/testing/linux-*: remove unused compiler-gcc6.h files (MR 1696)
These haven't been used since converting the APKBUILDs to use
devicepkg-dev, so remove them.

[ci:skip-build]
[ci:ignore-count]
[ci:skip-vercheck]
2020-11-10 10:27:23 +01:00
Luca Weiss c3fb621111 device/testing/linux-*: deduplicate timeconst patch (MR 1695)
[ci:skip-build]
[ci:ignore-count]
[ci:skip-vercheck]
2020-11-10 10:25:55 +01:00
Joel S 8cbe2d1308 modem/pd-mapper: upgrade to 0_git20201110 (MR 1700) 2020-11-10 10:19:06 +01:00
Joel S 8a477b6599 modem/qrtr: upgrade to 0.3_git20201110 (MR 1700) 2020-11-10 10:18:50 +01:00
clayton craft fb42b3b601 device-purism-librem5: upgrade to 1.8 (MR 1689)
- Upgrade librem5-base config
        - add goodix touch input and edx touchscreen drivers to
          deviceinfo/initramfs
2020-11-10 02:58:12 +00:00
clayton craft b721b442e6 linux-purism-librem5: upgrade to 5.9.5 (MR 1689) 2020-11-10 02:58:12 +00:00
clayton craft 81fc6a0bed postmarketos-base: enable rfkill service (MR 1693)
This enabled the rfkill service, part of util-linux, that saves/restores
radio device state on shutdown/boot.

fixed #836
2020-11-09 15:09:32 +01:00
Pedro Moreno 687b669477 sxmo/sxmo-utils: workaround for kernel bug on suspend (MR 1676)
Removed 2 actions cause future suspends to trigger a kernel bug that
ends up spamming the kernel log with "ehci-platform 1c1b000.usb: port 1
resume error -110" and eventually makes the device not respond to any
input or hang in shutdown/reboot.

Workaround for issue: #848
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2020-11-09 09:30:17 +01:00
Martijn Braam a853105c74 device-pine64-pinetab: fix too long uboot setenv 2020-11-06 16:29:33 +01:00
Martijn Braam 25399a1136 device-pine64-pinetab: force partition resize on boot (MR 1685)
Since the installer leaves the partition in a state where the initramfs
needs to resize it. But without the force parameter the postmarketOS
initramfs won't touch the partitions
2020-11-06 14:01:29 +01:00
Luca Weiss 81f8ca8e77 device/testing/linux-*: get building again (MR 1684)
Mostly the GCC10 yylloc failure was seen but several others have been
observed:

* wireguard script was silently failing
* several gcc10 x86 errors
* a checksum from kernel.org has changed

Now we have 3 different gcc10 yylloc patches:

gcc10-extern_YYLOC_global_declaration.patch:
    Linux < 4.2

linux4.2-gcc10-extern_YYLOC_global_declaration.patch:
    Linux 4.2+

linux4.17-gcc10-extern_YYLOC_global_declaration.patch:
    Linux 4.17+

[ci:skip-build]
[ci:ignore-count]
[ci:skip-vercheck]
2020-11-05 09:55:11 +01:00
Luca Weiss ed49b2a03f cross/ccache-cross-symlinks: create gcc4 & gcc6 symlinks (MR 1683) 2020-11-04 16:45:33 +01:00
clayton craft 9ff42ff776 temp/phosh: upgrade to 0.5.1 (MR 1680) 2020-11-04 14:39:30 +01:00
Martijn Braam a96e14e88c cross/gcc*: bump pkgrel 2020-11-04 13:53:16 +01:00
Richard Qian 95c008a545 acer-picasso: Upgrade kernel to 5.10.0-rc1 (MR 1675)
[ci:skip-build]: already built successfully in CI
2020-11-04 10:43:14 +01:00
Bart Ribbers a8becbb298 kde/spacebar: upgrade to 0_git20201103 (MR 1677) 2020-11-03 11:30:58 +01:00
Dominduchami 59c6a25c36 htc-leo: new device (MR 1666) 2020-11-02 16:17:08 +01:00
Oliver Smith 855564d4fa main/postmarketos-update-kernel: heimdall-isorec: use dtb (MR 1648)
Use the dtb-appended kernel file, e.g. postmarketos-exynos4-dtb instead
of postmarketos-exynos4, if it is available. This is needed to flash a
mainline kernel with appended dtb to isorec devices.
2020-11-02 14:43:39 +01:00
Newbyte 731bdc44e7 main/pure-maps: upgrade to 2.0.0 (MR 1674)
[ci:skip-build]: already built successfully in CI
2020-11-02 14:30:19 +01:00
Henrik Grimler 7bdce27e31 linux-samsung-chagallwifi: switch kernel sources (MR 1672)
With these kernel sources the device boots successfully,
sometimes. Usually, kernel panics and device reboots a couple of
times, but after a few attempts (maybe 1, maybe 7) it succeeds to
boot. The problems seem to be related to FIMC IS, unfortunately it
does not seem to be possible to just disable it in the kernel config,
as that leads to compilation errors.

I have so far just experimented with getting wifi up and running, but
it does not work out of the box even after adding firmware package
with files from TheMuppets, wpa_supplicant fails to connect and dmesg
is filed with lines like:

```
[  112.509235]  [L0: wl_event_handle:  3109] CFG80211-INFO2) wl_escan_handler : Couldn't find P2PIE in probe response/beacon
```

[ci:skip-build]: already built successfully in CI
2020-11-02 11:10:12 +01:00
Clayton Craft 38607b7f12 device-purism-librem5: select dtb based on device rev (MR 1673)
[ci:skip-build]: already built successfully in CI
2020-11-02 09:07:26 +01:00
Clayton Craft 48d1727d15 linux-purism-librem5: upgrade to 5.9.1 (MR 1673)
This also includes a patch from Purism that is the best workaround so
far for the hang that plagues Dogwood phones.
2020-11-01 19:15:42 -08:00
Alexey Min 2dbe7360f8 cross/musl-*: upgrade to 1.2.2_pre0-r1 2020-11-01 01:33:08 +03:00
Timothee LF 5b939ba437 temp/gnome-control-center: upgrade to 9999_git20201014. (MR 1668) 2020-10-30 23:27:15 -07:00
Anjandev Momi c21b1b9060 sxmo/sxmo-utils: upgrade to 1.1.11 (MR 1671) 2020-10-30 23:23:08 -07:00
Martijn Braam 084a447559 cross/gcc{,6}*: bump pkgrel
Following upgrade in Alpine
2020-10-31 02:46:53 +01:00
Martijn Braam 0abffd30ff cross/binutils-*: upgrade to 2.35.1-r1 2020-10-31 02:45:20 +01:00
Oliver Smith a09cd2ada8 lg-mako: fix elogind not starting (MR 1606)
[ci:skip-build]: CI times out. According to z3ntu, all of them build
		 fine.
2020-10-30 18:27:31 +01:00
Luca Weiss ce501c83a2 device/*: share Linux 3.4 patch for elogind not starting (MR 1606) 2020-10-30 18:27:02 +01:00
Luca Weiss 813a78a74f linux-sony-eagle: fix compile with gcc10 (MR 1606) 2020-10-30 18:27:02 +01:00
Luca Weiss fdacb76e7e linux-alcatel-pop7lte: fix compile with gcc10 (MR 1606) 2020-10-30 18:27:02 +01:00
Luca Weiss 49566d48bd linux-huawei-y530: fix compile with gcc10 (MR 1606) 2020-10-30 18:27:02 +01:00
Luca Weiss 6ec15b58ee linux-samsung-ms013g: fix compile with gcc10 (MR 1606) 2020-10-30 18:27:02 +01:00
Bart Ribbers b6d6657875 temp/plasma-phone-components: upgrade to 5.20.2_git20201029 (MR 1663) 2020-10-30 18:07:26 +01:00
Alexander Akulich e48006eb1b temp/plasma-nano: upgrade to 5.20.2_git20201001 (MR 1663)
plasma-nano (albeit saying it is 5.20.1) is pointing to the master branch
and kept as-is (there is no updates in master and I don't see a reason to
downgrade it to the actual 5.20.2 tag which is a few small commits behind
the master).
2020-10-30 18:06:20 +01:00
Alexander Akulich fed6cce88d main/postmarketos-ui-plasma-mobile: Add a font with special characters (MR 1662)
The characters (e.g. 'fullwidth asterisk') are used in plasma-dialer.
2020-10-30 17:55:27 +01:00
Alexander Akulich 408d8f27d1 main/postmarketos-ui-plasma-mobile: Add a font with emoji (MR 1662)
The font is needed for maliit emoji keyboard.

Signed-off-by: Alexey Min <alexey.min@gmail.com>
2020-10-30 17:55:27 +01:00
Minecrell 421095284a device/community/soc-qcom-msm8916: fork alsa-ucm-conf entirely (MR 1655)
Upstream keeps making breaking changes in patch releases.
Let's fork alsa-ucm-conf entirely for now instead of just patching
in some files to ensure that these files don't break every few months.

This fixes audio on MSM8916 devices when not using the modem.
2020-10-30 17:10:18 +01:00
Bhushan Shah 5efdbd13fa main/linux-postmarketos-allwinner: fix display framerate on pinephone (MR 1661)
This patches from the megi solves the issue of the MIPI-DSI panels
framerate being at 2/3rd of actual or expected rate.

[ci:skip-build]: already built successfully in CI
2020-10-30 00:30:38 -07:00
Oliver SmithandMartijn Braam 4247902156 temp/phosh: upgrade to 0.5.0 (MR 1656)
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
2020-10-29 19:32:38 +01:00
clayton craft 737f33e561 pine64-pinephone: add workaround for purging the -elogind subpackage (MR 1660)
This subpackage was removed when a proper fix for suspend was merged,
however apk doesn't know to purge this subpackage, so the old elogind
hook workaround stuck around. This workaround could probably be removed
once we're sure all folks on edge have installed this upgraded package
with the 'provides'...
2020-10-28 22:34:56 -07:00
Antoine Fontaine c60dd3e80e main/postmarketos-ui-{phosh,plasma-mobile}: add iio-sensor-proxy-openrc to deps (MR 1658)
As the post-install use the service, it must be in depends.
Otherwise, the install_if may install it *after* the rc-update
command is run, and fails.
2020-10-28 23:52:37 +03:00
clayton craft 394798dc8a postmarketos-ui-phosh: add gschema override to show squeekboard (MR 1657)
Squeekboard >= 0.10.0 looks for an a11y setting to determine if it
should show up on the screen. This sets the config setting to 'true' so
that it shows up by default. It can apparently be toggled off in Gnome
Settings, but I haven't found the UI switch to do that yet..
2020-10-28 12:32:37 -07:00
Martijn Braam 07a7853b50 device-pine64-pinephone: add autofocus firmware (MR 1656)
[ci:skip-build]: already built successfully in CI
2020-10-28 11:57:32 -07:00
Martijn Braam 628aabf2b6 main/linux-postmarketos-allwinner: add ov5640 autofocus (MR 1656)
[ci:skip-build]: already built successfully in CI
2020-10-28 11:57:21 -07:00
Pedro Moreno e4366d5f8a Pinephone: Fix excessive mic noise on call (MR 1652)
Fix ucm2 settings to lower mic boost and increase mic volume.

Fixes: #720
2020-10-28 11:45:02 -07:00
Timothee LF e38c7c069a temp/gtk+3.0: upgrade to 9999_git20201022
Remove patches:
'0001-gtk-meson.build-add-new-hdy-files.patch' and
'10-Revert-gdkseatdefault-Grab-touch-events-where-applic.patch'
appear in the code downloaded from Purism at precisely the
location of the patches.

[ci:skip-build]: already built successfully in CI
2020-10-28 14:51:03 +01:00
Timothee LF ae9fd7f8be temp/epiphany: upgrade to 9999_git20201019 (MR 1650) 2020-10-27 17:22:24 +01:00
Timothee LF 87cf85746e temp/gtk+3.0: tweak downgrade workaround for libportal (MR 1650) 2020-10-27 17:22:24 +01:00
Bhushan Shah fe766c43d7 main/linux-postmarketos-allwinner: add patch for suspend hang (MR 1651)
See thread at: https://lore.kernel.org/linux-usb/20201027045519.GA947883@aquila.localdomain/

Fixes: #839
2020-10-27 13:58:34 +05:30
Bhushan Shah 378904d076 device-pine64-pinephone: remove the elogind hook (MR 1651)
musb_hrdc bug is fixed properly with kernel patch, so we do not need to
do this bind/unbind dance anymore.

This partially reverts commit f7d743a213.
2020-10-27 13:58:34 +05:30
32Linux ebc26c92e2 wiko-ufeel: fix wifi firmware path (MR 1609)
[ci:skip-build]: already built successfully in CI
2020-10-26 11:33:31 +01:00
Andrei Ostanin 628f799ab2 xiaomi-libra: new device (MR 1454) 2020-10-26 09:17:02 +01:00
Oliver Smith d9157e1adb main/postmarketos-welcome-gtk3: upgrade to 0.2.1 (MR 1564) 2020-10-26 09:05:26 +01:00
Ultracoolguy f2987a58f4 linux-postmarketos-qcom-msm8953: upgrade to latest git master (MR 1646) 2020-10-26 08:50:33 +01:00
clayton craft 3c8943148c gitlab ci: add pinephone elogind hook script to shellcheck (MR 1636) 2020-10-25 11:17:34 -07:00
clayton craft f7d743a213 device-pine64-pinephone: fix suspend with elogind (MR 1636)
- re-enable console suspend, which seems to be broken with elogind when
  suspending (kernel gets hung up indefinitely in vt_waitactive)

- add a suspend hook to work around the musb driver not allowing the
  device to suspend

Based on my testing, this option seems to prevent suspending via
elogind (using `loginctl suspend`). When console suspend is disabled,
the kernel gets hung up in the call to vt_waitactive, and elogind times
out trying to suspend.
2020-10-25 11:17:34 -07:00
Minecrell 2d10cc697a modem/msm-modem(-downstream): start modem if necessary (MR 1640)
On some downstream kernels it seems like we need to explicitly keep
/dev/subsys_modem open (without writing anything), otherwise the modem
will be stopped (or never started). Weird.
2020-10-25 18:35:21 +01:00
Minecrell 36eb719b51 main/keepfileopen: new aport (MR 1640)
Sometimes it's just nice to open a file, do nothing with it
and keep it open forever. Yay.
2020-10-25 18:35:06 +01:00
Minecrell 799821e163 modem/rmtfs: fix downstream (MR 1640)
The -s switch to automatically start/stop the modem remoteproc only
works on mainline, on downstream it fails with "Failed to get rprocfd".

Let's abuse /usr/lib/preload/libqipcrtr4msmipc.so to check if we are
(probably) running on a downstream installation, and omit the -s
argument in this case. The modem remoteproc needs to be started
differently on downstream.
2020-10-25 18:34:57 +01:00
Minecrell 58a8f32e2f modem/rmtfs: upgrade to 0.2_git20200928, make qrtr-ns optional (MR 1640)
qrtr-ns is not needed (or working) on downstream, also it is no longer
needed for mainline starting with Linux 5.9. Convert the "need" dependency
to a "use" so qrtr-ns is only started if it is really needed.
2020-10-25 18:34:48 +01:00
Minecrell 3b8031445c modem/qrtr: upgrade to 0.3_git20200928, separate library into -libs (MR 1640)
In most cases, the qrtr-ns is not needed anymore now, but we still
need the libqrtr library. Separate that out into a separate package
so it can be installed independently.
2020-10-25 18:34:39 +01:00
Minecrell 8a36bb744e oneplus-oneplus3(t): explicitly install + activate qrtr-ns (MR 1640)
qrtr-ns is now part of the Linux kernel (as of version 5.9), so
there is no need to start it in userspace anymore. It does not seem
to be needed (or working) on downstream either.

linux-postmarketos-qcom-msm8996 is the only mainline kernel which
is still on < 5.9. In preparation to make the qrtr dependency optional
for rmtfs, let's explicitly enable qrtr-ns for MSM8996 devices to avoid
causing regressions.
2020-10-25 18:34:29 +01:00
Luca Weiss 8e28b197a5 kde/peruse: new aport (MR 1643) 2020-10-25 17:52:51 +01:00
Bart Ribbers bded85f5e4 main/postmarketos-ondev: depend on new qtvirtualkeyboard-plasma (MR 1590) 2020-10-25 17:34:58 +01:00
Bart Ribbers 93bc6ff7f3 main/qtvirtualkeyboard-plasma: new aport (MR 1590) 2020-10-25 17:34:45 +01:00
Bart Ribbers 7fe548c81a temp/plasma-phone-components: upgrade to 5.20.1_git20201019 (MR 1590) 2020-10-25 17:34:35 +01:00
Bart Ribbers 013dcd11dd temp/plasma-nano: upgrade to 5.20.1_git20201001 (MR 1590) 2020-10-25 17:34:10 +01:00
Dolphin von Chips 5a047026f0 main/hello-world-wrapper: update url (MR 1644) 2020-10-24 00:49:09 +03:00
Minecrell fca4ec8c01 temp/modemmanager: build with a single thread only (MR 1607)
For some reason, the ModemManager build tends to freeze when built
with QEMU user emulation for arm*. Changing the build to use a single
thread only (-j1) avoids that, although the build is slower of course.

Also limit building to "armhf armv7 aarch64" since the forks are not
needed on any other architectures, to reduce build times a bit. The
other architectures can just use the upstream packages from Alpine.
2020-10-23 12:18:22 +03:00
Minecrell 9c76176c24 temp/ofono: assume mainline gobi network interface is "rmnet0" (MR 1607)
This allows to connect the modem to the Internet with oFono.
I have verified that this does not break anything if the "rmnet0"
network interface is missing. Plus, all mainline devices currently
covered by the package should also be able to use the new "BAM DMUX"
network driver that is used as network interface to the modem.

(Note: This works differently on newer SoCs, but they also need
       something different in oFono...)
2020-10-23 12:18:22 +03:00
Minecrell d070b0b19f modem/q6voiced: upgrade to 0_git20200604 (MR 1607)
Also listen to DBUS events from ModemManager, to start call audio
when necessary.
2020-10-23 12:12:25 +03:00
Minecrell 0062418e39 temp/modemmanager: fork from Alpine (MR 1607)
Most older Qualcomm SoCs (e.g. MSM8916, MSM8974, ...) communicate
with the modem through shared memory. On mainline kernels these
shared memory channels are exposed through the RPMSG subsystem.

This is different from communication through USB or serial interfaces
that are currently supported by ModemManager.

This commit forks the "modemmanager" package from Alpine and adds
a patch that allows ModemManager to talk to modems through the RPMSG
subsystem.

Working functionality: Calls, SMS, Mobile Data

The same patch has also been submitted upstream:
https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/363
2020-10-23 12:12:25 +03:00
Minecrell 36f13ad1ab modem/msm-modem: expose serial AT port from DATA4 SMD channel (MR 1607)
So far we have only created /dev/modem based on the DATA5_CNTL
channel available from the modem. The DATAX_CNTL channels allow
sending QMI messages to the modem. This is sufficient for oFono
to work.

Unfortunately, ModemManager currently does not support starting
calls through the QMI interface. Instead, it uses serial AT commands
that can be alternatively used on all USB-based Qualcomm modems.

It turns out that we can also send serial AT commands through
the RPMSG interface: the DATAX channels (without _CNTL) all respond
to serial AT commands. We set it up at /dev/modem-at, configure
ModemManager accordingly and then we are able to start calls. Yay!
2020-10-23 12:12:22 +03:00
Minecrell 25147b4aa3 temp/ofono: build with a single thread only (MR 1637)
For some reason, the ModemManager build tends to freeze when built
with QEMU user emulation for arm*. Changing the build to use a single
thread only (-j1) avoids that, although the build is slower of course.

The same thing seems to happen fo oFono as well, so set that to -j1 too.

Also limit building to "armhf armv7 aarch64" since the forks are not
needed on any other architectures, to reduce build times a bit. The
other architectures can just use the upstream packages from Alpine.
2020-10-23 09:27:51 +02:00
Alexander Akulich 129b8b7318 temp/ofono: Add a patch for QMI modem driver to fix outgoing calls (MR 1637) 2020-10-23 09:27:51 +02:00
Alexander Akulich e67d4800a6 temp/ofono: Add a way to set ofonod arguments (MR 1637) 2020-10-23 09:27:51 +02:00
Oliver Smith 80fec94eb8 temp/upower: fork from alpine to apply torch patch (MR 1623)
Required to make the torch button work in Phosh.

[ci:skip-build]: already built successfully in CI
2020-10-23 08:20:11 +02:00
Luca Weiss 65983235e7 temp/phosh: upgrade to 0.4.5 (MR 1623)
re-fork from Alpine to get upstream packaging changes as well
2020-10-22 14:05:37 +02:00
Oliver Smith 757edbd304 main/postmarketos-ui-phosh: add megapixels to _pmb_recommends (MR 1610)
[ci:skip-vercheck]: doesn't need a rebuild
2020-10-20 22:55:04 +02:00
Caleb Connolly 4dd597d8a0 linux-oneplus-sdm845: update to 5.9 (MR 1635)
Update to kernel 5.9 with the following changes:
* Change tri-state key to macro keys instead of 'A', 'B' and 'C' keys.

[ci:skip-build]: already built successfully in CI
2020-10-20 22:30:55 +02:00
86adf2a7ce pine64-pinetab: provide choice of panel and fix audio (MR 1614)
* add LCD panel type selection
* adjust alsa configs

Signed-off-by: Hendrik Borghorst <hendrikborghorst@gmail.com>
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2020-10-20 18:02:24 +02:00
Oliver SmithandMartijn Braam 517f905b84 pine64-pinephone: update devicepkg for 5.9 kernel (MR 1614)
* update modem init for modem_power
* adjust alsa configs
* remove obsolete megapixels config file

Related: https://xnux.eu/log/#020
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
2020-10-20 18:02:24 +02:00
dcc0a8c855 main/linux-postmarketos-allwinner: upgrade to 5.9.1_git20201019 (megi's tree) (MR 1614)
Switch from the 5.8.x kernel with allwinner specific patches to megi's
5.9 based tree. He drives the PinePhone related kernel development
forward like no other, his tree and changes are well documented on
xnux.eu, and he frequently publishes tested "build this one" commits with
the latest improvements. It makes a faster and less time consuming
workflow to simply package these versions (after a smoke test) into
postmarketOS edge, and after some time to catch possible regressions
ship the same version in postmarketOS stable.

This kernel should make HDMI work for most people, and improve call
quality (thanks to smaeul's patches, which are integrated into megi's
tree).

Kernel config changes:
* Enable MODEM_POWER in the kernel config, among other improvements this
  allows us to get rid of the 30s delay on power off.
* Enable CONFIG_DRM_PANEL_ILITEK_ILI9881C (new PineTab panel)
* Enable CONFIG_ZRAM
* Enable CONFIG_HID_MULTITOUCH

Related: https://xnux.eu/devices/feature/modem-pp.html#toc-modem-power-driver
Changelog: https://megous.com/git/linux/tag/?h=orange-pi-5.9-20201019-1553
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
Co-Authored-By: Clayton Craft <clayton@craftyguy.net>
2020-10-20 18:02:17 +02:00
WTechNinja 25a0dbe27d samsung-gprimeltecan: new device (MR 1401) 2020-10-13 21:16:24 +02:00
Otto Urpelainen 97fa300bc7 sony-tuba: new device (Sony Xperia XA) (MR 1613)
Initial support for Sony Xperia XA (codename: sony-tuba). Builds, can be
flashed, ssh connection through usb works, display works, touchscreen works,
no wifi or anything else.
2020-10-13 10:07:59 +02:00
Thiago Foganholi a248ec3e55 Remove armhf from firmware-samsung-i9305 (MR 1631)
As the device samsung-i9305 was updated to armv7, there is no need to
keep the armhf architecture on the firmware package anymore.
2020-10-13 10:04:42 +02:00
Thiago Foganholi 7fc133578e samsung-i9305: Update architecture to armv7
According to the wiki pages, some interfaces can't be built for the
armhf architecture. This device is configured to armhf but it actually
supports armv7 architecture. Tested with a samsung-i9300.
2020-10-13 10:04:35 +02:00
clayton craft b8b6ec3634 postmarketos-ui-phosh: include emoji font (MR 1632)
This adds emoji support to the squeekboard emoji picker, and to any apps
that might want to display emojis (chatty, firefox, text editor, etc)

Thanks @vurpo for the tip.
2020-10-13 09:47:51 +02:00
Oliver Smith 2420f9a0bf main/postmarketos-ui-phosh: re-enable autologin (MR 1630)
We have tried out lightdm-mobile-greeter for three weeks, but let's remove
it again from the default install.

The greeter behaves completely different from the Phosh (or any other
UI's) lockscreen, therefore it provides a bad user experience. Not only
the design is different, but it also can't display the same information
as the Phosh lockscreen. You can't accept a call coming in while the
greeter is displayed, and whatever other features will be added to the
lockscreen in the future would not be in the greeter (e.g. making a photo
without logging in, emergency calls without login, ...).

It's clear to me now, that postmarketOS in the default installation
should install one UI in single-user mode, and that UI should use its
lockscreen to display all login screens. The case of having multiple UIs
installed at the same time is used rarely, so instead of optimizing for
it, document how to enable a greeter after the installation in the wiki:
https://wiki.postmarketos.org/wiki/Configure_postmarketOS_for_multiple_UIs_or_users

Besides the strong reasons above to ship with no greeter at all, we had
problems with lightdm-mobile-greeter in particular:
* It did not work with Plasma Mobile
* When HDMI was plugged in, the greeter was not usable (especially
  annoying, because Phosh tends to crash after plugging in HDMI, so it
  would go back to the greeter which then means you need to reboot)

This reverts commit be693339ec.
2020-10-11 18:52:28 +02:00
Alexey Min e8a3b624ef main/postmarketos-ondev: rebuild against latest libcalamares 2020-10-10 05:00:36 +03:00
clayton craft bdf120c6a7 device-purism-librem5: upgrade to 1.6 (MR 1628)
This new version:
        - Upgrades device config from upstream to v25
        - Fixes a problem using modesetting driver on Xorg (lightdm
          was broken because it now uses Xorg)
        - Override GDK to use GLES (change from upstream Purism)
2020-10-08 22:08:35 -07:00
clayton craft d2cf30ae66 linux-purism-librem5: upgrade to 5.9.0-rc8 (MR 1628) 2020-10-08 22:08:35 -07:00
fengjiongmax da72051070 motorola-nash: new device (Moto Z2 Force) (MR 1567) 2020-10-08 10:26:18 +02:00
Luca Weiss 9db239a9d8 main/postmarketos-ui-sway: update recommends for sway defaults (MR 1622)
alacritty and dmenu are specified in the default sway config, so install
them so the user isn't left with a non-functional desktop.
2020-10-08 09:20:15 +02:00
Alexey Min 6a8ea4bc68 main/postmarketos-ondev: bump pkgrel, rebuild against latest calamares
Fixes upstream-compat check:
  missing depend(s): so:libcalamares.so.3.2.26.1,
                     so:libcalamaresui.so.3.2.26.1
2020-10-07 22:01:18 +03:00
Luca Weiss ce76c867df qemu-aarch64: configure getty on serial console (MR 1626) 2020-10-07 21:49:40 +03:00
Luca Weiss 808b73ca43 qemu-amd64: configure getty on serial console (MR 1626) 2020-10-07 21:49:36 +03:00
Martijn Braam 879bd336b7 device/pine64-pinephone: remove megapixels config (MR 1587)
(cherry picked from commit 2ac5e8f90a)
2020-10-07 12:55:20 +02:00
Luca Weiss e1ee641703 temp/kitinerary: remove (MR 1621) 2020-10-07 09:28:29 +02:00
Luca Weiss 1270708093 temp/os-prober: remove (MR 1621) 2020-10-07 09:28:29 +02:00
Luca Weiss 6e77769518 temp/evtest: remove (MR 1621) 2020-10-07 09:19:44 +02:00
Luca Weiss b4e84320de temp/calamares: remove (MR 1621) 2020-10-07 09:19:33 +02:00
Luca Weiss 0fac39abe1 main/postmarketos-mkinitfs: fix incorrect cpio usage (MR 1619)
cpio expects a newline-separated list of files from stdin by default,
and you can change that to a NULL-terminated list of files by using the
'-0' switch.

Previously we were passing a NULL-terminated list ('-print0') and using
cpio with the default setting. For some reason busybox cpio works with
that but GNU cpio doesn't like that and generates an initramfs without
any files (as it only gets "a single file").

With this change the initramfs generation works fine with both busybox
cpio and gnu cpio.

Fixes #815
2020-10-06 18:52:09 +02:00
Aphrodite 5ae1207392 oppo-a51f: new device (Oppo Mirror 5s) (MR 1503)
[ci:skip-build]: already built successfully in CI
2020-10-05 20:24:12 +03:00
timbz 0bc009892f samsung-i9100: fix wifi firmware loading for mainline kernel (MR 1598)
[ci:skip-build]: already built successfully in CI
2020-10-05 14:18:43 +02:00
timbz 93f6b3dab9 samsung-i9100: enable drm backend for weston (MR 1598) 2020-10-05 14:18:24 +02:00
timbz ffd5fd8b2b samsung-i9100: add mainline kernel (MR 1598) 2020-10-05 14:18:18 +02:00
Minecrell c64f29713f xiaomi-wt88047: add mainline port for Xiaomi Redmi 2 (MR 1604)
Replace the old downstream port with a new aarch64 port running the
linux-postmarketos-qcom-msm8916 close-to-mainline(TM) kernel.
Most of the functionality is working:

  - USB Network
  - Storage (eMMC, SD card)
  - Display, brightness control
  - Touchscreen, buttons
  - IMU (accelerometer+gyroscope)
  - Notification LED
  - Sound (Speaker, Headphones, Microphones)
  - WiFi, Bluetooth
  - Modem (SMS, voice calls, mobile data)

Coming soon (hopefully): Battery/Charging, USB-OTG (not working yet)

There are many variants of the device, so more changes to handle
differences between them may be needed in the future. For now,
the only relevant difference is the required modem firmware:

  - wt88047 (global variant)
  - wt86047 (China variant)

... have different kind of modems and they do not seem to work with
the firmware of the other one. The way this is handled in this device
package is that there is a separate kernel variant for both of them.
All other required firmware can be shared, and therefore there is no
differentiation needed when using the kernel variant without modem.

I renamed "wingtech-wt88047" to "xiaomi-wt88047".
My reasoning for that is the following:

  - Wingtech is the ODM (original design manufacturer), they designed the
    hardware and (probably) manufactured it. But postmarketOS port applies
    to the combination of both hardware and firmware, and the firmware was
    at least partially provided by Xiaomi.

  - wt88047 looks lonely with the "wingtech" vendor, when all other Xiaomi
    devices use "xiaomi", even though many from them were probably also
    designed by Wingtech.

  - We don't use the ODM hardware name for other devices either, e.g.
    "wileyfox-crackling" would be "longcheer-l8150" with the same approach.

I think the port is better visible as "xiaomi-wt88047" (too bad Xiaomi
seemingly did not have a proper codename for this device...)
2020-10-05 04:00:56 +03:00
Minecrell 7ab48c472a wingtech-wt88047: remove downstream device port (MR 1604)
In preparation for adding mainline device port for Xiaomi Redmi 2
(wt88047), remove the downstream device port. It's still armhf
which makes it clear that it hasn't been tested for a long time.

The mainline port has many more features, also it is aarch64, which
is not compatible with the downstream kernel.
2020-10-05 04:00:56 +03:00
Minecrell e9925b4a72 device/community/soc-qcom-msm8916: update ALSA UCM configurations (MR 1603)
- Add UCM configuration for Xiaomi Redmi 2 (wt88047)
- Add UCM configuration for Xiaomi Redmi Note 4 (xiaomi-mido)
- Some fixes to UCM configuration for BQ Aquaris X5 (bq-paella)
2020-10-05 02:16:19 +03:00
Minecrell cadfc4189f main/linux-postmarketos-qcom-msm8916: upgrade to 5.9-rc7 (MR 1603)
- Update to Linux 5.9-rc7
- Add "BAM DMUX" driver as network interface to the modem
  for mobile data
- Major rewrite/cleanup of all MSM8916 device trees
- Lots of cleanup everywhere
- I hope I did not forget something :)

Devices:
  - bq-paella: Add vibrator
  - samsung-j5nlte: Add display
  - samsung-a2015 (a3u/a5u): Fix USB-OTG detection
  - "Initial" support for Xiaomi Redmi 2 (wingtech-wt88047)
      - USB
      - Storage (eMMC, SD card)
      - Display, brightness control
      - Touchscreen, buttons
      - IMU (accelerometer+gyroscope)
      - Notification LED
      - Sound
      - WiFi, Bluetooth
      - Modem
  - Initial support for Motorola Moto E 2015 (motorola-surnia)
      - USB
      - Storage (eMMC, SD card)
      - Display, brightness control
      - Touchscreen, buttons
      - WiFi, Bluetooth
      - Battery status
  - Initial support for Samsung Galaxy Grand Prime
      - USB
      - Storage (eMMC, SD card)
  - Initial support for Oppo Mirror 5s (oppo-a51f)
      - USB
      - Storage (eMMC, SD card)
      - WiFi, Bluetooth
2020-10-05 02:16:14 +03:00
Dolphin von Chips 620b695e5c sony-castor: armv7, rename, mainline, cleanup (MR 1199) 2020-10-04 15:38:58 +02:00
Luca Weiss 6cf28e4329 device/testing/firmware-sony-castor: new aport (MR 1199) 2020-10-04 15:38:34 +02:00
Luca Weiss b7dfa002c1 main/linux-postmarketos-qcom-msm8974: upgrade to 5.9.0_rc4 (MR 1572)
Config changes:
* DRM_PANEL_PANASONIC_VVX10F034N00 for sony-castor
* GPIO_PCA953X for samsung-klte
2020-10-04 15:32:49 +02:00
Ultracoolguy b0255ecb87 linux-postmarketos-qcom-msm8953: Update to 5.9-rc7 (MR 1615) 2020-10-02 21:44:56 +02:00
Oliver Smith b21f9f70fd cross/musl-*: upgrade to 1.2.1-r2 2020-09-30 11:13:24 +02:00
HenriDellal 6e0ab5e163 postmarketos-ui-mate: disable lockscreen by default (MR 1608) 2020-09-29 13:30:56 +02:00
Minecrell 2c491df415 bq-paella: enable splash screen (MR 1602)
Actually the display has been working in initramfs since MR 1261
(device-bq-paella: enable display and touchscreen on boot).
We should make it explicit in deviceinfo.
2020-09-28 14:49:14 +02:00
Bart Ribbers 06f4c5a9ac main/postmarketos-hidden-desktop-entries: stop hiding Cheese (MR 1539)
Since
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/12086 the
Cheese application won't be installed anymore unless explicitely
specified. Applications that usually depend on it now depend on
cheese-libs instead.

This means we can stop hiding it and allowing people to install it
themselves if they want too
2020-09-28 13:59:38 +02:00
Oliver Smith 905a5ce34b main/osk-sdl: upgrade to 0.58 (MR 1600)
Related: https://gitlab.com/postmarketOS/osk-sdl/-/tags/0.58
2020-09-25 12:03:21 +02:00
clayton craft 6ed62696c9 main/postmarketos-hidden-desktop-entries: add org.gnome.eog (MR 1583)
This application doesn't work 100% when launched from the 'desktop', but
it is still useful as a handler for opening image files from a file
browser, so the icon is hidden.
2020-09-24 10:28:49 +02:00
Clayton Craft 0289b633f9 main/postmarketos-ui-phosh: add eog and Nemo to default apps (MR 1583)
eog is a nice image viewer that works pretty well on a
touchscreen/mobile display.

Nemo is a file manager from the Cinnamon desktop project, which forked
from Nautilus some time ago. It is much more usable than Nautilus on a
touchscreen/mobile display.

Set eog as default app in mimeapps.list, so it even works when hiding
the launcher with postmarketos-hidden-desktop-entries (we'll hide it,
because it doesn't work when opened directly; no image is shown and
opening a file does not work either). The list of associated mimetypes
is taken from here:
https://gitlab.gnome.org/GNOME/eog/-/blob/master/data/org.gnome.eog.desktop.in.in
2020-09-24 10:28:44 +02:00
Ultracoolguy 1ff589c0a2 firmware-motorola-ocean: Add additional blobs (MR 1558)
firmware-motorola-ocean: Change package() syntax
Also add linux-firmware-qcom dependency
2020-09-22 14:35:27 -04:00
Ultracoolguy c45eccd80d device-motorola-ocean: Modify for mainline support (MR 1558)
device-motorola-ocean: Add support for both downstream and mainline
kernel

device-motorola-ocean: Update dependency for downstream kernel
The dependency mentioned is wcnss-wlan.

Apply 1 suggestion(s) to 1 file(s)
2020-09-22 14:35:27 -04:00
JunakandUltracoolguy f08606488f main/linux-postmarketos-qcom-msm8953: new aport (MR 1558)
linux-postmarketos-qcom-msm8953: Change maintainer

linux-postmarketos-qcom-msm8953: Update config and source

Co-Authored-By: Ultracoolguy <ultracoolguy@tutanota.com>
2020-09-22 14:35:27 -04:00
timbz b0f78029cd linux-samsung-kylepro: build with gcc 6 (MR 1574) 2020-09-22 15:48:29 +03:00
HenriDellal d0c585b98b huawei-lua-u22: remove non-working port (MR 1592)
This port got hit by regressions recently and doesn't boot anymore. Tried with different GCC versions.
2020-09-22 11:50:19 +02:00
fengjiongmax 2447419fc6 motorola-athene:fix compiler error (MR 1594) 2020-09-22 11:48:47 +02:00
HenriDellal 7a01611214 finepower-f1: update device- and linux- packages (MR 1596)
Device package changes:
- Replace ALSA configs with dependency (soc-sprd-audio-sc8830)
- Add reboot-mode as dependency

Kernel package changes:
- Use dtbtool-sprd instead of dtbtool
- Move code and device tree to external repo
- Add patch for GCC10
- Add patches for framebuffer
2020-09-22 11:45:43 +02:00
dzmitry f23e4627ce linux-samsung-a5y17lte : fix linter issues
Add descriptions to patches
Prefix custom variable with '_'
Refactoring change, [ci:skip-vercheck]
2020-09-21 15:38:14 +03:00
Oliver Smith 00f0000247 cross/binutils-*: upgrade to 2.35.1-r0 2020-09-21 13:40:30 +02:00
Alexey Min ee6a541234 temp/gnome-software-plugin-apk: upgrade to 0.8.1 and sync with upstream (MR 1593)
* add install_if to pull in w/ gnome-software
  https://gitlab.alpinelinux.org/alpine/aports/-/commit/90b924a3346678f37b0a1a0e63daa4d677e8c662
* use abuild-meson & meson compile/test/install
  https://gitlab.alpinelinux.org/alpine/aports/-/commit/47360782abaf34cd0a1cc746a6bbbaa5966b7515
* use apk-polkit-rs instead of apk-polkit
  https://gitlab.alpinelinux.org/alpine/aports/-/commit/0f6c2d95f145cecd9a62c91dcb5be98e4fe01995
* upgrade to 0.8.1
  https://gitlab.alpinelinux.org/alpine/aports/-/commit/ce795a4d2776a088c8bc830e8fb7c9e29085e80b
* don't pull in alpinelinux-apppstream-data
  https://gitlab.alpinelinux.org/alpine/aports/-/commit/c35a1b4ba76e5eacc8db2e1fe9819334fd1211d3

NOTE: alpinelinux-apppstream-data was removed in
      https://gitlab.alpinelinux.org/alpine/aports/-/commit/946967b01f34f78719ecf0ff87e90eec30f147d7
2020-09-21 11:41:33 +02:00
Yassine Oudjana 4d8473e255 xiaomi-scorpio: new device (Xiaomi Mi Note 2) (MR 1576)
* use shared multiple yylloc definition patch (MR 1576)
2020-09-20 19:29:38 +03:00
Dolphin von Chips 2a34837dc7 cubietech-cubieboard: new device (Cubietech Cubieboard) (MR 1589) 2020-09-20 16:58:04 +02:00
Chris 7d1d03164b motorola-addison: new device (Moto Z Play) (MR 1577) 2020-09-20 16:50:39 +02:00
Alexey Min dde1d81a85 kde/plasma-bigscreen: add qmlplugindump workaround
Should unlock BPO for armv7

See also: pmbootstrap#1970

[ci:skip-vercheck]: should not affect the resulting binary package
2020-09-20 03:06:15 +03:00
Bart Ribbers 01019884fb main/postmarketos-mkinitfs: add new trigger for osk-sdl (MR 1563)
We now trigger on files in /usr/share/postmarketos-mkinitfs-triggers.
This can be used by other packages like osk-sdl for which an updated
version would otherwise never be used in the initramfs
2020-09-19 17:14:20 +03:00
Bart Ribbers 4f6bec666c main/osk-sdl: add empty file to mkinitfs triggers directory (MR 1563) 2020-09-19 17:14:20 +03:00
Bart Ribbers d213e06d4e main/postmarketos-ui-plasma-bigscreen: new aport (MR 1552) 2020-09-19 13:04:06 +02:00
Bart Ribbers 9b0a415346 kde/plasma-bigscreen: new aport (MR 1552) 2020-09-19 13:04:06 +02:00
Bart Ribbers f88001e233 firmware-pine64-rtl8723bt: upgrade to 0_git20200705 (MR 1588) 2020-09-18 22:32:07 +03:00
Gianluca Boiano ebbbbf19d3 linux-xiaomi-vince: upgrade to 4.9.236 (MR 1586) 2020-09-18 16:01:29 +03:00
Craig Comstock b271f11bcd main/postmarketos-ui-shelli: upgrade to v0.5 (MR 1354) 2020-09-17 20:05:49 -07:00
Craig Comstock a2c1315395 main/shelli: upgrade to v0.5 (MR 1354) 2020-09-17 20:05:48 -07:00
Craig Comstock 63284f5520 main/gesture: upgrade to v0.5 (MR 1354) 2020-09-17 20:05:38 -07:00
Bart Ribbers 96fd971ead main/postmarketos-ui-plasma-mobile: re-enable auto-login (MR 1585) 2020-09-17 15:48:59 +02:00
dzmitry 000f01b835 linux-samsung-herolte : add patch to fix kernel compilation with gcc10 (MR 1578)
Patch makes yyloc declaration extern.
2020-09-17 09:39:48 +02:00
dzmitry ccfdf8b2b7 linux-samsung-a5y17lte : add patch to fix kernel compilation with gcc10 (MR 1578)
Patch makes yyloc declaration extern.
2020-09-17 09:39:48 +02:00
Martijn Braam 2cd8cd1d17 main/postmarketos-ui-plasma-mobile: switch greeter to lightdm-mobile-greeter (MR 1382) 2020-09-16 18:09:57 +02:00
Martijn Braam be693339ec main/postmarketos-ui-phosh: switch greeter to lightdm-mobile-greeter (MR 1382) 2020-09-16 18:09:25 +02:00
Clayton Craft 08aa35caa5 temp/gnome-contacts: add patch to fix compilation on vala 0.50.0 (MR 1546)
This patch is from upstream gnome-contacts:
https://gitlab.gnome.org/GNOME/gnome-contacts/-/commit/22ac2c6fecc98efd11d96dc3e04938b8777a3510

Purism doesn't have it in their fork:
https://source.puri.sm/Librem5/gnome-contacts/-/issues/43

[ci:skip-vercheck]: some of these have pkgrel>0 - let's keep that in
order to have less differences with v20.05.
[ci:skip-build]: generated log is too long, CI fails
2020-09-15 17:08:42 +02:00
Oliver Smith 8a49cb5647 temp/evince: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:35 +02:00
Oliver Smith e9e4b505e2 temp/epiphany: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith daa0cfc434 temp/gnome-software-plugin-apk: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith 05b1d809dc temp/gnome-software: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith cebea0e543 temp/gnome-control-center: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith 44191c150c temp/gnome-contacts: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith b320f9482a temp/gnome-calculator: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:21 +02:00
Oliver Smith 4e59a58aa2 temp/phosh: copy fork from v20.05 branch (MR 1546)
Set pkgver to 9999, so it is always preferred over the Alpine edge
version.
2020-09-15 17:08:21 +02:00
Oliver Smith 7cf6bae884 temp/gtk+3.0: copy fork from v20.05 branch (MR 1546) 2020-09-15 17:08:15 +02:00
dzmitry 428aeb4488 main/dtbtool-exynos: upgrade to 1.1.0 (MR 1579) 2020-09-15 13:32:16 +03:00
Oliver Smith 1acf66c8bf pine64-pinephone: add megapixels config (MR 1537)
Copy of https://git.sr.ht/~martijnbraam/megapixels/tree/master/pinephone.ini
Let's do it like with other device specific configs, and put them into
the device package. It's a short file and it looks like it won't change
often.
2020-09-14 22:29:49 +02:00
Oliver Smith 05332c1e0b main/linux-postmarketos-allwinner: enable camera related kconfig options (MR 1569) 2020-09-14 22:26:10 +02:00
Serge Hallyn fdd0dfebba main/linux-postmarketos-allwinner: enable CONFIG_CGROUP_FREEZER (MR 1569)
Enable the freezer cgroup. This allows a user to start a large application like
firefox, freeze it to save some power, and unfreeze it to continue using it,
without having to restart the application completely. Stopping and restarting
the application completely results in more battery usage as well as lost state.

Signed-off-by: Serge Hallyn <serge@hallyn.com>
2020-09-14 22:26:10 +02:00
Clayton Craft 0dc8eb9cce main/linux-postmarketos-allwinner: enable LED for notifications (MR 1569)
This config change is necessary for feedbackd to trigger LED
notifications.

fixes #776
2020-09-14 22:26:10 +02:00
Bart Ribbers 37f9441e60 main/linux-postmarketos-allwinner: upgrade to 5.8 (MR 1569) 2020-09-14 22:26:10 +02:00
Bart Ribbers 924c80ec89 linux-postmarketos-qcom-msm8974: modernize (MR 1536)
This also removes the dtbtool dep. It generated `/boot/dt.img` but the
device tree is different for each device using this kernel so it wasn't
useful.
2020-09-14 15:59:46 +02:00
Bart Ribbers 408aa2a0ee linux-postmarketos-qcom-msm8974: enable hid_apple module and fix GCC10 (MR 1536)
Fixes #741
2020-09-14 15:59:39 +02:00
antonialoytorrens e40ecc2fc2 asus-tf101: enable wifi (MR 1534)
[ci:skip-build]: already built successfully in CI
2020-09-14 14:21:50 +02:00
antonialoytorrens a96b1f87f9 linux-asus-tf101: fix module loading (MR 1534) 2020-09-14 14:21:18 +02:00
Antoine Fontaine 07aa7c7ffb main/postmarketos-ui-{gnome,phosh}: drop outdated gsettings override (MR 1566)
fixes https://gitlab.com/postmarketOS/pmaports/-/issues/775.
2020-09-14 11:20:25 +02:00
Miles Alan 5aff6dfaa4 Add sxmo/ as an expected directory for gitlab CI directory structure testcase (MR 1472) 2020-09-14 09:37:24 +02:00
Miles Alan 0cdb4b56a6 main/postmarketos-ui-sxmo: new aport (MR 1472)
(X11) Simple X Mobile: Mobile environment based on simple & suckless
software (best compatibility on pinephone)
2020-09-14 09:37:24 +02:00
Miles Alan de75d745dd sxmo/sxmo-xdm: new aport (MR 1472)
X Display Manager fork for Sxmo; starts with virtual keyboard and launches
Sxmo UI
2020-09-14 09:37:24 +02:00
Miles Alan e0f29c1f7c sxmo/sxmo-utils: new aport (MR 1472)
Utility scripts, programs, and configs that hold the Sxmo UI environment
together
2020-09-14 09:37:24 +02:00
Miles Alan 4dd0a9102b sxmo/sxmo-svkbd: new aport (MR 1472)
Svkbd fork for Sxmo UI; supports mobile-optimized layout, Xft, SIGTERM,
multiple layers functionality
2020-09-14 09:37:24 +02:00
Miles Alan 26548ab7b4 sxmo/sxmo-surf: new aport (MR 1472)
Surf fork for Sxmo UI; supports externalpipe, keyword searching, non-JS
by default
2020-09-14 09:37:23 +02:00
Miles Alan 8646eeb8a2 sxmo/sxmo-st: new aport (MR 1472)
St fork for Sxmo UI; supports scrollback, invert, and other patches
2020-09-14 09:37:23 +02:00
Miles Alan 71a51f20d5 sxmo/sxmo-dwm: new aport (MR 1472)
Dwm fork for Sxmo UI; supports volume-key hotkeys, swallow, keyboard,
among other patches
2020-09-14 09:37:23 +02:00
Miles Alan 41aeb5c960 sxmo/sxmo-dmenu: new aport (MR 1472)
Dmenu fork for Sxmo UI; supports highlight, centering, volume-key
navigation and more
2020-09-14 09:37:19 +02:00
Ralf Rachinger 583d433d85 device/device-pine64-pinephone: swaps L/R at Headset (MR 1556)
This Patch is needed, because in the kernel the audio from the cpu to the headset gets turned around. We need to turn this around again.
Please revert this if there is a fixed kernel.
2020-09-13 15:00:20 -07:00
Rohan Mishra f6b004f3f5 sony-tulip: fix missing new line in deviceinfo (MR 1511) 2020-09-12 14:32:56 +02:00
Oliver Smith 28c64079db kde/*: add qmlplugindump workaround (MR 1570)
[ci:skip-vercheck]: should not affect the resulting binary package
[ci:ignore-count]
2020-09-11 17:14:12 +02:00
Oliver Smith 29c0a58858 temp/kitinerary: fork temproarily from Alpine
Fork it, so kde/itinerary package can build for armv7 and unblock bpo.

>>> itinerary: Analyzing dependencies...
ERROR: unsatisfiable constraints:
  so:libpoppler.so.101 (missing):
    required by: kitinerary-20.08.1-r0[so:libpoppler.so.101]
2020-09-11 17:14:12 +02:00
Antoine Fontaine 3eee9b8460 linux-fairphone-fp1: make pmb kconfig edit work (MR 1565)
[ci:skip-build]: already built successfully in CI
2020-09-11 16:10:42 +02:00
Oliver Smith caf226cd33 cross/crossdirect: translate cc to gcc (MR 1545)
Fix errors when trying to compile with "cc":
	ccache: error: Could not find compiler "aarch64-alpine-linux-musl-cc" in PATH
2020-09-11 13:27:08 +02:00
Oliver Smith a5ec53f157 cross/crossdirect: add more comments and license (MR 1545)
Make it easier to wrap one's head around the code and make the license
explicit. It was implicit already by the LICENSE file of this repository.
2020-09-11 13:27:08 +02:00
Oliver Smith 816616c9de CI: rename stages "first, second" to "lint, build" (MR 802)
Make it more descriptive and match Alpine's gitlab-ci.yml.
2020-09-10 22:22:57 -07:00
Oliver SmithandBart Ribbers e5b8b8631f CI: build packages on all arches (MR 802)
Split the aports-build job into arch-specific build-x86_64,
build-aarch64, ... jobs. Extend build_changed_aports.py to accept the
architecture as argument, and to build all packages for that arch where
possible.

Import and use pmbootstrap code for APKBUILD parsing etc, as we do this
already in various testcases running in this repository.

Co-Authored-By: Bart Ribbers <bribbers@disroot.org>
2020-09-10 22:22:57 -07:00
Oliver Smith a5b75f3072 CI: remove unused common.check_build() (MR 802)
The function is also present in build_changed_aports.py, and it is only
used there.
2020-09-10 22:22:55 -07:00
Oliver Smith 67c0e167d2 CI: add_pmbootstrap_to_import_path: add import (MR 802)
Fix error on my machine:
	AttributeError: module 'importlib' has no attribute 'util'
2020-09-10 22:22:47 -07:00
Bart Ribbers 4a9b92b4fa kde/qmlkonsole: upgrade to 0_git20200827 (MR 1543) 2020-09-10 22:11:53 -07:00
Bart Ribbers 588bf0578b kde/kclock: upgrade to 0_git20200905 (MR 1548) 2020-09-10 22:10:29 -07:00
Bart Ribbers 179b48e7f8 kde/plasma-settings: upgrade to 0_git20200829 (MR 1540) 2020-09-10 22:07:33 -07:00
Bart Ribbers 24643fd72b kde/plasma-dialer: upgrade to 0.1_git20200829 (MR 1541) 2020-09-10 22:07:00 -07:00
Bart Ribbers 6a2b0e52d1 kde/plasma-camera: upgrade to 1.0_git20200901 (MR 1542) 2020-09-10 22:05:45 -07:00
Clayton Craft 0e365f7218 temp/u-boot-librem5: upgrade to 0.7 (MR 1561)
This upgrades u-boot to the latest upstream Purism version, and uses the
latest DDR training firmware.
APKBUILD was reformatted to replace indentation with tabs.
2020-09-10 08:31:06 +00:00
Clayton Craft e1971ae14f main/pure-maps: change default map and router providers (MR 1559)
The defaults from upstream require API keys to work, these don't.
2020-09-10 00:36:05 -07:00
Bart Ribbers 3b58b14d44 main/pure-maps: upgrade to 1.29.0 (MR 1559) 2020-09-10 00:35:43 -07:00
Bart Ribbers 05fcf1c61e main/mapbox-gl-qml: upgrade to 1.7.5 (MR 1559) 2020-09-10 00:35:27 -07:00
Bart Ribbers 290ec69459 main/libsignon-glib: modernize (MR 1538)
[ci:skip-build]: already built successfully in CI
2020-09-08 13:23:45 +02:00
Bart Ribbers 4df6ae2017 main/kmscube: modernize (MR 1538) 2020-09-08 10:09:07 +02:00
Bart Ribbers 3609074ced main/postmarketos-welcome-gtk3: modernize (MR 1538) 2020-09-08 10:09:07 +02:00
Bart Ribbers cca7e7684b temp/wys-pinephone: modernize (MR 1538) 2020-09-08 10:09:07 +02:00
Bart Ribbers ff0929c925 asus-me176: modernize APKBUILD (MR 1538) 2020-09-08 10:09:07 +02:00
Luca Weiss 3720293639 pine64-pinephone: add anx7688 module to initramfs for usb keyboards (MR 1555)
The anx7688 module is needed for any USB devices to probe which we want
in the initramfs for unlocking osk-sdl using a USB-connected keyboard.
2020-09-07 21:19:59 +02:00
antonialoytorrens c2ef92ab86 asus-tf101: change arch from armhf to armv7 (MR 1506)
[ci:skip-build]: already built successfully in CI
[ci:skip-vercheck]: arch change
2020-09-07 18:57:03 +02:00
Linus Walleij eb8a6b0cd0 device-nokia-n900: Add Finnish/Swedish keymap (MR 1519)
This adds a Finnish/Swedish key map for the Nokia n900.
The same keymap is used for Finnish and Swedish.

This makes the keyboard work in the console. To fix the
XkbLayout other changes are needed to pmbootstrap.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2020-09-07 18:24:07 +02:00
Oliver Smith cca64d3c29 kde/kclock: disable qmlplugindump for armv7 (MR 1554)
qmlplugindump is failing when it runs with qemu user mode emulation for
armv7 on builds.sr.ht. Disable it to unblock our binary repository.

The information retrieved by qmlplugindump is purely for packager
knowledge and does not affect the runtime of kclock.

Related: MR 9
Fixes: build.postmarketos.org#74
2020-09-07 16:28:53 +02:00
Bart Ribbers 9ffb48bc4e kde/plasma-camera: re-enable on x86 (MR 1553)
[ci:skip-vercheck] arch changes don't need a pkgrel bump
2020-09-07 13:51:31 +02:00
EspiDev 16adb0f0d4 kde/kclock: fix package url (MR 1550) 2020-09-06 00:01:06 +02:00
Clayton Craft f24a6e3e4c cross/gcc-*: upgrade to 10.2.0-r5
The changes here reflect those made in the upstream Alpine Linux
gcc-10.2.0-r5 package.
2020-09-05 13:43:11 -07:00
Bart Ribbers 46fdc2c437 temp/plasma-phone-components: upgrade to 5.19.5_git20200728
Make sure our package is a higher version than the one in Alpine
2020-09-05 21:50:10 +02:00
Bart Ribbers 8cbd8e3957 temp/plasma-nano: upgrade to 5.19.5_git20200728
Make sure our package is a higher version than the one in Alpine
2020-09-05 21:49:56 +02:00
Oliver Smith 8e65dae0ff cross/gcc-*: upgrade to 10.2.0-r3 2020-09-04 21:21:59 +02:00
David Heidelberg b4eb58582a device/testing/device-asus-grouper: add kernel variants (MR 1532)
- E1565 is original "grouper" and it's for modern devices similar to
tilapia
- PM269 is earlier produced Nexuses with different PMIC (not very often
seen)

Closes: https://gitlab.com/postmarketOS/pmaports/-/issues/647
2020-09-04 16:22:26 +02:00
Oliver Smith 8819a3eb0f cross/musl-*: upgrade to 1.2.1-r1 2020-09-04 12:51:41 +02:00
Bart Ribbers 9835084f5a temp/u-boot-pinephone: set RAM block back to 552 (MR 1527)
We were using a frequency of 624 which froze my device and in the past
other units too. Set it back to 552 as before so this doesn't happen
anymore

This is being upstreamed, https://gitlab.com/pine64-org/u-boot/-/merge_requests/3

(cherry picked from commit 88b48dee152686a887809ddb296cfd96e0c89f55)
2020-09-03 01:48:09 -07:00
David Heidelberg bdd0cb7bb3 device/testing/device-asus-tilapia: set new upstream DTS name (MR 1528)
Signed-off-by: David Heidelberg <david@ixit.cz>
2020-09-02 15:41:47 +02:00
David Heidelberg fa6c1b12bb device/testing/device-asus-grouper: set new upstream DTS name (MR 1528)
Signed-off-by: David Heidelberg <david@ixit.cz>
2020-09-02 15:41:47 +02:00
David Heidelberg 2b1d50eab5 device/testing/linux-asus-grouper: bump kernel to 5.9 (MR 1528)
Signed-off-by: David Heidelberg <david@ixit.cz>
2020-09-02 14:35:05 +02:00
Martijn Braam 1039f705fb main/linux-postmarketos-allwinner: hotfix for hdmi output (MR 1524)
Sloppy patch that makes the displayport alt-mode output signal work on
the PinePhone convergence edition. Proper fix is in the 5.8 tree

[ci:skip-build]: Martijn made sure that it builds and works. This is
		 time critical, so skip the CI build.
2020-09-01 16:59:48 +02:00
Luca Weiss ee5ae81e2a main/msm-fb-refresher: modernize openrc service (MR 1482) 2020-09-01 14:01:08 +02:00
Oliver Smith 5056fcb576 main/mobile-config-firefox: set maintainer 2020-08-31 10:55:20 +02:00
Rian McGuire ac6de72a97 linux-xiaomi-tissot: Fix build on gcc 10 (MR 1502) 2020-08-30 18:48:30 +02:00
Rian McGuire 7ca3d64721 linux-xiaomi-tissot: Re-add Xorg support (MR 1502)
This fix for Xorg was lost during the 4.9.188 upgrade (!1485).
2020-08-30 18:48:30 +02:00
Antoine Fontaine 9aa203fa0d kde/kpeoplesink: rebuild (MR 1510)
The package depends on so:libkaccounts.so.1 on armv7, which is
incorrect. This makes the plasma mobile installation fail on armv7.
2020-08-30 18:42:43 +02:00
Oliver Smith 838d5609ca main/mobile-config-firefox: add pkgver to provides (MR 1507)
Fix mobile-config-firefox not replacing postmarketos-config-firefox on
upgrade. Without the pkgver in provides, apk only considers
mobile-config-firefox as virtual package name, not as replacement.

Verified with the CE factory image:

	$ sudo apk upgrade
	...
	(20/29) Purging postmarketos-config-firefox (1-r0)
	(21/29) Installing mobile-config-firefox (1.0.1-r1)
	...
2020-08-28 12:30:41 +02:00
Oliver Smith 71355c6f13 main/postmarketos-ui-plasma-mobile: disable x86 (MR 1508)
postmarketos-ui-plasma-mobile has plasma-camera in _pmb_recommends.
plasma-camera does not build for x86, because mpg123-libs-1.26.3-r0 is
still broken in Alpine edge repos (aports#11807).

Disable postmarketos-ui-plasma-mobile for x86 again, so the CI check
test_aports_ui doesn't fail anymore with:
postmarketos-ui-plasma-mobile/APKBUILD: package 'plasma-camera' from _pmb_recommends not found for arch 'x86'

[ci:skip-vercheck]: only modifying arches
[ci:skip-build]: unfortunately, postmarketos-ui-plasma-mobile fails to
build for x86_64 too due to broken libdv in Alpine (aports#11892).

I'll create MRs to Alpine to fix the broken depends, so we should be
able to enable it again soon.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
Related: https://gitlab.alpinelinux.org/alpine/aports/-/issues/11892
2020-08-28 12:28:06 +02:00
Oliver Smith e70439cc37 Revert "kde/kpeoplesink: disable x86" (MR 1508)
kaccounts-integration-dev is available for x86 again in Alpine edge.
This reverts commit dc44aed3de.
[ci:skip-vercheck]: only changing arch var

This should fix test_aports_ui failure:
main/postmarketos-ui-plasma-mobile/APKBUILD: package 'kpeoplesink' from _pmb_recommends not found for arch 'x86'
2020-08-28 12:28:05 +02:00
Oliver Smith cedd5331e5 CI: test_aports_ui: don't take arches from binary (MR 1508)
Verify _pmb_recommends for architectures listed in the APKBUILD of
postmarketos-ui-* packages, not from their binary packages. Otherwise
disabling an architecture in a merge request will not be respected, as
the binary package still has the arch enabled.
2020-08-28 12:28:05 +02:00
Bart Ribbers ae3ea00c88 main/postmarketos-ondev: re-enable on armv7 and x86
Originally disabled because of https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
but the plasma-pa is available again
2020-08-25 21:19:43 +02:00
Bart Ribbers a7e9ba6f2c main/postmarketos-ui-plasma-mobile: re-enable on armv7 and x86
Originally disabled because of https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
but the plasma-pa is available again
2020-08-25 21:19:39 +02:00
Bart Ribbers 43ed230a3e temp/plasma-phone-components: re-enable on armv7 and x86
Originally disabled because of https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
but the plasma-pa is available again
2020-08-25 21:18:32 +02:00
Oliver Smith 862f56a020 cross/busybox-static-*: upgrade to 1.32.0-r3 2020-08-25 15:06:11 +02:00
Oliver Smith d425719887 cross/gcc-*: upgrade to 10.2.0-r2 2020-08-24 13:16:49 +02:00
Bart Ribbers aced152afc main/postmarketos-base: depend on dnsmasq (MR 1438)
dnsmasq is required by NetworkManager for WiFi Hotspot to work.
2020-08-23 12:31:22 +02:00
Bart Ribbers 7b58ed7fce main/postmarketos-base: stop the power key from shutting down devices (MR 1499)
Pressing power button should not power off a device. Although it is
expected on desktops and laptops, it isn't expected on phones and
tablets. Instead it should just turn off the screen or go into a deep
sleep, but that isn't handled by elogind. So let elogind just ignore the
button altogether.

Also re-order the dependencies alphabetically while we're touching the
package anyway
2020-08-22 22:41:41 +02:00
Luca Weiss cafeecb043 linux-fly-iq4404: don't add mtk header to zImage (MR 1483)
This is now handled by postmarketos-mkinitfs. Remove the code from the
APKBUILD.
2020-08-22 10:39:28 +02:00
Luca Weiss 0511b83771 fairphone-fp1: modernize (MR 1483)
This also removes the code to add the mediatek header to the zImage as
this is now handled by postmarketos-mkinitfs.
2020-08-22 10:39:22 +02:00
Luca Weiss 37e43bcaac main/postmarketos-mkinitfs: add mediatek header in mkinitfs (MR 1483)
Previously we added the header in the kernel packages but as we already
add the ramdisk header here and to simplify the process we also add the
addition of the kernel header into mkinitfs.
2020-08-22 10:38:53 +02:00
Danct12 5a29944d10 temp/u-boot-pinephone: switch to pine64-org/u-boot (MR 1495)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-08-22 10:34:04 +02:00
Ultracoolguy f7ce83577b motorola-ocean: new device (Motorola Moto G7 Power) (MR 1470)
As of now only USB networking and screen (partially) works.
2020-08-21 15:54:16 +02:00
Oliver Smith c9987d2e30 main/mobile-config-firefox: upgrade to 1.0.1 (MR 1501) 2020-08-21 13:00:32 +02:00
Oliver Smith c9d1d5e53b cross/gcc-*: upgrade to 10.2.0-r1 2020-08-21 12:45:50 +02:00
Oliver Smith ffec01ac09 main/postmarketos-android-recovery-installer: upgrade to 1.0.2 (MR 1494)
Changes: https://gitlab.com/postmarketOS/postmarketos-android-recovery-installer/-/tags/1.0.2
2020-08-20 23:00:28 +02:00
Dahrkael aef4ae08a5 vernee-k506: add nonfree firmware package (MR 1456) 2020-08-20 22:11:54 +02:00
Dahrkael 872fc74aee linux-vernee-k506: adjust hardcoded firmware paths (MR 1456) 2020-08-20 22:11:12 +02:00
Bart Ribbers 03abf416e6 temp/kitinerary: drop
The aarch64 builder upstream has catched up and it's available in the
repositories again
2020-08-20 12:36:02 +02:00
Danct12 da565bb838 community/firmware-analogix: add new firmware (MR 1421)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-08-19 15:57:25 +02:00
Oliver Smith 1e08e99d69 temp/kitinerary: fork from Alpine
Alpine's aarch64 builder is stuck and did not build 20.04.3-r1 yet. This
causes kde/itinerary from pmaports.git to fail:
https://builds.sr.ht/~postmarketos/job/282427#task-pmbootstrap_build-415

I've verified that this package builds for aarch64 with pmbootstrap, and
disabled other architectures.
2020-08-18 15:09:24 +02:00
Danct12 11c6587dca device/*: switch to Alpine Mesa (MR 1496)
[ci:ignore-count]

Signed-off-by: Danct12 <danct12@disroot.org>
2020-08-18 14:53:31 +07:00
Danct12 fa2d7a8b3a temp/mesa-git: drop (MR 1496)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-08-18 14:44:03 +07:00
Luca Weiss 0c5a3ce1f3 kde/itinerary: upgrade to 0_git20200401 (MR 1452) 2020-08-18 09:20:21 +02:00
Luca Weiss 54d7c20280 kde/ktrip: upgrade to 0_git20200713 (MR 1452) 2020-08-18 09:20:21 +02:00
Luca Weiss 324ecad8cc kde/kpublictransport: upgrade to 0_git20200725 (MR 1452) 2020-08-18 09:20:21 +02:00
Oliver Smith 35a619fa01 cross/busybox-static-*: upgrade to 1.32.0-r2 2020-08-18 08:50:19 +02:00
atipls 34f8efd1bc samsung-gtelwifi: new device (MR 1355)
This patch adds basic support for the Samsung Galaxy Tab E 9.6" (SM-T560).
Current status: Kernel builds successfully, flashing boot.img works along with ssh.
2020-08-16 00:28:19 +02:00
Dolphin von Chips 178558cb3d CI: allow running testcases with pmbootstrap from pip (MR 1467) 2020-08-15 20:39:29 +02:00
Dolphin von Chips 2bfb1417f7 CI: check if packages in _pmb_recommends exist (MR 1467) 2020-08-15 20:39:24 +02:00
Oliver Smith af2f2e23a4 main/postmarketos-ui-plasma-mobile: update _pmb_recommends (MR 1492)
[ci:skip-vercheck]: _pmb_recommends change doesn't need pkgrel bump
2020-08-15 18:42:00 +02:00
Oliver Smith fef3af0d75 main/postmarketos-ui-phosh: no scaling for firefox (MR 1492)
With the new mobile-config-firefox, the window width is small enough
that the window does not need to be scaled. This looks better overall,
and avoids scaling glitches.
2020-08-15 18:42:00 +02:00
Oliver Smith 4024d9a770 main/postmarketos-ui-phosh: update _pmb_recommends (MR 1492) 2020-08-15 18:42:00 +02:00
Oliver Smith 56b9ddc27e main/{postmarketos => mobile}-config-firefox: replace (MR 1492)
New version does not just support Firefox 68 (firefox-esr in Alpine 3.12),
which is going to be EOL soon. It also supports the new ESR 78
(firefox-esr in Alpine edge, soon also in 3.12, supported until ~2021-04)
and 79 (current stable "rapid release" version; firefox in Alpine edge).

The source was moved to a dedicated git repo, so other distributions can
also use it. Keep the distro-specific links here in a separate HTML
file, so they can be modified without changing
mobile-config-firefox.git.

Related: https://gitlab.com/postmarketOS/mobile-config-firefox
2020-08-15 18:41:56 +02:00
Caleb Connolly d84e4b4ade device/testing/linux-oneplus-sdm845: upgrade to 5.8-rc6 (MR 1425)
Update to Linux 5.8 and bring some nice improvements:

* Use geni for touch instead of CPU driven bitbang, this gives
noticeable performance gains in phosh when scrolling.
* Enable bluetooth (using firmware in updated firmware package), was
able to test bluetooth audio with bluetoothctl but phosh UI shows no
Bluetooth adapter.
* Add testing battery node using bq27541, battery always reported being
plugged in and at 100%.
* Fix UFS error spam due to a bug where writeboost is enabled for all
qcom devices - even though it isn't supported.
* Add quirk to wifi device to fix host capability request rather than
the dodgy driver edit that was used before.
* Minimise .config size to improve build times.
* Make schedutil the default governer
* Fix power button
2020-08-13 12:26:51 +02:00
Caleb Connolly 167c6841fa device/testing/firmware-oneplus-sdm845: add missing firmware (MR 1425)
Add bluetooth firmware and .jsn files needed by pd-mapper.
Add adsp/cdsp firmware as the linux-firmware versions fail to load now.
2020-08-13 12:26:51 +02:00
Bart Ribbers 0420b71043 main/heimdall: drop, upstreamed to Alpine 2020-08-13 12:20:24 +02:00
Bart Ribbers be3f1e3b9b kde/qrca: re-enable and upgrade to 0_git20200803 (MR 1478) 2020-08-12 15:47:23 +02:00
Richard Qian 0f21dcaa74 linux-postmarketos-grate: upgrade to latest git version, enable module stripping (MR 1493)
Also remove unnecessary drivers, and add support for more USB Wi-Fi adapters
2020-08-12 12:57:48 +02:00
Wiktor Tkaczyński 582a2237e2 linux-xiaomi-tissot: upgrade to 4.9.188 (MR 1485) 2020-08-11 17:13:28 +02:00
Oliver Smith 372f1f8add main/osk-sdl: upgrade to 0.57 (MR 1486)
Also add myself as maintainer, since I've been reviewing quite a few
osk-sdl MRs lately, tagging new versions and upgrading this pmaport.

Related: https://gitlab.com/postmarketOS/osk-sdl/-/tags/0.57
2020-08-11 17:08:40 +02:00
Clayton Craft aaddd13d23 linux-purism-librem5: upgrade to 5.8.0+librem5.1 (MR 1489)
Upstream changelog:
https://source.puri.sm/Librem5/linux-next/-/commit/457325eb59d8feefb49661c92fc517b2b5abc9d6
2020-08-11 17:06:46 +02:00
Oliver Smith ad113c487e acer-picasso: fix deviceinfo
Remove _downstream, _mainline in deviceinfo as there is only the
mainline kernel now. Fixup taken from a comment by Richard Qian in the
initial device port merge request. I've verified that the device package
builds. [ci:skip-build]

Fixes: 949effc0 ("acer-picasso: new device (Acer Iconia Tab A500) (MR 1308)")
2020-08-11 11:05:59 +02:00
Martijn Braam 87a009a9b8 main/postmarketos-mkinitfs: fix error on missing dtb (MR 1491) 2020-08-11 10:52:14 +02:00
Richard Qian 949effc0ed acer-picasso: new device (Acer Iconia Tab A500) (MR 1308)
Everything is working well, but the camera the 3D acceleration are not.
These two are due to the lack of drivers in mainline kernel.
2020-08-10 19:30:16 -05:00
Oliver Smith dbf4d13907 treewide: avoid "More than one maintainer" error (MR 1480)
Alpine's abuild is soon going to complain if an APKBUILD has more than
one "Maintainer:" listed. Work around it by renaming the additional
maintainers to "Co-Maintainer:". While at it, move the devicepkg reference
link to the top in device-xiaomi-santoni for consistency.

In postmarketOS, we require at least two maintainers for devices in
main, therefore it does not make sense to drop additional maintainers
from the file.

In Alpine, this change was made because pkgs.alpinelinux.org apparently
can't handle more than one maintainer. I looked into it, and it would
require a database change to add it there, so it does not seem worth the
effort. I also thought about extending abuild to add an environment
variable to skip the check, but then the package would not build with
plain abuild without using the env var.

Related: https://gitlab.alpinelinux.org/alpine/abuild/-/commit/dd4cd9d606f5e28f382414e258af562e346c6ab5
[ci:skip-build] [ci:skip-vercheck]
2020-08-08 22:07:20 +02:00
Bart Ribbers c00425cedf temp/plasma-phone-components: upgrade to 5.19.4_git20200728 (MR 1459) 2020-08-06 16:15:25 +02:00
Bart Ribbers f709e0a250 temp/plasma-nano: upgrade to 5.19.4_git20200728 (MR 1459) 2020-08-06 16:15:05 +02:00
Oliver Smith 603eb7d406 cross/musl-*: upgrade to 1.2.1-r0 2020-08-05 10:58:44 +02:00
Luca Weiss 489651bc90 fairphone-fp2: add phosh config (MR 1479) 2020-08-04 15:53:26 +02:00
Bart Ribbers 15acd86d60 pine64-pinephone: enable VoLTE (MR 1434)
Also fix configuring device sleep wakeup when modem receives a call
2020-08-04 12:19:36 +02:00
Minecrell ef433965c5 main/linux-postmarketos-stericsson: upgrade to 5.8 (MR 1475)
- Update to Linux 5.8
- samsung-skomer:
  - Fix accelerometer mount-matrix
  - Fix some potential display issue(s)
  - Enable touchscreen driver in kernel config

[ci:skip-build]: already built successfully in CI
2020-08-03 15:53:38 +02:00
Minecrell 5bc854a2a4 samsung-skomer: remove _mainline suffix from deviceinfo (MR 1475)
samsung-skomer only has mainline packaged and no "-kernel-mainline"
subpackage, so the suffix does not work in this case.
2020-08-03 15:53:14 +02:00
Clayton Craft 5b603d94c7 linux-purism-librem5: upgrade to 5.7.12+librem5.1 (MR 1474)
Upstream changelog:
https://source.puri.sm/Librem5/linux-next/-/commit/7a614767bdae80662cf1a52092f2ecb5ddde932e
2020-08-03 12:26:46 +02:00
Oliver Smith 9e78998072 temp/calamares: add !check
The "shellprocesstest" is failing when building for armv7 on sr.ht. I
was not able to reproduce it locally. Just disable all tests for now.
It would be better to just disable the failing test, but since I can't
reproduce it locally I can't say that the build will go through then.
This package is in temp/, so let's not waste much time here. !check can
be removed when upstreaming it to Alpine.
[ci:skip-vercheck] [ci:skip-build]
2020-08-03 12:25:42 +02:00
Oliver Smith dc44aed3de kde/kpeoplesink: disable x86
Missing binary package: kaccounts-integration-dev
[ci:skip-build][ci:skip-vercheck]

Related: https://builds.sr.ht/~postmarketos/job/271701#task-pmbootstrap_build-48
2020-08-03 12:16:58 +02:00
Oliver Smith 09e7d6cbf5 main/postmarketos-ui-plasma-desktop: !x86,!armv7
Missing "plasma" binary package in Alpine edge.

Related: https://builds.sr.ht/~postmarketos/job/271060#task-pmbootstrap_build-48
Related: https://builds.sr.ht/~postmarketos/job/271039#task-pmbootstrap_build-48
2020-08-03 12:16:58 +02:00
Oliver Smith e3fa88e244 main/postmarketos-ui-sway: disable x86 2020-08-03 12:16:58 +02:00
Oliver Smith 256e2b853d main/postmarketos-ui-phosh: disable x86 2020-08-03 12:16:58 +02:00
Oliver Smith 06b0ece8af main/postmarketos-ui-kodi: disable x86 2020-08-03 12:16:58 +02:00
Oliver Smith 97e5a3a7d2 temp/plasma-phone-components: disable for armv7, x86
Missing plasma-pa, plasma-workspace packages in Alpine edge for these
architectures.
2020-08-03 12:16:58 +02:00
Oliver Smith 5fc66d575a kde/plasma-camera: disable x86
Dependency mpg123-libs-1.26.3-r0 is currently broken in Alpine edge for
x86. Disable the UI package too, as it depends on plasma-camera.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
2020-08-03 12:16:53 +02:00
Oliver Smith 2919f372ac kde/qrca: remove temporarily
Doesn't build against latest zxing-cpp-dev. Remove for now, so bpo is
not blocked.

/usr/include/ZXing/Pattern.h:230:68: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  230 |  return FindLeftGuard<LEN>(view, minSize, [&pattern, minQuiteZone](auto window, int spaceInPixel) {
      |                                                                    ^~~~

Related: https://builds.sr.ht/~postmarketos/job/271644#task-pmbootstrap_build-716
2020-08-03 11:11:47 +02:00
Oliver Smith fbe8b2162a kde/qrca: pkgrel bump
Increase 'qrca' pkgrel (0 -> 1), missing depend(s): so:libZXingCore.so.1

Will likely need to be bumped again soon; right now only Alpine edge
x86_64 has the new .so file - the other arches still need to build it.
[ci:skip-build]
2020-08-03 10:16:42 +02:00
Oliver Smith 31735a6ae4 kde/kpeoplesink: bump pkgrel
Increase 'kpeoplesink' pkgrel (0 -> 1), missing depend(s): so:libkaccounts.so.1
2020-08-03 10:16:42 +02:00
Oliver Smith 42e335e9cd main/postmarketos-ui-sway: disable on armhf
The packages built against musl-1.2 did not get uploaded from the
builders. Disable for now.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/issues/11807
2020-08-03 10:16:42 +02:00
Oliver Smith e1a3324e5a hybris: remove
Libhybris is failing to build for armhf too. Instead of adding !armhf
everywhere, let's just remove it: as it became clear in #703, nobody is
willing to put in the effort to maintain this properly.

If you would like to continue with libhybris on postmarketOS, please
create your own aports repository and put the aports there.

Related: https://wiki.postmarketos.org/wiki/Hybris
Closes: #703, #700, #678
2020-08-03 10:16:10 +02:00
Oliver Smith 124f740af8 xiaomi-santoni: remove hybris 2020-08-03 10:11:34 +02:00
Oliver Smith 2455a3bb21 planet-geminipda: remove hybris 2020-08-03 10:11:29 +02:00
Mark Hargreaves df1e368e8c samsung-klte: disable downstream libhybris subpackages (MR 1469)
[ci:skip-build]: build in CI is currently failing with 'BAD signature'
errors; probably caused by outdated Alpine packages in the dl-cdn
mirror, related to the musl-1.2 rebuild in Alpine edge.
2020-08-03 09:23:05 +02:00
Bart Ribbers 8c59659937 temp/plasma-phone-components: upgrade to 5.19.4_git20200728
Note that this doesn't actually increase the version of the source
files, it's just a bump to be newer than the Alpine packages again
2020-08-02 18:44:55 +02:00
Bart Ribbers e65dec50cc temp/plasma-nano: upgrade to 5.19.4_git20200728
Note that this doesn't actually increase the version of the source
files, it's just a bump to be newer than the Alpine packages again
2020-08-02 18:44:07 +02:00
Danct12 76cade06e1 device-pine64-pinephone: make the proximity sensor usable within iio-sensor-proxy (MR 1416)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-07-31 18:03:12 +02:00
Amy Grace 72f7f69b2e motorola-channel: fix touchscreen (MR 1460) 2020-07-31 18:00:15 +02:00
Oliver Smith 273797a767 Revert "*/*: disable armv7 for plasma programs"
The circular dependency has been resolved, and the binary packages have
been pushed to Alpine#s repsitory. This reverts commit
35015139f3.
[ci:skip-build] [ci:skip-vercheck]

Related: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/10757
2020-07-30 18:04:25 +02:00
Oliver Smith 983bc8318b temp/mesa-git: apply more patches to build on 32-bit arm
Apply the rest of https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4279
to fix the build for real. I've verified that this builds for armv7 on
edge.
2020-07-30 12:55:01 +02:00
Luca Weiss fcb300ebc5 main/telephony-service: bump pkgrel (MR 1468)
The package has to be rebuilt due to a soname bump of libQt5Contacts
(.so.0 -> .so.5)

[ci:skip-build]: already built successfully
2020-07-30 11:51:54 +02:00
Luca Weiss e4d6385500 main/qt5-qtpim: upgrade to 0_git20190618 and fix up (MR 1468)
See the patch descriptions for more details. All patches will be
submitted upstream (patch 0001 has already been submitted more than half
a year ago but hasn't had any activity yet).
2020-07-30 11:51:20 +02:00
Antoine Fontaine 5aa6d12268 main/postmarketos-ui-plasma-desktop: fix dependency name (MR 1466) 2020-07-29 16:46:22 +02:00
Oliver Smith a48995c877 hybris: disable libhybris for armv7
It is getting stuck during compile, disable on armv7 for now and also
all packages that depend on it.

Related: https://builds.sr.ht/~postmarketos/job/267225#task-pmbootstrap_build-780
2020-07-29 15:32:53 +02:00
Oliver Smith cb22119c3d temp/mesa-git: apply patch to build on 32-bit arm
Taken from upstream. Our mesa-git is pretty outdated, we should update
it soon. But we need to unblock the repository first, so this is the
fastest way for now.
2020-07-29 13:30:10 +02:00
Oliver Smith 1915c4ecb3 cross/*: limit arches to x86_64 where makes sense
Run "pmbootstrap aportgen" on these packages with pmbootstrap!1965 and
pmbootstrap!1963 applied. [ci:skip-build], [ci:skip-vercheck]
2020-07-29 12:58:13 +02:00
Oliver Smith 08ce273d6f main/qtwebbrowser: disable armv7
qt5-qtwebengine is currently not available in Alpine edge.
[ci:skip-build], [ci:skip-vercheck]

Related: build.postmarketos.org#72
2020-07-29 12:22:17 +02:00
Oliver Smith 35015139f3 */*: disable armv7 for plasma programs
"plasma" and some related packages are currently missing in Alpine edge
armv7 due to a cyclic dependency. Let's disable all packages depending
on plasma for armv7 temporarily, to get the pmOS edge armv7 repo up
again.
[ci:skip-build], [ci:skip-vercheck]: only arch line changed

Related: build.postmarketos.org#72
2020-07-29 12:19:04 +02:00
Oliver Smith 203becec0b temp/evtest: fork from Alpine
Add patch to fix build for armv7, armhf. That patched version is being
upstreamed to Alpine. Fork it now, so our builds are not blocked.

Related: builds.postmarketos.org#72
2020-07-29 11:39:15 +02:00
Federico Amedeo Izzo 4a0b0e7b18 samsung-serranovelte: fix Phosh scaling (MR 1407)
[ci:skip-build]: already built successfully in CI
2020-07-28 15:34:03 +02:00
Federico Amedeo Izzo 57b59eafb6 samsung-a3ulte: Fix Phosh scaling, make ui elements bigger (MR 1407) 2020-07-28 15:33:08 +02:00
Danct12 0a99b6c27d linux-xiaomi-lavender: unbreak libinput (MR 1444)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-07-28 13:51:52 +02:00
Danct12 13b4e78338 console/*: drop
We already have fbkeyboard, which seems to look and works better
than this.

Signed-off-by: Danct12 <danct12@disroot.org>
2020-07-28 18:36:44 +07:00
Stefan Strogin 8b29dc4049 main/postmarketos-ui-phosh: fix desktop file name in mimeapps.list (MR 1457)
firefox.desktop -> org.mozilla.firefox.desktop.

NOTE by ollieparanoid: do not cherry-pick to v20.05, unless the file got
renamed in Alpine 3.12 as well!

Related: https://git.alpinelinux.org/aports/commit/community/firefox?id=2d291a4afc2c71e25c8fd9fff188eff436b80580
2020-07-28 13:13:27 +02:00
Oliver Smith 7f159956f4 cross/busybox-static-*: upgrade to 1.32.0-r1 2020-07-28 13:09:53 +02:00
Oliver Smith f1680651ea main/postmarketos-ui-phosh: open links in firefox (MR 1455)
Add mimeapps.list, so links clicked in postmarketos-welcome and other
applications properly open in firefox. Without this patch, they just
don't open at all.

Bump the pkgver instead of the pkgrel, so the APKBUILD is in sync again
on both master and v20.05 (right now, the pkgrel on v20.05 is ahead by
one, otherwise the file is the same).

Related: https://help.gnome.org/admin/system-admin-guide/stable/mime-types-application.html.en
2020-07-26 10:19:29 +02:00
Oliver Smith 9bc80e151f main/postmarketos-ui-phosh: no gnome-software first run dialog (MR 1453)
Disable the first run screen in GNOME software, which invites the user
to browse and install apps. We do not want people to use GNOME software to
do that when they open it for the first time in postmarketOS after
installing, we want them to do updates. So this dialog is misleading for
our users, and will lead to a bad experience for those who follow what
it suggests.

I think there's more wrong with that dialog (in context of postmarketOS),
more detailed reasoning and screenshot in:
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1449#note_385456592
2020-07-25 23:05:30 +02:00
Oliver Smith f6cdacfe53 main/postmarketos-hidden-desktop-entries: add FF-ESR safe mode (MR 1448)
Firefox ESR Safe Mode has another name for the .desktop file, hide it as
well.
2020-07-24 18:32:05 +02:00
Martijn Braam 81eb346b87 main/postmarketos-ui-plasma-mobile: add firefox config (MR 1445)
While at it, sort _pmb_recommends alphabetically.

[ci:skip-vercheck]: only _pmb_recommends changed
2020-07-24 17:25:10 +02:00
Martijn Braam 6279468f78 main/postmarketos-ui-phosh: add firefox config (MR 1445)
Replace firefox with firefox-esr, remove epiphany. With the current
version of epiphany, the postmarketOS wiki doesn't even load every time,
so that's not something we want to ship.
2020-07-24 17:24:34 +02:00
Oliver SmithandMartijn Braam 9b2a0a796d main/postmarketos-config-firefox: new aport (MR 1445)
Add policies.json and prefs.js to configure Firefox (yes, you need both
to be able to control all this):

Mobile improvements:
* Enable zooming with fingers
* Mobile user agent (from tor browser for android)

Privacy improvements:
* Disable search suggestions, so URLs do not get sent to search engines
  as they are getting typed.
* Disable Firefox studies
* Disable Telemetry
* Set DuckDuckGo as default search engine, not Google

Uncluttering (screen space, remove broken features, less distractions):
* Move all buttons to the overflow menu and remove spacers around the
  address bar
* Empty "new tab" page (loads faster, no annoying "top sites" etc.)
* Disable developer tools, so the hamburger menu fits the screen of the
  pinephone. These aren't really useful on phones anyway.
* Disable "Firefox Screenshots": the feature did not work with the mobile
  resolution in Phosh.
* No default bookmarks from Firefox
* Disable First Run Page
* Disable Post Update Page
* Disable "User Messaging" (What's new, Extension/Feature
  Recommendations, Urlbar Interventions)

Add a local html file that serves as lightweight default homepage. It
links to the postmarketOS blog and wiki, explains that this is desktop
firefox with mobile configuration and explains how to change settings
and install addons (with a direct link to ublock origin). Users can
override the homepage, new tab page, search engine, search suggestions
pre-configured by this package directly in the UI.

I chose Firefox ESR, because:
* It fits the screen better: the "new tab" button is bigger, the menu
  opening when you click the top-right button actually fits the screen,
  with all its submenus. There are zoom controls in the same menu, which
  make the preferences pages very usable.
* It's possible to override the default search engine with a policy
  file; that's not possible in non-ESR firefox (we'd probably need to
  change it in the sources).

Related: https://github.com/mozilla/policy-templates
Co-authored-by: Martijn Braam <martijn@brixit.nl>
2020-07-24 17:24:00 +02:00
Oliver Smith 24b7576bbb main/postmarketos-ui-{phosh,plasma-mobile}: hide desktop icons (MR 1437)
[ci:skip-vercheck]: _pmb_recommends changes don't need a rebuild
2020-07-24 13:58:49 +02:00
Oliver Smith 2cd60bfddf main/postmarketos-hidden-desktop-entries: new aport (MR 1437)
In phosh, we have broken Cheese (Camera) and Extensions (from GNOME shell)
icons in the launcher. They get dragged in via dependencies, so the
easiest way to disable them is just overruling the .desktop icon. We can
make Cheese visible again in a post-install script (just check if it
points to nodisplay.desktop and delete the link) once we have it working.

Hide icons for terminal programs (htop, nvim, vim) as well as "Firefox
Safe Mode" too. If somebody really wants to use the FF safe mode, they
can do so via terminal.

Have a simple initial version, maybe make it more sophisticated with
UI-specific hidden icons later (right now, it doesn't make sense to
install this in normal GNOME, because there you would need
org.gnome.Extensions). (There is "NotShowIn=phosh" (untested), but using
this would mean that we need to keep all the information of the original
desktop file for the UIs that will display them; we can't just use the
symlink trick. I'm not sure if we want that at all, but it's
definitively over-engineered for now.)
2020-07-24 13:57:55 +02:00
Dahrkael 33ab18c54b vernee-k506: new device (MR 1439) 2020-07-24 13:49:41 +02:00
Oliver Smith 8a3f6a5a46 main/postmarketos-ui-phosh: add first run screen (MR 1441)
[ci:skip-vercheck]: only modified _pmb_recommends
2020-07-24 13:41:51 +02:00
Oliver Smith 03abcef25b main/postmarketos-welcome-gtk3: upgrade to 0.2.0 (MR 1441)
Run automatically on first login, update text, put proper title and icon
in desktop launcher.
2020-07-24 13:41:51 +02:00
Clayton Craft 25f3534d9b linux-purism-librem5: upgrade to 5.7.9+librem5.1 (MR 1447)
Upstream changelog:
https://source.puri.sm/Librem5/linux-next/-/commit/70f4e814deda6c822420f1718d929592a10c00f7
2020-07-24 13:37:15 +02:00
Oliver Smith 3a8cddc219 cross/busybox-static-arm{hf,v7}: update checksums
The packages were rebuilt in Alpine, so update the checksums. Also
point to a deterministic mirror URL instead of CDN, so it won't randomly
fail depending on which (possibly outdated) mirror CDN gives.

Related: pmbootstrap!1963
2020-07-22 15:59:21 +02:00
Oliver Smith 4ccfe92e59 cross/musl-*: upgrade to 1.2.0
Related: https://postmarketos.org/blog/2020/07/21/breaking-update-in-edge/
2020-07-22 13:13:55 +02:00
Bart Ribbers aacc7ca8a4 main/postmarketos-ui-phosh: use xdg-user-dirs (MR 1432) 2020-07-22 11:58:04 +02:00
Bart Ribbers ad734ac4f9 main/postmarketos-ui-plasma-mobile: use xdg-user-dirs (MR 1432) 2020-07-22 11:58:00 +02:00
Oliver Smith bfa705b745 main/postmarketos-mkinitfs: fix device sed regex (MR 1436)
The p? is not redundant. Without it, the p in mmcblk0p2 for example does
not get cut off, meaning the resulting device is not "mmcblk0" but
"mmcblk0p". My bad, sorry for the breakage.

Fixes: 9f6600ba ("main/postmarketos-mkinitfs: rm pmOS_deleteme")
Fixes: 9d86f6fe ("main/postmarketos-mkinitfs: resize: unallocated space check, even if forced")
2020-07-22 09:18:10 +02:00
Oliver Smith 802add79d4 pine64-pinephone: use PMOS_FORCE_PARTITION_RESIZE (MR 1428)
Automatically resize the root partition, if it is followed by
unallocated space.
2020-07-21 22:53:03 +02:00
Oliver Smith 9f6600ba18 main/postmarketos-mkinitfs: rm pmOS_deleteme (MR 1428)
Remove the "pmOS_deleteme" partition left behind by the on-device
installer, if it exists. Let the existing resize_root_partition() extend
the root partition over the newly gained space (and rest of the storage
device) right afterwards.
2020-07-21 22:53:03 +02:00
Oliver Smith b55d95f3a9 main/postmarketos-mkinitfs: resize_root_partition: update comment (cosmetic) (MR 1428) 2020-07-21 22:53:02 +02:00
Oliver Smith 9d86f6fe92 main/postmarketos-mkinitfs: resize: unallocated space check, even if forced (MR 1428)
In resize_root_partition(), put the unallocated space check into an
extra function has_unallocated_space(). Run it even if
PMOS_FORCE_PARTITION_RESIZE is used, so we don't attempt to resize the
partition if there is no free space.

While at it, change "sed 's/p?2$//'" to "sed 's/2$//' in an already
modified line, because it means the same thing and is less confusing
(? in regex means: 0 or 1 time).
2020-07-21 22:53:02 +02:00
Nikita Travkin dea5488d93 samsung-a3lte: new device (Samsung Galaxy A3 - SM-A300F) (MR 1433)
SM-A300F is pretty much identical to SM-A300FU (note the U),
but it needs different firmware for some reason.
2020-07-21 21:31:54 +02:00
Ferenc Bakonyi 460c8de69d main/postmarketos-mkinitfs-hook-console-shell: Add support for rotated framebuffers (MR 1422) 2020-07-21 11:14:47 +02:00
Daniele Debernardi 8819a30f05 device-samsung-i927: install xf86-video-opentegra for x11 (MR 911) 2020-07-20 21:27:27 +02:00
Daniele Debernardi 2ce3dfed34 device-samsung-p4wifi: install xf86-video-opentegra for x11 (MR 911) 2020-07-20 21:27:27 +02:00
Daniele Debernardi 8a5f29913e device-ouya-ouya: install xf86-video-opentegra for x11 (MR 911) 2020-07-20 21:27:22 +02:00
Oliver Smith c19d5dfc26 pine64-pinephone: fix setup-modem.initd (MR 1427)
The OpenRC service failed with the following error, as shown on serial:
	command_background option used but no pidfile specified
2020-07-20 20:17:59 +02:00
Bart Ribbers f343c6b011 main/postmarketos-ui-xfce4: use _pmb_recommends (MR 1426) 2020-07-20 19:04:37 +02:00
Bart Ribbers c759f7168e main/postmarketos-ui-weston: use _pmb_recommends (MR 1426) 2020-07-20 19:04:37 +02:00
Bart Ribbers 56abe23715 main/postmarketos-ui-sway: use _pmb_recommends (MR 1426) 2020-07-20 19:04:37 +02:00
Bart Ribbers d9d439a9ff main/postmarketos-ui-plasma-mobile: use _pmb_recommends (MR 1426)
Also remove trojita as requested by Bhushan Shah
2020-07-20 19:04:37 +02:00
Bart Ribbers 83e97bd4fe main/postmarketos-ui-plasma-desktop: use _pmb_recommends (MR 1426) 2020-07-20 19:04:37 +02:00
Bart Ribbers dba56461f2 main/postmarketos-ui-phosh: use _pmb_recommends (MR 1426) 2020-07-20 19:04:37 +02:00
Minecrell aca8b8551e samsung-skomer: new device (Samsung Galaxy Xcover 2) (MR 1424)
Move kwin.sh to extra subpackage in samsung-golden.
2020-07-20 18:44:39 +02:00
Minecrell ab02b3416e firmware/firmware-samsung-u8500: rename from firmware-samsung-golden (MR 1424)
samsung-skomer basically uses the same BCM4334 WiFi/BT chip as
samsung-golden, and the WiFi/BT firmware is also the same.

There seems to be a slightly different NVRAM file, so we package
that just to do things properly.
2020-07-20 18:44:38 +02:00
Minecrell 911fd167a7 main/linux-postmarketos-stericsson: upgrade to 5.8-rc3 (MR 1424) 2020-07-20 18:44:38 +02:00
Oliver Smith 63226cf9b5 main/postmarketos-ondev: upgrade to 0.2.1 (MR 1423)
Most importantly, this makes the on-screen keyboard work reliably.

Related: https://gitlab.com/postmarketOS/postmarketos-ondev/-/tags/0.2.1
2020-07-20 16:27:45 +02:00
Oliver Smith 2a1fa1cf20 pmaports.cfg: require pmbootstrap 1.22.0
Require new version, which supports _pmb_recommends.

Related: pmbootstrap#1933
2020-07-20 14:56:49 +02:00
Luca Weiss 9a878ee7ee temp/u-boot-pinephone: apply patch for 3GB RAM support (MR 1420) 2020-07-18 21:59:13 +02:00
Martijn Braam 957dc9356a pine64-pinephone: add multiple dtbs (MR 1163) 2020-07-16 23:16:17 +02:00
Martijn Braam 2fb6d11f91 main/postmarketos-mkinitfs: allow multiple dtbs (MR 1163)
Allow setting multiple dtb filenames in the deviceinfo seperated
by spaces
2020-07-16 23:14:54 +02:00
Bart Ribbers dff419cf10 pine64-pinephone: setup modem to wake device (MR 1163) 2020-07-16 23:14:54 +02:00
Bart Ribbers a1aae9ff47 temp/u-boot-pinephone: add crust firmware (MR 1163) 2020-07-16 23:14:54 +02:00
Martijn Braam 5ac381fc46 main/crust: new aport (MR 1163) 2020-07-16 23:14:45 +02:00
Oliver Smith 2722f6cac5 main/postmarketos-ui-{gnome,phosh}: less revealing epiphany user-agent (MR 1402)
Make it less trivial to fingerprint users of the epiphany browser on
postmarketOS, by replacing the postmarketOS specific user-agent with an
user-agent from a current pixel device.

Old:
	Mozilla/5.0 (postmarketOS device, like iPhone; X11; Linux x86_64) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15 Epiphany/605.1.15

New:
	Mozilla/5.0 (Linux; Android 10; Pixel) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.96 Mobile Safari/537.36

Taken from the following page. Note that this seems to be one of the few
cases, where not a full android build ID is included. Which makes it a
bit harder to fingerprint. Not as good as the tor browser one, but with
that one we'd have to pretend that a webkit browser is firefox.

https://developers.whatismybrowser.com/useragents/explore/operating_platform/pixel/2

Related: https://blog.torproject.org/browser-fingerprinting-introduction-and-challenges-ahead
Related: https://developer.chrome.com/multidevice/user-agent
Related: https://webaim.org/blog/user-agent-string-history/
2020-07-15 13:35:33 +02:00
Oliver Smith 7381619a40 cross/gcc-*: upgrade to 9.3.0-r4 2020-07-14 18:06:49 +02:00
Bart Ribbers e3e4b01add main/postmarketos-ui-phosh: add gnome-contacts to depends (MR 1415) 2020-07-14 13:35:03 +02:00
Danct12 df50bddb6b linux-xiaomi-lavender: halium-friendly defconfig and USER_NS (MR 1411)
Signed-off-by: Danct12 <danct12@disroot.org>
(cherry picked from commit f509c39642341c7d4fb5d0d215a6cb581b4156d1)

[ci:skip-build] Takes too long. Builds fine locally
2020-07-12 19:37:05 +03:00
Alexey Min 5ece330273 linux-xiaomi-willow: enable CONFIG_USER_NS (MR 1411) 2020-07-12 19:34:44 +03:00
Alexey Min 01cf31e75d linux-xiaomi-vince: enable CONFIG_USER_NS (MR 1411) 2020-07-12 19:18:25 +03:00
Alexey Min 1bd981b9d0 linux-xiaomi-cactus: enable CONFIG_USER_NS (MR 1411) 2020-07-12 19:11:53 +03:00
Alexey Min 558b08b31d linux-xiaomi-beryllium: enable CONFIG_USER_NS (MR 1411) 2020-07-12 18:54:42 +03:00
Alexey Min d5af8012d1 linux-teclast-x80pro: enable CONFIG_USER_NS (MR 1411) 2020-07-12 18:43:58 +03:00
Alexey Min 450a23600a linux-sony-suzu: enable CONFIG_USER_NS (MR 1411) 2020-07-12 18:12:34 +03:00
Alexey Min 5e77369afc linux-sony-nicki-mainline: enable CONFIG_USER_NS (MR 1411) 2020-07-12 18:12:26 +03:00
Alexey Min cfff7eb23f linux-sony-castor-windy: enable CONFIG_USER_NS (MR 1411) 2020-07-12 18:00:53 +03:00
Alexey Min 1c897c1cdd linux-samsung-p4wifi: enable CONFIG_USER_NS (MR 1411) 2020-07-12 17:21:38 +03:00
Alexey Min 809fd0df5e linux-samsung-i927: enable CONFIG_USER_NS (MR 1411) 2020-07-12 17:16:35 +03:00
Alexey Min 9966992619 linux-ouya-ouya-mainline: enable CONFIG_USER_NS (MR 1411) 2020-07-12 17:04:00 +03:00
Alexey Min e12a6f3e8f linux-nokia-n9: enable CONFIG_USER_NS (MR 1411) 2020-07-12 16:40:50 +03:00
Alexey Min 4c227722ae linux-motorola-payton: enable CONFIG_USER_NS (MR 1411) 2020-07-12 15:55:43 +03:00
Alexey Min e3f8ed8467 linux-motorola-def: enable CONFIG_USER_NS (MR 1411) 2020-07-12 15:44:27 +03:00
Alexey Min 4e6585aa1e linux-motorola-channel: enable CONFIG_USER_NS (MR 1411) 2020-07-12 15:26:54 +03:00
Alexey Min a7ad522868 linux-huawei-cameron: enable CONFIG_USER_NS (MR 1411) 2020-07-12 15:02:09 +03:00
Alexey Min e0369cdbc7 linux-google-crosshatch: enable CONFIG_USER_NS (MR 1411) 2020-07-12 14:40:47 +03:00
Alexey Min bb6952f256 linux-essential-mata: enable CONFIG_USER_NS (MR 1411) 2020-07-12 14:26:28 +03:00
Alexey Min f609fa1a71 linux-amazon-mustang: enable CONFIG_USER_NS (MR 1411) 2020-07-12 14:13:37 +03:00
Ferenc Bakonyi 39b6a7e19c main/postmarketos-ui-fbkeyboard: support rotated fbcon, remove unneeded console resize (MR 1410) 2020-07-11 20:40:30 +03:00
PureTryOut 2f1fb6c371 main/postmarketos-ui-plasma-mobile: add dep on kaccounts-providers (MR 1376)
This way people can setup online accounts like NextCloud to sync contacts and such
2020-07-11 20:30:23 +03:00
Bart Ribbers 60f773dc4a kde/kpeoplesink: new aport (MR 1376) 2020-07-11 19:50:42 +03:00
Oliver Smith cb3f7f22ea main/postmarketos-welcome-gtk3: new aport (MR 1381)
Add a simple welcome screen app, that we should eventually display when
starting Phosh for the first time (needs to be done in a different
patch).
2020-07-11 19:45:17 +03:00
gompa 4b45d93ef7 firmware-lge-h815: new aport (MR 1404)
add new firmware package
change kernel wifi firmware location
2020-07-11 17:28:16 +02:00
Ferenc Bakonyi 49b18224bb main/fbkeyboard: upgrade to 0.4 (MR 1409) 2020-07-11 17:19:57 +02:00
Oliver Smith 7463d92293 device/*: clarify "close to mainline" (cosmetic) (MR 1408)
Make it clear, that these kernels are not mainline, but "close to
mainline".

[ci:skip-build] [ci:skip-vercheck]: just changing pkgdesc

Related: https://wiki.postmarketos.org/wiki/(Close_to)_Mainline
2020-07-11 16:06:16 +02:00
Oliver Smith 0cfcc52e0d */linux-*: enable CONFIG_CRYPTO_XTS (MR 1405)
Enable CONFIG_CRYPTO_XTS for each kernel, so we can switch to using
aes-xts-plain64 as default cipher for cryptsetup (override with
"pmbootstrap --cipher"), instead of aes-cbc-plain64 (pmbootstrap#1940).

I have executed "pmbootstrap kconfig edit" on each kernel, and manually
toggled the option. The diff is not always clean, because for some
kernels it is apparently the first time, that menuconfig was executed on
the configs like that. In a few instances, it turned out that
CONFIG_ANDROID_PARANOID_NETWORK needed to be disabled too (this is
already a requirement, but as the config was incomplete, it was not
visible that this option was enabled). Very few times, I had to enable
CONFIG_EXPERIMENTAL in order to see and enable CONFIG_CRYPTO_XTS.

It would be great if we could automate such mass kconfig edits in the
future, see pmbootstrap#1942.

[skip ci]: I have verified, that every single one of these kernels builds.
           CI will likely run out of time while downloading source tarballs.
2020-07-11 15:26:35 +02:00
Minecrell 2a8897b079 main/linux-postmarketos-qcom-msm8916: enable CONFIG_CRYPTO_XTS (MR 1405)
Seems like "pmbootstrap kconfig edit" causes unrelated kernel config
changes for some reason (probably because pmbootstrap does not install
a cross compiler for it). For now let's just edit the config manually
with the new options so everything else stays as-is.
2020-07-11 15:26:34 +02:00
Oliver Smith 3679e6018d samsung-i9100: fixup for linux prepare_isorec() (MR 1405)
Fixes: 10cbdc72 ("linux-samsung-i9100: modernize with new gcc8 linux aportgen code")
2020-07-11 15:26:34 +02:00
Oliver Smith 1bdafe5aa0 wiko-lenny2: use _outdir in linux pmaport (MR 1405) 2020-07-11 15:26:34 +02:00
Oliver Smith ca883ecf9d gp-peak: delete 'rm .config' in linux pmaport (MR 1405)
Remove it, to prevent the following error:
	rm: can't remove '.config': No such file or directory

This must have been necessary before, because the prepare script was
different, or abuild did something differently.
2020-07-11 15:26:34 +02:00
Oliver Smith e794dde79e gp-peak: use _outdir in linux pmaport (MR 1405) 2020-07-11 15:26:34 +02:00
Oliver Smith ae35afd208 asus-z00vd: use _outdir in linux pmaport (MR 1405)
Make it possible to find the kernel config with "pmbootstrap kconfig
edit". While at it, also remove redundant -C "$builddir" arguments for
make (since prepare is running in $builddir already).
2020-07-11 15:26:34 +02:00
Oliver Smith e62c87a4e8 oneplus-sdm845: adjust to linux source rename (MR 1405) 2020-07-11 15:26:29 +02:00
Martijn Braam 7743b4a25d pine64-pinephone: use wys-pinephone (MR 1406) 2020-07-11 12:12:23 +02:00
Martijn Braam c6afbf8942 temp/wys-pinephone: new aport (MR 1406) 2020-07-10 22:37:59 +02:00
Danct12 50aa62358b main/postmarketos-ui-plasma-mobile: combine extras package into a subpackage (MR 1006) 2020-07-09 09:19:42 +03:00
PureTryOut 6b1b89f271 main/mkbootimg-osm0sis: upgrade to 2020.05.18 (MR 1375) 2020-07-08 19:12:56 +03:00
Oliver Smith 204a56c095 CI: add distfile-check (MR 1388)
Verify that each distfile has the same hash in a directory full of APKBUILDs.

I've considered merging the new job with aports-static, but since there
are quite a few setup steps, it would make the .gitlab-ci.yml less
readable.

Related: https://gitlab.com/postmarketOS/ci-common/-/blob/master/distfile-check/README.md
2020-07-08 18:05:32 +02:00
Oliver Smith 76b3512a1c CI: aports-static: remove redundant apk add git (MR 1388)
install_pmbootstrap.sh is already installing git, and that line can be
used to install additional dependencies (as done currently with pytest).
2020-07-08 18:05:32 +02:00
Oliver Smith 784782f543 main/postmarketos-base: keep /etc/fstab (MR 1398)
Only add a comment, do not try to mount the root or boot partitions
anymore. The initramfs is doing this already.

Related: https://postmarketos.org/fstab
2020-07-08 18:02:49 +02:00
Oliver Smith 863ec713ba main/postmarketos-mkinitfs: mount /sysroot/boot (MR 1398)
Mount the boot partition at /sysroot/boot and keep it mounted, when
running the switch_root command. This way, OpenRC doesn't need to mount
it and possibly use the wrong partition. The OpenRC service does not use
the same logic to find the boot partition, in particular it does not
support the pmos_boot kernel parameter.

While at it, print the mountpoint and read-only/read-write arguments in
the mounting log message for both root and boot.

Fixes: #664
2020-07-08 18:02:49 +02:00
Oliver Smith 58ae4df2ef main/postmarketos-base: rm write_unless_modified (MR 1398)
Get rid of the "write_unless_modified" code, which was supposed to only
change /etc/fstab, /etc/issue, /etc/motd if the user did not modify it.

This is nice in theory, but we have a bug report where the code did not
do what it should (apk audit possibly failed due to a qemu bug?), and
then it lead to strange bugs related to not having the expected
/etc/fstab installed.

Fixes: #661, #258
2020-07-08 18:02:49 +02:00
Martijn Braam 4cff95a5bb main/linux-postmarketos-allwinner: upgrade to 5.7.0_git20200705 (MR 1397)
This adds panel stability patches and enables more resolutions on
the hdmi port of the A64.
2020-07-08 17:26:42 +02:00
Bart Ribbers 52072fa952 temp/plasma-phone-components: upgrade to 5.19.3_git20200626 2020-07-08 15:47:41 +02:00
Bart Ribbers 51b6a561a3 temp/plasma-nano: upgrade to 5.19.3_git20200705 2020-07-08 15:46:41 +02:00
Oliver Smith dfd81314b0 device/testing/firmware-google-glass: fix distfiles collision (MR 1399)
Add a $_commit prefix infront of each distfile, so bcmdhd.cal and
fw_bcmdhd.bin do not conflict with firmware-sony-sumire.
2020-07-08 05:27:50 +03:00
Dolphin von Chips f15f71c36f device/community/firmware-pine64-rtl8723bt: add missing "replaces=" (MR 1400)
Package got renamed and "provides" wasn't added, so right now
`apk upgrade -a` with firmware-rtl8723bt installed results in
`ERROR: firmware-pine64-rtl8723bt-0_git20181104-r0: trying to overwrite lib/firmware/rtl_bt/rtl8723bs_config-pine64.bin owned by firmware-rtl8723bt-0_git20181104-r0.`
Add `replaces="firmware-rtl8723bt"` so `apk` prefers this package.

[ci:skip-build]: already built successfully in CI
2020-07-07 20:23:37 +02:00
Oliver Smith 3e012e3714 CI: test_directory_structure: mention firmware mv (MR 1362)
Instead of encouraging the user to add the directory to
test_directory_structure.py, mention that we just moved the firmware to
device/{main,community,testing}/. This will be more helpful for users
who get the message after rebasing on master.

In the rare case that we need to change the directory structure, we will
figure out which file to edit.

[ci skip]: various firmware packages fail when built at the same time
           (they use generic source files like "bcmdhd.cal" with different checksums)
2020-07-07 16:06:02 +02:00
Minecrell c590ed74cf firmware/*: move rest of firmware packages to device/testing (MR 1362)
After moving the firmware packages used by devices in community to
device/community, move the rest of the firmware packages to device/testing.
2020-07-07 16:05:58 +02:00
Minecrell 4724b0f9c1 firmware/*: move community firmware packages to device/community (MR 1362)
Right now we have all firmware packages under firmware/*.
This is problematic for mainly two reasons:

  - It's not immediately clear which firmware packages we need to keep
    when forking a new stable branch. (Where we delete testing devices
    at the moment...) We might end up deleting firmware packages that
    are actually used by one of the devices in community.

  - When backporting devices to the stable we cannot just cherry-pick
    the commit that moved the device to community (since it does not
    contain the firmware package). Instead we need to cherry-pick
    earlier commits as well, which may touch a lot of deleted files
    in the testing directory.

Let's make this consistent by also placing the firmware packages in
the device/* directory. We already have the common firmware- prefix
to distinguish them from device/kernel packages, which are already
both under the device/* directory.
2020-07-07 15:48:57 +02:00
Minecrell 6a2cc8e3db firmware/firmware-asus-me176c*: fix linter warnings (MR 1362)
It's called !archcheck, not !checkarch, oops! :)
2020-07-07 15:48:57 +02:00
Minecrell 1eff900dcb firmware/firmware-pine64-rtl8723bt: add -pine64-, cleanup, install license (MR 1362)
For most firmware packages we use a vendor- prefix to make it clear
who has provided the firmware. The firmware-rtl8723bt package is only
used for Pine64 devices and actually contains configs that are specific
to Pine64 hardware (e.g. rtl8723bs_config-pine64.bin).

Let's rename it to firmware-pine64-rtl8723bt to make this more clear.
Also cleanup the APKBUILD a bit and provide the LICENSE file in a -doc
subpackage so we can legally redistribute that firmware.
2020-07-07 15:48:52 +02:00
Martijn Braam baa69a57f7 main/postmarketos-ui-phosh: add scaling overrides (MR 1396) 2020-07-06 15:45:22 +02:00
Andrea Scarpino 18e5129f3e sony-eagle: new device (Sony Xperia M2) (MR 1338) 2020-07-05 20:18:51 +02:00
Nick Boone 9f7c7752c1 htc-m8: fix red screen issue (MR 1384) 2020-07-05 20:07:28 +02:00
realaravinth 416f80d659 samsung-gtel3g: new device (Galaxy Tab E 9.6) (MR 1385) 2020-07-05 19:59:28 +02:00
Martijn Braam 0b00e23280 main/linux-postmarketos-allwinner: upgrade to 5.7.0_git20200704 (MR 1393)
This enables mult-sensor support in sun6i-csi, support for the
gc2145 front camera, the new panel driver from mainline linux
and a small fix for the anx7688 that prevents it spamming the
kernel log when no cable is plugged in on 1.2a hardware.
2020-07-05 19:45:53 +02:00
Hendrik Langer 385792983c htc-vision: change arch to armv7 (MR 1395) 2020-07-04 23:09:10 +02:00
Nick Boone 761162b678 htc-m8: add proprietary Wi-Fi firmware files (MR 1386) 2020-07-04 12:41:58 +03:00
Oliver Smith 956113f005 cross/busybox-static-*: upgrade to 1.32.0
Regenerate with current pmbootstrap aportgen code.
2020-07-03 21:24:05 +02:00
Clayton Craft 51cb42b3e6 linux-purism-librem5: upgrade to 5.7.7+librem5.1 (MR 1387) 2020-07-03 14:23:54 +02:00
Martijn Braam d4c55e8712 main/linux-postmarketos-allwinner: upgrade to 5.7.0_git20200629 (MR 1377)
[ci:skip-build]: already built successfully in CI
2020-07-02 13:51:09 +02:00
Oliver Smith 2a83ff4ac0 main/osk-sdl: upgrade to 0.56 (MR 1379) 2020-07-01 00:31:10 +02:00
Oliver Smith c606d92296 main/postmarketos-ondev: upgrade to 0.2.0 (MR 1378) 2020-07-01 00:23:52 +02:00
Joe Blos 39c74596c0 samsung-crespo: initial support (MR 1374)
Initial support for Samsung Nexus S, using vendor kernel.
2020-06-30 12:12:22 +02:00
laserbeamh 536c19797c essential-mata: new device (Essential Phone) (MR 1194) 2020-06-29 15:09:04 +02:00
PureTryOut ff97faf505 temp/plasma-phone-components: upgrade to 5.19.2_git20200626 (MR 1373) 2020-06-27 21:33:45 +03:00
PureTryOut 323fabb2f8 temp/plasma-nano: upgrade to 5.19.2_git20200625 (MR 1373) 2020-06-27 21:33:43 +03:00
Wazup fea884dd87 main/linux-postmarketos-allwiner: enable IP_SET module (MR 1372) 2020-06-27 19:23:40 +03:00
Alexey Min 8217bbc3c2 main/linux-postmarketos-allwinner: add patch descriptions (MR 1372)
Fixes linter warnings
2020-06-27 19:22:24 +03:00
Oliver Smith d370a6fe23 kde/plasma-videoplayer: disable armhf
[ci:skip-vercheck]
2020-06-27 10:03:39 +02:00
Oliver Smith cab8f10d2f */*: bump pkgrels for failed builds
gitlab.com had a service disruption, so it was not possible to "git
clone" from gitlab.com from some regions, like where the sourcehut
infrastructure is located. Since we are building our packages on
builds.sr.ht, this caused all packages that should be built at that time
to fail. It is working again, so bump the pkgrels to restart the builds.
2020-06-27 09:13:19 +02:00
Bart Ribbers fdde5452e7 kde/kquicksyntaxhighlighter: drop, not used anymore (MR 1311) 2020-06-26 11:31:37 +00:00
Bart Ribbers d43c2780ac main/{mauikit,vvave,pix,nota,index,buho}: drop, upstreamed to Alpine (MR 1311) 2020-06-26 11:31:37 +00:00
Bart Ribbers 356e7ecb77 */*: switch CMake buildtype to None (MR 1311)
This switch has happened in the Alpine repos quite a while ago and most
of the pmOS packages were using it already too, so let's switch over the
last ones as well.

This also cleans up the APKBUILDs where necessary
2020-06-26 11:31:37 +00:00
Federico Braghiroli 88073cd686 motorola-falcon: change arch to armv7 (MR 1369)
Signed-off-by: Federico Braghiroli <federico.braghiroli@gmail.com>
2020-06-26 00:57:38 +03:00
Bart Ribbers b1ef08229b kde/qrca: upgrade to 0_git20200625 (MR 1330) 2020-06-25 19:22:00 +03:00
Paul Cercueil 08594dba17 u-boot-samsung-i9100: New package (MR 1154)
This is the downstream u-boot port for the Galaxy S2.

The load script has been slightly altered to load the kernel from the
KERNEL partition at the 512 KiB offset, instead of loading it from the
RECOVERY partition, since PostmarketOS places the second initramfs in
the RECOVERY partition.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2020-06-25 15:51:25 +02:00
Antoine Fontaine d9be626aa7 main/postmarketos-ui-plasma-mobile: force wayland backend for gtk programs 2020-06-25 15:45:50 +02:00
Bart Ribbers a949531876 main/postmarketos-ui-plasma-mobile: replace pix dependency for koko (MR 1327) 2020-06-25 16:27:34 +03:00
Bart Ribbers f834975c60 kde/koko: new aport (MR 1327) 2020-06-25 16:27:34 +03:00
Danct12 ea0fd7cb7f main/linux-postmarketos-allwinner: upgrade to 0_git20200528 (MR 1267)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-25 15:20:38 +02:00
Alexey Min df57eaf100 main/postmarketos-ondev: rebuild against new libcalamares 2020-06-25 16:04:51 +03:00
Bart Ribbers 5b9fad9187 kde/kclock: new aport (MR 1328) 2020-06-25 15:43:30 +03:00
Bart Ribbers 64fd27a669 kde/kirigami-addons: new aport (MR 1328) 2020-06-25 15:43:30 +03:00
unxcepted 34297845c1 huawei-alice: new device (MR 1306) 2020-06-25 13:53:47 +02:00
Minecrell 8e080015d7 modem/msm-modem: rename msm-modem-mainline to msm-modem-rpmsg (MR 1356)
Newer Qualcomm SoCs (e.g. SDM845. MSM8953) seem to use a different
method to talk to the modem. There are no longer separate rpmsg/SMD
channels for QMI messags, instead the modem is also available through QRTR.

On these newer SoCs, installing msm-modem-mainline is pointless,
because the created /dev/modem device will not actually allow
communicating with the modem. However, you still need the part from
the base package (msm-modem), which installs+enables rmtfs.

To avoid confusion, rename the msm-modem-mainline subpackage to
msm-modem-rpmsg. Install only "msm-modem" on SDM845 because that
likely does not allow communication with the modem through RPMSG
anyway.
2020-06-25 09:41:35 +02:00
Clayton Craft 7cdd140b97 device-purism-librem5: upgrade to 1.5 (MR 1368)
This upgrades the librem5-base config used to v21:
        - better headphone support/detection
        - enable runtime PM for usb/SD interface

This also removes the modemmanager subpackage, the udev rule that was
installed by that package is now in modemmanager in Alpine.
2020-06-25 09:26:36 +02:00
Clayton Craft 6bccb218e6 linux-purism-librem5: upgrade to 5.7.5+librem5.2 (MR 1368)
This upgrade includes a runtime PM fix for the SD card reader/usb
2020-06-25 09:26:31 +02:00
Bhushan Shah 3c18b8e09e main/postmarketos-ui-plasma-mobile: depend on iio-sensor-proxy (MR 1370)
This is needed for rotation to work.
2020-06-25 09:20:41 +02:00
Oliver Smith 2f05e21d67 temp/calamares: upgrade to 3.2.26.1 (MR 1366)
Upgrade to latest bugfix release, and add a patch to fix weird looking
borders on mobile.
2020-06-25 07:15:23 +02:00
Clayton Craft 79ad89afb2 linux-purism-librem5: upgrade to 5.7.5 (MR 1344) 2020-06-24 10:12:13 +02:00
Clayton Craft 973b239c3c device-purism-librem5: upgrade package (MR 1344)
This upgrade includes:

    1) enabling fb in deviceinfo: This was previously disabled for
       debugging purposes, but can be re-enabled now so we get the
       awesome postmarketOS splash screen!
    2) fixing GPS, kinda: the device has changed, so this fixes the gpsd
       config to use the correct device, and includes a udev rule to
       make sure the device is owned by a group that gpsd can use
    3) usbnet working with configfs
    4) disables getty on /dev/ttyGS0, this was usb serial but isn't
       configured now that this uses configfs
    5) uses Mesa from Alpine, instead of mesa-git in pmaports. Upstream
       Mesa has support for the vivante gpu, and no longer need to rely
       on mesa master branch for support.
    6) fix pulseaudio detection of profiles
    7) update the librem5-base version used, includes a udev rule to
       configure DDR freq governor as 'powersave' (reduces power, and
       how much heat this thing puts out)

fixes #524
fixes #526
2020-06-24 10:12:13 +02:00
Clayton Craft d44056eef7 linux-purism-librem5: move to 'community' (MR 1344) 2020-06-24 10:12:13 +02:00
Clayton Craft 2a5247cf73 device-purism-librem5: move to 'community' (MR 1344) 2020-06-24 10:12:13 +02:00
Oliver Smith 166e702da7 temp/plasma-phone-components: split vkbd style (MR 1363)
Put virtual keyboard style into a subpackage, and let the main package
depend on it. That way, it can be used in postmarketos-ondev, without
pulling in all of plasma-phone-components.
2020-06-24 08:43:36 +02:00
Mis012 62f97294a0 samsung-a3ulte: fix scaling on phosh (MR 1364) 2020-06-23 21:46:54 +03:00
Bart Ribbers 417cbc9cb3 kde/alligator: upgrade to 0_git20200618 (MR 1329) 2020-06-23 19:56:49 +03:00
Bart Ribbers 6ad1f9f267 kde/spacebar: upgrade to 0_git20200618 (MR 1326)
This includes a complete rewrite of the application
2020-06-23 18:54:35 +03:00
Bart Ribbers 8b6590a46b kde/trainer: new aport (MR 1335) 2020-06-23 17:45:16 +03:00
Bart Ribbers 57fa113854 kde/plasma-phonebook: upgrade to 0_git20200618 (MR 1331) 2020-06-23 14:30:45 +03:00
Antoine Fontaine e2d1438815 main/postmarketos-ui-phosh: enable bluetooth support (MR 1352)
Fixes https://gitlab.com/postmarketOS/pmaports/-/issues/529.
2020-06-23 11:19:00 +02:00
Minecrell 5d1529f27b arrow-db410c: move from testing to community (MR 1318) 2020-06-23 11:05:25 +02:00
jonathan 02aaf4620f bq-paella: move from testing to community (MR 1319) 2020-06-23 10:37:51 +02:00
jonathan 04ccad39ac bq-paella: add Minecrell as co-maintainer, fix package description (MR 1319) 2020-06-23 10:37:51 +02:00
Oliver Smith 09568cb2ea cross/musl-*: upgrade to 1.1.24-r9 2020-06-23 08:49:36 +02:00
Bart Ribbers 8f415c09e8 kde/qmlkonsole: upgrade to 0_git20200618 (MR 1333) 2020-06-22 18:48:03 +03:00
Bart Ribbers 52d899a624 kde/plasma-camera: upgrade to 1.0_git20200618 (MR 1334) 2020-06-22 18:25:33 +03:00
Bart Ribbers 91228d578c kde/plasma-settings: upgrade to 0_git20200618 (MR 1332) 2020-06-22 15:40:52 +03:00
Bart Ribbers ae8707a439 main/postmarketos-ui-phosh: install gnome-software by default (MR 1345) 2020-06-22 15:27:55 +03:00
Minecrell 51e97f026b main/linux-postmarketos-stericsson: upgrade to 5.8-rc2 (MR 1360)
- Update to Linux 5.8-rc2
- samsung-golden: Add magnetometer/proximity sensor, touchkeys
2020-06-22 11:51:02 +02:00
Minecrell caa2018bce main/linux-postmarketos-stericsson: rename from -novathor (MR 1360)
In the Linux kernel, the ST-Ericsson NovaThor U8500 SoC is barely
ever mentioned under the "NovaThor" name, more common are names like
U8500, Ux500, ST-Ericsson, STE, ...

Let's rename the kernel package to linux-postmarketos-stericsson
to make that more clear. Also cleanup the APKBUILD a bit while we're
at it, HOSTCC is unneeded, remove unnecessary depends, ...
2020-06-22 11:50:44 +02:00
Bradley 1cf42e6db8 linux-postmarketos-allwinner: enable f2fs module and fs compression (MR 1353)
[ci:skip-build] builds locally
2020-06-21 23:46:42 +03:00
Hayden Peto e5dd049cba sony-hollyss: new device (Sony Xperia M5) (MR 1349)
working: Display, Touch, Charging, USB Network, X11
2020-06-21 20:54:11 +03:00
Antoine Fontaine 92779b2e0c pine64-pinetab: unbreak audio (MR 1350)
see https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1323 for the pinephone counterpart.
2020-06-21 17:24:09 +02:00
Shuhao Wu 1a72946609 linux-amazon-douglas: disable sound in kernel (MR 1304)
Accessing the sound system causes freezes of the system, so it is
disabled for now.
2020-06-21 17:42:15 +03:00
Shuhao Wu 552c5c93bc amazon-douglas: new device (Amazon Fire HD 8) (MR 1304) 2020-06-21 17:41:06 +03:00
Danct12 df5eec9de6 main/linux-postmarketos-allwinner: only RTL8723CS_NEW (MR 1322)
We cannot have two of them at the same time, most compiler would fail here
but for some reason our didn't.

However, it's better to just use one (the new one, or the old one). Enable
CONFIG_RTL8723CS_NEW, which is the new driver that made it to pine64
kernel since 5.5.

Signed-off-by: Danct12 <danct12@disroot.org>

[ci:skip-build]: already built successfully in CI
2020-06-21 11:18:22 +02:00
Emanuel Tankovic 2f29de7ec9 samsung-i8200: deviceinfo_external_storage=true (MR 1288) 2020-06-21 10:59:39 +02:00
Danct12 f7ed67b1b7 main/postmarketos-ui-phosh: disable auto-brightness by default (MR 1348)
We should disable it by default and let the user to enable it
when they want it.

And currently it's causing problems where the backlight would
go very dark with it enabled on PinePhone.

Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-20 18:00:47 +02:00
Antoine Fontaine d7d0a4b5aa temp/u-boot-pinephone: disable too fast fast dram clock speed (MR 1351)
Fixes https://gitlab.com/postmarketOS/pmaports/-/issues/547 and
https://gitlab.com/postmarketOS/pmaports/-/issues/606. See also
https://forum.pine64.org/showthread.php?tid=9832.
2020-06-20 12:26:47 +00:00
Minecrell 40f13a19e2 bq-paella: install newer WCNSS firmware from DB410c by default (MR 1315)
bq-paella allows running unsigned firmware from other devices.
We can use that advantage to replace some of the original firmware
with newer versions from other devices. The DB410c has updated WCNSS
firmware that reportedly improves WiFi/BT coexistence (i.e. behavior
when both WiFi/BT are active at the same time).

Depend on the virtual "firmware-qcom-msm8916-wcnss" package to give
the user the choice which firmware version they would like to run.
The newer version from "firmware-qcom-db410c-wcnss" is installed by
default (since it has a higher "provider_priority"), but the user
can choose to replace it by running "apk add firmware-bq-picmt-wcnss".
2020-06-20 12:10:20 +02:00
Minecrell 39363bd2bf bq-picmt: install firmware-bq-picmt-wcnss-nv (MR 1315)
The WCNSS firmware configuration was moved to firmware-bq-picmt-wcnss-nv,
ensure to install it additionally.
2020-06-20 12:10:20 +02:00
Minecrell dbaa5a9702 firmware/firmware-bq-picmt: various improvements (MR 1315)
- Set fixed commit in "source" line to avoid future problems if some
  change is pushed to the repository
- Add pmb:cross-native to build natively since these are just a few
  copy operations
- Remove some unneeded `cd "$srcdir"` lines
- Avoid installing venus.mbn since this is just a combined version of
  venus.mdt + venus.b*
- Split -wcnss subpackage into -wcnss and -wcnss-nv to allow replacing
  the WCNSS firmware with a newer version from firmware-qcom-db410c
  - Provide "firmware-qcom-msm8916-wcnss" to still allow switching to
    the original firmware if wanted
- Install only WCNSS_qcom_wlan_nv.bin for aarch64 since the other
  configuration files are only needed for downstream (armv7)
2020-06-20 12:10:20 +02:00
Minecrell 1785be13dd firmware/firmware-qcom-db410c: provide firmware-qcom-msm8916-wcnss (MR 1315)
The WCNSS firmware from DB410c is also useful for other devices
that can run unsigned firmware (e.g. bq-paella) because it is newer
and reportedly has some WiFi/BT coexistence problems fixed.

To allow easy switching betwen the original firmware from the manufacturer
(firmware-bq-picmt-wcnss) and the newer firmware (firmware-qcom-db410c-wcnss)
we make both packages provide a virtual "firmware-qcom-msm8916-wcnss"
package. The newer version from firmware-qcom-db410c gets a higher
provider_priority so it is installed by default.

However, the user can choose to do "apk add firmware-bq-picmt-wcnss"
to get the original firmware from the manufacturer instead.
2020-06-20 12:10:20 +02:00
Bart Ribbers 458c3ce9f2 kde/plasma-dialer: upgrade to 0.1_git20200618 (MR 1339)
[ci:skip-build]: already built successfully in CI
2020-06-20 11:08:16 +02:00
Luca Weiss eb30e7b8a8 main/postmarketos-ondev: upgrade to 0.1.5 (MR 1342)
This release gets rid of the hacks needed for out-of-tree modules in the
previous version of calamares.

[ci:skip-build]: already built successfully in CI
2020-06-20 10:42:42 +02:00
Luca Weiss bf452101bd temp/calamares: upgrade to 3.2.26 (MR 1342) 2020-06-20 10:42:12 +02:00
Antoine Fontaine e3042a6ffa raspberry-pi{,0,3,4}: enable swclock (MR 1336)
Following discussions in
https://gitlab.com/postmarketOS/pmaports/-/issues/398, swclock has been
removed from postmarketos-base to avoid setting time incorrectly on
devices with a hardware clock. The various raspberry pi don't have
an hardware clock. This activate swclock back.
2020-06-19 12:31:20 +02:00
Antoine Fontaine b23860aba6 pine64-pinetab: remove dmenu dep from sway subpackage (MR 1324) 2020-06-19 12:27:15 +02:00
Wazup 1e9d04e60c enable xt_owner and xt_time kernel modules (MR 1343) 2020-06-19 09:14:27 +02:00
Federico Amedeo Izzo 754fbcd7b7 oneplus-onyx: move to armv7, port re-done from scratch (MR 1341) 2020-06-19 09:12:22 +02:00
Oliver Smith 4aa63d74de main/postmarketos-ondev: disable armhf
[ci:skip-vercheck]
2020-06-18 22:26:40 +02:00
Oliver Smith aa832aeea0 temp/calamares: disable armhf
Fails to build, because extra-cmake-modules from Alpine is not available
for armhf. Its APKBUILD says "Blocked by qt5-qtdeclarative".

[ci:skip-vercheck]
2020-06-18 22:22:34 +02:00
Oliver Smith bb5c0cdc7f main/postmarketos-ondev: new aport (MR 1296) 2020-06-18 21:50:32 +02:00
Oliver Smith b6a7d80e45 temp/calamares: new aport (MR 1296)
Based on PureTryOut's testing/calamares branch. Thanks!
2020-06-18 21:50:22 +02:00
Oliver Smith 2f3f0bf333 temp/os-prober: new aport (MR 1296)
Taken from PureTryOut's testing/calamares repository, thanks!
2020-06-17 21:41:06 +02:00
Oliver Smith 9be8b59a00 main/postmarketos-mkinitfs: support pmOS_install (MR 1296)
Prefer booting from a pmOS_install partition if it exists, but do not
resize it.

Related: https://wiki.postmarketos.org/wiki/On-device_installer
2020-06-17 21:41:06 +02:00
Oliver Smith 24b83e2415 CI: use check_mr_settings.py from ci-common.git (MR 1320) 2020-06-17 16:29:34 +02:00
Oliver Smith f415d413c5 CI: support release channels (v20.05 branch) (MR 1321)
Add common.get_upstream_branch() and use it instead of assuming "master"
as upstream branch.

Example: user forks v20.05 to v20.05_some-fix, then creates a merge
request. CI must use v20.05 as upstream branch, when comparing for
modified files etc.
2020-06-17 16:26:38 +02:00
Oliver Smith 4d116177ac CI: common.py: add cache (MR 1321)
Don't query the pmaports dir more than once. This cache will also be
used to store the upstream branch in the next commit.
2020-06-17 16:26:38 +02:00
Miles Alan b89fc77d7c main/linux-postmarketos-allwiner: add CONFIG_SND_ALOOP=m to allow loopback dev (MR 1309)
This makes recording system audio very simple and feasible in a cross-device
manner since application-logic can always rely / forward ALSA audio to the
loopback device instead of a device-specific audio interface.
2020-06-17 12:51:06 +02:00
Antoine Fontaine 1d2b62a109 pine64-pinephone: unbreak audio (MR 1323)
Fixes #633.
2020-06-17 11:13:58 +02:00
Mark Hargreaves 578b616452 samsung-codina: new device (Samsung Galaxy Ace 2) (MR 1275) 2020-06-16 21:32:24 +03:00
Antoine Fontaine 99a29577ef main/postmarketos-ui-xfce4: remove GTK2 mention in pkgdesc (MR 1279) 2020-06-16 17:49:00 +02:00
Antoine Fontaine 0ad00120a1 main/postmarketos-ui-plasma-mobile: mention that plamo can't run without fb support in the pkgdesc (MR 1279) 2020-06-16 17:49:00 +02:00
Antoine Fontaine 9ca39cbf24 main/postmarketos-ui-gnome: remove armhf mention (MR 1279)
since https://gitlab.com/postmarketOS/pmbootstrap/-/merge_requests/1937,
people won't see the ui if their device arch is incompatible.
2020-06-16 17:49:00 +02:00
Mark Hargreaves 710aaefa55 samsung-j53g: new device(Samsung Galaxy J5 2015 3G SM-J500H) (MR 1317) 2020-06-16 16:47:54 +02:00
Oliver Smith 1807426f67 main/osk-sdl: upgrade to 0.55 (MR 1316)
Improved keyboard with bigger buttons and layout change from 4 rows
(+ space row) to 3 rows for easier typing.
2020-06-16 16:49:46 +03:00
Oliver Smith 076b338e32 cross/busybox-static-*: upgrade to 1.31.1-r21 2020-06-16 15:30:50 +02:00
Danct12 0ac7142c2e device-pine64-pinetab: add ucm files (MR 1191)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-16 13:32:15 +02:00
Gianluca Boiano ce9623de68 xiaomi-vince: New Device (Xiaomi Redmi Note 5 Plus) (MR 1249) 2020-06-16 13:26:16 +02:00
Danct12 7433ea0fc7 temp/u-boot-rockpro64: bump pkgrel to build for ARM TF 2.3 (MR 1286)
[ci:skip-build]: keeps hanging under CI

Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-16 13:15:58 +02:00
Danct12 a67a00f038 temp/u-boot-pinephone: bump pkgrel to build for ARM TF 2.3 (MR 1286)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-16 13:15:58 +02:00
Danct12 c7fafc1e2d temp/arm-trusted-firmware: upgrade to 2.3 (MR 1286)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-16 13:15:58 +02:00
Martijn Braam f388ee29ce device-pine64-pinebookpro: trackpad and audio fixes (MR 1303)
This adds a hwdb override for the trackpad that fixes the reported size, this fixes
the acceleration profile and palm detection in libinput.

Pulse now follows alsa paths for ucm files so the path for the rk3399 ucm has been
updated to match.
2020-06-16 13:04:17 +02:00
Clayton Craft 322d87bcb0 linux-purism-librem5: upgrade to upstream 5.7.0 (MR 1310)
This also removes an unused patch.
2020-06-16 12:58:36 +02:00
Minecrell 87a0624e93 arrow-db410c: new device (Arrow DragonBoard 410c) (MR 1293)
The DB410c is a SBC with APQ8016 SoC. It runs on mainline without
any patches. This port makes use of the existing linux-postmarketos-qcom-msm8916
kernel package that is used for other mainline MSM8916 devices.

Tested functionality:
  - USB Network, USB Host (e.g. an USB keyboard)
  - Flashing (Fastboot)
  - Display (HDMI)
  - WiFi/BT
  - GPU
  - Audio (HDMI)
  - FDE

Not tested:
  - GPS

Note: The firmware package is called firmware-qcom-db410c (instead of arrow)
because the firmware is provided directly by Qualcomm, not Arrow.
2020-06-16 12:46:40 +02:00
Minecrell af01e26142 device/community/soc-qcom-msm8916: install alsa-ucm-conf (MR 1307)
Newer versions of alsa-lib now require a top-level ALSA UCM
configuration (/usr/share/alsa/ucm2/ucm.conf):

    ALSA lib parser.c:2159:(load_toplevel_config) Unable to find the top-level configuration file '/usr/share/alsa/ucm2/ucm.conf'.
    ALSA lib main.c:983:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2
    alsaucm: error failed to open sound card hw:0: No such file or directory

The upstream ALSA UCM configurations are provided by Alpine's
"alsa-ucm-conf" package, so make sure to install it additionally.
2020-06-16 12:42:41 +02:00
Bart Ribbers 074636ce09 temp/kwin: drop, newer version is in Alpine (MR 1235) 2020-06-15 15:16:40 +02:00
Bart Ribbers b04c243869 temp/plasma-phone-components: upgrade to 5.19.0_git20200605 (MR 1235) 2020-06-15 15:16:40 +02:00
Bart Ribbers 704c690573 temp/plasma-nano: upgrade to 5.19.0_git20200605 (MR 1235) 2020-06-15 15:16:40 +02:00
Bart Ribbers 0c08e86595 kde/plasma-dialer: upgrade to 0_git20200605 (MR 1235) 2020-06-15 15:16:40 +02:00
Bart Ribbers 73df8a031a temp/plasma-workspace: drop, newer version is in Alpine
Cherry-picked by ollieparanoid from MR 1235, because
temp/plasma-workspace has outdated dependencies that make the
upstream-compatibility test fail.
2020-06-15 14:31:12 +02:00
Dyna 7e2554714a motorola-payton: new device (Motorola Moto X4) (MR 1301)
What works:
- Booting
- Display
- Touch
- USB Ethernet

What doesn't:
- Sound
- Wi-Fi
- Modem
- Camera

(NOTE: If the display doesn't work, try flashing your phone back to stock, then trying again.)
2020-06-15 09:44:49 +02:00
Federico Braghiroli bed9029ff2 motorola-falcon: add wifi firmware (MR 1290)
Signed-off-by: Federico Braghiroli <federico.braghiroli@gmail.com>
2020-06-15 09:40:30 +02:00
Antoine Fontaine 41c2e1a307 main/postmarketos-mkinitfs: add mkinitfs to replaces (MR 1300)
fixes pmbootstrap#1851.
2020-06-15 02:32:25 +03:00
Dolphin von Chips 7c4949f237 cross/busybox-static-*: upgrade to 1.31.1-r20 (MR 1302)
upstream commit https://gitlab.alpinelinux.org/alpine/aports/-/commit/11794218cdb2a6fcef0959315a9013c20547c4fb
2020-06-12 20:14:53 +03:00
Dolphin von Chips 87d9cf451e cross/grub-efi-x86: upgrade to 2.04-r2 (MR 1302)
upstream commit https://gitlab.alpinelinux.org/alpine/aports/-/commit/701f05b8d895a510370b62e039fc66d5ef577902
2020-06-12 20:12:15 +03:00
Martijn Braam 057fa02f90 nokia-n900: move to community (MR 1177) 2020-06-11 14:41:26 +02:00
Danct12 d1640538ec cross/gcc-*: upgrade to 9.3.0-r3 (MR 1299)
Bring the GCC packages up to date with upstream.
This adds a patch for time64 compatible futext syscall, it is needed for musl 1.2
which makes our little phones works after 2038.

Upstream commits:
- https://gitlab.alpinelinux.org/alpine/aports/-/commit/c6536bc29acb252d8d80b9e9d5debcb4e8c62517
- https://gitlab.alpinelinux.org/alpine/aports/-/commit/30ddf1b3c46442163af3fb6223f39b24e6651bc6

[ci:skip-build]

Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-11 09:11:10 +02:00
Oliver Smith 5aababedf1 main/postmarketos-android-recovery-installer: upgrade to 1.0.1 (MR 1297)
Has various bugfixes. Set myself as maintainer, as Attila isn't very
active.

Related: https://gitlab.com/postmarketOS/postmarketos-android-recovery-installer/-/tags/1.0.1
Related: https://wiki.postmarketos.org/wiki/File:Postmarketos-android-recovery-installer.jpeg
2020-06-10 16:50:19 +02:00
Oliver Smith 7030ce1205 cross/busybox-static-*: upgrade to 1.31.1-r19 2020-06-10 12:59:53 +02:00
Raatty 86c6ce9ad0 CI: store built apks as artifacts (MR 1264) 2020-06-10 12:54:51 +02:00
Mark Hargreaves 50d8465d41 sony-sumire: new device (Sony Xperia Z5) (MR 1056)
[ci:skip-build]: already built successfully in CI
2020-06-10 09:46:49 +02:00
Alexey Min 011b5316a4 cross/busybox-static-*: upgrade to 1.31.1-r18
upstream commit: https://gitlab.alpinelinux.org/alpine/aports/-/commit/c8056db22e7318b02e2ce9c08300dd4c6569b3e2
2020-06-10 01:35:38 +03:00
Jonathan Albrieux 6ef253a9d8 bq-paella: add option to enable modem (MR 1294) 2020-06-10 00:22:17 +03:00
Minecrell d7306531f5 soc-qcom-msm8916: add ALSA UCM configuration for bq-paella (MR 1295)
bq-paella has an external speaker amplifier connected to the right
channel of the headphones output. Add an extra UCM configuration
to handle this properly.
2020-06-09 23:18:38 +03:00
Minecrell 140a04816f main/linux-postmarketos-qcom-msm8916: upgrade to 5.7.1 (MR 1295)
We are in the midst of the Linux 5.8 merge window so there is no new
-rc version to rebase on. -rc1 next week is also not the perfect choice
for a release (first rc is usually still a bit unstable).

On the other hand the changes that landed the last few days are quite
nice and ready to go, so I decided to rebase on a stable kernel release
(5.7.1). Not sure if I'm ever going to do this again :)

Changes:
- Update to Linux 5.7.1
- bq-paella: Add sound and modem
- Enable some new kernel options for DB410c
2020-06-09 23:18:36 +03:00
Dr. Git 80c94d6b8e linux-postmarketos-qcom-msm8996: change repository location and upgrade to 5.7 (MR 1292) 2020-06-09 14:05:58 +03:00
Federico Amedeo Izzo c8cc5b4131 lg-mako: change arch from armhf to armv7 (MR 1291) 2020-06-08 20:20:02 +03:00
Shana f15fa76d38 amazon-mustang: new device (MR 1263)
Just got done with my second port of postmarketOS, here's the device:
Amazon Fire 7 (2019) postmarketOS
Mediatek MT8163
600x1024 display
1GB RAM
Linux 4.9.77 (downstream kernel)

Untested:
- Wi-Fi
- Audio
Pretty much everything else

Works:
- Boots
- Touchscreen
- Battery percentage seems to show in Xfce
2020-06-08 19:22:10 +03:00
km2 bd57bf30c3 fly-iq4404: fix boot.img and kernel freezes at high disk load (MR 1285) 2020-06-07 11:01:25 +02:00
Danct12 fa6c5413fd main/kmscube: upgrade to 0_git20200401 (MR 1287)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-06-06 21:34:04 +07:00
Snejp 71ed65d2db samsung-s3ve3g: new device (Samsung Galaxy S III Neo) (MR 1278)
* change arch to armv7
 * working framebuffer
 * disable v4l udev rules
2020-06-06 12:03:19 +03:00
Minecrell 768ae7c1ee main/linux-postmarketos-qcom-msm8916: upgrade to 5.7 (MR 1284)
- Update to Linux 5.7
- motorola-harpia: Add battery reporting
- bq-paella: Add accelerometer/magnetometer/gyroscope
- bq-paella: Expose touch key backlight as LED
2020-06-06 09:40:59 +03:00
SUNGOLDSV daa2ea2956 xiaomi-ferrari: new device (Xiaomi Mi 4i) (MR 1207) 2020-06-05 14:23:51 +02:00
Maxnet 0e28a47d9f htc-enrc2b: new device (HTC One X+) (MR 1269)
[ci:skip-build]: already built successfully in CI
2020-06-05 13:22:40 +02:00
Ferenc Bakonyi 48fa646f08 main/postmarketos-mkinitfs-hook-console-shell: new aport (MR 1094)
Provides early debug shell via initramfs. Might be useful on devices
without USB networking, works well on PinePhone.
2020-06-05 12:57:22 +02:00
Oliver Smith dfa528f18e cross/busybox-static-*: upgrade to 1.31.1-r17 2020-06-05 11:11:44 +02:00
Joshua Trees e821fe3fb7 samsung-hero2lte: get wi-fi working (MR 1268)
This is essentially a recreation of a merge request by @WilliamO7 that
was abandoned due to inactivity. The original can be found here:

https://gitlab.com/postmarketOS/pmaports/-/merge_requests/631
2020-06-04 03:36:55 +03:00
sicelo c364462462 device/nokia-n900: remove unnecessary escaping (MR 1283) 2020-06-03 21:15:58 +02:00
Pellegrino Prevete fc98518f40 linux-postmarketos-qcom-msm8974: enable CONFIG_USER_NS (MR 1282)
This fixes GNOME Web on the hammerhead and other devices using this
kernel
2020-06-03 14:57:25 +02:00
Julian Braha eeac0f1383 motorola-ali: updated arch to arm64, updated gcc version, and removed unused patches (MR 1281) 2020-06-03 14:53:45 +02:00
Antoine Fontaine 67493f8003 main/postmarketos-ui-weston: actually start dbus (!1280)
dbus-launch doesn't get installed automatically. On the other hand,
dbus-run-session does. This version ensures that dbus is also launched
for the graphical demos
2020-06-03 14:17:35 +02:00
Minecrell 8013cad133 <msm8916-mainline>: add myself as co-maintainer (MR 1273)
I cannot test on most of them (at the moment), but I was involved
in porting all of them so I could "guess" certain changes at least.

[ci:skip-vercheck]: just moved and some maintainers
2020-06-03 13:46:00 +02:00
Nikita Travkin ff5fb6fdcc wileyfox-crackling: move from testing to community (MR 1273) 2020-06-03 13:46:00 +02:00
Mis012 ab271276e4 samsung-a3ulte: move from testing to community (MR 1273) 2020-06-03 13:46:00 +02:00
Ruby Iris Juric 08f312a0c1 motorola-harpia: move from testing to community (MR 1273) 2020-06-03 13:46:00 +02:00
Minecrell 1a82353f10 samsung-serranovelte: move from testing to community (MR 1273) 2020-06-03 13:46:00 +02:00
Minecrell d021832955 samsung-a5(u)lte: move from testing to community (MR 1273)
a5lte and a5ulte are almost identical hardware-wise, the separate
package is mainly necessary because they use different firmware
signatures.

Alexey Min agreed to do some testing occasionally :)
2020-06-03 13:46:00 +02:00
Ferenc Bakonyi f1ad4128d5 main/postmarketos-ui-fbkeyboard: new aport (MR 1013)
- Make service restart-safe by resetting console size via stop_post()
- Check if /dev/uinput exists, and if it does not, do "modprobe -q uinput"
2020-06-02 13:58:42 +02:00
km2 a20c2697be samsung-i9003: change to armv7, remove isorec code (MR 1277)
I noticed that the Samsung i9003 is actually a heimdall-bootimg device.
But at the same time, the kernel is assembled as if it is isorec.

[ci:skip-build]: already built successfully in CI
2020-06-02 13:43:44 +02:00
Caleb Connolly 80f332c9d2 linux-oneplus-sdm845: upgrade to 5.7-rc6 (MR 1271)
Update to a new kernel based on v5.7-rc6, adding the following new
features:

* Remoteproc support and firmware loading
* Panel drivers for OnePlus 6/T
* Adreno 630 support
* Anbox support

The new firmware-oneplus-sdm845 is required for these features and
devices will not have working display output without firmware

[ci:skip-build] Already built on CI
2020-06-02 11:20:24 +03:00
Caleb Connolly 9a08f2747a enchilada/fajita: update device packages (MR 1271)
Add nonfree_firmware subpackage and depend on new soc-qcom-sdm845 common
package.
2020-06-02 11:20:24 +03:00
Caleb Connolly 5757d7b837 firmware-oneplus-sdm845: new aport (MR 1271)
Add firmware for the OnePlus 6 / 6T

For details see https://gitlab.com/sdm845-mainline/firmware-oneplus-sdm845/-/commit/544e95617d0860f06a3cf7506077f30290948a87
2020-06-02 11:20:11 +03:00
Caleb Connolly 5fcc6297c3 soc-qcom-sdm845: new aport (MR 1271)
Add a generic qcom SDM845 aport for common packages like rmtfs,
pd-mapper and tqftpserv which are required in order to get the Modem and
WLAN booted.
2020-06-02 11:20:01 +03:00
Caleb Connolly a4f2d33eae enchilada/fajita: add back removed aports (MR 1272) (MR 1271)
After removing packages and updating repos they can now be added back
with fixed pkgvers :D

This reverts commit 0004a7bac6.
2020-06-02 11:19:50 +03:00
Oliver Smith bb05822b6d channels.cfg: stable: branch_aports=3.12-stable
Alpine has branched 3.12-stable, and their release is officially
announced: https://alpinelinux.org/posts/Alpine-3.12.0-released.html
2020-05-31 10:19:14 +02:00
Caleb Connolly 1ba5bbeac2 modem/msm-modem: add rmtfs-openrc dependency (MR 1274)
It is possible for msm-modem to get installed before
rmtfs-openrc, which causes the following error in
post-install:

 * rc-update: service `rmtfs' does not exist
ERROR: msm-modem-1-r0.post-install: script exited with error 1

Add a dependency to ensure rmtfs-openrc gets installed first
2020-05-27 20:16:50 +03:00
dzmitry 6b49a8685e samsung-a5y17lte: bump pkgrel (!1270)
This fixes https://gitlab.com/postmarketOS/pmaports/-/issues/578.
2020-05-27 14:36:41 +02:00
Bart Ribbers f315904740 pine64-rockpro64: fix boot part start position in deviceinfo (!1262)
Otherwise the firmware image is too big and can't be written to the
specified storage
2020-05-27 14:28:33 +02:00
Caleb Connolly 0004a7bac6 linux-oneplus-sdm845: remove package to fix pkgver (MR 1272)
Also requires removing device package.

Will be added back and fixed in pma!1271
2020-05-27 02:49:03 +03:00
lastramses fafac1bd9b motorola-perry: new device (Motorola E4) (MR 1111) 2020-05-27 00:14:35 +03:00
Oliver Smith dbc272fe9f channels.cfg: v20.05 is not WIP anymore 2020-05-26 20:45:49 +02:00
Raatty d2bb9c2b1d main/postmarketos-ui-{i3wm,kodi,mate,plasma-mobile,sway,weston,xfce4}: fix conflicting autologin file (MR 1238) 2020-05-25 10:35:43 +02:00
HenriDellal 7dcfb89c5f main/postmarketos-demos: upgrade to 1.1.0 (MR 1266)
Related to https://gitlab.com/postmarketOS/postmarketos-demos/-/merge_requests/1
Version 1.1.0 adds support for small screens and scrollable layout.
2020-05-25 10:31:33 +02:00
Minecrell bbba372ac3 bq-picmt: generate sparse rootfs, correct some bootimg offsets (MR 1265)
Generating a sparse rootfs speeds up flashing through Fastboot.
Also change some bootimg offsets to be more accurate to the one
actually used by the bootloader. (They will actually just be ignored,
since the bootloader always uses its own hard-coded ones.)
2020-05-25 10:26:52 +02:00
Minecrell 7d278ccca7 device/testing/soc-qcom-msm8916: install+enable q6voiced for modem (MR 1233)
Make voice call audio work out of the box by starting q6voiced on
all installations with the modem. It might be nice to start it only
when oFono is installed and enabled, but q6voiced is quite minimal
so it does not seem worth the effort.
2020-05-25 10:19:09 +02:00
MinecrellandNikita Travkin cc689bb4d1 modem/q6voiced: new aport (MR 1233)
linux-postmarketos-qcom-msm8916 now supports voice call audio.
However, at the moment the audio stream needs to be explicitly started
by opening some PCM audio devices when the call is started
(even though no audio data is written to the PCM device).

Eventually this should go away by implementing codec2codec support
for q6voice in the kernel. In that case, the stream would be started
once the audio routes are set up using ALSA UCM. However, this is a bit
complicated actually so for now it's nice to have a workaround:

q6voiced listens on dbus for signals from oFono, and opens/closes the
PCM device when a call is initiated/ended in oFono. This essentially
makes voice call audio work out of the box (provided that the audio
routing, e.g. Earpiece and a microphone is set up appropriately).

Co-Authored-By: Nikita Travkin <nikitos.tr@gmail.com>
2020-05-25 10:19:05 +02:00
Luca Weiss 8437d79df7 device/*: Improve device name for some devices (MR 1248)
[ci:ignore-count]
2020-05-25 10:15:12 +02:00
Luca Weiss a17a931026 device/*: Add deviceinfo_chassis variable (MR 1246)
[ci:ignore-count], [ci:skip-build]
2020-05-24 06:35:30 +02:00
Luca Weiss 7fc1292b9b main/devicepkg-dev: generate /etc/machine-info (MR 1246) 2020-05-24 06:35:02 +02:00
Oliver Smith b5917b03f8 cross/binutils-*: upgrade to 2.34-r1
Generated with pmbootstrap!1942, so the builddir isn't removed.
2020-05-24 04:01:33 +02:00
Dolphin von Chips ba26b27673 modem/pd-mapper: new aport (MR 1080) 2020-05-23 18:10:02 +02:00
Dolphin von Chips 6bd3f0ead8 modem/tqftpserv: new aport (MR 1080) 2020-05-23 18:09:40 +02:00
Federico Amedeo Izzo b6ea0ba1de {nokia-n900,samsung-i9070}: move swclock initial timestamp back to postmaketos-base.post-install (MR 1166) 2020-05-23 17:57:40 +02:00
Federico Amedeo Izzo 859772a915 */*: add missing exit 0 in post-install scripts (MR 1166) 2020-05-23 17:57:36 +02:00
Federico Amedeo Izzo fd12790ead nokia-n900: fix post-install script (MR 1166) 2020-05-23 17:57:33 +02:00
Federico Amedeo Izzo 3b54062859 samsung-i9070: enable post-install script (MR 1166) 2020-05-23 17:57:31 +02:00
Federico Amedeo Izzo 0e502a5139 postmarketos-base: disable swclock for all devices, enable it for nokia-n900 and samsung-i9070 (MR 1166) 2020-05-23 17:57:27 +02:00
Antoine Fontaine 11b60e838b ci: check for executable files (MR 1257)
fix https://gitlab.com/postmarketOS/pmaports/-/issues/593.
2020-05-23 17:40:00 +02:00
Clayton Craft b4b94bdbdd u-boot-librem5: upgrade to 0.6 (MR 1231)
This upgrades the u-boot and ATF in this package to the latest from
Purism's repos.
2020-05-23 17:38:24 +02:00
Clayton Craft 220796eb88 linux-purism-librem5: upgrade to 5.6.5 (MR 1231) 2020-05-23 17:38:20 +02:00
Luca Weiss e350b00b9b treewide: chmod -x files (MR 1237)
We don't want executable APKBUILDs, deviceinfo files, etc in pmaports.
Remove the executable bit from those files.

[ci:skip-build]
[ci:skip-vercheck]
2020-05-23 17:29:18 +02:00
Luca Weiss 25e4fb1165 console/console-keyboard-multiplexer: use 'install' instead of 'cp' (MR 1237) 2020-05-23 17:29:14 +02:00
Luca Weiss 768f534c8b main/pil-squasher: new aport (MR 1259) 2020-05-23 17:26:36 +02:00
Danct12 0169350bb9 modem/libsamsung-ipc: fix linting (MR 1260)
[ci:skip-vercheck]

Signed-off-by: Danct12 <danct12@disroot.org>
2020-05-23 17:23:27 +02:00
Danct12 2aaece5219 modem/libsamsung-ipc: update source url (MR 1260)
[ci:skip-vercheck]

Signed-off-by: Danct12 <danct12@disroot.org>
Reviewed-by: Asriel Dreemurr <asriel.danctnix@gmail.com>
Signed-off-by: Asriel Dreemurr <asriel.danctnix@gmail.com>
2020-05-23 17:20:57 +02:00
Alexey Min 45aa1e5d17 cross/musl-*: upgrade to 1.1.24-r8
upstream commit: https://gitlab.alpinelinux.org/alpine/aports/-/commit/afc38b4a14533b4d1c22a11c1b248be0372ec040
2020-05-23 03:54:40 +03:00
Alexey Min 5565bfa15e cross/busybox-static-*: upgrade to 1.31.1-r16
upstream commit: https://gitlab.alpinelinux.org/alpine/aports/-/commit/38ef6cebfd8498e03f0636b00c62bdf42fbf5eb2
2020-05-22 16:23:14 +03:00
Jonathan Albrieux e5b604db00 device-bq-paella: enable display and touchscreen on boot (MR 1261) 2020-05-22 15:11:17 +03:00
Antoine Fontaine 29d75cbf9c linux-*: add pmb:cross-native to the kernel that don't have it. (MR 1247)
[ci:skip-build], [ci:skip-vercheck]
2020-05-21 07:29:25 +03:00
Antoine Fontaine 307f4f19e6 ci: check that kernels have pmb:cross-native enabled (MR 1247)
follow up to
https://gitlab.com/postmarketOS/pmbootstrap/-/issues/1910,
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1169 and
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1187.

Fixing the repo is good, but keeping it clean is better. Ensuring it
before merge will avoid yet another fixup commit.
2020-05-21 07:29:16 +03:00
Bart Ribbers 3ceafb3c79 kde/qrca: upgrade to 0_git20200408 (MR 1258)
Fixes a compilation issue with the latest zxing-cpp
2020-05-20 16:48:40 +03:00
knuxify e248abf6f1 samsung-baffinlite: disable CONFIG_CFG80211_INTERNAL_REGDB (MR 1256) 2020-05-20 15:41:36 +03:00
Raatty 5b9b164945 main/lightdm-mobile-greeter: remove aport, upstreamed to Alpine (MR 1189) 2020-05-20 12:02:37 +03:00
Oliver Smith d72f15c8a7 cross/musl-*: upgrade to 1.1.24-r7 2020-05-19 23:07:43 +02:00
Antoine Fontaine 6041d4eed0 Support Anbox explicitly in some kernels: (MR 1232)
* linux-postmarketos-allwinner
* linux-postmarketos-qcom-msm8916
* linux-asus-me176c

They support anbox already.

It will make CI catch errors such as the removal of anbox support in
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1205 when
https://gitlab.com/postmarketOS/pmbootstrap/-/merge_requests/1916 will
be merged.

[ci:skip-vercheck] and [ci:skip-build]: no need to rebuild the package.
2020-05-19 22:23:39 +03:00
Caleb Connolly 546a70f039 oneplus-fajita: new device (OnePlus 6T) (MR 1221)
Device package for mainline OnePlus 6T

[ci:skip-build]
2020-05-19 22:18:00 +03:00
Caleb Connolly 7484c0154c oneplus-enchilada: new device (OnePlus 6) (MR 1221)
Device package for mainline OnePlus 6
2020-05-19 21:55:26 +03:00
Caleb Connolly 41dd83c65a linux-oneplus-sdm845: new aport (MR 1221)
Mainline kernel for SDM845 powered OnePlus devices (OnePlus 6 / 6T)
2020-05-19 20:03:29 +03:00
knuxify 1cf1f79677 samsung-baffinlite: fix flash values (MR 1243) 2020-05-19 19:17:31 +03:00
timbz 64201d3a66 samsung-i9100: fix flashing rootfs (MR 1255) 2020-05-19 18:35:44 +03:00
timbz 1106c234fe samsung-kylepro: fix flashing rootfs (MR 1254) 2020-05-19 18:27:34 +03:00
Eli Riggs 3993e7197e linux-xiaomi-willow: downstream changed url, point to mirror instead (MR 1252) 2020-05-19 13:35:43 +03:00
Ruby Iris Juric 3d98f8ba79 cross/gcc-*: upgrade to 9.3.0-r2 (MR 1253)
Bring the GCC packages up to date with upstream.
Fixes libstdc++ unsatisfiable constrains related error messages.

Upstream commits:
- https://gitlab.alpinelinux.org/alpine/aports/-/commit/1069d8331c7125eb84994d624d45579a660acc41
- https://gitlab.alpinelinux.org/alpine/aports/-/commit/e296f565dbf916871242d0551922984f4e2e8b8c

[ci:skip-build]
2020-05-18 19:55:09 +03:00
Максим 2886f1d445 fly-iq4404: new device (Fly Spark) (MR 1213) 2020-05-17 20:47:20 +03:00
Jeremy O'Brien 8f8ef59133 motorola-channel: add mdss patch fix xorg (MR 1239) 2020-05-17 19:39:32 +03:00
Martijn Braam 05969fc3bc main/postmarketos-ui-phosh: enable iio-sensor-proxy (MR 1229) 2020-05-17 15:09:54 +02:00
Bart Ribbers 557a83d1ca pine64-pinephone: move to community (MR 1175)
[ci:skip-build]: already built successfully in CI
2020-05-17 15:00:12 +02:00
Andrew Gigena df3196f548 sony-mango: new device (Sony Ericsson Xperia Mini Pro) (MR 1206)
[ci:skip-build]: already built successfully in CI
2020-05-17 13:56:22 +02:00
Bart Ribbers 853cfaf381 main/pure-maps: new aport (MR 593) 2020-05-17 10:50:33 +02:00
Bart Ribbers 8398fa0c86 main/qml-module-clipboard: new aport (MR 593) 2020-05-17 10:50:31 +02:00
Bart Ribbers 27ebefefb9 main/mapbox-gl-qml: new aport (MR 593) 2020-05-17 10:50:27 +02:00
Bart Ribbers a6d909c873 main/mapbox-gl-native: new aport (MR 593) 2020-05-17 10:50:22 +02:00
Oliver Smith 707ff937dd channels.cfg: switch v20.05 to alpine 3.12
x86_64 packages have been built, let's switch:
http://dl-cdn.alpinelinux.org/alpine/v3.12/

There doesn't seem to be a branch on aports.git yet, but it should
appear soon. So it's master for now.

Closes: #582
2020-05-17 07:59:34 +02:00
Danct12 04e9f253fb temp/mesa-git: upgrade to 0_git20200510 (!1217)
Signed-off-by: Danct12 <danct12@disroot.org>
2020-05-16 17:23:04 +02:00
Iskren Chernev d6db7122ec linux-samsung-klte: fix firmware path to match mainline (MR 1214) 2020-05-15 23:22:34 +03:00
Iskren Chernev d0c8d5789c firmware-samsung-klte: put wifi firmware in the correct location (MR 1214) 2020-05-15 23:22:33 +03:00
timbz 16bb203cfc samsung-kylepro: change arch to armv7 (MR 1236) 2020-05-15 16:56:52 +03:00
j.r f094aaddb7 samsung-j5nlte: new device (Samsung Galaxy J5 2015) (MR 1196) 2020-05-13 17:14:19 +02:00
Minecrell 1b2b5a6b97 device/testing/soc-qcom-msm8916: update UCM files (MR 1228)
- Add speaker for samsung-a5u/a3u
2020-05-13 15:52:55 +02:00
Minecrell e950f1215c main/linux-postmarketos-qcom-msm8916: upgrade to 5.7_rc5 (MR 1228)
- Update to Linux 5.7-rc5
- Add voice call audio
- samsung-a3u/a5u: add speaker
- wileyfox-crackling: add notification LED
- bq-paella: add display, touchscreen, buttons
- Initial support for Samsung Galaxy J5 (2015) (SM-J500FN)
- Initial support for Samsung Galaxy J3 (2016) (SM-J320P)
2020-05-13 15:52:55 +02:00
Antoine Fontaine d4a99bc43a main/anbox-image: workaround to make networking work (MR 1230)
Fixes #480.
2020-05-13 15:59:14 +03:00
Anjandev Momi bcfdb0f914 CI: check for pkgrel=0 in new aports (MR 1211)
closes #573
2020-05-13 14:37:09 +03:00
ben clark cca40c66bf main/linux-postmarketos-qcom-msm8974: enable CONFIG_SECCOMP (!1218)
fixes an "Invalid argument" when running a flatpak
2020-05-11 21:50:57 +02:00
Antoine Fontaine b6d8b5893f main/linux-postmarketos-allwinner: add anbox support again (!1222)
fix regression caused by
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1205
and closes
https://gitlab.com/postmarketOS/pmaports/-/issues/583.
2020-05-11 20:27:00 +02:00
Minecrell 94e11e17e9 pine64-pinephone: align more closely to ALSA UCM specification (MR 1204)
Some of the recommendations have changed upstream and a few devices
should be called differently now. The following changes are made:

  - Headphone -> Headphone*s*
    (https://github.com/alsa-project/alsa-lib/blob/29041c522071172af2c6bf086b3a0c19510a6660/include/use-case.h#L136)
  - DigitalMic -> Mic
    (https://github.com/alsa-project/alsa-lib/commit/1ad660ddeecb2a364f1ca62aa60f256f7029cfdc)
  - HeadsetMic -> Headset
    (https://github.com/alsa-project/alsa-lib/blob/29041c522071172af2c6bf086b3a0c19510a6660/include/use-case.h#L137)
  - Add .conf suffix for verb configurations
  - Set Playback/CaptureChannels as integer, not as string
  - Remove empty Enable/DisableSequence sections
    (https://github.com/alsa-project/alsa-ucm-conf/commit/d6a150d34f6e3a327215ad3452cfcfe164671717)
2020-05-11 10:18:53 +02:00
Oliver Smith 31804500cc .build.postmarketos.org/submit.py: remove
Moved to the build.postmarketos.org repository.

Related: https://gitlab.com/postmarketOS/build.postmarketos.org/-/commit/bfa0bbd1958f1d045dd31c58350a0a7940b32e48
2020-05-10 18:17:32 +02:00
Daniele Debernardi ec015cce8a firmware/firmware-samsung-espresso10: fix linting issues (MR 900)
[ci:ignore-count]
2020-05-10 13:45:28 +02:00
Daniele Debernardi ad18899654 firmware/firmware-samsung-hero: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi 24bd4821be firmware/firmware-samsung-klte: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi a5bef20890 firmware/firmware-xiaomi-armani: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi e3a9469c26 firmware/firmware-sony-rhine: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi a39ab2d1e5 firmware/firmware-adreno: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi 3e78b53712 firmware/firmware-samsung-i927: fix linting issues (MR 900) 2020-05-10 13:44:26 +02:00
Daniele Debernardi 0ebbed0292 firmware/firmware-samsung-p4wifi: fix linting issues (MR 900) 2020-05-10 13:44:25 +02:00
Daniele Debernardi 008c83138e firmware/firmware-chuwi-hi10plus: fix linting issues (MR 900) 2020-05-10 13:44:25 +02:00
Daniele Debernardi 6a9a0e6152 firmware/firmware-htc-flounder: fix linting issues (MR 900) 2020-05-10 13:44:25 +02:00
Daniele Debernardi fed8f639be firmware/firmware-oppo-find-7a: fix linting issues (MR 900) 2020-05-10 13:44:25 +02:00
Daniele Debernardi edff864a8c firmware/firmware-samsung-i9195: fix linting issues (MR 900) 2020-05-10 13:44:25 +02:00
Daniele Debernardi bc88606361 firmware/firmware-lenovo-karate: fix linting issues (MR 900) 2020-05-10 13:44:20 +02:00
Martijn Braam dca8043c33 main/linux-postmarketos-allwinner: cleanup modules (MR 1205)
Disable modules for hardware that's impossible to connect to the
allwinner devices or older than the 90's this shrinks the size from 380
to 250MB.

Then it enables module compression so it shrinks from 250MB to 57MB.

Then the module stripping was enabled, shrinking it to 20MB

[ci:skip-build]: already built successfully in CI
2020-05-08 22:18:22 +02:00
Bart Ribbers 995af7fb72 kde/plasmatube: new aport (MR 1157) 2020-05-08 10:55:14 +03:00
Alexey Min 83cc8d519c cross/busybox-static-*: upgrade to 1.31.1-r15
upstream commit https://gitlab.alpinelinux.org/alpine/aports/-/commit/38e72c7bec31c9038ade5553b2ee2bc7c81bc665
2020-05-07 14:01:02 +03:00
eli ffcc6acd0c xiaomi-willow: new device (Xiaomi Redmi Note 8T) (MR 1197)
Add support for the Xiaomi Redmi Note 8t.
Works: UART, USB RNDIS, Weston on DRM, touchscreen
Doesn't: fbdev, everything else
2020-05-05 14:58:55 +03:00
Alexey Min 38de3498aa linux-xiaomi-lavender: remove unneeded python2 dep (MR 1202)
compiles fine without it

[ci:skip-build] will never finish in time
2020-05-03 16:32:13 +03:00
Alexey Min da9a6ab4a7 linux-nokia-frt: python3 compatibility (MR 1202) 2020-05-03 16:32:10 +03:00
Alexey Min c06bb44624 linux-planet-geminipda: py3 compat and use out-of-source build (MR 1202) 2020-05-03 16:32:06 +03:00
Alexey Min f919b3e05a linux-huawei-cameron: py3 compat and use out-of-source build (MR 1202) 2020-05-03 16:32:02 +03:00
Alexey Min db671ccead linux-xiaomi-ido: python3 compatibility (MR 1202) 2020-05-03 16:31:40 +03:00
Luca Weiss 7e6d63b1f2 sony-sirius: add modules to initfs (MR 1140) 2020-05-03 12:05:25 +02:00
Luca Weiss b07717d564 main/linux-postmarketos-qcom-msm8974: updates for various devices (MR 1140)
* Support for sharp ls052t3sx02 video mode panel and max1187x
  touchscreen used in Sony Xperia Z2 (sirius)
* Support for display in OnePlus One (bacon)
* Support for touchscreen, touchkeys and notification led in Samsung
  Galaxy S5 (klte)
2020-05-03 12:05:22 +02:00
Bart Ribbers cde570c036 temp/ktp-common-internals: drop, required version is upstream 2020-05-03 10:29:30 +02:00
Minecrell a85db1dc7b *: remove "Contributor:" lines from APKBUILDs (MR 1203)
At the moment we have Contributor: lines on some packages (but not all of them),
but often they don't represent the actual contributors to the package very well.
E.g. when we added them retroactively to the device packages we only added
the initial contributor (which isn't necessarily the person
who made most of the work for a device...)

The Git history is the most representative source for figuring out
who contributed to a package, so there is no reason to duplicate that
into the APKBUILD.

[skip ci]: way too many packages
2020-05-02 21:45:25 +03:00
Minecrell c05987b8d7 asus-me176c: move to community (MR 1185) 2020-05-02 17:38:31 +02:00
Arnav Bhatt c1f9e6e36f samsung-ms013g: new device (Samsung Galaxy Grand 2) (MR 1200) 2020-05-02 13:17:48 +03:00
Jean-Étienne Tremblay 965150f646 motorola-channel: new device (MR 1195)
Booting, with USB network, display, touch screen, and wifi.
2020-05-02 10:19:40 +02:00
Hadi Charara f45890b631 amazon-suez: new device (MR 1193)
Boots into weston with touch support.
2020-04-30 12:37:50 +02:00
Bart Ribbers c6b10c02a1 temp/qt5-qtbase: drop, changes upstreamed 2020-04-30 08:36:08 +02:00
Bart Ribbers 71092aa842 temp/qt5-qtdeclarative: drop, changes upstreamed 2020-04-30 08:35:57 +02:00
Bart Ribbers 61875c48af temp/py3-qt5: drop, changes upstreamed 2020-04-30 08:35:21 +02:00
Audun-Marius Gangstø 6159e2837c sony-leo: new device (MR 1190)
Initial effort for sony-leo. It has working touch, screen and
wifi.
2020-04-30 00:00:03 +03:00
Michael Orishich 1c60afc94d semc-smultron: switch to armv7 and fix boot issues (MR 768) 2020-04-29 21:03:51 +03:00
Venji10 a7553d6f3c xiaomi-beryllium: new device (MR 1156)
xiaomi-beryllium: update checksums

xiaomi-beryllium: set mainline pkgver to 5.2.0

fix linter

xiaomi-beryllium: add firmware package

firmware-xiaomi-beryllium: fix linting warnings

firmware-xiaomi-beryllium: fix linting warnings

xiaomi-beryllium: set rootfs sector size to 4096

xiaomi-beryllium: fix deviceinfo checksum

Apply suggestion to device/testing/device-xiaomi-beryllium/deviceinfo

Apply suggestion to device/testing/device-xiaomi-beryllium/deviceinfo

xiaomi-beryllium: unquote pkgnames

xiaomi-beryllium: fix checksums

[ci:skip-build]: already built successfully in CI
2020-04-26 20:05:55 +02:00
Bruce Blore 0bcd26fb0e samsung-espresso10: Change arch from armhf to armv7 (MR 1181)
[ci:skip-vercheck]
2020-04-26 20:21:48 +03:00
Antoine Fontaine f54c2b67c3 linux-samsung-chagallwifi: use pmb:cross-native (MR 1187)
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1169 got
merged a bit too early (that's not a breaking change though)

[ci:skip-vercheck]
[ci:skip-build]
2020-04-25 13:42:46 +03:00
Minecrell c3dcc196ea *: remove quotes around pkgname (MR 1186)
TP:[AL3]:APKBUILD:5:pkgname must not be quoted

[skip ci]: won't finish within 3 hours
2020-04-25 12:06:47 +02:00
Antoine Fontaine c1628ecdce cross/arch-bin-masquerade, main/anbox-image, linux-*: use pmb:cross-native (MR 1169)
https://gitlab.com/postmarketOS/pmbootstrap/-/issues/1910

[skip ci]: CI fails because it can't download every release tarball to
           check checksums in 3h.
2020-04-25 10:50:38 +02:00
David Heidelberg 4743398054 testing/device-*-*: drop libdrm-grate leftovers (MR 1184)
Normal libdrm is enough for everything now.

Signed-off-by: David Heidelberg <david@ixit.cz>
2020-04-25 09:55:08 +02:00
Alexey Min af415ffd65 temp/qt5-qtbase: rebuild against icu-67.1
Follow-up to https://gitlab.alpinelinux.org/alpine/aports/-/commit/cbc6b9fcd706f2a84d4c36c5bdd68a09bbc3516f

Build locally for both armv7 and aarch64 fine.

[ci:skip-build] x86_64 build is disabled anyway

Signed-off-by: Alexey Min <alexey.min@gmail.com>
2020-04-25 03:06:36 +03:00
km2 510c6ecee7 device-zte-p731a20: add soc-sprd-audio dependency (MR 1182) 2020-04-25 01:45:46 +03:00
Minecrell fa48c74443 device/testing/linux-asus-me176c: upgrade to 5.4.35 (MR 1180)
[ci:skip-build] Already built on CI in MR
2020-04-25 01:40:32 +03:00
David William Richmond Davies-Jones bef5dc9ae8 samsung-chagallwifi: new device (MR 1174)
This gets the Samsung Galaxy Tab S 10.5 Wifi (samsung-chagallwifi) working at a very basic level.
Full instructions of how to flash the device etc are already on the wiki at
https://wiki.postmarketos.org/wiki/Samsung_Galaxy_Tab_S_10.5_WiFi_(chagallwifi)
2020-04-23 18:37:24 +02:00
David Heidelberg c26e8fc454 temp/libdrm-grate: library is inside mesa/opentegra/vdpau-tegra, drop (MR 1179)
All parts using it already has it inside, no standalone build required.

Signed-off-by: David Heidelberg <david@ixit.cz>
2020-04-23 18:28:20 +02:00
David Heidelberg 02e1144b23 temp/libvdpau-tegra: bump version, remove libdrm-grate dependency (MR 1179)
Signed-off-by: David Heidelberg <david@ixit.cz>
2020-04-23 18:28:20 +02:00
David Heidelberg 4b011c82cf temp/xf86-video-opentegra: update, remove dep on libdrm-grate (MR 1179)
- remove dep on libdrm-grate, libdrm is enough
- add armv7 (keep deprecated armhf for now)

Signed-off-by: David Heidelberg <david@ixit.cz>
2020-04-23 18:28:19 +02:00
Antoine Fontaine 5adbde19ba main/postmarketos-ui-kodi: disable armhf build (MR 1178)
fixes https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1176

[ci:skip-vercheck] does not require rebuild
2020-04-23 15:57:39 +03:00
Antoine Fontaine dc9160c2af main/postmarketos-ui-kodi: fix startup and missing deps (MR 1176)
fixes the desktop file:
* add -- to make cage ignore kodi's arguments
* add --standalone to kodi's arguments

update the dependencies:
* add upower as kodi tries to communicate with it to read battery status
* add pulseaudio as kodi complains it is missing
* add elogind as it is required for cage to run
* remove xorg-server

Fixes #469
2020-04-23 11:31:24 +03:00
lazzardo 0b0f1a8c44 bq-paella: new device (BQ Aquaris X5 Cyanogen Edition) (MR 1159)
bq-paella: new device (BQ Aquaris X5 Cyanogen Edition)

bq-paella: new device (BQ Aquaris X5 Cyanogen Edition)

bq-paella: new device (BQ Aquaris X5 Cyanogen Edition)

bq-paella: new device (BQ Aquaris X5 Cyanogen Edition)
2020-04-22 22:10:04 +02:00
Minecrell bfe15c5c85 main/linux-postmarketos-qcom-msm8916: upgrade to 5.7-rc2 (!1167)
- Update to Linux 5.7-rc2
- Initial support for BQ Aquaris X5 (bq-paella/picmt)
- Add speaker for samsung-gt510wifi/matissevewifi
- Add flash LED for wileyfox-crackling
2020-04-22 20:12:31 +02:00
Minecrell 53a58e9bd7 device/testing/soc-qcom-msm8916: upgrade (!1167)
- Enable speaker on samsung-gt510wifi/matissevewifi
- Replace deprecated mesa-dri-freedreno package with mesa-dri-gallium
- Build natively (this is just a trivial copy)
2020-04-22 20:12:31 +02:00
Martijn Braam 7fe23a3b33 device-pine64-pinephone: update for 5.6 kernel (!1143) 2020-04-22 12:06:38 +02:00
Martijn Braam e5ae9d8e2d main/linux-postmarketos-allwinner: update to 5.6.0_git20200410 (!1143) 2020-04-22 12:06:35 +02:00
Martijn Braam 8782f12e22 temp/u-boot-rockpro64: upgrade to 2020.04 (!1171)
* Upgrade to the released stable version of upstream u-boot.
* Added patch to make the led on the Pinebook Pro light up earlier
* Added the update-u-boot script from Alpine with updates for the rk3399
  devices
2020-04-22 10:34:24 +02:00
Martijn Braam f8adf2b16c device-pine64-pinebookpro: fix ucm paths (!1172) 2020-04-21 20:28:59 +02:00
Oliver Smith 3f613360c4 channels.cfg: adjust to latest reference
Remove mirrordir_pmos and change stable branch name to v20.05.

Related: https://gitlab.com/postmarketOS/pmbootstrap/-/merge_requests/1912#note_327544608
2020-04-20 21:57:22 +02:00
HenriDellal 467ed09ec3 nobby-230: update device- and linux- packages (MR 1165)
Changes:
- Add audio package dependency;
- Replace panel driver with one from stock kernel (thanks to bnister);
- Change keyboard layout so it's fully supported in X11.

[ci:skip-build]: already built successfully in CI
2020-04-20 20:38:42 +02:00
Martijn Braam a134f3fc22 device/pine64-{pinebookpro,rockpro64}: new device (MR 882)
[ci:skip-build]
2020-04-20 14:39:00 +03:00
Martijn Braam 02435b0b41 temp/u-boot-rockpro64: new aport (MR 882) 2020-04-20 14:09:42 +03:00
Martijn Braam f9a19babd6 temp/arm-trusted-firmware: new aport (MR 882) 2020-04-20 14:09:39 +03:00
Raatty 57ca8a9987 main/lightdm-mobile-greeter: upgrade to version 2 (MR 1161) 2020-04-20 05:07:27 +03:00
Federico Amedeo Izzo b887fb2139 bq-gohan: new device (BQ Aquaris X5 Plus) (MR 1164)
[ci:skip-build] Already built successfully on CI in MR
2020-04-19 16:14:50 +03:00
Julian Braha 606b723450 motorola-ali: new device (Motorola Moto G6) (MR 1071)
[ci:skip-build] already built on CI in MR
2020-04-19 02:17:28 +03:00
HenriDellal 9e923e0561 testing/soc-sprd-audio: new package (MR 1162)
This commit adds initial support for sprdphone sound card and sc8830-audio
device. sc8830-audio is common audio device used in different Spreadtrum SoCs.
This configuration was tested on Nobby 230 (SC7715GA), Finepower F1 (SC7731C),
Samsung Galaxy J1 mini (SC8830). It should work for many other SoCs as well.
Now, if someone wants to have somewhat working audio, they just have to add
soc-sprd-audio-sc8830 package to depends of device- package and that's it.
soc-sprd-audio is only for generic configuration (set sprdphone as default
sound card and provide headphone jack detection).
What works:
- Speaker and headphones output;
- Headphone jack detection (based on udev rules from device-xiaomi-santoni);
- Microphone works on both headphones and device itself.
Spotted issues:
- Recording volume is low;
- Recording is done only on right channel.
2020-04-18 23:39:36 +03:00
Daniele Debernardi 5ead73e86c CI: use pmbootstrap lint for checking packages (MR 1132) 2020-04-18 11:50:02 +02:00
Daniele Debernardi 233ec0d21c CI: return output of common.run_pmbootstrap (MR 1132) 2020-04-18 11:49:57 +02:00
Niklas Cathor 99d6f504e6 samsung-kminilte: disable v4l udev rules (MR 1160)
With the camera driver (VIDEO_EXYNOS_FIMC_IS) enabled, the system
would randomly panic during startup. Even though the camera does
not currently work on this system, the driver is nonetheless enabled
to make the flashlight work.

The panics seem to be triggered by udev's "v4l_id", which queries
capabilities of video4linux devices.

This change adds a udev rules file, to override the behavior of udev's
default rules for v4l.
2020-04-16 10:06:55 +02:00
Minecrell e129e3ddb0 device/device-<msm8916-mainline>: minor cleanup and fixes (MR 1125)
- Cleanup kernel cmdline:
  - earlycon can automatically detect the memory address of
    the UART controller based on the device tree
  - the comma before n8 in console=ttyMSM0,115200,n8 is actually
    invalid so this was not parsed correctly. However, it is the
    default anyway so we might as well remove it completely

- Configure deviceinfo_getty for all devices

- Workaround probe issue of display by adding a softdep on the panel
  module. This allows the display to work when excluding proprietary
  firmware (just a weird side effect, see comment in modprobe.conf...)
2020-04-14 12:48:04 +02:00
Minecrell 9444bb309c wileyfox-crackling: remove downstream kernel (MR 1125)
The device port gets increasingly hard to maintain with all the differences
between the downstream and the mainline kernel. Especially deviceinfo
has quite some duplication only because the downstream kernel needs to be
handled as well.

The mainline port has much more features working. The only limitation
compared to the downstream kernel is the lack of a proper charging driver.
But even on downstream postmarketOS the battery driver is not working
properly for some reason.

For charging, a downstream installation in recovery seems more suitable
at the moment. Eventually we will build some functionality into the
bootloader to load a simple downstream initramfs when the device gets
booted for charging.
2020-04-14 12:42:58 +02:00
Danct12 7282dcdcbb linux-xiaomi-lavender: add patch to fix framebuffer on X11 (MR 1142)
Signed-off-by: Danct12 <danct12@disroot.org>
[ci:skip-build]
2020-04-14 01:40:23 +02:00
Antoine Fontaine 9f6c41c832 main/postmarketos-ui-xfce4: set XDG_RUNTIME_DIR (MR 1151)
working towards #458. See [1] for an explaination

 [1]: https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1131#note_318923711
2020-04-14 01:33:08 +02:00
Federico Amedeo Izzo 41735b5190 oneplus-bacon: enable mainline kernel (MR 1137)
The dts for oneplus bacon was already present in linux-postmarketos.

I adjusted the APKBUILD and deviceinfo to be able to use both downstream and mainline kernels
2020-04-14 01:15:42 +02:00
lazzardo 424266950b bq-picmt: new device (BQ Aquaris X5) (MR 1134) 2020-04-14 00:51:28 +02:00
Oliver Smith 8f79b6f5b2 CI: use install-pmbootstrap.sh from ci-common repo (MR 1147)
This script is used by multiple repositories by now, let's make sure we
only have one place where we need to maintain it. The version in
ci-common is shellchecked and displays less output for 'pmbootstrap
init' again (unless it fails, then it shows the whole log).
2020-04-14 00:43:44 +02:00
Oliver Smith 1ca30ec53f .bpo/install_pmbootstrap.sh: remove (MR 1147)
This file is not used anymore by the bpo code, so remove it.
2020-04-14 00:43:44 +02:00
rxbnDE 0fa3ead28e leeco-s2: add firmware, fix fbdev, initial support for audio (MR 1129) 2020-04-13 22:52:04 +03:00
rxbnDE 95498daf1f linux-leeco-s2: upgrade to 3.10.108 (MR 1129) 2020-04-13 22:52:02 +03:00
rxbnDE 86d0ff673f firmware-leeco-s2: new aport (MR 1129) 2020-04-13 22:51:58 +03:00
RedFox arch 8a99b46f8d xiaomi-cacus: new device (MR 1145)
Splash logo displayed.
SSH over USB works,
Weston works.
Port build scripts to python3.
2020-04-13 21:02:13 +03:00
Niklas Cathor 5acf41a60e linux-samsung-kminilte: add flashlight support (MR 1150)
These changes enable the flashlight LED driver (fled_rt5033), and add
support for switching the light on and off from userspace.

In more detail:

* CONFIG_FLED_RT5033 enables the flashlight driver
* CONFIG_VIDEO_EXYNOS_FIMC_IS is required for the flashlight driver to
  compile (there seems to be a lot of cross-dependency between the two
  drivers)
* patch 0001 fixes the use of usleep (which no longer exists), to make
  the kernel compile with those settings

With these changes, /sys/class/flashlight/rt-flash-led shows up in
sysfs, but it's only possible to control the brightness of the LED,
not to switch it on.

Patch 0002 is what actually makes the flashlight usable: it makes
the /sys/class/flashlight/rt-flash-led/mode file writable.

Writing "Torch" there enables the flashlight, writing "Off" disables
it again. "Mixed" mode works like "Torch" as well. I have not figured
out yet how to trigger the camera flash, so setting the mode to
"Flash" is possible, albeit pointless.
2020-04-13 19:08:19 +03:00
Dolphin von Chips ef7f4514a7 cross/grub-efi-x86: upgrade to 2.04-r1 2020-04-13 12:40:23 +05:00
Niklas Cathor 6e75bf0e40 main/postmarketos-mkinitfs: fix mkbootimg call for devices w/o dtb (MR 1148)
Don't pass empty arguments to mkbootimg, when _second or _dt are not set.
2020-04-12 19:51:22 +02:00
Oliver Smith 961e14dcac cross/musl-*: upgrade to 1.1.24-r6 2020-04-12 15:27:26 +02:00
2983 changed files with 1013682 additions and 13990 deletions

No files matched your search

-84
View File
@@ -1,84 +0,0 @@
#!/usr/bin/env python3
# Copyright 2019 Martijn Braam
# Copyright 2019 Oliver Smith
# SPDX-License-Identifier: GPL-3.0-or-later
import json
import os
import requests
# Require environment vars
for key in ["BPO_API_ENDPOINT",
"BPO_API_HOST",
"BPO_ARCH",
"BPO_BRANCH",
"BPO_JOB_ID",
"BPO_JOB_NAME",
"BPO_TOKEN_FILE",
"BPO_PAYLOAD_FILES", # one file per line
"BPO_PAYLOAD_IS_JSON", # set to "1" to enable
"BPO_PKGNAME",
"BPO_VERSION", # $pkgver-r$pkgrel
]:
if key not in os.environ:
print("ERROR: missing environment variable: " + key)
exit(1)
# Parse and check files
files = os.environ["BPO_PAYLOAD_FILES"].split("\n")
for path in files:
if not os.path.exists(path):
print("ERROR: file not found: " + path)
exit(1)
# Load token
with open(os.path.expanduser(os.environ["BPO_TOKEN_FILE"]),
encoding="utf-8") as handle:
token = handle.read().strip()
# Load other env vars
url = (os.environ["BPO_API_HOST"] + "/api/job-callback/" +
os.environ["BPO_API_ENDPOINT"])
is_json = (os.environ["BPO_PAYLOAD_IS_JSON"] == "1")
# Prepare HTTP headers
headers = {"X-BPO-Arch": os.environ["BPO_ARCH"],
"X-BPO-Branch": os.environ["BPO_BRANCH"],
"X-BPO-Job-Id": os.environ["BPO_JOB_ID"],
"X-BPO-Job-Name": os.environ["BPO_JOB_NAME"],
"X-BPO-Token": token,
"X-BPO-Pkgname": os.environ["BPO_PKGNAME"],
"X-BPO-Version": os.environ["BPO_VERSION"]}
# Submit JSON
if is_json:
if len(files) > 1:
print("ERROR: json mode doesn't support multiple input files")
exit(1)
# Send contents of file as HTTP POST with json payload
with open(files[0], encoding="utf-8") as handle:
data = handle.read()
data = json.loads(data)
print("Sending JSON to: " + url)
response = requests.post(url, json=data, headers=headers)
else: # Submit blobs
blobs = []
for path in files:
print("Appending: " + path)
filename = os.path.basename(path)
# Send contents of file as HTTP POST with multipart/formdata payload
blobs.append(("file[]", (filename,
open(path, "rb"),
"application/octet-stream")))
print("Uploading to: " + url)
response = requests.post(url, files=blobs, headers=headers)
if response.status_code > 399:
print("Error occurred:")
print(response.content.decode())
exit(1)
else:
print(response.content.decode())
+6 -8
View File
@@ -18,7 +18,7 @@ stages:
# https://docs.gitlab.com/ee/ci/merge_request_pipelines/index.html#excluding-certain-jobs
.only-default: &only-default
only:
- v20.05
- master
- merge_requests
- tags
@@ -109,7 +109,7 @@ kernel-kconfig:
stage: lint
only:
refs:
- v20.05
- master
- merge_requests
changes:
- device/*/linux-*/config-*
@@ -150,9 +150,8 @@ mr-settings:
build-x86_64:
extends: .build
# disabled on v20.05
# build-x86:
# extends: .build
build-x86:
extends: .build
build-aarch64:
extends: .build
@@ -160,6 +159,5 @@ build-aarch64:
build-armv7:
extends: .build
# disabled on v20.05
# build-armhf:
# extends: .build
build-armhf:
extends: .build
+4
View File
@@ -27,6 +27,10 @@ def verify_checksums(packages, arch):
" not here.")
return
if len(packages) == 0:
print("no packages changed, not doing any checksums verification")
return
common.run_pmbootstrap(["build_init"])
common.run_pmbootstrap(["--details-to-stdout", "checksum", "--verify"] +
list(packages))
+1
View File
@@ -16,6 +16,7 @@ fi
# Shell: shellcheck
sh_files="
./main/postmarketos-base/firmwareload.sh
./main/postmarketos-base/elogind-system-suspend-disable-conditions.hook
./main/postmarketos-mkinitfs/init.sh.in
./main/postmarketos-mkinitfs/init_functions.sh
./main/postmarketos-mkinitfs/mkinitfs.sh
+39
View File
@@ -176,6 +176,45 @@ def test_aports_device_kernel(args):
path)
def test_aports_unreferenced_files(args):
"""
Raise an error if an unreferenced file is found
"""
for apkbuild_path in glob.iglob(args.aports + "/**/APKBUILD", recursive=True):
print(f"Checking {apkbuild_path}...")
apkbuild = pmb.parse.apkbuild(args, apkbuild_path)
# Collect install files from subpackages
subpackage_installs = []
if apkbuild["subpackages"]:
for subpackage in apkbuild["subpackages"].values():
if not subpackage:
continue
try:
subpackage_installs += subpackage["install"]
except KeyError:
continue
# Collect trigger files
trigger_sources = []
if apkbuild["triggers"]:
for trigger in apkbuild["triggers"]:
trigger_sources.append(trigger.split("=")[0])
dirname = os.path.dirname(apkbuild_path)
for file in glob.iglob(dirname + "/**", recursive=True):
rel_file_path = os.path.relpath(file, dirname)
# Skip APKBUILDs and directories
if rel_file_path == "APKBUILD" or os.path.isdir(file):
continue
if rel_file_path not in apkbuild["source"] \
and rel_file_path not in apkbuild["install"] \
and rel_file_path not in subpackage_installs \
and rel_file_path not in trigger_sources:
raise RuntimeError(f"{apkbuild_path}: found unreferenced file: {rel_file_path}")
def test_aports_ui(args):
"""
Raise an error if package in _pmb_recommends is not found
+15
View File
@@ -0,0 +1,15 @@
# Reference: https://postmarketos.org/channels.cfg
[channels.cfg]
recommended=edge
[edge]
description=Rolling release channel
branch_pmaports=master
branch_aports=master
mirrordir_alpine=edge
[stable]
description=Stable release channel (first beta v20.05, does not have many devices yet)
branch_pmaports=v20.05
branch_aports=3.12-stable
mirrordir_alpine=v3.12
-29
View File
@@ -1,29 +0,0 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=console-keyboard-basic
pkgver=0_git20200104
pkgrel=0
pkgdesc="A basic console keyboard"
arch="all"
url="https://github.com/Daniel-Abrecht/console-keyboard-basic"
license="GPL-3.0-or-later"
options="!check" # no testsuite
depends="console-keyboard-multiplexer"
makedepends="ncurses-dev libconsolekeyboard-dev"
# Source
_commit="005fd482e9423b5d45743f098e52ba25255bffc0"
source="
$pkgname-$_commit.tar.gz::https://github.com/Daniel-Abrecht/$pkgname/archive/$_commit.tar.gz
"
builddir="$srcdir/$pkgname-$_commit"
build() {
make
}
package() {
make install-all DESTDIR="$pkgdir"
ln -sf /usr/bin/console-keyboard-basic $pkgdir/usr/bin/console-keyboard
}
sha512sums="6e4ffbfa6f44a2a7a90e7bafc3944e5c34c007ae9c9ab0d7cd26930422af9fb381ece6e4357b4bd2568d319393491130e880ebc0861c729fff482c02cce0114e console-keyboard-basic-005fd482e9423b5d45743f098e52ba25255bffc0.tar.gz"
@@ -1,32 +0,0 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=console-keyboard-multiplexer
pkgver=0_git20200104
pkgrel=0
pkgdesc="An on screen keyboard for terminals"
arch="all"
url="https://github.com/Daniel-Abrecht/console-keyboard-multiplexer"
install="$pkgname.post-install"
license="AGPL-3.0-or-later"
options="!check" # no testsuite
depends="libconsolekeyboard kbd terminus-font"
makedepends="libconsolekeyboard-dev libttymultiplex-dev libexecinfo-dev"
# Source
_commit="e304969224ba79cdac9e6715fd329a8af278cc33"
source="
$pkgname-$_commit.tar.gz::https://github.com/Daniel-Abrecht/$pkgname/archive/$_commit.tar.gz
ckmvt
"
builddir="$srcdir/$pkgname-$_commit"
build() {
make
}
package() {
make install-bin DESTDIR="$pkgdir"
cp -f $srcdir/ckmvt $pkgdir/usr/bin/ckmvt
}
sha512sums="be8e3a892409ee316ee0478c7d46249ab5eefffaffbe11215f593beab2b0da5ae24392e407748a50d567eaffb9cdcd847e24f077030447fb4753470bc75b8cf4 console-keyboard-multiplexer-e304969224ba79cdac9e6715fd329a8af278cc33.tar.gz
1c56ec846de906ec63446aa07cb40d0e64c7e609e5756497aa63fef6b3b071d0f098071e42450e973b6a7bad670771b1c680e5788b987b852c471d074f909ac1 ckmvt"
@@ -1,24 +0,0 @@
#!/bin/sh
# as for right now, it seems that postmarketOS runs without any color :(
export TERM=linux
nr="$(printf "%s" "$1" | /bin/sed 's/^tty//')"; shift
case "$nr" in
*[!0-9]*)
echo "Usage: $0 vtnumber"
exit 1
;;
esac
tty="$(tty)"
if [ "$(tty)" != "/dev/tty$nr" ]
then exec /sbin/getty -n -l "$0" 38400 "tty$nr" linux
fi
# nicer font (requires terminus-font to be installed)
setfont /usr/share/consolefonts/ter-u24b.psf.gz
exec /usr/bin/console-keyboard-multiplexer -w : -l "CKM$nr" -- login
@@ -1,5 +0,0 @@
#!/bin/sh
echo -e "\n\nTo run getty with keyboard on startup, you'll need to edit /etc/inittab"
echo -e "For example, you want the keyboard on tty1, this is how the entry should be:\n"
echo -e "tty1::respawn:/usr/bin/ckmvt 1\n\n"
-28
View File
@@ -1,28 +0,0 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=libconsolekeyboard
pkgver=1.0.0_git20191011
pkgrel=0
pkgdesc="A terminal multiplexer library"
arch="all"
url="https://github.com/Daniel-Abrecht/console-keyboard-multiplexer/tree/libconsolekeyboard"
license="LGPL-3.0-or-later"
subpackages="$pkgname-dev"
options="!check" # fails without a proper devfs
# Source
_commit="73611fa86c8a4c375102a4251cb795b30758e32b"
source="
console-keyboard-multiplexer-$_commit.tar.gz::https://github.com/Daniel-Abrecht/console-keyboard-multiplexer/archive/$_commit.tar.gz
"
builddir="$srcdir/console-keyboard-multiplexer-$_commit"
build() {
make
}
package() {
make install DESTDIR="$pkgdir"
}
sha512sums="3f2bd8aa62489068b02e4ac985a69a84ad12a59beabecca0a5a8cc0faba4250ff34e81be9d3dde8861bf9907f7137bea976e036eec286e0fe0bfdb2505e1f0ba console-keyboard-multiplexer-73611fa86c8a4c375102a4251cb795b30758e32b.tar.gz"
-35
View File
@@ -1,35 +0,0 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=libttymultiplex
pkgver=0.0.1_git20200204
pkgrel=0
pkgdesc="A terminal multiplexer library"
arch="all"
url="https://github.com/Daniel-Abrecht/libttymultiplex"
license="MIT AND AGPL-3.0-or-later"
depends="ncurses"
makedepends="bash ncurses-dev"
subpackages="$pkgname-dev"
options="!check" # fails without a proper devfs
# Source
_commit="91dfd9c6de24314977dd537d25b82cdb994e96ec"
source="
$pkgname-$_commit.tar.gz::https://github.com/Daniel-Abrecht/$pkgname/archive/$_commit.tar.gz
"
builddir="$srcdir/$pkgname-$_commit"
build() {
make -j1 # workaround for ld issues
}
package() {
make install DESTDIR="$pkgdir"
}
check() {
make test
}
sha512sums="955c48003b5612616c40afe2f832a7a0035afd71602a161d71c34d80c886215211185f6a3e13382d235b2936f2459cda105d2c2438c1f750d63de9e7d9304143 libttymultiplex-91dfd9c6de24314977dd537d25b82cdb994e96ec.tar.gz"
@@ -0,0 +1,86 @@
From b1faf99f3e546df2cd302bb1ad36a2078224fe8b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 30 Oct 2020 16:59:48 -0600
Subject: [PATCH] Revert "PR25882, .gnu.attributes are not checked for shared
libraries"
This reverts commit a8acd6eeb6dc2cc5460ece90f90ebe36b56b20ba.
---
bfd/ChangeLog | 6 ------
bfd/elf32-tic6x.c | 3 ---
ld/ChangeLog | 6 ------
ld/ldlang.c | 9 ++++-----
4 files changed, 4 insertions(+), 20 deletions(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9fac12538a..b5461494e8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1422,12 +1422,6 @@
accessing root.u.def of symbols. Also check root.u.def.section
is non-NULL. Reverse tests so as to make the logic positive.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
- Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
-
2020-05-01 Alan Modra <amodra@gmail.com>
PR 25882
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
index b8b916bfd3..91bb6a10b1 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
@@ -3748,9 +3748,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
case Tag_ABI_PIC:
case Tag_ABI_PID:
- /* Don't transfer these tags from dynamic objects. */
- if ((ibfd->flags & DYNAMIC) != 0)
- continue;
if (out_attr[i].i > in_attr[i].i)
out_attr[i].i = in_attr[i].i;
break;
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4eec7d2977..b93452f70c 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1319,12 +1319,6 @@
* testsuite/ld-aarch64/farcall-group.d: New test driver.
* testsuite/ld-aarch64/aarch64-elf.exp: Run the new test.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for
- shared libraries.
-
2020-05-01 Alan Modra <amodra@gmail.com>
* po/BLD-POTFILES.in: Regenerate.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 9977195074..173d8ec349 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -6972,12 +6972,11 @@ lang_check (void)
bfd_printable_name (input_bfd), input_bfd,
bfd_printable_name (link_info.output_bfd));
}
-
- /* If the input bfd has no contents, it shouldn't set the
- private data of the output bfd. */
- else if ((input_bfd->flags & DYNAMIC) != 0
- || bfd_count_sections (input_bfd) != 0)
+ else if (bfd_count_sections (input_bfd))
{
+ /* If the input bfd has no contents, it shouldn't set the
+ private data of the output bfd. */
+
bfd_error_handler_type pfn = NULL;
/* If we aren't supposed to warn about mismatched input
--
2.29.2
+6 -6
View File
@@ -2,11 +2,8 @@
# Generator: pmbootstrap aportgen binutils-aarch64
# Based on: main/binutils
builddir="$srcdir/binutils-2.34"
pkgname=binutils-aarch64
pkgver=2.34
pkgver=2.35.1
pkgrel=1
pkgdesc="Tools necessary to build programs for aarch64 targets"
url="https://www.gnu.org/software/binutils/"
@@ -17,7 +14,9 @@ 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
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" != "$CTARGET" ]; then
pkgname="binutils-$CTARGET_ARCH"
@@ -61,7 +60,8 @@ package() {
sha512sums="2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd binutils-2.34.tar.xz
sha512sums="94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb binutils-2.35.1.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch"
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
642c617db6c6e491f78f053d60f3aa369bad7bf8c1bc7ce267de6cf8fddf6c0d4cf63ce8c8f6e2f225dedbce7cb930d8e87e168fd8f72ca0837c77266ee2b5f8 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch"
@@ -0,0 +1,86 @@
From b1faf99f3e546df2cd302bb1ad36a2078224fe8b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 30 Oct 2020 16:59:48 -0600
Subject: [PATCH] Revert "PR25882, .gnu.attributes are not checked for shared
libraries"
This reverts commit a8acd6eeb6dc2cc5460ece90f90ebe36b56b20ba.
---
bfd/ChangeLog | 6 ------
bfd/elf32-tic6x.c | 3 ---
ld/ChangeLog | 6 ------
ld/ldlang.c | 9 ++++-----
4 files changed, 4 insertions(+), 20 deletions(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9fac12538a..b5461494e8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1422,12 +1422,6 @@
accessing root.u.def of symbols. Also check root.u.def.section
is non-NULL. Reverse tests so as to make the logic positive.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
- Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
-
2020-05-01 Alan Modra <amodra@gmail.com>
PR 25882
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
index b8b916bfd3..91bb6a10b1 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
@@ -3748,9 +3748,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
case Tag_ABI_PIC:
case Tag_ABI_PID:
- /* Don't transfer these tags from dynamic objects. */
- if ((ibfd->flags & DYNAMIC) != 0)
- continue;
if (out_attr[i].i > in_attr[i].i)
out_attr[i].i = in_attr[i].i;
break;
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4eec7d2977..b93452f70c 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1319,12 +1319,6 @@
* testsuite/ld-aarch64/farcall-group.d: New test driver.
* testsuite/ld-aarch64/aarch64-elf.exp: Run the new test.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for
- shared libraries.
-
2020-05-01 Alan Modra <amodra@gmail.com>
* po/BLD-POTFILES.in: Regenerate.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 9977195074..173d8ec349 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -6972,12 +6972,11 @@ lang_check (void)
bfd_printable_name (input_bfd), input_bfd,
bfd_printable_name (link_info.output_bfd));
}
-
- /* If the input bfd has no contents, it shouldn't set the
- private data of the output bfd. */
- else if ((input_bfd->flags & DYNAMIC) != 0
- || bfd_count_sections (input_bfd) != 0)
+ else if (bfd_count_sections (input_bfd))
{
+ /* If the input bfd has no contents, it shouldn't set the
+ private data of the output bfd. */
+
bfd_error_handler_type pfn = NULL;
/* If we aren't supposed to warn about mismatched input
--
2.29.2
+67
View File
@@ -0,0 +1,67 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen binutils-armhf
# Based on: main/binutils
pkgname=binutils-armhf
pkgver=2.35.1
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"
arch="x86_64"
license="GPL-2.0 GPL-3.0-or-later LGPL-2.0 BSD"
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
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" != "$CTARGET" ]; then
pkgname="binutils-$CTARGET_ARCH"
subpackages=""
sonameprefix="binutils:"
fi
# secfixes:
# 2.32-r0:
# - CVE-2018-19931
# - CVE-2018-19932
# - CVE-2018-20002
# - CVE-2018-20712
# 2.28-r1:
# - CVE-2017-7614
build() {
_target="$(arch_to_hostspec armhf)"
"$builddir"/configure \
--build="$CBUILD" \
--target=$_target \
--with-lib-path=/usr/lib \
--prefix=/usr \
--with-sysroot=/usr/$_target \
--enable-ld=default \
--enable-gold=yes \
--enable-plugins \
--enable-deterministic-archives \
--disable-multilib \
--disable-werror \
--disable-nls
make
}
package() {
make install DESTDIR="$pkgdir"
# remove man, info folders
rm -rf "$pkgdir"/usr/share
}
sha512sums="94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb binutils-2.35.1.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
642c617db6c6e491f78f053d60f3aa369bad7bf8c1bc7ce267de6cf8fddf6c0d4cf63ce8c8f6e2f225dedbce7cb930d8e87e168fd8f72ca0837c77266ee2b5f8 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch"
@@ -0,0 +1,46 @@
This fixes static linking for our hardened toolchain
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
index e8126cb..9532bfb 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
@@ -235,8 +235,8 @@ test "${LARGE_SECTIONS}" = "yes" && LARGE_SECTIONS="
if test "${ENABLE_INITFINI_ARRAY}" = "yes"; then
SORT_INIT_ARRAY="KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*)))"
SORT_FINI_ARRAY="KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*)))"
- CTORS_IN_INIT_ARRAY="EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o $OTHER_EXCLUDE_FILES) .ctors"
- DTORS_IN_FINI_ARRAY="EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o $OTHER_EXCLUDE_FILES) .dtors"
+ CTORS_IN_INIT_ARRAY="EXCLUDE_FILE (*crtbegin*.o *crtend*.o $OTHER_EXCLUDE_FILES) .ctors"
+ DTORS_IN_FINI_ARRAY="EXCLUDE_FILE (*crtbegin*.o *crtend*.o $OTHER_EXCLUDE_FILES) .dtors"
else
SORT_INIT_ARRAY="KEEP (*(SORT(.init_array.*)))"
SORT_FINI_ARRAY="KEEP (*(SORT(.fini_array.*)))"
@@ -270,15 +270,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
- KEEP (*crtbegin?.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -286,9 +285,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=".dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*crtbegin?.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
+39
View File
@@ -0,0 +1,39 @@
# DP: Fix gold on mips64 targets.
gold/
2016-08-09 Aurelien Jarno <aurelien@aurel32.net>
* configure.tgt: Add mips64el*-*-*|mips64le*-*-* and mips64*-*-*.
--- a/gold/configure.tgt
+++ b/gold/configure.tgt
@@ -153,6 +153,13 @@ aarch64*-*)
targ_big_endian=false
targ_extra_big_endian=true
;;
+mips*64*el*-*-*|mips*64*le*-*-*)
+ targ_obj=mips
+ targ_machine=EM_MIPS_RS3_LE
+ targ_size=64
+ targ_big_endian=false
+ targ_extra_big_endian=true
+ ;;
mips*el*-*-*|mips*le*-*-*)
targ_obj=mips
targ_machine=EM_MIPS_RS3_LE
@@ -160,6 +167,13 @@ mips*el*-*-*|mips*le*-*-*)
targ_big_endian=false
targ_extra_big_endian=true
;;
+mips*64*-*-*)
+ targ_obj=mips
+ targ_machine=EM_MIPS
+ targ_size=64
+ targ_big_endian=true
+ targ_extra_big_endian=false
+ ;;
mips*-*-*)
targ_obj=mips
targ_machine=EM_MIPS
+19
View File
@@ -0,0 +1,19 @@
--- ./ld/configure.tgt.orig
+++ ./ld/configure.tgt
@@ -541,12 +541,12 @@
;;
mips*-*-windiss) targ_emul=elf32mipswindiss
;;
-mips64*el-*-linux-*) targ_emul=elf32ltsmipn32
- targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
+mips64*el-*-linux-*) targ_emul=elf64ltsmip
+ targ_extra_emuls="elf32ltsmipn32 elf32btsmipn32 elf32ltsmip elf32btsmip elf64btsmip"
targ_extra_libpath=$targ_extra_emuls
;;
-mips64*-*-linux-*) targ_emul=elf32btsmipn32
- targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
+mips64*-*-linux-*) targ_emul=elf64btsmip
+ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip"
targ_extra_libpath=$targ_extra_emuls
;;
mips*el-*-linux-*) targ_emul=elf32ltsmip
@@ -0,0 +1,86 @@
From b1faf99f3e546df2cd302bb1ad36a2078224fe8b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 30 Oct 2020 16:59:48 -0600
Subject: [PATCH] Revert "PR25882, .gnu.attributes are not checked for shared
libraries"
This reverts commit a8acd6eeb6dc2cc5460ece90f90ebe36b56b20ba.
---
bfd/ChangeLog | 6 ------
bfd/elf32-tic6x.c | 3 ---
ld/ChangeLog | 6 ------
ld/ldlang.c | 9 ++++-----
4 files changed, 4 insertions(+), 20 deletions(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9fac12538a..b5461494e8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1422,12 +1422,6 @@
accessing root.u.def of symbols. Also check root.u.def.section
is non-NULL. Reverse tests so as to make the logic positive.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
- Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
-
2020-05-01 Alan Modra <amodra@gmail.com>
PR 25882
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
index b8b916bfd3..91bb6a10b1 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
@@ -3748,9 +3748,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
case Tag_ABI_PIC:
case Tag_ABI_PID:
- /* Don't transfer these tags from dynamic objects. */
- if ((ibfd->flags & DYNAMIC) != 0)
- continue;
if (out_attr[i].i > in_attr[i].i)
out_attr[i].i = in_attr[i].i;
break;
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4eec7d2977..b93452f70c 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1319,12 +1319,6 @@
* testsuite/ld-aarch64/farcall-group.d: New test driver.
* testsuite/ld-aarch64/aarch64-elf.exp: Run the new test.
-2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
- * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for
- shared libraries.
-
2020-05-01 Alan Modra <amodra@gmail.com>
* po/BLD-POTFILES.in: Regenerate.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 9977195074..173d8ec349 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -6972,12 +6972,11 @@ lang_check (void)
bfd_printable_name (input_bfd), input_bfd,
bfd_printable_name (link_info.output_bfd));
}
-
- /* If the input bfd has no contents, it shouldn't set the
- private data of the output bfd. */
- else if ((input_bfd->flags & DYNAMIC) != 0
- || bfd_count_sections (input_bfd) != 0)
+ else if (bfd_count_sections (input_bfd))
{
+ /* If the input bfd has no contents, it shouldn't set the
+ private data of the output bfd. */
+
bfd_error_handler_type pfn = NULL;
/* If we aren't supposed to warn about mismatched input
--
2.29.2
+6 -6
View File
@@ -2,11 +2,8 @@
# Generator: pmbootstrap aportgen binutils-armv7
# Based on: main/binutils
builddir="$srcdir/binutils-2.34"
pkgname=binutils-armv7
pkgver=2.34
pkgver=2.35.1
pkgrel=1
pkgdesc="Tools necessary to build programs for armv7 targets"
url="https://www.gnu.org/software/binutils/"
@@ -17,7 +14,9 @@ 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
"
builddir="$srcdir/binutils-$pkgver"
if [ "$CHOST" != "$CTARGET" ]; then
pkgname="binutils-$CTARGET_ARCH"
@@ -61,7 +60,8 @@ package() {
sha512sums="2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd binutils-2.34.tar.xz
sha512sums="94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb binutils-2.35.1.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch"
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
642c617db6c6e491f78f053d60f3aa369bad7bf8c1bc7ce267de6cf8fddf6c0d4cf63ce8c8f6e2f225dedbce7cb930d8e87e168fd8f72ca0837c77266ee2b5f8 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch"
+7 -7
View File
@@ -7,28 +7,28 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=busybox-static-aarch64
pkgver=1.31.1
pkgrel=20
pkgver=1.32.0
pkgrel=4
_arch="aarch64"
_mirror="http://dl-cdn.alpinelinux.org/alpine/"
_mirror="http://dl-2.alpinelinux.org/alpine/"
url="http://busybox.net"
license="GPL2"
arch="all"
arch="x86_64"
options="!check !strip"
pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch.apk::$_mirror/v3.12/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch.apk
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
}
sha512sums="4d95fbfa910840ba5b36a5c343b62167245999d37e7f3a5598ef1870dcfaa3a15445269651431701d7f6e020fbe21ce1b06561ade6ee20899b8692de9f649114 busybox-static-1.31.1-r20-aarch64.apk"
sha512sums="c101e490becccf14381bece807738bf29827d53f7d803b198068f7ecf420d46b77701185da98faa3cc19ea2b6a2ac6b564665e0dedb5aa56cb59f1a4931f278b busybox-static-1.32.0-r4-aarch64-edge.apk"
+34
View File
@@ -0,0 +1,34 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen busybox-static-armhf
# Stub for apkbuild-lint
if [ -z "$(type -t arch_to_hostspec)" ]; then
arch_to_hostspec() { :; }
fi
pkgname=busybox-static-armhf
pkgver=1.32.0
pkgrel=4
_arch="armhf"
_mirror="http://dl-2.alpinelinux.org/alpine/"
url="http://busybox.net"
license="GPL2"
arch="x86_64"
options="!check !strip"
pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
}
sha512sums="52acbc4b39adf80b5c31cc221aee96666327803c1b5eb70377e245b3cdc4da05bd81d095b4a8e7d01a8c2e379198e5ae4df0c7d21dc7fa6a7843b3e64460b382 busybox-static-1.32.0-r4-armhf-edge.apk"
+7 -7
View File
@@ -7,28 +7,28 @@ if [ -z "$(type -t arch_to_hostspec)" ]; then
fi
pkgname=busybox-static-armv7
pkgver=1.31.1
pkgrel=20
pkgver=1.32.0
pkgrel=4
_arch="armv7"
_mirror="http://dl-cdn.alpinelinux.org/alpine/"
_mirror="http://dl-2.alpinelinux.org/alpine/"
url="http://busybox.net"
license="GPL2"
arch="all"
arch="x86_64"
options="!check !strip"
pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch.apk::$_mirror/v3.12/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch.apk
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
}
sha512sums="170964dcd726c3bd05420d2a46663e75037f2f25391db5a63647ab9e2969e0ef1262f6f02833e7af4861ca26f997952f3c47eadf5938237eeaa1f585343ff869 busybox-static-1.31.1-r20-armv7.apk"
sha512sums="fcc7619f591b44992b03268dff2c0cfade24577bcb277006794c628f8de7093107a0c191f320e7d2e307aa0680be3b93d2e433a1d1527c035f966ecdb8ed7b0f busybox-static-1.32.0-r4-armv7-edge.apk"
+8 -2
View File
@@ -4,8 +4,8 @@
# ccache, which can then cache the results.
pkgname=ccache-cross-symlinks
pkgver=2
pkgrel=1
pkgver=3
pkgrel=0
pkgdesc="Enable ccache for cross-compilers with symlinks"
url="https://ccache.samba.org/"
arch="noarch"
@@ -30,5 +30,11 @@ package() {
# /native/usr/bin/ccache)
ln -v -s ../../../bin/ccache ${_hostspec}-${_bin}
done
ln -v -s ../../../bin/ccache gcc4-${_hostspec}-gcc
ln -v -s ../../../bin/ccache gcc6-${_hostspec}-gcc
done
ln -v -s ../../../bin/ccache gcc4-gcc
ln -v -s ../../../bin/ccache gcc6-gcc
}
+2 -2
View File
@@ -17,7 +17,7 @@
pkgname=crossdirect
pkgver=4
pkgrel=1
pkgrel=3
pkgdesc="Wrappers to launch native cross compilers in foreign chroots"
url="https://postmarketOS.org"
arch="all"
@@ -77,6 +77,6 @@ package() {
install -Dm755 "$srcdir/rustc-$_arch" "$_bindir/rustc"
done
}
sha512sums="20b963322820de038257304c1eefa85767b78e242eda7459f06d70a1cfae5540a445aa7d5587024bf4d88a4bee28120ef9f5c2d24a648e71b542b9618318deb2 crossdirect.c
sha512sums="500107e5aff8b34e74b54982ebcd447fc41bc8283956d506561b031a055cb30ec12698047c2604918b4b6d8560fe03db427a63dff2b83c907e8494b7f5233f29 crossdirect.c
6be16ba88720e628a3ecc8fa53f8e7a21d2af268b0509745d989139874d6b94b640bfcff09575eaa19073810be6ef91169c1f83e94f5cf8e6819f2670d9408de rustc.sh
ea9bf8db3810d03d0a7395057f3d6e57f7127d87c55deaedc171c255288f5f3cc6fbcc680a5a1b92786cf573875d5dc22521173799fe2639acc97d0715ff905b rust-qemu-linker.sh"
+43 -1
View File
@@ -1,4 +1,34 @@
// HOSTSPEC is defined at compile time, see APKBUILD
/* Copyright 2020 Zhuowei Zhang, Oliver Smith
* SPDX-License-Identifier: GPL-3.0-or-later
*
* This program gets built to a set of wrapper executables, which launch native
* cross compilers inside foreign arch chroots. Speeds up cross compilation a
* lot, compared to using just qemu user mode emulation or using the previous
* distcc-based methods.
*
* How this program gets called:
* - pmbootstrap creates one native arch chroot and one foreign arch chroot.
* - The native chroot gets mounted as /native in the foreign chroot.
* - When calling "abuild", pmbootstrap sets PATH to:
* /native/usr/lib/crossdirect/<ARCH>:$PATH
* - That crossdirect directory contains a crossdirect-<ARCH> binary built with
* the matching HOSTSPEC (e.g. crossdirect-aarch64 binary with HOSTSPEC
* aarch64-alpine-linux-musl). This binary is symlinked to:
* - <HOSTSPEC>-c++
* - <HOSTSPEC>-cc
* - <HOSTSPEC>-clang
* - <HOSTSPEC>-clang++
* - <HOSTSPEC>-cpp
* - <HOSTSPEC>-g++
* - <HOSTSPEC>-gcc
* - c++
* - cc
* - clang
* - clang++
* - cpp
* - g++
* - gcc
*/
#include <errno.h>
#include <libgen.h>
@@ -52,20 +82,31 @@ int main(int argc, char **argv)
}
}
// Translate "cc" to "gcc": /usr/bin/cc is a symlink to /usr/bin/gcc,
// but there is no <HOSTSPEC>-cc symlink (pmaports#732)
if (strcmp(executableName, "cc") == 0)
executableName = "gcc";
// prepend the HOSTSPEC to GCC binaries
if (isClang || startsWithHostSpec) {
snprintf(newExecutable, sizeof(newExecutable), NATIVE_BIN_DIR "/%s", executableName);
} else {
snprintf(newExecutable, sizeof(newExecutable), NATIVE_BIN_DIR "/" HOSTSPEC "-%s", executableName);
}
// prepare new arguments for GCC / clang
char **newArgsPtr = newargv;
*newArgsPtr++ = newExecutable;
if (isClang) {
// clang does not use a HOSTSPEC prefix for the cross compiler
// binary, but instead have a -target argument
*newArgsPtr++ = "-target";
*newArgsPtr++ = HOSTSPEC;
}
*newArgsPtr++ = "--sysroot=/";
// add all arguments passed to this executable to GCC / clang and set
// the last arg in newargv to NULL to mark its end
memcpy(newArgsPtr, argv + 1, sizeof(char *) * (argc - 1));
newArgsPtr += (argc - 1);
*newArgsPtr = NULL;
@@ -85,6 +126,7 @@ int main(int argc, char **argv)
}
}
// finally exec GCC / clang
if (execve(newExecutable, newargv, env) == -1) {
fprintf(stderr, "ERROR: crossdirect: failed to execute %s: %s\n", newExecutable, strerror(errno));
fprintf(stderr, "Maybe the target arch is missing in the ccache-cross-symlinks package?\n");
@@ -1,14 +1,14 @@
From 65eb86f3e110998d30489df009d44b4bc1043adc Mon Sep 17 00:00:00 2001
From 4ed2cc3054f444c683f54954c32e586a54066337 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH 02/12] posix_memalign
Subject: [PATCH 01/40] posix_memalign
---
gcc/config/i386/pmm_malloc.h | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
index ffbb7f82cf5..b0b890d2403 100644
index 87344d9383f..ece428df487 100644
--- a/gcc/config/i386/pmm_malloc.h
+++ b/gcc/config/i386/pmm_malloc.h
@@ -27,12 +27,13 @@
@@ -38,5 +38,5 @@ index ffbb7f82cf5..b0b890d2403 100644
else
return NULL;
--
2.17.1
2.29.2
@@ -1,11 +1,20 @@
From 48c670d2678e0323d88eb72205e039f393cabe05 Mon Sep 17 00:00:00 2001
From 09a32a40b34477cd787deb12833c063a09dea7b2 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 03/39] gcc: poison-system-directories
Subject: [PATCH 02/40] gcc: poison-system-directories
Add /sw/include and /opt/include based on the original
zecke-no-host-includes.patch patch. The original patch checked for
/usr/include, /sw/include and /opt/include and then triggered a failure and
aborted.
Instead, we add the two missing items to the current scan. If the user
wants this to be a failure, they can add "-Werror=poison-system-directories".
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Inappropriate [distribution: codesourcery]
Upstream-Status: Pending
---
gcc/common.opt | 4 ++++
gcc/config.in | 6 ++++++
@@ -13,14 +22,14 @@ Upstream-Status: Inappropriate [distribution: codesourcery]
gcc/configure.ac | 10 ++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.c | 2 ++
gcc/incpath.c | 19 +++++++++++++++++++
7 files changed, 66 insertions(+)
gcc/incpath.c | 21 +++++++++++++++++++++
7 files changed, 68 insertions(+)
diff --git a/gcc/common.opt b/gcc/common.opt
index d6ef85928f3..7b29efe3882 100644
index dfed6ec76ba..8bb65e0e1af 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -679,6 +679,10 @@ Wreturn-local-addr
@@ -682,6 +682,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.
@@ -32,10 +41,10 @@ index d6ef85928f3..7b29efe3882 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 5bccb408016..1c784a8276b 100644
index 364eba47737..9551c0dfdf9 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -194,6 +194,12 @@
@@ -224,6 +224,12 @@
#endif
@@ -49,10 +58,10 @@ index 5bccb408016..1c784a8276b 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 5c345ce0fd7..cafd05fd150 100755
index b4088d8fd1e..793530e21cf 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -953,6 +953,7 @@ with_system_zlib
@@ -1010,6 +1010,7 @@ with_system_zlib
enable_maintainer_mode
enable_link_mutex
enable_version_specific_runtime_libs
@@ -60,7 +69,7 @@ index 5c345ce0fd7..cafd05fd150 100755
enable_plugin
enable_host_shared
enable_libquadmath_support
@@ -1696,6 +1697,8 @@ Optional Features:
@@ -1766,6 +1767,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
@@ -69,7 +78,7 @@ index 5c345ce0fd7..cafd05fd150 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -29715,6 +29718,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
@@ -30271,6 +30274,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -90,10 +99,10 @@ index 5c345ce0fd7..cafd05fd150 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 65dbf1f2f80..dd5b38195ce 100644
index 070b9c6c497..0fd438e39e5 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -6341,6 +6341,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
@@ -6605,6 +6605,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -111,18 +120,18 @@ index 65dbf1f2f80..dd5b38195ce 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 255149fcfb8..cb71b60fe3c 100644
index 0d532a64bfe..86e57038042 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -303,6 +303,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wpacked-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
@@ -348,6 +348,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
-Wparentheses -Wno-pedantic-ms-format @gol
-Wplacement-new -Wplacement-new=@var{n} @gol
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol
+-Wno-poison-system-directories @gol
-Wpointer-arith -Wpointer-compare -Wno-pointer-to-int-cast @gol
-Wno-pragmas -Wredundant-decls -Wrestrict -Wno-return-local-addr @gol
-Wreturn-type -Wsequence-point -Wshadow -Wno-shadow-ivar @gol
@@ -5712,6 +5713,14 @@ made up of data only and thus requires no special treatment. But, for
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
@@ -6926,6 +6927,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.
@@ -138,11 +147,11 @@ index 255149fcfb8..cb71b60fe3c 100644
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.c b/gcc/gcc.c
index a716f708259..02b3cd39fc2 100644
index 9f790db0daf..b2200c5185a 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1061,6 +1060,8 @@
"-z relro -z now " \
@@ -1041,6 +1041,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
+ %{Wno-poison-system-directories:--no-poison-system-directories} \
@@ -151,7 +160,7 @@ index a716f708259..02b3cd39fc2 100644
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 b11c6a57939..e3b7a21966f 100644
index 8a2bda00f80..9098ab044ab 100644
--- a/gcc/incpath.c
+++ b/gcc/incpath.c
@@ -26,6 +26,7 @@
@@ -190,5 +199,5 @@ index b11c6a57939..e3b7a21966f 100644
/* Use given -I paths for #include "..." but not #include <...>, and
--
2.17.0
2.29.2
@@ -0,0 +1,39 @@
From 77e75a23e9bdf8863823225567c509b6fed49e6e Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH 03/40] Turn on -Wl,-z,relro,-z,now by default.
---
gcc/doc/invoke.texi | 3 +++
gcc/gcc.c | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 86e57038042..87ff404bc20 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -14645,6 +14645,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
linker. When using the GNU linker, you can also get the same effect with
@option{-Wl,-Map=output.map}.
+NOTE: In Alpine Linux, for LDFLAGS, the option
+@option{-Wl,-z,relro,now} is used. To disable, use @option{-Wl,-z,norelro}.
+
@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 b2200c5185a..625c9ab7902 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1039,6 +1039,7 @@ proper position among the other output files. */
"%{flto|flto=*:%<fcompare-debug*} \
%{flto} %{fno-lto} %{flto=*} %l " LINK_PIE_SPEC \
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
+ "-z relro -z now " \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
2.29.2
@@ -1,16 +1,34 @@
# DP: Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC, ObjC++,
# DP: if the optimization level is > 0
From 3b76b0c848746d4adbc4e8db408efd41aefb829c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH 04/40] Turn on -D_FORTIFY_SOURCE=2 by default for C, C++,
ObjC, ObjC++, if the optimization level is > 0
---
gcc/doc/invoke.texi | 6 ++++++
gcc/c-family/c-cppbuiltin.c | 3 +
2 files changed, 9 insertions(+), 0 deletions(-)
gcc/c-family/c-cppbuiltin.c | 4 ++++
gcc/doc/invoke.texi | 6 ++++++
2 files changed, 10 insertions(+)
Index: b/gcc/doc/invoke.texi
===================================================================
diff --git a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c
index db91a36794a..ed976c71404 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1385,6 +1385,10 @@ c_cpp_builtins (cpp_reader *pfile)
builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
+ /* Fortify Source enabled by default for optimization levels > 0 */
+ if (optimize)
+ builtin_define_with_int_value ("_FORTIFY_SOURCE", 2);
+
/* Misc. */
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 87ff404bc20..01e67e97491 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -7840,6 +7840,12 @@ also turns on the following optimization
@@ -9230,6 +9230,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.
@@ -23,18 +41,6 @@ Index: b/gcc/doc/invoke.texi
@item -O3
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified
Index: b/gcc/c-family/c-cppbuiltin.c
===================================================================
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1176,6 +1176,10 @@ c_cpp_builtins (cpp_reader *pfile)
builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
+ /* Fortify Source enabled by default for optimization levels > 0 */
+ if (optimize)
+ builtin_define_with_int_value ("_FORTIFY_SOURCE", 2);
+
/* Misc. */
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
--
2.29.2
@@ -1,71 +1,68 @@
# DP: On linux targets pass --as-needed by default to the linker, but always
# DP: link the sanitizer libraries with --no-as-needed.
From 483912c560424ee8b5cc996990d45802671fc73f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH 05/40] On linux targets pass --as-needed by default to the
linker, but always link the sanitizer libraries with --no-as-needed.
Index: b/gcc/gcc.c
===================================================================
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -692,8 +692,11 @@ proper position among the other output f
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \
- "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
+ " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lasan " \
+ " %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -710,8 +713,11 @@ proper position among the other output f
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION \
- "} -ltsan %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -ltsan " \
+ " %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -728,8 +734,11 @@ proper position among the other output f
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION \
- "} -llsan %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
+ " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -llsan " \
+ " %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -744,8 +753,11 @@ proper position among the other output f
#define STATIC_LIBUBSAN_LIBS \
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
-#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION \
- "} -lubsan %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lubsan " \
+ " %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
Index: b/gcc/config/gnu-user.h
===================================================================
---
gcc/config/aarch64/aarch64-linux.h | 1 +
gcc/config/alpha/linux-elf.h | 2 +-
gcc/config/arm/linux-elf.h | 1 +
gcc/config/gnu-user.h | 6 +++---
gcc/config/i386/gnu-user.h | 2 +-
gcc/config/i386/gnu-user64.h | 1 +
gcc/config/ia64/linux.h | 2 +-
gcc/config/mips/gnu-user.h | 1 +
gcc/config/riscv/linux.h | 1 +
gcc/config/rs6000/linux64.h | 4 ++--
gcc/config/rs6000/sysv4.h | 2 +-
gcc/config/s390/linux.h | 2 +-
gcc/config/sparc/linux.h | 2 +-
gcc/gcc.c | 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 e587e2e9ad6..1d1017aa523 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define LINUX_TARGET_LINK_SPEC "%{h*} \
+ --as-needed \
%{static:-Bstatic} \
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
index e25fcac3c59..22b2f7b0d14 100644
--- a/gcc/config/alpha/linux-elf.h
+++ b/gcc/config/alpha/linux-elf.h
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER
-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+#define LINK_SPEC "-m elf64alpha --as-needed %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
%{shared:-shared} \
%{!shared: \
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 0ec3aa53189..f8bda84de2a 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
-X \
+ --as-needed \
%{mbig-endian:-EB} %{mlittle-endian:-EL}" \
SUBTARGET_EXTRA_LINK_SPEC
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index ff2e880b1fa..7f30c363e4a 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -161,15 +161,15 @@ see the files COPYING3 and COPYING.RUNTI
@@ -136,17 +136,17 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LIBASAN_EARLY_SPEC "%{!shared:libasan_preinit%O%s} " \
"%{static-libasan:%{!shared:" \
LD_STATIC_OPTION " --whole-archive -lasan --no-whole-archive " \
@@ -84,20 +81,35 @@ Index: b/gcc/config/gnu-user.h
- LD_DYNAMIC_OPTION "}}%{!static-liblsan:-llsan}"
+ LD_DYNAMIC_OPTION "}}%{!static-liblsan:%{!fuse-ld=gold:--push-state} --no-as-needed -llsan %{fuse-ld=gold:--as-needed;:--pop-state}}"
#endif
Index: b/gcc/config/aarch64/aarch64-linux.h
===================================================================
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define LINUX_TARGET_LINK_SPEC "%{h*} \
+ --as-needed \
%{static:-Bstatic} \
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
Index: b/gcc/config/ia64/linux.h
===================================================================
#undef TARGET_F951_OPTIONS
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index ae4aa844f02..54b91c0492a 100644
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -74,7 +74,7 @@ along with GCC; see the file COPYING3. If not see
{ "link_emulation", GNU_USER_LINK_EMULATION },\
{ "dynamic_linker", GNU_USER_DYNAMIC_LINKER }
-#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) --as-needed %{shared:-shared} \
%{!shared: \
%{!static: \
%{!static-pie: \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index 785c68220b8..21dd66b412a 100644
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -56,6 +56,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
"%{" SPEC_64 ":-m " GNU_USER_LINK_EMULATION64 "} \
%{" SPEC_32 ":-m " GNU_USER_LINK_EMULATION32 "} \
%{" SPEC_X32 ":-m " GNU_USER_LINK_EMULATIONX32 "} \
+ --as-needed \
%{shared:-shared} \
%{!shared: \
%{!static: \
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index ee38e218aec..0325971d818 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do { \
@@ -109,37 +121,35 @@ Index: b/gcc/config/ia64/linux.h
%{shared:-shared} \
%{!shared: \
%{!static: \
Index: b/gcc/config/sparc/linux.h
===================================================================
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -86,7 +86,7 @@ extern const char *host_detect_local_cpu
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+#define LINK_SPEC "-m elf32_sparc --as-needed %{shared:-shared} \
%{!mno-relax:%{!r:-relax}} \
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index 5d0782100bb..4be5fbb2191 100644
--- a/gcc/config/mips/gnu-user.h
+++ b/gcc/config/mips/gnu-user.h
@@ -55,6 +55,7 @@ along with GCC; see the file COPYING3. If not see
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC "\
%{G*} %{EB} %{EL} %{mips*} %{shared} \
+ -as-needed \
%{!shared: \
%{!static: \
Index: b/gcc/config/s390/linux.h
===================================================================
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -78,7 +78,7 @@ along with GCC; see the file COPYING3.
%{rdynamic:-export-dynamic} \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index 4afef7c228c..ba1a6e60e05 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
"%{mabi=ilp32:_ilp32}"
#undef LINK_SPEC
#define LINK_SPEC \
- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \
%{shared:-shared} \
%{!shared: \
%{static:-static} \
Index: b/gcc/config/rs6000/linux64.h
===================================================================
#define LINK_SPEC "\
+-as-needed \
-melf" XLEN_SPEC "lriscv" LD_EMUL_SUFFIX " \
%{mno-relax:--no-relax} \
%{shared} \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 2ded3301282..a1e44ddcc0d 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -490,13 +490,13 @@ extern int dot_symbols;
@@ -457,13 +457,13 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
@@ -155,90 +165,105 @@ Index: b/gcc/config/rs6000/linux64.h
%{!static-pie: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "}}} \
Index: b/gcc/config/rs6000/sysv4.h
===================================================================
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 9ade72114e9..9490b84a153 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -811,7 +811,7 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF
CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, \
MUSL_DYNAMIC_LINKER)
@@ -789,7 +789,7 @@ GNU_USER_TARGET_CC1_SPEC
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#endif
-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --as-needed %{!shared: %{!static: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
Index: b/gcc/config/i386/gnu-user64.h
===================================================================
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -56,6 +56,7 @@
"%{" SPEC_64 ":-m " GNU_USER_LINK_EMULATION64 "} \
%{" SPEC_32 ":-m " GNU_USER_LINK_EMULATION32 "} \
%{" SPEC_X32 ":-m " GNU_USER_LINK_EMULATIONX32 "} \
+ --as-needed \
%{shared:-shared} \
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index 6919b468f06..56d52d41b31 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -82,7 +82,7 @@ along with GCC; see the file COPYING3. If not see
#undef LINK_SPEC
#define LINK_SPEC \
- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \
%{shared:-shared} \
%{!shared: \
%{static:-static} \
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 63853e60c03..de6d8675456 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -81,7 +81,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+#define LINK_SPEC "-m elf32_sparc --as-needed %{shared:-shared} \
%{!mno-relax:%{!r:-relax}} \
%{!shared: \
%{!static: \
Index: b/gcc/config/i386/gnu-user.h
===================================================================
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -74,7 +74,7 @@ along with GCC; see the file COPYING3.
{ "link_emulation", GNU_USER_LINK_EMULATION },\
{ "dynamic_linker", GNU_USER_DYNAMIC_LINKER }
-#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) --as-needed %{shared:-shared} \
%{!shared: \
%{!static: \
%{!static-pie: \
Index: b/gcc/config/alpha/linux-elf.h
===================================================================
--- 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.
#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER
-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+#define LINK_SPEC "-m elf64alpha --as-needed %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
%{shared:-shared} \
%{!shared: \
Index: b/gcc/config/arm/linux-elf.h
===================================================================
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
-X \
+ --as-needed \
%{mbig-endian:-EB} %{mlittle-endian:-EL}" \
SUBTARGET_EXTRA_LINK_SPEC
Index: b/gcc/config/mips/gnu-user.h
===================================================================
--- 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.
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC "\
%{G*} %{EB} %{EL} %{mips*} %{shared} \
+ -as-needed \
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
Index: b/gcc/config/riscv/linux.h
===================================================================
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -58,6 +58,7 @@
"%{mabi=ilp32:_ilp32}"
#define LINK_SPEC "\
+-as-needed \
-melf" XLEN_SPEC "lriscv" LD_EMUL_SUFFIX " \
%{mno-relax:--no-relax} \
%{shared} \
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 625c9ab7902..7aec9d3a016 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -695,8 +695,11 @@ proper position among the other output files. */
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \
- "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
+ " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lasan " \
+ " %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -713,8 +716,11 @@ proper position among the other output files. */
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION \
- "} -ltsan %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -ltsan " \
+ " %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -731,8 +737,11 @@ proper position among the other output files. */
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION \
- "} -llsan %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
+ " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -llsan " \
+ " %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -747,8 +756,11 @@ proper position among the other output files. */
#define STATIC_LIBUBSAN_LIBS \
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
-#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION \
- "} -lubsan %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lubsan " \
+ " %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.29.2
@@ -1,9 +1,18 @@
Enable -Wformat and -Wformat-security by default.
From c57a8b43401ca9a1b889fa9fd421ac49c3dbd380 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH 06/40] Enable -Wformat and -Wformat-security by default.
--- a/gcc/c-family/c.opt 2016-03-23 18:51:56.000000000 +0100
+++ b/gcc/c-family/c.opt 2016-04-28 23:45:54.063351272 +0200
@@ -459,7 +459,7 @@ C ObjC C++ ObjC++ Var(warn_format_nonlit
Warn about format strings that are not literals.
---
gcc/c-family/c.opt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index c49da99d395..93f25319005 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -599,7 +599,7 @@ Warn about function calls with format strings that write past the end
of the destination region. Same as -Wformat-overflow=1.
Wformat-security
-C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
@@ -11,7 +20,7 @@ Enable -Wformat and -Wformat-security by default.
Warn about possible security problems with format functions.
Wformat-signedness
@@ -475,7 +475,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_l
@@ -620,7 +620,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
Warn about zero-length formats.
Wformat=
@@ -19,4 +28,7 @@ Enable -Wformat and -Wformat-security by default.
+C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2)
Warn about printf/scanf/strftime/strfmon format string anomalies.
Wignored-qualifiers
Wformat-overflow=
--
2.29.2
@@ -0,0 +1,25 @@
From a58dad2c52639422671ac6986c36e48499fc2f20 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH 07/40] Enable -Wtrampolines by default.
---
gcc/common.opt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index 8bb65e0e1af..ace932b300d 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -774,7 +774,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
-Common Var(warn_trampolines) Warning
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtype-limits
--
2.29.2
@@ -0,0 +1,53 @@
From 98b2b8f7de60ed1b6b7602124ef6db278cf3c212 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH 08/40] Disable ssp on -nostdlib, -nodefaultlibs and
-ffreestanding Change the buffer size.
---
gcc/gcc.c | 8 +++++++-
gcc/params.opt | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 7aec9d3a016..daeb4d0c8ea 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -886,6 +886,12 @@ proper position among the other output files. */
#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
#endif
+#ifdef ENABLE_DEFAULT_SSP
+#define NO_SSP_SPEC "%{nostdlib|nodefaultlibs|ffreestanding:-fno-stack-protector} "
+#else
+#define NO_SSP_SPEC ""
+#endif
+
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1170,7 +1176,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
- %{fsyntax-only:-o %j} %{-param*}\
+ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
%{coverage:-fprofile-arcs -ftest-coverage}\
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
diff --git a/gcc/params.opt b/gcc/params.opt
index 4aec480798b..eaecfab37ad 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -853,7 +853,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
The maximum number of SSA_NAME assignments to follow in determining a value.
-param=ssp-buffer-size=
-Common Joined UInteger Var(param_ssp_buffer_size) Init(8) IntegerRange(1, 65536) Param Optimization
+Common Joined UInteger Var(param_ssp_buffer_size) Init(4) IntegerRange(1, 65536) Param Optimization
The lower bound for a buffer to be considered for stack smashing protection.
-param=stack-clash-protection-guard-size=
--
2.29.2
@@ -1,26 +0,0 @@
From b693804c8dba92fea7beee98f0aa520853a0532b Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Thu, 22 Dec 2016 11:22:28 +0000
Subject: [PATCH 08/12] s390x muslldso
---
gcc/config/s390/linux.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index 525c17c2c9f..2d4f4a0654e 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -76,6 +76,9 @@ along with GCC; see the file COPYING3. If not see
#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1"
+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390.so.1"
+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1"
+
#undef LINK_SPEC
#define LINK_SPEC \
"%{m31:-m elf_s390}%{m64:-m elf64_s390} \
--
2.17.1
@@ -1,4 +1,8 @@
Ensure that msgfmt doesn't encounter problems during gcc bootstrapping.
From 035775ef38206ed2859500efe5fb42ceec2e858d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH 09/40] Ensure that msgfmt doesn't encounter problems during
gcc bootstrapping.
Solves error messages like the following:
@@ -16,10 +20,16 @@ library path, will make it work as expected here.
References:
https://bugs.gentoo.org/372377
https://bugs.gentoo.org/295480
---
libstdc++-v3/po/Makefile.am | 1 +
libstdc++-v3/po/Makefile.in | 1 +
2 files changed, 2 insertions(+)
--- gcc-4.1.2.orig/libstdc++-v3/po/Makefile.am
+++ gcc-4.1.2/libstdc++-v3/po/Makefile.am
@@ -39,6 +39,7 @@ MSGFMT = msgfmt
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index a9391d8d167..f7eee24dc8c 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -38,6 +38,7 @@ MSGFMT = msgfmt
EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN)
.po.mo:
@@ -27,9 +37,11 @@ https://bugs.gentoo.org/295480
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--- gcc-4.1.2.orig/libstdc++-v3/po/Makefile.in
+++ gcc-4.1.2/libstdc++-v3/po/Makefile.in
@@ -419,6 +419,7 @@ uninstall-am: uninstall-info-am
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index a0f84b0cfa0..ab24a47a2fd 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -548,6 +548,7 @@ uninstall-am:
.po.mo:
@@ -37,3 +49,6 @@ https://bugs.gentoo.org/295480
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--
2.29.2
@@ -0,0 +1,28 @@
From e9875d74e75c601b95dba677bc9e58c869150212 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH 10/40] Don't declare asprintf if defined as a macro.
---
include/libiberty.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/libiberty.h b/include/libiberty.h
index 141cb886a85..fa0e78eb62f 100644
--- a/include/libiberty.h
+++ b/include/libiberty.h
@@ -645,8 +645,11 @@ extern int pwait (int, int *, int);
/* Like sprintf but provides a pointer to malloc'd storage, which must
be freed by the caller. */
+/* asprintf may be declared as a macro by glibc with __USE_FORTIFY_LEVEL. */
+#ifndef asprintf
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
#endif
+#endif
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
2.29.2
@@ -1,76 +0,0 @@
From 47467f3ab0fb2f2fcede81060fe8bb339d0909eb Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Wed, 28 Feb 2018 00:54:05 +0000
Subject: [PATCH 10/12] ldbl128 config
---
gcc/configure | 13 +++++++++++++
gcc/configure.ac | 16 ++++++++++++++--
2 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/gcc/configure b/gcc/configure
index 6121e163259..07ff8597d48 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -29309,6 +29309,15 @@ if test "${with_long_double_128+set}" = set; then :
withval=$with_long_double_128; gcc_cv_target_ldbl128="$with_long_double_128"
else
+ case "$target" in
+ s390*-*-linux-musl*)
+ gcc_cv_target_ldbl128=yes
+ ;;
+ powerpc*-*-linux-musl*)
+ gcc_cv_target_ldbl128=no
+ ;;
+ *)
+
if test $glibc_version_major -gt 2 \
|| ( test $glibc_version_major -eq 2 && test $glibc_version_minor -ge 4 ); then :
gcc_cv_target_ldbl128=yes
@@ -29320,6 +29329,10 @@ else
&& gcc_cv_target_ldbl128=yes
fi
+
+ ;;
+ esac
+
fi
;;
diff --git a/gcc/configure.ac b/gcc/configure.ac
index b066cc609e1..6c15ed898c0 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -5971,13 +5971,25 @@ case "$target" in
AC_ARG_WITH(long-double-128,
[AS_HELP_STRING([--with-long-double-128],
[use 128-bit long double by default])],
- gcc_cv_target_ldbl128="$with_long_double_128",
+ gcc_cv_target_ldbl128="$with_long_double_128", [
+ case "$target" in
+ s390*-*-linux-musl*)
+ gcc_cv_target_ldbl128=yes
+ ;;
+ powerpc*-*-linux-musl*)
+ gcc_cv_target_ldbl128=no
+ ;;
+ *)]
[GCC_GLIBC_VERSION_GTE_IFELSE([2], [4], [gcc_cv_target_ldbl128=yes], [
[gcc_cv_target_ldbl128=no
grep '^[ ]*#[ ]*define[ ][ ]*__LONG_DOUBLE_MATH_OPTIONAL' \
$target_header_dir/bits/wordsize.h > /dev/null 2>&1 \
&& gcc_cv_target_ldbl128=yes
- ]])])
+ ]])]
+ [
+ ;;
+ esac
+ ])
;;
esac
if test x$gcc_cv_target_ldbl128 = xyes; then
--
2.17.1
@@ -0,0 +1,24 @@
From 764e64bba73a7b7eb5154c8537781412252ed33e Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH 11/40] libiberty: copy PIC objects during build process
---
libiberty/Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index d6b302e02fd..fd39928546f 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -263,6 +263,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
$(AR) $(AR_FLAGS) $(TARGETLIB) \
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
$(RANLIB) $(TARGETLIB); \
+ cp $(TARGETLIB) ../ ; \
cd ..; \
else true; fi
--
2.29.2
@@ -1,14 +1,17 @@
https://bugs.gentoo.org/508852
https://gcc.gnu.org/PR61164
From da46d99b1b7661a98064a45bdccf08c1867582b0 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:36 +0000
Subject: [PATCH 12/40] libitm: disable FORTIFY
2014-04-27 Magnus Granberg <zorry@gentoo.org>
#508852
* libitm/configure.tgt: Disable FORTIFY
---
libitm/configure.tgt | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/libitm/configure.tgt b/libitm/configure.tgt
index 04109160e91..107b957ece3 100644
--- a/libitm/configure.tgt
+++ b/libitm/configure.tgt
@@ -43,6 +43,16 @@ if test "$gcc_cv_have_tls" = yes ; then
@@ -46,6 +46,16 @@ if test "$gcc_cv_have_tls" = yes ; then
esac
fi
@@ -25,3 +28,6 @@ https://gcc.gnu.org/PR61164
# 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.29.2
-107
View File
@@ -1,107 +0,0 @@
From a4aa319f7c19e564dced3daeb7222c9315af936c Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 18 Aug 2018 23:58:45 +0000
Subject: [PATCH 12/12] static-pie
in gcc-8 -static means static non-pie, even if -pie or -static-pie
are specified, -static-pie can be used to build static pie.
in musl toolchains -static -pie always meant static pie, so this
patch fixes the link specs accordingly, the new -static-pie is just
an alias to -static -pie.
---
gcc/common.opt | 4 ++--
gcc/config/gnu-user.h | 12 +++++-------
gcc/config/rs6000/sysv4.h | 11 +++++------
gcc/gcc.c | 6 +++---
4 files changed, 15 insertions(+), 18 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index b52ef0b38c8..0ce5857e01d 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -3197,11 +3197,11 @@ Driver
no-pie
Driver RejectNegative Negative(shared)
-Don't create a dynamically linked position independent executable.
+Don't create a position independent executable.
pie
Driver RejectNegative Negative(no-pie)
-Create a dynamically linked position independent executable.
+Create a position independent executable.
static-pie
Driver RejectNegative Negative(pie)
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index 8620de3e42d..235328a2642 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -51,13 +51,12 @@
#define GNU_USER_TARGET_STARTFILE_SPEC \
"%{shared:; \
pg|p|profile:%{static-pie:grcrt1.o%s;:gcrt1.o%s}; \
- static:crt1.o%s; \
- static-pie:rcrt1.o%s; \
+ static|static-pie:%{" PIE_SPEC ":rcrt1.o%s;:crt1.o%s}; \
" PIE_SPEC ":Scrt1.o%s; \
:crt1.o%s} " \
GNU_USER_TARGET_CRTI " \
- %{static:crtbeginT.o%s; \
- shared|static-pie|" PIE_SPEC ":crtbeginS.o%s; \
+ %{shared|" PIE_SPEC ":crtbeginS.o%s; \
+ static:crtbeginT.o%s; \
:crtbegin.o%s} \
%{fvtable-verify=none:%s; \
fvtable-verify=preinit:vtv_start_preinit.o%s; \
@@ -76,8 +75,7 @@
"%{fvtable-verify=none:%s; \
fvtable-verify=preinit:vtv_end_preinit.o%s; \
fvtable-verify=std:vtv_end.o%s} \
- %{static:crtend.o%s; \
- shared|static-pie|" PIE_SPEC ":crtendS.o%s; \
+ %{shared|" PIE_SPEC ":crtendS.o%s; \
:crtend.o%s} " \
GNU_USER_TARGET_CRTN " " \
CRTOFFLOADEND
@@ -133,7 +131,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LIB_SPEC GNU_USER_TARGET_LIB_SPEC
#if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static|static-pie:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static|" PIE_SPEC ":--eh-frame-hdr} "
#endif
#undef LINK_GCC_C_SEQUENCE_SPEC
diff --git a/gcc/gcc.c b/gcc/gcc.c
index eb1610ba8b0..87560afb03c 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -900,7 +900,7 @@ proper position among the other output files. */
#define NO_FPIE_AND_FPIC_SPEC NO_FPIE_SPEC "|" NO_FPIC_SPEC
#define FPIE_OR_FPIC_SPEC NO_FPIE_AND_FPIC_SPEC ":;"
#else
-#define PIE_SPEC "pie"
+#define PIE_SPEC "pie|static-pie"
#define FPIE1_SPEC "fpie"
#define NO_FPIE1_SPEC FPIE1_SPEC ":;"
#define FPIE2_SPEC "fPIE"
@@ -924,12 +924,12 @@ proper position among the other output files. */
#ifndef LINK_PIE_SPEC
#ifdef HAVE_LD_PIE
#ifndef LD_PIE_SPEC
-#define LD_PIE_SPEC "-pie"
+#define LD_PIE_SPEC "-pie %{static|static-pie:--no-dynamic-linker -z text -Bsymbolic}"
#endif
#else
#define LD_PIE_SPEC ""
#endif
-#define LINK_PIE_SPEC "%{static|shared|r:;" PIE_SPEC ":" LD_PIE_SPEC "} "
+#define LINK_PIE_SPEC "%{shared|r:;" PIE_SPEC ":" LD_PIE_SPEC "} "
#endif
#ifndef LINK_BUILDID_SPEC
--
2.17.1
@@ -1,19 +1,19 @@
From 9e3eab51e518018d9d99b3123598b1e2322a6af3 Mon Sep 17 00:00:00 2001
From 354f2a8ceb70f9f6e1688ba41c1cc1c17ac87329 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH 3/6] libgcc_s
Subject: [PATCH 13/40] libgcc_s
---
gcc/config/i386/i386.c | 4 ++--
libgcc/config/i386/cpuinfo.c | 6 +++---
libgcc/config/i386/t-linux | 2 +-
gcc/config/i386/i386-expand.c | 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.c b/gcc/config/i386/i386.c
index 3d044e8..82523e1 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -40269,10 +40269,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c
index c6033688f51..a60e5162995 100644
--- a/gcc/config/i386/i386-expand.c
+++ b/gcc/config/i386/i386-expand.c
@@ -10966,10 +10966,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
{
case IX86_BUILTIN_CPU_INIT:
{
@@ -27,10 +27,10 @@ index 3d044e8..82523e1 100644
return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
}
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index 8c2248d..6c82f15 100644
index cf5f0884bb4..ed0381e7744 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -485,7 +485,7 @@ __cpu_indicator_init (void)
@@ -510,7 +510,7 @@ __cpu_indicator_init (void)
return 0;
}
@@ -42,7 +42,7 @@ index 8c2248d..6c82f15 100644
+ __attribute__ ((weak, alias ("__cpu_indicator_init")));
#endif
diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
index 11bb46e..4f47f7b 100644
index 8506a635790..564296f788e 100644
--- a/libgcc/config/i386/t-linux
+++ b/libgcc/config/i386/t-linux
@@ -3,5 +3,5 @@
@@ -53,5 +53,5 @@ index 11bb46e..4f47f7b 100644
+HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS)
CRTSTUFF_T_CFLAGS += $(CET_FLAGS)
--
2.8.1
2.29.2
@@ -1,7 +1,7 @@
From b6015aca9c9cc83739fd0ed637a835119b2c4e34 Mon Sep 17 00:00:00 2001
From 7fb84007ff62309abffdbddfa751e69c331e82c3 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH 5/6] nopie
Subject: [PATCH 14/40] nopie
---
gcc/configure | 27 +++++++++++++++++++++++++++
@@ -9,10 +9,10 @@ Subject: [PATCH 5/6] nopie
2 files changed, 40 insertions(+)
diff --git a/gcc/configure b/gcc/configure
index 1c6e340..7e8b5d6 100755
index 793530e21cf..2d874d3defe 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -29390,6 +29390,33 @@ fi
@@ -30779,6 +30779,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 1c6e340..7e8b5d6 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 6c1dcd9..0ca7647 100644
index 0fd438e39e5..0b257e687ee 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -6098,6 +6098,19 @@ AC_CACHE_CHECK([for -no-pie option],
@@ -6863,6 +6863,19 @@ AC_CACHE_CHECK([for -no-pie option],
LDFLAGS="$saved_LDFLAGS"])
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
@@ -71,5 +71,5 @@ index 6c1dcd9..0ca7647 100644
AC_SUBST([NO_PIE_FLAG])
--
2.8.1
2.29.2
@@ -0,0 +1,25 @@
From 3f764eb6dc371cc48cfdf231cbd40e64b1f2a671 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:09 +0000
Subject: [PATCH 15/40] 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.29.2
@@ -1,6 +1,16 @@
diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
--- a/libphobos/src/std/zlib.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/src/std/zlib.d 2020-01-01 00:00:00.000000000 +0900
From b78dea0f8f09d4092bec52b7ada719ead2552dd2 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:51 +0000
Subject: [PATCH 16/40] 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.
@@ -62,7 +72,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Adler-32)
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] b
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] buf)
* buf = buffer containing input data
*
* Returns:
@@ -89,7 +99,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
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,
@@ -276,7 +282,7 @@ void[] uncompress(const(void)[] srcbuf, size_t destlen = 0u, int winbits = 15)
throw new ZlibException(err);
}
}
@@ -172,7 +182,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
if (!inited)
{
@@ -598,26 +607,152 @@ class UnCompress
if (!destbufsize)
destbufsize = to!uint(buf.length) * 2;
- destbuf = new ubyte[zs.avail_in * 2 + destbufsize];
@@ -334,7 +344,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
/**
* Decompress and return any remaining data.
* The returned data should be appended to that returned by uncompress().
@@ -626,48 +761,39 @@ class UnCompress
@@ -626,49 +761,40 @@ class UnCompress
void[] flush()
in
{
@@ -409,3 +419,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
+ assert(decompressor.empty, "The UnCompressor reports not being done");
}
}
--
2.29.2
@@ -1,29 +0,0 @@
Fixes errors such as:
GEGL-Message: 16:04:13.794: Module '/usr/lib/gegl-0.4/raw-load.so' load error: Error relocating /usr/lib/libgomp.so.1: __cxa_finalize: initial-exec TLS resolves to dynamic definition in /usr/lib/libgomp.so.1
--- a/libgomp/configure.tgt 2018-11-08 18:13:04.000000000 +0100
+++ b/libgomp/configure.tgt 2019-06-29 20:06:31.972950350 +0200
@@ -10,23 +10,6 @@
# XCFLAGS Add extra compile flags to use.
# XLDFLAGS Add extra link flags to use.
-# Optimize TLS usage by avoiding the overhead of dynamic allocation.
-if test $gcc_cv_have_tls = yes ; then
- case "${target}" in
-
- *-*-k*bsd*-gnu*)
- ;;
-
- *-*-linux* | *-*-gnu*)
- XCFLAGS="${XCFLAGS} -ftls-model=initial-exec -DUSING_INITIAL_EXEC_TLS"
- ;;
-
- *-*-rtems*)
- XCFLAGS="${XCFLAGS} -ftls-model=local-exec"
- ;;
- esac
-fi
-
# Since we require POSIX threads, assume a POSIX system by default.
config_path="posix"
@@ -0,0 +1,51 @@
From 58c529af8a9673b90dc7137065ab788c25b358a8 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:58:22 +0000
Subject: [PATCH 17/40] dlang: fix fcntl on mips, add libucontext dep
---
libphobos/configure.tgt | 1 +
libphobos/libdruntime/core/sys/posix/fcntl.d | 15 +++++++++++++++
2 files changed, 16 insertions(+)
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
index 94e42bf5509..73f2e4b7f01 100644
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -35,6 +35,7 @@ case "${target}" in
;;
mips*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
+ LIBDRUNTIME_NEEDS_UCONTEXT=yes
;;
power*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
diff --git a/libphobos/libdruntime/core/sys/posix/fcntl.d b/libphobos/libdruntime/core/sys/posix/fcntl.d
index 9febcff849b..cb34e2108bd 100644
--- a/libphobos/libdruntime/core/sys/posix/fcntl.d
+++ b/libphobos/libdruntime/core/sys/posix/fcntl.d
@@ -870,6 +870,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.29.2
@@ -0,0 +1,42 @@
From 2a614f9b702b02c312cd513eddb1fc6745f9a3ad Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH 18/40] ada: fix shared linking
---
gcc/ada/link.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/link.c b/gcc/ada/link.c
index 02c413a412f..f0e52a87d6e 100644
--- a/gcc/ada/link.c
+++ b/gcc/ada/link.c
@@ -107,9 +107,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
|| defined (__NetBSD__) || defined (__OpenBSD__) \
|| defined (__QNX__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
@@ -129,9 +129,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
#elif defined (__linux__) || defined (__GLIBC__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
2.29.2
@@ -0,0 +1,24 @@
From dab36b973223e0d6853f564e845bc22dadcc4d2d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH 19/40] build: fix CXXFLAGS_FOR_BUILD passing
---
Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.in b/Makefile.in
index 36e369df6e7..63627db68cf 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -170,6 +170,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
--
2.29.2
@@ -0,0 +1,32 @@
From c2efb7703c2ef381a8b1d1cd751222e0a7e10665 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:00:17 +0000
Subject: [PATCH 20/40] libstdc++: futex: add time64 compatibility
---
libstdc++-v3/src/c++11/futex.cc | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/libstdc++-v3/src/c++11/futex.cc b/libstdc++-v3/src/c++11/futex.cc
index c9de11a7ec7..7be702dbeda 100644
--- a/libstdc++-v3/src/c++11/futex.cc
+++ b/libstdc++-v3/src/c++11/futex.cc
@@ -61,7 +61,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct timeval tv;
gettimeofday (&tv, NULL);
// Convert the absolute timeout value to a relative timeout
+#if defined(SYS_futex_time64)
+ struct
+ {
+ long tv_sec;
+ long tv_nsec;
+ } rt;
+#else
struct timespec rt;
+#endif
rt.tv_sec = __s.count() - tv.tv_sec;
rt.tv_nsec = __ns.count() - tv.tv_usec * 1000;
if (rt.tv_nsec < 0)
--
2.29.2
@@ -0,0 +1,25 @@
From ca8a8331acef15d0b3b095b8c63539acd1d93e8b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:01:06 +0000
Subject: [PATCH 21/40] add fortify-headers paths
---
gcc/config/linux.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 95654bcdb5a..d88df8f154a 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
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
+ { NATIVE_SYSTEM_HEADER_DIR "/fortify", 0, 0, 0, 1, 2 }, \
+ { NATIVE_SYSTEM_HEADER_DIR "/fortify", 0, 0, 0, 1, 0 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 },
#else
--
2.29.2
@@ -0,0 +1,31 @@
From 23468db70f830e99ac138826d28cc33fa71d3405 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 22/40] Alpine musl package provides libssp_nonshared.a. We
link to it unconditionally, as otherwise we get link failures if some objects
are -fstack-protector built and final link happens with -fno-stack-protector.
This seems to be the common case when bootstrapping gcc, the piepatches do
not seem to fully fix the crosstoolchain and bootstrap sequence wrt.
stack-protector flag usage.
---
gcc/gcc.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index daeb4d0c8ea..6920bec0fa0 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -894,8 +894,7 @@ proper position among the other output files. */
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
-#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
- "|fstack-protector-strong|fstack-protector-explicit:}"
+#define LINK_SSP_SPEC "-lssp_nonshared"
#else
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
"|fstack-protector-strong|fstack-protector-explicit" \
--
2.29.2
@@ -1,10 +1,18 @@
# DP: Use --push-state/--pop-state for gold as well when linking libtsan.
From 67513cb76a43014172f54384c3bad0c41e949c8a Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:03:42 +0000
Subject: [PATCH 23/40] DP: Use --push-state/--pop-state for gold as well when
linking libtsan.
Index: b/gcc/gcc.c
===================================================================
---
gcc/gcc.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 6920bec0fa0..40e07354b3d 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -693,10 +693,10 @@ proper position among the other output f
@@ -696,10 +696,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 "}" \
@@ -17,7 +25,7 @@ Index: b/gcc/gcc.c
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -714,10 +714,10 @@ proper position among the other output f
@@ -717,10 +717,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 "}" \
@@ -30,7 +38,7 @@ Index: b/gcc/gcc.c
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -735,10 +735,10 @@ proper position among the other output f
@@ -738,10 +738,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 "}" \
@@ -43,7 +51,7 @@ Index: b/gcc/gcc.c
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -754,10 +754,10 @@ proper position among the other output f
@@ -757,10 +757,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 "}" \
@@ -56,3 +64,6 @@ Index: b/gcc/gcc.c
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.29.2
@@ -1,7 +1,7 @@
From b8c4e45d052adc247341066f748421743704b481 Mon Sep 17 00:00:00 2001
From 5d9d38da4f523c052a5bcd2562d79809b4136f2c 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] Pure 64-bit MIPS
Subject: [PATCH 24/40] Pure 64-bit MIPS
---
gcc/config/mips/mips.h | 8 ++++----
@@ -9,10 +9,10 @@ Subject: [PATCH] Pure 64-bit MIPS
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 803ab98e7..afd74752f 100644
index 3ce0c19a29a..b9920b49167 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -3330,11 +3330,11 @@ struct GTY(()) machine_function {
@@ -3424,11 +3424,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
@@ -29,7 +29,7 @@ index 803ab98e7..afd74752f 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 16c8adf85..bb46204db 100644
index ceb58d3b5f3..8116e23ebba 100644
--- a/gcc/config/mips/t-linux64
+++ b/gcc/config/mips/t-linux64
@@ -21,6 +21,6 @@ MULTILIB_DIRNAMES = n32 32 64
@@ -43,5 +43,5 @@ index 16c8adf85..bb46204db 100644
+ ../lib32 \
+ ../lib
--
2.15.1
2.29.2
@@ -1,6 +1,36 @@
--- ./gcc/config/i386/t-linux64.orig 2013-01-14 16:32:37.000000000 +0000
+++ ./gcc/config/i386/t-linux64 2013-04-22 06:12:32.984439677 +0000
@@ -34,6 +34,6 @@
From ac0eeb3237ac2cf75c19be92afe3335c9a0d83bb Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:04:40 +0000
Subject: [PATCH 25/40] use pure 64-bit configuration where appropriate
---
gcc/config/aarch64/t-aarch64-linux | 2 +-
gcc/config/i386/t-linux64 | 4 ++--
gcc/config/rs6000/t-linux | 6 ++++--
gcc/config/rs6000/t-linux64 | 4 ++--
gcc/config/rs6000/t-linux64bele | 4 ++--
gcc/config/rs6000/t-linux64lebe | 4 ++--
gcc/config/s390/t-linux64 | 4 ++--
7 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
index 83e59e33b85..6ec56fdf6a8 100644
--- a/gcc/config/aarch64/t-aarch64-linux
+++ b/gcc/config/aarch64/t-aarch64-linux
@@ -22,7 +22,7 @@ LIB1ASMSRC = aarch64/lib1funcs.asm
LIB1ASMFUNCS = _aarch64_sync_cache_range
AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
+MULTILIB_OSDIRNAMES = mabi.lp64=../lib
MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
index 1171e218578..256f8c079ba 100644
--- a/gcc/config/i386/t-linux64
+++ b/gcc/config/i386/t-linux64
@@ -33,6 +33,6 @@
comma=,
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
@@ -9,29 +39,10 @@
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
--- ./gcc/config/aarch64/t-aarch64-linux.orig
+++ ./gcc/config/aarch64/t-aarch64-linux
@@ -22,7 +22,7 @@
LIB1ASMFUNCS = _aarch64_sync_cache_range
AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
+MULTILIB_OSDIRNAMES = mabi.lp64=../lib
MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32
--- ./gcc/config/s390/t-linux64.orig
+++ ./gcc/config/s390/t-linux64
@@ -7,5 +7,5 @@
MULTILIB_OPTIONS = m64/m31
MULTILIB_DIRNAMES = 64 32
-MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu)
-MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
--- ./gcc/config/rs6000/t-linux.orig
+++ ./gcc/config/rs6000/t-linux
diff --git a/gcc/config/rs6000/t-linux b/gcc/config/rs6000/t-linux
index aeb7440c492..ab14c455d8d 100644
--- a/gcc/config/rs6000/t-linux
+++ b/gcc/config/rs6000/t-linux
@@ -2,7 +2,8 @@
# or soft-float.
ifeq (,$(filter $(with_cpu),$(SOFT_FLOAT_CPUS))$(findstring soft,$(with_float)))
@@ -40,9 +51,9 @@
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
else
ifneq (,$(findstring spe,$(target)))
MULTIARCH_DIRNAME := powerpc-linux-gnuspe$(if $(findstring 8548,$(with_cpu)),,v1)
@@ -14,7 +15,8 @@
MULTIARCH_DIRNAME := $(call if_multiarch,powerpc-linux-gnu)
endif
@@ -10,7 +11,8 @@ ifneq (,$(findstring powerpcle,$(target)))
MULTIARCH_DIRNAME := $(subst -linux,le-linux,$(MULTIARCH_DIRNAME))
endif
ifneq (,$(findstring powerpc64le,$(target)))
@@ -52,8 +63,10 @@
endif
endif
--- ./gcc/config/rs6000/t-linux64.orig
+++ ./gcc/config/rs6000/t-linux64
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
index 264a7e27524..d1e460811cc 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -28,8 +28,8 @@
MULTILIB_OPTIONS := m64/m32
MULTILIB_DIRNAMES := 64 32
@@ -65,8 +78,10 @@
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
$(COMPILE) $<
--- ./gcc/config/rs6000/t-linux64bele.orig
+++ ./gcc/config/rs6000/t-linux64bele
diff --git a/gcc/config/rs6000/t-linux64bele b/gcc/config/rs6000/t-linux64bele
index 97c1ee6fb4d..08d72639cb6 100644
--- a/gcc/config/rs6000/t-linux64bele
+++ b/gcc/config/rs6000/t-linux64bele
@@ -2,6 +2,6 @@
MULTILIB_OPTIONS += mlittle
@@ -76,8 +91,10 @@
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
--- ./gcc/config/rs6000/t-linux64lebe.orig
+++ ./gcc/config/rs6000/t-linux64lebe
diff --git a/gcc/config/rs6000/t-linux64lebe b/gcc/config/rs6000/t-linux64lebe
index 2e63bdb9fc9..c6e1c5db65d 100644
--- a/gcc/config/rs6000/t-linux64lebe
+++ b/gcc/config/rs6000/t-linux64lebe
@@ -2,6 +2,6 @@
MULTILIB_OPTIONS += mbig
@@ -87,3 +104,18 @@
+MULTILIB_OSDIRNAMES := m64=../lib
+MULTILIB_OSDIRNAMES += m32=../lib32
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
diff --git a/gcc/config/s390/t-linux64 b/gcc/config/s390/t-linux64
index cc6ab367072..7f498ee1cdc 100644
--- a/gcc/config/s390/t-linux64
+++ b/gcc/config/s390/t-linux64
@@ -7,5 +7,5 @@
MULTILIB_OPTIONS = m64/m31
MULTILIB_DIRNAMES = 64 32
-MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu)
-MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
--
2.29.2
@@ -0,0 +1,51 @@
From 3f35cf750117fa7cbceaf33e4bea008d0688bd93 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:05:41 +0000
Subject: [PATCH 26/40] always build libgcc_eh.a
highly inspired by:
http://landley.net/hg/aboriginal/file/7e0747a665ab/sources/patches/gcc-core-libgcceh.patch
---
libgcc/Makefile.in | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 851e7657d07..99ec513a1a6 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -956,8 +956,9 @@ ifneq ($(LIBUNWIND),)
all: libunwind.a
endif
+all: libgcc_eh.a
ifeq ($(enable_shared),yes)
-all: libgcc_eh.a libgcc_s$(SHLIB_EXT)
+all: libgcc_s$(SHLIB_EXT)
ifneq ($(LIBUNWIND),)
all: libunwind$(SHLIB_EXT)
libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_EXT)
@@ -1159,10 +1160,6 @@ install-libunwind:
install-shared:
$(mkinstalldirs) $(DESTDIR)$(inst_libdir)
- $(INSTALL_DATA) libgcc_eh.a $(DESTDIR)$(inst_libdir)/
- chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a
- $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a
-
$(subst @multilib_dir@,$(MULTIDIR),$(subst \
@shlib_base_name@,libgcc_s,$(subst \
@shlib_slibdir_qual@,$(MULTIOSSUBDIR),$(SHLIB_INSTALL))))
@@ -1179,6 +1176,10 @@ ifeq ($(enable_gcov),yes)
$(RANLIB) $(DESTDIR)$(inst_libdir)/libgcov.a
endif
+ $(INSTALL_DATA) libgcc_eh.a $(DESTDIR)$(inst_libdir)/
+ chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a
+ $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a
+
parts="$(INSTALL_PARTS)"; \
for file in $$parts; do \
rm -f $(DESTDIR)$(inst_libdir)/$$file; \
--
2.29.2
@@ -1,7 +1,18 @@
diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-osinte__linux.ads gcc-8.2.0-new/gcc/ada/libgnarl/s-osinte__linux.ads
--- gcc-8.2.0/gcc/ada/libgnarl/s-osinte__linux.ads 2018-01-11 00:55:25.000000000 -0800
+++ gcc-8.2.0-new/gcc/ada/libgnarl/s-osinte__linux.ads 2018-11-01 16:16:23.372452951 -0700
@@ -394,12 +394,6 @@ package System.OS_Interface is
From 48342d154084bb9610b8f02f93fcfc2aa606595a Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:06:30 +0000
Subject: [PATCH 27/40] ada: libgnarl compatibility for musl
---
gcc/ada/libgnarl/s-osinte__linux.ads | 11 ------
gcc/ada/libgnarl/s-taprop__linux.adb | 53 ++--------------------------
2 files changed, 3 insertions(+), 61 deletions(-)
diff --git a/gcc/ada/libgnarl/s-osinte__linux.ads b/gcc/ada/libgnarl/s-osinte__linux.ads
index 80cb2b2a793..701b7a3aeab 100644
--- a/gcc/ada/libgnarl/s-osinte__linux.ads
+++ b/gcc/ada/libgnarl/s-osinte__linux.ads
@@ -399,12 +399,6 @@ package System.OS_Interface is
PTHREAD_RWLOCK_PREFER_WRITER_NP : constant := 1;
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP : constant := 2;
@@ -14,7 +25,7 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-osinte__linux.ads gcc-8.2.0-new/gcc/ada/l
function pthread_rwlock_init
(mutex : access pthread_rwlock_t;
attr : access pthread_rwlockattr_t) return int;
@@ -464,11 +458,6 @@ package System.OS_Interface is
@@ -466,11 +460,6 @@ package System.OS_Interface is
protocol : int) return int;
pragma Import (C, pthread_mutexattr_setprotocol);
@@ -26,10 +37,11 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-osinte__linux.ads gcc-8.2.0-new/gcc/ada/l
type struct_sched_param is record
sched_priority : int; -- scheduling priority
end record;
diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/libgnarl/s-taprop__linux.adb
--- gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb 2018-01-11 00:55:25.000000000 -0800
+++ gcc-8.2.0-new/gcc/ada/libgnarl/s-taprop__linux.adb 2018-11-13 11:28:36.433964449 -0800
@@ -202,9 +202,6 @@ package body System.Task_Primitives.Oper
diff --git a/gcc/ada/libgnarl/s-taprop__linux.adb b/gcc/ada/libgnarl/s-taprop__linux.adb
index c45559e5ba0..0b0f173e7d4 100644
--- a/gcc/ada/libgnarl/s-taprop__linux.adb
+++ b/gcc/ada/libgnarl/s-taprop__linux.adb
@@ -202,9 +202,6 @@ package body System.Task_Primitives.Operations is
pragma Import
(C, GNAT_pthread_condattr_setup, "__gnat_pthread_condattr_setup");
@@ -39,7 +51,7 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/l
-- We do not have pragma Linker_Options ("-lcap"); here, because this
-- library is not present on many Linux systems. 'libcap' is the Linux
-- "capabilities" library, called by __gnat_has_cap_sys_nice.
@@ -214,38 +211,6 @@ package body System.Task_Primitives.Oper
@@ -214,38 +211,6 @@ package body System.Task_Primitives.Operations is
-- Convert Ada priority to Linux priority. Priorities are 1 .. 99 on
-- GNU/Linux, so we map 0 .. 98 to 1 .. 99.
@@ -78,7 +90,7 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/l
-- True if the locking policy is Ceiling_Locking, and the current process
-- has permission to use this policy. The process has permission if it is
-- running as 'root', or if the capability was set by the setcap command,
@@ -348,7 +313,9 @@ package body System.Task_Primitives.Oper
@@ -348,7 +313,9 @@ package body System.Task_Primitives.Operations is
-- Init_Mutex --
----------------
@@ -88,7 +100,7 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/l
Mutex_Attr : aliased pthread_mutexattr_t;
Result, Result_2 : C.int;
@@ -360,16 +327,7 @@ package body System.Task_Primitives.Oper
@@ -360,16 +327,7 @@ package body System.Task_Primitives.Operations is
return Result;
end if;
@@ -106,7 +118,7 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/l
Result := pthread_mutexattr_setprotocol
(Mutex_Attr'Access, PTHREAD_PRIO_INHERIT);
pragma Assert (Result = 0);
@@ -409,11 +367,6 @@ package body System.Task_Primitives.Oper
@@ -409,11 +367,6 @@ package body System.Task_Primitives.Operations is
Result := pthread_rwlockattr_init (RWlock_Attr'Access);
pragma Assert (Result = 0);
@@ -118,3 +130,6 @@ diff -rup gcc-8.2.0/gcc/ada/libgnarl/s-taprop__linux.adb gcc-8.2.0-new/gcc/ada/l
Result := pthread_rwlock_init (L.RW'Access, RWlock_Attr'Access);
pragma Assert (Result in 0 | ENOMEM);
--
2.29.2
@@ -1,8 +1,69 @@
From 0d517a7c90f9e21616c8ad0c66e24c1554f6658c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:07:48 +0000
Subject: [PATCH 28/40] ada: musl support fixes
---
gcc/ada/Makefile.rtl | 10 +++++-----
gcc/ada/adaint.c | 34 +++++++++++++++++++---------------
gcc/ada/adaint.h | 10 ++++------
gcc/ada/terminals.c | 8 ++++----
4 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 55ff9b0f3d5..0fadf4e4b79 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1533,7 +1533,7 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
s-intman.adb<libgnarl/s-intman__posix.adb \
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
a-exetim.adb<libgnarl/a-exetim__posix.adb \
a-exetim.ads<libgnarl/a-exetim__default.ads \
s-linux.ads<libgnarl/s-linux.ads \
@@ -2083,7 +2083,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
s-osinte.adb<libgnarl/s-osinte__posix.adb \
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ppc.ads
@@ -2112,7 +2112,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
endif
# ARM linux, GNU eabi
-ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(target_cpu) $(target_os))),)
+ifeq ($(strip $(filter-out arm% linux-gnueabi% linux-musleabi% linux-muslgnueabi%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
@@ -2305,7 +2305,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ia64.ads
@@ -2401,7 +2401,7 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
s-taspri.ads<libgnarl/s-taspri__posix.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(X86_64_TARGET_PAIRS) \
system.ads<libgnat/system-linux-x86.ads
diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index 3b0aea9..ee0bb69 100644
index 595abf87d65..00858c24f53 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -76,6 +76,11 @@
@@ -90,6 +90,11 @@
#include <sys/param.h>
#include <sys/pstat.h>
#endif
@@ -14,7 +75,7 @@ index 3b0aea9..ee0bb69 100644
#ifdef __PikeOS__
#define __BSD_VISIBLE 1
@@ -3255,7 +3260,6 @@ __gnat_lwp_self (void)
@@ -3308,7 +3313,6 @@ __gnat_lwp_self (void)
#endif
#if defined (__linux__)
@@ -22,7 +83,7 @@ index 3b0aea9..ee0bb69 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
@@ -3265,7 +3269,7 @@ __gnat_lwp_self (void)
@@ -3318,7 +3322,7 @@ __gnat_lwp_self (void)
/* Dynamic cpu sets */
@@ -31,7 +92,7 @@ index 3b0aea9..ee0bb69 100644
__gnat_cpu_alloc (size_t count)
{
return CPU_ALLOC (count);
@@ -3278,33 +3282,33 @@ __gnat_cpu_alloc_size (size_t count)
@@ -3331,33 +3335,33 @@ __gnat_cpu_alloc_size (size_t count)
}
void
@@ -73,7 +134,7 @@ index 3b0aea9..ee0bb69 100644
}
size_t
@@ -3314,23 +3318,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED)
@@ -3367,23 +3371,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED)
}
void
@@ -103,7 +164,7 @@ index 3b0aea9..ee0bb69 100644
#endif /* !CPU_ALLOC */
#endif /* __linux__ */
diff --git a/gcc/ada/adaint.h b/gcc/ada/adaint.h
index 0d12f7e..a063b47 100644
index 311e240dfcc..1c4d0050103 100644
--- a/gcc/ada/adaint.h
+++ b/gcc/ada/adaint.h
@@ -316,13 +316,11 @@ extern void *__gnat_lwp_self (void);
@@ -124,56 +185,11 @@ index 0d12f7e..a063b47 100644
#endif
#if defined (_WIN32)
--- a/gcc/ada/Makefile.rtl 2019-05-14 21:18:45.217455681 +0200
+++ b/gcc/ada/Makefile.rtl 2019-05-14 21:21:30.686464218 +0200
@@ -1521,7 +1521,7 @@
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
g-sercom.adb<libgnat/g-sercom__linux.adb \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
a-exetim.adb<libgnarl/a-exetim__posix.adb \
a-exetim.ads<libgnarl/a-exetim__default.ads \
s-linux.ads<libgnarl/s-linux.ads \
@@ -2073,7 +2073,7 @@
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
g-sercom.adb<libgnat/g-sercom__linux.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ppc.ads
@@ -2102,7 +2102,7 @@
endif
# ARM linux, GNU eabi
-ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(target_cpu) $(target_os))),)
+ifeq ($(strip $(filter-out arm% linux-gnueabi% linux-musleabi% linux-muslgnueabi%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
@@ -2297,7 +2297,7 @@
s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
g-sercom.adb<libgnat/g-sercom__linux.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ia64.ads
@@ -2394,7 +2394,7 @@
s-taspri.ads<libgnarl/s-taspri__posix.ads \
g-sercom.adb<libgnat/g-sercom__linux.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
- s-tsmona.adb<libgnat/s-tsmona__linux.adb \
+ s-tsmona.adb<libgnat/s-tsmona.adb \
$(ATOMICS_TARGET_PAIRS) \
$(X86_64_TARGET_PAIRS) \
system.ads<libgnat/system-linux-x86.ads
--- a/gcc/ada/terminals.c 2019-01-08 10:54:04.000000000 +0100
+++ b/gcc/ada/terminals.c 2019-05-15 13:14:09.935742526 +0200
@@ -1136,7 +1136,7 @@
diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c
index af4417fab90..bab6bf3ca87 100644
--- a/gcc/ada/terminals.c
+++ b/gcc/ada/terminals.c
@@ -1145,7 +1145,7 @@ __gnat_setup_winsize (void *desc, int rows, int columns)
/* POSIX does not specify how to open the master side of a terminal.Several
methods are available (system specific):
1- using a cloning device (USE_CLONE_DEVICE)
@@ -182,7 +198,7 @@ index 0d12f7e..a063b47 100644
3- openpty (USE_OPENPTY)
When using the cloning device method, the macro USE_CLONE_DEVICE should
@@ -1150,7 +1150,7 @@
@@ -1159,7 +1159,7 @@ __gnat_setup_winsize (void *desc, int rows, int columns)
#if defined (__APPLE__) || defined (BSD)
#define USE_OPENPTY
#elif defined (__linux__)
@@ -191,7 +207,7 @@ index 0d12f7e..a063b47 100644
#elif defined (__sun__)
#define USE_CLONE_DEVICE "/dev/ptmx"
#elif defined (_AIX)
@@ -1199,8 +1199,8 @@
@@ -1208,8 +1208,8 @@ allocate_pty_desc (pty_desc **desc) {
int master_fd = -1;
char *slave_name = NULL;
@@ -202,3 +218,6 @@ index 0d12f7e..a063b47 100644
#elif defined (USE_OPENPTY)
status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL);
#elif defined (USE_CLONE_DEVICE)
--
2.29.2
@@ -0,0 +1,48 @@
From 3d86ab883c2a67dc9828f73a3d84c9fdb202ec32 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:58:08 +0200
Subject: [PATCH 29/40] gcc-go: Use _off_t type instead of _loff_t
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/go/syscall/libcall_linux.go | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/libgo/go/syscall/libcall_linux.go b/libgo/go/syscall/libcall_linux.go
index 88286c07b6e..f8f5cfb5011 100644
--- a/libgo/go/syscall/libcall_linux.go
+++ b/libgo/go/syscall/libcall_linux.go
@@ -206,19 +206,19 @@ func Gettid() (tid int) {
//sys Setxattr(path string, attr string, data []byte, flags int) (err error)
//setxattr(path *byte, name *byte, value *byte, size Size_t, flags _C_int) _C_int
-//sys splice(rfd int, roff *_loff_t, wfd int, woff *_loff_t, len int, flags int) (n int64, err error)
-//splice(rfd _C_int, roff *_loff_t, wfd _C_int, woff *_loff_t, len Size_t, flags _C_uint) Ssize_t
+//sys splice(rfd int, roff *_off_t, wfd int, woff *_off_t, len int, flags int) (n int64, err error)
+//splice(rfd _C_int, roff *_off_t, wfd _C_int, woff *_off_t, len Size_t, flags _C_uint) Ssize_t
func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
- var lroff _loff_t
- var plroff *_loff_t
+ var lroff _off_t
+ var plroff *_off_t
if roff != nil {
- lroff = _loff_t(*roff)
+ lroff = _off_t(*roff)
plroff = &lroff
}
- var lwoff _loff_t
- var plwoff *_loff_t
+ var lwoff _off_t
+ var plwoff *_off_t
if woff != nil {
- lwoff = _loff_t(*woff)
+ lwoff = _off_t(*woff)
plwoff = &lwoff
}
n, err = splice(rfd, plroff, wfd, plwoff, len, flags)
--
2.29.2
@@ -0,0 +1,30 @@
From da63b5262701f91a2261812332f2850be0180634 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:58:21 +0200
Subject: [PATCH 30/40] gcc-go: Don't include sys/user.h
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/sysinfo.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/libgo/sysinfo.c b/libgo/sysinfo.c
index 0692fd41eb7..c8d987358d9 100644
--- a/libgo/sysinfo.c
+++ b/libgo/sysinfo.c
@@ -73,9 +73,6 @@
#include <sys/times.h>
#include <sys/wait.h>
#include <sys/un.h>
-#if defined(HAVE_SYS_USER_H)
-#include <sys/user.h>
-#endif
#if defined(HAVE_SYS_UTSNAME_H)
#include <sys/utsname.h>
#endif
--
2.29.2
@@ -0,0 +1,29 @@
From 18d6d2d1f62a4232340696fb7d68d248c751e416 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:59:22 +0200
Subject: [PATCH 31/40] gcc-go: Fix ucontext_t on PPC64
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/runtime/go-signal.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c
index b429fdb2403..fd1c885f043 100644
--- a/libgo/runtime/go-signal.c
+++ b/libgo/runtime/go-signal.c
@@ -224,7 +224,7 @@ getSiginfo(siginfo_t *info, void *context __attribute__((unused)))
#elif defined(__alpha__) && defined(__linux__)
ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.sc_pc;
#elif defined(__PPC__) && defined(__linux__)
- ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.regs->nip;
+ ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gp_regs[32];
#elif defined(__PPC__) && defined(_AIX)
ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.jmp_context.iar;
#elif defined(__aarch64__) && defined(__linux__)
--
2.29.2
@@ -0,0 +1,43 @@
From d9942a2e54f69dee9c03e5e4339a6c62473e6845 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 32/40] gcc-go: Fix handling of signal 34 on musl
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/mksigtab.sh | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/libgo/mksigtab.sh b/libgo/mksigtab.sh
index 11e4ec436bd..fe866eacb27 100644
--- a/libgo/mksigtab.sh
+++ b/libgo/mksigtab.sh
@@ -82,7 +82,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"}'
-checksig _SIGPOLL '{_SigNotify, "SIGPOLL: pollable event occurred"}'
+#checksig _SIGPOLL '{_SigNotify, "SIGPOLL: pollable event occurred"}'
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.29.2
@@ -0,0 +1,38 @@
From 38e7c12086acae4507f9d5067f947431a28c34db Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:01:03 +0200
Subject: [PATCH 33/40] gcc-go: Use int64 type as offset argument for mmap
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Taken from Adélie Linux.
---
libgo/go/runtime/mem_gccgo.go | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libgo/go/runtime/mem_gccgo.go b/libgo/go/runtime/mem_gccgo.go
index ba38ebaa9ab..3c9e5ce9461 100644
--- a/libgo/go/runtime/mem_gccgo.go
+++ b/libgo/go/runtime/mem_gccgo.go
@@ -15,7 +15,7 @@ import (
//go:linkname sysFree
//extern mmap
-func sysMmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off uintptr) unsafe.Pointer
+func sysMmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off int64) unsafe.Pointer
//extern munmap
func munmap(addr unsafe.Pointer, length uintptr) int32
@@ -37,7 +37,7 @@ func init() {
}
}
-func mmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off uintptr) (unsafe.Pointer, int) {
+func mmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off int64) (unsafe.Pointer, int) {
p := sysMmap(addr, n, prot, flags, fd, off)
if uintptr(p) == _MAP_FAILED {
return nil, errno()
--
2.29.2
@@ -0,0 +1,38 @@
From a4e800081081b00539bbb6fd8b5cf6b66504cfaa Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:02:28 +0200
Subject: [PATCH 34/40] gcc-go: Fix st_{a,m,c}tim fields in generated
sysinfo.go
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
There are more than one st_{a,m,c}tim fields in struct stat on time64 machines.
Run the Go-isation on all of them.
Taken from Adélie Linux.
---
libgo/mksysinfo.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh
index bd2ba32cba1..972e2c379bc 100755
--- a/libgo/mksysinfo.sh
+++ b/libgo/mksysinfo.sh
@@ -510,9 +510,9 @@ fi | sed -e 's/type _stat64/type Stat_t/' \
-e 's/st_size/Size/' \
-e 's/st_blksize/Blksize/' \
-e 's/st_blocks/Blocks/' \
- -e 's/st_atim/Atim/' \
- -e 's/st_mtim/Mtim/' \
- -e 's/st_ctim/Ctim/' \
+ -e 's/st_atim/Atim/g' \
+ -e 's/st_mtim/Mtim/g' \
+ -e 's/st_ctim/Ctim/g' \
-e 's/\([^a-zA-Z0-9_]\)_timeval\([^a-zA-Z0-9_]\)/\1Timeval\2/g' \
-e 's/\([^a-zA-Z0-9_]\)_timespec_t\([^a-zA-Z0-9_]\)/\1Timespec\2/g' \
-e 's/\([^a-zA-Z0-9_]\)_st_timespec_t\([^a-zA-Z0-9_]\)/\1StTimespec\2/g' \
--
2.29.2
@@ -0,0 +1,29 @@
From 57ccf0ad7f0c4b1f998ebfb6cdaa7d1876012d66 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 35/40] 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 c555712a03c..9e228580d37 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.29.2
@@ -0,0 +1,30 @@
From e6d4cdd4d03cceb01e8ed03bbe7d35b5798abc88 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:26:53 +0200
Subject: [PATCH 36/40] gcc-go: Prefer _off_t over _off64_t
musl does not seem to have _off64_t.
---
libgo/mksysinfo.sh | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh
index 972e2c379bc..8d6da15f983 100755
--- a/libgo/mksysinfo.sh
+++ b/libgo/mksysinfo.sh
@@ -379,11 +379,7 @@ fi
# Some basic types.
echo 'type Size_t _size_t' >> ${OUT}
echo "type Ssize_t _ssize_t" >> ${OUT}
-if grep '^const _HAVE_OFF64_T = ' gen-sysinfo.go > /dev/null 2>&1; then
- echo "type Offset_t _off64_t" >> ${OUT}
-else
- echo "type Offset_t _off_t" >> ${OUT}
-fi
+echo "type Offset_t _off_t" >> ${OUT}
echo "type Mode_t _mode_t" >> ${OUT}
echo "type Pid_t _pid_t" >> ${OUT}
echo "type Uid_t _uid_t" >> ${OUT}
--
2.29.2
@@ -0,0 +1,27 @@
From ac54a2afa01a3ebb06346f8dac505f0babbbe1a7 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 37/40] gcc-go: undef SETCONTEXT_CLOBBERS_TLS in proc.c
---
libgo/runtime/proc.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libgo/runtime/proc.c b/libgo/runtime/proc.c
index 274ce01c0bf..92a540bdde9 100644
--- a/libgo/runtime/proc.c
+++ b/libgo/runtime/proc.c
@@ -66,6 +66,10 @@ static void gscanstack(G*);
__thread G *g __asm__(GOSYM_PREFIX "runtime.g");
+/* libucontext does not seem to support tlsbase, undef the macro
+ * here to make sure we define initcontext and fixcontext as dummies. */
+#undef SETCONTEXT_CLOBBERS_TLS
+
#ifndef SETCONTEXT_CLOBBERS_TLS
static inline void
--
2.29.2
@@ -0,0 +1,25 @@
From e456a63af7f0bd1f519de98e74f864be0f73572a 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 38/40] gcc-go: link to libucontext
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index 63627db68cf..c7f1f84d683 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -48823,7 +48823,7 @@ configure-target-libgo:
esac; \
module_srcdir=libgo; \
rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) \
+ CONFIG_SITE=no-such-file LIBS="-lucontext $$LIBS" $(SHELL) \
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
--
2.29.2
@@ -0,0 +1,27 @@
From f3a1e98d6d4d546bfb749b91c1f3639df905c1d0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 31 Aug 2020 20:26:56 +0200
Subject: [PATCH 39/40] gcc-go: Disable printing of unaccessible ppc64 struct
members
These struct members do not seem to exist on musl.
---
libgo/runtime/go-signal.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c
index fd1c885f043..e845e453332 100644
--- a/libgo/runtime/go-signal.c
+++ b/libgo/runtime/go-signal.c
@@ -333,7 +333,7 @@ dumpregs(siginfo_t *info __attribute__((unused)), void *context __attribute__((u
runtime_printf("sp %X\n", m->sc_regs[30]);
runtime_printf("pc %X\n", m->sc_pc);
}
-#elif defined(__PPC__) && defined(__LITTLE_ENDIAN__) && defined(__linux__)
+#elif defined(__PPC__) && defined(__LITTLE_ENDIAN__) && defined(__GLIBC__)
{
mcontext_t *m = &((ucontext_t*)(context))->uc_mcontext;
int i;
--
2.29.2
@@ -0,0 +1,66 @@
From b36fd572e6cbe63dca6fbedd91f17d2797524eaa Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Tue, 17 Nov 2020 10:35:40 +0000
Subject: [PATCH 40/40] opts: move -fpartial-inlining from -O2 to -O3 or
higher.
We have observed strange behavior from the inliner on mips and on
s390x when the new partial inlining feature is enabled.
---
gcc/doc/invoke.texi | 5 +++--
gcc/opts.c | 2 +-
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 01e67e97491..6c4c2937b8f 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -9212,7 +9212,6 @@ also turns on the following optimization flags:
-flra-remat @gol
-foptimize-sibling-calls @gol
-foptimize-strlen @gol
--fpartial-inlining @gol
-fpeephole2 @gol
-freorder-blocks-algorithm=stc @gol
-freorder-blocks-and-partition -freorder-functions @gol
@@ -9234,7 +9233,8 @@ NOTE: In Alpine Linux, @option{-D_FORTIFY_SOURCE=2} is
set by default, and is activated when @option{-O} is set to 2 or higher.
This enables additional compile-time and run-time checks for several libc
functions. To disable, specify either @option{-U_FORTIFY_SOURCE} or
-@option{-D_FORTIFY_SOURCE=0}.
+@option{-D_FORTIFY_SOURCE=0}. Additionally, @option{-fpartial-inlining}
+is only activated when @option{-O} is set to 3 or higher.
@item -O3
@opindex O3
@@ -9246,6 +9246,7 @@ by @option{-O2} and also turns on the following optimization flags:
-fipa-cp-clone
-floop-interchange @gol
-floop-unroll-and-jam @gol
+-fpartial-inlining @gol
-fpeel-loops @gol
-fpredictive-commoning @gol
-fsplit-loops @gol
diff --git a/gcc/opts.c b/gcc/opts.c
index 73162528938..1d0d997eda2 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -492,7 +492,6 @@ static const struct default_options default_options_table[] =
{ OPT_LEVELS_2_PLUS, OPT_fisolate_erroneous_paths_dereference, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_flra_remat, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_foptimize_sibling_calls, NULL, 1 },
- { OPT_LEVELS_2_PLUS, OPT_fpartial_inlining, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_fpeephole2, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_freorder_functions, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_frerun_cse_after_loop, NULL, 1 },
@@ -530,6 +529,7 @@ static const struct default_options default_options_table[] =
{ OPT_LEVELS_3_PLUS, OPT_fipa_cp_clone, NULL, 1 },
{ OPT_LEVELS_3_PLUS, OPT_floop_interchange, NULL, 1 },
{ OPT_LEVELS_3_PLUS, OPT_floop_unroll_and_jam, NULL, 1 },
+ { OPT_LEVELS_3_PLUS, OPT_fpartial_inlining, NULL, 1 },
{ OPT_LEVELS_3_PLUS, OPT_fpeel_loops, NULL, 1 },
{ OPT_LEVELS_3_PLUS, OPT_fpredictive_commoning, NULL, 1 },
{ OPT_LEVELS_3_PLUS, OPT_fsplit_loops, NULL, 1 },
--
2.29.2
@@ -0,0 +1,50 @@
From ca0b670b87284afa341f1bef57f5614d88aecb4b Mon Sep 17 00:00:00 2001
From: Geod24 <pro.mathias.lang@gmail.com>
Date: Mon, 16 Nov 2020 18:40:46 +0100
Subject: [PATCH] CRuntime_Musl: Support v1.2.0 for 32 bits
As explained in the comment, `time_t` on Musl is now always 64 bits,
but used to be 32 bits on 32 bits systems.
---
libphobos/libdruntime/core/sys/posix/sys/types.d | 25 ++++++++++++++++++++++++-
1 files changed, 25 insertions(+), 1 deletion(-)
diff --git a/libphobos/libdruntime/core/sys/posix/sys/types.d b/libphobos/libdruntime/core/sys/posix/sys/types.d
index fcf39b5b..aacd0df0 100644
--- a/libphobos/libdruntime/core/sys/posix/sys/types.d
+++ b/libphobos/libdruntime/core/sys/posix/sys/types.d
@@ -140,10 +140,33 @@ else version (CRuntime_Musl)
alias int pid_t;
alias uint uid_t;
alias uint gid_t;
+
+ /**
+ * Musl versions before v1.2.0 (up to v1.1.24) had different
+ * definitions for `time_t` for 32 bits.
+ * This was changed to always be 64 bits in v1.2.0:
+ * https://musl.libc.org/time64.html
+ * This change was only for 32 bits system and
+ * didn't affect 64 bits systems
+ *
+ * To check previous definitions, `grep` for `time_t` in `arch/`,
+ * and the result should be (in v1.1.24):
+ * ---
+ * // arch/riscv64/bits/alltypes.h.in:20:TYPEDEF long time_t;
+ * // arch/s390x/bits/alltypes.h.in:17:TYPEDEF long time_t;
+ * // arch/sh/bits/alltypes.h.in:21:TYPEDEF long time_t;
+ * ---
+ *
+ * In order to be compatible with old versions of Musl,
+ * one can recompile druntime with `CRuntime_Musl_Pre_Time64`.
+ */
version (D_X32)
alias long time_t;
- else
+ else version (CRuntime_Musl_Pre_Time64)
alias c_long time_t;
+ else
+ alias long time_t;
+
alias c_long clock_t;
alias c_ulong pthread_t;
version (D_LP64)
@@ -1,13 +0,0 @@
Enable -Wtrampolines by default.
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -712,7 +712,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
-Common Var(warn_trampolines) Warning
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtype-limits
@@ -1,38 +0,0 @@
Disable ssp on -nostdlib, -nodefaultlibs and -ffreestanding
Change the buffer size.
--- a/gcc/gcc.c 2017-07-04 09:15:57.740793000 +0200
+++ b/gcc/gcc.c 2018-03-02 13:58:44.387741114 +0100
@@ -857,6 +857,12 @@ proper position among the other output f
#define LINK_GCC_C_SEQUENCE_SPEC "%G %L %G"
#endif
+#ifdef ENABLE_DEFAULT_SSP
+#define NO_SSP_SPEC "%{nostdlib|nodefaultlibs|ffreestanding:-fno-stack-protector} "
+#else
+#define NO_SSP_SPEC ""
+#endif
+
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1131,7 +1148,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
- %{fsyntax-only:-o %j} %{-param*}\
+ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
%{coverage:-fprofile-arcs -ftest-coverage}\
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=singel:\
--- a/gcc/params.def 2016-03-30 09:47:40.000000000 +0200
+++ b/gcc/params.def 2016-09-19 12:56:58.443179039 +0200
@@ -673,7 +673,7 @@ DEFPARAM (PARAM_INTEGER_SHARE_LIMIT,
DEFPARAM (PARAM_SSP_BUFFER_SIZE,
"ssp-buffer-size",
"The lower bound for a buffer to be considered for stack smashing protection.",
- 8, 1, 0)
+ 4, 1, 0)
DEFPARAM (PARAM_MIN_SIZE_FOR_STACK_SHARING,
"min-size-for-stack-sharing",
File diff suppressed because it is too large. Load diff
-25
View File
@@ -1,25 +0,0 @@
--- a/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:05.000000000 +0900
+++ b/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:08.000000000 +0900
@@ -67,15 +67,21 @@ version (CRuntime_Glibc)
}
else version (CRuntime_Musl)
{
+ // off_t is always 64 bits on Musl
enum _FILE_OFFSET_BITS = 64;
+ // Not present in Musl sources
enum __REDIRECT = false;
+ // Those three are irrelevant for Musl as it always uses 64 bits off_t
enum __USE_FILE_OFFSET64 = _FILE_OFFSET_BITS == 64;
enum __USE_LARGEFILE = __USE_FILE_OFFSET64 && !__REDIRECT;
enum __USE_LARGEFILE64 = __USE_FILE_OFFSET64 && !__REDIRECT;
- enum __WORDSIZE=64;
+ version (D_LP64)
+ enum __WORDSIZE = 64;
+ else
+ enum __WORDSIZE = 32;
}
else version (CRuntime_UClibc)
{
-448
View File
@@ -1,448 +0,0 @@
diff -Nurp a/libphobos/libdruntime/core/sys/posix/fcntl.d b/libphobos/libdruntime/core/sys/posix/fcntl.d
--- a/libphobos/libdruntime/core/sys/posix/fcntl.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/libdruntime/core/sys/posix/fcntl.d 2020-01-01 00:00:00.000000000 +0900
@@ -779,7 +779,102 @@ else version (CRuntime_Bionic)
}
else version (CRuntime_Musl)
{
- enum {
+ version (X86_64)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x010000, // octal 0200000
+ O_NOFOLLOW = 0x020000, // octal 0400000
+ O_DIRECT = 0x004000, // octal 040000
+ O_LARGEFILE = 0,
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 5,
+ F_SETLK = 6,
+ F_SETLKW = 7,
+ }
+ }
+ // Note: Definitions for i386 are in arch/generic/bits/fcntl.h
+ else version (X86)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x010000, // octal 0200000
+ O_NOFOLLOW = 0x020000, // octal 0400000
+ O_DIRECT = 0x004000, // octal 040000
+ O_LARGEFILE = 0x008000, // octal 0100000
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 12,
+ F_SETLK = 13,
+ F_SETLKW = 14,
+ }
+ }
+ else version (ARM)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x004000, // octal 040000
+ O_NOFOLLOW = 0x008000, // octal 0100000
+ O_DIRECT = 0x010000, // octal 0200000
+ O_LARGEFILE = 0x020000, // octal 0400000
+ O_TMPFILE = 0x404000, // octal 020040000
+
+ F_GETLK = 12,
+ F_SETLK = 13,
+ F_SETLKW = 14,
+ }
+ }
+ else version (AArch64)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x004000, // octal 040000
+ O_NOFOLLOW = 0x008000, // octal 0100000
+ O_DIRECT = 0x010000, // octal 0200000
+ O_LARGEFILE = 0x020000, // octal 0400000
+ O_TMPFILE = 0x404000, // octal 020040000
+
+ F_GETLK = 5,
+ F_SETLK = 6,
+ F_SETLKW = 7,
+ }
+ }
+ else version (SystemZ)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x010000, // octal 0200000
+ O_NOFOLLOW = 0x020000, // octal 0400000
+ O_DIRECT = 0x004000, // octal 040000
+ O_LARGEFILE = 0x008000, // octal 0100000
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 5,
+ F_SETLK = 6,
+ F_SETLKW = 7,
+ }
+ }
+ else version (PPC64)
+ {
+ enum
+ {
+ O_DIRECTORY = 0x004000, // octal 040000
+ O_NOFOLLOW = 0x008000, // octal 0100000
+ O_DIRECT = 0x020000, // octal 0400000
+ O_LARGEFILE = 0x010000, // octal 0200000
+ O_TMPFILE = 0x410000, // octal 020200000
+
+ F_GETLK = 5,
+ F_SETLK = 6,
+ F_SETLKW = 7,
+ }
+ }
+ else
+ static assert(0, "Platform not supported");
+
+ enum
+ {
O_CREAT = 0x40, // octal 0100
O_EXCL = 0x80, // octal 0200
O_NOCTTY = 0x100, // octal 0400
@@ -790,16 +885,11 @@ else version (CRuntime_Musl)
O_DSYNC = 0x1000, // octal 010000
O_SYNC = 0x101000, // octal 04010000
O_RSYNC = O_SYNC,
- O_DIRECTORY = 0x10000,
- O_NOFOLLOW = 0x20000,
O_CLOEXEC = 0x80000,
O_ASYNC = 0x2000,
- O_DIRECT = 0x4000,
- O_LARGEFILE = 0,
O_NOATIME = 0x40000,
O_PATH = 0x200000,
- O_TMPFILE = 0x410000,
O_NDELAY = O_NONBLOCK,
O_SEARCH = O_PATH,
O_EXEC = O_PATH,
@@ -809,19 +899,19 @@ else version (CRuntime_Musl)
O_WRONLY = 01,
O_RDWR = 02,
}
- enum {
+ enum
+ {
F_DUPFD = 0,
F_GETFD = 1,
F_SETFD = 2,
F_GETFL = 3,
F_SETFL = 4,
- F_GETLK = 5,
- F_SETLK = 6,
- F_SETLKW = 7,
+ // F_GETLK, F_SETLK, F_SETLKW are arch-specific
F_SETOWN = 8,
F_GETOWN = 9,
}
- enum {
+ enum
+ {
F_RDLCK = 0,
F_WRLCK = 1,
F_UNLCK = 2,
diff -Nurp a/libphobos/libdruntime/core/sys/posix/semaphore.d b/libphobos/libdruntime/core/sys/posix/semaphore.d
--- a/libphobos/libdruntime/core/sys/posix/semaphore.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/libdruntime/core/sys/posix/semaphore.d 2020-01-01 00:00:00.000000000 +0900
@@ -143,8 +143,10 @@ else version (CRuntime_Bionic)
else version (CRuntime_Musl)
{
struct sem_t {
- int[4*long.sizeof/int.sizeof] __val;
+ int[4*c_long.sizeof/int.sizeof] __val;
}
+
+ enum SEM_FAILED = (sem_t*).init;
}
else version (CRuntime_UClibc)
{
diff -Nurp a/libphobos/libdruntime/core/sys/posix/sys/stat.d b/libphobos/libdruntime/core/sys/posix/sys/stat.d
--- a/libphobos/libdruntime/core/sys/posix/sys/stat.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/libdruntime/core/sys/posix/sys/stat.d 2020-01-01 00:00:00.000000000 +0900
@@ -1587,31 +1587,225 @@ else version (CRuntime_Musl)
S_ISGID = 0x400, // octal 02000
S_ISVTX = 0x200, // octal 01000
}
- struct stat_t {
- dev_t st_dev;
- ino_t st_ino;
- nlink_t st_nlink;
-
- mode_t st_mode;
- uid_t st_uid;
- gid_t st_gid;
- uint __pad0;
- dev_t st_rdev;
- off_t st_size;
- blksize_t st_blksize;
- blkcnt_t st_blocks;
-
- timespec st_atim;
- timespec st_mtim;
- timespec st_ctim;
- extern(D) @safe @property inout pure nothrow
- {
- ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
- ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
- ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ version (ARM)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ int __st_dev_padding;
+ c_long __st_ino_truncated;
+ mode_t st_mode;
+ nlink_t st_nlink;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ int __st_rdev_padding;
+ off_t st_size;
+ blksize_t st_blksize;
+ blkcnt_t st_blocks;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+ ino_t st_ino;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else version (AArch64)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ ino_t st_ino;
+ mode_t st_mode;
+ nlink_t st_nlink;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ c_ulong __pad;
+ off_t st_size;
+ blksize_t st_blksize;
+ int __pad2;
+ blkcnt_t st_blocks;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+ uint[2] __unused;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else version (X86_64)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ ino_t st_ino;
+ nlink_t st_nlink;
+
+ mode_t st_mode;
+ uid_t st_uid;
+ gid_t st_gid;
+ uint __pad0;
+ dev_t st_rdev;
+ off_t st_size;
+ blksize_t st_blksize;
+ blkcnt_t st_blocks;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+
+ c_long[3] __unused;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else version (X86)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ int __st_dev_padding;
+ c_long __st_ino_truncated;
+ mode_t st_mode;
+ nlink_t st_nlink;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ int __st_rdev_padding;
+ off_t st_size;
+ blksize_t st_blksize;
+ blkcnt_t st_blocks;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+ ino_t st_ino;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
}
- long[3] __unused;
}
+ else version (MIPS64)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ int[3] __pad1;
+ ino_t st_ino;
+ mode_t st_mode;
+ nlink_t st_nlink;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ uint[2] __pad2;
+ off_t st_size;
+ int __pad3;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+ blksize_t st_blksize;
+ uint __pad4;
+ blkcnt_t st_blocks;
+ int[14] __pad5;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else version (PPC64)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ ino_t st_ino;
+ nlink_t st_nlink;
+ mode_t st_mode;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ off_t st_size;
+ blksize_t st_blksize;
+ blkcnt_t st_blocks;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+ c_ulong[3] __unused;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else version (SystemZ)
+ {
+ struct stat_t
+ {
+ dev_t st_dev;
+ ino_t st_ino;
+ nlink_t st_nlink;
+ mode_t st_mode;
+
+ uid_t st_uid;
+ gid_t st_gid;
+ dev_t st_rdev;
+ off_t st_size;
+
+ timespec st_atim;
+ timespec st_mtim;
+ timespec st_ctim;
+
+ blksize_t st_blksize;
+ blkcnt_t st_blocks;
+ c_ulong[3] __unused;
+
+ extern(D) @safe @property inout pure nothrow
+ {
+ ref inout(time_t) st_atime() return { return st_atim.tv_sec; }
+ ref inout(time_t) st_mtime() return { return st_mtim.tv_sec; }
+ ref inout(time_t) st_ctime() return { return st_ctim.tv_sec; }
+ }
+ }
+ }
+ else
+ static assert("Unsupported platform");
+
private
{
extern (D) bool S_ISTYPE( mode_t mode, uint mask )
diff -Nurp a/libphobos/libdruntime/core/sys/posix/sys/types.d b/libphobos/libdruntime/core/sys/posix/sys/types.d
--- a/libphobos/libdruntime/core/sys/posix/sys/types.d 2020-01-08 00:00:00.000000000 +0900
+++ b/libphobos/libdruntime/core/sys/posix/sys/types.d 2020-01-08 00:00:00.000000000 +0900
@@ -112,8 +112,26 @@ version (CRuntime_Glibc)
}
else version (CRuntime_Musl)
{
- alias c_long blksize_t;
- alias c_ulong nlink_t;
+ version (AArch64)
+ {
+ alias int blksize_t;
+ alias uint nlink_t;
+ }
+ else version (MIPS64)
+ {
+ alias c_long blksize_t;
+ alias uint nlink_t;
+ }
+ else version (RISCV64)
+ {
+ alias int blksize_t;
+ alias uint nlink_t;
+ }
+ else
+ {
+ alias c_long blksize_t;
+ alias c_ulong nlink_t;
+ }
alias long dev_t;
alias long blkcnt_t;
alias ulong ino_t;
-137
View File
@@ -1,137 +0,0 @@
diff -Nurp a/libphobos/libdruntime/gcc/sections/elf_shared.d b/libphobos/libdruntime/gcc/sections/elf_shared.d
--- a/libphobos/libdruntime/gcc/sections/elf_shared.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/libdruntime/gcc/sections/elf_shared.d 2020-01-01 00:00:00.000000000 +0900
@@ -1084,7 +1084,9 @@ void[] getTLSRange(size_t mod, size_t sz) nothrow @nogc
// base offset
auto ti = tls_index(mod, 0);
- version (IBMZ_Any)
+ version (CRuntime_Musl)
+ return (__tls_get_addr(&ti)-TLS_DTV_OFFSET)[0 .. sz];
+ else version (IBMZ_Any)
{
auto idx = cast(void *)__tls_get_addr_internal(&ti)
+ cast(ulong)__builtin_thread_pointer();
diff -Nurp a/libphobos/configure.ac b/libphobos/configure.ac
--- a/libphobos/configure.ac 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/configure.ac 2020-01-01 00:00:00.000000000 +0900
@@ -140,6 +140,14 @@ case ${host} in
esac
AC_MSG_RESULT($LIBPHOBOS_SUPPORTED)
+AC_MSG_CHECKING([if target needs to link in swapcontext])
+AC_MSG_RESULT($LIBDRUNTIME_NEEDS_UCONTEXT)
+AS_IF([test "x$LIBDRUNTIME_NEEDS_UCONTEXT" = xyes], [
+ AC_SEARCH_LIBS([swapcontext], [c ucontext], [], [
+ AC_MSG_ERROR([[can't find library providing swapcontext]])
+ ])
+])
+
# Decide if it's usable.
case $LIBPHOBOS_SUPPORTED:$enable_libphobos in
*:no) use_libphobos=no ;;
diff -Nurp a/libphobos/configure.tgt b/libphobos/configure.tgt
--- a/libphobos/configure.tgt 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/configure.tgt 2020-01-01 00:00:00.000000000 +0900
@@ -22,6 +22,13 @@
# Disable the libphobos or libdruntime components on untested or known
# broken systems. More targets shall be added after testing.
LIBPHOBOS_SUPPORTED=no
+
+# Check if we require 'ucontext' or if we have a custom solution.
+# Most platform uses a custom assembly solution for context switches,
+# see `core.thread` and grep for `AsmExternal`.
+# Definitions are in config/ARCH/
+LIBPHOBOS_NEEDS_UCONTEXT=no
+
case "${target}" in
aarch64*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
@@ -37,6 +44,7 @@ case "${target}" in
;;
s390*-linux*)
LIBPHOBOS_SUPPORTED=yes
+ LIBDRUNTIME_NEEDS_UCONTEXT=yes
;;
x86_64-*-kfreebsd*-gnu | i?86-*-kfreebsd*-gnu)
LIBPHOBOS_SUPPORTED=yes
diff -Nurp a/libphobos/configure b/libphobos/configure
--- a/libphobos/configure 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/configure 2020-01-01 00:00:00.000000000 +0900
@@ -13955,6 +13955,76 @@ esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBPHOBOS_SUPPORTED" >&5
$as_echo "$LIBPHOBOS_SUPPORTED" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if target needs to link in swapcontext" >&5
+$as_echo_n "checking if target needs to link in swapcontext... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBDRUNTIME_NEEDS_UCONTEXT" >&5
+$as_echo "$LIBDRUNTIME_NEEDS_UCONTEXT" >&6; }
+if test "x$LIBDRUNTIME_NEEDS_UCONTEXT" = xyes; then :
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing swapcontext" >&5
+$as_echo_n "checking for library containing swapcontext... " >&6; }
+if ${ac_cv_search_swapcontext+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char swapcontext ();
+int
+main ()
+{
+return swapcontext ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' c ucontext; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_swapcontext=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_swapcontext+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_swapcontext+:} false; then :
+
+else
+ ac_cv_search_swapcontext=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_swapcontext" >&5
+$as_echo "$ac_cv_search_swapcontext" >&6; }
+ac_res=$ac_cv_search_swapcontext
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+else
+
+ as_fn_error $? "can't find library providing swapcontext" "$LINENO" 5
+
+fi
+
+
+fi
+
+
# Decide if it's usable.
case $LIBPHOBOS_SUPPORTED:$enable_libphobos in
*:no) use_libphobos=no ;;
-34
View File
@@ -1,34 +0,0 @@
--- gcc-9.3.0.orig/libphobos/libdruntime/core/sys/posix/fcntl.d
+++ gcc-9.3.0/libphobos/libdruntime/core/sys/posix/fcntl.d
@@ -870,6 +870,21 @@
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");
--- gcc-9.3.0.orig/libphobos/configure.tgt
+++ gcc-9.3.0/libphobos/configure.tgt
@@ -38,6 +38,7 @@
;;
mips*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
+ LIBDRUNTIME_NEEDS_UCONTEXT=yes
;;
riscv*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
@@ -1,22 +0,0 @@
Upstream: Yes, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92216 and
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95184
Reason: GDC produced errors about duplicate symbols when the same interface
was implemented by two classes in the same project.
diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc
index 3824060..7afb1aa 100644 (file)
--- a/gcc/d/decl.cc
+++ b/gcc/d/decl.cc
@@ -1803,8 +1803,11 @@ make_thunk (FuncDeclaration *decl, int offset)
DECL_CONTEXT (thunk) = d_decl_context (decl);
- /* Thunks inherit the public access of the function they are targetting. */
- TREE_PUBLIC (thunk) = TREE_PUBLIC (function);
+ /* Thunks inherit the public access of the function they are targetting.
+ When the function is outside the current compilation unit however, then the
+ thunk must be kept private to not conflict. */
+ TREE_PUBLIC (thunk) = TREE_PUBLIC (function) && !DECL_EXTERNAL (function);
+
DECL_EXTERNAL (thunk) = 0;
/* Thunks are always addressable. */
+129 -95
View File
@@ -23,13 +23,14 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname="gcc-aarch64"
pkgver=9.3.0
pkgname=gcc-aarch64
_pkgbase=10.2.1
pkgver=10.2.1_pre0
[ "$BOOTSTRAP" = "nolibc" ] && pkgname="gcc-pass2"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname="gcc-aarch64"
pkgname=gcc-aarch64
pkgrel=2
pkgdesc="Stage2 cross-compiler for aarch64"
url="https://gcc.gnu.org"
@@ -117,15 +118,19 @@ fi
# See libphobos/configure.tgt in GCC sources for supported targets
[ "$CARCH" = ppc64le ] && LANG_D=false
# Go needs {set,make,swap}context, unimplemented in musl
[ "$CTARGET_LIBC" = musl ] && LANG_GO=false
# libitm has TEXTRELs in ARM build, so disable for now
case "$CTARGET_ARCH" in
arm*) _libitm=false ;;
mips*) _libitm=false ;;
esac
# Internal libffi fails to build on MIPS at the moment, need to
# investigate further. We disable LANG_GO on mips64 as it requires
# the internal libffi.
case "$CTARGET_ARCH" in
mips*) LANG_GO=false ;;
esac
# Fortran uses libquadmath if toolchain has __float128
# currently on x86, x86_64 and ia64
_libquadmath=$LANG_FORTRAN
@@ -167,62 +172,65 @@ fi
if $LANG_ADA; then
subpackages="$subpackages libgnat::$CTARGET_ARCH gcc-gnat$_target:gnat"
_languages="$_languages,ada"
makedepends_build="$makedepends_build gcc-gnat gcc-gnat$_cross"
[ "$CBUILD" = "$CTARGET" ] && makedepends_build="$makedepends_build gcc-gnat-bootstrap"
[ "$CBUILD" != "$CTARGET" ] && makedepends_build="$makedepends_build gcc-gnat gcc-gnat$_cross"
fi
makedepends="$makedepends_build $makedepends_host"
source="https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgbase:-$pkgver}.tar.xz
002_all_default-relro.patch
003_all_default-fortify-source.patch
005_all_default-as-needed.patch
gcc-as-needed-gold.patch
011_all_default-warn-format-security.patch
012_all_default-warn-trampolines.patch
013_all_default-ssp-fix.patch
020_all_msgfmt-libstdc++-link.patch
050_all_libiberty-asprintf.patch
051_all_libiberty-pic.patch
053_all_libitm-no-fortify-source.patch
090_all_pr55930-dependency-tracking.patch
0003-gcc-poison-system-directories.patch
203-libgcc_s.patch
205-nopie.patch
0002-posix_memalign.patch
0008-s390x-muslldso.patch
0010-ldbl128-config.patch
0012-static-pie.patch
libgcc-always-build-gcceh.a.patch
gcc-4.9-musl-fortify.patch
gcc-6.1-musl-libssp.patch
gcc-pure64.patch
fix-cxxflags-passing.patch
ada-shared.patch
ada-musl.patch
libgnarl-musl.patch
320-libffi-gnulinux.patch
gcc-pure64-mips.patch
0016-invalid_tls_model.patch
400-dlang-phobos.patch
401-dlang-32bits.patch
402-dlang-stat.patch
403-dlang-ibmz.patch
404-dlang-zlib.patch
405-dlang-mips.patch
406-dlang-fix-interface-visibility.patch
# when using upstream releases, use this URI template
# https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgbase:-$pkgver}.tar.xz
#
# right now, we are using a git snapshot
source="https://dev.alpinelinux.org/~nenolod/gcc-10.2.1.tar.xz
0001-posix_memalign.patch
0002-gcc-poison-system-directories.patch
0003-Turn-on-Wl-z-relro-z-now-by-default.patch
0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
0006-Enable-Wformat-and-Wformat-security-by-default.patch
0007-Enable-Wtrampolines-by-default.patch
0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
0011-libiberty-copy-PIC-objects-during-build-process.patch
0012-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-fix-fcntl-on-mips-add-libucontext-dep.patch
0018-ada-fix-shared-linking.patch
0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
0020-libstdc-futex-add-time64-compatibility.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-Pure-64-bit-MIPS.patch
0025-use-pure-64-bit-configuration-where-appropriate.patch
0026-always-build-libgcc_eh.a.patch
0027-ada-libgnarl-compatibility-for-musl.patch
0028-ada-musl-support-fixes.patch
0029-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
0030-gcc-go-Don-t-include-sys-user.h.patch
0031-gcc-go-Fix-ucontext_t-on-PPC64.patch
0032-gcc-go-Fix-handling-of-signal-34-on-musl.patch
0033-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
0034-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
0035-gcc-go-signal-34-is-special-on-musl-libc.patch
0036-gcc-go-Prefer-_off_t-over-_off64_t.patch
0037-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
0038-gcc-go-link-to-libucontext.patch
0039-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
0040-opts-move-fpartial-inlining-from-O2-to-O3-or-higher.patch
0041-dlang-support-musl-1.2.0.patch
"
# gcc-4.8-build-args.patch
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase:-$pkgver}
_gcclibdir="/usr/lib/gcc/$CTARGET/$pkgver"
_gcclibexec="/usr/libexec/gcc/$CTARGET/$pkgver"
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
_gcclibexec="/usr/libexec/gcc/$CTARGET/${_pkgbase:-$pkgver}"
prepare() {
cd "$_gccdir"
@@ -245,7 +253,7 @@ prepare() {
return 1
fi
echo ${pkgver} > gcc/BASE-VER
echo ${_pkgbase:-$pkgver} > gcc/BASE-VER
}
build() {
@@ -314,6 +322,8 @@ build() {
echo " hash_style_configure=$_hash_style_configure"
echo ""
export CFLAGS="$CFLAGS -O2"
mkdir -p "$_builddir"
cd "$_builddir"
"$_gccdir"/configure --prefix=/usr \
@@ -459,6 +469,12 @@ libcxx() {
pkgdesc="GNU C++ standard runtime library"
depends=
if [ "$CHOST" = "$CTARGET" ]; then
# verify that we are using clock_gettime rather than doing direct syscalls
# so we dont break 32 bit arches due to time64.
nm -D "$pkgdir"/usr/lib/libstdc++.so.* | grep clock_gettime
fi
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
}
@@ -492,8 +508,10 @@ objc() {
replaces="gcc"
depends="libc-dev gcc=$_gccrel libobjc=$_gccrel"
mkdir -p "$subpkgdir"/$_gcclibdir/include \
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/$_gcclibdir/include \
"$subpkgdir"/usr/lib
mv "$pkgdir/$_gcclibexec/cc1obj" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/$_gcclibdir/include/objc "$subpkgdir"/$_gcclibdir/include/
mv "$pkgdir"/usr/lib/libobjc.so "$pkgdir"/usr/lib/libobjc.a \
"$subpkgdir"/usr/lib/
@@ -530,15 +548,19 @@ gdc() {
depends="gcc=$_gccrel libgphobos=$_gccrel musl-dev"
depends="$depends libucontext-dev"
mkdir -p "$subpkgdir"/$_gcclibdir/include/d/ \
mkdir -p "$subpkgdir/$_gcclibexec" \
"$subpkgdir"/$_gcclibdir/include/d/ \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
# Copy: The installed '.d' files, the static lib, the binary itself
# The shared libs are part of 'libgphobos' so one can run program
# without installing the compiler
mv "$pkgdir/$_gcclibexec/d21" "$subpkgdir/$_gcclibexec/"
mv "$pkgdir"/$_gcclibdir/include/d/* "$subpkgdir"/$_gcclibdir/include/d/
mv "$pkgdir"/usr/lib/libgdruntime.a "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.a "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/lib/libgphobos.spec "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/bin/$CTARGET-gdc "$subpkgdir"/usr/bin/
mv "$pkgdir"/usr/bin/gdc "$subpkgdir"/usr/bin/
}
@@ -553,17 +575,24 @@ libgo() {
go() {
pkgdesc="Go support for GCC"
depends="gcc=$_gccrel libgo=$_gccrel"
depends="gcc=$_gccrel libgo=$_gccrel !go"
mkdir -p "$subpkgdir"/$_gcclibexec \
"$subpkgdir"/usr/lib \
"$subpkgdir"/usr/bin
mv "$pkgdir"/usr/lib/go "$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/bin/*gccgo "$subpkgdir"/usr/bin/
mv "$pkgdir"/usr/bin/*go "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/*gofmt "$subpkgdir"/usr/bin
mv "$pkgdir"/$_gcclibexec/go1 "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/cgo "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/buildid "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/test2json "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/$_gcclibexec/vet "$subpkgdir"/$_gcclibexec/
mv "$pkgdir"/usr/lib/libgo.a \
"$pkgdir"/usr/lib/libgo.so \
"$pkgdir"/usr/lib/libgobegin.a \
"$pkgdir"/usr/lib/libgolibbegin.a \
"$subpkgdir"/usr/lib/
}
@@ -603,6 +632,7 @@ gfortran() {
"$pkgdir"/usr/lib/libquadmath.so \
"$subpkgdir"/usr/lib/
fi
mv "$pkgdir"/$_gcclibdir/finclude "$subpkgdir"/$_gcclibdir/
mv "$pkgdir"/$_gcclibexec/f951 "$subpkgdir"/$_gcclibexec
mv "$pkgdir"/usr/lib/libgfortran.spec "$subpkgdir"/$_gcclibdir
}
@@ -629,41 +659,45 @@ gnat() {
mv "$pkgdir"/usr/bin/*gnat* "$subpkgdir"/usr/bin/
}
sha512sums="4b9e3639eef6e623747a22c37a904b4750c93b6da77cf3958d5047e9b5ebddb7eebe091cc16ca0a227c0ecbd2bf3b984b221130f269a97ee4cc18f9cf6c444de gcc-9.3.0.tar.xz
e36e95b81489163abd6fe9d58f7867bdca43e61143afacbfb17f4698c0b16ec5fd0061d8fab7b2ae615540bebd721c2e2227f80401b4e7fc253da9da62e6b513 002_all_default-relro.patch
f86466c62b8291fac46f9c250c7ad8fa5ab7b1cce2504442fd07ddc4543665b317ae28951f244e39aba29aeaf3fff252ec4f6a147aa16adb2b7aed747dd89188 003_all_default-fortify-source.patch
5e4794d1caddb1050d8935ae5a53ba275b653ad2c9954df89a8c47ac694e6139011829f440eb7e5b24fd57ea25daf25ac83f317871841a78ffb74d167d6f8bf9 005_all_default-as-needed.patch
6c9a5068f6eea8a85d297a3555b1d2333ffd4b9ddbfb7560a3e643f8577603871ca123373ef7f96e894225291d88f7bf575c7f8386bcfdd1dabcd7ba12598b65 gcc-as-needed-gold.patch
e026bf9f73ee254528423c6cabdfd7794960c567161581b7d4b7c61c45027e12a6efef79662d4288b9cbaecb4798f01af6a5b4a13b766c2d501444ac1846fd43 011_all_default-warn-format-security.patch
37de4cc9061bfe1963e6e6570e1a6bbfd58204bf90e0eef819882599a9a80ea28f3eb815c20c1f173dc25d4bd9971b7c7f7f9512d6f8f91f04de1e1175114d4d 012_all_default-warn-trampolines.patch
38a0fedeac3eebe4a6a957792ba520225cf42663c96a171cd168fdb6c91ffa9a56b80351f8238c5d03b78d3ae2a6539a54481fe4848b4a395e2c87f2ff7adc08 013_all_default-ssp-fix.patch
d35a3ac7e13a4446921a90e1ff3eec1079840c845f9d523c868e24ae21f94cf69ba041de5341ebef96432a6f57598e223381d4286e8fb8baaa25906707f29fbd 020_all_msgfmt-libstdc++-link.patch
840070a3c423e6206aaa6e63e1d9a0fcd6efd53626cd1240a193f0b60aa5d84216acc4a2a4fa8bce74549b07e6a316b01d638f20cea13dc62473491a302fb3d6 050_all_libiberty-asprintf.patch
0a0bc72b9366158f5d23fff1928e756fdd212433bac6ab1f00d632f241382820db8db5d475ddf11ea020eaf7e2e71b12fb9b1c3c870cf84adf6c2b16f15aabca 051_all_libiberty-pic.patch
e7a2eb1b1870e199d6fd753d065781575656fa12baa264f96c5d179689d88c31b8a3f92a5dae96088c05e96aa2bda138364ad7dbcc79e1819a102f192cbb7bab 053_all_libitm-no-fortify-source.patch
4a328d1e1a56c20166307edcfa322068915784d9c08025b7f81cf69714da48fc266b6d34f77b9135c2f10da830d9df408276a1b78d1fd218637c2823506593c2 090_all_pr55930-dependency-tracking.patch
707b30c141778fbcb1e37ebb42873cd7971de232a1298f78bbd834fa74d411b7b49cecfe4f247316d7c785da792f95f26ea6d824cd322a8f87b29537af3f77f3 0003-gcc-poison-system-directories.patch
d1c2d7ff7f673375dc7cd84ae9d8515853b5af6390c70bb763412c012101344e4ee1ce155151ce3fb6ba2b80af7ed42d697dbe1bf6fd6e7b2b9087a378c47c37 203-libgcc_s.patch
98473bcaa77903a223ca9b0d2087c0921b287a2816d308cc32c8fe009e6cbf5dd1ae7fba27794ab8d9c09e117fe534413d91a464d1218474fc123ce0adfdc2c1 205-nopie.patch
6d84354e6df96d5ea244eb3bb5f044781796b88040b11c78fb6ee509e5aac19d46e0e92ca836e98e6495d9751f52439833b748efc419e4f5d5301fb549c4dcc9 0002-posix_memalign.patch
7f434a7350c9b06d0ae7cc18a569d813238483afa34b0801d112844a0dfe6164ae36b0416955fd4da7a8caa54672247f319a8ec7ce4b6a97a5f4e17ec083112a 0008-s390x-muslldso.patch
66085c5555e6b91b6874d1782d5a1dc0ab1792889f9400f48cde9483f82b51b9e3a5de1efbba21a19fc5e664334f2188d0c2bc988d42335efa26118b3c85cc7f 0010-ldbl128-config.patch
d91c5eba37166cf34ca38e03808e3960c091b3627008a0c68c127cdf52e3827f8cfbe478ababe64c3cbb4d5eb8ed6230a21a74b6908549e05e08646de09df37c 0012-static-pie.patch
d08d7ead2de0429e5c9055d5b029ec2be9a8c821d22cecaf9b51f633652c493333f98963d9267fa2fa63850c50ae5eefd5f59e5910ec10d20044dac082182a8b libgcc-always-build-gcceh.a.patch
600fe5098dc54edaa9808fd5717af9dec058953f9ad37d49cfba1db4f7e9a7a8f02019342f75157fc575946fa693259422184de27b7ecc8386d9f3ecc0f7cc5d gcc-4.9-musl-fortify.patch
dbe0ee917fc7668571722364ab7c806731e3a31e8bfa30b4941b28b16b877d2a32b4a3897ef533399a28f82d43cac9b28e92de0493f0e779046db56584e07fa4 gcc-6.1-musl-libssp.patch
fa62556719449caec6b2b434355bfbcaa5ae55ffe017b3e1f827f66a2aae21b79c571ee7a4ce723ea69169bc3a6447e73650991a200cc372adf2f102677518d7 gcc-pure64.patch
35d6d59f0b7b968f282f56767c9e0823a7bdc5aa0d450aca50fbd802649a7ca608b47671244a3faa208a9b0d6832cabb5a22724157dc817b2c0ad63d09f93282 fix-cxxflags-passing.patch
3f5bc334d9f73d06f5f7c876738d02356acdd08958bea0e4d2095ebf15c2c2ec4e411abdae0297505ae9a1699ca01b17338e853184e84663203b192b0d35fc19 ada-shared.patch
cceeac95f47ea8664e1c16c5ebecb472b5aaa56040e943c1b97c7873b50e3a2bf972d9f743d342a2444a3bb711a0720d2446fded43892c5e05bdeefd478b0cd1 ada-musl.patch
a1f7750bc7b8b7d916a5dee34fcc736bd4fb249c96538b547d495794e6cfd49356aa3974506a15074b4cb58edd5d7e2868607c902dd003e8c464d5066fd4a575 libgnarl-musl.patch
f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch
86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch
17e0faeef742d32d57a070d983480367dd28cd28d47a8966ce327afdff3a38ea76803a833c90aff7d3a93aa66dae76c9be47b2408500913b40571af25b85aca7 0016-invalid_tls_model.patch
38772c5b0905455a44c43d6ef7e5f140530006e2bde9f5ffd6b569c7cf9633992515f666b486d7a78c30ab8da99b92b2775c90fde47821ae542ef1c49dc405df 400-dlang-phobos.patch
84bdbdfcb972161765b81220ea2e80e83c32f3ab27596b77eb451d8cac4bd6312210df468581c2b0e1363f5e3b31654e369c47ae84c907f3b54a1786d7c17830 401-dlang-32bits.patch
9d73f21eaa2458d28a144dd0e5478ed52763a4d8bbf62084b607db52bce1e2242f773c853fc34e6aae2d53c4124948139954627064e850e9dabaddaef5cb9d69 402-dlang-stat.patch
fd056014d0c6f627108d7387bfe46b5fb66786a16fa964da55b0442658b1c8e9e903c641a9e3233000ef37691e32ea4fef22029ab5eba217ccbc8bd5941e81ae 403-dlang-ibmz.patch
ddb3ca26b5e55f6d376036c2ed87959770bfb72d1175d0dba332f705edf6817806d53765c838ff670472a16ab175bd1ce88946c19d83f9d5e53ff2b4d3558dfb 404-dlang-zlib.patch
3f40f796f50d49ea0a185d3454c79606fb5f90ed48c030fe25c1df8c4a72ba7cae37dccdb260cf737beb3e921dc2ddad68effbe446dbf220a07d0158b9b9ca8d 405-dlang-mips.patch
c226bb5c60ae5071549e5ec3ab44dc87b244615ba520973b1d4c50a2b6d3fd941c4e5e8e1f85cad28093ee8627d20415114524b593ad3a9b24998328d3f3ea72 406-dlang-fix-interface-visibility.patch"
sha512sums="30c3e36c6e001d172b6219dbf5f0383655d29cbed8a197e1d6139213aacbfdb7cbca63553eedf3a4b35bd445a87ee0f555838d8b2cd7a46ab6bba7951a6b60c5 gcc-10.2.1.tar.xz
70cfaed5960c5c9fa542d4f491be9c3291e7b0bf89f3e08212b6f490b8e9daa0474717c95e06454ff3c3258fe54a9ed13db35dbb316db161837b2a7f5fdeab7e 0001-posix_memalign.patch
b821d95f0279564fad1c504f2d6968a38e518828643bb88466cc5eb2ff5a968ab998c12ef24d9ae4bee5663bf912fe751985a52483b86e09b3825fd3aa5e9bc2 0002-gcc-poison-system-directories.patch
04f60941b5bed089be6e38d38346caaa9e91bc7b91a3e805df2661e728e43c276595efa4c2e40f99b4528d699121f12a0f1a59efd66d20f8b18908ce6f80ead3 0003-Turn-on-Wl-z-relro-z-now-by-default.patch
97aff34931460d341cc0af337da783409139d520910cb1f8c68a54981fc68028161274d4ac3c7f264e3c87fa5222e439321fbe02a01d79b0470b644c118aa3e9 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
b58f3ae0d22009bc13d9f9cabf74a42db8019bfb5da8a31f5f5bf3042782bcb736d555a7ab8439d65894627094b8e0e65ba077b501f939b6f5171e435e77b3fd 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
67226e4f49cde2e5b27b987d1b89b903fdb4127d1339754e85eb135d99601b0718448f9decd3d36a27ba8bde92c50a886f0f6853d44206dba0f0d5d0de126c02 0006-Enable-Wformat-and-Wformat-security-by-default.patch
0756f53b630e8211cb278a8d91859de5bf4758d04e6f3b7e105633aaa1e319c87ab3f63cda0debb97fce430c44aa2d2c744f41c400711cae5187601e9280e8d6 0007-Enable-Wtrampolines-by-default.patch
1db23c64e29d7c373a57df6ed6935557bc7e5e7627e5df3604ee179907fc663421c3c9e9c16fd406b80533bd653e5388669619a908e30c799e8bd25201a7352e 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
e7ac9b12bc66b72cbab02dba17d7bed8aa6365dbe800ce46ba3428d66004f9308f4d26c97f2c2575cf787ee265a343a05c52f1f90e4257d3e97de281c3d14bf9 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
a62736b28b667b53419a433aa9b73a89a28079639b0fd45dae37faa1eae5dbc8c4f81ccad56c5076d1fab50460512114478bd0d20af58216827632da13109d67 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
afe3a9733c972c90d8d303c7f7308afb016a012d7f61ac62a23a37e98932d87c3d6d8999688c45e1d664f8e793155691f66465651888db3d9ad48d595fb7ceb4 0011-libiberty-copy-PIC-objects-during-build-process.patch
62bf455a214586ef8be20d998971df77a198df3638197638634ee0dca972f5cc302f8ff3ac7763af0e92f59398fe109520f8ffab143678ed4517fa62de0bd2e5 0012-libitm-disable-FORTIFY.patch
55877b8b81d6a58ca1d02d207469b03d8fdb197b932ef389a393249091ac9619d4d80467232ff521dac733fdb2fd62eb1bd475d54025c74b03afc5ab411a98e4 0013-libgcc_s.patch
ec75812674114c48e44eb6330d7e79a0155351377c928ca374b9c577af3ca3b19b435ece2d5ae41c6f32ac7410257a518f0d917775f6e0a6fa272ef8f8915921 0014-nopie.patch
c6b04ffcf1d55de9a44cc09b8d9258bd9d3d479e629defb19d42631180b37f57b16d05bbbdac29e98d1d3aff02758baef43203882e46e38f00df118d7d4eef37 0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
d800abe3ec4db542ed9a87af7c714338156be98e013e547e201111b390b0018e3f107c494cc1c8b7c75b7409b8560d14320b6dfd1bf6714c1aa887602060ae31 0016-dlang-update-zlib-binding.patch
478250c9462f61540b202a17c91f30c8e0a8bef380f473a7828f327773dbc6c8d7d2df9d510289eedfad66d14d661620f358d4e2248a6a3176535368743ef16f 0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
74076bafd154d4af206cecb5e338ebb5c8ff4098e7ded862f92e87b66a5c2d8abc20ea7acfe967a969e1a575c9686ba444e0d7f03e5020a8f846fda00cce0bce 0018-ada-fix-shared-linking.patch
1eb3a2a762194daccdac2494ddac59cc60257999532685faa5606fdb5b6965945e6c199cd2218ee5b9e11b54c2f59b81519692956a06f7af1ff500efa5d22a5e 0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
785d6441eccd4323ed0c787a0fc71a8699bddca6f080ff2bfa2eaf3a3e55450076323d01893cf9ff3aa49ee19267611f27b5f725b822af17eeb05aa6a5745f63 0020-libstdc-futex-add-time64-compatibility.patch
4df558cd8c2311cf0b84f481c14b2381134ca8bbcdd2a34c289edd0dd24c8732b7b05bdea9a3f1d328f42f8df30f2131100d50b151b60ff64b71a14e09fcf8e1 0021-add-fortify-headers-paths.patch
061980a1ed749ca305e0577ed9f9c80f7e1c49a133dd59d1598c553a6e1e577ad2a28daf117f7ff6210e625b2408ea1430477036f2212bdbe9100af9158b5951 0022-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
3100aa94fdcf616e635bce1e711a4f93f39ddfff92021e1446764e95a24f4dfc71d36614138ba407bb1221456658ec51fc0d40d4ac696e9931cb10492da75c06 0023-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
bcc546f087e84a9b806fcf8f0efdc354dc89a9d93dcd7dab2a9b29a1a88d233eb827b10bd76ca910c0d114772135368d7565a3e7b3440b500e9609a4db4bff8b 0024-Pure-64-bit-MIPS.patch
f2b852c8799064305ebf7b5c9dd0edada0a534c9e4664fe06f3e25efba83afda12e8b147f7a28e812ef6e7a587565da9ee51b2a8990a110975f7b8d8345007f6 0025-use-pure-64-bit-configuration-where-appropriate.patch
5b47adaa008020d0d42273ff5da646ace84a7c196aff0529dbabe75c1c03cdd89fe63a8f02904d58fa02d1b1a639923a111f4007d4e7c2cc2cdecceba28a0c74 0026-always-build-libgcc_eh.a.patch
4cd8309e60e1bab29f2d5150f9cda8a6a2da9c14010d5f33fd4bb25318f031d36bb5650c69d7c4a0ff077e222229ad59f36d74a27f22f96321f0893b556e83c6 0027-ada-libgnarl-compatibility-for-musl.patch
6e307a0b575284c0d4e99a134ac681cd58ed07a31411d43060184f1a1c9ed27af27396afca415a37120fecb3393ce10daeac9312f82d7d0e83be3c2c744a1eea 0028-ada-musl-support-fixes.patch
121e297b1b0b2cc9cc2c4785c1e1d33995db050f428d92d8327d9720fe10319cf35592ad6e18e4c98d6f68a2ce6a2ccb172ad7ace26d0e4ad450229e673c2c40 0029-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
c0217653d19c2495fa3aeda18e40251531e64d5aa67221451a9e86fbd7a696ff063d6aaa01c8662c07bf85512ac8397592df2e4f622933438bf43b2915247d20 0030-gcc-go-Don-t-include-sys-user.h.patch
70727dc46af7c0c46d7fcb58edc210f7b2be3fab91263e0b65458fc0073fe7c25c937f00fcb4dcd1a76d44d3b3895fd96853ed16f03daeb7786945bcb7391a76 0031-gcc-go-Fix-ucontext_t-on-PPC64.patch
7058a1f8ce66a69e987a308e5b2521234ee3712955f46ab3bccb5c87b0bf6f666e3df585f0323e9494588b51e8300ed9b5d53e7d6229a03f9743892e1b88560b 0032-gcc-go-Fix-handling-of-signal-34-on-musl.patch
ae4fc6ee120376902adb90aa7aea2d6fff35dfcafd75aea3ab62be7ffd72364ef0db2584134d48bc7f7fb6392bb8ca44c2970cd75a82a3e0ff12ad9f292fe61a 0033-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
d6d28d4e22129cf585d4481302b2f304c38568008a23c111a1d02544519bfcde7a5c26802861973c95669f2854c2f4e4670b480f6884bacab27c356d360e7054 0034-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
f7582eaa9b6f421652b6705e28a22ba68210ea7e32d3c468e86b481a26bf391c86146e1a3ee4dda51c5cd4bdf4f167d2284c2ac47c97e02b9e5bb755b68cd6d6 0035-gcc-go-signal-34-is-special-on-musl-libc.patch
85a5759fe0c736cd637b009b4d42a20c836c54435e90d3fa34b3e1a24a7e703e9e18470c2f7a4d6b2a0c5361b5de75b2467415647cb3d232ee67691e82e7f47c 0036-gcc-go-Prefer-_off_t-over-_off64_t.patch
c7d48b3657d37fbaef0696c96f858819bbe5469d7387e99db890eb925703dbeaf11858fdf2ecd556ac85d766c739374d71c5509f5e2fba88eb427cf93e9fdcc0 0037-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
1e85dd650a43ce96d489f77e37fd247186e4e1fe2d088be991c3ff8233c923408137d94b72788ebc2ddcac8873c6f326a92138790ab0281722c67cce400f76cc 0038-gcc-go-link-to-libucontext.patch
c93e8b0797c54483174b77f942e932eeb832c0784af9948ead7d8d95ca6392ffe3edee0740e835cf3d9310904718384e846a882284c21ccf26a055f8f940a874 0039-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
ff74dbf6a3e10f6abececdce57672e76cca8f8a92f67ed495ae2631265402fed74e9b567fc35ad16d2a62449ca4074b6868ebbc56c68b9cecf8e686018f26554 0040-opts-move-fpartial-inlining-from-O2-to-O3-or-higher.patch
eb2d8e432206250a4c4682305390883343e3c8285ac26701a910c1418b6ba5b3681612db846eb298fd47f0163772403340a348b719af751afe410742d6e92472 0041-dlang-support-musl-1.2.0.patch"
@@ -1,14 +1,14 @@
From 65eb86f3e110998d30489df009d44b4bc1043adc Mon Sep 17 00:00:00 2001
From 4ed2cc3054f444c683f54954c32e586a54066337 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH 02/12] posix_memalign
Subject: [PATCH 01/40] posix_memalign
---
gcc/config/i386/pmm_malloc.h | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
index ffbb7f82cf5..b0b890d2403 100644
index 87344d9383f..ece428df487 100644
--- a/gcc/config/i386/pmm_malloc.h
+++ b/gcc/config/i386/pmm_malloc.h
@@ -27,12 +27,13 @@
@@ -38,5 +38,5 @@ index ffbb7f82cf5..b0b890d2403 100644
else
return NULL;
--
2.17.1
2.29.2
@@ -0,0 +1,203 @@
From 09a32a40b34477cd787deb12833c063a09dea7b2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 08:59:00 +0400
Subject: [PATCH 02/40] gcc: poison-system-directories
Add /sw/include and /opt/include based on the original
zecke-no-host-includes.patch patch. The original patch checked for
/usr/include, /sw/include and /opt/include and then triggered a failure and
aborted.
Instead, we add the two missing items to the current scan. If the user
wants this to be a failure, they can add "-Werror=poison-system-directories".
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
---
gcc/common.opt | 4 ++++
gcc/config.in | 6 ++++++
gcc/configure | 16 ++++++++++++++++
gcc/configure.ac | 10 ++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.c | 2 ++
gcc/incpath.c | 21 +++++++++++++++++++++
7 files changed, 68 insertions(+)
diff --git a/gcc/common.opt b/gcc/common.opt
index dfed6ec76ba..8bb65e0e1af 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -682,6 +682,10 @@ Wreturn-local-addr
Common Var(warn_return_local_addr) Init(1) Warning
Warn about returning a pointer/reference to a local or temporary variable.
+Wpoison-system-directories
+Common Var(flag_poison_system_directories) Init(1) Warning
+Warn for -I and -L options using system directories if cross compiling
+
Wshadow
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
index 364eba47737..9551c0dfdf9 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -224,6 +224,12 @@
#endif
+/* Define to warn for use of native system header directories */
+#ifndef USED_FOR_TARGET
+#undef ENABLE_POISON_SYSTEM_DIRECTORIES
+#endif
+
+
/* Define if you want all operations on RTL (the basic data structure of the
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
index b4088d8fd1e..793530e21cf 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1010,6 +1010,7 @@ with_system_zlib
enable_maintainer_mode
enable_link_mutex
enable_version_specific_runtime_libs
+enable_poison_system_directories
enable_plugin
enable_host_shared
enable_libquadmath_support
@@ -1766,6 +1767,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
+ --enable-poison-system-directories
+ warn for use of native system header directories
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -30271,6 +30274,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
+# Check whether --enable-poison-system-directories was given.
+if test "${enable_poison_system_directories+set}" = set; then :
+ enableval=$enable_poison_system_directories;
+else
+ enable_poison_system_directories=no
+fi
+
+if test "x${enable_poison_system_directories}" = "xyes"; then
+
+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
+
+fi
+
# Substitute configuration variables
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 070b9c6c497..0fd438e39e5 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -6605,6 +6605,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
+AC_ARG_ENABLE([poison-system-directories],
+ AS_HELP_STRING([--enable-poison-system-directories],
+ [warn for use of native system header directories]),,
+ [enable_poison_system_directories=no])
+if test "x${enable_poison_system_directories}" = "xyes"; then
+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
+ [1],
+ [Define to warn for use of native system header directories])
+fi
+
# Substitute configuration variables
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 0d532a64bfe..86e57038042 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -348,6 +348,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
+-Wno-poison-system-directories @gol
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
@@ -6926,6 +6927,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.
+@item -Wno-poison-system-directories
+@opindex Wno-poison-system-directories
+Do not warn for @option{-I} or @option{-L} options using system
+directories such as @file{/usr/include} when cross compiling. This
+option is intended for use in chroot environments when such
+directories contain the correct headers and libraries for the target
+system rather than the host.
+
@item -Wfloat-equal
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 9f790db0daf..b2200c5185a 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1041,6 +1041,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
+ %{Wno-poison-system-directories:--no-poison-system-directories} \
+ %{Werror=poison-system-directories:--error-poison-system-directories} \
%{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
diff --git a/gcc/incpath.c b/gcc/incpath.c
index 8a2bda00f80..9098ab044ab 100644
--- a/gcc/incpath.c
+++ b/gcc/incpath.c
@@ -26,6 +26,7 @@
#include "intl.h"
#include "incpath.h"
#include "cppdefault.h"
+#include "diagnostic-core.h"
/* Microsoft Windows does not natively support inodes.
VMS has non-numeric inodes. */
@@ -393,6 +394,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
}
fprintf (stderr, _("End of search list.\n"));
}
+
+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
+ if (flag_poison_system_directories)
+ {
+ struct cpp_dir *p;
+
+ for (p = heads[INC_QUOTE]; p; p = p->next)
+ {
+ if ((!strncmp (p->name, "/usr/include", 12))
+ || (!strncmp (p->name, "/usr/local/include", 18))
+ || (!strncmp (p->name, "/usr/X11R6/include", 18))
+ || (!strncmp (p->name, "/sw/include", 11))
+ || (!strncmp (p->name, "/opt/include", 12)))
+ warning (OPT_Wpoison_system_directories,
+ "include location \"%s\" is unsafe for "
+ "cross-compilation",
+ p->name);
+ }
+ }
+#endif
}
/* Use given -I paths for #include "..." but not #include <...>, and
--
2.29.2
@@ -0,0 +1,39 @@
From 77e75a23e9bdf8863823225567c509b6fed49e6e Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH 03/40] Turn on -Wl,-z,relro,-z,now by default.
---
gcc/doc/invoke.texi | 3 +++
gcc/gcc.c | 1 +
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 86e57038042..87ff404bc20 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -14645,6 +14645,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
linker. When using the GNU linker, you can also get the same effect with
@option{-Wl,-Map=output.map}.
+NOTE: In Alpine Linux, for LDFLAGS, the option
+@option{-Wl,-z,relro,now} is used. To disable, use @option{-Wl,-z,norelro}.
+
@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 b2200c5185a..625c9ab7902 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1039,6 +1039,7 @@ proper position among the other output files. */
"%{flto|flto=*:%<fcompare-debug*} \
%{flto} %{fno-lto} %{flto=*} %l " LINK_PIE_SPEC \
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
+ "-z relro -z now " \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
2.29.2
@@ -0,0 +1,46 @@
From 3b76b0c848746d4adbc4e8db408efd41aefb829c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH 04/40] 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 ++++++
2 files changed, 10 insertions(+)
diff --git a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c
index db91a36794a..ed976c71404 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1385,6 +1385,10 @@ c_cpp_builtins (cpp_reader *pfile)
builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
+ /* Fortify Source enabled by default for optimization levels > 0 */
+ if (optimize)
+ builtin_define_with_int_value ("_FORTIFY_SOURCE", 2);
+
/* Misc. */
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 87ff404bc20..01e67e97491 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -9230,6 +9230,12 @@ also turns on the following optimization flags:
Please note the warning under @option{-fgcse} about
invoking @option{-O2} on programs that use computed gotos.
+NOTE: In Alpine Linux, @option{-D_FORTIFY_SOURCE=2} is
+set by default, and is activated when @option{-O} is set to 2 or higher.
+This enables additional compile-time and run-time checks for several libc
+functions. To disable, specify either @option{-U_FORTIFY_SOURCE} or
+@option{-D_FORTIFY_SOURCE=0}.
+
@item -O3
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified
--
2.29.2
@@ -1,71 +1,68 @@
# DP: On linux targets pass --as-needed by default to the linker, but always
# DP: link the sanitizer libraries with --no-as-needed.
From 483912c560424ee8b5cc996990d45802671fc73f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH 05/40] On linux targets pass --as-needed by default to the
linker, but always link the sanitizer libraries with --no-as-needed.
Index: b/gcc/gcc.c
===================================================================
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -692,8 +692,11 @@ proper position among the other output f
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \
- "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
+ " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lasan " \
+ " %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -710,8 +713,11 @@ proper position among the other output f
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION \
- "} -ltsan %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -ltsan " \
+ " %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -728,8 +734,11 @@ proper position among the other output f
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION \
- "} -llsan %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
+ " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -llsan " \
+ " %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -744,8 +753,11 @@ proper position among the other output f
#define STATIC_LIBUBSAN_LIBS \
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
-#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION \
- "} -lubsan %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lubsan " \
+ " %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
Index: b/gcc/config/gnu-user.h
===================================================================
---
gcc/config/aarch64/aarch64-linux.h | 1 +
gcc/config/alpha/linux-elf.h | 2 +-
gcc/config/arm/linux-elf.h | 1 +
gcc/config/gnu-user.h | 6 +++---
gcc/config/i386/gnu-user.h | 2 +-
gcc/config/i386/gnu-user64.h | 1 +
gcc/config/ia64/linux.h | 2 +-
gcc/config/mips/gnu-user.h | 1 +
gcc/config/riscv/linux.h | 1 +
gcc/config/rs6000/linux64.h | 4 ++--
gcc/config/rs6000/sysv4.h | 2 +-
gcc/config/s390/linux.h | 2 +-
gcc/config/sparc/linux.h | 2 +-
gcc/gcc.c | 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 e587e2e9ad6..1d1017aa523 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define LINUX_TARGET_LINK_SPEC "%{h*} \
+ --as-needed \
%{static:-Bstatic} \
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
index e25fcac3c59..22b2f7b0d14 100644
--- a/gcc/config/alpha/linux-elf.h
+++ b/gcc/config/alpha/linux-elf.h
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER
-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+#define LINK_SPEC "-m elf64alpha --as-needed %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
%{shared:-shared} \
%{!shared: \
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 0ec3aa53189..f8bda84de2a 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
-X \
+ --as-needed \
%{mbig-endian:-EB} %{mlittle-endian:-EL}" \
SUBTARGET_EXTRA_LINK_SPEC
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index ff2e880b1fa..7f30c363e4a 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -161,15 +161,15 @@ see the files COPYING3 and COPYING.RUNTI
@@ -136,17 +136,17 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define LIBASAN_EARLY_SPEC "%{!shared:libasan_preinit%O%s} " \
"%{static-libasan:%{!shared:" \
LD_STATIC_OPTION " --whole-archive -lasan --no-whole-archive " \
@@ -84,20 +81,35 @@ Index: b/gcc/config/gnu-user.h
- LD_DYNAMIC_OPTION "}}%{!static-liblsan:-llsan}"
+ LD_DYNAMIC_OPTION "}}%{!static-liblsan:%{!fuse-ld=gold:--push-state} --no-as-needed -llsan %{fuse-ld=gold:--as-needed;:--pop-state}}"
#endif
Index: b/gcc/config/aarch64/aarch64-linux.h
===================================================================
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -35,6 +35,7 @@
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define LINUX_TARGET_LINK_SPEC "%{h*} \
+ --as-needed \
%{static:-Bstatic} \
%{shared:-shared} \
%{symbolic:-Bsymbolic} \
Index: b/gcc/config/ia64/linux.h
===================================================================
#undef TARGET_F951_OPTIONS
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index ae4aa844f02..54b91c0492a 100644
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -74,7 +74,7 @@ along with GCC; see the file COPYING3. If not see
{ "link_emulation", GNU_USER_LINK_EMULATION },\
{ "dynamic_linker", GNU_USER_DYNAMIC_LINKER }
-#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) --as-needed %{shared:-shared} \
%{!shared: \
%{!static: \
%{!static-pie: \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index 785c68220b8..21dd66b412a 100644
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -56,6 +56,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
"%{" SPEC_64 ":-m " GNU_USER_LINK_EMULATION64 "} \
%{" SPEC_32 ":-m " GNU_USER_LINK_EMULATION32 "} \
%{" SPEC_X32 ":-m " GNU_USER_LINK_EMULATIONX32 "} \
+ --as-needed \
%{shared:-shared} \
%{!shared: \
%{!static: \
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index ee38e218aec..0325971d818 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do { \
@@ -109,37 +121,35 @@ Index: b/gcc/config/ia64/linux.h
%{shared:-shared} \
%{!shared: \
%{!static: \
Index: b/gcc/config/sparc/linux.h
===================================================================
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -86,7 +86,7 @@ extern const char *host_detect_local_cpu
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+#define LINK_SPEC "-m elf32_sparc --as-needed %{shared:-shared} \
%{!mno-relax:%{!r:-relax}} \
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index 5d0782100bb..4be5fbb2191 100644
--- a/gcc/config/mips/gnu-user.h
+++ b/gcc/config/mips/gnu-user.h
@@ -55,6 +55,7 @@ along with GCC; see the file COPYING3. If not see
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC "\
%{G*} %{EB} %{EL} %{mips*} %{shared} \
+ -as-needed \
%{!shared: \
%{!static: \
Index: b/gcc/config/s390/linux.h
===================================================================
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -78,7 +78,7 @@ along with GCC; see the file COPYING3.
%{rdynamic:-export-dynamic} \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
index 4afef7c228c..ba1a6e60e05 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
"%{mabi=ilp32:_ilp32}"
#undef LINK_SPEC
#define LINK_SPEC \
- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \
%{shared:-shared} \
%{!shared: \
%{static:-static} \
Index: b/gcc/config/rs6000/linux64.h
===================================================================
#define LINK_SPEC "\
+-as-needed \
-melf" XLEN_SPEC "lriscv" LD_EMUL_SUFFIX " \
%{mno-relax:--no-relax} \
%{shared} \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 2ded3301282..a1e44ddcc0d 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -490,13 +490,13 @@ extern int dot_symbols;
@@ -457,13 +457,13 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
@@ -155,90 +165,105 @@ Index: b/gcc/config/rs6000/linux64.h
%{!static-pie: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "}}} \
Index: b/gcc/config/rs6000/sysv4.h
===================================================================
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 9ade72114e9..9490b84a153 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -811,7 +811,7 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF
CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, \
MUSL_DYNAMIC_LINKER)
@@ -789,7 +789,7 @@ GNU_USER_TARGET_CC1_SPEC
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#endif
-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --as-needed %{!shared: %{!static: \
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
Index: b/gcc/config/i386/gnu-user64.h
===================================================================
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -56,6 +56,7 @@
"%{" SPEC_64 ":-m " GNU_USER_LINK_EMULATION64 "} \
%{" SPEC_32 ":-m " GNU_USER_LINK_EMULATION32 "} \
%{" SPEC_X32 ":-m " GNU_USER_LINK_EMULATIONX32 "} \
+ --as-needed \
%{shared:-shared} \
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index 6919b468f06..56d52d41b31 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -82,7 +82,7 @@ along with GCC; see the file COPYING3. If not see
#undef LINK_SPEC
#define LINK_SPEC \
- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \
%{shared:-shared} \
%{!shared: \
%{static:-static} \
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 63853e60c03..de6d8675456 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -81,7 +81,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef LINK_SPEC
-#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+#define LINK_SPEC "-m elf32_sparc --as-needed %{shared:-shared} \
%{!mno-relax:%{!r:-relax}} \
%{!shared: \
%{!static: \
Index: b/gcc/config/i386/gnu-user.h
===================================================================
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -74,7 +74,7 @@ along with GCC; see the file COPYING3.
{ "link_emulation", GNU_USER_LINK_EMULATION },\
{ "dynamic_linker", GNU_USER_DYNAMIC_LINKER }
-#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "-m %(link_emulation) --as-needed %{shared:-shared} \
%{!shared: \
%{!static: \
%{!static-pie: \
Index: b/gcc/config/alpha/linux-elf.h
===================================================================
--- 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.
#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER
-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+#define LINK_SPEC "-m elf64alpha --as-needed %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
%{shared:-shared} \
%{!shared: \
Index: b/gcc/config/arm/linux-elf.h
===================================================================
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -70,6 +70,7 @@
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
-X \
+ --as-needed \
%{mbig-endian:-EB} %{mlittle-endian:-EL}" \
SUBTARGET_EXTRA_LINK_SPEC
Index: b/gcc/config/mips/gnu-user.h
===================================================================
--- 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.
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC "\
%{G*} %{EB} %{EL} %{mips*} %{shared} \
+ -as-needed \
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
Index: b/gcc/config/riscv/linux.h
===================================================================
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -58,6 +58,7 @@
"%{mabi=ilp32:_ilp32}"
#define LINK_SPEC "\
+-as-needed \
-melf" XLEN_SPEC "lriscv" LD_EMUL_SUFFIX " \
%{mno-relax:--no-relax} \
%{shared} \
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 625c9ab7902..7aec9d3a016 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -695,8 +695,11 @@ proper position among the other output files. */
#ifdef LIBASAN_EARLY_SPEC
#define LIBASAN_SPEC STATIC_LIBASAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION \
- "} -lasan %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+#define LIBASAN_SPEC "%{static-libasan:" LD_STATIC_OPTION "}" \
+ " %{!static-libasan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lasan " \
+ " %{static-libasan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libasan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBASAN_LIBS
#else
#define LIBASAN_SPEC "-lasan" STATIC_LIBASAN_LIBS
@@ -713,8 +716,11 @@ proper position among the other output files. */
#ifdef LIBTSAN_EARLY_SPEC
#define LIBTSAN_SPEC STATIC_LIBTSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION \
- "} -ltsan %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBTSAN_SPEC "%{static-libtsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libtsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -ltsan " \
+ " %{static-libtsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libtsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBTSAN_LIBS
#else
#define LIBTSAN_SPEC "-ltsan" STATIC_LIBTSAN_LIBS
@@ -731,8 +737,11 @@ proper position among the other output files. */
#ifdef LIBLSAN_EARLY_SPEC
#define LIBLSAN_SPEC STATIC_LIBLSAN_LIBS
#elif defined(HAVE_LD_STATIC_DYNAMIC)
-#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION \
- "} -llsan %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBLSAN_SPEC "%{static-liblsan:" LD_STATIC_OPTION "}" \
+ " %{!static-liblsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -llsan " \
+ " %{static-liblsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-liblsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBLSAN_LIBS
#else
#define LIBLSAN_SPEC "-llsan" STATIC_LIBLSAN_LIBS
@@ -747,8 +756,11 @@ proper position among the other output files. */
#define STATIC_LIBUBSAN_LIBS \
" %{static-libubsan|static:%:include(libsanitizer.spec)%(link_libubsan)}"
#ifdef HAVE_LD_STATIC_DYNAMIC
-#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION \
- "} -lubsan %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+#define LIBUBSAN_SPEC "%{static-libubsan:" LD_STATIC_OPTION "}" \
+ " %{!static-libubsan:%{!fuse-ld=gold:--push-state }--no-as-needed}" \
+ " -lubsan " \
+ " %{static-libubsan:" LD_DYNAMIC_OPTION "}" \
+ " %{!static-libubsan:%{fuse-ld=gold:--as-needed;:--pop-state}}" \
STATIC_LIBUBSAN_LIBS
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
2.29.2
@@ -1,9 +1,18 @@
Enable -Wformat and -Wformat-security by default.
From c57a8b43401ca9a1b889fa9fd421ac49c3dbd380 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH 06/40] Enable -Wformat and -Wformat-security by default.
--- a/gcc/c-family/c.opt 2016-03-23 18:51:56.000000000 +0100
+++ b/gcc/c-family/c.opt 2016-04-28 23:45:54.063351272 +0200
@@ -459,7 +459,7 @@ C ObjC C++ ObjC++ Var(warn_format_nonlit
Warn about format strings that are not literals.
---
gcc/c-family/c.opt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index c49da99d395..93f25319005 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -599,7 +599,7 @@ Warn about function calls with format strings that write past the end
of the destination region. Same as -Wformat-overflow=1.
Wformat-security
-C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
@@ -11,7 +20,7 @@ Enable -Wformat and -Wformat-security by default.
Warn about possible security problems with format functions.
Wformat-signedness
@@ -475,7 +475,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_l
@@ -620,7 +620,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
Warn about zero-length formats.
Wformat=
@@ -19,4 +28,7 @@ Enable -Wformat and -Wformat-security by default.
+C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2)
Warn about printf/scanf/strftime/strfmon format string anomalies.
Wignored-qualifiers
Wformat-overflow=
--
2.29.2
@@ -0,0 +1,25 @@
From a58dad2c52639422671ac6986c36e48499fc2f20 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH 07/40] Enable -Wtrampolines by default.
---
gcc/common.opt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index 8bb65e0e1af..ace932b300d 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -774,7 +774,7 @@ Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.
Wtrampolines
-Common Var(warn_trampolines) Warning
+Common Var(warn_trampolines) Init(1) Warning
Warn whenever a trampoline is generated.
Wtype-limits
--
2.29.2
@@ -0,0 +1,53 @@
From 98b2b8f7de60ed1b6b7602124ef6db278cf3c212 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH 08/40] Disable ssp on -nostdlib, -nodefaultlibs and
-ffreestanding Change the buffer size.
---
gcc/gcc.c | 8 +++++++-
gcc/params.opt | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 7aec9d3a016..daeb4d0c8ea 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -886,6 +886,12 @@ proper position among the other output files. */
#define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
#endif
+#ifdef ENABLE_DEFAULT_SSP
+#define NO_SSP_SPEC "%{nostdlib|nodefaultlibs|ffreestanding:-fno-stack-protector} "
+#else
+#define NO_SSP_SPEC ""
+#endif
+
#ifndef LINK_SSP_SPEC
#ifdef TARGET_LIBC_PROVIDES_SSP
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -1170,7 +1176,7 @@ static const char *cc1_options =
%{-version:--version}\
%{-help=*:--help=%*}\
%{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
- %{fsyntax-only:-o %j} %{-param*}\
+ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
%{coverage:-fprofile-arcs -ftest-coverage}\
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
diff --git a/gcc/params.opt b/gcc/params.opt
index 4aec480798b..eaecfab37ad 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -853,7 +853,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
The maximum number of SSA_NAME assignments to follow in determining a value.
-param=ssp-buffer-size=
-Common Joined UInteger Var(param_ssp_buffer_size) Init(8) IntegerRange(1, 65536) Param Optimization
+Common Joined UInteger Var(param_ssp_buffer_size) Init(4) IntegerRange(1, 65536) Param Optimization
The lower bound for a buffer to be considered for stack smashing protection.
-param=stack-clash-protection-guard-size=
--
2.29.2
@@ -0,0 +1,54 @@
From 035775ef38206ed2859500efe5fb42ceec2e858d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH 09/40] Ensure that msgfmt doesn't encounter problems during
gcc bootstrapping.
Solves error messages like the following:
msgfmt: /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/libstdc++.so.6)
The libgcc_s.so used during build doesn't satisfy the needs of the
libstdc++.so that msgfmt is linked against. On the other hand, msgfmt
is used as a stand-alone application here, and what library it uses
behind the scenes is of no concern to the gcc build process.
Therefore, simply invoking it "as usual", i.e. without any special
library path, will make it work as expected here.
2011-09-19 Martin von Gagern
References:
https://bugs.gentoo.org/372377
https://bugs.gentoo.org/295480
---
libstdc++-v3/po/Makefile.am | 1 +
libstdc++-v3/po/Makefile.in | 1 +
2 files changed, 2 insertions(+)
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index a9391d8d167..f7eee24dc8c 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -38,6 +38,7 @@ MSGFMT = msgfmt
EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN)
.po.mo:
+ env --unset=LD_LIBRARY_PATH \
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index a0f84b0cfa0..ab24a47a2fd 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -548,6 +548,7 @@ uninstall-am:
.po.mo:
+ env --unset=LD_LIBRARY_PATH \
$(MSGFMT) -o $@ $<
all-local: all-local-$(USE_NLS)
--
2.29.2
@@ -0,0 +1,28 @@
From e9875d74e75c601b95dba677bc9e58c869150212 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH 10/40] Don't declare asprintf if defined as a macro.
---
include/libiberty.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/libiberty.h b/include/libiberty.h
index 141cb886a85..fa0e78eb62f 100644
--- a/include/libiberty.h
+++ b/include/libiberty.h
@@ -645,8 +645,11 @@ extern int pwait (int, int *, int);
/* Like sprintf but provides a pointer to malloc'd storage, which must
be freed by the caller. */
+/* asprintf may be declared as a macro by glibc with __USE_FORTIFY_LEVEL. */
+#ifndef asprintf
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
#endif
+#endif
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
2.29.2
@@ -0,0 +1,24 @@
From 764e64bba73a7b7eb5154c8537781412252ed33e Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH 11/40] libiberty: copy PIC objects during build process
---
libiberty/Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index d6b302e02fd..fd39928546f 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -263,6 +263,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
$(AR) $(AR_FLAGS) $(TARGETLIB) \
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
$(RANLIB) $(TARGETLIB); \
+ cp $(TARGETLIB) ../ ; \
cd ..; \
else true; fi
--
2.29.2
@@ -0,0 +1,33 @@
From da46d99b1b7661a98064a45bdccf08c1867582b0 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:36 +0000
Subject: [PATCH 12/40] libitm: disable FORTIFY
---
libitm/configure.tgt | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/libitm/configure.tgt b/libitm/configure.tgt
index 04109160e91..107b957ece3 100644
--- a/libitm/configure.tgt
+++ b/libitm/configure.tgt
@@ -46,6 +46,16 @@ if test "$gcc_cv_have_tls" = yes ; then
esac
fi
+# FIXME: error: inlining failed in call to always_inline
+# ‘int vfprintf(FILE*, const char*, __va_list_tag*)’
+# : function body can be overwritten at link time
+# Disable Fortify in libitm for now. #508852
+case "${target}" in
+ *-*-linux*)
+ XCFLAGS="${XCFLAGS} -U_FORTIFY_SOURCE"
+ ;;
+esac
+
# 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.29.2
+57
View File
@@ -0,0 +1,57 @@
From 354f2a8ceb70f9f6e1688ba41c1cc1c17ac87329 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH 13/40] libgcc_s
---
gcc/config/i386/i386-expand.c | 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 c6033688f51..a60e5162995 100644
--- a/gcc/config/i386/i386-expand.c
+++ b/gcc/config/i386/i386-expand.c
@@ -10966,10 +10966,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. */
tree call_expr, fndecl, type;
type = build_function_type_list (integer_type_node, NULL_TREE);
- fndecl = build_fn_decl ("__cpu_indicator_init", type);
+ fndecl = build_fn_decl ("__cpu_indicator_init_local", type);
call_expr = build_call_expr (fndecl, 0);
return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
}
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index cf5f0884bb4..ed0381e7744 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -510,7 +510,7 @@ __cpu_indicator_init (void)
return 0;
}
-#if defined SHARED && defined USE_ELF_SYMVER
-__asm__ (".symver __cpu_indicator_init, __cpu_indicator_init@GCC_4.8.0");
-__asm__ (".symver __cpu_model, __cpu_model@GCC_4.8.0");
+#ifndef SHARED
+int __cpu_indicator_init_local (void)
+ __attribute__ ((weak, alias ("__cpu_indicator_init")));
#endif
diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
index 8506a635790..564296f788e 100644
--- a/libgcc/config/i386/t-linux
+++ b/libgcc/config/i386/t-linux
@@ -3,5 +3,5 @@
# t-slibgcc-elf-ver and t-linux
SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver
-HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER $(CET_FLAGS)
+HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS)
CRTSTUFF_T_CFLAGS += $(CET_FLAGS)
--
2.29.2
+75
View File
@@ -0,0 +1,75 @@
From 7fb84007ff62309abffdbddfa751e69c331e82c3 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH 14/40] nopie
---
gcc/configure | 27 +++++++++++++++++++++++++++
gcc/configure.ac | 13 +++++++++++++
2 files changed, 40 insertions(+)
diff --git a/gcc/configure b/gcc/configure
index 793530e21cf..2d874d3defe 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -30779,6 +30779,33 @@ fi
$as_echo "$gcc_cv_no_pie" >&6; }
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
+else
+ # Check if -nopie works.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -nopie option" >&5
+$as_echo_n "checking for -nopie option... " >&6; }
+if test "${gcc_cv_nopie+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ saved_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -nopie"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+int main(void) {return 0;}
+_ACEOF
+if ac_fn_cxx_try_link "$LINENO"; then :
+ gcc_cv_nopie=yes
+else
+ gcc_cv_nopie=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$saved_LDFLAGS"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_nopie" >&5
+$as_echo "$gcc_cv_nopie" >&6; }
+ if test "$gcc_cv_nopie" = "yes"; then
+ NO_PIE_FLAG="-nopie"
+ fi
fi
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 0fd438e39e5..0b257e687ee 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -6863,6 +6863,19 @@ AC_CACHE_CHECK([for -no-pie option],
LDFLAGS="$saved_LDFLAGS"])
if test "$gcc_cv_no_pie" = "yes"; then
NO_PIE_FLAG="-no-pie"
+else
+ # Check if -nopie works.
+ AC_CACHE_CHECK([for -nopie option],
+ [gcc_cv_nopie],
+ [saved_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -nopie"
+ AC_LINK_IFELSE([int main(void) {return 0;}],
+ [gcc_cv_nopie=yes],
+ [gcc_cv_nopie=no])
+ LDFLAGS="$saved_LDFLAGS"])
+ if test "$gcc_cv_nopie" = "yes"; then
+ NO_PIE_FLAG="-nopie"
+ fi
fi
AC_SUBST([NO_PIE_FLAG])
--
2.29.2
@@ -0,0 +1,25 @@
From 3f764eb6dc371cc48cfdf231cbd40e64b1f2a671 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:09 +0000
Subject: [PATCH 15/40] 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.29.2
@@ -1,6 +1,16 @@
diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
--- a/libphobos/src/std/zlib.d 2020-01-01 00:00:00.000000000 +0900
+++ b/libphobos/src/std/zlib.d 2020-01-01 00:00:00.000000000 +0900
From b78dea0f8f09d4092bec52b7ada719ead2552dd2 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:51 +0000
Subject: [PATCH 16/40] 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.
@@ -62,7 +72,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
*
* See_Also:
* $(LINK http://en.wikipedia.org/wiki/Adler-32)
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] b
@@ -147,7 +152,7 @@ uint adler32(uint adler, const(void)[] buf)
* buf = buffer containing input data
*
* Returns:
@@ -89,7 +99,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
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,
@@ -276,7 +282,7 @@ void[] uncompress(const(void)[] srcbuf, size_t destlen = 0u, int winbits = 15)
throw new ZlibException(err);
}
}
@@ -172,7 +182,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
if (!inited)
{
@@ -598,26 +607,152 @@ class UnCompress
if (!destbufsize)
destbufsize = to!uint(buf.length) * 2;
- destbuf = new ubyte[zs.avail_in * 2 + destbufsize];
@@ -334,7 +344,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
/**
* Decompress and return any remaining data.
* The returned data should be appended to that returned by uncompress().
@@ -626,48 +761,39 @@ class UnCompress
@@ -626,49 +761,40 @@ class UnCompress
void[] flush()
in
{
@@ -409,3 +419,7 @@ diff -Nurp a/libphobos/src/std/zlib.d b/libphobos/src/std/zlib.d
+ assert(decompressor.empty, "The UnCompressor reports not being done");
}
}
--
2.29.2
@@ -0,0 +1,51 @@
From 58c529af8a9673b90dc7137065ab788c25b358a8 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:58:22 +0000
Subject: [PATCH 17/40] dlang: fix fcntl on mips, add libucontext dep
---
libphobos/configure.tgt | 1 +
libphobos/libdruntime/core/sys/posix/fcntl.d | 15 +++++++++++++++
2 files changed, 16 insertions(+)
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
index 94e42bf5509..73f2e4b7f01 100644
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -35,6 +35,7 @@ case "${target}" in
;;
mips*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
+ LIBDRUNTIME_NEEDS_UCONTEXT=yes
;;
power*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
diff --git a/libphobos/libdruntime/core/sys/posix/fcntl.d b/libphobos/libdruntime/core/sys/posix/fcntl.d
index 9febcff849b..cb34e2108bd 100644
--- a/libphobos/libdruntime/core/sys/posix/fcntl.d
+++ b/libphobos/libdruntime/core/sys/posix/fcntl.d
@@ -870,6 +870,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.29.2
@@ -0,0 +1,42 @@
From 2a614f9b702b02c312cd513eddb1fc6745f9a3ad Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH 18/40] ada: fix shared linking
---
gcc/ada/link.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/link.c b/gcc/ada/link.c
index 02c413a412f..f0e52a87d6e 100644
--- a/gcc/ada/link.c
+++ b/gcc/ada/link.c
@@ -107,9 +107,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
|| defined (__NetBSD__) || defined (__OpenBSD__) \
|| defined (__QNX__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
@@ -129,9 +129,9 @@ const char *__gnat_default_libgcc_subdir = "lib";
#elif defined (__linux__) || defined (__GLIBC__)
const char *__gnat_object_file_option = "-Wl,@";
-const char *__gnat_run_path_option = "-Wl,-rpath,";
-char __gnat_shared_libgnat_default = STATIC;
-char __gnat_shared_libgcc_default = STATIC;
+const char *__gnat_run_path_option = "";
+char __gnat_shared_libgnat_default = SHARED;
+char __gnat_shared_libgcc_default = SHARED;
int __gnat_link_max = 8192;
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
2.29.2
@@ -0,0 +1,24 @@
From dab36b973223e0d6853f564e845bc22dadcc4d2d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH 19/40] build: fix CXXFLAGS_FOR_BUILD passing
---
Makefile.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.in b/Makefile.in
index 36e369df6e7..63627db68cf 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -170,6 +170,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
--
2.29.2
Loaded 100 of 2983 files, more files were not shown because too many files have changed in this diff. Show more