# Compilieren mehr als 10 Stunden von Programmen?

## JoHo42

Hi Leute,

sind diese compiler Zeiten aus z.B. genlop -t chromium richtig?

qtwebkit Zeit 10 Stunden

Libreoffice Zeit 3 Stunden

Chromium Zeit 1 Tag

Ich habe hier einen Laptop mit i5 Prozessor und 12 Gbyte RAM.

Es ist wohl eine normale HDD keine SSD.

Trotzdem komme ich auf die oben genannten CompilerZeiten.

Ist das richtig?

Gruß Jörg

----------

## ManfredB

Kann ich nur zustimmen.

Daher gehe ich den Weg über binpkgs, die ich am PC erstelle und dann auf dem Notebook nutze.

Nur mit einigen wenigen Programmen funktioniert das so nicht.

Als Beispiel heute:

sys-devel/clang

Auf dem PC als binpkg erstellt, doch es wird auf dem Notebook als solches nicht installiert.

Dauer des Compilierens:

mehr als 30 Minuten.

Gruß

Manfred

----------

## mike155

3 Stunden für Libreoffice ist vermutlich ganz normal. Bei mir dauert es knapp zwei Stunden auf meinem Desktop-Rechner mit i5-3570K CPU @ 3.40GHz und 16GB RAM. 

1 Tag für Chromium bzw. 10 Stunden für qtwebkit erscheinen mir recht lang. Allerdings habe ich keine eigenen Werte, da ich diese Pakete nicht installiert habe. Es ist durchaus möglich, dass es mittlerweile tatsächlich so lange dauert. 

Schau doch mal, ob Dein System beim Compilieren von Chromium und qtwebkit anfängt, exzessiv zu swappen - das kostet richtig Zeit. In diesem Fall solltest Du entweder die Anzahl der parallel laufenden Jobs reduzieren oder mehr RAM in Dein Notebook stecken. HDD versus SSD spielt vermutlich keine große Rolle.

Du kannst auch mal schauen, ob Du qtwebkit überhaupt brauchst. Das wird schnell von anderen Paketen mit reingezogen - in vielen Fällen kann man es durch Ändern von ein paar USE Flags wieder loswerden. Das ist das, was ich gemacht habe und weshalb es auf meinem Rechner kein qtwebkit gibt.  

Poste doch mal die Ausgabe von 'emerge --info'. Dann können wir mehr sehen.

----------

## JoHo42

Hi Leute,

danke für die Antworten.

Hier mal die emerge --info vielleicht hilft das ja weiter.

Portage 3.0.9 (python 3.7.9-final-0, default/linux/amd64/17.1/desktop, gcc-9.3.0, glibc-2.32-r2, 4.4.192-gentoo x86_64)

=================================================================

System uname: Linux-4.4.192-gentoo-x86_64-Intel-R-_Core-TM-_i5-5200U_CPU_@_2.20GHz-with-gentoo-2.7

KiB Mem:    12259880 total,  10854428 free

KiB Swap:    4199420 total,   4199420 free

Timestamp of repository gentoo: Sat, 12 Dec 2020 11:45:01 +0000

Head commit of repository gentoo: 0318f96a30f0c8f265d57cc40d4cb711ddf0bd95

sh bash 5.0_p18

ld GNU ld (Gentoo 2.34 p6) 2.34.0

ccache version 3.7.12 [disabled]

app-shells/bash:          5.0_p18::gentoo

dev-java/java-config:     2.3.1::gentoo

dev-lang/perl:            5.30.3::gentoo

dev-lang/python:          2.7.18-r4::gentoo, 3.7.9::gentoo, 3.8.6::gentoo, 3.9.0::gentoo

dev-util/ccache:          3.7.12::gentoo

dev-util/cmake:           3.17.4-r1::gentoo

dev-util/pkgconfig:       0.29.2::gentoo

sys-apps/baselayout:      2.7::gentoo

sys-apps/openrc:          0.42.1::gentoo

sys-apps/sandbox:         2.20::gentoo

sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo

sys-devel/automake:       1.16.2-r1::gentoo

sys-devel/binutils:       2.34-r2::gentoo

sys-devel/gcc:            9.3.0-r1::gentoo

sys-devel/gcc-config:     2.3.2-r1::gentoo

sys-devel/libtool:        2.4.6-r6::gentoo

