diff --git a/patches/libnettle-3.4.local.patch b/patches/libnettle-3.4.local.patch new file mode 100644 index 0000000..b51a4bf --- /dev/null +++ b/patches/libnettle-3.4.local.patch @@ -0,0 +1,299 @@ +diff -ru nettle-3.4.orig/x86_64/aes-decrypt-internal.asm nettle-3.4/x86_64/aes-decrypt-internal.asm +--- nettle-3.4.orig/x86_64/aes-decrypt-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/aes-decrypt-internal.asm 2018-12-09 00:59:03.342536520 +0100 +@@ -150,3 +150,11 @@ + W64_EXIT(6, 0) + ret + EPILOGUE(_nettle_aes_decrypt) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_aes_decrypt,"r" ++ .global __imp__nettle_aes_decrypt ++__imp__nettle_aes_decrypt: ++ .quad _nettle_aes_decrypt ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/aes-encrypt-internal.asm nettle-3.4/x86_64/aes-encrypt-internal.asm +--- nettle-3.4.orig/x86_64/aes-encrypt-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/aes-encrypt-internal.asm 2018-12-09 01:10:55.642444822 +0100 +@@ -151,3 +151,11 @@ + W64_EXIT(6, 0) + ret + EPILOGUE(_nettle_aes_encrypt) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_aes_encrypt,"r" ++ .global __imp__nettle_aes_encrypt ++__imp__nettle_aes_encrypt: ++ .quad _nettle_aes_encrypt ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/camellia-crypt-internal.asm nettle-3.4/x86_64/camellia-crypt-internal.asm +--- nettle-3.4.orig/x86_64/camellia-crypt-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/camellia-crypt-internal.asm 2018-12-09 01:13:30.453575580 +0100 +@@ -200,3 +200,11 @@ + W64_EXIT(6, 0) + ret + EPILOGUE(_nettle_camellia_crypt) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_camellia_crypt,"r" ++ .global __imp__nettle_camellia_crypt ++__imp__nettle_camellia_crypt: ++ .quad _nettle_camellia_crypt ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/chacha-core-internal.asm nettle-3.4/x86_64/chacha-core-internal.asm +--- nettle-3.4.orig/x86_64/chacha-core-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/chacha-core-internal.asm 2018-12-09 01:13:01.961735270 +0100 +@@ -126,3 +126,11 @@ + W64_EXIT(3, 6) + ret + EPILOGUE(_nettle_chacha_core) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_chacha_core,"r" ++ .global __imp__nettle_chacha_core ++__imp__nettle_chacha_core: ++ .quad _nettle_chacha_core ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/gcm-hash8.asm nettle-3.4/x86_64/gcm-hash8.asm +--- nettle-3.4.orig/x86_64/gcm-hash8.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/gcm-hash8.asm 2018-12-09 00:57:11.743203210 +0100 +@@ -238,3 +238,12 @@ + .value W(a7,d0),W(a6,12),W(a4,54),W(a5,96),W(a0,d8),W(a1,1a),W(a3,5c),W(a2,9e) + .value W(b5,e0),W(b4,22),W(b6,64),W(b7,a6),W(b2,e8),W(b3,2a),W(b1,6c),W(b0,ae) + .value W(bb,f0),W(ba,32),W(b8,74),W(b9,b6),W(bc,f8),W(bd,3a),W(bf,7c),W(be,be) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_gcm_hash8,"r" ++ .global __imp__nettle_gcm_hash8 ++__imp__nettle_gcm_hash8: ++ .quad _nettle_gcm_hash8 ++ .linkonce discard ++#endif ++ +diff -ru nettle-3.4.orig/x86_64/md5-compress.asm nettle-3.4/x86_64/md5-compress.asm +--- nettle-3.4.orig/x86_64/md5-compress.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/md5-compress.asm 2018-12-09 01:12:32.613899889 +0100 +@@ -174,3 +174,11 @@ + + ret + EPILOGUE(_nettle_md5_compress) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_md5_compress,"r" ++ .global __imp__nettle_md5_compress ++__imp__nettle_md5_compress: ++ .quad _nettle_md5_compress ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/memxor3.asm nettle-3.4/x86_64/memxor3.asm +--- nettle-3.4.orig/x86_64/memxor3.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/memxor3.asm 2018-12-09 00:56:26.119479101 +0100 +@@ -261,3 +261,11 @@ + + + EPILOGUE(nettle_memxor3) ++ ++#ifdef __midipix__ ++ .section .got$nettle_memxor3,"r" ++ .global __imp_nettle_memxor3 ++__imp_nettle_memxor3: ++ .quad nettle_memxor3 ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/memxor.asm nettle-3.4/x86_64/memxor.asm +--- nettle-3.4.orig/x86_64/memxor.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/memxor.asm 2018-12-09 00:52:43.592860380 +0100 +@@ -171,3 +171,11 @@ + >) + + EPILOGUE(nettle_memxor) ++ ++#ifdef __midipix__ ++ .section .got$nettle_memxor,"r" ++ .global __imp_nettle_memxor ++__imp_nettle_memxor: ++ .quad nettle_memxor ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/poly1305-internal.asm nettle-3.4/x86_64/poly1305-internal.asm +--- nettle-3.4.orig/x86_64/poly1305-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/poly1305-internal.asm 2018-12-09 01:11:52.998122306 +0100 +@@ -183,3 +183,22 @@ + W64_EXIT(2, 0) + ret + ++#ifdef __midipix__ ++ .section .got$nettle_poly1305_digest,"r" ++ .global __imp_nettle_poly1305_digest ++__imp_nettle_poly1305_digest: ++ .quad nettle_poly1305_digest ++ .linkonce discard ++ ++ .section .got$_nettle_poly1305_block,"r" ++ .global __imp__nettle_poly1305_block ++__imp__nettle_poly1305_block: ++ .quad _nettle_poly1305_block ++ .linkonce discard ++ ++ .section .got$nettle_poly1305_set_key,"r" ++ .global __imp_nettle_poly1305_set_key ++__imp_nettle_poly1305_set_key: ++ .quad nettle_poly1305_set_key ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/salsa20-core-internal.asm nettle-3.4/x86_64/salsa20-core-internal.asm +--- nettle-3.4.orig/x86_64/salsa20-core-internal.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/salsa20-core-internal.asm 2018-12-09 01:04:45.096547584 +0100 +@@ -109,3 +109,11 @@ + W64_EXIT(3, 9) + ret + EPILOGUE(_nettle_salsa20_core) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_salsa20_core,"r" ++ .global __imp__nettle_salsa20_core ++__imp__nettle_salsa20_core: ++ .quad _nettle_salsa20_core ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/salsa20-crypt.asm nettle-3.4/x86_64/salsa20-crypt.asm +--- nettle-3.4.orig/x86_64/salsa20-crypt.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/salsa20-crypt.asm 2018-12-09 01:14:21.785288164 +0100 +@@ -245,3 +245,11 @@ + ret + + EPILOGUE(nettle_salsa20_crypt) ++ ++#ifdef __midipix__ ++ .section .got$nettle_salsa20_crypt,"r" ++ .global __imp_nettle_salsa20_crypt ++__imp_nettle_salsa20_crypt: ++ .quad nettle_salsa20_crypt ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/serpent-decrypt.asm nettle-3.4/x86_64/serpent-decrypt.asm +--- nettle-3.4.orig/x86_64/serpent-decrypt.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/serpent-decrypt.asm 2018-12-09 00:46:23.003436960 +0100 +@@ -713,3 +713,12 @@ + pop %rbx + W64_EXIT(4, 13) + ret ++ ++#ifdef __midipix__ ++ .section .got$nettle_serpent_decrypt,"r" ++ .global __imp_nettle_serpent_decrypt ++__imp_nettle_serpent_decrypt: ++ .quad nettle_serpent_decrypt ++ .linkonce discard ++#endif ++ +diff -ru nettle-3.4.orig/x86_64/serpent-encrypt.asm nettle-3.4/x86_64/serpent-encrypt.asm +--- nettle-3.4.orig/x86_64/serpent-encrypt.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/serpent-encrypt.asm 2018-12-09 00:49:36.870081203 +0100 +@@ -748,3 +748,11 @@ + pop %rbx + W64_EXIT(4, 13) + ret ++ ++#ifdef __midipix__ ++ .section .got$nettle_serpent_encrypt,"r" ++ .global __imp_nettle_serpent_encrypt ++__imp_nettle_serpent_encrypt: ++ .quad nettle_serpent_encrypt ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/sha1-compress.asm nettle-3.4/x86_64/sha1-compress.asm +--- nettle-3.4.orig/x86_64/sha1-compress.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/sha1-compress.asm 2018-12-09 00:55:45.891724177 +0100 +@@ -305,3 +305,11 @@ + W64_EXIT(2, 0) + ret + EPILOGUE(_nettle_sha1_compress) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_sha1_compress,"r" ++ .global __imp__nettle_sha1_compress ++__imp__nettle_sha1_compress: ++ .quad _nettle_sha1_compress ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/sha256-compress.asm nettle-3.4/x86_64/sha256-compress.asm +--- nettle-3.4.orig/x86_64/sha256-compress.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/sha256-compress.asm 2018-12-09 00:55:21.963870821 +0100 +@@ -208,3 +208,11 @@ + W64_EXIT(3, 0) + ret + EPILOGUE(_nettle_sha256_compress) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_sha256_compress,"r" ++ .global __imp__nettle_sha256_compress ++__imp__nettle_sha256_compress: ++ .quad _nettle_sha256_compress ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/sha3-permute.asm nettle-3.4/x86_64/sha3-permute.asm +--- nettle-3.4.orig/x86_64/sha3-permute.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/sha3-permute.asm 2018-12-09 00:51:43.365246810 +0100 +@@ -522,3 +522,11 @@ + .quad 0x800000000000808A + .quad 0x0000000000008082 + .quad 0x0000000000000001 ++ ++#ifdef __midipix__ ++ .section .got$nettle_sha3_permute,"r" ++ .global __imp_nettle_sha3_permute ++__imp_nettle_sha3_permute: ++ .quad nettle_sha3_permute ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/sha512-compress.asm nettle-3.4/x86_64/sha512-compress.asm +--- nettle-3.4.orig/x86_64/sha512-compress.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/sha512-compress.asm 2018-12-09 00:54:41.276121776 +0100 +@@ -208,3 +208,11 @@ + W64_EXIT(3, 0) + ret + EPILOGUE(_nettle_sha512_compress) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_sha512_compress,"r" ++ .global __imp__nettle_sha512_compress ++__imp__nettle_sha512_compress: ++ .quad _nettle_sha512_compress ++ .linkonce discard ++#endif +diff -ru nettle-3.4.orig/x86_64/umac-nh.asm nettle-3.4/x86_64/umac-nh.asm +--- nettle-3.4.orig/x86_64/umac-nh.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/umac-nh.asm 2018-12-09 00:44:00.460269237 +0100 +@@ -79,3 +79,12 @@ + W64_EXIT(3, 7) + ret + EPILOGUE(_nettle_umac_nh) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_umac_nh,"r" ++ .global __imp__nettle_umac_nh ++__imp__nettle_umac_nh: ++ .quad _nettle_umac_nh ++ .linkonce discard ++#endif ++ +diff -ru nettle-3.4.orig/x86_64/umac-nh-n.asm nettle-3.4/x86_64/umac-nh-n.asm +--- nettle-3.4.orig/x86_64/umac-nh-n.asm 2017-11-19 14:36:47.000000000 +0100 ++++ nettle-3.4/x86_64/umac-nh-n.asm 2018-12-09 00:43:15.584499837 +0100 +@@ -273,3 +273,11 @@ + W64_EXIT(5, 14) + ret + EPILOGUE(_nettle_umac_nh_n) ++ ++#ifdef __midipix__ ++ .section .got$_nettle_umac_nh_n,"r" ++ .global __imp__nettle_umac_nh_n ++__imp__nettle_umac_nh_n: ++ .quad _nettle_umac_nh_n ++ .linkonce discard ++#endif