aboutsummaryrefslogtreecommitdiff
path: root/sys/libmath/rules.mk
diff options
context:
space:
mode:
authorNicholas Noll <nbnoll@eml.cc>2020-04-30 11:55:00 -0700
committerNicholas Noll <nbnoll@eml.cc>2020-04-30 11:55:00 -0700
commit3c32ffdc8e3552aa58bbb8cdf7757ae808ec7eb6 (patch)
tree59a24e1b73b8927f992306e2a4568982dbef856b /sys/libmath/rules.mk
parent9e83bf8c3656b736ba3a14d9b7b8af61b48415f4 (diff)
explore: testing out simple vectorized math library
Diffstat (limited to 'sys/libmath/rules.mk')
-rw-r--r--sys/libmath/rules.mk42
1 files changed, 42 insertions, 0 deletions
diff --git a/sys/libmath/rules.mk b/sys/libmath/rules.mk
new file mode 100644
index 0000000..3bf8132
--- /dev/null
+++ b/sys/libmath/rules.mk
@@ -0,0 +1,42 @@
+# ---- Push on stack ----
+SP := $(SP).x
+DIRSTACK_$(SP) := $(d)
+d := $(DIR)
+
+# Iterate through subdirectory tree
+
+# 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) :=
+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))
+ $(ARCHIVE)
+
+$(BINS_$(d)): TCLIBS := -lpthread -lm
+$(BINS_$(d)): $(OBJS_$(d)) $(OBJ_DIR)/libn/libn.a $(LIB_DIR)/vendor/libblas.a
+ $(LINK)
+
+# ---- Pop off stack ----
+-include $(DEPS_$(d))
+
+d := $(DIRSTACK_$(SP))
+SP := $(basename $(SP))