sys-devel/make:           4.2.1-r4::gentoo

sys-kernel/linux-headers: 5.4-r1::gentoo (virtual/os-headers)

sys-libs/glibc:           2.32-r2::gentoo

Repositories:

gentoo

    location: /usr/portage

    sync-type: rsync

    sync-uri: rsync://rsync2.nl.gentoo.org/gentoo-portage

    priority: -1000

    sync-rsync-verify-jobs: 1

    sync-rsync-verify-max-age: 24

    sync-rsync-verify-metamanifest: yes

    sync-rsync-extra-opts: 

gamerlay

    location: /var/lib/layman/gamerlay

    masters: gentoo

    priority: 50

vortex

    location: /var/lib/layman/vortex

    masters: gentoo

    priority: 50

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="@FREE"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=native -O2 -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-march=native -O2 -pipe"

DISTDIR="/usr/portage/distfiles"

EMERGE_DEFAULT_OPTS="-ak1 --quiet-build"

ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"

FCFLAGS="-O2 -pipe"

FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news nodoc noinfo noman parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-O2 -pipe"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LANG="de_DE.utf8"

LC_ALL="C"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

LINGUAS="de en_GB nl"

MAKEOPTS="-j5"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"

PORTAGE_TMPDIR="/var/tmp"

USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli crypt cups dbus dri dts dvd dvdr elogind emboss encode exif flac fortran gdbm gif gtk gui iconv icu ipv6 jpeg lcms libglvnd libnotify libtirpc mad mng mp3 mp4 mpeg mtp multilib ncurses networkmanager nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio qt5 readline sdl seccomp spell split-usr ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb uxa vaapi vorbis wxwidgets x264 xattr xcb xinerama xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev synaptics" KERNEL="linux" L10N="de en-GB nl" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python2_7 python3_8" RUBY_TARGETS="ruby25 ruby26" USERLAND="GNU" VIDEO_CARDS="intel i965 nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Gruß Jörg

----------

## Max Steel

Deine Werte scheinen mir wirklich etwas hoch. Allerdings hängt das stark vom verfügbaren RAM, der verwendeten Anzahl Jobs, der CPU und nicht zuletzt von den aktivierten USE-Flags ab.

Hier zum Vergleich die emerge --info für besagte Pakete auf meinem "Arbeits-PC" der compiled mit 4 Jobs, specs stehen in der Signatur.

```

=================================================================

                        Package Settings

=================================================================

dev-qt/qtwebkit-5.212.0_pre20200309-r1::gentoo was built with the following:

USE="X gstreamer hyphen jit opengl printsupport qml -geolocation -gles2-only -multimedia -nsplugin -orientation -webp" ABI_X86="(64)"

CFLAGS="-march=native -O2 -pipe -fno-strict-aliasing"

CXXFLAGS="-march=native -O2 -pipe -fno-strict-aliasing"

app-office/libreoffice-7.0.3.1::gentoo was built with the following:

USE="bluetooth branding clang cups dbus gtk kde mariadb -accessibility -base -coinmp -custom-cflags -debug -eds -firebird -googledrive -gstreamer -java -ldap -odk -pdfimport -postgres -test -vulkan" ABI_X86="(64)" LIBREOFFICE_EXTENSIONS="-nlpsolver -scripting-beanshell -scripting-javascript -wiki-publisher" PYTHON_SINGLE_TARGET="python3_8 -python3_6 -python3_7 -python3_9"

FEATURES="merge-sync config-protect-if-modified pid-sandbox network-sandbox usersync ebuild-locks unmerge-orphans qa-unresolved-soname-deps userfetch fixlafiles unmerge-logs strict unknown-features-warn binpkg-logs binpkg-docompress distlocks parallel-fetch sandbox binpkg-dostrip protect-owned usersandbox userpriv ipc-sandbox assume-digests sfperms news preserve-libs xattr multilib-strict"

LDFLAGS="-Wl,-O1 -Wl,--as-needed -fuse-ld=lld"

www-client/chromium-88.0.4324.27::gentoo was built with the following:

USE="cups hangouts js-type-check (pic) proprietary-codecs pulseaudio suid system-ffmpeg system-icu tcmalloc vaapi widevine (-component-build) -custom-cflags (-headless) -kerberos -official (-selinux) -wayland" ABI_X86="(64)" L10N="de -am -ar -bg -bn -ca -cs -da -el -en-GB -es -es-419 -et -fa -fi -fil -fr -gu -he -hi -hr -hu -id -it -ja -kn -ko -lt -lv -ml -mr -ms -nb -nl -pl -pt-BR -pt-PT -ro -ru -sk -sl -sr -sv -sw -ta -te -th -tr -uk -vi -zh-CN -zh-TW"

```

