Commit 92c78463 authored by Rich Salz's avatar Rich Salz
Browse files

RT3544: Remove MWERKS support



The following #ifdef tests were all removed:
	__MWERKS__
	MAC_OS_pre_X
	MAC_OS_GUSI_SOURCE
	MAC_OS_pre_X
	OPENSSL_SYS_MACINTOSH_CLASSIC
	OPENSSL_SYS_MACOSX_RHAPSODY

Reviewed-by: default avatarAndy Polyakov <appro@openssl.org>
parent 4aac102f
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -593,8 +593,7 @@ my %table=(
# K&R C is no longer supported; you need gcc on old Ultrix installations
##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown):::::::",

##### MacOS X (a.k.a. Rhapsody or Darwin) setup
"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown):MACOSX_RHAPSODY::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::",
##### MacOS X (a.k.a. Darwin) setup
"darwin-ppc-cc","cc:-arch ppc -O3 -DB_ENDIAN -Wa,-force_cpusubtype_ALL::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc32_asm}:osx32:dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"darwin64-ppc-cc","cc:-arch ppc64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc64_asm}:osx64:dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"darwin-i386-cc","cc:-arch i386 -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:".eval{my $asm=$x86_asm;$asm=~s/cast\-586\.o//;$asm}.":macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",

INSTALL.MacOS

deleted100644 → 0
+0 −72
Original line number Diff line number Diff line
OpenSSL - Port To The Macintosh OS 9 or Earlier
===============================================

Thanks to Roy Wood <roy@centricsystems.ca> initial support for Mac OS (pre
X) is now provided. "Initial" means that unlike other platforms where you
get an SDK and a "swiss army" openssl application, on Macintosh you only
get one sample application which fetches a page over HTTPS(*) and dumps it
in a window. We don't even build the test applications so that we can't
guarantee that all algorithms are operational.

Required software:

- StuffIt Expander 5.5 or later, alternatively MacGzip and SUNtar;
- Scriptable Finder;
- CodeWarrior Pro 5;

Installation procedure:

- fetch the source at ftp://ftp.openssl.org/ (well, you probably already
  did, huh?)
- unpack the .tar.gz file:
	- if you have StuffIt Expander then just drag it over it;
	- otherwise uncompress it with MacGzip and then unpack with SUNtar;
- locate MacOS folder in OpenSSL source tree and open it;
- unbinhex mklinks.as.hqx and OpenSSL.mcp.hqx if present (**), do it
  "in-place", i.e. unpacked files should end-up in the very same folder;
- execute mklinks.as;
- open OpenSSL.mcp(***) and build 'GetHTTPS PPC' target(****);
- that's it for now;

(*)	URL is hardcoded into ./MacOS/GetHTTPS.src/GetHTTPS.cpp, lines 40
        to 42, change appropriately.
(**)	If you use SUNtar, then it might have already unbinhexed the files
	in question.
(***)	The project file was saved with CW Pro 5.3. If you have an earlier
	version and it refuses to open it, then download
	http://www.openssl.org/~appro/OpenSSL.mcp.xml and import it
	overwriting the original OpenSSL.mcp.
(****)	Other targets are works in progress. If you feel like giving 'em a
	shot, then you should know that OpenSSL* and Lib* targets are
	supposed to be built with the GUSI, MacOS library which mimics
	BSD sockets and some other POSIX APIs. The GUSI distribution is
	expected to be found in the same directory as the openssl source tree,
	i.e., in the parent directory to the one where this very file,
	namely INSTALL.MacOS, resides. For more information about GUSI, see
	http://www.iis.ee.ethz.ch/~neeri/macintosh/gusi-qa.html

Finally some essential comments from our generous contributor:-)

"I've gotten OpenSSL working on the Macintosh. It's probably a bit of a
hack, but it works for what I'm doing. If you don't like the way I've done
it, then feel free to change what I've done. I freely admit that I've done
some less-than-ideal things in my port, and if you don't like the way I've
done something, then feel free to change it-- I won't be offended!

