Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • tdptheking/packages
  • yuriy-chumak/packages
  • peter/packages
  • andri0500/packages
  • ivmai77/packages
  • jonesv/packages
  • systemdlete/packages
  • Osvaldorino/packages
  • Bdragon/packages
  • ska/packages
  • Le1gh/packages
  • dimitsos/packages
  • arcayr/packages
  • alicela1n/packages
  • djt/packages
  • dusxmt/packages
  • lstarnes/packages
  • smaeul/packages
  • krazier/packages
  • koorogi/packages
  • shizonic/packages
  • gavinhoward/packages
  • sroracle/packages
  • adelie/packages
  • alyx/packages
  • sonicrules1234/packages
  • Rsamoraj11/packages
  • ndowens04/packages
  • jogness/packages
  • bunny/packages
  • rmccask/packages
  • zx2c4/packages
  • ndowens/packages
  • CyberLeo/packages
  • paper/packages
  • Ermine/packages
  • zephy/packages
  • ashquarky/adelie-packages
  • mahiuchun/packages
  • TobiX/packages
  • firasuke/packages
41 results
Show changes
Commits on Source (2337)
Showing
with 506 additions and 459 deletions
src src
pkg pkg
scripts/sgrep
scripts/tsort
scripts/.index
A. Wilcox <AWilcox@Wilcox-Tech.com> A. Wilcox <AWilcox@Wilcox-Tech.com>
Horst G. Burkhardt <mc@680x0.com> Horst G. Burkhardt <mc@680x0.com>
Mira Ressel <aranea@aixah.de>
Síle Ekaterin Liszka <sheila@vulpine.house> Kiyoshi Aman <kiyoshi.aman+adelie@gmail.com>
Síle Ekaterin Liszka <sheila@vulpine.house> Kiyoshi Aman <adelie@aerdan.vulpine.house>
Síle Ekaterin Liszka <sheila@vulpine.house> Kiyoshi Aman <kiyoshi.aman+apkfission@gmail.com>
Síle Ekaterin Liszka <sheila@vulpine.house> Kiyoshi Aman <kiyoshi.aman@gmail.com>
Síle Ekaterin Liszka <sheila@vulpine.house> Sheila Aman
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
:Status: :Status:
Draft Draft
:Copyright: :Copyright:
© 2017-2018 Adélie Linux Team. NCSA open source licence. © 2017-2020 Adélie Linux Team. NCSA open source licence.
......
Copyright (c) 2016-2017 Adélie Linux Team and Contributors. Copyright (c) 2016-2020 Adélie Linux Team and Contributors.
All rights reserved. All rights reserved.
Developed by: Adélie Linux Team Developed by: Adélie Linux Team
...@@ -19,9 +19,10 @@ Redistributions in binary form must reproduce the above copyright ...@@ -19,9 +19,10 @@ Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimers in notice, this list of conditions and the following disclaimers in
the documentation and/or other materials provided with the distribution. the documentation and/or other materials provided with the distribution.
Neither the names of Adélie Linux, Wilcox Technologies, LLC, nor the Neither the names of Adélie Linux; Wilcox Technologies, LLC;
names of its contributors may be used to endorse or promote products Adélie Software in the Public Benefit, LLC; nor the names of its
derived from this Software without specific prior written permission. contributors may be used to endorse or promote products derived
from this Software without specific prior written permission.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
......
...@@ -5,12 +5,12 @@ ...@@ -5,12 +5,12 @@
* **A. Wilcox**, Distro Lead * **A. Wilcox**, Distro Lead
* **Elizabeth Myers**, Platform Group * **Elizabeth Myers**, Platform Group
* **Horst Burkhardt**, Platform Group * **Horst Burkhardt**, Platform Group
* **Kiyoshi Aman**, Platform Group * **Síle Ekaterin Liszka**, Platform Group
* **Adélie Linux Developers and Users**, contributions * **Adélie Linux Developers and Users**, contributions
:Status: :Status:
Production Production
:Copyright: :Copyright:
© 2017-2019 Adélie Linux Team. NCSA open source licence. © 2017-2022 Adélie Linux Team. NCSA open source licence.
......
...@@ -11,7 +11,7 @@ depends="" ...@@ -11,7 +11,7 @@ depends=""
depends_dev="" depends_dev=""
makedepends="$depends_dev gmp-dev gwenhywfar-dev xmlsec-dev" makedepends="$depends_dev gmp-dev gwenhywfar-dev xmlsec-dev"
subpackages="$pkgname-dev $pkgname-doc" subpackages="$pkgname-dev $pkgname-doc"
source="aqbanking-$pkgver.tar.gz::https://www.aquamaniac.de/sites/download/download.php?package=03&release=217&file=02&dummy=aqbanking-$pkgver.tar.gz" source="aqbanking-$pkgver.tar.gz::https://www.aquamaniac.de/rdm/attachments/download/277/$pkgname-$pkgver.tar.gz"
build() { build() {
cd "$builddir" cd "$builddir"
......
# Contributor: Soren Tempel <soeren+alpine@soeren-tempel.net> # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contrubutor: Carlo Landmeter <clandmeter@gmail.com> # Contrubutor: Carlo Landmeter <clandmeter@gmail.com>
# Contributor: Lee Starnes <lee@canned-death.us> # Contributor: Lee Starnes <lee@canned-death.us>
# Maintainer: Lee Starnes <lee@canned-death.us> # Maintainer: Lee Starnes <lee@canned-death.us>
......
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=elisa
pkgver=20.04.3
pkgrel=0
pkgdesc="KDE music player"
url="https://kde.org/applications/multimedia/org.kde.elisa"
arch="all"
license="LGPL-3.0-only"
depends="qt5-qtquickcontrols2"
makedepends="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtmultimedia-dev vlc-dev
qt5-qtquickcontrols2-dev qt5-qtsvg-dev cmake extra-cmake-modules
baloo-dev kconfig-dev kconfigwidgets-dev kcoreaddons-dev kcrash-dev
kdbusaddons-dev kdeclarative-dev kdoctools-dev kfilemetadata-dev
ki18n-dev kio-dev kirigami2-dev kpackage-dev kxmlgui-dev"
subpackages="$pkgname-doc $pkgname-lang"
source="https://download.kde.org/stable/release-service/$pkgver/src/elisa-$pkgver.tar.xz"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=RelWithDebugInfo \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_C_FLAGS="$CFLAGS" \
${CMAKE_CROSSOPTS} \
.
make
}
check() {
# QML tests require OpenGL.
# databaseInterfaceTest known failure: https://phabricator.kde.org/D24563#563126
CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E '(elisaqmltests|databaseInterfaceTest)'
}
package() {
make DESTDIR="$pkgdir" install
}
sha512sums="00afa92eaab736f5f38759a3076b9f579ee3f5fce84404042a73e11cdfe0e004b32a83f9e542ca6d0a962d66bcb3fcce9d12fc5dbdd8f937d9d4cea9321687b4 elisa-20.04.3.tar.xz"
...@@ -12,7 +12,7 @@ depends_dev="qt5-qtbase-dev" ...@@ -12,7 +12,7 @@ depends_dev="qt5-qtbase-dev"
makedepends="$depends_dev gnutls-dev libgcrypt-dev libgpg-error-dev makedepends="$depends_dev gnutls-dev libgcrypt-dev libgpg-error-dev
cmd:which gtk+2.0-dev" cmd:which gtk+2.0-dev"
subpackages="$pkgname-dev $pkgname-gtk2 $pkgname-qt5" subpackages="$pkgname-dev $pkgname-gtk2 $pkgname-qt5"
source="gwenhywfar-$pkgver.tar.gz::https://www.aquamaniac.de/sites/download/download.php?package=01&release=208&file=02&dummy=gwenhywfar-$pkgver.tar.gz" source="gwenhywfar-$pkgver.tar.gz::https://www.aquamaniac.de/rdm/attachments/download/304/$pkgname-$pkgver.tar.gz"
build() { build() {
cd "$builddir" cd "$builddir"
......
# Maintainer:
pkgname=hexchat
pkgver=2.14.1
pkgrel=0
pkgdesc="Popular and easy to use graphical IRC (chat) client"
url="https://hexchat.github.io"
arch="all"
license="GPL-2.0+"
depends=""
makedepends="dbus-glib-dev glib-dev gtk+2.0-dev iso-codes-dev libcanberra-dev
libnotify-dev libproxy-dev libsexy-dev meson ninja openssl-dev
perl-dev pciutils-dev python3-dev"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-perl:_perl
$pkgname-py:_python"
source="https://dl.hexchat.net/hexchat/hexchat-$pkgver.tar.xz"
prepare() {
cd "$builddir"
default_prepare
mkdir -p _build
}
build() {
cd "$builddir"/_build
meson -Dprefix=/usr -Dwith-lua=false
ninja
}
check() {
cd "$builddir"/_build
ninja test
}
package() {
cd "$builddir"/_build
DESTDIR="$pkgdir" ninja install
}
_perl() {
pkgdesc="Perl plugin for HexChat"
depends="$pkgname=$pkgver-r$pkgrel"
install_if="$pkgname=$pkgver-r$pkgrel perl"
mkdir -p "$subpkgdir"/usr/lib/hexchat/plugins
mv "$pkgdir"/usr/lib/hexchat/plugins/perl.so \
"$subpkgdir"/usr/lib/hexchat/plugins
}
_python() {
pkgdesc="Python plugin for HexChat"
depends="$pkgname=$pkgver-r$pkgrel"
install_if="$pkgname=$pkgver-r$pkgrel perl3"
mkdir -p "$subpkgdir"/usr/lib/hexchat/plugins
mv "$pkgdir"/usr/lib/hexchat/plugins/python.so \
"$subpkgdir"/usr/lib/hexchat/plugins
}
sha512sums="2728d6f084530c1a65ddb7960db6574fef2bca77e726a2155c8b5724256f37b47421e990b1bf7c9fad7987027b2f6de4534a8df28a98cb3d28da726e16ac32dd hexchat-2.14.1.tar.xz"
# Contributor: Carlo Landmeter <clandmeter@gmail.com> # Contributor: Carlo Landmeter <clandmeter@gmail.com>
# Contributor: Will Sinatra <wpsinatra@gmail.com> # Contributor: Will Sinatra <wpsinatra@gmail.com>
# Contributor: Lee Starnes <lee@canned-death.us>
# Maintainer: Lee Starnes <lee@canned-death.us> # Maintainer: Lee Starnes <lee@canned-death.us>
pkgname=libffcall pkgname=libffcall
pkgver=2.2 pkgver=2.4
pkgrel=0 pkgrel=0
pkgdesc="C library for implementing foreign function calls in embedded interpreters" pkgdesc="C library for implementing foreign function calls in embedded interpreters"
url="https://www.gnu.org/software/libffcall" url="https://www.gnu.org/software/libffcall"
...@@ -16,6 +15,35 @@ source="https://ftp.gnu.org/gnu/libffcall/libffcall-$pkgver.tar.gz ...@@ -16,6 +15,35 @@ source="https://ftp.gnu.org/gnu/libffcall/libffcall-$pkgver.tar.gz
ppc64.patch ppc64.patch
" "
prepare() {
default_prepare
case "${CARCH}" in
ppc64)
# C sources are patched, bundled .S need to be regenerated;
# recipes for *-powerpc64-elfv2-linux.S from Makefile.devel
temp=$(mktemp)
comm="-D__powerpc64__ -D__powerpc64_elfv2__ -O2 -fno-omit-frame-pointer -o ${temp}"
nxst="../common/noexecstack.h"
flag="${comm} -I.. -I../dummy"
for k in avcall vacall; do
cd ${k}
gcc ${flag} -S ${k}-powerpc64.c
cat ${temp} ${nxst} > ${k}-powerpc64-elfv2-linux.S
cd -
done
flag="${comm} -I. -I../.. -I../../dummy -fPIC -DREENTRANT"
cd callback/vacall_r
gcc ${flag} -S ../../vacall/vacall-powerpc64.c
cat ${temp} ../${nxst} > vacall-powerpc64-elfv2-linux.S
cd -
rm ${temp}
;;
esac
}
build() { build() {
./configure \ ./configure \
--build=$CBUILD \ --build=$CBUILD \
...@@ -38,5 +66,5 @@ package() { ...@@ -38,5 +66,5 @@ package() {
} }
sha512sums="b9d3ca4c67ab92915a8183d850153e585dcb58ceb2199a104426a7aae363d37017b1226440acd18a2db0cc207e044f71e932857189964261e8eaa6de5cef1731 libffcall-2.2.tar.gz sha512sums="c9451662764a888e3be21499c29673bfb0e1df4915814da3506db5d395a2b00ea2f0c08d1c9dffebf030179f9347794876ec6ec9e6710b4fc70fd760960335e6 libffcall-2.4.tar.gz
db7fae1d2f0d95003186671fd89b097b4abf6184d3001e34dd93419640502b9cd5cf32aef4839d6a4208f4aed793c70f9a4367f12adde21372dc131b111238fe ppc64.patch" 7360a5bdea23dec4a84f9653e96540dcccfcce1214899c421ad66760aeffa6223eb1a2d9011a1e0cddb1027b90242518e37c45b12625f8ff9a276e181db278d3 ppc64.patch"
This diff is collapsed.
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=thunderbird
pkgver=60.2.1
pkgrel=0
pkgdesc="Email client from Mozilla"
url="https://www.mozilla.org/thunderbird/"
arch="all"
options="!check" # X11 required
license="MPL"
depends=""
# moz build system stuff
# python deps
# system-libs
# actual deps
makedepends="
autoconf2.13 ncurses-dev perl cmd:which
ncurses-dev openssl-dev
alsa-lib-dev bzip2-dev icu-dev libevent-dev libffi-dev libpng-dev
libjpeg-turbo-dev nspr-dev nss-dev pulseaudio-dev zlib-dev
cargo clang fts-dev llvm6-dev rust
dbus-glib-dev gconf-dev gtk+2.0-dev gtk+3.0-dev hunspell-dev libsm-dev
libnotify-dev libxcomposite-dev libxdamage-dev libxrender-dev libxt-dev
nss-static sqlite-dev startup-notification-dev unzip yasm zip
"
subpackages=""
source="https://archive.mozilla.org/pub/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz
mozconfig
bad-google-code.patch
cmsghdr.patch
endianness-js.patch
fix-bug-1261392.patch
fix-seccomp-bpf.patch
proper-system-hunspell.patch
rust-config.patch
skia.patch
stab.h
stackwalk-x86-ppc.patch
thunderbird.desktop
webrtc-broken.patch
"
somask="liblgpllibs.so
libmozgtk.so
libmozsandbox.so
libxul.so"
_tbirddir=/usr/lib/${pkgname}
unpack() {
default_unpack
# just ripped from Firefox's APKBUILD...
[ -z $SKIP_PYTHON ] || return 0
msg "Killing all remaining hope for humanity and building Python 2..."
cd "$srcdir"
[ -d python ] && rm -r python
mkdir python
cd python
# 19:39 <+solar> just make the firefox build process build its own py2 copy
curl -O https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
tar xJf Python-2.7.15.tar.xz
cd Python-2.7.15
# 20:03 <calvin> TheWilfox: there's always violence
./configure --prefix="$srcdir/python"
make -j $JOBS
# 6 tests failed:
# test__locale test_os test_posix test_re test_strptime test_time
# make test
make -j $JOBS install
}
prepare() {
default_prepare
cp "$srcdir"/stab.h "$builddir"/toolkit/crashreporter/google-breakpad/src/
cp "$srcdir"/mozconfig "$builddir"/mozconfig
echo "ac_add_options --enable-optimize=\"$CFLAGS\"" >> "$builddir"/mozconfig
echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig
echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig
# too much memory
if [ -z "$JOBS" ] || [ $JOBS -gt 32 ]; then
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j32\"" >> "$builddir"/mozconfig
fi
}
build() {
cd "$builddir"
# reportedly needed for gcc6; confirm this?
export CXXFLAGS="$CXXFLAGS -fno-delete-null-pointer-checks -fno-schedule-insns2"
export LDFLAGS="$LDFLAGS -Wl,-rpath,${_tbirddir}"
export USE_SHORT_LIBNAME=1
export PATH="$srcdir/python/bin:$PATH"
./mach build
}
package() {
cd "$builddir"
export PATH="$srcdir/python/bin:$PATH"
DESTDIR="$pkgdir" ./mach install
install -D -m644 "$srcdir"/thunderbird.desktop \
"$pkgdir"/usr/share/applications/thunderbird.desktop
}
sha512sums="d74da3c90658c5baf09c22760cad31594524c09f2cd5aba81c5b15bb6db64d78f613562cb015d8a725b4902caa4a57a2d1dafce28284533747faed00f8268a02 thunderbird-60.2.1.source.tar.xz
beda68f67171d18291c0671a5c7944382c217f47a1abceeb9e776fe7cf2d5baf861616bc1450032964ce78f910765c8c6b497eb1b050c85ac65a560bae5c9c87 mozconfig
dce2523e9dc10719eae77cc1607de094e34526b3ff8694fb51a5116c118c89bb1c1b8b192c03b976663b3afab8e9fdbff79007b3ba0344186a7783b3dc597ebc bad-google-code.patch
61c7117345b4bcb045ce0287aa368d90dffd7331347021ff345d5a7c46097ffd2575f38711309ce7bdbbbec15561e03fdabcb16235ed8a325ccc8c9d5bba35a6 cmsghdr.patch
31f0cf9663443410a996002ed0357c2ea21692ce965a30d8bfb65d0f1827173da8d8b5c831ccbc199ecbe7a577613be0dd54a09db08e620fe37e1ce977a7afb0 endianness-js.patch
a50b412edf9573a0bd04a43578b1c927967a616b73a5995eefb15bfa78fd2bd14e36ec05315a0703f6370ecd524e6bcb012e7285beb1245e9add9b8553acb79e fix-bug-1261392.patch
70863b985427b9653ce5e28d6064f078fb6d4ccf43dd1b68e72f97f44868fc0ce063161c39a4e77a0a1a207b7365d5dc7a7ca5e68c726825eba814f2b93e2f5d fix-seccomp-bpf.patch
1a88c21c39d5878e2018463fe08dd3a960cdf10e650e06ef3e4f089a431800b50267d8749a7acde196bb47c45aa66058a6ed4fb4d60de2ab69e8a48cd5a109bc proper-system-hunspell.patch
fd3b165e26ab931dd7eaf220d578c30b8772eab0a870710d59403c9823c2233ef941cd7eb25d1625d705de9e8a7138d0e8c4e227a185e9b687553132da96d81a rust-config.patch
8ef2bc4404601f66c7505f3e0a2f6d1d11e8f11e5a888dce4942cf27c86fbdbcdd66cb3d98738b7d9e25538793986140e75d51a893d22c70714ed98ef50a9894 skia.patch
0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
d12ce112b97cbdba0748c5734a024b13032c5e0696efbd499764246e031d477b0f0a966aedc7b3bedd166bcdc2cc24d45bb9da5f678de9cff547bc6aa231cd16 stackwalk-x86-ppc.patch
95a2b1deb4f6c90750fdd2bfe8ca0a7879a5b267965091705a6beb0a0a4b1ccad75d11df7b9885543ca4232ff704e975c6946f4c11804cb71c471e06f9576001 thunderbird.desktop
76409619464259e3ba52e38d640c5b6210a7fecdc75cf124c185ef356507d4d266a845e9fcdeb7766dcd547f70748123c4fa1670f6e52aadd001a3c866dc2d51 webrtc-broken.patch"
--- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
@@ -45,6 +45,7 @@
#include <sys/mman.h>
#include <sys/stat.h>
#include <unistd.h>
+#include <libgen.h>
#include <iostream>
#include <set>
--- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
@@ -41,6 +41,10 @@
#include "common/using_std_string.h"
+#ifndef N_UNDF
+#define N_UNDF 0
+#endif
+
using std::vector;
namespace google_breakpad {
--- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
@@ -55,7 +55,7 @@
#ifdef HAVE_MACH_O_NLIST_H
#include <mach-o/nlist.h>
-#elif defined(HAVE_A_OUT_H)
+#elif 0
#include <a.out.h>
#endif
--- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
@@ -1134,6 +1134,12 @@ struct kernel_statfs {
#ifndef __NR_fallocate
#define __NR_fallocate 285
#endif
+
+#undef __NR_pread
+#define __NR_pread __NR_pread64
+#undef __NR_pwrite
+#define __NR_pwrite __NR_pwrite64
+
/* End of x86-64 definitions */
#elif defined(__mips__)
#if _MIPS_SIM == _MIPS_SIM_ABI32
diff -Naur firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs firefox-60.0/media/audioipc/audioipc/src/cmsg.rs
--- firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs 2018-05-13 18:05:51.713781232 -0700
+++ firefox-60.0/media/audioipc/audioipc/src/cmsg.rs 2018-05-13 17:33:39.536856530 -0700
@@ -108,6 +108,7 @@
let cmsghdr = cmsghdr {
cmsg_len: cmsg_len as _,
+ __pad1: 0,
cmsg_level: level,
cmsg_type: kind,
};
# HG changeset patch
# User Steve Fink <sfink@mozilla.com>
# Date 1536603384 25200
# Mon Sep 10 11:16:24 2018 -0700
# Node ID f598dceb588d1adf503d30acf4e0915d07d34006
# Parent b7dd3969261896020d7a9449d22f350a97e3517a
# EXP-Topic b1488552.enD
Bug 1488552 - JSString flags bit must alias the low 32 bits of JSObject.group_, not the high 32. r=tcampbell
diff --git a/js/src/gc/RelocationOverlay.h b/js/src/gc/RelocationOverlay.h
--- a/js/src/gc/RelocationOverlay.h
+++ b/js/src/gc/RelocationOverlay.h
@@ -29,24 +29,35 @@ struct Cell;
* This structure overlays a Cell that has been moved and provides a way to find
* its new location. It's used during generational and compacting GC.
*/
class RelocationOverlay
{
/* See comment in js/public/HeapAPI.h. */
static const uint32_t Relocated = js::gc::Relocated;
+#if MOZ_LITTLE_ENDIAN
/*
- * Keep the low 32 bits untouched. Use them to distinguish strings from
+ * Keep the first 32 bits untouched. Use them to distinguish strings from
* objects in the nursery.
*/
uint32_t preserve_;
/* Set to Relocated when moved. */
uint32_t magic_;
+#elif JS_BITS_PER_WORD == 64
+ /*
+ * On big-endian, we need to reorder to keep preserve_ lined up with the
+ * low 32 bits of the aligned group_ pointer in JSObject.
+ */
+ uint32_t magic_;
+ uint32_t preserve_;
+#else
+# error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
+#endif
/* The location |this| was moved to. */
Cell* newLocation_;
/* A list entry to track all relocated things. */
RelocationOverlay* next_;
public:
diff --git a/js/src/vm/StringType.h b/js/src/vm/StringType.h
--- a/js/src/vm/StringType.h
+++ b/js/src/vm/StringType.h
@@ -2,16 +2,17 @@
* vim: set ts=8 sts=4 et sw=4 tw=99:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_StringType_h
#define vm_StringType_h
+#include "mozilla/EndianUtils.h"
#include "mozilla/MemoryReporting.h"
#include "mozilla/PodOperations.h"
#include "mozilla/Range.h"
#include "jsapi.h"
#include "jsfriendapi.h"
#include "builtin/String.h"
@@ -161,18 +162,30 @@ class JSString : public js::gc::Cell
static const size_t NUM_INLINE_CHARS_LATIN1 = 2 * sizeof(void*) / sizeof(JS::Latin1Char);
static const size_t NUM_INLINE_CHARS_TWO_BYTE = 2 * sizeof(void*) / sizeof(char16_t);
/* Fields only apply to string types commented on the right. */
struct Data
{
union {
struct {
+#if MOZ_LITTLE_ENDIAN
uint32_t flags; /* JSString */
uint32_t length; /* JSString */
+#elif JS_BITS_PER_WORD == 64
+ /*
+ * On big-endian, we need to reorder to keep flags lined up
+ * with the low 32 bits of the aligned group_ pointer in
+ * JSObject.
+ */
+ uint32_t length; /* JSString */
+ uint32_t flags; /* JSString */
+#else
+# error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
+#endif
};
uintptr_t flattenData; /* JSRope (temporary while flattening) */
} u1;
union {
union {
/* JS(Fat)InlineString */
JS::Latin1Char inlineStorageLatin1[NUM_INLINE_CHARS_LATIN1];
char16_t inlineStorageTwoByte[NUM_INLINE_CHARS_TWO_BYTE];
--- thunderbird-60.2.1/js/src/gc/Marking-inl.h.old 2018-10-01 14:51:12.000000000 +0000
+++ thunderbird-60.2.1/js/src/gc/Marking-inl.h 2018-10-12 19:08:28.260000000 +0000
@@ -92,10 +92,10 @@
MOZ_ASSERT(!isForwarded());
// The location of magic_ is important because it must never be valid to see
// the value Relocated there in a GC thing that has not been moved.
- static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSObject, group_) + sizeof(uint32_t),
- "RelocationOverlay::magic_ is in the wrong location");
- static_assert(offsetof(RelocationOverlay, magic_) == offsetof(js::Shape, base_) + sizeof(uint32_t),
- "RelocationOverlay::magic_ is in the wrong location");
+ //static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSObject, group_) + sizeof(uint32_t),
+ // "RelocationOverlay::magic_ is in the wrong location");
+ //static_assert(offsetof(RelocationOverlay, magic_) == offsetof(js::Shape, base_) + sizeof(uint32_t),
+ // "RelocationOverlay::magic_ is in the wrong location");
static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSString, d.u1.length),
"RelocationOverlay::magic_ is in the wrong location");
magic_ = Relocated;
--- thunderbird-60.2.1/js/src/jsfriendapi.h.old 2018-10-01 14:51:13.000000000 +0000
+++ thunderbird-60.2.1/js/src/jsfriendapi.h 2018-10-12 19:12:06.190000000 +0000
@@ -9,6 +9,7 @@
#include "mozilla/Atomics.h"
#include "mozilla/Casting.h"
+#include "mozilla/EndianUtils.h"
#include "mozilla/Maybe.h"
#include "mozilla/MemoryReporting.h"
#include "mozilla/UniquePtr.h"
@@ -640,8 +641,15 @@
static const uint32_t LATIN1_CHARS_BIT = JS_BIT(6);
static const uint32_t EXTERNAL_FLAGS = LINEAR_BIT | NON_ATOM_BIT | JS_BIT(5);
static const uint32_t TYPE_FLAGS_MASK = JS_BIT(6) - 1;
+#if MOZ_LITTLE_ENDIAN
uint32_t flags;
uint32_t length;
+#elif JS_BITS_PER_WORD == 64
+ uint32_t length;
+ uint32_t flags;
+#else
+# error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
+#endif
union {
const JS::Latin1Char* nonInlineCharsLatin1;
const char16_t* nonInlineCharsTwoByte;
--- a/tools/profiler/core/platform.h 2017-05-27 11:44:06.733119794 +0000
+++ b/tools/profiler/core/platform.h 2017-05-27 11:46:16.004253520 +0000
@@ -54,10 +54,11 @@
#include <vector>
#include "StackTop.h"
-// We need a definition of gettid(), but glibc doesn't provide a
-// wrapper for it.
-#if defined(__GLIBC__)
+// We need a definition of gettid(), but Linux libc implementations don't
+// provide a wrapper for it (except for Bionic)
+#if defined(__linux__)
#include <unistd.h>
+#if !defined(__BIONIC__)
#include <sys/syscall.h>
static inline pid_t gettid()
{
@@ -71,6 +72,7 @@
return (pid_t) syscall(SYS_thread_selfid);
}
#endif
+#endif
#ifdef XP_WIN
#include <windows.h>
--- a/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc.orig 2015-09-23 09:10:08.812740571 +0200
+++ b/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc 2015-09-23 09:11:38.404746155 +0200
@@ -23,6 +23,11 @@
#include "sandbox/linux/services/android_ucontext.h"
#endif
+// musl libc defines siginfo_t __si_fields instead of _sifields
+#if defined(OS_LINUX) && !defined(__GLIBC__)
+#define _sifields __si_fields
+#endif
+
namespace {
struct arch_sigsys {
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --disable-crashreporter
ac_add_options --disable-install-strip
ac_add_options --disable-jemalloc
ac_add_options --disable-profiling
ac_add_options --disable-strip
ac_add_options --disable-tests
ac_add_options --disable-updater
ac_add_options --enable-application=comm/mail
ac_add_options --enable-alsa
ac_add_options --enable-calendar
ac_add_options --enable-dbus
ac_add_options --enable-default-toolkit=cairo-gtk3
ac_add_options --enable-official-branding
ac_add_options --enable-pie
ac_add_options --enable-pulseaudio
ac_add_options --enable-startup-notification
ac_add_options --enable-system-ffi
ac_add_options --enable-system-hunspell
ac_add_options --with-pthreads
ac_add_options --with-system-bz2
ac_add_options --with-system-icu
ac_add_options --with-system-jpeg
ac_add_options --with-system-libevent
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-png
ac_add_options --with-system-zlib