Zum Vergleich meine compile-zeiten besagter Pakete:

```

HPKistchen ~ $ genlop -t chromium | tail -n 3

     Fri Dec 11 14:28:50 2020 >>> www-client/chromium-88.0.4324.27

       merge time: 11 hours, 45 minutes and 28 seconds.

HPKistchen ~ $ genlop -t libreoffice| tail -n 3         

     Fri Dec 11 01:05:20 2020 >>> app-office/libreoffice-7.0.3.1

       merge time: 2 hours, 47 minutes and 58 seconds.

HPKistchen ~ $ genlop -t qtwebkit| tail -n 3

     Thu Dec 10 18:41:57 2020 >>> dev-qt/qtwebkit-5.212.0_pre20200309-r1

       merge time: 3 hours, 17 minutes and 30 seconds.

```

PS: Bitte setz deine emerge --info Ausgabe in [ code ] Tags. dann wirds verständlicher.

PPS: Und bitte poste die Ausgabe von emerge --info qtwebkit libreoffice chromium anstelle von emerge --info, sdann stehen die Paketspezifischen Configs mit dabei.

----------

## mike155

@JoHo42: ich kann mir gut vorstellen, dass Du zumindest zeitweise in exzessives Swapping läufst. Bei den großen C++ Paketen muss man mit 2-3 GB RAM pro Make-Job rechnen. Bei "-j5" sind das also 10-15 GB. Du hast aber nur 12 GB - und von denen geht noch etwas ab für das Betriebssystem und andere laufende Programme. Möglicherweise hast Du auch /var/tmp/portage als tmpfs gemountet, dann steht noch deutlich weniger zur Verfügung, weil ja ein Teil des RAMs für das tmpfs verwendet wird. Die Folge kann dann Swapping sein.

Außerdem hast Du nur 2 Kerne. Da scheint mir "-j5" doch etwas übertrieben. Vermutlich hast Du Hyperhreading eingeschaltet, dann hast Du 4 logische Kerne. Jeder der 4 logischen Kerne ist aber deutlich langsamer, als einer der beiden "richtigen" Kerne. Deshalb schalte ich Hyperthreading meistens aus, wenn ich für eine Anwendung nicht nachgemesen habe, dass Hyperthreading tatsächlich etwas bringt. Ich halte Hyperthreading auf Mobile CPUs für eine Mogelpackung.

Lange Rede kurzer Sinn: gehe runter auf "-j3", deaktiviere tmpfs auf /var/tmp/portage testweise (falls vorhanden) und teste noch einmal, wie lange "emerge qtwebkit" benötigt. Wenn Du möchtest, kannst Du den Test einmal mit eingeschaltetem Hyperthreading und einmal ohne Hyperthreading durchführen.

@Max Steel: danke für Deine Ausgabe von genlop. Bei Dir sind die Emerge-Zeiten für LibreOffice und qtwebkit nicht weit auseinander. Bei @JoHo42 unterscheiden sie sich um einen Faktor 3. Das ist ein weiterer Hinweis darauf, dass bei JoHo42 bei 'emerge qtwebkit' etwas nicht stimmt.

----------

## JoHo42

Hi Leute,

also SWAPEN macht der eigentlich wenig. Der SWAP wird eigentlicht nicht benötigt.

Ich war bisher immer der Überzeugung, daß ich 4 CPUs habe. Allerdings steht da was mit 2 Cores.

Hier mal die Infos aus /proc/cpuinfo

 *Quote:*   

> 
> 
>   processor	: 0
> 
>   vendor_id	: GenuineIntel
> ...

 

Wenn das nur zwei CPUs sind, dann wäre die Frage wo finde ich Hyperthreading im Kernel?

Gruß Jörg[/quote]

----------

## JoHo42

Hi Leute,

so CPUs sind offline. Ich habe nur 2 CPUs.

Ausgeschaltet mit 

