aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-05-02 22:50:18 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-05-02 22:50:18 -0400
commite476799ab7d0e26256ac9be25888e963dc0928a0 (patch)
tree75ad3ade720e57d74c984a19bfdb1ff05aeee75a
parentaa6992613087f227df8f823e8ee41761c386840e (diff)
Move coroutines into examples folder due to compatibility issues on some
platforms/compilers
-rw-r--r--.gitignore2
-rw-r--r--Makefile7
-rw-r--r--examples/README.md1
-rw-r--r--examples/coroutines/ACO_LICENSE (renamed from lib/coroutines/ACO_LICENSE)0
-rw-r--r--examples/coroutines/README.md (renamed from lib/coroutines/README.md)0
-rw-r--r--examples/coroutines/aco.c (renamed from lib/coroutines/aco.c)0
-rw-r--r--examples/coroutines/aco.h (renamed from lib/coroutines/aco.h)0
-rw-r--r--examples/coroutines/acoyield.S (renamed from lib/coroutines/acoyield.S)0
-rw-r--r--examples/coroutines/coroutines.tm (renamed from lib/coroutines/coroutines.tm)0
9 files changed, 4 insertions, 6 deletions
diff --git a/.gitignore b/.gitignore
index af51e4c9..51eada1e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,6 +3,7 @@
!/examples/*.*
!/examples/*/*.*
/examples/*/*.so
+/examples/*/*.a
/examples/*/*.h
!/examples/!(*)/*.h
@@ -10,6 +11,7 @@
!/lib/*.*
!/lib/*/*.*
/lib/*/*.so
+/lib/*/*.a
/lib/*/*.h
!/lib/!(*)/*.h
diff --git a/Makefile b/Makefile
index 2464cce6..ac9c6c50 100644
--- a/Makefile
+++ b/Makefile
@@ -197,12 +197,7 @@ install-files: build/bin/tomo build/lib/$(LIB_FILE) build/lib/$(AR_FILE) check-u
$(SUDO) -u "$(OWNER)" cp man/man3/* "$(PREFIX)/man/man3/"
install-libs: build/bin/tomo check-utilities
- # Coroutines don't work with TCC for now
- if $(DEFAULT_C_COMPILER) --version | grep -q 'tcc version' || [ $$(uname -m) = "arm64" ]; then \
- ./local-tomo -qIL lib/patterns lib/time lib/commands lib/shell lib/random lib/base64 lib/pthreads lib/uuid lib/core; \
- else \
- ./local-tomo -qIL lib/patterns lib/time lib/commands lib/shell lib/random lib/base64 lib/coroutines lib/pthreads lib/uuid lib/core; \
- fi
+ ./local-tomo -qIL lib/patterns lib/time lib/commands lib/shell lib/random lib/base64 lib/pthreads lib/uuid lib/core; \
install: install-files install-libs
diff --git a/examples/README.md b/examples/README.md
index 38dc974b..2b5f81fa 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -17,6 +17,7 @@ This folder contains some example programs and libraries.
Libraries can be installed with `tomo -IL ./library-folder`
- [colorful](colorful/): A DSL useful for rendering terminal colors.
+- [coroutines](coroutines/): A library for stackful coroutines similar to Lua's. (Note: only works on x86_64)
- [http](http/): An HTTP library to make basic synchronous HTTP requests.
- [ini](ini/): An INI configuration file reader tool.
- [log](log/): A logging utility.
diff --git a/lib/coroutines/ACO_LICENSE b/examples/coroutines/ACO_LICENSE
index ef4f82f0..ef4f82f0 100644
--- a/lib/coroutines/ACO_LICENSE
+++ b/examples/coroutines/ACO_LICENSE
diff --git a/lib/coroutines/README.md b/examples/coroutines/README.md
index eef923e0..eef923e0 100644
--- a/lib/coroutines/README.md
+++ b/examples/coroutines/README.md
diff --git a/lib/coroutines/aco.c b/examples/coroutines/aco.c
index 3226468b..3226468b 100644
--- a/lib/coroutines/aco.c
+++ b/examples/coroutines/aco.c
diff --git a/lib/coroutines/aco.h b/examples/coroutines/aco.h
index 80d5542b..80d5542b 100644
--- a/lib/coroutines/aco.h
+++ b/examples/coroutines/aco.h
diff --git a/lib/coroutines/acoyield.S b/examples/coroutines/acoyield.S
index 7bc87ff1..7bc87ff1 100644
--- a/lib/coroutines/acoyield.S
+++ b/examples/coroutines/acoyield.S
diff --git a/lib/coroutines/coroutines.tm b/examples/coroutines/coroutines.tm
index b530a685..b530a685 100644
--- a/lib/coroutines/coroutines.tm
+++ b/examples/coroutines/coroutines.tm