aboutsummaryrefslogtreecommitdiff
path: root/src/tomo.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-04-15 18:22:07 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-04-15 18:22:07 -0400
commit5846f9dd9c80cc1db52984323d445874c69fb766 (patch)
treead1f3f9fc08be89af931bd96f44c8f74fc7f8832 /src/tomo.c
parent6d68174bdd5bcd1a7e1a6161b578cd39eaf03bef (diff)
Change compilation configuration so Tomo is fully capable of running
locally from the build directory, including with TCC.
Diffstat (limited to 'src/tomo.c')
-rw-r--r--src/tomo.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/tomo.c b/src/tomo.c
index b6b8a03f..e8b5866d 100644
--- a/src/tomo.c
+++ b/src/tomo.c
@@ -68,7 +68,7 @@ static OptionalText_t
#endif
" -DGC_THREADS"
" -I'" TOMO_PREFIX "/include' -I'" TOMO_HOME "/installed' -I/usr/local/include"),
- ldlibs = Text("-lgc -lm -lgmp -lunistring '"TOMO_PREFIX"'/lib/libtomo.so"),
+ ldlibs = Text("-lgc -lm -lgmp -lunistring -ltomo"),
ldflags = Text("-Wl,-rpath,'"TOMO_PREFIX"/lib',-rpath,'" TOMO_HOME "/lib',-rpath,/usr/local/lib "
"-L'" TOMO_HOME "/lib' -L/usr/local/lib"),
optimization = Text("2"),
@@ -125,6 +125,16 @@ int main(int argc, char *argv[])
if (getenv("NO_COLOR") && getenv("NO_COLOR")[0] != '\0')
USE_COLOR = false;
+ // Set up environment variables:
+ const char *PATH = getenv("PATH");
+ setenv("PATH", PATH ? String(TOMO_PREFIX"/bin:", PATH) : TOMO_PREFIX"/bin", 1);
+ const char *LD_LIBRARY_PATH = getenv("LD_LIBRARY_PATH");
+ setenv("LD_LIBRARY_PATH", LD_LIBRARY_PATH ? String(TOMO_PREFIX"/lib:", LD_LIBRARY_PATH) : TOMO_PREFIX"/lib", 1);
+ const char *LIBRARY_PATH = getenv("LIBRARY_PATH");
+ setenv("LIBRARY_PATH", LIBRARY_PATH ? String(TOMO_PREFIX"/lib:", LIBRARY_PATH) : TOMO_PREFIX"/lib", 1);
+ const char *C_INCLUDE_PATH = getenv("C_INCLUDE_PATH");
+ setenv("C_INCLUDE_PATH", C_INCLUDE_PATH ? String(TOMO_PREFIX"/include:", C_INCLUDE_PATH) : TOMO_PREFIX"/include", 1);
+
// Run a tool:
if ((streq(argv[1], "-r") || streq(argv[1], "--run")) && argc >= 3) {
if (strcspn(argv[2], "/;$") == strlen(argv[2])) {