echo 0 > /sys/device/system/cpu/cpu3/online

echo 0 > /sys/device/system/cpu/cpu2/online

make Jobs steht jetzt auf 3. Bin gespannt wie lange emerge Chromium jetzt braucht.

Gruß Jörg

----------

## mike155

 *Quote:*   

> Ich war bisher immer der Überzeugung, daß ich 4 CPUs habe. Allerdings steht da was mit 2 Cores. 

 

Verlässlichste Quelle für Intel CPUs ist http://ark.intel.com. Im Falle Deines Prozessors: https://ark.intel.com/content/www/us/en/ark/products/85212/intel-core-i5-5200u-processor-3m-cache-up-to-2-70-ghz.html.

Da sieht man:

```
CPU Specifications

# of Cores 2

# of Threads 4
```

Die CPU hat 2 Kerne.

Unter Linux kann man es mit 'lscpu' sehen. Bei echten 4 Kernen kommen dann:

```
CPU(s):                  4

Liste der Online-CPU(s):0-3

Thread(s) pro Kern:      1

Kern(e) pro Sockel:      4

Sockel:                  1
```

Und bei einer CPU mit nur 2 Kernen und Hypterthreading:

```
CPU(s):                  4

Liste der Online-CPU(s): 0-3

Thread(s) pro Kern:      2

Kern(e) pro Sockel:      2

Sockel:                  1
```

Ein- und Ausschalten kann man Hyperthreading entweder im BIOS (da mache ich es), beim Booten mit einem Kernel-Boot-Parameter (nosmt), oder auch im laufenden Betrieb.

----------

## mike155

 *JoHo42 wrote:*   

