1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
CC := @CC@
AR := @AR@
RANLIB := @RANLIB@
CFLAGS := @CFLAGS@ @SHOBJFLAGS@
CPPFLAGS := -I. -I@srcdir@ -I@srcdir@/tweetnacl/ -I@srcdir@/blake2b/ -DNACL_ED25519_BLAKE2B=1 @CPPFLAGS@ @SHOBJCPPFLAGS@ @DEFS@ @TCL_DEFS@
LDFLAGS := @LDFLAGS@
LIBS := @LIBS@
SHOBJLDFLAGS := @SHOBJLDFLAGS@
VPATH := @srcdir@
srcdir := @srcdir@
prefix := @prefix@
exec_prefix := @exec_prefix@
libdir := @libdir@
PACKAGE_VERSION := @PACKAGE_VERSION@
TCL_PACKAGE_PATH := @TCL_PACKAGE_PATH@
PACKAGE_INSTALL_DIR := $(TCL_PACKAGE_PATH)/tcl-nano$(PACKAGE_VERSION)
INSTALL := @INSTALL@
INSTALL_PROGRAM := @INSTALL_PROGRAM@
INSTALL_DATA := @INSTALL_DATA@
export CC CFLAGS CPPFLAGS
all: @EXTENSION_TARGET@ pkgIndex.tcl
ifeq (@TCLEXT_BUILD@,shared)
@EXTENSION_TARGET@: tweetnacl.o blake2b.o randombytes.o nano.o Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(SHOBJLDFLAGS) -o @EXTENSION_TARGET@ nano.o randombytes.o tweetnacl.o blake2b.o $(LIBS)
-@WEAKENSYMS@ @EXTENSION_TARGET@
-@REMOVESYMS@ @EXTENSION_TARGET@
else
@EXTENSION_TARGET@: nano-amalgamation.o Makefile
-@WEAKENSYMS@ nano-amalgamation.o
-@REMOVESYMS@ nano-amalgamation.o
$(AR) rc @EXTENSION_TARGET@ nano-amalgamation.o
-$(RANLIB) @EXTENSION_TARGET@
endif
# The amalgamation is used when compiling statically so that the same ABI can be exposed
# to upstream projects rather than requiring them to filter out our symbols
nano-amalgamation.c: @srcdir@/nano.c @srcdir@/randombytes.c @srcdir@/tweetnacl/tweetnacl.c @srcdir@/blake2b/blake2b.c Makefile
rm -f nano-amalgamation.c
cat @srcdir@/nano.c @srcdir@/randombytes.c @srcdir@/tweetnacl/tweetnacl.c @srcdir@/blake2b/blake2b.c > nano-amalgamation.c
nano-amalgamation.o: nano-amalgamation.c @srcdir@/tweetnacl/tweetnacl.h @srcdir@/blake2b/blake2.h @srcdir@/randombytes.h nano.tcl.h @srcdir@/blake2b/blake2-impl.h Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) -o nano-amalgamation.o -c nano-amalgamation.c
nano.o: @srcdir@/nano.c @srcdir@/tweetnacl/tweetnacl.h @srcdir@/blake2b/blake2.h @srcdir@/randombytes.h nano.tcl.h Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) -o nano.o -c @srcdir@/nano.c
randombytes.o: @srcdir@/randombytes.c @srcdir@/randombytes.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o randombytes.o -c @srcdir@/randombytes.c
tweetnacl.o: @srcdir@/tweetnacl/tweetnacl.c @srcdir@/tweetnacl/tweetnacl.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o tweetnacl.o -c @srcdir@/tweetnacl/tweetnacl.c
blake2b.o: @srcdir@/blake2b/blake2b.c @srcdir@/blake2b/blake2.h @srcdir@/blake2b/blake2-impl.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o blake2b.o -c @srcdir@/blake2b/blake2b.c
pkgIndex.tcl: pkgIndex.tcl-@TCLEXT_BUILD@
cp pkgIndex.tcl-@TCLEXT_BUILD@ pkgIndex.tcl
nano.tcl.h: @srcdir@/nano.tcl Makefile
od -A n -v -t xC < '@srcdir@/nano.tcl' > nano.tcl.h.new.1
sed 's@ *@@g;s@..@0x&, @g' < nano.tcl.h.new.1 > nano.tcl.h.new.2
|
>
>
>
>
>
|
|
|
|
|
|
|
|
|
>
>
|
>
|
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
monocypher_dir := @srcdir@/vendor/monocypher/
argon2_dir := @srcdir@/vendor/argon2/
aes_dir := @srcdir@/vendor/aes/
aes_cppflags := -DAES256=1 -DCTR=1 -DCBC=0 -DECB=0
CC := @CC@
AR := @AR@
RANLIB := @RANLIB@
CFLAGS := @CFLAGS@ @SHOBJFLAGS@
CPPFLAGS := -I. -I@srcdir@ -I$(monocypher_dir) -I$(argon2_dir) -I$(aes_dir) $(aes_cppflags) @CPPFLAGS@ @SHOBJCPPFLAGS@ @DEFS@ @TCL_DEFS@
LDFLAGS := @LDFLAGS@
LIBS := @LIBS@
SHOBJLDFLAGS := @SHOBJLDFLAGS@
VPATH := @srcdir@
srcdir := @srcdir@
prefix := @prefix@
exec_prefix := @exec_prefix@
libdir := @libdir@
PACKAGE_VERSION := @PACKAGE_VERSION@
TCL_PACKAGE_PATH := @TCL_PACKAGE_PATH@
PACKAGE_INSTALL_DIR := $(TCL_PACKAGE_PATH)/tcl-nano$(PACKAGE_VERSION)
INSTALL := @INSTALL@
INSTALL_PROGRAM := @INSTALL_PROGRAM@
INSTALL_DATA := @INSTALL_DATA@
export CC CFLAGS CPPFLAGS
all: @EXTENSION_TARGET@ pkgIndex.tcl
ifeq (@TCLEXT_BUILD@,shared)
@EXTENSION_TARGET@: monocypher.o argon2.o aes.o randombytes.o nano.o Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(SHOBJLDFLAGS) -o @EXTENSION_TARGET@ nano.o randombytes.o monocypher.o argon2.o aes.o $(LIBS)
-@WEAKENSYMS@ @EXTENSION_TARGET@
-@REMOVESYMS@ @EXTENSION_TARGET@
else
@EXTENSION_TARGET@: nano-amalgamation.o Makefile
-@WEAKENSYMS@ nano-amalgamation.o
-@REMOVESYMS@ nano-amalgamation.o
$(AR) rc @EXTENSION_TARGET@ nano-amalgamation.o
-$(RANLIB) @EXTENSION_TARGET@
endif
# The amalgamation is used when compiling statically so that the same ABI can be exposed
# to upstream projects rather than requiring them to filter out our symbols
nano-amalgamation.c: @srcdir@/nano.c @srcdir@/randombytes.c $(monocypher_dir)monocypher.c $(argon2_dir)argon2.c $(aes_dir)aes.c Makefile
rm -f nano-amalgamation.c
cat @srcdir@/nano.c @srcdir@/randombytes.c $(monocypher_dir)monocypher.c $(argon2_dir)argon2.c $(aes_dir)aes.c > nano-amalgamation.c
nano-amalgamation.o: nano-amalgamation.c $(monocypher_dir)monocypher.h $(argon2_dir)argon2.h $(aes_dir)aes.h @srcdir@/randombytes.h nano.tcl.h Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) -o nano-amalgamation.o -c nano-amalgamation.c
nano.o: @srcdir@/nano.c $(monocypher_dir)monocypher.h $(argon2_dir)argon2.h $(aes_dir)aes.h @srcdir@/randombytes.h nano.tcl.h Makefile
$(CC) $(CPPFLAGS) $(CFLAGS) -o nano.o -c @srcdir@/nano.c
randombytes.o: @srcdir@/randombytes.c @srcdir@/randombytes.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o randombytes.o -c @srcdir@/randombytes.c
monocypher.o: $(monocypher_dir)monocypher.c $(monocypher_dir)monocypher.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o monocypher.o -c $(monocypher_dir)monocypher.c
argon2.o: $(argon2_dir)argon2.c $(argon2_dir)argon2.h $(monocypher_dir)monocypher.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o argon2.o -c $(argon2_dir)argon2.c
aes.o: $(aes_dir)aes.c $(aes_dir)aes.h
$(CC) $(CPPFLAGS) $(CFLAGS) -o aes.o -c $(aes_dir)aes.c
pkgIndex.tcl: pkgIndex.tcl-@TCLEXT_BUILD@
cp pkgIndex.tcl-@TCLEXT_BUILD@ pkgIndex.tcl
nano.tcl.h: @srcdir@/nano.tcl Makefile
od -A n -v -t xC < '@srcdir@/nano.tcl' > nano.tcl.h.new.1
sed 's@ *@@g;s@..@0x&, @g' < nano.tcl.h.new.1 > nano.tcl.h.new.2
|
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
$(INSTALL_PROGRAM) @EXTENSION_TARGET@ '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
$(INSTALL_DATA) pkgIndex.tcl '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
$(INSTALL_DATA) @srcdir@/nano.man '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
clean:
rm -f nano-amalgamation.c nano-amalgamation.o
rm -f @EXTENSION_TARGET@ nano.o nano.gcda nano.gcno
rm -f blake2b.o tweetnacl.o randombytes.o
rm -f blake2b.gcda tweetnacl.gcda randombytes.gcda
rm -f blake2b.gcno tweetnacl.gcno randombytes.gcno
rm -f nano-coverage.info
distclean: clean
rm -f Makefile pkgIndex.tcl-shared pkgIndex.tcl-static nano.syms
rm -f pkgIndex.tcl
rm -f config.log config.status
rm -f nano.tcl.h nano.tcl.h.new.1 nano.tcl.h.new.2
rm -rf coverage.dir
mrproper: distclean
rm -f @srcdir@/configure @srcdir@/aclocal.m4 @srcdir@/config.guess @srcdir@/config.sub @srcdir@/install-sh
rm -f @srcdir@/nano.vers
rm -rf @srcdir@/tweetnacl @srcdir@/blake2b
$(MAKE) -C @srcdir@/build/tweetnacl distclean
$(MAKE) -C @srcdir@/build/blake2b distclean
.PHONY: all test clean distclean mrproper
|
|
|
|
|
<
|
|
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
$(INSTALL_PROGRAM) @EXTENSION_TARGET@ '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
$(INSTALL_DATA) pkgIndex.tcl '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
$(INSTALL_DATA) @srcdir@/nano.man '$(DESTDIR)$(PACKAGE_INSTALL_DIR)'
clean:
rm -f nano-amalgamation.c nano-amalgamation.o
rm -f @EXTENSION_TARGET@ nano.o nano.gcda nano.gcno
rm -f argon2.o monocypher.o aes.o randombytes.o
rm -f argon2.gcda monocypher.gcda aes.gcda randombytes.gcda
rm -f argon2.gcno monocypher.gcno aes.gcno randombytes.gcno
rm -f nano-coverage.info
distclean: clean
rm -f Makefile pkgIndex.tcl-shared pkgIndex.tcl-static nano.syms
rm -f pkgIndex.tcl
rm -f config.log config.status
rm -f nano.tcl.h nano.tcl.h.new.1 nano.tcl.h.new.2
rm -rf coverage.dir
mrproper: distclean
rm -f @srcdir@/configure @srcdir@/aclocal.m4 @srcdir@/config.guess @srcdir@/config.sub @srcdir@/install-sh
rm -f @srcdir@/nano.vers
rm -rf '$(argon2_dir)'
$(MAKE) -C @srcdir@/build/argon2 distclean
.PHONY: all test clean distclean mrproper
|