diff options
Diffstat (limited to 'sdk/recipes/patches/openssl/ppc-amigaos')
-rw-r--r-- | sdk/recipes/patches/openssl/ppc-amigaos/crypto.Makefile.p | 11 | ||||
-rw-r--r-- | sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p | 35 |
2 files changed, 46 insertions, 0 deletions
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/crypto.Makefile.p b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.Makefile.p new file mode 100644 index 0000000..3a9bf62 --- /dev/null +++ b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.Makefile.p @@ -0,0 +1,11 @@ +--- crypto/Makefile 2017-01-26 13:22:03.000000000 +0000 ++++ crypto/Makefile 2017-02-08 00:05:03.883009508 +0000 +@@ -71,7 +71,7 @@ uplink-x86.s: $(TOP)/ms/uplink-x86.pl + + x86_64cpuid.s: x86_64cpuid.pl; $(PERL) x86_64cpuid.pl $(PERLASM_SCHEME) > $@ + ia64cpuid.s: ia64cpuid.S; $(CC) $(CFLAGS) -E ia64cpuid.S > $@ +-ppccpuid.s: ppccpuid.pl; $(PERL) ppccpuid.pl $(PERLASM_SCHEME) $@ ++ppccpuid.s: ppccpuid.pl; $(PERL) ppccpuid.pl $(PERLASM_SCHEME) > $@ + pariscid.s: pariscid.pl; $(PERL) pariscid.pl $(PERLASM_SCHEME) $@ + alphacpuid.s: alphacpuid.pl + (preproc=$$$$.$@.S; trap "rm $$preproc" INT; \ diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p new file mode 100644 index 0000000..eaaab73 --- /dev/null +++ b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p @@ -0,0 +1,35 @@ +--- crypto/ppccap.c 2017-01-26 13:22:03.000000000 +0000 ++++ crypto/ppccap.c 2017-02-08 17:48:09.982015412 +0000 +@@ -73,6 +73,7 @@ void sha512_block_data_order(void *ctx, + sha512_block_ppc(ctx, inp, len); + } + ++#ifndef OPENSSL_SYS_AMIGAOS4 + static sigjmp_buf ill_jmp; + static void ill_handler(int sig) + { +@@ -157,3 +158,24 @@ void OPENSSL_cpuid_setup(void) + sigaction(SIGILL, &ill_oact, NULL); + sigprocmask(SIG_SETMASK, &oset, NULL); + } ++#else ++#include <proto/exec.h> ++void OPENSSL_cpuid_setup(void) ++{ ++ uint32 family, vec; ++ ++ IExec->GetCPUInfoTags(GCIT_Family, &family, GCIT_VectorUnit, &vec, TAG_DONE); ++ ++ OPENSSL_ppccap_P = 0; //PPC_FPU ++ ++ if((family == CPUFAMILY_PA6T) || (family == CPUFAMILY_E5500)) ++ OPENSSL_ppccap_P |= PPC_FPU64; ++ ++ if((vec == VECTORTYPE_ALTIVEC) && ++ (LIB_IS_AT_LEAST(SysBase, 51, 12))) ++ { ++ OPENSSL_ppccap_P |= PPC_ALTIVEC; ++ } ++} ++#endif ++ |