Skip to content

Commit 9ef11ad

Browse files
committed
fix: add libsodium src temporarily
1 parent 4467484 commit 9ef11ad

278 files changed

Lines changed: 43901 additions & 6 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

example/ios/Podfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1942,7 +1942,7 @@ SPEC CHECKSUMS:
19421942
hermes-engine: 46f1ffbf0297f4298862068dd4c274d4ac17a1fd
19431943
NitroModules: 3a9c88afc1ca3dba01759ed410e8c2902a5d3dbb
19441944
OpenSSL-Universal: b60a3702c9fea8b3145549d421fdb018e53ab7b4
1945-
QuickCrypto: 39358cf38783f7f26bd750cf3a2609feb845fa3d
1945+
QuickCrypto: e457fb08347cd9807514cefad95337a7664aeabe
19461946
RCT-Folly: 84578c8756030547307e4572ab1947de1685c599
19471947
RCTDeprecation: fde92935b3caa6cb65cbff9fbb7d3a9867ffb259
19481948
RCTRequired: 75c6cee42d21c1530a6f204ba32ff57335d19007

packages/react-native-quick-crypto/QuickCrypto.podspec

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,6 @@ Pod::Spec.new do |s|
1919

2020
s.source = { :git => "https://github.com/margelo/react-native-quick-crypto.git", :tag => "#{s.version}" }
2121

