diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2025-12-25 13:08:29 -0500 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2025-12-25 13:08:29 -0500 |
| commit | c3820ac5ac4fd1d67d8b0580c3af621474ce4be2 (patch) | |
| tree | 90490a551257eed8e7721384e9924544d630c155 | |
| parent | cb336b312e7012dc05fe7d8ac1c0e924dbc6c840 (diff) | |
Build libtomo.a using files from gc/gmp/unistring and statically link
executables against that
| -rw-r--r-- | Makefile | 13 | ||||
| -rw-r--r-- | src/tomo.c | 3 |
2 files changed, 11 insertions, 5 deletions
@@ -139,8 +139,13 @@ $(BUILD_DIR)/bin/$(EXE_FILE): $(STDLIB_OBJS) $(COMPILER_OBJS) | $(BUILD_DIR)/bin @$(ECHO) $(CC) $(CFLAGS_PLACEHOLDER) $(LDFLAGS) $^ $(LDLIBS) -o $@ @$(CC) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ -$(BUILD_DIR)/lib/$(AR_FILE): $(STDLIB_OBJS) | $(BUILD_DIR)/lib - ar -rcs $@ $^ +$(BUILD_DIR)/lib/$(AR_FILE): $(STDLIB_OBJS) build/gc/lib/libgc.a build/unistring/lib/libunistring.a build/gmp/lib/libgmp.a | $(BUILD_DIR)/lib + mkdir -p tmp; \ + cd tmp; \ + ar -x ../build/gc/lib/libgc.a; \ + ar -x ../build/unistring/lib/libunistring.a; \ + ar -x ../build/gmp/lib/libgmp.a; \ + ar -rcs ../$@ $(addprefix ../,$(STDLIB_OBJS)) *.o $(BUILD_DIR)/lib/tomo@$(TOMO_VERSION)/modules.ini: modules/core.ini modules/examples.ini | $(BUILD_DIR)/lib/tomo@$(TOMO_VERSION) @cat $^ > $@ @@ -222,7 +227,9 @@ examples: core-libs: ./local-tomo -L modules/core.ini -deps: +deps: build/gc/lib/libgc.a build/unistring/lib/libgc.a build/gmp/lib/libgmp.a + +build/gc/lib/libgc.a build/unistring/lib/libgc.a build/gmp/lib/libgmp.a: $(MAKE) -C vendor check-utilities: check-c-compiler @@ -86,8 +86,7 @@ static OptionalText_t show_codegen = NONE_TEXT, " -D_BSD_SOURCE" #endif " -DGC_THREADS"), - ldlibs = Text("-lgc -lm -lgmp -lunistring"), ldflags = Text(""), optimization = Text("2"), - cc = Text(DEFAULT_C_COMPILER); + ldlibs = Text("-lm"), ldflags = Text(""), optimization = Text("2"), cc = Text(DEFAULT_C_COMPILER); static Text_t config_summary, // This will be either "" or "sudo -u <user>" or "doas -u <user>" |
