Rui Ueyama
e855b90344
Show stacktrace on SEGV and assertion failure
2021-07-09 23:34:39 +09:00
Rui Ueyama
accf96877f
Add a stub for AArch64
...
It can generate an executable, but generated executable won't run
correctly because we don't process relocations at all yet.
2021-07-03 21:39:44 +09:00
Rui Ueyama
d502b6ec60
Initial AARCH64 support
2021-07-03 20:48:38 +09:00
Rui Ueyama
6935272033
Create $PREFIX/bin if not exists
2021-07-03 15:07:26 +09:00
Rui Ueyama
4c4bfca20e
Make make clean
to remove artifacts of vendored repos
2021-07-03 14:29:01 +09:00
Nehal J Wani
9c541ad461
[oneTBB] build only required target(s)
...
The 'all' target builds tbbmalloc and tbbmalloc_proxy
which mold does not care about.
Signed-off-by: Nehal J Wani <nehaljw.kkd1@gmail.com>
2021-07-02 12:38:26 -04:00
Rui Ueyama
3e3d58b6f1
Static-link oneTBB by default
...
oneTBB API is changing rapidly, so even if a oneTBB is installed
into a system already, it is likely that that is not a compatible
version with mold. This makes program building unnecessarily hard.
This change intends to solve the problem once and for all by
including oneTBB as a subdirectory and static-link against it at
build-time.
oneTBB is released under the Apache License 2.0, which is compatible
with AGPL. Therefore, we can still distribute the binary of mold
under AGPL.
If you do not want to static-link oneTBB, pass `SYSTEM_TBB=1`
to `make`.
This change also ports mold from oneTBB v2020.3 to v2021.3.0.
Fixes https://github.com/rui314/mold/issues/66
2021-07-03 00:08:33 +09:00
Artur Sinila
5c846496a2
Makefile: add $(DESTDIR) to strip
2021-07-01 13:05:43 +03:00
Rui Ueyama
18156f3965
Do not set a variable instead of undefine it later
2021-07-01 10:38:30 +09:00
Artur Sinila
da619e8615
Various fixes in Makefile
...
Signed-off-by: Artur Sinila <freesoftware@logarithmus.dev>
2021-06-30 20:53:49 +03:00
Rui Ueyama
a89df30537
Merge pull request #57 from nehaljwani/mimalloc-static-only
...
[mimalloc] build only required target(s)
2021-06-30 08:18:32 +09:00
Rui Ueyama
9a09c777d9
Bump mold version to 0.9.1
2021-06-30 08:11:15 +09:00
Nehal J Wani
a1073e69b0
[mimalloc] build only required target(s)
...
The 'all' target builds the shared library as well as test binaries
which mold doesn't care about
Signed-off-by: Nehal J Wani <nehaljw.kkd1@gmail.com>
2021-06-29 16:34:46 -04:00
Rui Ueyama
4717afacf3
Add mimalloc as a git subtree instead of a submodule
2021-06-27 17:01:59 +09:00
Rui Ueyama
b21ade127c
Simplify
2021-06-20 00:51:38 +09:00
Rui Ueyama
9cc309af75
Implement --relocatable
...
Fixes https://github.com/rui314/mold/issues/46
2021-06-11 21:57:43 +09:00
Rui Ueyama
3102ab867c
Refactor
2021-06-11 02:12:19 +09:00
Rui Ueyama
cce738c9d5
Add mimalloc as a git submodule
...
This change adds mimalloc as a git submodule so that `make` doesn't
try to clone mimalloc repo. This change should allow building mold
with the nix package manager, which doesn't provide network access
while building.
This change may conflict with a local `mimalloc` directory. If you
already have checked out mold and `mimalloc` directory exists in the
mold directory, you may need to remove it by `rm -r mimalloc` before
running `make`.
Requested by David Yamnitsky.
Fixes https://github.com/rui314/mold/issues/50
2021-06-10 13:20:43 +09:00
Rui Ueyama
8219fdd688
Simplify input file priority
...
This change is required to build Gentoo's net-libs/libtorrent-0.13.8-r1
package with FEATURES=test, e.g.
$ FEATURES=test emerge net-libs/libtorrent
2021-05-31 17:09:40 +09:00
Rui Ueyama
3cfbc0d66c
Parallelize tests
2021-05-29 16:05:38 +09:00
Rui Ueyama
ec6e873329
Clean a temporary directory before running tests
2021-05-23 18:23:27 +09:00
Rui Ueyama
d279da3435
Enable -Wswitch
2021-05-21 16:06:47 +09:00
Rui Ueyama
17c191ccf2
Bump a verison number
2021-05-21 13:58:59 +09:00
Rui Ueyama
2e73024e18
Do not assume that the main directory is a git checkout
2021-05-21 13:58:59 +09:00
Rui Ueyama
ef0ebc0e93
Accept "tests" and "check" as aliases for "test"
2021-05-21 12:48:52 +09:00
Rui Ueyama
eb78d185f1
Automatically check out mimalloc repo
2021-05-21 09:25:42 +09:00
Rui Ueyama
ebe37ef642
Include a version number to the --version message
2021-05-18 21:55:10 +09:00
Rui Ueyama
0f6c9ca2b8
Fix a compiler warning
2021-05-18 20:16:12 +09:00
Rui Ueyama
0cdac81166
Remove debug info from installed binaries
2021-05-18 20:11:35 +09:00
Rui Ueyama
30eb2b74c8
Remove runtime dependency to libxxhash.so
2021-05-18 19:29:15 +09:00
Rui Ueyama
effadb0296
Update build procedure
2021-05-18 16:57:54 +09:00
Rui Ueyama
394805d67b
Make "make ASAN=1" work
2021-05-17 23:34:01 +09:00
Rui Ueyama
f49cc3e089
Add "make uninstall" rule
2021-05-17 22:56:58 +09:00
Rui Ueyama
de4d1eb67c
Allow mold to be installed to /usr/local instead of /usr
2021-05-17 21:47:51 +09:00
Rui Ueyama
346991c4f3
Ensure that a compressed man page does not exist
2021-05-17 21:09:07 +09:00
Rui Ueyama
8467684f97
Build mold as a static executable by default
2021-05-17 20:41:32 +09:00
Rui Ueyama
927882876c
Do not call "mandb -q"
2021-05-17 15:39:35 +09:00
Rui Ueyama
9af37c2fb2
Install mold-wrapper.so to /usr/lib/mold
2021-05-14 21:59:47 +09:00
Rui Ueyama
f7bb70d950
Add make install
rule
2021-05-14 20:41:21 +09:00
Rui Ueyama
d93ad61a60
Compress debug sections in parallel
2021-05-06 23:33:41 +09:00
Rui Ueyama
2bb0653afb
Remove -march=native to be on the safe side
2021-04-26 14:25:41 +09:00
Rui Ueyama
c16b792e14
wip
2021-04-17 21:14:41 +09:00
Rui Ueyama
209744e606
Add tar.cc
2021-04-09 01:44:26 +09:00
Rui Ueyama
b488948499
wip
2021-04-07 18:52:38 +09:00
Rui Ueyama
48ccc2adde
Make mold AddressSanitizer clean
2021-04-07 18:41:42 +09:00
Rui Ueyama
2e37f3c040
Add "make LTO=1" to enable LTO build
2021-04-05 22:51:15 +09:00
Rui Ueyama
a552711249
Make it possible to create a statically-linked mold
executable
2021-04-03 17:37:07 +09:00
Rui Ueyama
b55d68365a
wip
2021-04-01 00:52:10 +09:00
Rui Ueyama
3fcb758d1e
wip
2021-03-30 23:53:04 +09:00
Rui Ueyama
b19a4873a4
Split input_sections.cc
2021-03-30 22:55:58 +09:00