22-
# TODO: handle libsodium
23-
s.source = { :http => "file:///Users/brad/dev/rnqc/lib/libsodium-1.0.20/libsodium-apple/Clibsodium.xcframework.tar.gz" }
24-
s.vendored_frameworks = "Clibsodium.xcframework"
25-
2622
s.source_files = [
2723
# implementation (Swift)
2824
"ios/**/*.{swift}",
@@ -48,6 +44,5 @@ Pod::Spec.new do |s|
4844
s.dependency 'React-jsi'
4945
s.dependency 'React-callinvoker'
5046
s.dependency "OpenSSL-Universal"
51-
# s.dependency "libsodium"
5247
install_modules_dependencies(s)
5348
end
Lines changed: 315 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,315 @@
1+
lib_LTLIBRARIES = \
2+
libsodium.la
3+
4+
libsodium_la_SOURCES = \
5+
crypto_aead/aegis128l/aead_aegis128l.c \
6+
crypto_aead/aegis128l/aegis128l_common.h \
7+
crypto_aead/aegis128l/aegis128l_soft.c \
8+
crypto_aead/aegis128l/aegis128l_soft.h \
9+
crypto_aead/aegis128l/implementations.h \
10+
crypto_aead/aegis256/aead_aegis256.c \
11+
crypto_aead/aegis256/aegis256_common.h \
12+
crypto_aead/aegis256/aegis256_soft.c \
13+
crypto_aead/aegis256/aegis256_soft.h \
14+
crypto_aead/aegis256/implementations.h \
15+
crypto_aead/aes256gcm/aead_aes256gcm.c \
16+
crypto_aead/chacha20poly1305/aead_chacha20poly1305.c \
17+
crypto_aead/xchacha20poly1305/aead_xchacha20poly1305.c \
18+
crypto_auth/crypto_auth.c \
19+
crypto_auth/hmacsha256/auth_hmacsha256.c \
20+
crypto_auth/hmacsha512/auth_hmacsha512.c \
21+
crypto_auth/hmacsha512256/auth_hmacsha512256.c \
22+
crypto_box/crypto_box.c \
23+
crypto_box/crypto_box_easy.c \
24+
crypto_box/crypto_box_seal.c \
25+
crypto_box/curve25519xsalsa20poly1305/box_curve25519xsalsa20poly1305.c \
26+
crypto_core/ed25519/core_h2c.c \
27+
crypto_core/ed25519/core_h2c.h \
28+
crypto_core/ed25519/ref10/ed25519_ref10.c \
29+
crypto_core/hchacha20/core_hchacha20.c \
30+
crypto_core/hsalsa20/ref2/core_hsalsa20_ref2.c \
31+
crypto_core/hsalsa20/core_hsalsa20.c \
32+
crypto_core/salsa/ref/core_salsa_ref.c \
33+
crypto_core/softaes/softaes.c \
34+
crypto_generichash/crypto_generichash.c \
35+
crypto_generichash/blake2b/generichash_blake2.c \
36+
crypto_generichash/blake2b/ref/blake2.h \
37+
crypto_generichash/blake2b/ref/blake2b-compress-ref.c \
38+
crypto_generichash/blake2b/ref/blake2b-load-sse2.h \
39+
crypto_generichash/blake2b/ref/blake2b-load-sse41.h \
40+
crypto_generichash/blake2b/ref/blake2b-load-avx2.h \
41+
crypto_generichash/blake2b/ref/blake2b-ref.c \
42+
crypto_generichash/blake2b/ref/generichash_blake2b.c \
43+
crypto_hash/crypto_hash.c \
44+
crypto_hash/sha256/hash_sha256.c \
45+
crypto_hash/sha256/cp/hash_sha256_cp.c \
46+
crypto_hash/sha512/hash_sha512.c \
47+
crypto_hash/sha512/cp/hash_sha512_cp.c \
48+
crypto_kdf/blake2b/kdf_blake2b.c \
49+
crypto_kdf/crypto_kdf.c \
50+
crypto_kdf/hkdf/kdf_hkdf_sha256.c \
51+
crypto_kdf/hkdf/kdf_hkdf_sha512.c \
52+
crypto_kx/crypto_kx.c \
53+
crypto_onetimeauth/crypto_onetimeauth.c \
54+
crypto_onetimeauth/poly1305/onetimeauth_poly1305.c \
55+
crypto_onetimeauth/poly1305/onetimeauth_poly1305.h \
56+
crypto_onetimeauth/poly1305/donna/poly1305_donna.h \
57+
crypto_onetimeauth/poly1305/donna/poly1305_donna32.h \
58+
crypto_onetimeauth/poly1305/donna/poly1305_donna64.h \
59+
crypto_onetimeauth/poly1305/donna/poly1305_donna.c \
60+
crypto_pwhash/argon2/argon2-core.c \
61+
crypto_pwhash/argon2/argon2-core.h \
62+
crypto_pwhash/argon2/argon2-encoding.c \
63+
crypto_pwhash/argon2/argon2-encoding.h \
64+
crypto_pwhash/argon2/argon2-fill-block-ref.c \
65+
crypto_pwhash/argon2/argon2.c \
66+
crypto_pwhash/argon2/argon2.h \
67+
crypto_pwhash/argon2/blake2b-long.c \
68+
crypto_pwhash/argon2/blake2b-long.h \
69+
crypto_pwhash/argon2/blamka-round-ref.h \
70+
crypto_pwhash/argon2/pwhash_argon2i.c \
71+
crypto_pwhash/argon2/pwhash_argon2id.c \
72+
crypto_pwhash/crypto_pwhash.c \
73+
crypto_scalarmult/crypto_scalarmult.c \
74+
crypto_scalarmult/curve25519/ref10/x25519_ref10.c \
75+
crypto_scalarmult/curve25519/ref10/x25519_ref10.h \
76+
crypto_scalarmult/curve25519/scalarmult_curve25519.c \
77+
crypto_scalarmult/curve25519/scalarmult_curve25519.h \
78+
crypto_secretbox/crypto_secretbox.c \
79+
crypto_secretbox/crypto_secretbox_easy.c \
80+
crypto_secretbox/xsalsa20poly1305/secretbox_xsalsa20poly1305.c \
81+
crypto_secretstream/xchacha20poly1305/secretstream_xchacha20poly1305.c \
82+
crypto_shorthash/crypto_shorthash.c \
83+
crypto_shorthash/siphash24/shorthash_siphash24.c \
84+
crypto_shorthash/siphash24/ref/shorthash_siphash24_ref.c \
85+
crypto_shorthash/siphash24/ref/shorthash_siphash_ref.h \
86+
crypto_sign/crypto_sign.c \
87+
crypto_sign/ed25519/sign_ed25519.c \
88+
crypto_sign/ed25519/ref10/keypair.c \
89+
crypto_sign/ed25519/ref10/open.c \
90+
crypto_sign/ed25519/ref10/sign.c \
91+
crypto_sign/ed25519/ref10/sign_ed25519_ref10.h \
92+
crypto_stream/chacha20/stream_chacha20.c \
93+
crypto_stream/chacha20/stream_chacha20.h \
94+
crypto_stream/chacha20/ref/chacha20_ref.h \
95+
crypto_stream/chacha20/ref/chacha20_ref.c \
96+
crypto_stream/crypto_stream.c \
97+
crypto_stream/salsa20/stream_salsa20.c \
98+
crypto_stream/salsa20/stream_salsa20.h \
99+
crypto_stream/xsalsa20/stream_xsalsa20.c \
100+
crypto_verify/verify.c \
101+
include/sodium/private/asm_cet.h \
102+
include/sodium/private/chacha20_ietf_ext.h \
103+
include/sodium/private/common.h \
104+
include/sodium/private/ed25519_ref10.h \
105+
include/sodium/private/implementations.h \
106+
include/sodium/private/mutex.h \
107+
include/sodium/private/sse2_64_32.h \
108+
include/sodium/private/softaes.h \
109+
include/sodium/private/quirks.h \
110+
randombytes/randombytes.c \
111+
sodium/codecs.c \
112+
sodium/core.c \
113+
sodium/runtime.c \
114+
sodium/utils.c \
115+
sodium/version.c
116+
117+
if HAVE_TI_MODE
118+
libsodium_la_SOURCES += \
119+
crypto_core/ed25519/ref10/fe_51/base.h \
120+
crypto_core/ed25519/ref10/fe_51/base2.h \
121+
crypto_core/ed25519/ref10/fe_51/constants.h \
122+
crypto_core/ed25519/ref10/fe_51/fe.h \
123+
include/sodium/private/ed25519_ref10_fe_51.h
124+
else
125+
libsodium_la_SOURCES += \
126+
crypto_core/ed25519/ref10/fe_25_5/base.h \
127+
crypto_core/ed25519/ref10/fe_25_5/base2.h \
128+
crypto_core/ed25519/ref10/fe_25_5/constants.h \
129+
crypto_core/ed25519/ref10/fe_25_5/fe.h \
130+
include/sodium/private/ed25519_ref10_fe_25_5.h
131+
endif
132+
133+
if HAVE_AMD64_ASM
134+
libsodium_la_SOURCES += \
135+
crypto_stream/salsa20/xmm6/salsa20_xmm6-asm.S \
136+
crypto_stream/salsa20/xmm6/salsa20_xmm6.c \
137+
crypto_stream/salsa20/xmm6/salsa20_xmm6.h \
138+
crypto_stream/salsa20/xmm6/salsa20_xmm6-asm_namespace.h
139+
else
140+
libsodium_la_SOURCES += \
141+
crypto_stream/salsa20/ref/salsa20_ref.c \
142+
crypto_stream/salsa20/ref/salsa20_ref.h
143+
endif
144+
145+
noinst_HEADERS = \
146+
crypto_scalarmult/curve25519/sandy2x/consts.S \
147+
crypto_scalarmult/curve25519/sandy2x/fe51_mul.S \
148+
crypto_scalarmult/curve25519/sandy2x/fe51_nsquare.S \
149+
crypto_scalarmult/curve25519/sandy2x/fe51_pack.S \
150+
crypto_scalarmult/curve25519/sandy2x/ladder.S
151+
152+
if HAVE_AVX_ASM
153+
libsodium_la_SOURCES += \
154+
crypto_scalarmult/curve25519/sandy2x/consts_namespace.h \
155+
crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c \
156+
crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.h \
157+
crypto_scalarmult/curve25519/sandy2x/fe.h \
158+
crypto_scalarmult/curve25519/sandy2x/fe51.h \
159+
crypto_scalarmult/curve25519/sandy2x/fe51_invert.c \
160+
crypto_scalarmult/curve25519/sandy2x/fe51_namespace.h \
161+
crypto_scalarmult/curve25519/sandy2x/fe_frombytes_sandy2x.c \
162+
crypto_scalarmult/curve25519/sandy2x/ladder.h \
163+
crypto_scalarmult/curve25519/sandy2x/ladder_namespace.h \
164+
crypto_scalarmult/curve25519/sandy2x/sandy2x.S
165+
endif
166+
167+
if !MINIMAL
168+
libsodium_la_SOURCES += \
169+
crypto_box/curve25519xchacha20poly1305/box_curve25519xchacha20poly1305.c \
170+
crypto_box/curve25519xchacha20poly1305/box_seal_curve25519xchacha20poly1305.c \
171+
crypto_core/ed25519/core_ed25519.c \
172+
crypto_core/ed25519/core_ristretto255.c \
173+
crypto_pwhash/scryptsalsa208sha256/crypto_scrypt-common.c \
174+
crypto_pwhash/scryptsalsa208sha256/crypto_scrypt.h \
175+
crypto_pwhash/scryptsalsa208sha256/scrypt_platform.c \
176+
crypto_pwhash/scryptsalsa208sha256/pbkdf2-sha256.c \
177+
crypto_pwhash/scryptsalsa208sha256/pbkdf2-sha256.h \
178+
crypto_pwhash/scryptsalsa208sha256/pwhash_scryptsalsa208sha256.c \
179+
crypto_pwhash/scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c \
180+
crypto_scalarmult/ed25519/ref10/scalarmult_ed25519_ref10.c \
181+
crypto_scalarmult/ristretto255/ref10/scalarmult_ristretto255_ref10.c \
182+
crypto_secretbox/xchacha20poly1305/secretbox_xchacha20poly1305.c \
183+
crypto_shorthash/siphash24/shorthash_siphashx24.c \
184+
crypto_shorthash/siphash24/ref/shorthash_siphashx24_ref.c \
185+
crypto_stream/salsa2012/ref/stream_salsa2012_ref.c \
186+
crypto_stream/salsa2012/stream_salsa2012.c \
187+
crypto_stream/salsa208/ref/stream_salsa208_ref.c \
188+
crypto_stream/salsa208/stream_salsa208.c \
189+
crypto_stream/xchacha20/stream_xchacha20.c
190+
endif
191+
192+
libsodium_la_LDFLAGS = \
193+
$(AM_LDFLAGS) \
194+
-export-dynamic \
195+
-no-undefined \
196+
$(LIBTOOL_EXTRA_FLAGS)
197+
198+
libsodium_la_CPPFLAGS = \
199+
$(LTDLINCL) \
200+
-I$(srcdir)/include/sodium \
201+
-I$(builddir)/include/sodium
202+
203+
if HAVE_LD_OUTPUT_DEF
204+
libsodium_la_LDFLAGS += -Wl,--output-def,libsodium-$(DLL_VERSION).def
205+
defexecdir = $(bindir)
206+
defexec_DATA = libsodium-$(DLL_VERSION).def
207+
CLEANFILES = $(defexec_DATA)
208+
libsodium-$(DLL_VERSION).def: libsodium.la
209+
endif
210+
211+
SUBDIRS = \
212+
include
213+
214+
libsodium_la_LIBADD = libaesni.la libarmcrypto.la libsse2.la libssse3.la libsse41.la libavx2.la libavx512f.la
215+
noinst_LTLIBRARIES = libaesni.la libarmcrypto.la libsse2.la libssse3.la libsse41.la libavx2.la libavx512f.la
216+
217+
librdrand_la_LDFLAGS = $(libsodium_la_LDFLAGS)
218+
librdrand_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
219+
@CFLAGS_RDRAND@
220+
librdrand_la_SOURCES = \
221+
randombytes/internal/randombytes_internal_random.c
222+
223+
if !EMSCRIPTEN
224+
libsodium_la_LIBADD += librdrand.la
225+
noinst_LTLIBRARIES += librdrand.la
226+
227+
libsodium_la_SOURCES += \
228+
randombytes/sysrandom/randombytes_sysrandom.c
229+
endif
230+
231+
libarmcrypto_la_LDFLAGS = $(libsodium_la_LDFLAGS)
232+
libarmcrypto_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
233+
@CFLAGS_ARMCRYPTO@
234+
libarmcrypto_la_SOURCES = \
235+
crypto_aead/aegis128l/aegis128l_armcrypto.c \
236+
crypto_aead/aegis128l/aegis128l_armcrypto.h \
237+
crypto_aead/aegis256/aegis256_armcrypto.c \
238+
crypto_aead/aegis256/aegis256_armcrypto.h \
239+
crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c
240+
241+
libaesni_la_LDFLAGS = $(libsodium_la_LDFLAGS)
242+
libaesni_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
243+
@CFLAGS_SSE2@ @CFLAGS_SSSE3@ @CFLAGS_AVX@ @CFLAGS_AESNI@ @CFLAGS_PCLMUL@
244+
libaesni_la_SOURCES = \
245+
crypto_aead/aegis128l/aegis128l_aesni.c \
246+
crypto_aead/aegis128l/aegis128l_aesni.h \
247+
crypto_aead/aegis256/aegis256_aesni.c \
248+
crypto_aead/aegis256/aegis256_aesni.h \
249+
crypto_aead/aes256gcm/aesni/aead_aes256gcm_aesni.c
250+
251+
libsse2_la_LDFLAGS = $(libsodium_la_LDFLAGS)
252+
libsse2_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
253+
@CFLAGS_SSE2@
254+
libsse2_la_SOURCES = \
255+
crypto_onetimeauth/poly1305/sse2/poly1305_sse2.c \
256+
crypto_onetimeauth/poly1305/sse2/poly1305_sse2.h
257+
if !MINIMAL
258+
libsse2_la_SOURCES += \
259+
crypto_pwhash/scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c
260+
endif
261+
262+
if !HAVE_AMD64_ASM
263+
libsse2_la_SOURCES += \
264+
crypto_stream/salsa20/xmm6int/salsa20_xmm6int-sse2.c \
265+
crypto_stream/salsa20/xmm6int/salsa20_xmm6int-sse2.h \
266+
crypto_stream/salsa20/xmm6int/u0.h \
267+
crypto_stream/salsa20/xmm6int/u1.h \
268+
crypto_stream/salsa20/xmm6int/u4.h
269+
endif
270+
271+
libssse3_la_LDFLAGS = $(libsodium_la_LDFLAGS)
272+
libssse3_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
273+
@CFLAGS_SSE2@ @CFLAGS_SSSE3@
274+
libssse3_la_SOURCES = \
275+
crypto_generichash/blake2b/ref/blake2b-compress-ssse3.c \
276+
crypto_generichash/blake2b/ref/blake2b-compress-ssse3.h \
277+
crypto_pwhash/argon2/argon2-fill-block-ssse3.c \
278+
crypto_pwhash/argon2/blamka-round-ssse3.h \
279+
crypto_stream/chacha20/dolbeau/chacha20_dolbeau-ssse3.c \
280+
crypto_stream/chacha20/dolbeau/chacha20_dolbeau-ssse3.h \
281+
crypto_stream/chacha20/dolbeau/u0.h \
282+
crypto_stream/chacha20/dolbeau/u1.h \
283+
crypto_stream/chacha20/dolbeau/u4.h
284+
285+
libsse41_la_LDFLAGS = $(libsodium_la_LDFLAGS)
286+
libsse41_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
287+
@CFLAGS_SSE2@ @CFLAGS_SSSE3@ @CFLAGS_SSE41@
288+
libsse41_la_SOURCES = \
289+
crypto_generichash/blake2b/ref/blake2b-compress-sse41.c \
290+
crypto_generichash/blake2b/ref/blake2b-compress-sse41.h
291+
292+
libavx2_la_LDFLAGS = $(libsodium_la_LDFLAGS)
293+
libavx2_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
294+
@CFLAGS_SSE2@ @CFLAGS_SSSE3@ @CFLAGS_SSE41@ @CFLAGS_AVX@ @CFLAGS_AVX2@
295+
libavx2_la_SOURCES = \
296+
crypto_generichash/blake2b/ref/blake2b-compress-avx2.c \
297+
crypto_generichash/blake2b/ref/blake2b-compress-avx2.h \
298+
crypto_pwhash/argon2/argon2-fill-block-avx2.c \
299+
crypto_pwhash/argon2/blamka-round-avx2.h \
300+
crypto_stream/chacha20/dolbeau/chacha20_dolbeau-avx2.c \
301+
crypto_stream/chacha20/dolbeau/chacha20_dolbeau-avx2.h \
302+
crypto_stream/chacha20/dolbeau/u8.h \
303+
crypto_stream/salsa20/xmm6int/salsa20_xmm6int-avx2.c \
304+
crypto_stream/salsa20/xmm6int/salsa20_xmm6int-avx2.h \
305+
crypto_stream/salsa20/xmm6int/u0.h \
306+
crypto_stream/salsa20/xmm6int/u1.h \
307+
crypto_stream/salsa20/xmm6int/u4.h \
308+
crypto_stream/salsa20/xmm6int/u8.h
309+
310+
libavx512f_la_LDFLAGS = $(libsodium_la_LDFLAGS)
311+
libavx512f_la_CPPFLAGS = $(libsodium_la_CPPFLAGS) \
312+
@CFLAGS_SSE2@ @CFLAGS_SSSE3@ @CFLAGS_SSE41@ @CFLAGS_AVX@ @CFLAGS_AVX2@ @CFLAGS_AVX512F@
313+
libavx512f_la_SOURCES = \
314+
crypto_pwhash/argon2/argon2-fill-block-avx512f.c \
315+
crypto_pwhash/argon2/blamka-round-avx512f.h

0 commit comments

Comments
 (0)