diff options
author | Andrew Dunham <andrew@du.nham.ca> | 2018-04-22T04·10-0700 |
---|---|---|
committer | Andrew Dunham <andrew@du.nham.ca> | 2018-04-22T04·10-0700 |
commit | 3a918014b248a41fe6307228d258b6113e84138b (patch) | |
tree | 67da83bb97db1741da4afcbe9cb1322a7d3fdebf | |
parent | 040acdcee2fcf5647896ba12316b4f9184275a70 (diff) |
Fix library ordering in Makefiles
The existing ordering linked `libutil` before `libstore`, which causes link failures when building statically. This is due to `libstore` using functions from `libutil`, and the fact that symbol resolution works "forward" - i.e. if you pass `-lfoo -lbar -lbaz`, any symbols that `libbar` uses from `libbaz` will be resolved, but symbols from `libfoo` will not since it comes first in the command line. All this to say: this commit reorders the libraries which fixes the link errors.
-rw-r--r-- | src/build-remote/local.mk | 2 | ||||
-rw-r--r-- | src/nix-channel/local.mk | 2 | ||||
-rw-r--r-- | src/nix-copy-closure/local.mk | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/src/build-remote/local.mk b/src/build-remote/local.mk index 64368a43ff73..50b0409d1886 100644 --- a/src/build-remote/local.mk +++ b/src/build-remote/local.mk @@ -4,6 +4,6 @@ build-remote_DIR := $(d) build-remote_INSTALL_DIR := $(libexecdir)/nix -build-remote_LIBS = libmain libutil libformat libstore +build-remote_LIBS = libmain libformat libstore libutil build-remote_SOURCES := $(d)/build-remote.cc diff --git a/src/nix-channel/local.mk b/src/nix-channel/local.mk index 49fc105c6f79..c14e8c359ca0 100644 --- a/src/nix-channel/local.mk +++ b/src/nix-channel/local.mk @@ -2,6 +2,6 @@ programs += nix-channel nix-channel_DIR := $(d) -nix-channel_LIBS = libmain libutil libformat libstore +nix-channel_LIBS = libmain libformat libstore libutil nix-channel_SOURCES := $(d)/nix-channel.cc diff --git a/src/nix-copy-closure/local.mk b/src/nix-copy-closure/local.mk index 42bb34dd8201..5018ab975b44 100644 --- a/src/nix-copy-closure/local.mk +++ b/src/nix-copy-closure/local.mk @@ -2,6 +2,6 @@ programs += nix-copy-closure nix-copy-closure_DIR := $(d) -nix-copy-closure_LIBS = libmain libutil libformat libstore +nix-copy-closure_LIBS = libmain libformat libstore libutil nix-copy-closure_SOURCES := $(d)/nix-copy-closure.cc |