From fa5b9a9002b6c1f34d22d21813cc645e51f7fbd0 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Wed, 29 Jan 2020 21:35:18 +0100 Subject: [PATCH] Tup: create ld.lib.so libraries when in a Nix build --- repos/base-linux/src/lib/ld/Tupfile | 7 ++++++- repos/base-nova/src/lib/ld/Tupfile | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/repos/base-linux/src/lib/ld/Tupfile b/repos/base-linux/src/lib/ld/Tupfile index a205e4730..391d0344f 100644 --- a/repos/base-linux/src/lib/ld/Tupfile +++ b/repos/base-linux/src/lib/ld/Tupfile @@ -25,6 +25,11 @@ BASE_LIBS += $(REP_DIR)/src/lib/base/base-linux.lib.a PKG_LIBS = -L$(DEV_DIR)/lib `$(PKG_CONFIG) --libs alarm cxx ldso-startup timeout` +OUTPUT = ld-linux.lib.so +ifdef NIX_OUTPUTS_DEV +OUTPUT = ld.lib.so +endif + : $(BASE_LIBS) {obj} | \ symbol.map \ $(DEV_DIR)/ \ @@ -32,6 +37,6 @@ PKG_LIBS = -L$(DEV_DIR)/lib `$(PKG_CONFIG) --libs alarm cxx ldso-startup timeout $(REP_DIR)/ \ $(REP_DIR)/ \ $(REP_DIR)/ \ -|> $(LD) -o %o $(LD_MARCH) $(LDFLAGS) --whole-archive --start-group % % % %f $(PKG_LIBS) --end-group --no-whole-archive $(LIBGCC); printf "\x02" | dd of=%o bs=1 seek=16 count=1 conv=notrunc; |> ld-linux.lib.so $(REP_DIR)/ {bin} +|> $(LD) -o %o $(LD_MARCH) $(LDFLAGS) --whole-archive --start-group % % % %f $(PKG_LIBS) --end-group --no-whole-archive $(LIBGCC); printf "\x02" | dd of=%o bs=1 seek=16 count=1 conv=notrunc; |> $(OUTPUT) $(REP_DIR)/ {bin} : {bin} |> !collect_bin |> diff --git a/repos/base-nova/src/lib/ld/Tupfile b/repos/base-nova/src/lib/ld/Tupfile index 82992041c..3b0e00614 100644 --- a/repos/base-nova/src/lib/ld/Tupfile +++ b/repos/base-nova/src/lib/ld/Tupfile @@ -28,6 +28,11 @@ LDFLAGS += -T$(BASE_DIR)/src/ld/genode_rel.ld PKG_LIBS = -L$(DEV_DIR)/lib `$(PKG_CONFIG) --libs alarm cxx ldso-startup timeout` +OUTPUT = ld-nova.lib.so +ifdef NIX_OUTPUTS_DEV +OUTPUT = ld.lib.so +endif + : {obj} | \ $(DEV_DIR)/ \ $(DEV_DIR)/ \ @@ -36,6 +41,6 @@ PKG_LIBS = -L$(DEV_DIR)/lib `$(PKG_CONFIG) --libs alarm cxx ldso-startup timeout $(REP_DIR)/ \ symbol.map \ |> $(LD) -o %o $(LD_MARCH) $(LDFLAGS) --whole-archive --start-group $(PKG_LIBS) % % % %f --end-group --no-whole-archive $(LIBGCC) \ -|> ld-nova.lib.so $(REP_DIR)/ {lib} +|> $(OUTPUT) $(REP_DIR)/ {lib} : foreach {lib} |> !collect_shared |>