diff --git a/.gitignore b/.gitignore index 4ecc081..e0bddba 100644 --- a/.gitignore +++ b/.gitignore @@ -78,3 +78,4 @@ venv/ .project .tags* targets/*/docs/ +main diff --git a/Makefile b/Makefile index 296a268..c01b08f 100644 --- a/Makefile +++ b/Makefile @@ -16,9 +16,14 @@ src = $(wildcard pc/*.c) $(wildcard fido2/*.c) $(wildcard crypto/sha256/*.c) cry obj = $(src:.c=.o) uECC.o LIBCBOR = tinycbor/lib/libtinycbor.a -LDFLAGS = -Wl,--gc-sections $(LIBCBOR) -CFLAGS = -O2 -fdata-sections -ffunction-sections -CFLAGS += -Wall -Werror + +ifeq ($(shell uname -s),Darwin) + export LDFLAGS = -Wl,-dead_strip +else + export LDFLAGS = -Wl,--gc-sections +endif +LDFLAGS += $(LIBCBOR) +CFLAGS = -O2 -fdata-sections -ffunction-sections INCLUDES = -I./tinycbor/src -I./crypto/sha256 -I./crypto/micro-ecc/ -Icrypto/tiny-AES-c/ -I./fido2/ -I./pc -I./fido2/extensions diff --git a/README.md b/README.md index 1fdcdeb..2465d31 100644 --- a/README.md +++ b/README.md @@ -53,8 +53,11 @@ Clone solo and build it ```bash git clone --recurse-submodules https://github.com/SoloKeysSec/solo cd solo/ -make all +git submodules init +git submodules update + +make all ``` This builds our FIDO 2.0 and the U2F authenticator, as well as making a virtualenv in venv/