aboutsummaryrefslogtreecommitdiff
path: root/sys/libbio/rules.mk
diff options
context:
space:
mode:
authorNicholas Noll <nbnoll@eml.cc>2020-04-21 19:19:05 -0700
committerNicholas Noll <nbnoll@eml.cc>2020-04-21 19:19:05 -0700
commit583656a3537bc43a28c58111520143df04bf27f2 (patch)
tree8e75d98cea3d6af1d1b85d5c5b5e22ac5e0c4cde /sys/libbio/rules.mk
parente596ebd0c129913b7135210b23a50336b6f8556f (diff)
feat: added skeleton of biological library
Diffstat (limited to 'sys/libbio/rules.mk')
-rw-r--r--sys/libbio/rules.mk43
1 files changed, 43 insertions, 0 deletions
diff --git a/sys/libbio/rules.mk b/sys/libbio/rules.mk
new file mode 100644
index 0000000..fd3e066
--- /dev/null
+++ b/sys/libbio/rules.mk
@@ -0,0 +1,43 @@
+# ---- Push on stack ----
+SP := $(SP).x
+DIRSTACK_$(SP) := $(d)
+d := $(DIR)
+
+# Iterate through subdirectory tree
+DIR := $(d)/io
+include $(DIR)/rules.mk
+
+# Local sources
+SRCS_$(d) := $(wildcard $(d)/*.c)
+OBJS_$(d) := $(SRCS_$(d):.c=.o)
+OBJS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(OBJS_$(d)))
+DEPS_$(d) := $(OBJS_$(d):.o=.d)
+
+OBJS := $(OBJS) $(OBJS_$(d))
+DEPS := $(DEPS) $(DEPS_$(d))
+
+# Local targets
+LIBS_$(d) := $(d)/libbio.a
+LIBS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(LIBS_$(d)))
+LIBS := $(LIBS) $(LIBS_$(d))
+
+BINS_$(d) := $(d)/test
+BINS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(BINS_$(d)))
+BINS := $(BINS) $(BINS_$(d))
+
+# Local rules
+# $(LIBS_$(d)) = TCFLAGS :=
+# $(LIBS_$(d)) = TCINCS :=
+# $(LIBS_$(d)) = TCLIBS :=
+
+$(LIBS_$(d)): $(OBJS_$(d)) $(OBJS_$(d)/io)
+ $(ARCHIVE)
+
+$(BINS_$(d)): $(LIBS_$(d)) $(OBJ_DIR)/libn/libn.a
+ $(LINK)
+
+# ---- Pop off stack ----
+-include $(DEPS_$(d))
+
+d := $(DIRSTACK_$(SP))
+SP := $(basename $(SP))