install: remove -march=native

This simplifies the instructions. People interested in performance are
likely to know how to use it.
This commit is contained in:
Daniel Eklöf 2020-12-21 13:01:38 +01:00
parent a83f2448bc
commit aa13dfb4e8
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -142,17 +142,13 @@ optimization.
In addition to being faster, PGO builds also tend to be smaller than In addition to being faster, PGO builds also tend to be smaller than
regular `-O3` builds. regular `-O3` builds.
**Note**: if you are packaging foot, you should probably remove
`-march=native`, as that may cause gcc/clang to emit instructions that
may not be available on other computers.
#### Size optimized #### Size optimized
To optimize for size (i.e. produce a small binary): To optimize for size (i.e. produce a small binary):
```sh ```sh
export CFLAGS="$CFLAGS -Os -march=native" export CFLAGS="$CFLAGS -Os"
meson --buildtype=release --prefix=/usr -Db_lto=true ../.. meson --buildtype=release --prefix=/usr -Db_lto=true ../..
ninja ninja
ninja test ninja test
@ -164,7 +160,7 @@ ninja install
To do a regular, non-PGO build optimized for performance: To do a regular, non-PGO build optimized for performance:
```sh ```sh
export CFLAGS="$CFLAGS -O3 -march=native" export CFLAGS="$CFLAGS -O3"
meson --buildtype=release --prefix=/usr -Db_lto=true ../.. meson --buildtype=release --prefix=/usr -Db_lto=true ../..
ninja ninja
ninja test ninja test
@ -180,7 +176,7 @@ slower!) binary.
First, configure the build directory: First, configure the build directory:
```sh ```sh
export CFLAGS="$CFLAGS -O3 -march=native -Wno-missing-profile" export CFLAGS="$CFLAGS -O3 -Wno-missing-profile"
meson --buildtype=release --prefix=/usr -Db_lto=true ../.. meson --buildtype=release --prefix=/usr -Db_lto=true ../..
``` ```
@ -190,7 +186,7 @@ later have a regression where PGO with `-O2` is **much** slower.
If you are using Clang instead of GCC, use the following `CFLAGS` instead: If you are using Clang instead of GCC, use the following `CFLAGS` instead:
```sh ```sh
export CFLAGS="$CFLAGS -O3 -march=native \ export CFLAGS="$CFLAGS -O3 \
-Wno-ignored-optimization-argument \ -Wno-ignored-optimization-argument \
-Wno-profile-instr-out-of-date \ -Wno-profile-instr-out-of-date \
-Wno-profile-instr-unprofiled" -Wno-profile-instr-unprofiled"