Search Criteria
Package Details: makepkg-optimize-mold 30-2
Package Actions
Git Clone URL: | https://aur.archlinux.org/makepkg-optimize-mold.git (read-only, click to copy) |
---|---|
Package Base: | makepkg-optimize-mold |
Description: | Supplemental build and packaging optimizations for makepkg |
Upstream URL: | https://wiki.archlinux.org/index.php/Makepkg-optimize |
Keywords: | makepkg-optimize makepkg-tweaks mold |
Licenses: | GPL-1.0-only |
Submitter: | ptr1337 |
Maintainer: | ptr1337 |
Last Packager: | ptr1337 |
Votes: | 5 |
Popularity: | 0.022716 |
First Submitted: | 2021-12-31 21:48 (UTC) |
Last Updated: | 2024-08-24 12:42 (UTC) |
Dependencies (11)
- pacman (pacman-gitAUR, pacman-fancy-gitAUR)
- aoccAUR (optional) – use amd's llvm compiler for compiling
- aocl-aoccAUR (optional) – use amd's compiler libary for compiling
- buildcacheAUR (buildcache-gitAUR, buildcache-binAUR) (optional) – a alternative to ccache
- lld (llvm-gitAUR) (optional) – the clang linker
- mold (mold-gitAUR) (optional) – a modern fast linker
- openmp (optional) – Parallelize loops
- optipng (optional) – Optimize PNG files
- polly (llvm-gitAUR) (optional) – Polyhedral model optimization for clang
- svgo (optional) – Optimize SVG files
- upx (upx-gitAUR) (optional) – Compress executables
Required by (0)
Sources (26)
- aocc.sh.in
- bolt.sh.in
- buildcache.sh.in
- buildenv_ext.conf
- cflags.conf
- cmake-flags.conf
- compress-param_max.conf
- cxxflags.conf
- destdirs_ext.conf
- graphite.sh.in
- ldflags.conf
- lld.sh.in
- makeflags.conf
- mold.sh.in
- optipng-exec.sh.in
- optipng.sh.in
- pgo.sh.in
- pkgopts-param_ext.conf
- pkgopts_ext.conf
- relocs.sh.in
- relocsgcc.sh.in
- rice.sh.in
- svgo-exec.sh.in
- svgo.sh.in
- upx-exec.sh.in
- upx.sh.in
Latest Comments
1 2 3 4 Next › Last »
Tjuh commented on 2025-09-04 17:49 (UTC)
Install polly and use this -fplugin=LLVMPolly.so instead of -Xclang -load -Xclang LLVMPolly.so. Also that PGO script doesn't work with Clang, only GCC.
brikler commented on 2025-08-07 14:57 (UTC) (edited on 2025-08-07 14:58 (UTC) by brikler)
hi,
it seems something isn't ok with
makepkg-optimize-mold
:( and pgo also doesn't workclang -march=native -O2 -pipe -pthread -lgomp -mllvm -polly -mllvm -polly-num-threads=8 -mllvm -polly-parallel -Xclang -load -Xclang LLVMPolly.so -flto=auto -fprofile-generate -fprofile-dir=/home/tom/compile/bpftune-git/bpftune-git.gen -lpthread -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -lgcov --coverage conn_bomb.c -o conn_bomb
oech3 commented on 2025-07-16 15:11 (UTC)
@ptr1337 I think this should have proper upstream (instead of wiki) and replace
makepkg-optimize
which is not maintained.murlakatamenka commented on 2025-02-04 09:25 (UTC) (edited on 2025-07-21 20:10 (UTC) by murlakatamenka)
Peter @ptr1337, consider using
oxipng
instead ofoptipng
Why?
1) It does optimize better.
You can see that
optipng
is one of the dependencies of Calibre. Indeed, it's used internally by it:https://github.com/kovidgoyal/calibre/blob/eb161166b05f33eb0ff6bda97bac1fafadca77c5/src/calibre/utils/img.py#L621-L625
CLI utility of calibre
ebook-polish
is using it. My experience is that after runningepub-polish
on EPUB book with PNG images, the latter can be further optimized withoxipng
:So it means that
optipng
doesn't optimally encodes PNGs. Worth noting thatoxipng
with--opt max
doesn't use Zopfli, there is separate CLI switch for it, i.e. it's not whyoxipng
compresses files better.2)
oxipng
is faster (multithreaded, uses all avaliable cores/threads by default).As stated in the project's README:
Multi-threading would be especially useful if you need to optimize only a few images (<
$(nproc)
), because you won't be able to utilize all your threads with single-threadedoptipng
, unlike withoxipng
brikler commented on 2024-11-30 09:04 (UTC) (edited on 2024-11-30 09:05 (UTC) by brikler)
makepkg-optimize.conf
isn't properly createdblackout commented on 2024-07-12 09:45 (UTC) (edited on 2024-09-24 22:36 (UTC) by blackout)
Mold --separate-debug-file and
-fuse-ld=mold
needs to be in one section with-Wl
brikler commented on 2022-07-16 16:02 (UTC)
clang pgo: https://clang.llvm.org/docs/UsersManual.html#profile-guided-optimization isn't easy like pgo in gcc because more opportunity
ptr1337 commented on 2022-07-15 13:45 (UTC)
@brikler
Actually I have never changed anything on the PGO thing from the upstream makepkg-optimize and I did tested it just with gcc - im sorry. Clang uses/needs other options for that. If I have time I will look into this!
brikler commented on 2022-07-15 07:00 (UTC) (edited on 2022-07-15 08:24 (UTC) by brikler)
it doesn't work as expected. the first compilation breaks with:
PROFDEST was set in the PKGBUILD, and
upx.gen
was on the correct place.there is something wrong in general, because its not on me to create gen and used folder.
edit1: it works with
gcc
, but not with 'clang'edit2: a propos UNITY_BUILD it is more or less a developer tool, and it will not work on every project, but if, the time to compile a project can be reduced up to 50%. more about unity build: https://mesonbuild.com/Unity-builds.html
ptr1337 commented on 2022-07-14 20:59 (UTC)
Cause of incremental builds I have something here: https://github.com/ptr1337/dotfiles/blob/master/scripts/toolchain/build_llvm.bash#L242
But it is not very well tested. It does work so for but has some issues and it also uses "check" at the compilation.
1 2 3 4 Next › Last »