Some operating systems, like NetBSD, don't have a separate library for
dlopen(3). They have dl* functions in their libc.
Signed-off-by: Masatake Daimon <pho@NetBSD.org>
mold does not have to be built with clang/clang++, so don't use
these compiler frontends.
mold also doesn't have be built with g++ (GNU C++ compiler).
We use `c++` command instead.
Fixes https://github.com/rui314/mold/issues/261
Let Makefile know how to locate openssl header files in a directory other than
the default directories by using pkg-config. If you don't have pkg-config, then
$(shell) returns empty.
Signed-off-by: Hiroshi Takekawa <sian.ht@gmail.com>
Let Makefile know how to link libcrypto in a directory other than the default
directories by using pkg-config. If you don't have pkg-config, then $(shell)
returns empty.
Signed-off-by: Hiroshi Takekawa <sian.ht@gmail.com>
This is an attempt to speed up version script application.
It looks like RE2 is faster than libstdc++'s std::regex.
This change reduces libQt6Gui.so.6.3.0's link time by about 30%.
https://github.com/rui314/mold/issues/156
In some environment, XXH3 isn't available as a binary package.
If you do not like to use the imported xxhash library but instead
link to system's libxxhash.so, invoke make with `SYSTEM_XXHASH=1`.
These test files are not only invoked by make by also directly by hand.
Unsetting `LANG` on each file so that they don't fail in a non-English
environment.
This change is mechanically created by the following command:
sed -i '1 a export LANG=' test/*/*.sh
If the tests are executed in a different locale like French, some logs (ex: ```out/test/elf/auxiliary/log```) can contain output like:
```La section dynamique à l'offset 0x2000 contient 10 entrées :```
which of course doesn't work as the grep is
```
fgrep -q 'Auxiliary library: [foo]' $t/log
```
Signed-off-by: Sylvestre Ledru <sylvestre@debian.org>
* add missing -lrt flag to Makefile
vis #140
* update where -lrt is added to Makefile
* add -lrt in Makefile to appropriate line
Signed-off-by: Miguel Raz Guzmán Macedo <miguelraz@gmail.com>
Negligible saving and downstream, distributions usually recompress or
compress with their own specific options. Unconditionally compressing
man pages, while well intended, usually creates more hassle there.
Signed-off-by: Sam James <sam@gentoo.org>
- Respect user CXXFLAGS
- Rename CPPFLAGS (previously used in the sense of "flags for the C++ compiler") -> CXXFLAGS
- CPPFLAGS is generally used for "flags for the C(++) preprocessor.", so let's
use it for that
- Respect user LDFLAGS
(In one instance, we were respecting LDFLAGS, but doing it too late.
We need to pass LDFLAGS _before_ any objects in order for -Wl,--as-needed
to work correctly.)
Signed-off-by: Sam James <sam@gentoo.org>
Some packaging systems want to handle the stripping by themselves.
Setting e.g. STRIP=true will result in true being used instead of strip
and thus will skip the stripping part, leaving it to the package manager
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>