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 a9e0191..4c4f1b0 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,12 @@ 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) +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 5476d84..061a3e9 100644 --- a/README.md +++ b/README.md @@ -53,8 +53,11 @@ Clone solo and build it ```bash git clone 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/