aboutsummaryrefslogtreecommitdiff
path: root/sw/Makefile.i2c
diff options
context:
space:
mode:
Diffstat (limited to 'sw/Makefile.i2c')
-rwxr-xr-xsw/Makefile.i2c44
1 files changed, 44 insertions, 0 deletions
diff --git a/sw/Makefile.i2c b/sw/Makefile.i2c
new file mode 100755
index 0000000..fa136a4
--- /dev/null
+++ b/sw/Makefile.i2c
@@ -0,0 +1,44 @@
+CC = gcc
+CFLAGS = -Wall
+
+LIB = libcryptech_i2c.a
+BIN = hash_i2c hash_tester_i2c trng_extractor_i2c trng_tester_i2c
+INC = cryptech.h
+
+PREFIX = /usr/local
+LIB_DIR = $(PREFIX)/lib
+BIN_DIR = $(PREFIX)/bin
+INC_DIR = $(PREFIX)/include
+
+all: $(LIB) $(BIN)
+
+%.o: %.c $(INC)
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+libcryptech_i2c.a: tc_i2c.o
+ ar rcs $@ $^
+
+hash_tester_i2c: hash_tester.o $(LIB)
+ $(CC) -o $@ $^
+
+trng_tester_i2c: trng_tester.o $(LIB)
+ $(CC) -o $@ $^
+
+hash_i2c: hash.o $(LIB)
+ $(CC) -o $@ $^
+
+trng_extractor_i2c: trng_extractor.o $(LIB)
+ $(CC) -o $@ $^
+
+install: $(LIB) $(BIN) $(INC)
+ install $(LIB) $(LIB_DIR)
+ install $(BIN) $(BIN_DIR)
+ install $(INC) $(INC_DIR)
+
+uninstall:
+ rm -f $(LIB_DIR)/$(LIB)
+ rm -f $(foreach bin,$(BIN),$(BIN_DIR)/$(bin))
+ rm -f $(INC_DIR)/$(INC)
+
+clean:
+ rm -f *.o $(LIB) $(BIN)