... I've tweaked "bss_sock.c" a little to call routines in a "MacSocket"
library I wrote. My MacSocket library is a wrapper around OpenTransport,
handling stuff like endpoint creation, reading, writing, etc. It is not
designed as a high-performance package such as you'd use in a webserver,
but is fine for lots of other applications. MacSocket also uses some other
code libraries I've written to deal with string manipulations and error
handling. Feel free to use these things in your own code, but give me
credit and/or send me free stuff in appreciation! :-)

...

If you have any questions, feel free to email me as the following:

roy@centricsystems.ca

-Roy Wood"
+1 −1
Original line number Diff line number Diff line
@@ -192,7 +192,7 @@
#include "../crypto/bn/bn_lcl.h"

#ifndef HAVE_FORK
# if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MACINTOSH_CLASSIC) || defined(OPENSSL_SYS_OS2) || defined(OPENSSL_SYS_NETWARE)
# if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_OS2) || defined(OPENSSL_SYS_NETWARE)
#  define HAVE_FORK 0
# else
#  define HAVE_FORK 1
+3 −11
Original line number Diff line number Diff line
@@ -129,7 +129,7 @@
#undef  SGTTY
#endif

#if !defined(TERMIO) && !defined(TERMIOS) && !defined(OPENSSL_SYS_VMS) && !defined(OPENSSL_SYS_MSDOS) && !defined(MAC_OS_pre_X) && !defined(MAC_OS_GUSI_SOURCE)
#if !defined(TERMIO) && !defined(TERMIOS) && !defined(OPENSSL_SYS_VMS) && !defined(OPENSSL_SYS_MSDOS)
#undef  TERMIOS
#undef  TERMIO
#define SGTTY
@@ -165,7 +165,7 @@
#define TTY_set(tty,data)	ioctl(tty,TIOCSETP,data)
#endif

#if !defined(_LIBC) && !defined(OPENSSL_SYS_MSDOS) && !defined(OPENSSL_SYS_VMS) && !defined(MAC_OS_pre_X)
#if !defined(_LIBC) && !defined(OPENSSL_SYS_MSDOS) && !defined(OPENSSL_SYS_VMS)
#include <sys/ioctl.h>
#endif

@@ -186,14 +186,6 @@ struct IOSB {
	};
#endif

#if defined(MAC_OS_pre_X) || defined(MAC_OS_GUSI_SOURCE)
/*
 * This one needs work. As a matter of fact the code is unoperational
 * and this is only a trick to get it compiled.
 *					<appro@fy.chalmers.se>
 */
#define TTY_STRUCT int
#endif

#ifndef NX509_SIG
#define NX509_SIG 32
@@ -294,7 +286,7 @@ int des_read_pw(char *buf, char *buff, int size, const char *prompt,
#ifdef OPENSSL_SYS_MSDOS
	if ((tty=fopen("con","r")) == NULL)
		tty=stdin;
#elif defined(MAC_OS_pre_X) || defined(OPENSSL_SYS_VXWORKS)
#elif defined(OPENSSL_SYS_VXWORKS)
	tty=stdin;
#else
#ifndef OPENSSL_SYS_MPE
+0 −9
Original line number Diff line number Diff line
@@ -146,15 +146,6 @@
#  define ROTATE(a,n)	_lrotl(a,n)
# elif defined(__ICC)
#  define ROTATE(a,n)	_rotl(a,n)
# elif defined(__MWERKS__)
#  if defined(__POWERPC__)
#   define ROTATE(a,n)	__rlwinm(a,n,0,31)
#  elif defined(__MC68K__)
    /* Motorola specific tweak. <appro@fy.chalmers.se> */
#   define ROTATE(a,n)	( n<24 ? __rol(a,n) : __ror(a,32-n) )
#  else
#   define ROTATE(a,n)	__rol(a,n)
#  endif
# elif defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM)
  /*
   * Some GNU C inline assembler templates. Note that these are
Loading