> so CPUs sind offline. Ich habe nur 2 CPUs. Ausgeschaltet mit 
> 
> ```
> echo 0 > /sys/device/system/cpu/cpu3/online
> 
> ...

 

Da wäre ich vorsichtig. 

Wer sagt, dass Du jetzt die richtigen Threads ausgeschaltet hast? Könnte es nicht sein, dass Du die beiden Threads auf Kern 2 ausgeschaltet hast? Dann hättest Du jetzt 1 Kern mit 2 Threads - nicht das, was Du willst. Schalte Hyperthreading lieber im BIOS oder mit dem Boot-Parameter nosmt ab.

----------

## pietinger

Wenn ich noch einen Vorschlag machen darf:

- Schalte das Hyperthreading NICHT aus (keine Sorge der Kernel verteilt die Last auf die beiden echten Kerne).

- Nimm -j2 statt 3 (Untersuchungen zeigten damit eine bessere Performance).

- Beobachte das ganze = Speicherverbrauch UND CPU-Temperatur (gerade bei Notebooks) mit einem geeigneten Systemmonitor (ich verwende ksysguard aus der KDE-Suite).

- Prüfe was Du sonst noch nebenbei machst (Browser schlucken tlw. 1 GB RAM)

----------

## JoHo42

Hi Leute,

nosmt habe ich jetzt in der Kernel startzeile eingesetzt.

Laut dmesg wird der Kernel auch mit nosmt gestartet.

Allerdings sehe ich immer noch 4 CPUs.

Chromium ließ sich jetzt mit 16 Stunden compilieren, allerdings ist das noch nicht verlässlich.

-n steht jetzt auf 3 CPUs.

Gruß Jörg

----------

## mike155

 *JoHo42 wrote:*   

> nosmt habe ich jetzt in der Kernel startzeile eingesetzt.
> 
> Laut dmesg wird der Kernel auch mit nosmt gestartet.
> 
> Allerdings sehe ich immer noch 4 CPUs.
> ...

 

Der Kernel Parameter "nosmt" schaltet nur einzelne Threads ab. Deshalb sieht man noch alle 4 Threads, aber wenn Du Dir den Status ansiehst, sollten zwei Threads offline sein.

Aus diesem Grund schalte ich Hyperthreading gerne im BIOS ab. Dann erscheinen die 4 Threads gar nicht mehr unter Linux. "lscpu" würde dann 2 Kerne mit jeweils einem Thread anzeigen.

 *Quote:*   

> Chromium ließ sich jetzt mit 16 Stunden compilieren

 

Ein deutlicher Fortschritt, wenn es vorher 24 Stunden waren!   :Smile: 

----------

## misterjack

Warum Hyperthreading ausschalten, wenn einschlägige Benchmarks eine Zeitersparnis zeigen?

https://www.phoronix.com/scan.php?page=article&item=intel-ht-2018&num=4

 *pietinger wrote:*   

> Wenn ich noch einen Vorschlag machen darf:
> 
> - Schalte das Hyperthreading NICHT aus (keine Sorge der Kernel verteilt die Last auf die beiden echten Kerne).
> 
> 

 

Richtig!

----------

## firefly

 *misterjack wrote:*   

> Warum Hyperthreading ausschalten, wenn einschlägige Benchmarks eine Zeitersparnis zeigen?
> 
> https://www.phoronix.com/scan.php?page=article&item=intel-ht-2018&num=4

 

Mit aktuellen kernel versionen könnte das auf Intel CPUs nicht mehr ganz so stimmen. Das liegt aber Hauptsächlich an den ganzen Mitigations für die Intel CPU security Bugs.

"Aktueller" test wie stark die Performance der Intel CPUs durch die Mitigations einbricht (mit HT):

https://www.phoronix.com/scan.php?page=article&item=spectre-meltdown-2

Hier ein test wo ht via nosmt deaktiviert wird

https://www.phoronix.com/scan.php?page=news_item&px=Spec-Melt-L1TF-MDS-Laptop-Run

Aber grundsätzlich ist Hyperthreading was gutes. Wobei die bessere Performance durch HT abhängig ist vom entsprechenden Workload.

----------

## ChrisJumper

Aus dem Grund compiliere ich die dicken Dinger auch nur noch gezielt und bei bedarf. Das selbe aber auch mit dem gcc/clang/rust usw.

Die Browser haben schon länger Betriebssystem-Größe erreicht und werden halt immer wichtiger. Aber eben darum ist es mir auch wichtig das ich davon den Sourcecode zur Verfügung hab und die selber kompiliere.

Besonders ärgerlich auch wenn ich gerade den Fuchs aktualisiert hab und dann kommt 2 Tage später noch ein weiteres Security Update hinzu, beispielsweise 84.0.0 auf 84.0.2.

Kann man es nicht mit git syncen und dann nur noch die geänderten Fälle aktualisieren/neu compilieren? Normal ist doch das so gemacht das man zwar Abhängigkeiten neu baut, aber make darauf achtet wenn nur eine Datei verändert wurde lediglich diese Änderungen neu baut.

Würde es da Sinn machen die Sourcen mit GIT lokal zu verwalten und zu bauen statt als ebuild mit Gentoo?

Klar oft hat sich so viel geändert das man wieder alles neu bauen muss. Aber bei Lineageos 17_1, baut der Ninja Prozess auch nur die gepatchten Bereiche neu wenn das am selben Tag war mit wenigen Minuten dazwischen und ich meine so hab ich das auch beim gentoo-kernel erlebt. Ist aber oft die Ausnahme und neben der Täglichen Arbeit bleibt mir da leider wenig Zeit das zu testen.

----------

## mike155

 *ChrisJumper wrote:*   

> Besonders ärgerlich auch wenn ich gerade den Fuchs aktualisiert hab und dann kommt 2 Tage später noch ein weiteres Security Update hinzu, beispielsweise 84.0.0 auf 84.0.2.

 

... manchmal ist es auch nur ein ganz normales stable-Update eines Basis-Pakets. 

Gestern beispielsweise kam ein Update von ICU - und schon muss der Rechner wieder die ganze Nacht über kompilieren!   :Smile: 

```
  (dev-libs/icu-68.2:0/68.2::gentoo, ebuild scheduled for merge) causes rebuilds for:

    ...

    (www-client/firefox-84.0.2:0/84::gentoo, ebuild scheduled for merge)

    ...

    (mail-client/thunderbird-78.6.0:0/78::gentoo, ebuild scheduled for merge)

    ...

    (app-office/libreoffice-7.0.4.2:0/0::gentoo, ebuild scheduled for merge)

    (net-fs/samba-4.12.9-r1:0/0::gentoo, ebuild scheduled for merge)

    (dev-qt/qtcore-5.15.2-r2:5/5.15.2::gentoo, ebuild scheduled for merge)

    (dev-libs/boost-1.74.0-r1:0/1.74.0::gentoo, ebuild scheduled for merge)
```

----------

