1
1
SUBMODULES = \
2
- external/libsodium \
3
2
external/libwally-core \
4
3
external/gheap \
5
4
external/jsmn \
13
12
TARGET_DIR := external/build-$(shell ${CC} -dumpmachine)
14
13
endif
15
14
16
- LIBSODIUM_HEADERS := external/libsodium/src/libsodium/include/sodium.h
17
15
LIBWALLY_HEADERS := external/libwally-core/include/wally_bip32.h \
18
16
external/libwally-core/include/wally_core.h \
19
17
external/libwally-core/include/wally_psbt.h \
@@ -25,7 +23,7 @@ JSMN_HEADERS := external/jsmn/jsmn.h
25
23
GHEAP_HEADERS := external/gheap/gheap.h
26
24
LIBBACKTRACE_HEADERS := external/libbacktrace/backtrace.h
27
25
28
- EXTERNAL_HEADERS := $(LIBSODIUM_HEADERS ) $( LIBWALLY_HEADERS ) $(LIBSECP_HEADERS ) $(JSMN_HEADERS ) $(GHEAP_HEADERS ) $(LIBBACKTRACE_HEADERS )
26
+ EXTERNAL_HEADERS := $(LIBWALLY_HEADERS ) $(LIBSECP_HEADERS ) $(JSMN_HEADERS ) $(GHEAP_HEADERS ) $(LIBBACKTRACE_HEADERS )
29
27
EXTERNAL_LIBS := ${TARGET_DIR}/libwallycore.a ${TARGET_DIR}/libsecp256k1.a ${TARGET_DIR}/libjsmn.a ${TARGET_DIR}/libbacktrace.a
30
28
31
29
EXTERNAL_INCLUDE_FLAGS := \
@@ -36,14 +34,7 @@ EXTERNAL_INCLUDE_FLAGS := \
36
34
-I external/gheap/ \
37
35
-I ${TARGET_DIR}/libbacktrace-build
38
36
39
- ifneq ($(HAVE_GOOD_LIBSODIUM ) ,1)
40
- EXTERNAL_INCLUDE_FLAGS += -I external/libsodium/src/libsodium/include \
41
- -I external/libsodium/src/libsodium/include/sodium \
42
- -I $(TARGET_DIR ) /libsodium-build/src/libsodium/include
43
- EXTERNAL_LIBS += ${TARGET_DIR}/libsodium.a
44
- else
45
37
LDLIBS += $(SODIUM_LDLIBS )
46
- endif
47
38
48
39
ifeq ($(HAVE_ZLIB ) ,1)
49
40
LDLIBS += -lz
59
50
60
51
$(EXTERNAL_HEADERS ) : submodcheck
61
52
62
- # We build libsodium, since Ubuntu xenial has one too old.
63
- $(TARGET_DIR ) /libsodium.a : $(TARGET_DIR ) /libsodium-build/src/libsodium/libsodium.la
64
- $(MAKE ) -C $(TARGET_DIR ) /libsodium-build DESTDIR=$$(pwd ) /$(TARGET_DIR ) install-exec
65
-
66
- $(TARGET_DIR ) /libsodium-build/src/libsodium/libsodium.la : external/libsodium/src/libsodium/include/sodium.h
67
- cd external/libsodium && ./autogen.sh
68
- mkdir -p ${TARGET_DIR} /libsodium-build
69
- cd $(TARGET_DIR ) /libsodium-build && $(TOP ) /libsodium/configure CC=" $( CC) " CFLAGS=" $( FUZZFLAGS) " LDFLAGS=" $( FUZZFLAGS) " --enable-static=yes $(CROSSCOMPILE_OPTS ) --enable-shared=no --prefix=/ --libdir=/ && $(MAKE )
70
-
71
53
# libsecp included in libwally.
72
54
# Wildcards here are magic. See http://stackoverflow.com/questions/2973445/gnu-makefile-rule-generating-a-few-targets-from-a-single-source-file
73
55
$(TARGET_DIR ) /libsecp256k1.% $(TARGET_DIR ) /libwallycore.% : $(TARGET_DIR ) /libwally-core-build/src/secp256k1/libsecp256k1.la $(TARGET_DIR ) /libwally-core-build/src/libwallycore.la
@@ -117,6 +99,5 @@ external-clean:
117
99
$(RM ) -rf $(TARGET_DIR )
118
100
119
101
external-distclean :
120
- make -C external/libsodium distclean || true
121
102
$(RM ) -rf ${TARGET_DIR} /libbacktrace-build ${TARGET_DIR} /libsodium-build ${TARGET_DIR} /libwally-core-build ${TARGET_DIR} /jsmn-build
122
103
$(RM ) -r ` git status --ignored --porcelain external/libwally-core | grep ' ^!! ' | cut -c3-`
0 commit comments