From: Kevin Day Date: Mon, 12 Jan 2026 03:21:24 +0000 (-0600) Subject: Update: Avoid object name conflicts in static builds of unit tests. X-Git-Url: https://www.git.kevux.org/?a=commitdiff_plain;h=87d065e9990c503d8d4241900debc2beb64c0a61;p=kevux-tools Update: Avoid object name conflicts in static builds of unit tests. The unit tests cannot be built at the moment due to the inability to use dynamic linker wrapping feature to perform mocks. However, the rest of the linking process still should work. The `remove.o` gets created at the top level of the static build settings for two different build paths: `main/remove.c` and `remove/remove.c`. Restructure the build settings to result in using paths that do not conflict. I suspect that I should add a feature in the Featureless Make build settings that allows for specifying an organizing directory. --- diff --git a/data/build/remove/settings-mocks.remove b/data/build/remove/settings-mocks.remove index a3ce359..d768b68 100644 --- a/data/build/remove/settings-mocks.remove +++ b/data/build/remove/settings-mocks.remove @@ -45,7 +45,7 @@ build_sources_library ../../../../../../../tests/unit/remove/c/mock-remove.c build_sources_headers remove.h main.h string.h -build_objects_library common.o common/define.o common/enumeration.o common/string.o common/type.o convert.o operate.o preprocess.o print/debug.o print/error.o print/message.o print/simulate.o print/verbose.o print/warning.o remove.o signal.o thread.o +build_objects_library main/common.o main/common/define.o main/common/enumeration.o main/common/string.o main/common/type.o main/convert.o main/operate.o main/preprocess.o main/print/debug.o main/print/error.o main/print/message.o main/print/simulate.o main/print/verbose.o main/print/warning.o main/remove.o main/signal.o main/thread.o build_script no build_shared yes diff --git a/data/build/remove/settings-objects b/data/build/remove/settings-objects index 16f9a91..85b4578 100644 --- a/data/build/remove/settings-objects +++ b/data/build/remove/settings-objects @@ -38,9 +38,9 @@ build_indexer ar build_indexer_arguments rcs build_language c -build_sources_object common.c common/define.c common/enumeration.c common/string.c common/type.c convert.c operate.c preprocess.c print/debug.c print/error.c print/message.c print/simulate.c print/verbose.c print/warning.c remove.c signal.c thread.c +build_sources_object main/common.c main/common/define.c main/common/enumeration.c main/common/string.c main/common/type.c main/convert.c main/operate.c main/preprocess.c main/print/debug.c main/print/error.c main/print/message.c main/print/simulate.c main/print/verbose.c main/print/warning.c main/remove.c main/signal.c main/thread.c -build_sources_headers common.h common/define.h common/enumeration.h common/string.h common/type.h convert.h operate.h preprocess.h print/debug.h print/error.h print/message.h print/simulate.h print/verbose.h print/warning.h remove.h signal.h thread.h +build_sources_headers main/common.h main/common/define.h main/common/enumeration.h main/common/string.h main/common/type.h main/convert.h main/operate.h main/preprocess.h main/print/debug.h main/print/error.h main/print/message.h main/print/simulate.h main/print/verbose.h main/print/warning.h main/remove.h main/signal.h main/thread.h build_sources_documentation man @@ -48,8 +48,8 @@ build_script yes build_shared yes build_static no -path_headers program/kevux/tools/remove/main -path_sources sources/c/program/kevux/tools/remove/main +path_headers program/kevux/tools/remove +path_sources sources/c/program/kevux/tools/remove has_path_standard no preserve_path_headers yes