summaryrefslogtreecommitdiff
path: root/sdk/recipes/patches
diff options
context:
space:
mode:
Diffstat (limited to 'sdk/recipes/patches')
-rw-r--r--sdk/recipes/patches/libcurl/m68k-unknown-amigaos/src.tool_operate.c.p10
-rw-r--r--sdk/recipes/patches/libcurl/ppc-amigaos/lib.hostip4.c.p17
-rw-r--r--sdk/recipes/patches/libcurl/ppc-amigaos/src.tool_operate.c.p10
-rw-r--r--sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.getprogname.c.p11
-rw-r--r--sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.signal.in.h.p20
-rw-r--r--sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.unistd.in.h.p14
-rw-r--r--sdk/recipes/patches/libiconv/ppc-amigaos/srclib.getprogname.c.p11
-rw-r--r--sdk/recipes/patches/libiconv/ppc-amigaos/srclib.signal.in.h.p20
-rw-r--r--sdk/recipes/patches/libiconv/ppc-amigaos/srclib.unistd.in.h.p43
-rw-r--r--sdk/recipes/patches/libjpegturbo/ppc-amigaos/jmemmgr.c.p10
-rw-r--r--sdk/recipes/patches/libjpegturbo/ppc-amigaos/simd.jsimd_powerpc.c.p26
-rw-r--r--sdk/recipes/patches/openssl/Configurations-50-amigaos.conf.p34
-rw-r--r--sdk/recipes/patches/openssl/Configurations-50-riscos.conf.p17
-rw-r--r--sdk/recipes/patches/openssl/Configurations-50-windows.conf.p28
-rw-r--r--sdk/recipes/patches/openssl/Configure.p32
-rw-r--r--sdk/recipes/patches/openssl/apps.speed.c.p28
-rw-r--r--sdk/recipes/patches/openssl/aps.opt.c.p14
-rw-r--r--sdk/recipes/patches/openssl/bio_lcl.h.p11
-rw-r--r--sdk/recipes/patches/openssl/crypto.pkcs7.bio_pk7.c.p15
-rw-r--r--sdk/recipes/patches/openssl/crypto.rand.rand_unix.c.p11
-rw-r--r--sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.Makefile.p12
-rw-r--r--sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.bn_div.c.p25
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bio.b_sock2.c.p36
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bn.bn_div.c.p25
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.include.internal.md32_common.h.p36
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.rand.build.info.p9
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.ui.ui_openssl.c.p21
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/include.openssl.e_os2.h.p11
-rw-r--r--sdk/recipes/patches/openssl/m68k-unknown-amigaos/no-term.p24
-rw-r--r--sdk/recipes/patches/openssl/mem_sec.c.p11
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/crypto.bio_b_addr.c.p11
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p36
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/crypto.rand.build.info.p9
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/include.openssl.e_os2.h.p11
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/memory.h.p22
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/no-alarm.p13
-rw-r--r--sdk/recipes/patches/openssl/ppc-amigaos/no-term.p24
37 files changed, 487 insertions, 231 deletions
diff --git a/sdk/recipes/patches/libcurl/m68k-unknown-amigaos/src.tool_operate.c.p b/sdk/recipes/patches/libcurl/m68k-unknown-amigaos/src.tool_operate.c.p
index 945f8a5..024cf92 100644
--- a/sdk/recipes/patches/libcurl/m68k-unknown-amigaos/src.tool_operate.c.p
+++ b/sdk/recipes/patches/libcurl/m68k-unknown-amigaos/src.tool_operate.c.p
@@ -1,6 +1,6 @@
---- src/tool_operate.c.orig 2015-02-24 21:49:02.000000000 +0000
-+++ src/tool_operate.c 2015-03-19 22:13:50.477958123 +0000
-@@ -1620,15 +1620,6 @@
+--- src/tool_operate.c.orig 2018-01-26 13:44:37.960724591 +0000
++++ src/tool_operate.c 2018-01-26 13:44:48.385035073 +0000
+@@ -1832,15 +1832,6 @@
}
}
@@ -13,6 +13,6 @@
- }
-#endif
-
- #ifdef HAVE_UTIME
+ #if defined(HAVE_UTIME) || \
+ (defined(WIN32) && (SIZEOF_CURL_OFF_T >= 8))
/* File time can only be set _after_ the file has been closed */
- if(!result && config->remote_time && outs.s_isreg && outs.filename) {
diff --git a/sdk/recipes/patches/libcurl/ppc-amigaos/lib.hostip4.c.p b/sdk/recipes/patches/libcurl/ppc-amigaos/lib.hostip4.c.p
index 9a2b590..b6287ca 100644
--- a/sdk/recipes/patches/libcurl/ppc-amigaos/lib.hostip4.c.p
+++ b/sdk/recipes/patches/libcurl/ppc-amigaos/lib.hostip4.c.p
@@ -1,6 +1,6 @@
---- lib/hostip4.c 2013-10-23 21:55:34.000000000 +0100
-+++ lib/hostip4.c 2014-01-30 10:19:46.900018967 +0000
-@@ -122,6 +122,11 @@ Curl_addrinfo *Curl_getaddrinfo(struct c
+--- lib/hostip4.c 2017-03-26 23:41:52.304617207 +0100
++++ lib/hostip4.c 2017-03-26 23:41:11.000000000 +0100
+@@ -119,6 +119,10 @@ Curl_addrinfo *Curl_getaddrinfo(struct c
* implying that only threadsafe code and function calls may be used.
*
*/
@@ -8,11 +8,10 @@
+#include <proto/exec.h>
+#include <proto/bsdsocket.h>
+#endif
-+
Curl_addrinfo *Curl_ipv4_resolve_r(const char *hostname,
int port)
{
-@@ -132,6 +137,9 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
+@@ -129,6 +133,9 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
struct hostent *h = NULL;
struct in_addr in;
struct hostent *buf = NULL;
@@ -22,7 +21,7 @@
if(Curl_inet_pton(AF_INET, hostname, &in) > 0)
/* This is a dotted IP address 123.123.123.123-style */
-@@ -294,7 +302,20 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
+@@ -291,7 +298,20 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
* gethostbyname() is the preferred one.
*/
else {
@@ -38,12 +37,12 @@
+ h = ISocket->gethostbyname((void*)hostname);
+ }
+#else
- h = gethostbyname((void*)hostname);
-+#endif
+ h = gethostbyname((void *)hostname);
++#endif
#endif /* HAVE_GETADDRINFO_THREADSAFE || HAVE_GETHOSTBYNAME_R */
}
-@@ -304,7 +325,14 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
+@@ -301,7 +321,14 @@ Curl_addrinfo *Curl_ipv4_resolve_r(const
if(buf) /* used a *_r() function */
free(buf);
}
diff --git a/sdk/recipes/patches/libcurl/ppc-amigaos/src.tool_operate.c.p b/sdk/recipes/patches/libcurl/ppc-amigaos/src.tool_operate.c.p
index 945f8a5..024cf92 100644
--- a/sdk/recipes/patches/libcurl/ppc-amigaos/src.tool_operate.c.p
+++ b/sdk/recipes/patches/libcurl/ppc-amigaos/src.tool_operate.c.p
@@ -1,6 +1,6 @@
---- src/tool_operate.c.orig 2015-02-24 21:49:02.000000000 +0000
-+++ src/tool_operate.c 2015-03-19 22:13:50.477958123 +0000
-@@ -1620,15 +1620,6 @@
+--- src/tool_operate.c.orig 2018-01-26 13:44:37.960724591 +0000
++++ src/tool_operate.c 2018-01-26 13:44:48.385035073 +0000
+@@ -1832,15 +1832,6 @@
}
}
@@ -13,6 +13,6 @@
- }
-#endif
-
- #ifdef HAVE_UTIME
+ #if defined(HAVE_UTIME) || \
+ (defined(WIN32) && (SIZEOF_CURL_OFF_T >= 8))
/* File time can only be set _after_ the file has been closed */
- if(!result && config->remote_time && outs.s_isreg && outs.filename) {
diff --git a/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.getprogname.c.p b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.getprogname.c.p
new file mode 100644
index 0000000..3d7938d
--- /dev/null
+++ b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.getprogname.c.p
@@ -0,0 +1,11 @@
+--- srclib/getprogname.c 2017-01-01 23:02:21.000000000 +0000
++++ srclib/getprogname.c 2017-03-26 23:21:25.532012988 +0100
+@@ -144,7 +144,7 @@ getprogname (void)
+ }
+ return p;
+ # else
+-# error "getprogname module not ported to this OS"
++ const char *p = ""; /* this is never used for anything important */
+ # endif
+ }
+
diff --git a/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.signal.in.h.p b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.signal.in.h.p
index 93ee6a9..8647b83 100644
--- a/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.signal.in.h.p
+++ b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.signal.in.h.p
@@ -1,12 +1,12 @@
---- srclib/signal.in.h.orig 2011-08-07 14:42:06.000000000 +0100
-+++ srclib/signal.in.h 2014-01-15 00:57:27.620548058 +0000
-@@ -168,69 +168,6 @@
-
- # endif
+--- srclib/signal.in.h 2017-01-01 23:02:22.000000000 +0000
++++ srclib/signal.in.h 2017-03-26 22:56:18.360017409 +0100
+@@ -211,69 +211,6 @@ typedef int verify_NSIG_constraint[NSIG
+ # undef sigismember
+ #endif
-/* Test whether a given signal is contained in a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigismember
-# endif
@@ -19,7 +19,7 @@
-
-/* Initialize a signal set to the empty set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigemptyset
-# endif
@@ -31,7 +31,7 @@
-
-/* Add a signal to a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigaddset
-# endif
@@ -44,7 +44,7 @@
-
-/* Remove a signal from a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigdelset
-# endif
@@ -57,7 +57,7 @@
-
-/* Fill a signal set with all possible signals. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigfillset
-# endif
diff --git a/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.unistd.in.h.p b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.unistd.in.h.p
index eecac92..2e1cf5e 100644
--- a/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.unistd.in.h.p
+++ b/sdk/recipes/patches/libiconv/m68k-unknown-amigaos/srclib.unistd.in.h.p
@@ -1,6 +1,6 @@
---- srclib/unistd.in.h.orig 2014-01-15 01:06:20.525844246 +0000
-+++ srclib/unistd.in.h 2014-01-15 01:06:48.717471325 +0000
-@@ -1145,40 +1145,6 @@
+--- srclib/unistd.in.h.orig 2017-03-27 23:12:52.149619622 +0100
++++ srclib/unistd.in.h 2017-03-27 23:13:12.582243962 +0100
+@@ -1262,40 +1262,6 @@
#endif
@@ -8,8 +8,8 @@
-/* Read the contents of the symbolic link FILE and place the first BUFSIZE
- bytes of it into BUF. Return the number of bytes placed into BUF if
- successful, otherwise -1 and errno set.
-- See the POSIX:2001 specification
-- <http://www.opengroup.org/susv3xsh/readlink.html>. */
+- See the POSIX:2008 specification
+- <http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>. */
-# if @REPLACE_READLINK@
-# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-# define readlink rpl_readlink
@@ -39,5 +39,5 @@
-
-
#if @GNULIB_READLINKAT@
- # if !@HAVE_READLINKAT@
- _GL_FUNCDECL_SYS (readlinkat, ssize_t,
+ # if @REPLACE_READLINKAT@
+ # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.getprogname.c.p b/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.getprogname.c.p
new file mode 100644
index 0000000..3d7938d
--- /dev/null
+++ b/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.getprogname.c.p
@@ -0,0 +1,11 @@
+--- srclib/getprogname.c 2017-01-01 23:02:21.000000000 +0000
++++ srclib/getprogname.c 2017-03-26 23:21:25.532012988 +0100
+@@ -144,7 +144,7 @@ getprogname (void)
+ }
+ return p;
+ # else
+-# error "getprogname module not ported to this OS"
++ const char *p = ""; /* this is never used for anything important */
+ # endif
+ }
+
diff --git a/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.signal.in.h.p b/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.signal.in.h.p
index 93ee6a9..8647b83 100644
--- a/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.signal.in.h.p
+++ b/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.signal.in.h.p
@@ -1,12 +1,12 @@
---- srclib/signal.in.h.orig 2011-08-07 14:42:06.000000000 +0100
-+++ srclib/signal.in.h 2014-01-15 00:57:27.620548058 +0000
-@@ -168,69 +168,6 @@
-
- # endif
+--- srclib/signal.in.h 2017-01-01 23:02:22.000000000 +0000
++++ srclib/signal.in.h 2017-03-26 22:56:18.360017409 +0100
+@@ -211,69 +211,6 @@ typedef int verify_NSIG_constraint[NSIG
+ # undef sigismember
+ #endif
-/* Test whether a given signal is contained in a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigismember
-# endif
@@ -19,7 +19,7 @@
-
-/* Initialize a signal set to the empty set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigemptyset
-# endif
@@ -31,7 +31,7 @@
-
-/* Add a signal to a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigaddset
-# endif
@@ -44,7 +44,7 @@
-
-/* Remove a signal from a signal set. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigdelset
-# endif
@@ -57,7 +57,7 @@
-
-/* Fill a signal set with all possible signals. */
-# if @HAVE_POSIX_SIGNALBLOCKING@
--/* This function is defined as a macro on MacOS X. */
+-/* This function is defined as a macro on Mac OS X. */
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-# undef sigfillset
-# endif
diff --git a/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.unistd.in.h.p b/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.unistd.in.h.p
deleted file mode 100644
index eecac92..0000000
--- a/sdk/recipes/patches/libiconv/ppc-amigaos/srclib.unistd.in.h.p
+++ /dev/null
@@ -1,43 +0,0 @@
---- srclib/unistd.in.h.orig 2014-01-15 01:06:20.525844246 +0000
-+++ srclib/unistd.in.h 2014-01-15 01:06:48.717471325 +0000
-@@ -1145,40 +1145,6 @@
- #endif
-
-
--#if @GNULIB_READLINK@
--/* Read the contents of the symbolic link FILE and place the first BUFSIZE
-- bytes of it into BUF. Return the number of bytes placed into BUF if
-- successful, otherwise -1 and errno set.
-- See the POSIX:2001 specification
-- <http://www.opengroup.org/susv3xsh/readlink.html>. */
--# if @REPLACE_READLINK@
--# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
--# define readlink rpl_readlink
--# endif
--_GL_FUNCDECL_RPL (readlink, ssize_t,
-- (const char *file, char *buf, size_t bufsize)
-- _GL_ARG_NONNULL ((1, 2)));
--_GL_CXXALIAS_RPL (readlink, ssize_t,
-- (const char *file, char *buf, size_t bufsize));
--# else
--# if !@HAVE_READLINK@
--_GL_FUNCDECL_SYS (readlink, ssize_t,
-- (const char *file, char *buf, size_t bufsize)
-- _GL_ARG_NONNULL ((1, 2)));
--# endif
--_GL_CXXALIAS_SYS (readlink, ssize_t,
-- (const char *file, char *buf, size_t bufsize));
--# endif
--_GL_CXXALIASWARN (readlink);
--#elif defined GNULIB_POSIXCHECK
--# undef readlink
--# if HAVE_RAW_DECL_READLINK
--_GL_WARN_ON_USE (readlink, "readlink is unportable - "
-- "use gnulib module readlink for portability");
--# endif
--#endif
--
--
- #if @GNULIB_READLINKAT@
- # if !@HAVE_READLINKAT@
- _GL_FUNCDECL_SYS (readlinkat, ssize_t,
diff --git a/sdk/recipes/patches/libjpegturbo/ppc-amigaos/jmemmgr.c.p b/sdk/recipes/patches/libjpegturbo/ppc-amigaos/jmemmgr.c.p
deleted file mode 100644
index f0bf615..0000000
--- a/sdk/recipes/patches/libjpegturbo/ppc-amigaos/jmemmgr.c.p
+++ /dev/null
@@ -1,10 +0,0 @@
---- jmemmgr.c.old 2016-10-05 22:58:26.559475774 +0000
-+++ jmemmgr.c 2016-10-05 23:00:00.731473878 +0000
-@@ -32,6 +32,7 @@
- #include "jinclude.h"
- #include "jpeglib.h"
- #include "jmemsys.h" /* import the system-dependent declarations */
-+#include <limits.h>
- #include <stdint.h>
-
- #ifndef NO_GETENV
diff --git a/sdk/recipes/patches/libjpegturbo/ppc-amigaos/simd.jsimd_powerpc.c.p b/sdk/recipes/patches/libjpegturbo/ppc-amigaos/simd.jsimd_powerpc.c.p
deleted file mode 100644
index 4220c5d..0000000
--- a/sdk/recipes/patches/libjpegturbo/ppc-amigaos/simd.jsimd_powerpc.c.p
+++ /dev/null
@@ -1,26 +0,0 @@
---- simd/jsimd_powerpc.c
-+++ simd/jsimd_powerpc.c
-@@ -14,6 +14,10 @@
- * PowerPC architecture.
- */
-
-+#ifdef __amigaos4__
-+#include <proto/exec.h>
-+#endif
-+
- #define JPEG_INTERNALS
- #include "../jinclude.h"
- #include "../jpeglib.h"
-@@ -116,6 +120,11 @@ init_simd (void)
- if (bufsize > SOMEWHAT_SANE_PROC_CPUINFO_SIZE_LIMIT)
- break;
- }
-+#elif defined(__amigaos4__)
-+ uint32 altivec = 0;
-+ IExec->GetCPUInfoTags(GCIT_VectorUnit, &altivec, TAG_DONE);
-+ if(altivec == VECTORTYPE_ALTIVEC)
-+ simd_support |= JSIMD_ALTIVEC;
- #endif
-
- /* Force different settings through environment variables */
-
diff --git a/sdk/recipes/patches/openssl/Configurations-50-amigaos.conf.p b/sdk/recipes/patches/openssl/Configurations-50-amigaos.conf.p
new file mode 100644
index 0000000..3012ad2
--- /dev/null
+++ b/sdk/recipes/patches/openssl/Configurations-50-amigaos.conf.p
@@ -0,0 +1,34 @@
+--- /dev/null 2017-10-10 15:19:45.611896396 +0100
++++ Configurations/50-amigaos.conf 2017-10-17 15:42:25.304921197 +0100
+@@ -0,0 +1,31 @@
++%targets = (
++
++ "ppc-amigaos" => {
++ inherit_from => [ "BASE_unix", asm("ppc32_asm") ],
++ cc => "ppc-amigaos-gcc",
++ cflags => picker(default => "-DB_ENDIAN -DTERMIOS -DNO_SYS_UN_H -DNO_SYSLOG",
++ debug => "-O0 -g",
++ release => "-O3 -fomit-frame-pointer",
++ threads("-D_REENTRANT")),
++ thread_scheme => "(unknown)",
++ perlasm_scheme => "linux32",
++ sys_id => "AMIGAOS4",
++ bn_ops => "THIRTY_TWO_BIT BN_LLONG RC4_CHAR",
++ ranlib => "ppc-amigaos-ranlib",
++ },
++
++ "m68k-unknown-amigaos" => {
++ inherit_from => [ "BASE_unix" ],
++ cc => "m68k-unknown-amigaos-gcc",
++ cflags => picker(default => "-DB_ENDIAN -DTERMIOS -DNO_SYS_UN_H -DNO_SYS_PARAM_H -DNO_SYSLOG -m68020 -std=gnu99",
++ debug => "-O0 -g",
++ release => "-O3 -fomit-frame-pointer",
++ threads("-D_REENTRANT")),
++ thread_scheme => "(unknown)",
++ ex_libs => add("-lm -lnet"),
++ sys_id => "AMIGAOS3",
++ bn_ops => "THIRTY_TWO_BIT BN_LLONG",
++ bn_asm_src => "asm/bn_m68k.s",
++ ranlib => "m68k-unknown-amigaos-ranlib",
++ },
++);
diff --git a/sdk/recipes/patches/openssl/Configurations-50-riscos.conf.p b/sdk/recipes/patches/openssl/Configurations-50-riscos.conf.p
new file mode 100644
index 0000000..128d400
--- /dev/null
+++ b/sdk/recipes/patches/openssl/Configurations-50-riscos.conf.p
@@ -0,0 +1,17 @@
+--- /dev/null 2017-10-10 15:19:45.611896396 +0100
++++ Configurations/50-riscos.conf 2017-10-17 15:42:25.304921197 +0100
+@@ -0,0 +1,14 @@
++%targets = (
++
++ "arm-unknown-riscos" => {
++ inherit_from => [ "BASE_unix" ],
++ cc => "arm-unknown-riscos-gcc",
++ cflags => picker(default => "-DL_ENDIAN -DTERMIOS -DNO_SYS_UN_H",
++ debug => "-O0 -g",
++ release => "-O3 ",
++ threads("-D_REENTRANT")),
++ thread_scheme => "(unknown)",
++ sys_id => "RISCOS",
++ bn_ops => "BN_LLONG",
++ },
++);
diff --git a/sdk/recipes/patches/openssl/Configurations-50-windows.conf.p b/sdk/recipes/patches/openssl/Configurations-50-windows.conf.p
new file mode 100644
index 0000000..c492c01
--- /dev/null
+++ b/sdk/recipes/patches/openssl/Configurations-50-windows.conf.p
@@ -0,0 +1,28 @@
+--- /dev/null 2017-10-10 15:19:45.611896396 +0100
++++ Configurations/50-windows.conf 2017-10-17 15:42:25.304921197 +0100
+@@ -0,0 +1,25 @@
++%targets = (
++
++ "i686-w64-mingw32" => {
++ inherit_from => [ "BASE_unix", asm("x86_asm"),
++ sub { $disabled{shared} ? () : "x86_uplink" } ],
++ cc => "gcc",
++ cflags => combine(picker(default => "-DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE -m32 -Wall",
++ debug => "-g -O0",
++ release => "-O3 -fomit-frame-pointer"),
++ threads("-D_MT")),
++ sys_id => "MINGW32",
++ ex_libs => add("-lws2_32 -lgdi32 -lcrypt32"),
++ bn_ops => "BN_LLONG EXPORT_VAR_AS_FN",
++ thread_scheme => "winthreads",
++ perlasm_scheme => "coff",
++ dso_scheme => "win32",
++ shared_target => "mingw-shared",
++ shared_cflag => add("-D_WINDLL"),
++ shared_ldflag => "-static-libgcc",
++ shared_rcflag => "--target=pe-i386",
++ shared_extension => ".dll",
++ multilib => "",
++ apps_aux_src => add("win32_init.c"),
++ },
++);
diff --git a/sdk/recipes/patches/openssl/Configure.p b/sdk/recipes/patches/openssl/Configure.p
index 9d4ba20..c26e08b 100644
--- a/sdk/recipes/patches/openssl/Configure.p
+++ b/sdk/recipes/patches/openssl/Configure.p
@@ -1,24 +1,10 @@
---- Configure.old 2010-12-29 02:43:14.000000000 +0000
-+++ Configure 2010-12-29 02:45:29.000000000 +0000
-@@ -440,6 +440,13 @@
- "beos-x86-r5", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lnet:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC -DPIC:-shared:.so",
- "beos-x86-bone", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lbind -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC:-shared:.so",
+--- Configure.orig 2017-10-17 14:53:18.369801491 +0100
++++ Configure 2017-10-17 15:11:04.312242542 +0100
+@@ -946,6 +946,7 @@
+ $target{exe_extension}=".exe" if ($config{target} eq "DJGPP"
+ || $config{target} =~ /^(?:Cygwin|mingw)/);
+ $target{exe_extension}=".pm" if ($config{target} =~ /vos/);
++$target{exe_extension}=",e1f" if ($config{target} eq "arm-unknown-riscos");
-+"arm-unknown-riscos","arm-unknown-riscos-gcc:-DL_ENDIAN -DTERMIOS -DNO_SYS_UN_H -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:::BN_LLONG DES_RISC1::::::::::::::::::::echo",
-+"m68k-atari-mint","m68k-atari-mint-gcc:-DB_ENDIAN -DTERMIOS -DNO_SYSLOG -DNO_SYS_UN_H -DOPENSSL_USE_IPV6=0 -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:::BN_LLONG DES_RISC1::::::::::::::::::::m68k-atari-mint-ranlib",
-+"m5475-atari-mint","m5475-atari-mint-gcc:-DB_ENDIAN -DTERMIOS -DNO_SYSLOG -DNO_SYS_UN_H -DOPENSSL_USE_IPV6=0 -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:::BN_LLONG DES_RISC1::::::::::::::::::::m5475-atari-mint-ranlib",
-+"m68k-unknown-amigaos","m68k-unknown-amigaos-gcc:-DB_ENDIAN -DOPENSSL_SYS_AMIGAOS3 -DNO_SYSLOG -DHAVE_FORK=0 -DNO_SYS_PARAM_H -DNO_SYS_UN_H -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnet -lm:BN_LLONG DES_RISC1::::::::::::::::::::m68k-unknown-amigaos-ranlib",
-+"ppc-amigaos","ppc-amigaos-gcc:-DB_ENDIAN -DOPENSSL_SYS_AMIGAOS4 -DNO_SYSLOG -DHAVE_FORK=0 -DNO_SYS_PARAM_H -DNO_SYS_UN_H -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:::BN_LLONG DES_RISC1::::::::::::::::::::ppc-amigaos-ranlib",
-+"i686-w64-mingw32", "gcc:-DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a",
-+
- #### SCO/Caldera targets.
- #
- # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc.
-@@ -1123,6 +1130,7 @@
- my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
-
- $exe_ext=".exe" if ($target eq "Cygwin" || $target eq "DJGPP" || $target =~ /^mingw/);
-+$exe_ext=",e1f" if ($target eq "arm-unknown-riscos");
- $exe_ext=".nlm" if ($target =~ /netware/);
- $exe_ext=".pm" if ($target =~ /vos/);
- $openssldir="/usr/local/ssl" if ($openssldir eq "" and $prefix eq "");
+ ($target{shared_extension_simple}=$target{shared_extension})
+ =~ s|\.\$\(SHLIB_MAJOR\)\.\$\(SHLIB_MINOR\)||;
diff --git a/sdk/recipes/patches/openssl/apps.speed.c.p b/sdk/recipes/patches/openssl/apps.speed.c.p
new file mode 100644
index 0000000..88ae1c3
--- /dev/null
+++ b/sdk/recipes/patches/openssl/apps.speed.c.p
@@ -0,0 +1,28 @@
+--- apps/speed.c.orig 2017-11-22 08:07:53.851790744 +0000
++++ apps/speed.c 2017-11-22 08:15:49.608768064 +0000
+@@ -111,6 +111,12 @@
+ #endif
+ #include <openssl/modes.h>
+
++
++#if defined(OPENSSL_SYS_AMIGAOS3) || defined(OPENSSL_SYS_AMIGAOS4)
++# define HAVE_FORK 0
++# undef SIGALRM
++#endif
++
+ #ifndef HAVE_FORK
+ # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS)
+ # define HAVE_FORK 0
+--- apps/speed.c.orig 2017-11-22 08:33:02.137445746 +0000
++++ apps/speed.c 2017-11-22 08:36:00.833790589 +0000
+@@ -345,8 +345,10 @@
+ static double Time_F(int s)
+ {
+ double ret = app_tminterval(s, usertime);
++ #ifdef SIGALRM
+ if (s == STOP)
+ alarm(0);
++ #endif
+ return ret;
+ }
+ #endif
diff --git a/sdk/recipes/patches/openssl/aps.opt.c.p b/sdk/recipes/patches/openssl/aps.opt.c.p
new file mode 100644
index 0000000..531cf76
--- /dev/null
+++ b/sdk/recipes/patches/openssl/aps.opt.c.p
@@ -0,0 +1,14 @@
+--- apps/opt.c.orig 2017-11-22 08:42:07.605882648 +0000
++++ apps/opt.c 2017-11-22 08:48:31.712843519 +0000
+@@ -353,6 +353,11 @@
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L && \
+ defined(INTMAX_MAX) && defined(UINTMAX_MAX)
+
++#if defined(OPENSSL_SYS_AMIGAOS3) || defined(OPENSSL_SYS_AMIGAOS4)
++# define strtoimax strtol
++# define strtoumax strtoul
++#endif
++
+ /* Parse an intmax_t, put it into *result; return 0 on failure, else 1. */
+ int opt_imax(const char *value, intmax_t *result)
+ {
diff --git a/sdk/recipes/patches/openssl/bio_lcl.h.p b/sdk/recipes/patches/openssl/bio_lcl.h.p
new file mode 100644
index 0000000..feae76f
--- /dev/null
+++ b/sdk/recipes/patches/openssl/bio_lcl.h.p
@@ -0,0 +1,11 @@
+--- crypto/bio/bio_lcl.h.orig 2017-10-17 16:19:36.908150231 +0100
++++ crypto/bio/bio_lcl.h 2017-10-17 16:19:52.056631064 +0100
+@@ -36,7 +36,7 @@
+ /*
+ * Undefine AF_UNIX on systems that define it but don't support it.
+ */
+-# if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_VMS)
++# if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_RISCOS) || defined(OPENSSL_SYS_AMIGAOS3) || defined(OPENSSL_SYS_AMIGAOS4)
+ # undef AF_UNIX
+ # endif
+
diff --git a/sdk/recipes/patches/openssl/crypto.pkcs7.bio_pk7.c.p b/sdk/recipes/patches/openssl/crypto.pkcs7.bio_pk7.c.p
new file mode 100644
index 0000000..ac43e2d
--- /dev/null
+++ b/sdk/recipes/patches/openssl/crypto.pkcs7.bio_pk7.c.p
@@ -0,0 +1,15 @@
+--- crypto/pkcs7/bio_pk7.c.orig 2017-11-22 07:58:17.501346816 +0000
++++ crypto/pkcs7/bio_pk7.c 2017-11-22 08:00:09.130073671 +0000
+@@ -12,7 +12,11 @@
+ #include <openssl/bio.h>
+
+ #if !defined(OPENSSL_SYS_VXWORKS)
+-# include <memory.h>
++# if !defined(OPENSSL_SYS_AMIGAOS3) && !defined(OPENSSL_SYS_AMIGAOS4)
++# include <memory.h>
++# else
++# include <string.h>
++# endif
+ #endif
+ #include <stdio.h>
+
diff --git a/sdk/recipes/patches/openssl/crypto.rand.rand_unix.c.p b/sdk/recipes/patches/openssl/crypto.rand.rand_unix.c.p
new file mode 100644
index 0000000..a4513f2
--- /dev/null
+++ b/sdk/recipes/patches/openssl/crypto.rand.rand_unix.c.p
@@ -0,0 +1,11 @@
+--- crypto/rand/rand_unix.c.orig 2017-11-22 11:25:03.096636507 +0000
++++ crypto/rand/rand_unix.c 2017-11-22 11:25:52.649406308 +0000
+@@ -15,7 +15,7 @@
+ #include <openssl/rand.h>
+ #include "rand_lcl.h"
+
+-#if !(defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_VXWORKS) || defined(OPENSSL_SYS_UEFI))
++#if !(defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_VXWORKS) || defined(OPENSSL_SYS_UEFI) || defined(OPENSSL_SYS_AMIGAOS3) || defined(OPENSSL_SYS_AMIGAOS4))
+
+ # include <sys/types.h>
+ # include <sys/time.h>
diff --git a/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.Makefile.p b/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.Makefile.p
new file mode 100644
index 0000000..8d3bfc6
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.Makefile.p
@@ -0,0 +1,12 @@
+--- crypto/bn/Makefile 2017-01-26 13:22:03.000000000 +0000
++++ crypto/bn/Makefile 2017-02-11 15:24:31.133017711 +0000
+@@ -60,6 +60,9 @@ lib: $(LIBOBJ)
+ $(RANLIB) $(LIB) || echo Never mind.
+ @touch lib
+
++bn_m68k.o: asm/bn_m68k.s
++ $(CC) $(CFLAGS) -c -o $@ asm/bn_m68k.s
++
+ bn-586.s: asm/bn-586.pl ../perlasm/x86asm.pl
+ $(PERL) asm/bn-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
+ co-586.s: asm/co-586.pl ../perlasm/x86asm.pl
diff --git a/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.bn_div.c.p b/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.bn_div.c.p
new file mode 100644
index 0000000..0d5492f
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-atari-mint/crypto.bn.bn_div.c.p
@@ -0,0 +1,25 @@
+--- crypto/bn/bn_div.c 2017-01-26 13:22:03.000000000 +0000
++++ crypto/bn/bn_div.c 2017-02-11 16:06:29.437010335 +0000
+@@ -175,6 +175,22 @@ int BN_div(BIGNUM *dv, BIGNUM *rem, cons
+ q; \
+ })
+ # define REMAINDER_IS_ALREADY_CALCULATED
++# elif defined(__mc68020__)
++ /* Same rationale as for i386. On the 68020-60/CPU32 the divu
++ * instruction will take a 64 bit dividend in a register pair
++ * and overwrite that pair with the remainder:quotient.
++ * Howard Chu
++ */
++# undef bn_div_words
++# define bn_div_words(n0,n1,d0) \
++ ({ asm volatile ( \
++ "divu.l %4,%2:%3" \
++ : "=d"(rem), "=d"(q) \
++ : "0"(n0), "1"(n1), "d"(d0) \
++ : "cc"); \
++ q; \
++ })
++# define REMAINDER_IS_ALREADY_CALCULATED
+ # endif /* __<cpu> */
+ # endif /* __GNUC__ */
+ # endif /* OPENSSL_NO_ASM */
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bio.b_sock2.c.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bio.b_sock2.c.p
new file mode 100644
index 0000000..1d506af
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bio.b_sock2.c.p
@@ -0,0 +1,36 @@
+--- crypto/bio/b_sock2.c.orig 2017-11-23 12:39:17.912640213 +0000
++++ crypto/bio/b_sock2.c 2017-11-23 12:41:56.350294762 +0000
+@@ -94,6 +94,7 @@
+ }
+ }
+
++#if defined(TCP_NODELAY)
+ if (options & BIO_SOCK_NODELAY) {
+ if (setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, &on, sizeof(on)) != 0) {
+ SYSerr(SYS_F_SETSOCKOPT, get_last_socket_error());
+@@ -101,6 +102,7 @@
+ return 0;
+ }
+ }
++#endif
+
+ if (connect(sock, BIO_ADDR_sockaddr(addr),
+ BIO_ADDR_sockaddr_size(addr)) == -1) {
+--- crypto/bio/b_sock2.c.orig 2017-11-23 12:43:56.318461652 +0000
++++ crypto/bio/b_sock2.c 2017-11-23 12:44:36.139861658 +0000
+@@ -193,6 +193,7 @@
+ }
+ }
+
++#if defined(TCP_NODELAY)
+ if (options & BIO_SOCK_NODELAY) {
+ if (setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, &on, sizeof(on)) != 0) {
+ SYSerr(SYS_F_SETSOCKOPT, get_last_socket_error());
+@@ -200,6 +201,7 @@
+ return 0;
+ }
+ }
++#endif
+
+ # ifdef IPV6_V6ONLY
+ if ((options & BIO_SOCK_V6_ONLY) && BIO_ADDR_family(addr) == AF_INET6) {
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bn.bn_div.c.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bn.bn_div.c.p
new file mode 100644
index 0000000..0d5492f
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.bn.bn_div.c.p
@@ -0,0 +1,25 @@
+--- crypto/bn/bn_div.c 2017-01-26 13:22:03.000000000 +0000
++++ crypto/bn/bn_div.c 2017-02-11 16:06:29.437010335 +0000
+@@ -175,6 +175,22 @@ int BN_div(BIGNUM *dv, BIGNUM *rem, cons
+ q; \
+ })
+ # define REMAINDER_IS_ALREADY_CALCULATED
++# elif defined(__mc68020__)
++ /* Same rationale as for i386. On the 68020-60/CPU32 the divu
++ * instruction will take a 64 bit dividend in a register pair
++ * and overwrite that pair with the remainder:quotient.
++ * Howard Chu
++ */
++# undef bn_div_words
++# define bn_div_words(n0,n1,d0) \
++ ({ asm volatile ( \
++ "divu.l %4,%2:%3" \
++ : "=d"(rem), "=d"(q) \
++ : "0"(n0), "1"(n1), "d"(d0) \
++ : "cc"); \
++ q; \
++ })
++# define REMAINDER_IS_ALREADY_CALCULATED
+ # endif /* __<cpu> */
+ # endif /* __GNUC__ */
+ # endif /* OPENSSL_NO_ASM */
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.include.internal.md32_common.h.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.include.internal.md32_common.h.p
new file mode 100644
index 0000000..7447d54
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.include.internal.md32_common.h.p
@@ -0,0 +1,36 @@
+--- crypto/include/internal/md32_common.h 2017-11-02 14:29:03.000000000 +0000
++++ crypto/include/internal/md32_common.h 2018-07-23 20:12:11.228066913 +0100
+@@ -182,6 +182,9 @@
+ # define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, (l))
+ # endif
+ # endif
++# elif defined(__mc68020)
++# define HOST_c2l(c,l) ({ asm volatile ("movel %0@+,%1" : "=a"(c), "=d"(l) : "0"(c)); })
++# define HOST_l2c(l,c) ({ asm volatile ("movel %1,%0@+" : "=a"(c) : "d"(l), "0"(c)); })
+ # endif
+ # endif
+ # if defined(__s390__) || defined(__s390x__)
+@@ -215,6 +218,22 @@
+ # define HOST_l2c(l,c) ({ asm ("strv %1,%0" \
+ :"=m"(*(unsigned int *)(c)) :"d"(l));\
+ (c)+=4; (l); })
++# elif defined(__mc68020)
++# define HOST_c2l(c,l) ({ unsigned int r; \
++ asm volatile ("movel %1@+,%0\n" \
++ "rorw #8,%0\n" \
++ "swap %0\n" \
++ "rorw #8,%0\n" \
++ : "=d"(r), "=a"(c) \
++ : "1"(c)); \
++ (l)=r; })
++# define HOST_l2c(l,c) ({ unsigned int r=(l); \
++ asm volatile ("rorw #8,%0\n" \
++ "swap %0\n" \
++ "rorw #8,%0\n" \
++ "movel %0,%1@+\n" \
++ : "=d"(r), "=a"(c) \
++ : "0"(r), "1"(c)); })
+ # endif
+ # endif
+ # if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__)
+
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.rand.build.info.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.rand.build.info.p
new file mode 100644
index 0000000..58b672f
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.rand.build.info.p
@@ -0,0 +1,9 @@
+--- crypto/rand/build.info.orig 2017-11-22 11:36:06.585363219 +0000
++++ crypto/rand/build.info 2017-11-22 11:36:39.267232034 +0000
+@@ -1,4 +1,4 @@
+ LIBS=../../libcrypto
+ SOURCE[../../libcrypto]=\
+- md_rand.c randfile.c rand_lib.c rand_err.c rand_egd.c \
+- rand_win.c rand_unix.c rand_vms.c
++ md_rand.c randfile.c rand_lib.c rand_err.c rand_amiga.c \
++ rand_egd.c rand_win.c rand_unix.c rand_vms.c
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.ui.ui_openssl.c.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.ui.ui_openssl.c.p
new file mode 100644
index 0000000..0448499
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/crypto.ui.ui_openssl.c.p
@@ -0,0 +1,21 @@
+--- crypto/ui/ui_openssl.c.orig 2017-11-23 13:22:15.760078583 +0000
++++ crypto/ui/ui_openssl.c 2017-11-23 13:21:40.534382076 +0000
+@@ -99,6 +99,18 @@
+
+ #endif
+
++#if defined(OPENSSL_SYS_AMIGAOS3)
++#undef TERMIOS
++#undef TERMIO
++#undef SGTTY
++struct termios { int foo; };
++# define TTY_STRUCT struct termios
++# define TTY_FLAGS foo
++# define TTY_get(tty,data) /* tcgetattr(tty,data) */ -1
++# define TTY_set(tty,data) /* tcsetattr(tty,TCSANOW,data) */ 0
++# define ECHO 0
++#endif
++
+ #ifdef TERMIOS
+ # include <termios.h>
+ # define TTY_STRUCT struct termios
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/include.openssl.e_os2.h.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/include.openssl.e_os2.h.p
new file mode 100644
index 0000000..6ea1ec8
--- /dev/null
+++ b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/include.openssl.e_os2.h.p
@@ -0,0 +1,11 @@
+--- include/openssl/e_os2.h.orig 2017-11-21 23:09:39.684814614 +0000
++++ include/openssl/e_os2.h 2017-11-21 23:10:32.501369938 +0000
+@@ -223,6 +223,8 @@
+ # define OSSL_SSIZE_MAX SSIZE_MAX
+ # elif defined(_POSIX_SSIZE_MAX)
+ # define OSSL_SSIZE_MAX _POSIX_SSIZE_MAX
++# else
++# define OSSL_SSIZE_MAX INT_MAX
+ # endif
+ # endif
+
diff --git a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/no-term.p b/sdk/recipes/patches/openssl/m68k-unknown-amigaos/no-term.p
deleted file mode 100644
index 890cef3..0000000
--- a/sdk/recipes/patches/openssl/m68k-unknown-amigaos/no-term.p
+++ /dev/null
@@ -1,24 +0,0 @@
---- crypto/ui/ui_openssl.c.orig 2011-03-08 22:37:51.000000000 +0000
-+++ crypto/ui/ui_openssl.c 2011-03-08 22:39:00.000000000 +0000
-@@ -218,6 +218,12 @@
-
- #endif
-
-+#if defined(OPENSSL_SYS_AMIGAOS3)
-+#undef TERMIOS
-+#undef TERMIO
-+#undef SGTTY
-+#endif
-+
- #ifdef TERMIOS
- # include <termios.h>
- # define TTY_STRUCT struct termios
-@@ -266,7 +272,7 @@
- typedef int sig_atomic_t;
- #endif
-
--#if defined(OPENSSL_SYS_MACINTOSH_CLASSIC) || defined(MAC_OS_GUSI_SOURCE) || defined(OPENSSL_SYS_NETWARE)
-+#if defined(OPENSSL_SYS_MACINTOSH_CLASSIC) || defined(MAC_OS_GUSI_SOURCE) || defined(OPENSSL_SYS_NETWARE) || defined(OPENSSL_SYS_AMIGAOS3)
- /*
- * This one needs work. As a matter of fact the code is unoperational
- * and this is only a trick to get it compiled.
diff --git a/sdk/recipes/patches/openssl/mem_sec.c.p b/sdk/recipes/patches/openssl/mem_sec.c.p
new file mode 100644
index 0000000..156cc93
--- /dev/null
+++ b/sdk/recipes/patches/openssl/mem_sec.c.p
@@ -0,0 +1,11 @@
+--- crypto/mem_sec.c.orig 2017-10-17 16:46:24.923285526 +0100
++++ crypto/mem_sec.c 2017-10-17 16:48:00.358325267 +0100
+@@ -24,7 +24,7 @@
+
+ #include <string.h>
+
+-#if defined(OPENSSL_SYS_LINUX) || defined(OPENSSL_SYS_UNIX)
++#if ! defined(OPENSSL_SYS_RISCOS) && ! defined(OPENSSL_SYS_AMIGAOS3) && ! defined(OPENSSL_SYS_AMIGAOS4) && (defined(OPENSSL_SYS_LINUX) || defined(OPENSSL_SYS_UNIX))
+ # define IMPLEMENTED
+ # include <stdlib.h>
+ # include <assert.h>
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/crypto.bio_b_addr.c.p b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.bio_b_addr.c.p
new file mode 100644
index 0000000..dd10e8c
--- /dev/null
+++ b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.bio_b_addr.c.p
@@ -0,0 +1,11 @@
+--- crypto/bio/b_addr.c.orig 2017-11-21 22:49:00.185608040 +0000
++++ crypto/bio/b_addr.c 2017-11-21 22:49:21.488219518 +0000
+@@ -854,7 +854,7 @@
+ addrlistp++)
+ ;
+
+- for(addresses = addrlistp - he->h_addr_list;
++ for(addresses = addrlistp - (char **)he->h_addr_list;
+ addrlistp--, addresses-- > 0; ) {
+ if (!addrinfo_wrap(he->h_addrtype, socktype,
+ *addrlistp, he->h_length,
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..56949ca
--- /dev/null
+++ b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.ppccap.c.p
@@ -0,0 +1,36 @@
+--- crypto/ppccap.c.orig 2017-11-22 13:14:44.655536374 +0000
++++ crypto/ppccap.c 2017-11-22 13:16:03.666387174 +0000
+@@ -135,6 +135,8 @@
+ }
+ #endif
+
++#ifndef OPENSSL_SYS_AMIGAOS4
++
+ static sigjmp_buf ill_jmp;
+ static void ill_handler(int sig)
+ {
+@@ -341,3 +343,24 @@
+ 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 = 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
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/crypto.rand.build.info.p b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.rand.build.info.p
new file mode 100644
index 0000000..58b672f
--- /dev/null
+++ b/sdk/recipes/patches/openssl/ppc-amigaos/crypto.rand.build.info.p
@@ -0,0 +1,9 @@
+--- crypto/rand/build.info.orig 2017-11-22 11:36:06.585363219 +0000
++++ crypto/rand/build.info 2017-11-22 11:36:39.267232034 +0000
+@@ -1,4 +1,4 @@
+ LIBS=../../libcrypto
+ SOURCE[../../libcrypto]=\
+- md_rand.c randfile.c rand_lib.c rand_err.c rand_egd.c \
+- rand_win.c rand_unix.c rand_vms.c
++ md_rand.c randfile.c rand_lib.c rand_err.c rand_amiga.c \
++ rand_egd.c rand_win.c rand_unix.c rand_vms.c
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/include.openssl.e_os2.h.p b/sdk/recipes/patches/openssl/ppc-amigaos/include.openssl.e_os2.h.p
new file mode 100644
index 0000000..6ea1ec8
--- /dev/null
+++ b/sdk/recipes/patches/openssl/ppc-amigaos/include.openssl.e_os2.h.p
@@ -0,0 +1,11 @@
+--- include/openssl/e_os2.h.orig 2017-11-21 23:09:39.684814614 +0000
++++ include/openssl/e_os2.h 2017-11-21 23:10:32.501369938 +0000
+@@ -223,6 +223,8 @@
+ # define OSSL_SSIZE_MAX SSIZE_MAX
+ # elif defined(_POSIX_SSIZE_MAX)
+ # define OSSL_SSIZE_MAX _POSIX_SSIZE_MAX
++# else
++# define OSSL_SSIZE_MAX INT_MAX
+ # endif
+ # endif
+
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/memory.h.p b/sdk/recipes/patches/openssl/ppc-amigaos/memory.h.p
deleted file mode 100644
index 4da5a6d..0000000
--- a/sdk/recipes/patches/openssl/ppc-amigaos/memory.h.p
+++ /dev/null
@@ -1,22 +0,0 @@
---- crypto/jpake/jpake.c.orig 2011-03-08 22:19:36.000000000 +0000
-+++ crypto/jpake/jpake.c 2011-03-08 22:19:49.000000000 +0000
-@@ -3,7 +3,7 @@
- #include <openssl/crypto.h>
- #include <openssl/sha.h>
- #include <openssl/err.h>
--#include <memory.h>
-+#include <string.h>
-
- /*
- * In the definition, (xa, xb, xc, xd) are Alice's (x1, x2, x3, x4) or
---- crypto/pkcs7/bio_pk7.c.orig 2011-03-08 22:21:16.000000000 +0000
-+++ crypto/pkcs7/bio_pk7.c 2011-03-08 22:21:23.000000000 +0000
-@@ -58,7 +58,7 @@
- #include <openssl/bio.h>
-
- #if !defined(OPENSSL_SYSNAME_NETWARE) && !defined(OPENSSL_SYSNAME_VXWORKS)
--# include <memory.h>
-+# include <string.h>
- #endif
- #include <stdio.h>
-
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/no-alarm.p b/sdk/recipes/patches/openssl/ppc-amigaos/no-alarm.p
deleted file mode 100644
index 1a287b1..0000000
--- a/sdk/recipes/patches/openssl/ppc-amigaos/no-alarm.p
+++ /dev/null
@@ -1,13 +0,0 @@
---- apps/speed.c.orig 2011-03-08 22:44:56.000000000 +0000
-+++ apps/speed.c 2011-03-08 22:48:10.000000000 +0000
-@@ -225,6 +225,10 @@
- # define NO_FORK
- # endif
-
-+# ifdef OPENSSL_SYS_AMIGAOS4
-+# undef SIGALRM
-+# endif
-+
- # undef BUFSIZE
- # define BUFSIZE ((long)1024*8+1)
- static volatile int run = 0;
diff --git a/sdk/recipes/patches/openssl/ppc-amigaos/no-term.p b/sdk/recipes/patches/openssl/ppc-amigaos/no-term.p
deleted file mode 100644
index d8d4d1c..0000000
--- a/sdk/recipes/patches/openssl/ppc-amigaos/no-term.p
+++ /dev/null
@@ -1,24 +0,0 @@
---- crypto/ui/ui_openssl.c.orig 2011-03-08 22:37:51.000000000 +0000
-+++ crypto/ui/ui_openssl.c 2011-03-08 22:39:00.000000000 +0000
-@@ -218,6 +218,12 @@
-
- #endif
-
-+#if defined(OPENSSL_SYS_AMIGAOS4)
-+#undef TERMIOS
-+#undef TERMIO
-+#undef SGTTY
-+#endif
-+
- #ifdef TERMIOS
- # include <termios.h>
- # define TTY_STRUCT struct termios
-@@ -266,7 +272,7 @@
- typedef int sig_atomic_t;
- #endif
-
--#if defined(OPENSSL_SYS_MACINTOSH_CLASSIC) || defined(MAC_OS_GUSI_SOURCE) || defined(OPENSSL_SYS_NETWARE)
-+#if defined(OPENSSL_SYS_MACINTOSH_CLASSIC) || defined(MAC_OS_GUSI_SOURCE) || defined(OPENSSL_SYS_NETWARE) || defined(OPENSSL_SYS_AMIGAOS4)
- /*
- * This one needs work. As a matter of fact the code is unoperational
- * and this is only a trick to get it compiled.