diff options
| author | Sébastien Marie <semarie@users.noreply.github.com> | 2015-09-18 23:02:05 +0200 |
|---|---|---|
| committer | Sébastien Marie <semarie@users.noreply.github.com> | 2015-09-20 19:06:37 +0200 |
| commit | 049d76bdd2ac7b3e65dc70b91e3b1e95e1a12d43 (patch) | |
| tree | fde231002932568b1c6dc4d9b089639aedbab686 | |
| parent | 25aaeb40b11a5983ed6000a8e466c08a701dfb99 (diff) | |
| download | rust-049d76bdd2ac7b3e65dc70b91e3b1e95e1a12d43.tar.gz rust-049d76bdd2ac7b3e65dc70b91e3b1e95e1a12d43.zip | |
Pass libstdc++.so path to linker under OpenBSD
By default, the linker in use under OpenBSD is the linker of base, which don't include /usr/local/lib where libstdc++ of gcc-4.9 lives. We need to add this directory to linker-path-search (using -L). Search the path of libstdc++.a, which is a known name (libstdc++.so has SO_VERSION) in the same directory.
| -rw-r--r-- | mk/platform.mk | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mk/platform.mk b/mk/platform.mk index fcb6a5b50d3..856a22dc606 100644 --- a/mk/platform.mk +++ b/mk/platform.mk @@ -208,6 +208,14 @@ define CFG_MAKE_TOOLCHAIN ifeq ($$(findstring $(HOST_$(1)),arm aarch64 mips mipsel powerpc),) + # On OpenBSD, we need to pass the path of libstdc++.so to the linker + # (use path of libstdc++.a which is a known name for the same path) + ifeq ($(OSTYPE_$(1)),unknown-openbsd) + RUSTC_FLAGS_$(1)=-L "$$(dir $$(shell $$(CC_$(1)) $$(CFG_GCCISH_CFLAGS_$(1)) \ + -print-file-name=lib$(CFG_STDCPP_NAME).a))" \ + $(RUSTC_FLAGS_$(1)) + endif + # On Bitrig, we need the relocation model to be PIC for everything ifeq (,$(filter $(OSTYPE_$(1)),bitrig)) LLVM_MC_RELOCATION_MODEL="pic" |
